No subject


Wed Feb 20 09:39:33 CST 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 |    8 ++=0A=
 dlls/d3dx9_36/line.c             |  224 ++++++++++++++++++++++++++++++++++=
++++=0A 4 files changed, 235 insertions(+), 2 deletions(-)=0A create mode 1=
00644 dlls/d3dx9_36/line.c=0A=0Adiff --git a/dlls/d3dx9_36/Makefile.in b/dl=
ls/d3dx9_36/Makefile.in=0Aindex c4cdbb4..e7df76a 100644=0A--- a/dlls/d3dx9_=
36/Makefile.in=0A+++ b/dlls/d3dx9_36/Makefile.in=0A@@ -8,7 +8,8 @@ IMPORTS =
  =3D d3d9 d3dx8 kernel32=0A =0A C_SRCS =3D \=0A =09d3dx9_36_main.c \=0A-=
=09font.c=0A+=09font.c \=0A+=09line.c=0A =0A @MAKE_DLL_RULES@=0A =0Adiff --=
git a/dlls/d3dx9_36/d3dx9_36.spec b/dlls/d3dx9_36/d3dx9_36.spec=0Aindex 46c=
7cd5..2e81833 100644=0A--- a/dlls/d3dx9_36/d3dx9_36.spec=0A+++ b/dlls/d3dx9=
_36/d3dx9_36.spec=0A@@ -69,7 +69,7 @@=0A @ stub D3DXCreateFragmentLinker=0A=
 @ stub D3DXCreateFragmentLinkerEx=0A @ stub D3DXCreateKeyframedAnimationSe=
t=0A-@ stub D3DXCreateLine=0A+@ stdcall D3DXCreateLine(ptr ptr)=0A @ stdcal=
l D3DXCreateMatrixStack(long ptr) d3dx8.D3DXCreateMatrixStack=0A @ stub D3D=
XCreateMesh=0A @ stub D3DXCreateMeshFVF=0Adiff --git a/dlls/d3dx9_36/d3dx9_=
36_private.h b/dlls/d3dx9_36/d3dx9_36_private.h=0Aindex 33d83b2..431a875 10=
0644=0A--- a/dlls/d3dx9_36/d3dx9_36_private.h=0A+++ b/dlls/d3dx9_36/d3dx9_3=
6_private.h=0A@@ -36,5 +36,13 @@ typedef struct ID3DXFontImpl=0A   /* ID3DX=
Font fields */=0A } ID3DXFontImpl;=0A =0A+typedef struct ID3DXLineImpl=0A+{=
=0A+  /* IUnknown fields */=0A+  const ID3DXLineVtbl *lpVtbl;=0A+  LONG ref=
;=0A+=0A+  /* ID3DXLine fields */=0A+} ID3DXLineImpl;=0A =0A #endif /* __WI=
NE_D3DX9_36_PRIVATE_H */=0Adiff --git a/dlls/d3dx9_36/line.c b/dlls/d3dx9_3=
6/line.c=0Anew file mode 100644=0Aindex 0000000..567dba8=0A--- /dev/null=0A=
+++ b/dlls/d3dx9_36/line.c=0A@@ -0,0 +1,224 @@=0A+/*=0A+ * Copyright (C) 20=
08 Tony Wasserka=0A+ *=0A+ * This library is free software; you can redistr=
ibute it and/or=0A+ * modify it under the terms of the GNU Lesser General P=
ublic=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 even the implied warranty of=0A+ * MER=
CHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU=0A+ * Lesser=
 General Public License for more details.=0A+ *=0A+ * You should have recei=
ved a copy of the GNU Lesser General Public=0A+ * License along with this l=
ibrary; if not, write to the Free Software=0A+ * Foundation, Inc., 51 Frank=
lin St, Fifth Floor, Boston, MA 02110-1301, USA=0A+ *=0A+ */=0A+=0A+#includ=
e "config.h"=0A+#include "wine/port.h"=0A+=0A+#include "wine/debug.h"=0A+#i=
nclude "d3dx9_36_private.h"=0A+=0A+WINE_DEFAULT_DEBUG_CHANNEL(d3dx);=0A+=0A=
+static HRESULT WINAPI ID3DXLineImpl_QueryInterface(LPD3DXLINE iface, REFII=
D riid, LPVOID *object)=0A+{=0A+    ID3DXLineImpl *This=3D(ID3DXLineImpl*)i=
face;=0A+=0A+    TRACE("(%p): QueryInterface from %s\n", This, debugstr_gui=
d(riid));=0A+    if(IsEqualGUID(riid, &IID_IUnknown) || IsEqualGUID(riid, &=
IID_ID3DXLine)) {=0A+        IUnknown_AddRef(iface);=0A+        *object=3DT=
his;=0A+        return S_OK;=0A+    }=0A+    WARN("(%p)->(%s, %p): not foun=
d\n", iface, debugstr_guid(riid), *object);=0A+    return E_NOINTERFACE;=0A=
+}=0A+=0A+static ULONG WINAPI ID3DXLineImpl_AddRef(LPD3DXLINE iface)=0A+{=
=0A+    ID3DXLineImpl *This=3D(ID3DXLineImpl*)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 ID3DXLineImpl_R=
elease(LPD3DXLINE iface)=0A+{=0A+    ID3DXLineImpl *This=3D(ID3DXLineImpl*)=
iface;=0A+    ULONG ref=3DInterlockedDecrement(&This->ref);=0A+    TRACE("(=
%p): ReleaseRef to %d\n", This, ref);=0A+=0A+    if(ref=3D=3D0) {=0A+      =
  HeapFree(GetProcessHeap(), 0, This);=0A+    }=0A+    return ref;=0A+}=0A+=
=0A+static HRESULT WINAPI ID3DXLineImpl_GetDevice(LPD3DXLINE iface, LPDIREC=
T3DDEVICE9 *device)=0A+{=0A+    ID3DXLineImpl *This=3D(ID3DXLineImpl*)iface=
;=0A+    FIXME("(%p): stub\n", This);=0A+    return D3D_OK;=0A+}=0A+=0A+sta=
tic HRESULT WINAPI ID3DXLineImpl_Begin(LPD3DXLINE iface)=0A+{=0A+    ID3DXL=
ineImpl *This=3D(ID3DXLineImpl*)iface;=0A+    FIXME("(%p): stub\n", This);=
=0A+    return D3D_OK;=0A+}=0A+=0A+static HRESULT WINAPI ID3DXLineImpl_Draw=
(LPD3DXLINE iface, CONST D3DXVECTOR2 *vertexlist, DWORD vertexlistcount, D3=
DCOLOR color)=0A+{=0A+    ID3DXLineImpl *This=3D(ID3DXLineImpl*)iface;=0A+ =
   FIXME("(%p): stub\n", This);=0A+    return D3D_OK;=0A+}=0A+=0A+static HR=
ESULT WINAPI ID3DXLineImpl_DrawTransform(LPD3DXLINE iface, CONST D3DXVECTOR=
3 *vertexlist, DWORD vertexlistcount, CONST D3DXMATRIX *transform, D3DCOLOR=
 color)=0A+{=0A+    ID3DXLineImpl *This=3D(ID3DXLineImpl*)iface;=0A+    FIX=
ME("(%p): stub\n", This);=0A+    return D3D_OK;=0A+}=0A+=0A+static HRESULT =
WINAPI ID3DXLineImpl_SetPattern(LPD3DXLINE iface, DWORD pattern)=0A+{=0A+  =
  ID3DXLineImpl *This=3D(ID3DXLineImpl*)iface;=0A+    FIXME("(%p): stub\n",=
 This);=0A+    return D3D_OK;=0A+}=0A+=0A+static DWORD WINAPI ID3DXLineImpl=
_GetPattern(LPD3DXLINE iface)=0A+{=0A+    ID3DXLineImpl *This=3D(ID3DXLineI=
mpl*)iface;=0A+    FIXME("(%p): stub\n", This);=0A+    return 0;=0A+}=0A+=
=0A+static HRESULT WINAPI ID3DXLineImpl_SetPatternScale(LPD3DXLINE iface, F=
LOAT scale)=0A+{=0A+    ID3DXLineImpl *This=3D(ID3DXLineImpl*)iface;=0A+   =
 FIXME("(%p): stub\n", This);=0A+    return D3D_OK;=0A+}=0A+=0A+static FLOA=
T WINAPI ID3DXLineImpl_GetPatternScale(LPD3DXLINE iface)=0A+{=0A+    ID3DXL=
ineImpl *This=3D(ID3DXLineImpl*)iface;=0A+    FIXME("(%p): stub\n", This);=
=0A+    return 1.0f;=0A+}=0A+=0A+static HRESULT WINAPI ID3DXLineImpl_SetWid=
th(LPD3DXLINE iface, FLOAT width)=0A+{=0A+    ID3DXLineImpl *This=3D(ID3DXL=
ineImpl*)iface;=0A+    FIXME("(%p): stub\n", This);=0A+    return D3D_OK;=
=0A+}=0A+=0A+static FLOAT WINAPI ID3DXLineImpl_GetWidth(LPD3DXLINE iface)=
=0A+{=0A+    ID3DXLineImpl *This=3D(ID3DXLineImpl*)iface;=0A+    FIXME("(%p=
): stub\n", This);=0A+    return 1.0f;=0A+}=0A+=0A+static HRESULT WINAPI ID=
3DXLineImpl_SetAntialias(LPD3DXLINE iface, BOOL antialias)=0A+{=0A+    ID3D=
XLineImpl *This=3D(ID3DXLineImpl*)iface;=0A+    FIXME("(%p): stub\n", This)=
;=0A+    return D3D_OK;=0A+}=0A+=0A+static BOOL WINAPI ID3DXLineImpl_GetAnt=
ialias(LPD3DXLINE iface)=0A+{=0A+    ID3DXLineImpl *This=3D(ID3DXLineImpl*)=
iface;=0A+    FIXME("(%p): stub\n", This);=0A+    return FALSE;=0A+}=0A+=0A=
+static HRESULT WINAPI ID3DXLineImpl_SetGLLines(LPD3DXLINE iface, BOOL gl_l=
ines)=0A+{=0A+    ID3DXLineImpl *This=3D(ID3DXLineImpl*)iface;=0A+    FIXME=
("(%p): stub\n", This);=0A+    return D3D_OK;=0A+}=0A+=0A+static BOOL WINAP=
I ID3DXLineImpl_GetGLLines(LPD3DXLINE iface)=0A+{=0A+    ID3DXLineImpl *Thi=
s=3D(ID3DXLineImpl*)iface;=0A+    FIXME("(%p): stub\n", This);=0A+    retur=
n FALSE;=0A+}=0A+=0A+static HRESULT WINAPI ID3DXLineImpl_End(LPD3DXLINE ifa=
ce)=0A+{=0A+    ID3DXLineImpl *This=3D(ID3DXLineImpl*)iface;=0A+    FIXME("=
(%p): stub\n", This);=0A+    return D3D_OK;=0A+}=0A+=0A+static HRESULT WINA=
PI ID3DXLineImpl_OnLostDevice(LPD3DXLINE iface)=0A+{=0A+    ID3DXLineImpl *=
This=3D(ID3DXLineImpl*)iface;=0A+    FIXME("(%p): stub\n", This);=0A+    re=
turn D3D_OK;=0A+}=0A+=0A+static HRESULT WINAPI ID3DXLineImpl_OnResetDevice(=
LPD3DXLINE iface)=0A+{=0A+    ID3DXLineImpl *This=3D(ID3DXLineImpl*)iface;=
=0A+    FIXME("(%p): stub\n", This);=0A+    return D3D_OK;=0A+}=0A+=0A+stat=
ic const ID3DXLineVtbl D3DXLine_Vtbl =3D=0A+{=0A+    /*** IUnknown methods =
***/=0A+    ID3DXLineImpl_QueryInterface,=0A+    ID3DXLineImpl_AddRef,=0A+ =
   ID3DXLineImpl_Release,=0A+    /*** ID3DXLine methods ***/=0A+    ID3DXLi=
neImpl_GetDevice,=0A+    ID3DXLineImpl_Begin,=0A+    ID3DXLineImpl_Draw,=0A=
+    ID3DXLineImpl_DrawTransform,=0A+    ID3DXLineImpl_SetPattern,=0A+    I=
D3DXLineImpl_GetPattern,=0A+    ID3DXLineImpl_SetPatternScale,=0A+    ID3DX=
LineImpl_GetPatternScale,=0A+    ID3DXLineImpl_SetWidth,=0A+    ID3DXLineIm=
pl_GetWidth,=0A+    ID3DXLineImpl_SetAntialias,=0A+    ID3DXLineImpl_GetAnt=
ialias,=0A+    ID3DXLineImpl_SetGLLines,=0A+    ID3DXLineImpl_GetGLLines,=
=0A+    ID3DXLineImpl_End,=0A+    ID3DXLineImpl_OnLostDevice,=0A+    ID3DXL=
ineImpl_OnResetDevice=0A+};=0A+=0A+HRESULT WINAPI D3DXCreateLine(LPDIRECT3D=
DEVICE9 device, LPD3DXLINE *line)=0A+{=0A+    ID3DXLineImpl *object;=0A+=0A=
+    FIXME("stub\n");=0A+=0A+    object=3DHeapAlloc(GetProcessHeap(), HEAP_=
ZERO_MEMORY, sizeof(ID3DXLineImpl));=0A+    if(object=3D=3DNULL) {=0A+     =
   *line=3DNULL;=0A+        return E_OUTOFMEMORY;=0A+    }=0A+    object->l=
pVtbl=3D&D3DXLine_Vtbl;=0A+    object->ref=3D1;=0A+=0A+    *line=3D(LPD3DXL=
INE)object;=0A+=0A+    return D3D_OK;=0A+}=0A-- =0A1.5.3.7=0A=0A

--b63f8b10d8c4803fe2415272dc47daf53--



More information about the wine-patches mailing list