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 with extscrollwnd.h Collapse All
Subject Author Date
howard liu Sep 9, 2009 - 1:46 AM

Hi,


I am getting this error when compiling a source file.  What does it mean ?


Thank you.


 


1>d:\foss software inc\prof-uis\include\extscrollwnd.h(446) : error C2661: ’CExtWFF<CExtWFFBase>::CExtWFF’ : no overloaded function takes 2 arguments

1>        with

1>        [

1>            CExtWFFBase=CTreeCtrl

1>        ]

1>        d:\foss software inc\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=CExtWFF<CTreeCtrl>

1>        ]

1>        d:\foss software inc\prof-uis\include\extscrollwnd.h(1178) : see reference to class template instantiation ’CExtNCSB_Impl<_BTNCSBimpl>’ being compiled

1>        with

1>        [

1>            _BTNCSBimpl=CExtWFF<CTreeCtrl>

1>        ]

1>        d:\treectrl.h(7) : see reference to class template instantiation ’CExtNCSB<_BTNCSB>’ being compiled

1>        with

1>        [

1>            _BTNCSB=CExtWFF<CTreeCtrl>

1>        ]

howard liu Sep 22, 2009 - 12:27 AM

After some changes, I got different compilation error, following are my changes I’ve made:


in VNTITreeCtrl.h  


 

Technical Support Sep 18, 2009 - 2:43 PM

Please use the CExtWFF < CExtNCSB < CTreeCtrl > > template class as base of your tree control class. This is correct. But we think you faced an issue which was fixed after the Prof-UIS 2.85 was released. So, we would like to ask you to update the source code for the …/Prof-UIS/Include/ExtScrollWnd.h and …/Prof-UIS/Src/ExtScrollWnd.cpp files first:

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

howard liu Sep 21, 2009 - 10:32 PM

Thanks for your suggestions, I’ve downloaded and updated the ExtScrollWnd.h and ExtScrollWnd.cpp, and rebuild the project, the same compiler error still exists. Following are the template class used in the class declaration:


class GEXUTILSAPI CVNTITreeCtrl : public CExtWFF < CExtNCSB <CTreeCtrl> > {...}


and the compilation error is: Error 135 error C2664: ’CExtWFF<CExtWFFBase>::CExtWFF(const CExtWFF<CExtWFFBase> &)’ : cannot convert parameter 1 from ’bool’ to ’const CExtWFF<CExtWFFBase> &’ d:\vnti\vnti10\vnti\ve_controls\vectorntiutils\vntitreectrl.cpp 52


Please help. Thank you.

Technical Support Sep 23, 2009 - 5:03 AM

Please use the default constructor without parameters when instantiating the CExtWFF < CExtNCSB < CTreeCtrl > >-based type.

howard liu Sep 18, 2009 - 12:34 AM

Thanks for your reply, there is one place I’m using CExtNCSB < CExtWFF < CTreeCtrl > > template type, as shown following


class GEXUTILSAPI CVNTITreeCtrl : public CExtNCSB < CExtWFF<CTreeCtrl> > {...}   , following your suggestion I changed the above to following


class GEXUTILSAPI CVNTITreeCtrl : public CExtWFF < CExtNCSB <CTreeCtrl> > 


, the compiler gives following error 


Error 135 error C2664: ’CExtWFF<CExtWFFBase>::CExtWFF(const CExtWFF<CExtWFFBase> &)’ : cannot convert parameter 1 from ’bool’ to ’const CExtWFF<CExtWFFBase> &’ d:\vnti\vnti10\vnti\ve_controls\vectorntiutils\vntitreectrl.cpp 50

at


CVNTITreeCtrl::CVNTITreeCtrl():CExtWFF < CExtNCSB <CTreeCtrl> >(true) {...}, could I get your help on what’s the cause of this problem? and how to solve it? Thanks.

Technical Support Sep 10, 2009 - 4:32 AM

It looks like you tried to compile the CExtNCSB < CExtWFF < CTreeCtrl > > template based type and compiler cannot find appropriated constructors in the CExtWFF template class to invoke from the constructors of the CExtNCSB template class. Please use the CExtWFF < CExtNCSB < CTreeCtrl > > template based type instead.

howard liu Sep 18, 2009 - 12:37 AM

Thanks for your reply, there is one place I’m using CExtNCSB < CExtWFF < CTreeCtrl > > template type, as shown following


class GEXUTILSAPI CVNTITreeCtrl : public CExtNCSB < CExtWFF<CTreeCtrl> > {...}   , following your suggestion I changed the above to following class GEXUTILSAPI CVNTITreeCtrl : public CExtWFF < CExtNCSB <CTreeCtrl> > 


, the compiler gives following error, Error 135 error C2664: ’CExtWFF<CExtWFFBase>::CExtWFF(const CExtWFF<CExtWFFBase> &)’ : cannot convert parameter 1 from ’bool’ to ’const CExtWFF<CExtWFFBase> &’ d:\vnti\vnti10\vnti\ve_controls\vectorntiutils\vntitreectrl.cpp 50

at  CVNTITreeCtrl::CVNTITreeCtrl():CExtWFF < CExtNCSB <CTreeCtrl> >(true) {...}, could I get your help on what’s the cause of this problem? and how to solve it? Thanks.

howard liu Sep 22, 2009 - 12:32 AM

I’ve made some changes in my code, got different compilation error, following are the changes I’ve made.


In VNTITreeCtrl.h   class GEXUTILSAPI CVNTITreeCtrl : public CExtNCSB < CExtWFF <CTreeCtrl> > is changed to class GEXUTILSAPI CVNTITreeCtrl : public CExtWFF < CExtNCSB <CTreeCtrl> > at class declaration,


in VNTITreeCtrl.cpp CVNTITreeCtrl::CVNTITreeCtrl():CExtNCSB< CExtWFF<CTreeCtrl> >(true) is changed to CVNTITreeCtrl::CVNTITreeCtrl() at constructor implementation.


The compilation error now is: error C2661: ’CTreeCtrl::CTreeCtrl’ : no overloaded function takes 2 arguments c:\program files\foss software inc\prof-uis\include\extscrollwnd.h 447


Could I know how to fix it? Thank you.