Print Page | Close Window

Gap Between Frame and Empty Ribbon

Printed From: Codejock Forums
Category: Codejock Products
Forum Name: Command Bars
Forum Description: Topics Related to Codejock Command Bars
URL: http://forum.codejock.com/forum_posts.asp?TID=10643
Printed Date: 16 September 2024 at 4:27pm
Software Version: Web Wiz Forums 12.04 - http://www.webwizforums.com


Topic: Gap Between Frame and Empty Ribbon
Posted By: mrmathis
Subject: Gap Between Frame and Empty Ribbon
Date Posted: 15 May 2008 at 5:49pm
When my MDI app starts up, the ribbon is empty and no documents are open (intentionally).  In that state, I'm seeing a black gap between the frame and the empty ribbon.
 
 
 
If I resize the frame slightly, that area repaints correctly.
 
 
This is not the only way I can get into this state, but it is the most glaring, since it's the first thing my user sees.  Any guesses on what is causing this?


-------------
--Mike



Replies:
Posted By: Oleg
Date Posted: 16 May 2008 at 1:30am
Hi,
 
Do you see same with our RibbonSample? Can you try to modify it to see same ?


-------------
Oleg, Support Team
CODEJOCK SOFTWARE SOLUTIONS


Posted By: mrmathis
Date Posted: 16 June 2008 at 4:25pm

Yes, I can cause this in your RibbonSample in 11.2.0 and 11.2.1 by commenting out a few lines, or just by playing some debugger magic.  It doesn't happen in 11.2.2 or 12.0.  I know you are going to tell me to upgrade, but I simply cannot do that at this stage of my release cycle.  My shop is very strict about when new libraries are acceptable, and that time is in my rearview mirror for this release.

Here's how to reproduce it.  Set a break in RibbonMDISample.cpp / CRibbonMDISampleApp::InitInstance at the call to ProcessShellCommand.  Deposit a -1 in cmdInfo.m_nShellCommand (to prevent a default document from being created).  Set another break in MainFrm.cpp / CMainFrame::CreateRibbonBar at the call to pRibbonBar->AddTab(ID_TAB_HOME);  Don't let that execute; instead, just do a "set next statement" down to

pRibbonBar->EnableFrameTheme();.  That should be all it takes to see the same black bar.

Is there any way to work around this in 11.2.0, or a simple fix that could be pulled back?  I've tried calling pFrame->RecalcLayout and pRibbon->Redraw(0,FALSE) right after I create the ribbon, but that didn't help.  The frame wasn't on the screen yet, so that may have been too early.

Thanks.



-------------
--Mike


Posted By: mrmathis
Date Posted: 18 June 2008 at 6:02pm
How about just a clue as to where the frame gets drawn?  Maybe I can work backwards from there to see a workaround.

-------------
--Mike


Posted By: Oleg
Date Posted: 19 June 2008 at 1:16am
Hello,
 
11.2.2 has only fixes for 11.2.1.  Think its safe to update.


-------------
Oleg, Support Team
CODEJOCK SOFTWARE SOLUTIONS


Posted By: mrmathis
Date Posted: 19 June 2008 at 9:12am
You may think it's safe, I may think it's safe, and Laurence Olivier may think it's safe, but my boss is not going to allow an update this close to our ship date.  Not gonna happen. 
 
Now, workarounds, that's a different story.  Are there any calls I could make to refresh that part of the screen at strategic times?  So far I've tried pFrame->Invalidate, InvalidateRect, RecalcLayout and pRibbon->Redraw with no success.


-------------
--Mike



Print Page | Close Window

Forum Software by Web Wiz Forums® version 12.04 - http://www.webwizforums.com
Copyright ©2001-2021 Web Wiz Ltd. - https://www.webwiz.net