This repository has been archived on 2025-02-27. You can view files and clone it, but cannot push or open issues or pull requests.
CnC_Renegade/Code/Tools/LevelEdit/VSS.IDL

656 lines
23 KiB
Text

/*
** Command & Conquer Renegade(tm)
** Copyright 2025 Electronic Arts Inc.
**
** This program is free software: you can redistribute it and/or modify
** it under the terms of the GNU General Public License as published by
** the Free Software Foundation, either version 3 of the License, or
** (at your option) any later version.
**
** This program is distributed in the hope that it will be useful,
** but WITHOUT ANY WARRANTY; without even the implied warranty of
** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
** GNU General Public License for more details.
**
** You should have received a copy of the GNU General Public License
** along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
// Generated .IDL file (by the OLE/COM Object Viewer)
//
// typelib filename: SSAPI.DLL
// Forward declare all types defined in this typelib
import "wtypes.idl";
import "oaidl.idl";
import "ocidl.idl";
interface IVSSItemOld;
interface IVSSItem;
interface IVSSVersions;
interface IVSSVersionOld;
interface IVSSVersion;
interface IVSSItems;
interface IVSSCheckouts;
interface IVSSCheckout;
interface IVSSDatabaseOld;
interface IVSSDatabase;
interface IVSSUser;
interface IVSSUsers;
interface IVSSEventsOld;
interface IVSSEvents;
interface IVSS;
interface IVSSEventHandler;
[
uuid(783CD4E0-9D54-11CF-B8EE-00608CC9A71F),
version(5.1),
helpstring("Microsoft SourceSafe 6.0 Type Library"),
helpfile("ssauto.hlp"),
helpcontext(00000000)
]
library SourceSafeTypeLib
{
// TLib : OLE Automation : {00020430-0000-0000-C000-000000000046}
importlib("stdole32.tlb");
importlib("stdole2.tlb");
typedef [uuid(783CD4EF-9D54-11CF-B8EE-00608CC9A71F), helpstring("SourceSafe operation flags")]
enum {
VSSFLAG_USERRONO = 1,
VSSFLAG_USERROYES = 2,
VSSFLAG_TIMENOW = 4,
VSSFLAG_TIMEMOD = 8,
VSSFLAG_TIMEUPD = 12,
VSSFLAG_EOLCR = 16,
VSSFLAG_EOLLF = 32,
VSSFLAG_EOLCRLF = 48,
VSSFLAG_REPASK = 64,
VSSFLAG_REPREPLACE = 128,
VSSFLAG_REPSKIP = 192,
VSSFLAG_REPMERGE = 256,
VSSFLAG_CMPFULL = 512,
VSSFLAG_CMPTIME = 1024,
VSSFLAG_CMPCHKSUM = 1536,
VSSFLAG_CMPFAIL = 2048,
VSSFLAG_RECURSNO = 4096,
VSSFLAG_RECURSYES = 8192,
VSSFLAG_FORCEDIRNO = 16384,
VSSFLAG_FORCEDIRYES = 32768,
VSSFLAG_KEEPNO = 65536,
VSSFLAG_KEEPYES = 131072,
VSSFLAG_DELNO = 262144,
VSSFLAG_DELYES = 524288,
VSSFLAG_DELNOREPLACE = 786432,
VSSFLAG_BINTEST = 1048576,
VSSFLAG_BINBINARY = 2097152,
VSSFLAG_BINTEXT = 3145728,
VSSFLAG_DELTAYES = 4194304,
VSSFLAG_DELTANO = 8388608,
VSSFLAG_UPDASK = 16777216,
VSSFLAG_UPDUPDATE = 33554432,
VSSFLAG_UPDUNCH = 50331648,
VSSFLAG_GETYES = 67108864,
VSSFLAG_GETNO = 134217728,
VSSFLAG_CHKEXCLUSIVEYES = 268435456,
VSSFLAG_CHKEXCLUSIVENO = 536870912,
VSSFLAG_HISTIGNOREFILES = 1073741824
} VSSFlags;
typedef [uuid(783CD4ED-9D54-11CF-B8EE-00608CC9A71F), helpstring("SourceSafe file checkout status")]
enum {
VSSFILE_NOTCHECKEDOUT = 0,
VSSFILE_CHECKEDOUT = 1,
VSSFILE_CHECKEDOUT_ME = 2
} VSSFileStatus;
typedef [uuid(783CD4EE-9D54-11CF-B8EE-00608CC9A71F), helpstring("SourceSafe item type")]
enum {
VSSITEM_PROJECT = 0,
VSSITEM_FILE = 1
} VSSItemType;
typedef [uuid(2A0DE0E6-2E9F-11D0-9236-00AA00A1EB95), helpstring("SourceSafe rights values")]
enum {
VSSRIGHTS_READ = 1,
VSSRIGHTS_CHKUPD = 2,
VSSRIGHTS_ADDRENREM = 4,
VSSRIGHTS_DESTROY = 8,
VSSRIGHTS_ALL = 15,
VSSRIGHTS_INHERITED = 16
} VSSRights;
[
odl,
uuid(783CD4E1-9D54-11CF-B8EE-00608CC9A71F),
helpstring("SourceSafe item interface"),
dual,
oleautomation
]
interface IVSSItemOld : IDispatch {
[id(0x00000001)]
HRESULT _stdcall Spec([out, retval] BSTR* pSpec);
[id(0x00000002), propget]
HRESULT _stdcall Binary([out, retval] VARIANT_BOOL* pbBinary);
[id(0x00000002), propput]
HRESULT _stdcall Binary([in] VARIANT_BOOL pbBinary);
[id(0x00000003), propget]
HRESULT _stdcall Deleted([out, retval] VARIANT_BOOL* pbDeleted);
[id(0x00000003), propput]
HRESULT _stdcall Deleted([in] VARIANT_BOOL pbDeleted);
[id(0x00000004), propget]
HRESULT _stdcall Type([out, retval] int* piType);
[id(0x00000005), propget]
HRESULT _stdcall LocalSpec([out, retval] BSTR* pLocal);
[id(0x00000005), propput]
HRESULT _stdcall LocalSpec([in] BSTR pLocal);
[id(0x00000006), propget]
HRESULT _stdcall Name([out, retval] BSTR* pName);
[id(0x00000006), propput]
HRESULT _stdcall Name([in] BSTR pName);
[id(0x00000007), propget]
HRESULT _stdcall Parent([out, retval] IVSSItem** ppIParent);
[id(0x00000008), propget]
HRESULT _stdcall VersionNumber([out, retval] long* piVersion);
[id(0x00000009), propget]
HRESULT _stdcall Items(
[in, optional, defaultvalue(0)] VARIANT_BOOL IncludeDeleted,
[out, retval] IVSSItems** ppIItems);
[id(0x0000000a)]
HRESULT _stdcall Get(
[in, out, optional, defaultvalue(0)] BSTR* Local,
[in, optional, defaultvalue(0)] long iFlags);
[id(0x0000000b)]
HRESULT _stdcall Checkout(
[in, optional, defaultvalue("")] BSTR Comment,
[in, optional, defaultvalue("")] BSTR Local,
[in, optional, defaultvalue(0)] long iFlags);
[id(0x0000000c)]
HRESULT _stdcall Checkin(
[in, optional, defaultvalue("")] BSTR Comment,
[in, optional, defaultvalue("")] BSTR Local,
[in, optional, defaultvalue(0)] long iFlags);
[id(0x0000000d)]
HRESULT _stdcall UndoCheckout(
[in, optional, defaultvalue("")] BSTR Local,
[in, optional, defaultvalue(0)] long iFlags);
[id(0x0000000e), propget]
HRESULT _stdcall IsCheckedOut([out, retval] long* piStatus);
[id(0x0000000f), propget]
HRESULT _stdcall Checkouts([out, retval] IVSSCheckouts** ppICheckouts);
[id(0x00000010), propget]
HRESULT _stdcall IsDifferent(
[in, optional, defaultvalue("")] BSTR Local,
[out, retval] VARIANT_BOOL* pbDifferent);
[id(0x00000011)]
HRESULT _stdcall Add(
[in] BSTR Local,
[in, optional, defaultvalue("")] BSTR Comment,
[in, optional, defaultvalue(0)] long iFlags,
[out, retval] IVSSItem** ppIItem);
[id(0x00000012)]
HRESULT _stdcall NewSubproject(
[in] BSTR Name,
[in, optional, defaultvalue("")] BSTR Comment,
[out, retval] IVSSItem** ppIItem);
[id(0x00000013)]
HRESULT _stdcall Share(
[in] IVSSItem* pIItem,
[in, optional, defaultvalue("")] BSTR Comment,
[in, optional, defaultvalue(0)] long iFlags);
[id(0x00000014)]
HRESULT _stdcall Destroy();
[id(0x00000015)]
HRESULT _stdcall Move([in] IVSSItem* pINewParent);
[id(0x00000016)]
HRESULT _stdcall Label(
[in] BSTR Label,
[in, optional, defaultvalue("")] BSTR Comment);
[id(0x00000017), propget]
HRESULT _stdcall Versions(
[in, optional, defaultvalue(0)] long iFlags,
[out, retval] IVSSVersions** pIVersions);
[id(0x00000018), propget]
HRESULT _stdcall Version(
[in, optional] VARIANT Version,
[out, retval] IVSSItem** ppIItem);
};
[
odl,
uuid(2A0DE0E7-2E9F-11D0-9236-00AA00A1EB95),
helpstring("SourceSafe item interface"),
dual,
oleautomation
]
interface IVSSItem : IVSSItemOld {
[id(0x00000019), propget]
HRESULT _stdcall Links([out, retval] IVSSItems** ppIItems);
[id(0x0000001a)]
HRESULT _stdcall Branch(
[in, optional, defaultvalue("")] BSTR Comment,
[in, optional, defaultvalue(0)] long iFlags,
[out, retval] IVSSItem** ppIItem);
};
[
odl,
uuid(783CD4E7-9D54-11CF-B8EE-00608CC9A71F),
helpstring("SourceSafe versions collection"),
dual,
oleautomation
]
interface IVSSVersions : IDispatch {
[id(0xfffffffc), restricted, hidden]
HRESULT _stdcall _NewEnum([out, retval] IUnknown** ppIEnum);
};
[
odl,
uuid(783CD4E8-9D54-11CF-B8EE-00608CC9A71F),
helpstring("SourceSafe version information"),
dual,
oleautomation
]
interface IVSSVersionOld : IDispatch {
[id(0x00000001), propget]
HRESULT _stdcall Username([out, retval] BSTR* pUsername);
[id(0x00000002), propget]
HRESULT _stdcall VersionNumber([out, retval] long* piVersion);
[id(0x00000003), propget]
HRESULT _stdcall Action([out, retval] BSTR* pAction);
[id(0x00000004), propget]
HRESULT _stdcall Date([out, retval] DATE* pDate);
[id(0x00000005), propget]
HRESULT _stdcall Comment([out, retval] BSTR* pComment);
[id(0x00000006), propget]
HRESULT _stdcall Label([out, retval] BSTR* pLabel);
[id(0x00000007), propget]
HRESULT _stdcall VSSItem([out, retval] IVSSItem** ppIItem);
};
[
odl,
uuid(2A0DE0E9-2E9F-11D0-9236-00AA00A1EB95),
helpstring("SourceSafe version information"),
dual,
oleautomation
]
interface IVSSVersion : IVSSVersionOld {
[id(0x00000008), propget]
HRESULT _stdcall LabelComment([out, retval] BSTR* pComment);
};
[
odl,
uuid(783CD4E5-9D54-11CF-B8EE-00608CC9A71F),
helpstring("SourceSafe items collection interface"),
dual,
oleautomation
]
interface IVSSItems : IDispatch {
[id(0x00000001), propget]
HRESULT _stdcall Count([out, retval] long* piCount);
[id(00000000), propget]
HRESULT _stdcall Item(
[in] VARIANT sItem,
[out, retval] IVSSItem** ppIItem);
[id(0xfffffffc), restricted, hidden]
HRESULT _stdcall _NewEnum([out, retval] IUnknown** ppIEnum);
};
[
odl,
uuid(8903A770-F55F-11CF-9227-00AA00A1EB95),
helpstring("SourceSafe checkouts collection interface"),
dual,
oleautomation
]
interface IVSSCheckouts : IDispatch {
[id(0x00000001), propget]
HRESULT _stdcall Count([out, retval] long* piCount);
[id(00000000), propget]
HRESULT _stdcall Item(
[in] VARIANT sItem,
[out, retval] IVSSCheckout** ppICheckout);
[id(0xfffffffc), restricted, hidden]
HRESULT _stdcall _NewEnum([out, retval] IUnknown** ppIEnum);
};
[
odl,
uuid(783CD4E6-9D54-11CF-B8EE-00608CC9A71F),
helpstring("SourceSafe checkouts interface"),
dual,
oleautomation
]
interface IVSSCheckout : IDispatch {
[id(0x00000001), propget]
HRESULT _stdcall Username([out, retval] BSTR* pUsername);
[id(0x00000002), propget]
HRESULT _stdcall Date([out, retval] DATE* pDate);
[id(0x00000003), propget]
HRESULT _stdcall LocalSpec([out, retval] BSTR* pLocal);
[id(0x00000004), propget]
HRESULT _stdcall Machine([out, retval] BSTR* pMachine);
[id(0x00000005), propget]
HRESULT _stdcall Project([out, retval] BSTR* pProject);
[id(0x00000006), propget]
HRESULT _stdcall Comment([out, retval] BSTR* pComment);
[id(0x00000007), propget]
HRESULT _stdcall VersionNumber([out, retval] long* piVersion);
};
[
odl,
uuid(783CD4E2-9D54-11CF-B8EE-00608CC9A71F),
helpstring("SourceSafe database object interface"),
dual,
oleautomation
]
interface IVSSDatabaseOld : IDispatch {
[id(0x00000001)]
HRESULT _stdcall Open(
[in, optional, defaultvalue("")] BSTR SrcSafeIni,
[in, optional, defaultvalue("")] BSTR Username,
[in, optional, defaultvalue("")] BSTR Password);
[id(0x00000002), propget]
HRESULT _stdcall SrcSafeIni([out, retval] BSTR* pSrcSafeIni);
[id(0x00000003), propget]
HRESULT _stdcall DatabaseName([out, retval] BSTR* pDatabaseName);
[id(0x00000004), propget]
HRESULT _stdcall Username([out, retval] BSTR* pUsername);
[id(0x00000005), propget]
HRESULT _stdcall CurrentProject([out, retval] BSTR* pPrj);
[id(0x00000005), propput]
HRESULT _stdcall CurrentProject([in] BSTR pPrj);
[id(0x00000006), propget]
HRESULT _stdcall VSSItem(
[in] BSTR Spec,
[in, optional, defaultvalue(0)] VARIANT_BOOL Deleted,
[out, retval] IVSSItem** ppIVSSItem);
};
[
odl,
uuid(2A0DE0E2-2E9F-11D0-9236-00AA00A1EB95),
helpstring("SourceSafe database object interface"),
dual,
oleautomation
]
interface IVSSDatabase : IVSSDatabaseOld {
[id(0x00000007)]
HRESULT _stdcall AddUser(
[in] BSTR User,
[in] BSTR Password,
[in] VARIANT_BOOL ReadOnly,
[out, retval] IVSSUser** ppIUser);
[id(0x00000008), propget]
HRESULT _stdcall User(
[in] BSTR Name,
[out, retval] IVSSUser** ppIUser);
[id(0x00000009), propget]
HRESULT _stdcall Users([out, retval] IVSSUsers** ppIUsers);
[id(0x0000000a), propget]
HRESULT _stdcall ProjectRightsEnabled([out, retval] VARIANT_BOOL* pEnabled);
[id(0x0000000a), propput]
HRESULT _stdcall ProjectRightsEnabled([in] VARIANT_BOOL pEnabled);
[id(0x0000000b), propget]
HRESULT _stdcall DefaultProjectRights([out, retval] long* pRights);
[id(0x0000000b), propput]
HRESULT _stdcall DefaultProjectRights([in] long pRights);
};
[
odl,
uuid(2A0DE0E3-2E9F-11D0-9236-00AA00A1EB95),
helpstring("SourceSafe user object interface"),
dual,
oleautomation
]
interface IVSSUser : IDispatch {
[id(0x00000001)]
HRESULT _stdcall Delete();
[id(0x00000002), propget]
HRESULT _stdcall Name([out, retval] BSTR* pName);
[id(0x00000002), propput]
HRESULT _stdcall Name([in] BSTR pName);
[id(0x00000003), propput]
HRESULT _stdcall Password([in] BSTR rhs);
[id(0x00000004), propget]
HRESULT _stdcall ReadOnly([out, retval] VARIANT_BOOL* pReadOnly);
[id(0x00000004), propput]
HRESULT _stdcall ReadOnly([in] VARIANT_BOOL pReadOnly);
[id(0x00000005), propget]
HRESULT _stdcall ProjectRights(
[in, optional, defaultvalue("$/")] BSTR Project,
[out, retval] long* piRightsOut);
[id(0x00000005), propput]
HRESULT _stdcall ProjectRights(
[in, optional, defaultvalue("$/")] BSTR Project,
[in] long piRightsOut);
[id(0x00000006)]
HRESULT _stdcall RemoveProjectRights([in] BSTR Project);
};
[
odl,
uuid(2A0DE0E4-2E9F-11D0-9236-00AA00A1EB95),
helpstring("SourceSafe users collection interface"),
dual,
oleautomation
]
interface IVSSUsers : IDispatch {
[id(0x00000001), propget]
HRESULT _stdcall Count([out, retval] long* piCount);
[id(00000000), propget]
HRESULT _stdcall Item(
[in] VARIANT sItem,
[out, retval] IVSSUser** ppIUser);
[id(0xfffffffc), restricted, hidden]
HRESULT _stdcall _NewEnum([out, retval] IUnknown** ppIEnum);
};
[
uuid(783CD4E3-9D54-11CF-B8EE-00608CC9A71F),
noncreatable
]
coclass VSSItem {
[default] interface IVSSItem;
interface IVSSItemOld;
};
[
uuid(783CD4EC-9D54-11CF-B8EE-00608CC9A71F),
noncreatable
]
coclass VSSVersion {
[default] interface IVSSVersion;
};
[
uuid(2A0DE0E0-2E9F-11D0-9236-00AA00A1EB95),
noncreatable
]
coclass VSSCheckout {
[default] interface IVSSCheckout;
};
[
uuid(783CD4E4-9D54-11CF-B8EE-00608CC9A71F)
]
coclass VSSDatabase {
[default] interface IVSSDatabase;
interface IVSSDatabaseOld;
};
[
uuid(2A0DE0E5-2E9F-11D0-9236-00AA00A1EB95),
noncreatable
]
coclass VSSUser {
[default] interface IVSSUser;
};
[
odl,
uuid(783CD4E9-9D54-11CF-B8EE-00608CC9A71F),
helpstring("SourceSafe event interface")
]
interface IVSSEventsOld : IUnknown {
HRESULT _stdcall BeforeAdd(
[in] IVSSItem* pIPrj,
[in] BSTR Local,
[out, retval] VARIANT_BOOL* pbContinue);
HRESULT _stdcall AfterAdd(
[in] IVSSItem* pIItem,
[in] BSTR Local);
HRESULT _stdcall BeforeCheckout(
[in] IVSSItem* pIItem,
[in] BSTR Local,
[out, retval] VARIANT_BOOL* pbContinue);
HRESULT _stdcall AfterCheckout(
[in] IVSSItem* pIItem,
[in] BSTR Local);
HRESULT _stdcall BeforeCheckin(
[in] IVSSItem* pIItem,
[in] BSTR Local,
[out, retval] VARIANT_BOOL* pbContinue);
HRESULT _stdcall AfterCheckin(
[in] IVSSItem* pIItem,
[in] BSTR Local);
HRESULT _stdcall BeforeUndoCheckout(
[in] IVSSItem* pIItem,
[in] BSTR Local,
[out, retval] VARIANT_BOOL* pbContinue);
HRESULT _stdcall AfterUndoCheckout(
[in] IVSSItem* pIItem,
[in] BSTR Local);
HRESULT _stdcall BeforeRename(
[in] IVSSItem* pIItem,
[in] BSTR NewName,
[out, retval] VARIANT_BOOL* pbContinue);
HRESULT _stdcall AfterRename(
[in] IVSSItem* pIItem,
[in] BSTR OldName);
HRESULT _stdcall BeforeBranch(
[in] IVSSItem* pIItem,
[out, retval] VARIANT_BOOL* pbContinue);
HRESULT _stdcall AfterBranch([in] IVSSItem* pIItem);
HRESULT _stdcall BeforeEvent(
[in] long iEvent,
[in] IVSSItem* pIItem,
[in] BSTR Str,
[in] VARIANT var,
[out, retval] VARIANT_BOOL* pbContinue);
HRESULT _stdcall AfterEvent(
[in] long iEvent,
[in] IVSSItem* pIItem,
[in] BSTR Str,
[in] VARIANT var);
};
[
odl,
uuid(2A0DE0E8-2E9F-11D0-9236-00AA00A1EB95),
helpstring("SourceSafe event interface")
]
interface IVSSEvents : IUnknown {
HRESULT _stdcall BeforeAdd(
[in] IVSSItem* pIPrj,
[in] BSTR Local,
[in] BSTR Comment,
[out, retval] VARIANT_BOOL* pbContinue);
HRESULT _stdcall AfterAdd(
[in] IVSSItem* pIItem,
[in] BSTR Local,
[in] BSTR Comment);
HRESULT _stdcall BeforeCheckout(
[in] IVSSItem* pIItem,
[in] BSTR Local,
[in] BSTR Comment,
[out, retval] VARIANT_BOOL* pbContinue);
HRESULT _stdcall AfterCheckout(
[in] IVSSItem* pIItem,
[in] BSTR Local,
[in] BSTR Comment);
HRESULT _stdcall BeforeCheckin(
[in] IVSSItem* pIItem,
[in] BSTR Local,
[in] BSTR Comment,
[out, retval] VARIANT_BOOL* pbContinue);
HRESULT _stdcall AfterCheckin(
[in] IVSSItem* pIItem,
[in] BSTR Local,
[in] BSTR Comment);
HRESULT _stdcall BeforeUndoCheckout(
[in] IVSSItem* pIItem,
[in] BSTR Local,
[out, retval] VARIANT_BOOL* pbContinue);
HRESULT _stdcall AfterUndoCheckout(
[in] IVSSItem* pIItem,
[in] BSTR Local);
HRESULT _stdcall BeforeRename(
[in] IVSSItem* pIItem,
[in] BSTR NewName,
[out, retval] VARIANT_BOOL* pbContinue);
HRESULT _stdcall AfterRename(
[in] IVSSItem* pIItem,
[in] BSTR OldName);
HRESULT _stdcall BeforeBranch(
[in] IVSSItem* pIItem,
[in] BSTR Comment,
[out, retval] VARIANT_BOOL* pbContinue);
HRESULT _stdcall AfterBranch(
[in] IVSSItem* pIItem,
[in] BSTR Comment);
HRESULT _stdcall BeginCommand(
[in] long unused,
[out, retval] VARIANT_BOOL* pbContinue);
HRESULT _stdcall EndCommand([in] long unused);
HRESULT _stdcall BeforeEvent(
[in] long iEvent,
[in] IVSSItem* pIItem,
[in] BSTR Str,
[in] VARIANT var,
[out, retval] VARIANT_BOOL* pbContinue);
HRESULT _stdcall AfterEvent(
[in] long iEvent,
[in] IVSSItem* pIItem,
[in] BSTR Str,
[in] VARIANT var);
};
[
odl,
uuid(783CD4EB-9D54-11CF-B8EE-00608CC9A71F),
helpstring("SourceSafe application interface"),
dual,
oleautomation
]
interface IVSS : IDispatch {
[id(0x00000001), propget]
HRESULT _stdcall VSSDatabase([out, retval] IVSSDatabase** ppIVSSDatabase);
};
[
odl,
uuid(783CD4EA-9D54-11CF-B8EE-00608CC9A71F),
helpstring("SourceSafe event interface")
]
interface IVSSEventHandler : IUnknown {
HRESULT _stdcall Init([in] IVSS* pIVSS);
};
[
uuid(2A0DE0E1-2E9F-11D0-9236-00AA00A1EB95),
noncreatable
]
coclass VSSApp {
[default] interface IVSS;
[default, source] interface IVSSEvents;
[source] interface IVSSEventsOld;
};
};