David Glass wrote:

I often am working on more than one project at a time, and am trying to
come up with a way to do it in LC, particularly when using the GLX
framework which creates a bunch of support stacks.

LC doesn't allow duplicate stack names, so when I go to open another
project I get the 'Close, Purge, Cancel' (or whatever it is) message,
and I have to select Purge in order to completely remove the first
project's stacks, and load the second project's stacks.

The brute force way would be to have multiple copies of LC running, but
that is not really ideal, IMO.

I gave up idealism in my 20s in favor of mere pragmatism. To paraphrase the old saw, "best" is the enemy of "shipping". ;)

For better or worse, using multiple copies of an LC install lets me work on multiple projects simultaneously with complete severance between them, all the way down to common global names (like gAppStack*) I tend to use in my apps.

Since v3.something (?) you can even copy controls between different instances of LC, so you get all the benefits of working in a single memory space without the complications.

Additionally, I tend to keep the last several versions of LC installed to work on different projects according to which has been field-tested in our apps, upgrading only when we're in another Beta round. I've also found keeping multiple versions installed invaluable for verifying regressions between engine versions.

So while I have them installed and sitting in my Dock (OS X) or launcher (Ubuntu), dropping stack files on them to open them in separate instances is a breeze.



* gAppStack is a great way for everything in your project to know which stack is the mainstack of the standalone, useful for all sorts of things like setting up paths to Components folders for storing libraries and externals.

So if you don't mind another plug for the Rev Interoperability Project (RIP), one of the initiatives in progress with that working group now is a library I'm developing to help with updating app components and more, using a single global variable to keep track of the necessary info.

Like other RIP initiatives, this library will make it easier for developers of libraries and behaviors to share their work among multiple projects, and will be available for free under the liberal terms of the MIT license.

The Rev Interoperability Project has more than a hundred members, many of whom contribute ideas and code for the benefit of the community as a whole. Membership is open to all who are interested:

<http://tech.groups.yahoo.com/group/revInterop/>

--
 Richard Gaskin
 Fourth World
 LiveCode training and consulting: http://www.fourthworld.com
 Webzine for LiveCode developers: http://www.LiveCodeJournal.com
 LiveCode Journal blog: http://LiveCodejournal.com/blog.irv

_______________________________________________
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode

Reply via email to