rodecomp/Source/Client/Browser/BrowserInPlace.h
ragnarok-clanker f519ad4610 Maintenance: [forced, user-approved] Family G21: remove the Browser reference bundles BrowserInPlaceFrame, BrowserInPlaceSite, Browse
Batch #10236 by ragnarok-clanker: forced by an admin (2 lower score(s), 15 changed function(s)); checked with 7 compiled unit(s), including every includer of Source/Client/Browser/BrowserClientSite.h, Source/Client/Browser/BrowserCommandTarget.h, Source/Client/Browser/BrowserDocumentUI.h, Source/Client/Browser/BrowserInPlace.h, Source/Client/Browser/BrowserPopupDispatch.h.
2026-11-03 10:27:10 +00:00

69 lines
2.9 KiB
C++

#ifndef RAGNAROK_SOURCE_CLIENT_BROWSER_BROWSERINPLACE_H
#define RAGNAROK_SOURCE_CLIENT_BROWSER_BROWSERINPLACE_H
#include <windows.h>
#include <ole2.h>
class BrowserClientSite;
class BrowserInPlaceFrame final : public IOleInPlaceFrame {
public:
// INLINED
explicit BrowserInPlaceFrame(BrowserClientSite* site) : unknown_0004(0), m_site(site) {
}
HRESULT STDMETHODCALLTYPE QueryInterface(REFIID iid, void** output) override;
ULONG STDMETHODCALLTYPE AddRef() override;
ULONG STDMETHODCALLTYPE Release() override;
HRESULT STDMETHODCALLTYPE GetWindow(HWND* output) override;
HRESULT STDMETHODCALLTYPE ContextSensitiveHelp(BOOL enter) override;
HRESULT STDMETHODCALLTYPE GetBorder(RECT* border) override;
HRESULT STDMETHODCALLTYPE RequestBorderSpace(LPCBORDERWIDTHS widths) override;
HRESULT STDMETHODCALLTYPE SetBorderSpace(LPCBORDERWIDTHS widths) override;
HRESULT STDMETHODCALLTYPE SetActiveObject(IOleInPlaceActiveObject* object, LPCOLESTR name) override;
HRESULT STDMETHODCALLTYPE InsertMenus(HMENU menu, LPOLEMENUGROUPWIDTHS widths) override;
HRESULT STDMETHODCALLTYPE SetMenu(HMENU menu, HOLEMENU descriptor, HWND active) override;
HRESULT STDMETHODCALLTYPE RemoveMenus(HMENU menu) override;
HRESULT STDMETHODCALLTYPE SetStatusText(LPCOLESTR text) override;
HRESULT STDMETHODCALLTYPE EnableModeless(BOOL enable) override;
HRESULT STDMETHODCALLTYPE TranslateAccelerator(MSG* message, WORD id) override;
private:
/* 0004 */ int unknown_0004;
/* 0008 */ BrowserClientSite* m_site;
};
class BrowserInPlaceSite final : public IOleInPlaceSite {
public:
// INLINED
explicit BrowserInPlaceSite(BrowserClientSite* site) : unknown_0004(0), m_frame(new BrowserInPlaceFrame(site)), m_site(site) {
}
// INLINED
~BrowserInPlaceSite() {
delete this->m_frame;
}
HRESULT STDMETHODCALLTYPE QueryInterface(REFIID iid, void** output) override;
ULONG STDMETHODCALLTYPE AddRef() override;
ULONG STDMETHODCALLTYPE Release() override;
HRESULT STDMETHODCALLTYPE GetWindow(HWND* output) override;
HRESULT STDMETHODCALLTYPE ContextSensitiveHelp(BOOL enter) override;
HRESULT STDMETHODCALLTYPE CanInPlaceActivate() override;
HRESULT STDMETHODCALLTYPE OnInPlaceActivate() override;
HRESULT STDMETHODCALLTYPE OnUIActivate() override;
HRESULT STDMETHODCALLTYPE
GetWindowContext(IOleInPlaceFrame** frame, IOleInPlaceUIWindow** document, RECT* position, RECT* clip, OLEINPLACEFRAMEINFO* info) override;
HRESULT STDMETHODCALLTYPE Scroll(SIZE extent) override;
HRESULT STDMETHODCALLTYPE OnUIDeactivate(BOOL undoable) override;
HRESULT STDMETHODCALLTYPE OnInPlaceDeactivate() override;
HRESULT STDMETHODCALLTYPE DiscardUndoState() override;
HRESULT STDMETHODCALLTYPE DeactivateAndUndo() override;
HRESULT STDMETHODCALLTYPE OnPosRectChange(const RECT* position) override;
private:
/* 0004 */ int unknown_0004;
/* 0008 */ BrowserInPlaceFrame* m_frame;
/* 000C */ BrowserClientSite* m_site;
};
#endif