No subject


Wed Jun 18 16:37:37 CDT 2008


=0A=0A---=0A dlls/d3dx9_36/Makefile.in        |    3 +-=0A dlls/d3dx9_36/d3=
dx9_36.spec      |    2 +-=0A dlls/d3dx9_36/d3dx9_36_private.h |   17 +++-=
=0A dlls/d3dx9_36/sprite.c           |  158 +++++++++++++++++++++++++++++++=
+++++++=0A 4 files changed, 174 insertions(+), 6 deletions(-)=0A create mod=
e 100644 dlls/d3dx9_36/sprite.c=0A=0Adiff --git a/dlls/d3dx9_36/Makefile.in=
 b/dlls/d3dx9_36/Makefile.in=0Aindex 78cfd97..0b5a3d3 100644=0A--- a/dlls/d=
3dx9_36/Makefile.in=0A+++ b/dlls/d3dx9_36/Makefile.in=0A@@ -10,7 +10,8 @@ C=
_SRCS =3D \=0A =09d3dx9_36_main.c \=0A =09font.c \=0A =09math.c \=0A-=09sha=
der.c=0A+=09shader.c \=0A+=09sprite.c=0A =0A RC_SRCS =3D version.rc=0A =0Ad=
iff --git a/dlls/d3dx9_36/d3dx9_36.spec b/dlls/d3dx9_36/d3dx9_36.spec=0Aind=
ex 1619f16..1d5031d 100644=0A--- a/dlls/d3dx9_36/d3dx9_36.spec=0A+++ b/dlls=
/d3dx9_36/d3dx9_36.spec=0A@@ -88,7 +88,7 @@=0A @ stub D3DXCreateSkinInfoFro=
mBlendedMesh=0A @ stub D3DXCreateSkinInfoFVF=0A @ stub D3DXCreateSphere=0A-=
@ stub D3DXCreateSprite=0A+@ stdcall D3DXCreateSprite(ptr ptr)=0A @ stub D3=
DXCreateTeapot=0A @ stub D3DXCreateTextA=0A @ stub D3DXCreateTextW=0Adiff -=
-git a/dlls/d3dx9_36/d3dx9_36_private.h b/dlls/d3dx9_36/d3dx9_36_private.h=
=0Aindex 33d83b2..e1c266d 100644=0A--- a/dlls/d3dx9_36/d3dx9_36_private.h=
=0A+++ b/dlls/d3dx9_36/d3dx9_36_private.h=0A@@ -29,12 +29,21 @@=0A =0A type=
def struct ID3DXFontImpl=0A {=0A-  /* IUnknown fields */=0A-  const ID3DXFo=
ntVtbl *lpVtbl;=0A-  LONG ref;=0A+    /* IUnknown fields */=0A+    const ID=
3DXFontVtbl *lpVtbl;=0A+    LONG ref;=0A =0A-  /* ID3DXFont fields */=0A+  =
  /* ID3DXFont fields */=0A } ID3DXFontImpl;=0A =0A+typedef struct ID3DXSpr=
iteImpl=0A+{=0A+    /* IUnknown fields */=0A+    const ID3DXSpriteVtbl *lpV=
tbl;=0A+    LONG ref;=0A+=0A+    /* ID3DXSprite fields */=0A+} ID3DXSpriteI=
mpl;=0A+=0A =0A #endif /* __WINE_D3DX9_36_PRIVATE_H */=0Adiff --git a/dlls/=
d3dx9_36/sprite.c b/dlls/d3dx9_36/sprite.c=0Anew file mode 100644=0Aindex 0=
000000..ecd948f=0A--- /dev/null=0A+++ b/dlls/d3dx9_36/sprite.c=0A@@ -0,0 +1=
,158 @@=0A+/*=0A+ * Copyright (C) 2008 Tony Wasserka=0A+ *=0A+ * This libra=
ry is free software; you can redistribute it and/or=0A+ * modify it under t=
he terms of the GNU Lesser General Public=0A+ * License as published by the=
 Free Software Foundation; either=0A+ * version 2.1 of the License, or (at =
your option) any later version.=0A+ *=0A+ * This library is distributed in =
the hope that it will be useful,=0A+ * but WITHOUT ANY WARRANTY; without ev=
en the implied warranty of=0A+ * MERCHANTABILITY or FITNESS FOR A PARTICULA=
R PURPOSE.  See the GNU=0A+ * Lesser General Public License for more detail=
s.=0A+ *=0A+ * You should have received a copy of the GNU Lesser General Pu=
blic=0A+ * License along with this library; if not, write to the Free Softw=
are=0A+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1=
301, USA=0A+ *=0A+ */=0A+=0A+#include "wine/debug.h"=0A+#include "d3dx9_36_=
private.h"=0A+=0A+WINE_DEFAULT_DEBUG_CHANNEL(d3dx);=0A+=0A+static HRESULT W=
INAPI ID3DXSpriteImpl_QueryInterface(LPD3DXSPRITE iface, REFIID riid, LPVOI=
D *object)=0A+{=0A+    ID3DXSpriteImpl *This=3D(ID3DXSpriteImpl*)iface;=0A+=
=0A+    TRACE("(%p): QueryInterface from %s\n", This, debugstr_guid(riid));=
=0A+    if(IsEqualGUID(riid, &IID_IUnknown) || IsEqualGUID(riid, &IID_ID3DX=
Sprite)) {=0A+        IUnknown_AddRef(iface);=0A+        *object=3DThis;=0A=
+        return S_OK;=0A+    }=0A+    WARN("(%p)->(%s, %p): not found\n", i=
face, debugstr_guid(riid), *object);=0A+    return E_NOINTERFACE;=0A+}=0A+=
=0A+static ULONG WINAPI ID3DXSpriteImpl_AddRef(LPD3DXSPRITE iface)=0A+{=0A+=
    ID3DXSpriteImpl *This=3D(ID3DXSpriteImpl*)iface;=0A+    ULONG ref=3DInt=
erlockedIncrement(&This->ref);=0A+    TRACE("(%p): AddRef from %d\n", This,=
 ref-1);=0A+    return ref;=0A+}=0A+=0A+static ULONG WINAPI ID3DXSpriteImpl=
_Release(LPD3DXSPRITE iface)=0A+{=0A+    ID3DXSpriteImpl *This=3D(ID3DXSpri=
teImpl*)iface;=0A+    ULONG ref=3DInterlockedDecrement(&This->ref);=0A+    =
TRACE("(%p): ReleaseRef to %d\n", This, ref);=0A+=0A+    return ref;=0A+}=
=0A+=0A+static HRESULT WINAPI ID3DXSpriteImpl_GetDevice(LPD3DXSPRITE iface,=
 LPDIRECT3DDEVICE9 *device)=0A+{=0A+    ID3DXSpriteImpl *This=3D(ID3DXSprit=
eImpl*)iface;=0A+    FIXME("(%p): stub\n", This);=0A+    return E_NOTIMPL;=
=0A+}=0A+=0A+static HRESULT WINAPI ID3DXSpriteImpl_GetTransform(LPD3DXSPRIT=
E iface, D3DXMATRIX *transform)=0A+{=0A+    ID3DXSpriteImpl *This=3D(ID3DXS=
priteImpl*)iface;=0A+    FIXME("(%p): stub\n", This);=0A+    return E_NOTIM=
PL;=0A+}=0A+=0A+static HRESULT WINAPI ID3DXSpriteImpl_SetTransform(LPD3DXSP=
RITE iface, CONST D3DXMATRIX *transform)=0A+{=0A+    ID3DXSpriteImpl *This=
=3D(ID3DXSpriteImpl*)iface;=0A+    FIXME("(%p): stub\n", This);=0A+    retu=
rn E_NOTIMPL;=0A+}=0A+=0A+static HRESULT WINAPI ID3DXSpriteImpl_SetWorldVie=
wRH(LPD3DXSPRITE iface, CONST D3DXMATRIX *world, CONST D3DXMATRIX *view)=0A=
+{=0A+    ID3DXSpriteImpl *This=3D(ID3DXSpriteImpl*)iface;=0A+    FIXME("(%=
p): stub\n", This);=0A+    return E_NOTIMPL;=0A+}=0A+=0A+static HRESULT WIN=
API ID3DXSpriteImpl_SetWorldViewLH(LPD3DXSPRITE iface, CONST D3DXMATRIX *wo=
rld, CONST D3DXMATRIX *view)=0A+{=0A+    ID3DXSpriteImpl *This=3D(ID3DXSpri=
teImpl*)iface;=0A+    FIXME("(%p): stub\n", This);=0A+    return E_NOTIMPL;=
=0A+}=0A+=0A+static HRESULT WINAPI ID3DXSpriteImpl_Begin(LPD3DXSPRITE iface=
, DWORD flags)=0A+{=0A+    ID3DXSpriteImpl *This=3D(ID3DXSpriteImpl*)iface;=
=0A+    FIXME("(%p): stub\n", This);=0A+    return E_NOTIMPL;=0A+}=0A+=0A+s=
tatic HRESULT WINAPI ID3DXSpriteImpl_Draw(LPD3DXSPRITE iface, LPDIRECT3DTEX=
TURE9 texture, CONST RECT *rect, CONST D3DXVECTOR3 *center,=0A+            =
                               CONST D3DXVECTOR3 *position, D3DCOLOR color)=
=0A+{=0A+    ID3DXSpriteImpl *This=3D(ID3DXSpriteImpl*)iface;=0A+    FIXME(=
"(%p): stub\n", This);=0A+    return E_NOTIMPL;=0A+}=0A+=0A+static HRESULT =
WINAPI ID3DXSpriteImpl_Flush(LPD3DXSPRITE iface)=0A+{=0A+    ID3DXSpriteImp=
l *This=3D(ID3DXSpriteImpl*)iface;=0A+    FIXME("(%p): stub\n", This);=0A+ =
   return E_NOTIMPL;=0A+}=0A+=0A+static HRESULT WINAPI ID3DXSpriteImpl_End(=
LPD3DXSPRITE iface)=0A+{=0A+    ID3DXSpriteImpl *This=3D(ID3DXSpriteImpl*)i=
face;=0A+    FIXME("(%p): stub\n", This);=0A+    return E_NOTIMPL;=0A+}=0A+=
=0A+static HRESULT WINAPI ID3DXSpriteImpl_OnLostDevice(LPD3DXSPRITE iface)=
=0A+{=0A+    ID3DXSpriteImpl *This=3D(ID3DXSpriteImpl*)iface;=0A+    FIXME(=
"(%p): stub\n", This);=0A+    return E_NOTIMPL;=0A+}=0A+=0A+static HRESULT =
WINAPI ID3DXSpriteImpl_OnResetDevice(LPD3DXSPRITE iface)=0A+{=0A+    ID3DXS=
priteImpl *This=3D(ID3DXSpriteImpl*)iface;=0A+    FIXME("(%p): stub\n", Thi=
s);=0A+    return E_NOTIMPL;=0A+}=0A+=0A+static const ID3DXSpriteVtbl D3DXS=
prite_Vtbl =3D=0A+{=0A+    /*** IUnknown methods ***/=0A+    ID3DXSpriteImp=
l_QueryInterface,=0A+    ID3DXSpriteImpl_AddRef,=0A+    ID3DXSpriteImpl_Rel=
ease,=0A+    /*** ID3DXSprite methods ***/=0A+    ID3DXSpriteImpl_GetDevice=
,=0A+    ID3DXSpriteImpl_GetTransform,=0A+    ID3DXSpriteImpl_SetTransform,=
=0A+    ID3DXSpriteImpl_SetWorldViewRH,=0A+    ID3DXSpriteImpl_SetWorldView=
LH,=0A+    ID3DXSpriteImpl_Begin,=0A+    ID3DXSpriteImpl_Draw,=0A+    ID3DX=
SpriteImpl_Flush,=0A+    ID3DXSpriteImpl_End,=0A+    ID3DXSpriteImpl_OnLost=
Device,=0A+    ID3DXSpriteImpl_OnResetDevice=0A+};=0A+=0A+HRESULT WINAPI D3=
DXCreateSprite(LPDIRECT3DDEVICE9 device, LPD3DXSPRITE *sprite)=0A+{=0A+    =
FIXME("stub\n");=0A+    return E_NOTIMPL;=0A+}=0A-- =0A1.5.4.3=0A=0A

--b03b7a3883976e42532efa472fe69ac49--



More information about the wine-patches mailing list