Give me back my dialogs!

320 votes
Version: 
2.4.2
Date Updated: 
11/14/2012
Author Name: 
Lonerobot

Window box is a script (and tutorial) to show you how you can use Dotnet and Win32 methods to get back dialogs you have lost from using multiple monitors.

UPDATE 2.4.2

Fixed an issue with monitor data, it now centers correctly on all screens. Sorry for the delay in finding that one. 

Additional Info: 

Previous Updates :

 

UPDATE 2.4.2

Fixed issue with monitor data, now centers correctly on all screens. 

UPDATE 2.4

Fixed a bug that errors with the SME interface pre max 2011 

 

Update -V2.3

UPDATE 2.3 

Oh Alright, I added Slate Material Editor Support. It's a bit sketchy, it doesnt seem possible to return a Window handle for SME so you have to set it via the MXS interface. The resize is not currently working with the Datagrid, but the Reset to [0,0] works fine, which is probably what most people need. 

I have also fixed a bug - the Base64 function built the icons wrong, the close button should be on the far right. If you delete the icons from the Scripts/lonerobot/assets/icons folder then they will re-build correctly at runtime. 

Slate Material Editor reset added 

UPDATE - V2.2  

Just to note - getpoupdialogs() does not seem to return all of the floating dialogs present in a session of max. This is a change in behaviour from when I originally wrote the script (as the original screenshot will testify, yet since I upgraded to Win7 x64, the same command does not return these windows) You can get a better result in the script by changing the line -

DialogList = for i in (UIAccessor.GetPopupDialogs()) where not i == 0 collect i

to -

DialogList = for i in (windows.getChildrenHWND 0 parent:#max)

           where UIAccessor.IsWindow i[1] and (not i[5] == "AdApplicationButton") and (not i[5] == "") collect i[1]

This seems to give a better result on my Win7 x64 build. I didn't get this issue on vista 32bit so could be something to do with that. With this line it will now list the layer manager, material editor and render dialogs. It does return some toolbars which may or not be required, but better to be more complete than miss some. You can change the original script or download the updated code (version 2.2)

As you can see from the new screenshot, it's not missed any this time, well maybe the Slate Material Editor, but who uses that eh? :-) 

UPDATE - V2.1

 The script has now been updated to remove the dependencies on the ribbon control icons. These have now been integrated into a Base64 encoded string, and builds them automatically when the script is first run. This should remove any icon errors you are seeing (in Max 2012 for example) Window box is a script (and tutorial) to show you how you can use Dotnet and Win32 methods to get back dialogs you have lost from using multiple monitors.

 

LoneRobot

Version Requirement: 
Max 2010/2011/2012
AttachmentSize
lonerobot-windowbox2.2.mcr18.03 KB
lonerobot-windowbox2.3.mcr20.84 KB
lonerobot-windowbox2.4.mcr20.93 KB
lonerobot-windowbox2.4_1.mcr21.18 KB
lonerobot-windowbox2.4_2.mcr21.6 KB

Comments

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
LoneRobot's picture

Hi wannabeartist,

Hi wannabeartist, azzaelle

Thanks for your comments and I'm glad you have found it useful.

Pete

wannabeartist's picture

Thank you!

This is just what I need and I wasn't even looking for it (saw it on facebook's feed!)
I had lost my "exit isolation mode" dialog for couple of days, thanks to switching on a smaller display - it was crazy-complicated modeling without it - thanks so much for bring it back!

azzaelle's picture

Thanks Lone Robot

Thanks LoneRobot! I was searching for help in the same problem and i foun your comment as an answer!

LoneRobot's picture

Cheers, Raymond. Glad to see

Cheers, Raymond. Glad to see the 2012 users can make use of it now.

tassel's picture

Nice to see you finnaly

Nice to see you finnaly upgraded/fixed the script. Now it works with my 2012 installation. I just love it :D

Raymond H.Ingebretsen - http://www.homme3d.com

LoneRobot's picture

Some windows not listed? Try this.....

Please see the update to fix any window ommisions you may be seeing on x64 systems

AttachmentSize
lonerobot-windowbox2.2.mcr 18.03 KB
LoneRobot's picture

I also wanted to take this

I also wanted to take this opportunity to thank you for your great base64 image utility, I really like it and I also have a feature request for this one ... if you ever plan an update please let me know :-)

Hey Martin, I'm sorry I didnt spot this before, Please feel free to send a feature request via my blog and I'll look into it for you. 

LoneRobot's picture

Updated!

Hi, this should not error any more as I have removed the icon dependencies from the script. They are now dynamically built at runtime the first time the script is run. cheers!

lightcube's picture

Any chance to update this for

Any chance to update this for Max 2012? I got this message when trying to run it in 2012:

-- Error occurred during fileIn in #W:\plugins\MaxScripts\LoneRobot-Windowbox.mcr; line number: 310
-- Error occurred in anonymous codeblock; filename: W:\plugins\MaxScripts\LoneRobot-Windowbox.mcr; position: 14169; line: 310
>> MAXScript FileIn Exception:
-- Runtime error: dotNet runtime exception: C:\Program Files\Autodesk\3ds Max 2012\ui\Ribbon\Icons\Modeling\properties.ico <<

_______________________

Shawn Olson

Developer of Wall Worm

W DIGITAL's picture

ok, had to change resolutions

ok, had to change resolutions a couple times of 2 dipslalys
now i have it

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.