Codejock Forums Homepage
Forum Home Forum Home > Codejock Products > Visual C++ MFC > Docking Pane
  New Posts New Posts RSS Feed - Command bar text update vs. hidden pane
  FAQ FAQ  Forum Search   Events   Register Register  Login Login

Command bar text update vs. hidden pane

 Post Reply Post Reply
spiderM9 View Drop Down

Joined: 21 October 2003
Status: Offline
Points: 17
Post Options Post Options   Thanks (0) Thanks(0)   Quote spiderM9 Quote  Post ReplyReply Direct Link To This Post Topic: Command bar text update vs. hidden pane
    Posted: 31 May 2006 at 2:58pm

When handling the "update" for a command bar item, our application main frame is delegating to the active docking pane.  If the docking pane causes the text of a command to change (e.g. the text of a toolbar button of a visible toolbar in the main frame), the following problem occurs:

1.  if the docking pane is hidden (docked to the side as a tab, by pressing the pin).

2.  when the mouse hovers over the pinned tab, the docking pane starts to expand.

3.  as part of this expanding animation, some sort of delayed layout recalc occurs, while it is expanding.

4.  this recalc causes the whole menu/command bar system to do the idle processing that results in the update status calls.

5.  the update reaches the currently animating pane

6.  the pane changes the text.

7.  the changing text triggers a recalc layout.

8.  the recalc layout triggers some code in xtreme that causes the current active pane to close.

9.  since the active pane is the animating docking pane, it closes back up, before it gets a chance to expand fully.

If I disable changing the text during these animations, I end up in a situation where context menus with dynamic text can't work when the docking pane is temporarily expanded, but not pinned into place.

Is there any known workaround for this?

Back to Top
 Post Reply Post Reply
  Share Topic   

Forum Jump Forum Permissions View Drop Down

Forum Software by Web Wiz Forums® version 12.04
Copyright ©2001-2021 Web Wiz Ltd.

This page was generated in 0.063 seconds.