All 5 phases of the open-source Decal rebuild: Phase 1: 14 decompiled .NET projects (Interop.*, Adapter, FileService, DecalUtil) Phase 2: 10 native DLLs rewritten as C# COM servers with matching GUIDs - DecalDat, DHS, SpellFilter, DecalInput, DecalNet, DecalFilters - Decal.Core, DecalControls, DecalRender, D3DService Phase 3: C++ shims for Inject.DLL (D3D9 hooking) and LauncherHook.DLL Phase 4: DenAgent WinForms tray application Phase 5: WiX installer and build script 25 C# projects building with 0 errors. Native C++ projects require VS 2022 + Windows SDK (x86). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
93 lines
2.5 KiB
Text
93 lines
2.5 KiB
Text
// PlainText.idl : IDL source for PlainText.dll
|
|
//
|
|
|
|
// This file will be processed by the MIDL tool to
|
|
// produce the type library (PlainText.tlb) and marshalling code.
|
|
|
|
import "oaidl.idl";
|
|
import "ocidl.idl";
|
|
|
|
import "..\Inject\Inject.idl";
|
|
import "..\DecalControls\DecalControls.idl";
|
|
|
|
[
|
|
object,
|
|
uuid(7A6ECAD8-839E-47d9-B829-8581F065CEAC),
|
|
dual,
|
|
helpstring("IScriptPluginSite Interface"),
|
|
pointer_default(unique)
|
|
]
|
|
interface IScriptPluginSite : IDispatch
|
|
{
|
|
[id(1), helpstring("method CreateObject")] HRESULT CreateObject(BSTR strProgID, [out, retval] LPDISPATCH *ppObject);
|
|
[id(2), helpstring("method WriteToChatWindow")] HRESULT WriteToChatWindow(BSTR szText, long lColor);
|
|
[id(3), helpstring("method MessageBox")] HRESULT MessageBox(BSTR Title, BSTR Text);
|
|
[id(4), helpstring("method LoadView")] HRESULT LoadView(BSTR Text, [out, retval] IView **pView);
|
|
[id(8), helpstring("method CreateView")] HRESULT CreateView(BSTR strTemplateName, [out, retval] LPDISPATCH *ppNewView);
|
|
};
|
|
|
|
[
|
|
uuid(4E1AE4C6-2120-489e-A124-F58E91C9B262),
|
|
helpstring("IPluginEvents Interface")
|
|
]
|
|
dispinterface IPluginEvents
|
|
{
|
|
properties:
|
|
methods:
|
|
[id(1), helpstring("method Initialize")] HRESULT Initialize();
|
|
[id(2), helpstring("method Terminate")] HRESULT Terminate();
|
|
};
|
|
[
|
|
object,
|
|
uuid(555175AF-1D74-4658-A199-EE6CCA3E066D),
|
|
dual,
|
|
helpstring("IScriptView Interface"),
|
|
pointer_default(unique)
|
|
]
|
|
interface IScriptView : IDispatch
|
|
{
|
|
};
|
|
[
|
|
uuid(02CA4EB7-2816-4b68-8EC0-4502C9C35E7D),
|
|
helpstring("IViewEvents Interface")
|
|
]
|
|
dispinterface IScriptViewEvents
|
|
{
|
|
properties:
|
|
methods:
|
|
[id(1), helpstring("method Initialize")] void Initialize();
|
|
[id(2), helpstring("method Terminate")] void Terminate();
|
|
[id(3), helpstring("method Activate")] void Activate();
|
|
[id(4), helpstring("method Deactivate")] void Deactivate();
|
|
};
|
|
[
|
|
uuid(1658A49F-0444-43E5-BA11-ED1AD1C256DB),
|
|
version(1.0),
|
|
helpstring("PlainText 1.0 Type Library")
|
|
]
|
|
library PlainText
|
|
{
|
|
importlib("stdole32.tlb");
|
|
importlib("stdole2.tlb");
|
|
|
|
dispinterface IPluginEvents;
|
|
dispinterface IScriptViewEvents;
|
|
[
|
|
uuid(F8F77FFC-88E1-4d50-9F51-C30F3F35C4EF),
|
|
helpstring("ScriptPlugin Class")
|
|
]
|
|
coclass ScriptPlugin
|
|
{
|
|
[default] interface IScriptPluginSite;
|
|
[default, source] dispinterface IPluginEvents;
|
|
};
|
|
[
|
|
uuid(B537CBEC-98C1-480A-910D-4C99E5E96273),
|
|
helpstring("ScriptView Class")
|
|
]
|
|
coclass ScriptView
|
|
{
|
|
[default] interface IScriptView;
|
|
[default, source] interface IScriptViewEvents;
|
|
};
|
|
};
|