openDecal/Native/PlainText/PlainText.idl
erik d1442e3747 Initial commit: Complete open-source Decal rebuild
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>
2026-02-08 18:27:56 +01:00

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;
};
};