API Structure Wrappers
SFL includes wrappers for some commonly used Win32 API structures, in particular:
*RECT
*POINT
*SIZE
A major design directive driving the development of SFL has been maintaining MFC source code level compatibility. The objective of this is to enable you to write code that can be used in MFC applications as well as in SFL with as few changes as possible.
Not coincidentally, the names and public interfaces of these classes in SFL is the same as their MFC counterparts. So we have:
*CRect
*CPoint
*CSize
We will not describe the interface or the usage of these classes, since they are identical to MFC’s. Please refer to the MFC documentation for an overview of their operations and data members.
It is important to notice that, unlike most of SFL, these wrappers are not within the stingray::foundation namespace. That means that you should not use the SFL version of them when your project uses MFC in conjunction with SFL. SFL’s own header files correctly strip out these definitions when MFC is present, and adequately use the MFC structures instead. But you must be careful not to include this class explicitly in your program, under such circumstances, since it will cause a ambiguous symbol name error.