aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTeddy Wing2018-09-05 21:30:00 +0200
committerTeddy Wing2018-09-05 22:03:10 +0200
commitb6b106b9456e42e105d65ff8ea2a4425595ab25c (patch)
tree85fef45c7c23bebadca7a116562b81a9dc51adae
parent446346c056a5abd8bbd7e7aaad94e22ec175b0c7 (diff)
downloadCopy-Mailto-b6b106b9456e42e105d65ff8ea2a4425595ab25c.tar.bz2
Add a "Copy" button that copies the email address to the clipboard
Thanks to these references: - https://stackoverflow.com/questions/5686958/set-string-to-pasteboard-copy-paste-in-cocoa-application/5687005#5687005 - https://developer.apple.com/library/archive/documentation/Cocoa/Conceptual/PasteboardGuide106/Articles/pbCopying.html
-rw-r--r--CopyMailto/AppDelegate.h1
-rw-r--r--CopyMailto/AppDelegate.m9
-rw-r--r--CopyMailto/Base.lproj/MainMenu.xib14
3 files changed, 24 insertions, 0 deletions
diff --git a/CopyMailto/AppDelegate.h b/CopyMailto/AppDelegate.h
index 321d100..7ba86b3 100644
--- a/CopyMailto/AppDelegate.h
+++ b/CopyMailto/AppDelegate.h
@@ -15,5 +15,6 @@
- (void)handleURLEvent:(NSAppleEventDescriptor *)event
withReplyEvent: (NSAppleEventDescriptor *)replyEvent;
+- (IBAction)copyEmailToClipboard:(id)sender;
@end
diff --git a/CopyMailto/AppDelegate.m b/CopyMailto/AppDelegate.m
index 6f3477d..5eb04c5 100644
--- a/CopyMailto/AppDelegate.m
+++ b/CopyMailto/AppDelegate.m
@@ -33,4 +33,13 @@ const NSUInteger MAILTO_INDEX = 7;
[_email_address setStringValue:[url substringFromIndex:MAILTO_INDEX]];
}
+- (IBAction)copyEmailToClipboard:(id)sender
+{
+ NSPasteboard *pasteboard = [NSPasteboard generalPasteboard];
+ [pasteboard clearContents];
+ [pasteboard writeObjects:
+ [NSArray arrayWithObject:
+ [_email_address stringValue]]];
+}
+
@end
diff --git a/CopyMailto/Base.lproj/MainMenu.xib b/CopyMailto/Base.lproj/MainMenu.xib
index e3f79a2..ce6197b 100644
--- a/CopyMailto/Base.lproj/MainMenu.xib
+++ b/CopyMailto/Base.lproj/MainMenu.xib
@@ -108,6 +108,20 @@ Gw
<action selector="terminate:" target="-1" id="M3t-iK-CjQ"/>
</connections>
</button>
+ <button verticalHuggingPriority="750" misplaced="YES" id="kh0-Tv-Cj9">
+ <rect key="frame" x="394" y="13" width="72" height="32"/>
+ <autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMaxY="YES"/>
+ <buttonCell key="cell" type="push" title="Copy" bezelStyle="rounded" alignment="center" borderStyle="border" imageScaling="proportionallyDown" inset="2" id="ujL-03-vyZ">
+ <behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
+ <font key="font" metaFont="system"/>
+ <string key="keyEquivalent" base64-UTF8="YES">
+DQ
+</string>
+ </buttonCell>
+ <connections>
+ <action selector="copyEmailToClipboard:" target="Voe-Tx-rLC" id="uX1-7A-IwJ"/>
+ </connections>
+ </button>
</subviews>
</view>
<point key="canvasLocation" x="132" y="42.5"/>