MAXScript Dialogs and Rollout Floaters as Extended viewports

Topic: version 4 MAXScript Language Improvements / User Interface/ Command Panels and Rollout Pages

The following functions can be used to register and unregister MAXScript dialogs and rollout floaters as extended viewports.

registerViewWindow <MAXScript_dialog | rollout_floater>

Registers any MAXScript dialog or rollout floater as an extended viewport. The title of the dialog or floater appears in the viewport right click menu, under Views > Extended menu. When picked the dialog or floater will be displayed in that viewport.

If you click anywhere on the outside border, it will pop up the standard views menu. This will let you switch to a different view window.

unRegisterViewWindow < MAXScript_dialog | rollout_floater>

Unregisters a dialog or floater as an extended view window. It will throw an error if the dialog or floater is currently displayed in a viewport.

Here is a sample script that creates two instances of a Cult3D viewer, found at www.cycore.com, and opens two files from the internet. Install the Cult3d Viewer and execute the script example below. After executing the script right click on any of the viewports and pick "Views > Extended > Cult3D Player" to display the window in the viewport.

example:

rollout rCult3D "Cult3D Player"

(

activeXControl ax1 "{31B7EB4E-8B4B-11D1-A789-00A0CC6651A8}" align:#left setupEvents:false pos:[10,10]

activeXControl ax2 "{31B7EB4E-8B4B-11D1-A789-00A0CC6651A8}" align:#left setupEvents:false pos:[10,220]

on rCult3D resized size do

(

local csz = (size - [20,30])*[1,.5]

ax2.pos = [10, csz.y+20]

ax1.size = ax2.size = csz

)

on rCult3D open do

(

ax1.size = ax2.size = [300,200]

ax1.LoadCult3D "http://www.cult3d.com/gallery/ecommerce/olympus_on_the_beach.co"

ax2.LoadCult3D "http://www.cult3d.com/gallery/museum/madonna.co"

)

)

createDialog rCult3D width:320 height:430

registerViewWindow rCult3D

See also