1#ifndef __SFACTORY_I__H__
2#define __SFACTORY_I__H__
4#include <interface/obj-ref-i.h>
5#include <interface/sapp-i.h>
6#include <interface/shostwnd-i.h>
7#include <interface/sstring-i.h>
8#include <interface/sxml-i.h>
10#include <interface/SEvtArgs-i.h>
11#include <interface/smenu-i.h>
12#include <interface/smenuex-i.h>
13#include <interface/STimer-i.h>
14#include <interface/SValueAnimator-i.h>
20#define INTERFACE ISouiFactory
21DECLARE_INTERFACE_(ISouiFactory,
IObjRef)
26 STDMETHOD_(
long, AddRef)(THIS) PURE;
31 STDMETHOD_(
long, Release)(THIS) PURE;
36 STDMETHOD_(
void, OnFinalRelease)(THIS) PURE;
44 STDMETHOD_(IApplication *, CreateApp)(THIS_
IRenderFactory * pRenderFac, HMODULE hInst, LPCTSTR pszHostClassName DEF_VAL(_T(
"SOUIHOST")), BOOL bImeApp DEF_VAL(FALSE)) PURE;
50 STDMETHOD_(
INativeWnd *, CreateNativeWnd)(THIS) PURE;
56 STDMETHOD_(IHostWnd *, CreateHostWnd)(THIS_ LPCTSTR pszResID DEF_VAL(NULL)) PURE;
62 STDMETHOD_(IHostDialog *, CreateHostDialog)(THIS_ LPCTSTR pszResID DEF_VAL(NULL)) PURE;
68 STDMETHOD_(IStringA *, CreateStringA)(THIS_ LPCSTR pszSrc) PURE;
74 STDMETHOD_(IStringW *, CreateStringW)(THIS_ LPCWSTR pszSrc) PURE;
80 STDMETHOD_(
IXmlDoc *, CreateXmlDoc)(THIS) PURE;
86 STDMETHOD_(
IResProvider *, CreateResProvider)(THIS_ BUILTIN_RESTYPE resType) PURE;
92 STDMETHOD_(IEvtSlot *, CreateFuncSlot)(THIS_ FunCallback fun,
void *ctx) PURE;
98 STDMETHOD_(IMenu *, CreateMenu)(THIS_ HMENU hMenu DEF_VAL(0)) PURE;
104 STDMETHOD_(IMenuEx *, CreateMenuEx)(THIS) PURE;
110 STDMETHOD_(ITimer *, CreateTimer)(THIS_ IEvtSlot * pEvtSlot) PURE;
116 STDMETHOD_(IAnimatorGroup *, CreateAnimatorGroup)(THIS) PURE;
122typedef SNS::ISouiFactory *ISouiFactoryPtr;
124typedef ISouiFactory *ISouiFactoryPtr;
127EXTERN_C ISouiFactoryPtr SOUI_EXP CreateSouiFactory();
Interface for Native Window Operations.
Interface for reference counting.
Interface for XML Document.