Thanks Nathan! Now it is way clearer and works like a charm!
Kudos :) On Tue, Sep 18, 2012 at 7:34 PM, Nathan Rusch <nathan_ru...@hotmail.com>wrote: > You’re basically on the right track. You need to run your slow function > on a separate thread to avoid blocking Nuke’s GUI until it finishes, and > you would create and update your progress bar from within that function as > well so it will update properly in time with your processing. > > > import threading > import time > > def dummy(): > task = nuke.ProgressTask('Examining Read Nodes...') > reads = nuke.allNodes('Read') > progIncr = 100.0 / len(reads) > for i, r in enumerate(reads): > if task.isCancelled(): > nuke.executeInMainThread(nuke.message, args=('Aborted',)) > return > task.setProgress(int(i * progIncr)) > task.setMessage(r.fullName()) > # Placeholder for some long per-node process > time.sleep(2) > > def aMenuCommand(): > # This is the function you would actually bind to a Nuke menu command > threading.Thread(target=dummy).start() > > > -Nathan > > > *From:* Luca Fiorentini <luca.fiorent...@gmail.com> > *Sent:* Tuesday, September 18, 2012 10:19 AM > *To:* nuke-python@support.thefoundry.co.uk > *Subject:* [Nuke-python] progress bar > > Hi! > > I am trying to make a progress bar but with no success. > I took a look at the code in the guide > > > http://docs.thefoundry.co.uk/nuke/63/pythondevguide/basics.html#creating-progress-bar-dialogs > > But I am clearly missing something. > Could someone kindly explain it to me in an easier way? > Imagine I have a function like this: > > def dummy(): > for n in nuke.allNodes('Read'): > print 'here my super slow function' > > where and how should I implement the progress bar? > should I use the code from the example and then call the whole funciont in > a new thread? like > > threading.Thread( None, dummy ).start() > > Thanks for your time > > -- > *Luca Fiorentini - 3D Lighting Artist* > My Showreel <http://www.vimeo.com/lucafiorentini/reel> - My > blog<http://lucafiorentini.wordpress.com>- My > Flickr <http://www.flickr.com/photos/lucafiorentini> > > ------------------------------ > _______________________________________________ > Nuke-python mailing list > Nuke-python@support.thefoundry.co.uk, http://forums.thefoundry.co.uk/ > http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-python > > > _______________________________________________ > Nuke-python mailing list > Nuke-python@support.thefoundry.co.uk, http://forums.thefoundry.co.uk/ > http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-python > > -- *Luca Fiorentini - 3D Lighting Artist* My Showreel <http://www.vimeo.com/lucafiorentini/reel> - My blog<http://lucafiorentini.wordpress.com>- My Flickr <http://www.flickr.com/photos/lucafiorentini>
_______________________________________________ Nuke-python mailing list Nuke-python@support.thefoundry.co.uk, http://forums.thefoundry.co.uk/ http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-python