ZFFramework
 
Loading...
Searching...
No Matches
ZFUIRootView.h
Go to the documentation of this file.
1
5
6#ifndef _ZFI_ZFUIRootView_h_
7#define _ZFI_ZFUIRootView_h_
8
9#include "ZFUIView.h"
11
20zffinal zfclass ZFLIB_ZFUIKit ZFUIRootView : zfextend ZFUIView {
21 ZFOBJECT_DECLARE(ZFUIRootView, ZFUIView)
22 ZFOBJECT_PRIVATE_ALLOC("can only be created by owner ZFUISysWindow")
23
24public:
29 return this->_ZFP_ZFUIRootView_rootViewOwnerSysWindow;
30 }
31
36
37protected:
39 virtual void viewOnAddToParent(ZF_IN ZFUIView *parent);
41 virtual void viewOnRemoveFromParent(ZF_IN ZFUIView *parent);
42
43protected:
48 virtual void layoutOnMeasure(
49 ZF_OUT ZFUISize &ret
50 , ZF_IN const ZFUISize &sizeHint
51 , ZF_IN const ZFUISizeParam &sizeParam
52 );
54 virtual void layoutOnLayout(ZF_IN const ZFUIRect &bounds);
55
56public:
57 zfanyT<ZFUISysWindow> _ZFP_ZFUIRootView_rootViewOwnerSysWindow;
58 ZFCoreArray<zfautoT<ZFUIWindow> > _ZFP_ZFUIRootView_windowList;
59};
60
62#endif // #ifndef _ZFI_ZFUIRootView_h_
63
#define zffinal
dummy macro shows that a method or class is designed must not to be overrided
Definition ZFCoreTypeDef_ClassType.h:63
#define zfextend
dummy macro shows class inherit from another
Definition ZFCoreTypeDef_ClassType.h:53
#define zfoverride
dummy macro shows that method override parent's method
Definition ZFCoreTypeDef_ClassType.h:58
#define ZF_IN
dummy macro that shows the param used as required input
Definition ZFCoreTypeDef_ClassType.h:180
#define ZF_OUT
dummy macro that shows the param used as required output
Definition ZFCoreTypeDef_ClassType.h:188
#define zfclassFwd
forward declaration of a class type
Definition ZFCoreTypeDef_ClassType.h:31
#define ZFMETHOD_DECLARE_0(ReturnType, MethodName)
see ZFMethod
Definition ZFMethodDeclare.h:693
#define ZF_NAMESPACE_GLOBAL_BEGIN
begin namespace ZFFramework
Definition ZFNamespace.h:97
#define ZF_NAMESPACE_GLOBAL_END
end namespace ZFFramework
Definition ZFNamespace.h:98
#define zfclass
same as class, shows that this class is a ZFObject type
Definition ZFObjectClassTypeFwd.h:38
#define ZFOBJECT_DECLARE(ChildClass, SuperClass,...)
necessary for every class inherit from ZFObject
Definition ZFObjectDeclare.h:126
#define ZFOBJECT_PRIVATE_ALLOC(...)
mark this object can not be allocated directly
Definition ZFObjectDeclare.h:245
#define ZFLIB_ZFUIKit
used to export symbols
Definition ZFUIKitDef.h:16
base class of all UI views
light weight array
Definition ZFCoreArray.h:331
2D rectangle
Definition ZFUITypeDef.h:636
virtual void viewOnAddToParent(ZFUIView *parent)
see E_ViewOnAddToParent
virtual void viewOnRemoveFromParent(ZFUIView *parent)
see E_ViewOnRemoveFromParent
virtual void layoutOnMeasure(ZFUISize &ret, const ZFUISize &sizeHint, const ZFUISizeParam &sizeParam)
for a root view, this method would always return sizeHint
virtual void layoutOnLayout(const ZFUIRect &bounds)
called by viewFrame to layout the view and children
virtual const ZFCoreArray< zfautoT< ZFUIWindow > > & windowList()
all ZFUIWindow attached to the root view
zfanyT< ZFUISysWindow > const & rootViewOwnerSysWindow(void)
owner ZFUISysWindow
Definition ZFUIRootView.h:28
2D size
Definition ZFUITypeDef.h:397
2D size
Definition ZFUIViewType.h:41
root native window
Definition ZFUISysWindow.h:34
virtual zfanyT< ZFUIView > parent()
parent view or null if none
window as a ZFUIView
Definition ZFUIWindow.h:74
see zfany
Definition zfany.h:106
type restrict version of zfauto
Definition zfautoFwd.h:110