- BORLAND/: Borland C++ 4.52 (chosen over 4.5 by byte-match: CODE/RP/CW32.LIB
is identical to 4.52's install lib). BCC32/TLINK32/TLIB/MAKE run natively on
Win11; CODE/BT/OPT.MAK is the shipped BTL4OPT.EXE's exact flag recipe
(extender = Borland PowerPack DPMI32, not Phar Lap TNT).
- restoration/source410/: the literal 1995-form reconstruction of the missing
BT game source (never mixed into CODE/). Round 1-3 state:
* 6 of 10 surviving original TUs COMPILE CLEAN under the period toolchain
(BTMSSN, BTCNSL, BTSCNRL, BTTEAM, BTL4MODE, BTL4ARND) - first builds
since 1996.
* BT_L4/BTL4APP.CPP pilot reconstruction: 12/12 functions, Fail() lands on
its binary-recorded line 400 exactly.
* BT/BTCNSL.HPP: console wire IDs recovered from the binary's ctors
(Killed=9, Damaged=10, ScoreUpdate=13, DeathWithoutHonor=15 [T1];
TeamScore=12 flagged [T4]).
* MUNGA/: 8 engine-header backfills back-dated from the BT412 WinTesla tree
(VDATA numbering decomp-verified; AUDREND's OpenAL-era virtual removed -
the period compiler is the drift detector).
* Tooling: backdate.py (WinTesla->1995 header transform), compile410.sh
(per-TU verification sweep under authentic OPT.MAK flags).
* README: corrected roadmap - MECH.HPP is the capstone grown with the mech
TU reconstructions; BTREG.CPP green = the header-family milestone.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
149 lines
5.0 KiB
C++
149 lines
5.0 KiB
C++
//
|
|
//----------------------------------------------------------------------------
|
|
// ObjectComponents
|
|
// (C) Copyright 1994 by Borland International, All Rights Reserved
|
|
//
|
|
// Definition of TOcRemView Class
|
|
//----------------------------------------------------------------------------
|
|
#if !defined(OCF_OCREMVIE_H)
|
|
#define OCF_OCREMVIE_H
|
|
|
|
#if !defined(OCF_OCVIEW_H)
|
|
# include <ocf/ocview.h>
|
|
#endif
|
|
|
|
//
|
|
// Remote Viewer object for a server document
|
|
//
|
|
class _ICLASS TOcRemView : public TOcView, public IBPart2 {
|
|
public:
|
|
TOcRemView(TOcDocument& doc, TRegList* regList = 0, IUnknown* outer = 0);
|
|
|
|
virtual void ReleaseObject();
|
|
|
|
// IBSite pass-thrus
|
|
//
|
|
void Invalidate(TOcInvalidate);
|
|
void Disconnect();
|
|
virtual bool EvSetFocus(bool set);
|
|
|
|
// IBDocument pass-thrus
|
|
//
|
|
void EvClose();
|
|
void Rename();
|
|
TString GetContainerTitle();
|
|
void GetInitialRect(bool selection = false);
|
|
bool Save(IStorage* storageI);
|
|
bool Load(IStorage* storageI);
|
|
|
|
// IBApplication pass-thrus
|
|
//
|
|
bool SetContainerStatusText(const char far* text);
|
|
|
|
// Server State and Kind accessors, etc.
|
|
//
|
|
enum TState { // Current state of this server view
|
|
Hidden, // Hidden & ready to go
|
|
Closing, // Shutting down
|
|
OpenEditing, // Open editing
|
|
InPlaceActive, // Inplace active
|
|
};
|
|
enum TKind { // What kind of server view this is
|
|
DontKnow, // Don't know yet, wait for Init()
|
|
Embedding, // Normal Embedding
|
|
LoadFromFile, // Transient load-from-file
|
|
Link, // Load-from-file is really a link
|
|
};
|
|
TState GetState() const {return State;}
|
|
TKind GetKind() const {return Kind;}
|
|
|
|
// Used by TOcLinkView to let us know our state was changed
|
|
//
|
|
void SetOpenEditing() {State = OpenEditing;}
|
|
|
|
// Object reference & lifetime managment
|
|
//
|
|
ulong _IFUNC AddRef();
|
|
ulong _IFUNC Release();
|
|
HRESULT _IFUNC QueryInterface(const GUID far& iid, void far*far* iface);
|
|
|
|
|
|
protected:
|
|
// IBContains forwarding to base
|
|
//
|
|
HRESULT _IFUNC Init(LPCOLESTR path);
|
|
HRESULT _IFUNC GetPart(IBPart far* far*, LPCOLESTR);
|
|
|
|
// IBContainer implementation for Bolero to use
|
|
//
|
|
HRESULT _IFUNC BringToFront();
|
|
|
|
// TUnknown virtual overrides
|
|
//
|
|
HRESULT QueryObject(const IID far& iid, void far* far* iface);
|
|
|
|
// IBContainer forwarding to base
|
|
//
|
|
void _IFUNC DragFeedback(TPoint far* p, const TRect far* r,
|
|
TOcMouseAction a, uint cf, HRESULT& hr);
|
|
|
|
HRESULT _IFUNC AllowInPlace();
|
|
|
|
// IBDataNegotiator implementation
|
|
//
|
|
uint _IFUNC CountFormats();
|
|
HRESULT _IFUNC GetFormat(uint index, TOcFormatInfo far* fmt);
|
|
|
|
// IBDataProvider2 implementation
|
|
//
|
|
HANDLE _IFUNC GetFormatData(TOcFormatInfo far*);
|
|
HRESULT _IFUNC SetFormatData(TOcFormatInfo far* fmt, HANDLE data, bool release);
|
|
HRESULT _IFUNC Draw(HDC, const RECTL far*, const RECTL far*, TOcAspect, TOcDraw bd);
|
|
HRESULT _IFUNC GetPartSize(TSize far*);
|
|
HRESULT _IFUNC Save(IStorage*, bool sameAsLoad, bool remember);
|
|
|
|
// IBPart implementation
|
|
//
|
|
HRESULT _IFUNC Init(IBSite far*, TOcInitInfo far*);
|
|
HRESULT _IFUNC Close();
|
|
HRESULT _IFUNC CanOpenInPlace();
|
|
HRESULT _IFUNC SetPartSize(TSize far*);
|
|
HRESULT _IFUNC SetPartPos(TRect far*);
|
|
HRESULT _IFUNC Activate(bool);
|
|
HRESULT _IFUNC Show(bool);
|
|
HRESULT _IFUNC Open(bool);
|
|
HRESULT _IFUNC EnumVerbs(TOcVerb far*);
|
|
HRESULT _IFUNC DoVerb(uint);
|
|
HWND _IFUNC OpenInPlace(HWND);
|
|
HRESULT _IFUNC InsertMenus(HMENU, TOcMenuWidths far*);
|
|
HRESULT _IFUNC ShowTools(bool);
|
|
void _IFUNC FrameResized(const TRect far*, bool);
|
|
HRESULT _IFUNC DragFeedback(TPoint far*, bool);
|
|
HRESULT _IFUNC GetPalette(LOGPALETTE far* far*);
|
|
HRESULT _IFUNC SetHost(IBContainer far* objContainer);
|
|
HRESULT _IFUNC DoQueryInterface(const IID far& iid, void far* far* pif);
|
|
LPOLESTR _IFUNC GetName(TOcPartName);
|
|
|
|
protected:
|
|
~TOcRemView();
|
|
|
|
IBContainer* BContainerI; //
|
|
IBLinkable* BLSiteI; // for site moniker
|
|
IUnknown* BSite; // In-place site helper
|
|
IBSite* BSiteI; // Site interface
|
|
IBApplication* BAppI; // Site's application interface
|
|
HWND HRealParent; // View's real parent
|
|
TOcToolBarInfo ToolBarInfo; // Inplace tool bar info
|
|
|
|
TState State; // Current state of this server view
|
|
TKind Kind; // What kind of server view this is
|
|
};
|
|
|
|
inline bool TOcRemView::SetContainerStatusText(const char far* text) {
|
|
return HRIsOK(BAppI->SetStatusText(OleStr(text)));
|
|
}
|
|
|
|
#endif // OCF_OCREMVIE_H
|
|
|
|
|