Revision: 27230
http://sourceforge.net/p/bibdesk/svn/27230
Author: hofman
Date: 2022-01-17 09:34:39 +0000 (Mon, 17 Jan 2022)
Log Message:
-----------
Only get deprecated arguments when passing a publication to auto file command
Modified Paths:
--------------
trunk/bibdesk/BibItem+Scripting.m
Modified: trunk/bibdesk/BibItem+Scripting.m
===================================================================
--- trunk/bibdesk/BibItem+Scripting.m 2022-01-16 22:08:34 UTC (rev 27229)
+++ trunk/bibdesk/BibItem+Scripting.m 2022-01-17 09:34:39 UTC (rev 27230)
@@ -568,15 +568,13 @@
NSScriptObjectSpecifier *keySpec = [(BDSKPublicationCommand *)command
keySpecifier];
NSString *keyClass = [[keySpec keyClassDescription] className];
NSDictionary *params = [command evaluatedArguments];
- NSNumber *indexNumber = [params objectForKey:@"index"];
NSString *location = [params objectForKey:@"to"];
- NSString *field = [params objectForKey:@"for"];
NSNumber *checkNumber = [params objectForKey:@"check"];
BOOL check = checkNumber ? [checkNumber boolValue] : YES;
BibDocument *doc = (BibDocument *)[self owner];
+ NSString *field = nil;
NSInteger start = 0, end = 0;
NSMutableIndexSet *indexes = nil;
- NSArray *files = nil;
NSArray *linkedfiles = nil;
if ([doc isDocument] == NO) {
@@ -585,17 +583,18 @@
return nil;
}
- if (field && [field isKindOfClass:[NSString class]] == NO) {
- [command setScriptErrorNumber:NSArgumentsWrongScriptError];
- return nil;
- }
- if (indexNumber && [indexNumber isKindOfClass:[NSNumber class]] == NO) {
- [command setScriptErrorNumber:NSArgumentsWrongScriptError];
- return nil;
- }
-
if (keySpec == nil) {
+ NSNumber *indexNumber = [params objectForKey:@"index"];
+ field = [params objectForKey:@"for"];
+ if (field && [field isKindOfClass:[NSString class]] == NO) {
+ [command setScriptErrorNumber:NSArgumentsWrongScriptError];
+ return nil;
+ }
if (indexNumber) {
+ if ([indexNumber isKindOfClass:[NSNumber class]] == NO) {
+ [command setScriptErrorNumber:NSArgumentsWrongScriptError];
+ return nil;
+ }
if (field && [field isEqualToString:BDSKLocalFileString] == NO) {
[command setScriptErrorNumber:NSArgumentsWrongScriptError];
[command setScriptErrorString:@"Cannot pass both an index and
a field."];
@@ -612,16 +611,6 @@
field = [field fieldName] ?: BDSKLocalUrlString;
}
} else if ([keyClass isEqualToString:@"field"]) {
- if (field) {
- [command setScriptErrorNumber:NSArgumentsWrongScriptError];
- [command setScriptErrorString:@"Cannot pass both a field and a
field name."];
- return nil;
- }
- if (indexNumber) {
- [command setScriptErrorNumber:NSArgumentsWrongScriptError];
- [command setScriptErrorString:@"Cannot pass both a field and an
index."];
- return nil;
- }
if ([keySpec isKindOfClass:[NSNameSpecifier class]] == NO) {
[command setScriptErrorNumber:NSArgumentsWrongScriptError];
[command setScriptErrorString:@"Invalid field specifier."];
@@ -629,16 +618,6 @@
}
field = [[(NSNameSpecifier *)keySpec name] fieldName];
} else if ([keyClass isEqualToString:@"linked file"]) {
- if (field) {
- [command setScriptErrorNumber:NSArgumentsWrongScriptError];
- [command setScriptErrorString:@"Cannot pass both a linked file and
a field name."];
- return nil;
- }
- if (indexNumber) {
- [command setScriptErrorNumber:NSArgumentsWrongScriptError];
- [command setScriptErrorString:@"Cannot pass both a linked file and
an index."];
- return nil;
- }
field = BDSKLocalFileString;
// NSPropertySpecifier, NSIndexSpecifier, NSRangeSpecifier,
NSMiddleSpecifier, NSWhoseSpecifier
NSInteger i, count = -2;
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
_______________________________________________
Bibdesk-commit mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bibdesk-commit