Revision: 22417
http://sourceforge.net/p/bibdesk/svn/22417
Author: hofman
Date: 2018-07-14 09:42:26 +0000 (Sat, 14 Jul 2018)
Log Message:
-----------
enforce Local-Url and Url as special fields when using them instead of linked
files
Modified Paths:
--------------
trunk/bibdesk/BDSKAppController.m
Modified: trunk/bibdesk/BDSKAppController.m
===================================================================
--- trunk/bibdesk/BDSKAppController.m 2018-07-14 06:30:26 UTC (rev 22416)
+++ trunk/bibdesk/BDSKAppController.m 2018-07-14 09:42:26 UTC (rev 22417)
@@ -245,6 +245,41 @@
}
+- (void)checkFieldTypes {
+ NSUserDefaults *sud = [NSUserDefaults standardUserDefaults];
+
+ // enforce Author and Editor as person fields
+ NSArray *fields = [sud stringArrayForKey:BDSKPersonFieldsKey];
+ NSInteger idx = 0;
+ if ([fields containsObject:BDSKAuthorString] == NO || [fields
containsObject:BDSKEditorString] == NO) {
+ fields = [fields mutableCopy];
+ if ([fields containsObject:BDSKAuthorString] == NO)
+ [(NSMutableArray *)fields insertObject:BDSKAuthorString
atIndex:idx++];
+ if ([fields containsObject:BDSKEditorString] == NO)
+ [(NSMutableArray *)fields insertObject:BDSKEditorString
atIndex:idx];
+ [sud setObject:fields forKey:BDSKPersonFieldsKey];
+ [fields release];
+ [[BDSKTypeManager sharedManager] updateCustomFields];
+ }
+ if ([[NSUserDefaults standardUserDefaults]
boolForKey:BDSKUseLocalUrlAndUrlKey]) {
+ // enforce Local-Url as local file field and Url as remote URL field
+ fields = [sud stringArrayForKey:BDSKLocalFileFieldsKey];
+ if ([fields containsObject:BDSKLocalUrlString] == NO) {
+ fields = [fields mutableCopy];
+ [(NSMutableArray *)fields insertObject:BDSKLocalUrlString
atIndex:0];
+ [sud setObject:fields forKey:BDSKUseLocalUrlAndUrlKey];
+ [fields release];
+ }
+ fields = [sud stringArrayForKey:BDSKRemoteURLFieldsKey];
+ if ([fields containsObject:BDSKUrlString] == NO) {
+ fields = [fields mutableCopy];
+ [(NSMutableArray *)fields insertObject:BDSKUrlString atIndex:0];
+ [sud setObject:fields forKey:BDSKRemoteURLFieldsKey];
+ [fields release];
+ }
+ }
+}
+
#pragma mark Application delegate
- (void)applicationWillFinishLaunching:(NSNotification *)aNotification{
@@ -279,19 +314,7 @@
[sud removeObjectForKey:@"Default Bib File"];
}
- // enforce Author and Editor as person fields
- NSArray *personFields = [sud stringArrayForKey:BDSKPersonFieldsKey];
- NSInteger idx = 0;
- if ([personFields containsObject:BDSKAuthorString] == NO || [personFields
containsObject:BDSKEditorString] == NO) {
- personFields = [personFields mutableCopy];
- if ([personFields containsObject:BDSKAuthorString] == NO)
- [(NSMutableArray *)personFields insertObject:BDSKAuthorString
atIndex:idx++];
- if ([personFields containsObject:BDSKEditorString] == NO)
- [(NSMutableArray *)personFields insertObject:BDSKEditorString
atIndex:idx];
- [sud setObject:personFields forKey:BDSKPersonFieldsKey];
- [personFields release];
- [[BDSKTypeManager sharedManager] updateCustomFields];
- }
+ [self checkFieldTypes];
// name image to make it available app wide, also in IB
[NSImage cautionImage];
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Bibdesk-commit mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bibdesk-commit