soui 5.0.0.1
Soui5 Doc
 
Loading...
Searching...
No Matches
SouiFactory.cpp
1#include <souistd.h>
2#include <SouiFactory.h>
3#include <helper/SMenu.h>
4#include <helper/SMenuEx.h>
5#include <helper/STimer.h>
6#include <core/SHostDialog.h>
8SNSBEGIN
9
10SouiFactory::SouiFactory(void)
11{
12}
13
14SouiFactory::~SouiFactory(void)
15{
16}
17
18IApplication *SouiFactory::CreateApp(THIS_ IRenderFactory *pRenderFac, HMODULE hInst, LPCTSTR pszHostClassName, BOOL bImeApp)
19{
20 return new SApplication(pRenderFac, hInst, pszHostClassName, SObjectDefaultRegister(), bImeApp);
21}
22
23INativeWnd *SouiFactory::CreateNativeWnd(THIS)
24{
25 return new SNativeWnd();
26}
27
28IHostWnd *SouiFactory::CreateHostWnd(THIS_ LPCTSTR pszResID)
29{
30 return new SHostWnd(pszResID);
31}
32
33IHostDialog *SouiFactory::CreateHostDialog(THIS_ LPCTSTR pszResID)
34{
35 return new SHostDialog(pszResID);
36}
37
38IStringA *SouiFactory::CreateStringA(THIS_ LPCSTR pszSrc)
39{
40 return CreateIStringA(pszSrc);
41}
42
43IStringW *SouiFactory::CreateStringW(THIS_ LPCWSTR pszSrc)
44{
45 return CreateIStringW(pszSrc);
46}
47
48IXmlDoc *SouiFactory::CreateXmlDoc(THIS)
49{
50 return CreateIXmlDoc();
51}
52
53IResProvider *SouiFactory::CreateResProvider(THIS_ BUILTIN_RESTYPE resType)
54{
55 IResProvider *pObj = NULL;
56 switch (resType)
57 {
58#ifdef _WIN32
59 case RES_PE:
60 pObj = new SResProviderPE;
61 break;
62#endif //_WIN32
63 case RES_FILE:
64 pObj = new SResProviderFiles;
65 break;
66 default:
67 break;
68 }
69 return pObj;
70}
71
72IEvtSlot *SouiFactory::CreateFuncSlot(THIS_ FunCallback fun, void *ctx)
73{
74 return new FreeFunctionSlot(fun, ctx);
75}
76
77IMenu *SouiFactory::CreateMenu(THIS_ HMENU hMenu)
78{
79 return new SMenu(hMenu);
80}
81
82IMenuEx *SouiFactory::CreateMenuEx(THIS)
83{
84 return new SMenuEx();
85}
86
87ITimer *SouiFactory::CreateTimer(THIS_ IEvtSlot *pSlot)
88{
89 return new STimer(pSlot);
90}
91
92IAnimatorGroup *SouiFactory::CreateAnimatorGroup(THIS)
93{
94 return new SAnimatorGroup();
95}
96
97SNSEND
98
99EXTERN_C ISouiFactoryPtr CreateSouiFactory()
100{
101 return new SNS::SouiFactory();
102}
SOUI Dialog Module.
Provides a simple timing engine for running animations which calculate animated values and set them o...
Interface for Native Window Operations.
RenderFactory object.
Definition SRender-i.h:2018
ResProvider对象
Interface for XML Document.
Definition sxml-i.h:472