Professional UI Solutions
Site Map   /  Register
 
 

Forum

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 » Bug in Release 2.70 Collapse All
Subject Author Date
Hans Bergmeister Jun 4, 2007 - 10:26 AM

Hello,

many thanks for releasing version 2.70. It seems to contain again many great new features and improvements. Since we are very happy with your products so far, we are recommending your products and got another major company here in Europe to buy a site license of Prof-UIS recently.

However, the following bug, that has been reported earlier, still persists in Version 2.70:

Start the MDI_DynamicBars sample and make Dynamic Bar 8, Dynamic Bar 9 and Dynamic Bar 10 floating. Then dock Bar 9 and then Bar 10 together with bar 8 side by side in a row within the same floating container. Bar 8 to the left, Bar 9 in the middle, Bar 10 to the right, visible side by side in a row (not tabbed !!) within the same floating container (let us call this "Figure 1"). Now hide the floating container together with all three bars by clicking the X in the container’s NC area. Now select the menu entry View->Dynamic Resizable Bars->Dynamic Bar 8. Dynamic Bar 8 appears as expected. Now select View->Dynamic Resizable Bars->Dynamic Bar 9. Dynamic Bar 9 appears as expected right of Dynamic Bar 8. Now select View->Dynamic Resizable Bars->Dynamic Bar 10. Dynamic Bar 10 appears, too, but the sizes of the bars, i.e. the ratio of their particular widths, does not match the original ratio of "Figure 1". In our case Bar 9 ends as a very narrow window with a width of a few pixels. In other words: the three bars are not restored with their previous width.

I reported this bug already for Version 2.64 on Feb. 22. Your prompt response here in this forum was: "We reproduced the problem. It is the highest possible priority for us. We hope to fix this issue in a few days. We will notify as it is ready." It still doesn’t seem to be ready. ;-)

Technical Support Jun 5, 2007 - 9:09 AM

This issue is not fixed yet because we have not found a good solution. It is not a problem to restore the size of two control bars in one floating palette. But if you have more than two control bars, their positions mutually depend on each other. In fact, it is hardly possible to keep all possible state combinations for all possible bar states especially when some of control bars are not visible in a particular state. By the way, the same problem exists in Visual Studio 2005:

1) Open the Search In Files window. It is a resizable control bar in Visual Studio 2005 and it is constantly floating by default.

2) Make its dockable. This is needed to make it possible to dock several other bars into the same floating palette with it.

3) Dock several other control bars into the same complex floating palette.

4) The Search In Files bar has two +/- buttons which affect the size of its bar. Press any button several times and take a look at the entire layout of the palette.

Hans Bergmeister Jun 5, 2007 - 9:42 AM

Hello,

I understand your problem, especially with regard to keeping all possible state combinations for all possible bar states.

However, in the scenario, that I described earlier, bar 9 ends with a width of just a few pixels. You should at least assign a "reasonable" minimum width to all restored bars.

Second, our bug report is basically based on the following request: we need a mode to restore all bars in a hidden floating palette in one step. That means: if the floating bar has been hidden before by pressing the X on its titile bar, it should be possible to restore the complete palette with all bars in their most recent state _in_one_step_. Calling one of the contained bars (e.g. either bar 8, bar 9 or bar 10 in the example above) in this specific mode should make all previously visible sibling bars visible again, too, in one single step and in the same state.

This specific mode would reduce your problem of keeping all possible state combinations for all possible bar states to keep only the most recent state combination and to restore this most recent state combination in one step. Is there any chance to provide this feature?

Technical Support Jun 6, 2007 - 7:13 AM

It is possible to restore visibility of all control bars inside a floating palette if all of them are invisible and all of them should become visible. The state loading algorithm does this when the floating palettes are loaded. But this task has no sense at run-time. We could code a function which gets a pointer to some control bar in its parameter and display all the control bars in the same floating palette. This task has no sense because the user can dock everything with everything. We guess you can provide us with more details about your task so we can try to find some better solution. For instance, some applications have several independent states for all the control bars. You can see this in the FullScreenState sample which supports the normal and full screen modes and all the bar states are different in these modes. The bar states become saved/restored when switching between modes. This is similar to switching between normal and debug modes in Visual Studio.

Hans Bergmeister Jun 6, 2007 - 7:41 AM

Hello,

>
We guess you can provide us with more details about your task so we can try to find some better solution.
<
Ok - this is what we want to achieve:

- Assume an application with lots of dynamic bars (like your MDI_DynamicBars sample)
- The user is now able to group related bars together inside a common floating palette in an arbitrary manner.
- The user can now hide this group of bars with one click. This is possible today by clicking to the "X" of the floating palette.

So far so good - everything is already possible.

- But it would be very handy now, if the end user could now restore the hidden floating palette with all contained bars in their _previous_ state (this is just the state of each bar just before clicking the "X") in one_single_step.