On Mar 11, 2012, at 21:47, Colin A. Smith wrote:

> Hello,
> 
> I've ben working on getting a preliminary version of BibDesk running under 
> iOS (both iPad and iPhone). Right now, I'm focusing mostly on read-only 
> browsing of existing BibDesk files and the associated PDFs. For file 
> transfer, I'm currently using Dropbox, but other mechanisms could of course 
> be added. I have a usable version up and running that does Dropbox 
> synchronization, lists the publications in the library, and displays linked 
> PDFs. For my own purposes the main thing I care about is being able to have 
> my whole library with me, browse and search effectively with a nice UI, and 
> have a good PDF reading experience. Eventually, it would be great to be able 
> to edit a BibDesk library through iOS.
> 
> Presuming I still have SVN commit access and there are no objections, I'd 
> like to checkin my initial work soon (BSD licensed of course). I had thought 
> to put it in trunk with the directory name "bibdesk_ios". To get the initial 
> port working, I am currently using the following files (both *.m and *h):
> 
> Bibdesk_Prefix
> BDSKBibTeXParser
> BDSKCategoryGroup
> BDSKCFCallBacks
> BDSKCompletionManager
> BDSKComplexString
> BDSKCondition
> BDSKConverter
> BDSKErrorObject
> BDSKFieldCollection
> BDSKFilter
> BDSKFormatParser
> BDSKGroup
> BDSKGroupsArray
> BDSKLibraryGroup
> BDSKLinkedFile
> BDSKMacroResolver
> BDSKMultiValueDictionary
> BDSKOwnerProtocol
> BDSKParentGroup
> BDSKPublicationsArray
> BDSKRuntime
> BDSKSmartGroup
> BDSKStaticGroup
> BDSKStringConstants
> BDSKStringNode
> BDSKTableSortDescriptor
> BDSKTemplate
> BDSKTemplateParser
> BDSKTemplateTag
> BDSKTreeNode
> BDSKTypeManager
> BDSKVersionNumber
> BibAuthor
> BibItem
> CFString_BDSKExtensions
> NSArray_BDSKExtensions
> NSAttributedString_BDSKExtensions
> NSCharacterSet_BDSKExtensions
> NSData_BDSKExtensions
> NSDate_BDSKExtensions
> NSDictionary_BDSKExtensions
> NSError_BDSKExtensions
> NSFileManager_BDSKExtensions
> NSScanner_BDSKExtensions
> NSSet_BDSKExtensions
> NSString_BDSKExtensions
> NSURL_BDSKExtensions
> 
> I also have a custom version of BibDocument that complies with the BDSKOwner 
> protocol and is subclassed off UIDocument instead of NSDocument. To get the 
> the other files to compile, I had to change many "#include <Cocoa/Cocoa.h>" 
> lines to "#include <Foundation/Foundation.h>". Also, there was still a lot of 
> Mac-specific code that wouldn't compile on iOS. In Apple's Availability.h, 
> the recommended way to target code to specific platforms is with "#ifdef 
> __MAC_OS_X_VERSION_MIN_REQUIRED" and "#ifdef 
> __IPHONE_OS_VERSION_MIN_REQUIRED" preprocessor statements. I've introduced 
> quite a few of those into the above files.
> 
> All the #ifdef statements do make the code a bit messier in places, but it 
> could be made cleaner with some rearrangement and perhaps minor refactoring. 
> For now, my goal was to have the minimum number of source lines changing. A 
> complete diff of my current changes is here:
> 
> http://dl.dropbox.com/u/21171664/BibDeskDiff.txt
> 
> With those changes, BibDesk still compiles and runs fine on the Mac with 
> Xcode 3.2.6. I am building the iOS version on Xcode 4.3 and targeting only 
> iOS 5 and later. Previous iOS versions don't have UIDocument and other 
> helpful classes.
> 
> Let me know what you think. When more mature, hopefully this will be helpful 
> addition to the BibDesk community!
> 
> Cheers.
> 
> -Colin

Nice. Though it's probably not a good idea to merge the sources, just keep it 
in a separate tree. bibdesk_ios is fine for that.

Christiaan


------------------------------------------------------------------------------
Virtualization & Cloud Management Using Capacity Planning
Cloud computing makes use of virtualization - but cloud computing 
also focuses on allowing computing to be delivered as a service.
http://www.accelacomm.com/jaw/sfnl/114/51521223/
_______________________________________________
Bibdesk-develop mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bibdesk-develop

Reply via email to