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 » How to replace CScrollView derived class with Prof-UIS scroll-bars? Collapse All
Subject Author Date
Offer Har Mar 11, 2009 - 10:34 AM

Thanks,


Ron.

Technical Support Mar 11, 2009 - 11:29 AM

- Use the CExtNCSB < CScrollView > template based type if you cannot avoid scroll view, if you need different MM_*** mapping/scaling modes, if you need the CScrollView class as part of document/view architecture and so on. The DRAWCLI sample application demonstrates splitter enabled scrollable views.

- Use the CExtNCB < CExtScrollWnd > template based type if you need simple and effective scrollable UI control with pixel by pixel based scrolling. But it does not mean you cannot implement scaling in this case. The ZoomScrollBar and AviFrames sample application use the CExtScrollWnd class and support scaling. The CExtImageEditWnd class is based on the CExtScrollWnd class and also supports scaling. Here is sample project demonstration something scrollable and simplest as possible:

http://www.prof-uis.com/download/forums/test_scroll_wnd.zip

- Use the CExtNCB < CExtScrollItemWnd > template based type if you need simple and effective scrollable UI control with optional pixel by pixel or item by item based scrolling in the horizontal and/or vertical directions line our grid controls do.

- If you need something scrollable and scaleable with higher precession computations, then you should implement scrolling based on the floating point values. The CExtFloatScrollWnd class in the following test project does this:

http://www.prof-uis.com/download/forums/TestGraph3.zip

Offer Har Mar 11, 2009 - 11:47 AM

Dear Support,


When I try to replace CScrollView with CExtNCSB < CScrollView >, I get this error:


1>z:\3rdparty\prof-uis\include\extscrollwnd.h(446) : error C2661: ’CScrollView::CScrollView’ : no overloaded function takes 2 arguments

1>        z:\3rdparty\prof-uis\include\extscrollwnd.h(420) : while compiling class template member function ’CExtNCSB_Impl<_BTNCSBimpl>::CExtNCSB_Impl(UINT,CWnd *,bool,bool)’

1>        with

1>        [

1>            _BTNCSBimpl=CScrollView

1>        ]

1>        z:\3rdparty\prof-uis\include\extscrollwnd.h(1178) : see reference to class template instantiation ’CExtNCSB_Impl<_BTNCSBimpl>’ being compiled

1>        with

1>        [

1>            _BTNCSBimpl=CScrollView

1>        ]

1>        z:\infra\baseframework\baseview.h(42) : see reference to class template instantiation ’CExtNCSB<_BTNCSB>’ being compiled

1>        with

1>        [

1>            _BTNCSB=CScrollView

1>        ]


Is there any competability issue between CExtNCSB and CScrollView ?


Thanks,


Ron.

Technical Support Mar 11, 2009 - 1:18 PM

We are sorry. Some template classes require adaptors. Could you please check whether the following specialization is present in the …/Prof-UIS/Include/ExtScrollWnd.h file?

template < > class __PROF_UIS_API CExtNCSB < CScrollView > : public CExtNCSB_Impl < CExtANCSB < CScrollView > >
{
public:
            CExtNCSB(
                                    bool bNcsbDelayedInitialization = false,
                                    bool bNcsbForceMiddleContainerMode = false
                                    )
            {
                        m_bNcsbDelayedInitialization = bNcsbDelayedInitialization;
                        m_bNcsbForceMiddleContainerMode = bNcsbForceMiddleContainerMode;
            }
            virtual ~CExtNCSB()
            {
            }
}; // template < > class CExtNCSB < CScrollView >
If it’s not, then here is the source code update:
http://www.prof-uis.com/download/forums/tmp/Updated_Scroll_Classes_in285.zip



Offer Har Mar 11, 2009 - 1:23 PM

Yep, I don’t have this...


Will these file work in 2.84?

Technical Support Mar 11, 2009 - 2:26 PM

Seems it should. If it’s not, then we can provide you with 2.85 pre release download.

Offer Har Mar 11, 2009 - 2:30 PM

Dear Support,


It does not work:


1>z:\3rdParty\Prof-UIS\Include\ExtScrollWnd.h(446) : error C2661: ’CZoomView::CZoomView’ : no overloaded function takes 2 arguments

1>        z:\3rdParty\Prof-UIS\Include\ExtScrollWnd.h(420) : while compiling class template member function ’CExtNCSB_Impl<_BTNCSBimpl>::CExtNCSB_Impl(UINT,CWnd *,bool,bool)’

1>        with

1>        [

1>            _BTNCSBimpl=CZoomView

1>        ]

1>        z:\3rdParty\Prof-UIS\Include\ExtScrollWnd.h(1178) : see reference to class template instantiation ’CExtNCSB_Impl<_BTNCSBimpl>’ being compiled

1>        with

1>        [

1>            _BTNCSBimpl=CZoomView

1>        ]

1>        z:\infra\behaivorview\BehaviorView.h(9) : see reference to class template instantiation ’CExtNCSB<_BTNCSB>’ being compiled

1>        with

1>        [

1>            _BTNCSB=CZoomView

1>        ]


I cannot use 2.85 because it crashes all owner-drawn combo-boxes.


Were you able to take a look at this problem?


When is 2.85 supposed to be out?

Offer Har Mar 11, 2009 - 2:51 PM

OK....


I managed.


Thanks.

Technical Support Mar 11, 2009 - 1:18 PM

We suspect you exported this project somehow incorrectly. Try to turn off and/or on manifest generation.

Offer Har Mar 11, 2009 - 1:21 PM

I tried, but then it started looking for MFC80.dll, which it never does.


Your project was in VC6, which I don’t have, adn my VC2005 converterd it - I did not do anything but pressing F7...


Can you please check if it works for you in VC2005?


Thanks,


Ron.

Technical Support Mar 13, 2009 - 3:37 PM
Offer Har Mar 11, 2009 - 11:36 AM

Dear Support,


I tried build TestGraph3, and I keep getting this error:


1>------ Build started: Project: TestGraph, Configuration: Debug Win32 ------

1>Linking...

1>CVTRES : fatal error CVT1100: duplicate resource.  type:MANIFEST, name:1, language:0x0409

1>LINK : fatal error LNK1123: failure during conversion to COFF: file invalid or corrupt

1>Build log was saved at "file://z:\3rdParty\Prof-UIS\TestGraph3\Debug\BuildLog.htm"

1>TestGraph - 2 error(s), 0 warning(s)

========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========


Any ides?


Thanks,


Ron.