I'm no power programmer but I would try to economise on repeating similar 
queries such as checking for the existence of optionVar recentList before 
querying the recentLst. I *think* that you could use a try: / except: approach 
to just query the recentFile (don't check for its existence - the try statement 
will not cause an error if the optVar doesn't actually exist, but execute the 
except section if the try statement fails. 

I'm not on the box at the moment but the idea would be:

'''
Disclaimer: haven't written this on a machine so there could be bugs/bad 
formatting etc
'''

try:
    recentFiles = cmds.optionVar( query = 'RecentFilesList' )
except:
    # do something else here.. or..
    cmds.error('no recent list')
    


Gerard. 

On 24/12/2014, at 3:31 AM, Joe Weidenbach <scdr...@gmail.com> wrote:

> Hi again,
> 
> So, given this code, The only mistake I see is indeed the parentheses.  
> Here's the code that works: http://pastebin.com/raw.php?i=i2N9JPAW
> 
> A note, I added a call to reloadScene() at the end just to make it functional 
> as a button.
> 
> Joe
> 
> On 12/23/2014 2:34 AM, yann19 wrote:
>> This is my first attempt at converting mel code into python - 
>> http://pastebin.com/raw.php?i=JwEtGJV6
>> 
>> This is the code that I have done:
>> 
>> import maya.cmds as cmds
>> 
>> def reloadScene():
>>     recentFiles = []
>>     
>>     curFile = cmds.file(query = True, location = True)
>>     
>>     if (curFile == "unknown") :
>>     
>>         if cmds.optionVar( exists = 'RecentFilesList' ):
>>             recentFiles = cmds.optionVar( query = 'RecentFilesList' )
>>             
>>             if cmds.confirmDialog(title = 'Reload Scene', message = ('Reload 
>> Last Opened Scene?\n\n' + recentFiles[len(recentFiles)-1]), button = 
>> ['Cancel','OK'],                 defaultButton = 'OK', cancelButton = 
>> 'Cancel', dismissString = 'Cancel' ):
>>                 cmds.file( str(recentFiles[len(recentFiles)-1]), force = 
>> True, open = True)
>>                 print "Opening                 Last Recent File - ", 
>> recentFiles[len(recentFiles)-1]
>>                 
>>             else:
>>                 cmds.warning("No recent files found!")
>>         else:
>>             if cmds.confirmDialog(title = 'Reload Scene', message = ('Reload 
>> Current Scene?\n\n'), button = ['Cancel','OK'], defaultButton = 'OK', 
>> cancelButton = 'Cancel', dismissString = 'Cancel' ):
>>                 curFileLoc = cmds.file(query = True, location = True)
>>                 cmds.file( curFileLoc , force = True, open = True)
>>                 print "Re-Opening current file - ", curFileLoc
>> 
>> 
>> But for some reasons, if I added in the curFile variables, my dialog is not 
>> popping up and I have a very strong inkling that I have gotten the mel part 
>> - 
>>  if(`file -q -loc` == "unknown") wrong
>> However, should I omit it, I am unable to get the second dialog working - 
>> Reload Current Scene working.
>> 
>> Any pointers are greatly appreciated!
>> 
>> 
>> -- 
>> You received this message because you are subscribed to the Google Groups 
>> "Python Programming for Autodesk Maya" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to python_inside_maya+unsubscr...@googlegroups.com.
>> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/python_inside_maya/687fc019-66ef-4e67-bce2-e95dbeaab015%40googlegroups.com.
>> For more options, visit https://groups.google.com/d/optout.
> 
> 
> 
>                                               
> This email is free from viruses and malware because avast! Antivirus 
> protection is active.
> 
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "Python Programming for Autodesk Maya" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to python_inside_maya+unsubscr...@googlegroups.com.
> To view this discussion on the web visit 
> https://groups.google.com/d/msgid/python_inside_maya/549998FA.4090509%40gmail.com.
> For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"Python Programming for Autodesk Maya" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to python_inside_maya+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/python_inside_maya/64A0026D-E7C3-463E-ADA4-9C42B4658E7B%40gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to