Professional UI Solutions
Site Map   /  Register


Please Log In to post a new message or reply to an existing one. If you are not registered, please register.

NOTE: Some forums may be read-only if you are not currently subscribed to our technical support services.

Forums » Prof-UIS Tech Support » Docking windows resizing automatically... Collapse All
Subject Author Date
Kevin Murray Apr 21, 2009 - 10:27 AM

In our app using dynamic bars we have added some functionality such that if the window is integrated into the MDI area (your example says "Tabbed Document"), we added to the menu to have a Dock To option, which opens a popup containing the choices Left, Right, Top, and Bottom.  The user can then choose one of these and the dynamic bar will dock to that side of the app.

The docking is all accomplished using DockControlBarInnerOuter.  That said, I have observed the following strange behavior.  If the user has three or more things docked to the left side and stacked on top of each other (in the same circle), the user changes one of the items to the integrated state, then chooses (from our menu) to dock to a different side of the application (Dock to Right, for example), the bar will dock properly to the right, but the remaining items docked to the left will resize themselves, with some of the left side bars becoming so small as to be nearly invisible.

If you were to drag the bar from the left to the right, all is good.  If I make the bar integrated, then floating, the left side windows will resize again.  If you drag the bar off the left to make it float, any further action is fine (integrate, redock, etc.).

It is only when you go to the integrated state from the menu on the docked window do the problems arise...

Any help would be greatly appreciated.



Technical Support Apr 22, 2009 - 11:35 AM

If would be extremely interesting to get a test/compiled version of your application or screen shots of it to take a look what is really happen and how?
How are you switching the bar from document mode into docked at top/bottom/left/right mode? At least we need to take a look at the source code performing this operations.

Kevin Murray Apr 22, 2009 - 11:47 AM

As it turns out, I figured out at least what is causing the issue.

When switching to the MDI window, we added some callback code so we could utilize our own MDI frame class.  As part of the switch, we had a bit of code that told the dynamic bar to destroy itself.  This causes the issue.  If the bar doesn’t destroy, if we leave it alone (as your samples do, I believe), the resizing problem never occurs.

So, it took some time to figure this out, but it appears we have to do some extra work to keep the bar around and reuse it if the user chooses to redock or float the window again.