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 » Error in PageNavigator Collapse All
Subject Author Date
Luis Palacios Feb 19, 2005 - 7:46 PM

Hi,

When compiled PageNavigator I got the error: afxData.bwin4 is not member of AUX_DATA, so I revised AfxImpl.h and it was not defined. I include the macro:
#define BWIN4 (::GetVersion() >= 4)
in MainFrm.h, replaced afxData.bwin4 and compiled well. Also you didn’t include all cpp files in the project and there is a link error.

Best regards

Luis Alberto

Technical Support Feb 20, 2005 - 7:48 AM

Dear Luis,

Thank you for the bug report! The bug was caused by that we forgot to exclude the afxData global variable, which is specific for MFC 4.xx, from the PageNavigator sample application. Besides, the .vcproj files (relating to this sample) for Visual Studio .NET 7.0 / .NET 7.1 / 2005 did not include all the required file references. Here is a fixed version of the CPNSplitterWnd class that is used locally in the MainFrm.h file of the PageNavigator sample:

class CPNSplitterWnd : public CExtSplitterWnd
{
public:
 CPNSplitterWnd()
 {
  m_cxSplitterGap = 4;
  m_cySplitterGap = 4;
 } 
protected:
 virtual void OnDrawSplitter(
  CDC * pDC,
  ESplitType nType,
  const CRect & rectArg
  )
 {
  if( pDC == NULL)
  {
   RedrawWindow(
    rectArg, 
    NULL, 
    RDW_INVALIDATE
     |RDW_NOCHILDREN
    );
   return;
  }
  ASSERT_VALID(pDC);
  CRect rect( rectArg );  
  CRect rcClient;
  GetClientRect( &rcClient );
  CRect rcClientInner( rcClient );
  rcClientInner.DeflateRect(
   2*CX_BORDER,
   2*CX_BORDER
   );
  switch( nType )
  {
  case splitBorder:
   pDC->ExcludeClipRect(
    &rcClientInner
    );
   g_PaintManager->PaintDockerBkgnd( 
    true,
    *pDC,  
    rcClient,
    rect
    );
   pDC->SelectClipRgn( NULL );
   return;
  case splitBar:
  case splitIntersection:
   break;
  case splitBox:
   pDC->ExcludeClipRect(
    &rcClientInner
    );
   g_PaintManager->PaintDockerBkgnd( 
    true,
    *pDC,  
    rcClient,
    rect
    );
   pDC->SelectClipRgn( NULL );
   break;
#ifdef _DEBUG
  default:
   {
    ASSERT( FALSE );
   }
   break;
#endif // _DEBUG
  } // switch( nType )
  rect.right =
   rect.left + m_cySplitterGap;
  pDC->FillSolidRect(
   rect, 
   g_PaintManager->GetColor(
    CExtPaintManager::CLR_3DFACE_OUT,
    (CObject*)this
    )
   );
 }
}; // class CPNSplitterWnd


You can download a re-assembled installation of Prof-UIS 2.30 or fixed source code for PageNavigator only.