mirror of
https://github.com/elasota/Aerofoil.git
synced 2025-09-23 23:00:42 +00:00
Major draw code refactor
This commit is contained in:
@@ -57,6 +57,7 @@ namespace PortabilityLayer
|
||||
void ShowWindow(Window *window) override;
|
||||
void HideWindow(Window *window) override;
|
||||
void FindWindow(const Point &point, Window **outWindow, short *outRegion) const override;
|
||||
void DestroyWindow(Window *window) override;
|
||||
|
||||
void RenderFrame(IGpDisplayDriver *displayDriver) override;
|
||||
|
||||
@@ -236,7 +237,6 @@ namespace PortabilityLayer
|
||||
// outRegion = One of:
|
||||
/*
|
||||
inMenuBar,
|
||||
inSysWindow,
|
||||
inContent,
|
||||
inDrag,
|
||||
inGrow,
|
||||
@@ -285,6 +285,16 @@ namespace PortabilityLayer
|
||||
*outRegion = 0;
|
||||
}
|
||||
|
||||
void WindowManagerImpl::DestroyWindow(Window *window)
|
||||
{
|
||||
WindowImpl *windowImpl = static_cast<WindowImpl*>(window);
|
||||
|
||||
DetachWindow(window);
|
||||
|
||||
windowImpl->~WindowImpl();
|
||||
PortabilityLayer::MemoryManager::GetInstance()->Release(windowImpl);
|
||||
}
|
||||
|
||||
void WindowManagerImpl::RenderFrame(IGpDisplayDriver *displayDriver)
|
||||
{
|
||||
PortabilityLayer::DisplayDeviceManager *dd = PortabilityLayer::DisplayDeviceManager::GetInstance();
|
||||
@@ -342,7 +352,7 @@ namespace PortabilityLayer
|
||||
|
||||
void WindowManagerImpl::RenderWindow(WindowImpl *window, IGpDisplayDriver *displayDriver)
|
||||
{
|
||||
CGraf &graf = window->m_graf;
|
||||
DrawSurface &graf = window->m_graf;
|
||||
|
||||
graf.PushToDDSurface(displayDriver);
|
||||
|
||||
|
Reference in New Issue
Block a user