PDA

View Full Version : Reordering rollouts on the command panel


biddle
10-15-2009, 08:41 PM
I would like to know how to reorder the rollouts on the command panel and then scroll the panel up/down programmatically.

After adding custom attributes to a base object I find that they are often buried between all the other panels. The UI allows you to drag-and-drop rollouts as you please, but I want to do that from the SDK.

I'm pretty sure this sort of thing (cluttered panels) has been discussed, but I believe the answer was to put the CAs in an empty modifier. This isn't an option for me as my CAs are tightly coupled to the baseobj (and besides, I'm annoyed that I can't get it to do what I want)

Any ideas, examples or docs to read would be appreciated. I figure it's either trivial, and I've just missed it, or damn near impossible and therefore undocumented.

.biddle

PiXeL_MoNKeY
10-15-2009, 08:45 PM
It doesn't appear to be any access to it, so I would guess .Net Windows form would be the way to go. I am sure denisT or one of the other .Net resident experts could help you with that.

-Eric

biddle
10-16-2009, 12:48 AM
Hm.

Looks like I should be able to get things re-ordered by tweaking the rollup's category.

denisT
10-16-2009, 02:09 AM
Hm.

Looks like I should be able to get things re-ordered by tweaking the rollup's category.

according to Rollout Systems 'category' Mechanism from help you can't reorder rollouts using categories... because system doesn't allow you to change category after rollout's creation.

biddle
10-16-2009, 04:10 AM
Yeah I saw that bit in the maxscript docs too. That's why I was looking at how to modify the category through the SDK.

AFAICT it should be possible, because that's how appears the system reorders things after a drag and drop operation.

You certainly can't do it from mxs. At least not directly.

denisT
10-16-2009, 05:39 AM
I've looked in SDK... you are definitely can reorder rollups from SDK. IRollupWindow and IRollupPanel give access to that.

Bobo
10-16-2009, 05:50 AM
Yeah I saw that bit in the maxscript docs too. That's why I was looking at how to modify the category through the SDK.

AFAICT it should be possible, because that's how appears the system reorders things after a drag and drop operation.

You certainly can't do it from mxs. At least not directly.


You can indirectly change the file "RollupOrder.cfg" found in your local data's UI folder.
But these changes cannot be updated into the system via MAXScript unless you restart Max (or at least I have not found a way to force Max to take the changes into account).

The file format is simple though, for each class that defines rollout order, it lists the superclass and the class and then the names of the rollouts and their order value, for example

Physique SuperClassID <0x00000810> ClassID <0x00000100,0x00000000> :
Title <Floating Bones> Order <1>
Title <Physique> Order <2>
Title <Physique Level of Detail> Order <3>

denisT
10-16-2009, 07:17 PM
I've looked in SDK... you are definitely can reorder rollups from SDK. IRollupWindow and IRollupPanel give access to that.


yes. I made a function to change Category and Open state of RollupPanel using c++ and the SDK... it was easy. Biddle, do you need a code?

CGTalk Moderation
10-16-2009, 07:17 PM
This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.