Hi Nic.

Am 15.04.2010 um 10:30 schrieb Nic Carter:

> Just one quick thing, though:  PocketSword will be one app that works on both 
> iPad and iPhone/iPod touch.  I was looking at this today and I think this 
> will be the best way forward. Apple have designed everything so that this is 
> easily possible, with one codebase...  :)

Well, I know iPhone Apps work almost unchanged on iPad. But the iPad had a much 
larger display and I think that eventually it also offers more possibilities in 
terms of UI so that maybe sooner or later a new iPad application will be there. 
Even if there were only small changes in Interface Builder XIBs/NIBs and view 
controllers you would need to branch.
I'm also not sure whether the UI design guidelines are the same for both.
If I look at iWork on the iPad for example then this is a completely new set of 
applications with a new designed UI especially for the iPad.

> Oh, and to answer your question about NSUserDefaults, yes, that's there!  I 
> have just added unlocking of modules to PocketSword, which will be available 
> in v1.2.2 (currently in beta), and that works great using the code in 
> SwordModule.mm  :)

Alright, good to know.



Manfred

> 
> Thanks for this work, Manfred!  :)
> ybic
>       nic...  :)
> 
> ----
> Nic Carter
> PocketSword Developer - an iPhone Bible Study app
> www: http://crosswire.org/pocketsword
> iTunes: http://itunes.apple.com/app/Pocketsword/id341046078
> Twitter: http://twitter.com/pocketsword
> 
> On 15/04/2010, at 7:15 PM, Manfred Bergmann wrote:
> 
>> Hi there.
>> 
>> Now with the iPad already released in USA and in other countries shortly I'd 
>> like to push for a consolidation of the Objective-C++ SWORD wrapper classes.
>> Which over time has grown quite large consisting of 20 classes in the 
>> version MacSword uses. Just for an explanation to others, they build the 
>> basis for SWORD based OS X applications and are intended to be able to code 
>> in Objective-C exclusively in upper levels of the application (UI).
>> PocketSword uses a subset of those classes with some modifications.
>> 
>> Now shortly since I believe we will again branch for the iPad because it 
>> will be a different UI eventually I feel that we have to do something now. 
>> Otherwise we will end up having to maintain three code bases which could be 
>> one. And it will be a mess.
>> 
>> Since MacSword 2.2 was released recently I have some time now to work on 
>> this.
>> I would suggest to make a framework of the Objective-C wrapper classes which 
>> can then be used in any OS X (Cocoa) based application just as easily as 
>> other frameworks can be used. It would still be necessary to have different 
>> builds for ARM and Intel/PPC and Xcode projects but those can use the same 
>> code base.
>> If any user of the framework needs customised behaviour it is still possible 
>> to subclass if really needed.
>> 
>> The things that need closer look are:
>> - Make it work in gc and none-gc environments.
>> In MacSword 2.2 refactorings I tried to put in -dealloc and -finalize 
>> methods in all classes I touched together with autoreleased initialisations.
>> - Logging.
>> This might need some time. While I would like to be able to write logs to 
>> file with specifying log levels this is not something the iPhone/iPad wants 
>> due to slower FS access. But I'm sure there is a solution to this. If some 
>> protocols are defined each front-end can still implement it's own logging 
>> implementation.
>> - Code that uses NSUserDefaults.
>> Right now keys for locked modules are stored in NSUserDefaults. Is this 
>> something that works on iPhoneOS?
>> - Searching/indexing.
>> While the iPhone uses the SWORD provided clucene based indexing and 
>> searching MacSword uses SearchKit.
>> This not a problem at all but we have to define a protocol where each 
>> application can implement a provider.
>> - Further we would need a place to source control it. Can we have a place 
>> for it at CrossWire including a new project in Jira?
>> 
>> Comments?
>> 
>> Nic, if you are busy with things for PocketSword right now, don't worry. I 
>> would start working on this, compare both code bases and would start a 
>> discussion with you about things I'm uncertain - if you give your "go" to do 
>> this all.
>> I'd also like to finally put in some Unit tests for critical parts so that 
>> it can be tested more easily. Unfortunately Unit testing is not so 
>> comfortable in Obj-C as it is in Java.
>> 
>> 
>> 
>> Manfred
>> 
>> _______________________________________________
>> sword-devel mailing list: sword-devel@crosswire.org
>> http://www.crosswire.org/mailman/listinfo/sword-devel
>> Instructions to unsubscribe/change your settings at above page
> 
> 
> _______________________________________________
> sword-devel mailing list: sword-devel@crosswire.org
> http://www.crosswire.org/mailman/listinfo/sword-devel
> Instructions to unsubscribe/change your settings at above page


_______________________________________________
sword-devel mailing list: sword-devel@crosswire.org
http://www.crosswire.org/mailman/listinfo/sword-devel
Instructions to unsubscribe/change your settings at above page

Reply via email to