MaxCustomControls::ToolStripContainerLayout Class Reference


Detailed Description

This class records the layout information of all toolbars inside a given ToolStripContainer.

We then use this class to arrange toolbars to their correct location in this container.

This is a temporary work around for ToolStrip layout. I created this class for two reasons:

1. The standard ToolStrip that provided by Microsoft has bugs and their position cannot be accurately set. I googled this and I found a lot of developers complained about this, see the link: connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=114610

2. Replace ToolStrip with other products can solve this problem, However, doing so means completely rewrite of the icon management, the buttons on the toolbars, the container panel of the toolbars, the save and load of toolbar layout information ---- which, means the completely rewrite of the entire toolbar mechanism of both scene explorer and material explorer. We decide to do this in Zelda timeframe.

List of all members.

Public Member Functions

  ToolStripContainerLayout (ToolStripContainer aToolStripContainer)
  Constructor.
void  Clear ()
  Clear all layout information of this ToolStripContainer.
void  AddToolStrip (ToolStripPanelLocation location, int row, ToolStrip toolStrip)
  Add a ToolStrip at the given location of this ToolStripContainer.
void  SuspendLayout ()
  Suspend the layout of all toolstrips of this ToolStripContainer.
void  ResumeLayout ()
  Resume the layout of all toolstrips of this ToolStripContainer.
void  PerformLayout ()
  Perform the layout of all toolstrips of this container.

Constructor & Destructor Documentation

MaxCustomControls::ToolStripContainerLayout::ToolStripContainerLayout ( ToolStripContainer  aToolStripContainer ) [inline]

Constructor.

Parameters:
aToolStripContainer The given ToolStripContainer.

Member Function Documentation

void MaxCustomControls::ToolStripContainerLayout::Clear ( ) [inline]

Clear all layout information of this ToolStripContainer.

void MaxCustomControls::ToolStripContainerLayout::AddToolStrip ( ToolStripPanelLocation  location,
int  row,
ToolStrip  toolStrip 
) [inline]

Add a ToolStrip at the given location of this ToolStripContainer.

Parameters:
location Which panel does this ToolStrip lay?
row Which row of that panel?
toolStrip The toolstrip.
void MaxCustomControls::ToolStripContainerLayout::SuspendLayout ( ) [inline]

Suspend the layout of all toolstrips of this ToolStripContainer.

So even the property of a toolstrip get changed, we won't perform layout.

void MaxCustomControls::ToolStripContainerLayout::ResumeLayout ( ) [inline]

Resume the layout of all toolstrips of this ToolStripContainer.

Notice this function will not perform layout. You need to explicitly call PerformLayout.

void MaxCustomControls::ToolStripContainerLayout::PerformLayout ( ) [inline]

Perform the layout of all toolstrips of this container.


MaxCustomControls::ToolStripContainerLayout MaxCustomControls::ToolStripContainerLayout MaxCustomControls::ToolStripContainerLayout MaxCustomControls::ToolStripContainerLayout MaxCustomControls::ToolStripContainerLayout MaxCustomControls::ToolStripContainerLayout MaxCustomControls::ToolStripContainerLayout MaxCustomControls::ToolStripContainerLayout MaxCustomControls::ToolStripContainerLayout MaxCustomControls::ToolStripContainerLayout
MaxCustomControls::ToolStripContainerLayout MaxCustomControls::ToolStripContainerLayout MaxCustomControls::ToolStripContainerLayout MaxCustomControls::ToolStripContainerLayout MaxCustomControls::ToolStripContainerLayout MaxCustomControls::ToolStripContainerLayout MaxCustomControls::ToolStripContainerLayout MaxCustomControls::ToolStripContainerLayout MaxCustomControls::ToolStripContainerLayout MaxCustomControls::ToolStripContainerLayout