I am developing a multi-platform presentation application which consists of two parts: An editor part and a viewer part. Both parts are developed as separate programs. The user edits the individual slides using the editor and the editor then launches the viewer whenever the user wants to see his presentation.
On Windows the editor can simply run the viewer by doing a ShellExecute(). On Linux systems the editor could just fork() the viewer but on Mac OS X this looks like it could get complicated because of the infamous application bundle concept.
I'm wondering how this problem should be solved on Mac OS X.
Is it possible to have multiple applications inside a single application bundle or do I have store the editor and viewer components as separate application bundles?
Also, how am I supposed to pass information from the editor to the viewer application? i.e. the viewer needs to know which file to show. On Windows and Linux I can just pass this as command line arguments to the WinMain() or main() function. On OS X it looks like LSOpenApplication() could do the job but this is now deprecated. And I don't know if LSOpenApplication() can open applications inside the same application because I don't know whether that is even possible...
Could somebody shed some light onto this topic? Thanks!