MEL - Maya UI Building

Become a member of the CGSociety

Connect, Share, and Learn with our Large Growing CG Art Community. It's Free!

Thread Tools Display Modes
  04 April 2005
I've tried a search but i had no luck.
Thanks anyway Iconoklast.
Anyone else know a way to do this?
Lovin every minute of every second! :)
  04 April 2005
I know in Maya you can tear off screans. Do a search on this site for dual monitors or tear off screans. I saw a thread couple of days ago and these 2 guys were discussing how great that was to be able to tear off screans and work in dual monitors.

Good luck
  04 April 2005
Originally Posted by Nicodemia: In Cinema 4d I had most of my tools and a perspective view on one screen and my orthographic views and main tools on the other. I cant work out how to do this in maya.
Can You help?

Don't know of any scripts, but it's pretty easy to set up, depending on your video card. I only know NVidias, but with that you can set up horizontal span across the two monitors, and specify that apps can span the monitors but child windows can't. Then you maximize the main Maya UI on one monitor, and put things like hypershade, graph editor, whatever on the other. In maya prefs you can tell it to memorize window locations on exit.

You can also tear off panels (under Panel menu) and put them wherever you like. No scripting required, unless you really want to.
  04 April 2005
thanks for the help guys

Ive worked out how to tear off panels and rearrange them on my second screen.

How do i now save this ui layout so maya starts up with it?

Thanks again for your help so far
Lovin every minute of every second! :)
  04 April 2005
If you open your script editor and view by script node name you can add a node with the mel for all your windows. Remember to check "Execute on" startup. This won't make sure you have your layout every time you open maya though. Only on that specific file. Even though, you can create a shelfbutton for it if you are patient enough to go click an extra icon after startup
Martin Andersson

Last edited by Mikademius : 08 August 2005 at 08:14 AM.
  05 May 2005
Not sure how much will it help, but i've had the hassle of toggling on and off, the weights in the component editor while assigning weights to each individual verts. What this script does is, it creates another window that lists out all the joints that's binded onto the mesh. From there you can select, hold all, or unhold all joints, as well as individual ones when u wanna take weights off or onto the verts...

Last edited by SajNT : 05 May 2005 at 10:02 AM.
  05 May 2005

Sorry here's the attachment..
Attached Files
File Type: txt limHoldAndUnholdWeights.txt (3.9 KB, 41 views)

Last edited by SajNT : 05 May 2005 at 10:03 AM.
  05 May 2005
just a few tips really that i found ultra useful:

if youre planning on dynamically updating UI elements or building any kind of semi-complex UI -- make sure you understand the basic 'parenting' structure ... that way your script will 'know where it is' within the interface.

formLayout is the king. Get your head around this, and you can create massivley detailed and intricate UIs. Its not at all as complicated as it first appears if you give it a go.

you can place layouts within UIs using formLayout. So instead of creating every button and checkbox with formLayout - create them in simpler row or columnLayouts, then place the actual layout exactly where you want it.

dont clutter Layouts with buttons etc that dont need to be there. Use the MenuBar to add extra options or functions into a concealed menu bar at the top of the window.

Use menu and MenuItem to create 'right-click options' over whatever control or UI element you like ( this is very powerful )

i can post examples of any of these if anyones interested.
  05 May 2005
Creating Plug-In and sourcing non-.xpm icons

Hey Everyone...

I've got this great plug-in that I've finished writing and now I need to figure out hwo to write the paths so that people can download my plug-in and to the /scripts directory and the icons to the /prefs/icons directory without error messages. Anyone know how to write the paths to do that? I can of course write explicit paths but those would be specific to my computer and directory structure. I was thinking it might be something more like this:
symbolButton -image "/../prefs/icons/icon.jpg" -c "" button1;

I am also having a Very hard time getting Macintosh to read image files for the symbolButton that the PC can easily read.

Any help or comments on this would be GREATLY appreciated.
Thank You.
  05 May 2005
"internalVar" will give you a couple of directory paths (scripts, application, workspace, temp)

i'm assuming you want the installer to copy the scripts and icons directly to the appropriate directories.

  05 May 2005
Plug-In file placement

I'm expecting the user to place the plug-in files in teh appropriate directories. However, I need to write my script so that the UI calls for files from the proper location. If I make explicit directory declarations then this UI won't work for anyone's computer but mine and users will be forced to open up each script and change all the paths to their local dir structure. I obviously can't have this. So I'm looking for how to use paths with abbreviations (/../prefs/icons) instead of (C:/my computer/documents and settings/joeblow/my documents/maya/6.0/prefs/icons).

Also... anyone know how I can get .bmp or .jpg to show up in the symbolButton command on an Apple? I can get it to work on a PC fine.

I wish Maya help gave more Macintosh help.
  05 May 2005
this seems like the right command for you ("internalVar")

it'll return the user's profile directory - so in your plugin or script, you'd declare a string with this directory, and then append the script, or icon, or whatever to the end.

such as:

print `internalVar -usd`;


string $usd = `internalVar -usd`;
print ($usd + "joeblow.mel");

will print out your local profile directory where maya puts its preferences. unless i'm misunderstanding what you're looking for...

  05 May 2005
Talking internalVar was the answer

Thank You so MUCH for that!

I've used the following line of code: string $userPath = (`internalVar -upd` + "icons/");

and then later I use the following when creating a button:
[i] symbolButton -i ($userPath + "iconName.bmp") -c "" buttonName;

  07 July 2005
internalVar -usd will take you directly to the icons folder...
Martin Andersson
  07 July 2005
ScrollLayout lays out funkily

I have a problem similar to what Twidup posted on this forum 'bout two years ago (8-11-03), but the solution for his problem doesn't work for me.

I have been charged with updating a script written quite a while ago that would look in specified directories and add all of the Maya Files it found to a grid layout as sort of a shortcut bar. I wish to wrap the gridLayout in a scrollLayout like such:

window -t  "Anim Palette" -tlb true -rtf true -w 345 -h 360 animPalette;
       columnLayout -columnAttach "both" 5 -columnWidth 335 -adj true jm2al;
    // ... other controls ...
    scrollLayout -cr true;
    gridLayout -numberOfColumns 4 -autoGrow true 
     	     -columnsResizable true -cellWidthHeight 100 25 
     	     -nr 25 animButtonLayout;

... but I am running into a problem where the vertical scroll area is only size of a button and a half. I have dug through the documentation "magic flags" but haven't found a cure. Any one of you kind souls have a clue to share?


Last edited by EigenPuff : 07 July 2005 at 10:35 PM. Reason: to remove the horizontal scrollbar on the code sample, to make it more readable
reply share thread

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Society of Digital Artists

Powered by vBulletin
Copyright 2000 - 2006,
Jelsoft Enterprises Ltd.
Minimize Ads
Forum Jump

All times are GMT. The time now is 04:07 PM.

Powered by vBulletin
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.