Hey guys,

This one really surprised me. I tend to avoid global variable in Softimage
plugins as much as I can, but sometimes it might be convenient.

So basically, I wanted to use a global variable ( simple Python Dictionary
) to keep some stuff in reference while interacting with a PPG. I remember
clearly that it was working well under Windows, so
I assume this is a python 2.5 Linux issue (if this is an issue - please
tell me if this is normal under Soft with python 2.5).

Here's basically what I was trying to do:

[imports ....]
>
> # Global Scope

> LAST_SELECTION = {
>     'project': {},
>     'category': '',
>     'entities': [],
> }
>
> def CustomCommand_Execute():
>     global LAST_SELECTION
>     [Do some modifications to LAST_SELECTION]
>


Following this pattern:

   - Prompt the PPG
   - Interact with the UI
   - The custom command is fired - do some modifications to LAST_SELECTION
   - hit another PPG UI
   - Hell the LAST_SELECTION global is back to the inital value!

I've been tracing the LAST_SELECTION variable with id(), and it's changing
every time I interact with the UI; showing clearly that there is something
nasty going on under the hood (?)

Any idea to get this working?

Alan mentioned the Application.SetGlobal/Application.GetGlobal functions
... but still, this should be working natively, isn't?

Thanks!

-- 
Xavier

Reply via email to