mirror of
https://github.com/gnustep/libs-gui.git
synced 2025-05-30 17:10:37 +00:00
Add md5 filter
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@17054 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
parent
e15eb96920
commit
baeae6ea50
2 changed files with 46 additions and 1 deletions
|
@ -47,6 +47,9 @@
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@interface ExampleServices : NSObject
|
@interface ExampleServices : NSObject
|
||||||
|
- (void) md5: (NSPasteboard*)bp
|
||||||
|
userData: (NSString*)ud
|
||||||
|
error: (NSString**)err;
|
||||||
- (void) openURL: (NSPasteboard*)bp
|
- (void) openURL: (NSPasteboard*)bp
|
||||||
userData: (NSString*)ud
|
userData: (NSString*)ud
|
||||||
error: (NSString**)err;
|
error: (NSString**)err;
|
||||||
|
@ -59,6 +62,38 @@
|
||||||
@end
|
@end
|
||||||
|
|
||||||
@implementation ExampleServices
|
@implementation ExampleServices
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Filter a string to an md5 digest of its utf8 value.
|
||||||
|
*/
|
||||||
|
- (void) md5: (NSPasteboard*)pb
|
||||||
|
userData: (NSString*)ud
|
||||||
|
error: (NSString**)err
|
||||||
|
{
|
||||||
|
NSArray *types;
|
||||||
|
NSString *val;
|
||||||
|
NSData *data;
|
||||||
|
|
||||||
|
types = [pb types];
|
||||||
|
if (![types containsObject: NSStringPboardType])
|
||||||
|
{
|
||||||
|
*err = @"No string type supplied on pasteboard";
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
val = [pb stringForType: NSStringPboardType];
|
||||||
|
if (val == nil)
|
||||||
|
{
|
||||||
|
*err = @"No string value supplied on pasteboard";
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
data = [val dataUsingEncoding: NSUTF8StringEncoding];
|
||||||
|
data = [data md5Digest];
|
||||||
|
[pb declareTypes: [NSArray arrayWithObject: @"md5Digest"] owner: nil];
|
||||||
|
[pb setData: data forType: @"md5Digest"];
|
||||||
|
}
|
||||||
|
|
||||||
- (void) openURL: (NSPasteboard*)pb
|
- (void) openURL: (NSPasteboard*)pb
|
||||||
userData: (NSString*)ud
|
userData: (NSString*)ud
|
||||||
error: (NSString**)err
|
error: (NSString**)err
|
||||||
|
@ -242,7 +277,7 @@ init(int argc, char** argv)
|
||||||
break;
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
printf("%s - GNU Pasteboard server\n", argv[0]);
|
printf("%s - filter server\n", argv[0]);
|
||||||
printf("-H for help\n");
|
printf("-H for help\n");
|
||||||
exit(EXIT_SUCCESS);
|
exit(EXIT_SUCCESS);
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,4 +1,14 @@
|
||||||
NSServices = (
|
NSServices = (
|
||||||
|
{
|
||||||
|
NSPortName = ExampleServices;
|
||||||
|
NSFilter = "md5";
|
||||||
|
NSSendTypes = (
|
||||||
|
NSStringPboardType
|
||||||
|
);
|
||||||
|
NSReturnTypes = (
|
||||||
|
md5Digest
|
||||||
|
);
|
||||||
|
},
|
||||||
{
|
{
|
||||||
NSPortName = ExampleServices;
|
NSPortName = ExampleServices;
|
||||||
NSMessage = openURL;
|
NSMessage = openURL;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue