The IVFB Interface is returned as notification parameter result by the two Rendered Frame Window and Image Viewer-related callbacks.
It can be used to customize the appearance and register user-defined scripted rollouts in the top left, top right and bottom panels of the dialog.
Available in 3ds Max 2009 and higher.
Properties
<IVFB>.ShowOverlays : boolean : Read|WriteGet/set the display of the render region box in the Rendered Frame Window. Corresponds to the "Toggle UI Overlays" button in the Rendered Frame Window main toolbar.
<IVFB>.ShowRollups : boolean : Read|WriteThis property is true when the rollout panels are displayed in the Rendered Frame Window.
If no rollout panels have been installed, this may still return true, because it's only a global toggle used to optionally hide the rollouts. Setting this property will show/hide the rollout panels, and the UI is immediately updated.
<IVFB>.IsFramebuffer : boolean : ReadThis property contains true if the window is a Rendered Frame Window.
It is false for Image Viewer windows (as from File>View Image File).
This allows a script to install render controls on only the Rendered Frame Window.
<IVFB>.IsVisible: boolean : Read|WriteGet/set the visible state of the Image Viewer.
<IVFB>.IsInitialized : boolean : ReadContains true if the Image Viewer has been initialized already by calling the .InitLayout() method documented further on this page.
Methods
<value><IVFB>.InitRolloutWindow <enum>which <integer>width <integer>height
which enums: {#TopLeft | #TopRight | #Bottom}Returns a RolloutFloater value, allowing rollouts to be added to it.
It represents a single panel, not the entire floating window.
MAXScript can now create rollouts in borderless mode by calling AddRollout with the optional keyword argument border: set to false .
Such rollouts do not have a title bar nor border around them and merge seamlessly with the rest of the panel.
<boolean><IVFB>.GetRolloutWindowVisible <enum>which
which enums: {#TopLeft | #TopRight | #Bottom}Returns the visibility of the specified rollout panel.
<void><IVFB>.SetRolloutWindowVisible <enum>which <boolean>show
which enums: {#TopLeft | #TopRight | #Bottom}Sets the visibility of the specified rollout panel.
<void><IVFB>.SetMetric <enum>metricID <integer>value
metric ID enums: {#HorzMarginLeft | #HorzMarginCenter | #HorzMarginRight | #VertMarginTop | #VertMarginCenter | #VertMarginBottom | #MinClientWidth | #MinClientHeight}Sets the spacing between the panels in the framebuffer.
The first parameters can be one of the following:
#horzMarginLeft - Space in pixels between the left edge of the window and the left rollout panel.
#horzMarginCenter - Horizontal space in pixels between the two rollout panels.
#horzMarginRight - Space in pixels between the right edge of the window and the right rollout panel.
#vertMarginTop - Space in pixels between the top of the window and the top of the rollout panels.
#vertMarginCenter - Vertical space in pixels between the rollout panels and the bitmap view.
#vertMarginBottom - Vertical space in pixels between the bottom rollout panel and the bitmap view.
#minClientWidth - Minimum sizable width of the window in pixels.
#minClientHeight - Minimum sizable height of the window in pixels.
Despite the values of #minCleintWidth and #minClientHeight , the window can never be resized down to become smaller than the combined width of the top two rollouts.
<integer><IVFB>.GetMetric <enum>metricID
metricID enums:{#HorzMarginLeft | #HorzMarginCenter | #HorzMarginRight | #VertMarginTop | #VertMarginCenter | #VertMarginBottom | #MinClientWidth | #MinClientHeight}Returns the spacing settings for the specified parameter of the current layout.
See above for details.
<void><IVFB>.InitLayout()Calling this method causes the current layout set up using the properties and methods above to be initialized.