Benefits or problem splash screen

Rob Cozens rcozens at pon.net
Fri Dec 5 12:23:24 CST 2003


Tom,

>If I read you correctly my "Splash Screen" is built and has the Rev 
>engine built into it. I then put my non-built rev stacks into the 
>distribution folder were they will be called by the "Splash Screen" 
>app. OK that makes sense to me. But all of the rest of my stacks in 
>this case are in the Main stack so I would have a built "Splash 
>Screen" app and a Main stack with substacks in it. Is this OK?

Assuming you mean:

>Distribution Folder
>	Splash Screen.app
>	Main.rev

,yes.

The one thing one cannot do is include any stack/subStack that is 
modifiable in Splash Screen.app.  Otherwise, one is free to bundle or 
unbundle component stacks as it best fits one's (often conflicting) 
goals of simplicity in the eyes of the user vs modularity when 
updating.

>I worry about the filePath for my Main stack being 'changed' by the 
>"Splash Screen" apps location IE:
>
>Distribution Folder
>	Splash Screen.app
>	Main.rev
>	Images Folder
>		img1.png
>		img2.png
>		etc.
>
>OR
>
>Distribution Folder
>	Splash Screen.app
>	Needed Files Folder
>		Main.rev
>		Images Folder
>			img1.png
>			img2.png
>			etc.

This gets especially complicated in Mac OS 10, because what the user sees as

	Splash Screen.app,

Transcript sees as

	Folder Splash Screen.app
		Folder "Contents"
			Folder MacOS
				Revolution
				[Folder you told the DB to put other stacks in]
			[other stuff]

My approach to dealing with this is twofold:

1.  All paths are resolved relative to the effective fileName of the 
stack looking for the file or folder...or to specific 
specialFolderPaths on certain platforms.  This allows the user to 
nest the application folder to any depth desired without the 
standalone losing its files.

2.  Because I am writing [some of] my software for use by other 
developers, I have handlers that will search multiple locations when 
looking for a stack or file.  This allows the developer to choose the 
bundling approach that she/he finds best for the application, AND it 
provides a method of dealing with the application bundle issue while 
scripting cross-platform handlers.
-- 

Rob Cozens
CCW, Serendipity Software Company
http://www.oenolog.net/who.htm

"And I, which was two fooles, do so grow three;
Who are a little wise, the best fooles bee."

from "The Triple Foole" by John Donne (1572-1631)


More information about the use-livecode mailing list