Converting OSX App to IOS

I wondered how easy it would be to make my fully working OSX App work on the IPAD and IPhone.
It was created in Xojo and works fine also in Windows and Linux
Its a straight forward password manager (encrypted) application utilising the creation, access and manipulation of an SQLiteDatabase (3 tables)
Along with creation of a text file storing App preference’s - No plugins are included
The Apps already had nearly 9000 downloads just for the MAC version on Download.com so it warrants a look at conversion.
Does anybody see any major problems in conversion to IOS ?
Iv’e never used the IOS interface and was wondering whether to purchase the Pro version.

realistically its more likely a new app - not a “port” - because

  1. the UI is quite different so navigation is different (as is how you move around etc)
  2. iOS ONLY uses the new framework so you’ll have to adapt code unless you’ve used the new framework in your existing code

I am precisely in the port of Check Writer/ Check Print’R to iPad.

Since you did not link to your app I have no idea how it looks but you will probably have to rethink the UI.

  • There is no menu bar in iOS.
  • There is no PopupMenu. They can be replaced by a table, though, which you show dynamically.
  • There is no listbox. The table has no columns. With a cleaver use of special iOSCustomTableCell, though, it should be possible. For myself, I have used HTML for that.
  • If any keyboard is needed, you end up with only the top portion of the screen. That requires some clever use of screen real estate.

Norman’s objection about new framework only is largely alleviated by the use of my XojoiOSWrapper, which wraps new framework functions into usual classic framework calls, such as str(), val(), etc. I created it precisely to reuse existing code without refactoring everything.

There are many things that the new framework and Xojo iOS can’t do, as well as many properties one would expect in controls that have not been implemented. Fortunately, Jean-Paul Devulder’s dtPlugins, Jason King’s iOSKIt and Ulrich Bogun’s iOSLib compensate that incomplete state of things.

Finally, never hesitate to ask in the iOS channel. You will find friends there.

If you have a proper separation of the model from the UI, it is fairly easy. But it is almost impossible – or rather: not worth all the work – to achieve this if the model is intermingled with the UI, which is the standard way to write Xojo applications.

Porting an app to a new environment is a good learning experience IMHO. Even in terms of UI design, it can improve the existing Desktop apps, as one gets a better feel of what a user may expect.

All too often, Desktop UI is full of pimples, crammed with way too many controls. iOS UI is much closer to Web design, requiring much cleaner UI design.

Also, it is true that there is a bad tendency to cram everything in UI controls, would that be much too long event handlers code, or listboxes so full of data, they become sluggish. Since no event can be pasted from a Desktop control to its equivalent iOS, it is a good occasion to make them methods.