Changing icons in Maya's Outliner

This is probably completely impossible in Maya without some hardcore coding, looking at the MEL stuff for the Outliner so far leads me to think that is the case, but…

Has anyone got any idea how the icons next to groups/objects/sets in Maya’s Outliner are chosen and displayed? I imagine they’re probably hard coded somewhere…

Basically I wanted to find out if it’d be possible to change icons for objects flagged with certain custom attributes. No idea where to start though. Does anyone have any experience with this, or know if it’s even possible without doing some excessive hacking around in the back end?

Cheers,
-Paul

Yeah that’s the frustrating thing about Maya is alot of the really useful UI stuff is custom (raise your hand if you’ve been longing for a treeview control in maya). It would be possible to just filter out (or i guess in) all the objects that have that custom attribute and just display those in the outliner via a selectionConnection though. . .i have some code lying around (or someone i know does anyway) that shows how to do this sort of thing, not quite that specific, but just the generics of using selectionConnections to manage outliners and other controls that use selectionConnections.

Alternately you could always use Qt or Forms to write your own custom outliner-ish control (which in the long run would probably be nicer than managing selectionConnections and then you’d have it for future use). Or i guess even simpler you could hack together an approximation using iconTextScrollList. . .

The icons will be based on the type of DAG node it is. You could change it for an entire class (by hacking the dll that stores the icons) but you couldn’t changfe just some members of if. So you could make some group nodes show up different from others. I suppose you could make a new node with an icon, but that’s just too much work for what you want.

I’d say it would be better to make your own custom list type, but it will be hard to make it as good & fast as the outliner without doing it as a plugin.

Good call on the perf issue, yeah it seems like if you were going to do a custom list type, better to implement it as plug-in to get access to some of Maya’s built-ins for dealing with the scene interaction feedback portion. T

he idea of building a custom node type is also interesting, and would actually make a pretty cool first maya API type project:D: The python API is remarkably usable, i’ve been having a pretty good time with it myself.