From 2b6f4432de62594fa12b8e9f1d01f0d916a79f61 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?G=C3=BCnther=20Brammer?= Date: Mon, 3 Oct 2011 16:30:18 +0200 Subject: [PATCH] Rename lpDDraw to pDraw --- src/C4Application.cpp | 6 +- src/C4FullScreen.cpp | 14 ++--- src/C4Game.cpp | 8 +-- src/C4GraphicsSystem.cpp | 20 +++--- src/editor/C4ConsoleGTK.cpp | 2 +- src/editor/C4ConsoleWin32.cpp | 8 +-- src/editor/C4EditCursor.cpp | 28 ++++----- src/game/landscape/C4Landscape.cpp | 10 +-- .../landscape/C4LandscapeRenderClassic.cpp | 4 +- src/game/landscape/C4PXS.cpp | 4 +- src/game/landscape/C4Particles.cpp | 24 +++---- src/game/landscape/C4PathFinder.cpp | 14 ++--- src/game/landscape/C4Sky.cpp | 16 ++--- src/game/landscape/C4Weather.cpp | 4 +- src/game/object/C4Def.cpp | 12 ++-- src/game/object/C4DefGraphics.cpp | 42 ++++++------- src/game/object/C4IDList.cpp | 2 +- src/game/object/C4Object.cpp | 62 +++++++++---------- src/game/object/C4ObjectList.cpp | 4 +- src/game/script/C4GameScript.cpp | 6 +- src/game/script/C4TransferZone.cpp | 2 +- src/gui/C4FileSelDlg.cpp | 4 +- src/gui/C4GameMessage.cpp | 6 +- src/gui/C4Gui.cpp | 28 ++++----- src/gui/C4Gui.h | 2 +- src/gui/C4GuiButton.cpp | 28 ++++----- src/gui/C4GuiCheckBox.cpp | 6 +- src/gui/C4GuiComboBox.cpp | 18 +++--- src/gui/C4GuiContainers.cpp | 28 ++++----- src/gui/C4GuiDialogs.cpp | 12 ++-- src/gui/C4GuiEdit.cpp | 24 +++---- src/gui/C4GuiLabels.cpp | 24 +++---- src/gui/C4GuiListBox.cpp | 6 +- src/gui/C4GuiMenu.cpp | 10 +-- src/gui/C4GuiTabular.cpp | 36 +++++------ src/gui/C4LoaderScreen.cpp | 18 +++--- src/gui/C4Menu.cpp | 22 +++---- src/gui/C4MessageBoard.cpp | 4 +- src/gui/C4MouseControl.cpp | 20 +++--- src/gui/C4PlayerInfoListBox.cpp | 8 +-- src/gui/C4Scoreboard.cpp | 2 +- src/gui/C4StartupAboutDlg.cpp | 2 +- src/gui/C4StartupMainDlg.cpp | 2 +- src/gui/C4StartupNetDlg.cpp | 2 +- src/gui/C4StartupOptionsDlg.cpp | 28 ++++----- src/gui/C4StartupScenSelDlg.cpp | 2 +- src/gui/C4UpperBoard.cpp | 10 +-- src/gui/C4Viewport.cpp | 46 +++++++------- src/lib/StdMeshMaterial.cpp | 2 +- src/lib/texture/C4Facet.cpp | 56 ++++++++--------- src/lib/texture/C4FacetEx.cpp | 16 ++--- src/network/C4Network2.cpp | 4 +- src/network/C4Network2Dialogs.cpp | 24 +++---- src/platform/C4Surface.cpp | 60 +++++++++--------- src/platform/C4Surface.h | 2 - src/platform/C4Video.cpp | 4 +- src/platform/C4VideoPlayback.cpp | 2 +- src/platform/StdD3DShader.cpp | 2 +- src/platform/StdDDraw2.cpp | 28 ++++----- src/platform/StdDDraw2.h | 10 +-- src/platform/StdFont.cpp | 16 ++--- 61 files changed, 457 insertions(+), 459 deletions(-) diff --git a/src/C4Application.cpp b/src/C4Application.cpp index 2a1e63bd8..e0a39fd0a 100644 --- a/src/C4Application.cpp +++ b/src/C4Application.cpp @@ -556,7 +556,7 @@ void C4Application::Clear() SoundSystem.Clear(); RestoreVideoMode(); // Clear direct draw (late, because it's needed for e.g. Log) - if (lpDDraw) { delete lpDDraw; lpDDraw=NULL; } + if (pDraw) { delete pDraw; pDraw=NULL; } // Close window FullScreen.Clear(); Console.Clear(); @@ -688,10 +688,10 @@ void C4Application::SetGameTickDelay(int iDelay) void C4Application::OnResolutionChanged(unsigned int iXRes, unsigned int iYRes) { // notify game - if (lpDDraw) + if (pDraw) { Game.OnResolutionChanged(iXRes, iYRes); - lpDDraw->OnResolutionChanged(iXRes, iYRes); + pDraw->OnResolutionChanged(iXRes, iYRes); } if (pWindow && pWindow->pSurface) pWindow->pSurface->UpdateSize(iXRes, iYRes); diff --git a/src/C4FullScreen.cpp b/src/C4FullScreen.cpp index 20819d02d..65648d3ef 100644 --- a/src/C4FullScreen.cpp +++ b/src/C4FullScreen.cpp @@ -56,12 +56,12 @@ LRESULT APIENTRY FullScreenWinProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM l // fall through to next case case WM_ACTIVATEAPP: Application.Active = wParam != 0; - if (lpDDraw) + if (pDraw) { if (Application.Active) - lpDDraw->TaskIn(); + pDraw->TaskIn(); else - lpDDraw->TaskOut(); + pDraw->TaskOut(); } // redraw background ::GraphicsSystem.InvalidateBg(); @@ -253,11 +253,11 @@ void C4FullScreen::HandleMessage (XEvent &e) break; case FocusIn: Application.Active = true; - if (lpDDraw) lpDDraw->TaskIn(); + if (pDraw) pDraw->TaskIn(); break; case FocusOut: case UnmapNotify: Application.Active = false; - if (lpDDraw) lpDDraw->TaskOut(); + if (pDraw) pDraw->TaskOut(); break; } } @@ -351,8 +351,8 @@ void C4FullScreen::HandleMessage (SDL_Event &e) { Config.Graphics.Windowed = !Config.Graphics.Windowed; Application.SetVideoMode(Config.Graphics.ResX, Config.Graphics.ResY, Config.Graphics.BitDepth, Config.Graphics.RefreshRate, Config.Graphics.Monitor, !Config.Graphics.Windowed); - lpDDraw->InvalidateDeviceObjects(); - lpDDraw->RestoreDeviceObjects(); + pDraw->InvalidateDeviceObjects(); + pDraw->RestoreDeviceObjects(); break; } diff --git a/src/C4Game.cpp b/src/C4Game.cpp index eed22c3cc..d77b6626a 100644 --- a/src/C4Game.cpp +++ b/src/C4Game.cpp @@ -308,7 +308,7 @@ bool C4Game::PreInit() // Timer flags GameGo=false; // set gamma - lpDDraw->SetGamma(Config.Graphics.Gamma1, Config.Graphics.Gamma2, Config.Graphics.Gamma3, C4GRI_USER); + pDraw->SetGamma(Config.Graphics.Gamma1, Config.Graphics.Gamma2, Config.Graphics.Gamma3, C4GRI_USER); // init message input (default commands) MessageInput.Init(); Game.SetInitProgress(31.0f); @@ -488,7 +488,7 @@ bool C4Game::Init() SetInitProgress(99); // Gamma - lpDDraw->ApplyGamma(); + pDraw->ApplyGamma(); // Message board and upper board if (!Application.isEditor) @@ -1559,7 +1559,7 @@ void C4Game::DrawCursors(C4TargetFacet &cgo, int32_t iPlayer) } else str = cursor->GetName(); - lpDDraw->TextOut(str.getData(), ::GraphicsResource.FontRegular, 1.0, cgo.Surface, + pDraw->TextOut(str.getData(), ::GraphicsResource.FontRegular, 1.0, cgo.Surface, cgo.X + cox + fctCursor.Wdt / 2, cgo.Y + coy - 2 - texthgt, 0xffff0000, ACenter); @@ -1720,7 +1720,7 @@ bool C4Game::SaveGameTitle(C4Group &hGroup) if (!(sfcPic = new C4Surface(iSfcWdt,iSfcHgt))) return false; // Fullscreen - lpDDraw->Blit(FullScreen.pSurface, + pDraw->Blit(FullScreen.pSurface, 0.0f,0.0f,float(C4GUI::GetScreenWdt()),float(C4GUI::GetScreenHgt()-::GraphicsResource.FontRegular.iLineHgt), sfcPic,0,0,iSfcWdt,iSfcHgt); diff --git a/src/C4GraphicsSystem.cpp b/src/C4GraphicsSystem.cpp index 1e98ef5e0..cceb842d6 100644 --- a/src/C4GraphicsSystem.cpp +++ b/src/C4GraphicsSystem.cpp @@ -87,8 +87,8 @@ void C4GraphicsSystem::Clear() bool C4GraphicsSystem::StartDrawing() { // only if ddraw is ready - if (!lpDDraw) return false; - if (!lpDDraw->Active) return false; + if (!pDraw) return false; + if (!pDraw->Active) return false; // only if application is active or windowed (if config allows) if (!Application.Active && (!Application.isEditor || !Config.Graphics.RenderInactiveEM)) return false; @@ -165,7 +165,7 @@ void C4GraphicsSystem::Execute() } // gamma update - lpDDraw->ApplyGamma(); + pDraw->ApplyGamma(); // Video record & status (fullsrceen) if (!Application.isEditor) @@ -196,7 +196,7 @@ void C4GraphicsSystem::Default() void C4GraphicsSystem::ClearFullscreenBackground() { - lpDDraw->FillBG(0); + pDraw->FillBG(0); --iRedrawBackground; } @@ -209,7 +209,7 @@ bool C4GraphicsSystem::InitLoaderScreen(const char *szLoaderSpec, bool fDrawBlac if (pLoaderScreen) delete pLoaderScreen; pLoaderScreen = pNewLoader; // apply user gamma for loader - lpDDraw->ApplyGamma(); + pDraw->ApplyGamma(); // done, success return true; } @@ -285,7 +285,7 @@ bool C4GraphicsSystem::DoSaveScreenshot(bool fSaveAll, const char *szFilename) // transfer each pixel - slooow... for (int32_t iY2=0; iY2ApplyGammaTo(FullScreen.pSurface->GetPixDw(iX2, iY2, false))); + png.SetPix(iX+iX2, iY+iY2, pDraw->ApplyGammaTo(FullScreen.pSurface->GetPixDw(iX2, iY2, false))); // done; unlock FullScreen.pSurface->Unlock(); } @@ -317,7 +317,7 @@ void C4GraphicsSystem::DrawHoldMessages() { if (!Application.isEditor && Game.HaltCount) { - lpDDraw->TextOut("Pause", ::GraphicsResource.FontRegular,1.0, + pDraw->TextOut("Pause", ::GraphicsResource.FontRegular,1.0, FullScreen.pSurface, C4GUI::GetScreenWdt()/2, C4GUI::GetScreenHgt()/2 - ::GraphicsResource.FontRegular.iLineHgt*2, CStdDDraw::DEFAULT_MESSAGE_COLOR, ACenter); @@ -355,7 +355,7 @@ void C4GraphicsSystem::DrawFlashMessage() { if (!FlashMessageTime) return; if (Application.isEditor) return; - lpDDraw->TextOut(FlashMessageText, ::GraphicsResource.FontRegular, 1.0, FullScreen.pSurface, + pDraw->TextOut(FlashMessageText, ::GraphicsResource.FontRegular, 1.0, FullScreen.pSurface, (FlashMessageX==-1) ? C4GUI::GetScreenWdt()/2 : FlashMessageX, (FlashMessageY==-1) ? C4GUI::GetScreenHgt()/2 : FlashMessageY, CStdDDraw::DEFAULT_MESSAGE_COLOR, @@ -391,7 +391,7 @@ void C4GraphicsSystem::DrawHelp() strText.AppendFormat("\n%s - %s\n", GetKeyboardInputName("Screenshot").getData(), LoadResStr("IDS_CTL_SCREENSHOT")); strText.AppendFormat("%s - %s\n", GetKeyboardInputName("ScreenshotEx").getData(), LoadResStr("IDS_CTL_SCREENSHOTEX")); - lpDDraw->TextOut(strText.getData(), ::GraphicsResource.FontRegular, 1.0, FullScreen.pSurface, + pDraw->TextOut(strText.getData(), ::GraphicsResource.FontRegular, 1.0, FullScreen.pSurface, iX + 128, iY + 64, CStdDDraw::DEFAULT_MESSAGE_COLOR, ALeft); // right coloumn @@ -405,7 +405,7 @@ void C4GraphicsSystem::DrawHelp() strText.AppendFormat("%s - %s\n", GetKeyboardInputName("DbgShowVtxToggle").getData(), "Entrance+Vertices"); strText.AppendFormat("%s - %s\n", GetKeyboardInputName("DbgShowActionToggle").getData(), "Actions/Commands/Pathfinder"); strText.AppendFormat("%s - %s\n", GetKeyboardInputName("DbgShowSolidMaskToggle").getData(), "SolidMasks"); - lpDDraw->TextOut(strText.getData(), ::GraphicsResource.FontRegular, 1.0, FullScreen.pSurface, + pDraw->TextOut(strText.getData(), ::GraphicsResource.FontRegular, 1.0, FullScreen.pSurface, iX + iWdt/2 + 64, iY + 64, CStdDDraw::DEFAULT_MESSAGE_COLOR, ALeft); } diff --git a/src/editor/C4ConsoleGTK.cpp b/src/editor/C4ConsoleGTK.cpp index cea7de609..2fa676474 100644 --- a/src/editor/C4ConsoleGTK.cpp +++ b/src/editor/C4ConsoleGTK.cpp @@ -1333,7 +1333,7 @@ void C4ToolsDlg::State::UpdatePreview() #else if (GTK_WIDGET_SENSITIVE(preview)) #endif - lpDDraw->DrawPatternedCircle( sfcPreview, + pDraw->DrawPatternedCircle( sfcPreview, iPrvWdt/2,iPrvHgt/2, dlg->Grade, bCol, Pattern, *::Landscape.GetPal()); diff --git a/src/editor/C4ConsoleWin32.cpp b/src/editor/C4ConsoleWin32.cpp index 5c67cd12b..36f4acda1 100644 --- a/src/editor/C4ConsoleWin32.cpp +++ b/src/editor/C4ConsoleWin32.cpp @@ -972,8 +972,8 @@ bool C4ConsoleGUI::ToolsDlgOpen(C4ToolsDlg *dlg) dlg->state->LoadBitmaps(Application.GetInstance()); // create target ctx for OpenGL rendering #ifdef USE_GL - if (lpDDraw && !dlg->state->pGLCtx) - dlg->state->pGLCtx = lpDDraw->CreateContext(GetDlgItem(dlg->state->hDialog,IDC_PREVIEW), &Application); + if (pDraw && !dlg->state->pGLCtx) + dlg->state->pGLCtx = pDraw->CreateContext(GetDlgItem(dlg->state->hDialog,IDC_PREVIEW), &Application); #endif // Show window RestoreWindowPosition(dlg->state->hDialog, "Property", Config.GetSubkeyPath("Console")); @@ -1066,7 +1066,7 @@ void C4ToolsDlg::NeedPreviewUpdate() if (!(sfcPreview=new C4Surface(iPrvWdt,iPrvHgt))) return; // fill bg - lpDDraw->DrawBoxDw(sfcPreview,0,0,iPrvWdt-1,iPrvHgt-1,C4RGB(0x80,0x80,0x80)); + pDraw->DrawBoxDw(sfcPreview,0,0,iPrvWdt-1,iPrvHgt-1,C4RGB(0x80,0x80,0x80)); BYTE bCol = 0; C4Pattern Pattern; // Sky material: sky as pattern only @@ -1093,7 +1093,7 @@ void C4ToolsDlg::NeedPreviewUpdate() } } if (IsWindowEnabled(GetDlgItem(state->hDialog,IDC_PREVIEW))) - lpDDraw->DrawPatternedCircle( sfcPreview, + pDraw->DrawPatternedCircle( sfcPreview, iPrvWdt/2,iPrvHgt/2, Grade, bCol, Pattern, *::Landscape.GetPal()); diff --git a/src/editor/C4EditCursor.cpp b/src/editor/C4EditCursor.cpp index 699f6b3ca..8562677ff 100644 --- a/src/editor/C4EditCursor.cpp +++ b/src/editor/C4EditCursor.cpp @@ -438,12 +438,12 @@ void C4EditCursor::Draw(C4TargetFacet &cgo) } // Draw drag frame if (DragFrame) - lpDDraw->DrawFrameDw(cgo.Surface, + pDraw->DrawFrameDw(cgo.Surface, Min(X, X2) + cgo.X - cgo.TargetX, Min(Y, Y2) + cgo.Y - cgo.TargetY, Max(X, X2) + cgo.X - cgo.TargetX, Max(Y, Y2) + cgo.Y - cgo.TargetY, 0xffffffff); // Draw drag line if (DragLine) - lpDDraw->DrawLineDw(cgo.Surface, + pDraw->DrawLineDw(cgo.Surface, X + cgo.X - cgo.TargetX, Y + cgo.Y - cgo.TargetY, X2 + cgo.X - cgo.TargetX, Y2 + cgo.Y - cgo.TargetY, 0xffffffff); // Draw drop target @@ -460,21 +460,21 @@ void C4EditCursor::DrawSelectMark(C4Facet &cgo, FLOAT_RECT frame) if (!cgo.Surface) return; - lpDDraw->DrawPix(cgo.Surface,frame.left,frame.top,0xFFFFFFFF); - lpDDraw->DrawPix(cgo.Surface,frame.left+1,frame.top,0xFFFFFFFF); - lpDDraw->DrawPix(cgo.Surface,frame.left,frame.top+1,0xFFFFFFFF); + pDraw->DrawPix(cgo.Surface,frame.left,frame.top,0xFFFFFFFF); + pDraw->DrawPix(cgo.Surface,frame.left+1,frame.top,0xFFFFFFFF); + pDraw->DrawPix(cgo.Surface,frame.left,frame.top+1,0xFFFFFFFF); - lpDDraw->DrawPix(cgo.Surface,frame.left,frame.bottom-1,0xFFFFFFFF); - lpDDraw->DrawPix(cgo.Surface,frame.left+1,frame.bottom-1,0xFFFFFFFF); - lpDDraw->DrawPix(cgo.Surface,frame.left,frame.bottom-2,0xFFFFFFFF); + pDraw->DrawPix(cgo.Surface,frame.left,frame.bottom-1,0xFFFFFFFF); + pDraw->DrawPix(cgo.Surface,frame.left+1,frame.bottom-1,0xFFFFFFFF); + pDraw->DrawPix(cgo.Surface,frame.left,frame.bottom-2,0xFFFFFFFF); - lpDDraw->DrawPix(cgo.Surface,frame.right-1,frame.top,0xFFFFFFFF); - lpDDraw->DrawPix(cgo.Surface,frame.right-2,frame.top,0xFFFFFFFF); - lpDDraw->DrawPix(cgo.Surface,frame.right-1,frame.top+1,0xFFFFFFFF); + pDraw->DrawPix(cgo.Surface,frame.right-1,frame.top,0xFFFFFFFF); + pDraw->DrawPix(cgo.Surface,frame.right-2,frame.top,0xFFFFFFFF); + pDraw->DrawPix(cgo.Surface,frame.right-1,frame.top+1,0xFFFFFFFF); - lpDDraw->DrawPix(cgo.Surface,frame.right-1,frame.bottom-1,0xFFFFFFFF); - lpDDraw->DrawPix(cgo.Surface,frame.right-2,frame.bottom-1,0xFFFFFFFF); - lpDDraw->DrawPix(cgo.Surface,frame.right-1,frame.bottom-2,0xFFFFFFFF); + pDraw->DrawPix(cgo.Surface,frame.right-1,frame.bottom-1,0xFFFFFFFF); + pDraw->DrawPix(cgo.Surface,frame.right-2,frame.bottom-1,0xFFFFFFFF); + pDraw->DrawPix(cgo.Surface,frame.right-1,frame.bottom-2,0xFFFFFFFF); } diff --git a/src/game/landscape/C4Landscape.cpp b/src/game/landscape/C4Landscape.cpp index 68a4e31dc..af5798ae2 100644 --- a/src/game/landscape/C4Landscape.cpp +++ b/src/game/landscape/C4Landscape.cpp @@ -273,16 +273,16 @@ void C4Landscape::ScanSideOpen() void C4Landscape::Draw(C4TargetFacet &cgo, int32_t iPlayer) { - if (Modulation) lpDDraw->ActivateBlitModulation(Modulation); + if (Modulation) pDraw->ActivateBlitModulation(Modulation); // blit landscape if (::GraphicsSystem.ShowSolidMask) - lpDDraw->Blit8Fast(Surface8, cgo.TargetX, cgo.TargetY, cgo.Surface, cgo.X,cgo.Y,cgo.Wdt,cgo.Hgt); + pDraw->Blit8Fast(Surface8, cgo.TargetX, cgo.TargetY, cgo.Surface, cgo.X,cgo.Y,cgo.Wdt,cgo.Hgt); else if(pLandscapeRender) { DoRelights(); pLandscapeRender->Draw(cgo); } - if (Modulation) lpDDraw->DeactivateBlitModulation(); + if (Modulation) pDraw->DeactivateBlitModulation(); } bool C4Landscape::DoRelights() @@ -1845,7 +1845,7 @@ bool C4Landscape::MapToSurface(CSurface8 * sfcMap, int32_t iMapX, int32_t iMapY, // assign clipper Surface8->Clip(iToX,iToY,iToX+iToWdt-1,iToY+iToHgt-1); - lpDDraw->NoPrimaryClipper(); + pDraw->NoPrimaryClipper(); // Enlarge map segment for chunky rim iMapX-=2+MaterialMap.max_shape_width/MapZoom; @@ -2866,7 +2866,7 @@ bool C4Landscape::DrawChunks(int32_t tx, int32_t ty, int32_t wdt, int32_t hgt, i // assign clipper Surface8->Clip(BoundingBox.x,BoundingBox.y,BoundingBox.x+BoundingBox.Wdt,BoundingBox.y+BoundingBox.Hgt); - lpDDraw->NoPrimaryClipper(); + pDraw->NoPrimaryClipper(); // draw all chunks int32_t x, y; diff --git a/src/game/landscape/C4LandscapeRenderClassic.cpp b/src/game/landscape/C4LandscapeRenderClassic.cpp index 678b44747..59854b995 100644 --- a/src/game/landscape/C4LandscapeRenderClassic.cpp +++ b/src/game/landscape/C4LandscapeRenderClassic.cpp @@ -22,7 +22,7 @@ bool C4LandscapeRenderClassic::Init(int32_t iWidth, int32_t iHeight, C4TextureMa // Create surface Surface32 = new C4Surface(); // without shaders, the FoW is only as detailed as the landscape has tiles. - if(!Surface32->Create(iWidth, iHeight,false,false,lpDDraw->IsShaderific() ? 0 : 64)) + if(!Surface32->Create(iWidth, iHeight,false,false,pDraw->IsShaderific() ? 0 : 64)) return false; // Safe back info this->iWidth = iWidth; @@ -116,6 +116,6 @@ void C4LandscapeRenderClassic::Update(C4Rect To, C4Landscape *pSource) void C4LandscapeRenderClassic::Draw(const C4TargetFacet &cgo) { - lpDDraw->BlitLandscape(Surface32, cgo.TargetX, cgo.TargetY, cgo.Surface, + pDraw->BlitLandscape(Surface32, cgo.TargetX, cgo.TargetY, cgo.Surface, cgo.X, cgo.Y, cgo.Wdt, cgo.Hgt, 0); } diff --git a/src/game/landscape/C4PXS.cpp b/src/game/landscape/C4PXS.cpp index b81fca9a1..6646cdddf 100644 --- a/src/game/landscape/C4PXS.cpp +++ b/src/game/landscape/C4PXS.cpp @@ -273,14 +273,14 @@ void C4PXSSystem::Draw(C4TargetFacet &cgo) // lines for stuff that goes whooosh! int len = fixtoi(Abs(pxp->xdir) + Abs(pxp->ydir)); dwMatClr = uint32_t(Max(dwMatClr >> 24, 195 - (195 - (dwMatClr >> 24)) / len)) << 24 | (dwMatClr & 0xffffff); - lpDDraw->DrawLineDw(cgo.Surface, + pDraw->DrawLineDw(cgo.Surface, fixtof(pxp->x - pxp->xdir) + cgox, fixtof(pxp->y - pxp->ydir) + cgoy, fixtof(pxp->x) + cgox, fixtof(pxp->y) + cgoy, dwMatClr); } else // single pixels for slow stuff - lpDDraw->DrawPix(cgo.Surface, fixtof(pxp->x) + cgox, fixtof(pxp->y) + cgoy, dwMatClr); + pDraw->DrawPix(cgo.Surface, fixtof(pxp->x) + cgox, fixtof(pxp->y) + cgoy, dwMatClr); } } diff --git a/src/game/landscape/C4Particles.cpp b/src/game/landscape/C4Particles.cpp index ebda21883..f43910405 100644 --- a/src/game/landscape/C4Particles.cpp +++ b/src/game/landscape/C4Particles.cpp @@ -646,18 +646,18 @@ void fxSmokeDraw(C4Particle *particle, C4TargetFacet &cgo, C4Object *target) int32_t px = i/4; int32_t py = i%4; // draw at pos - lpDDraw->ActivateBlitModulation(particle->b); + pDraw->ActivateBlitModulation(particle->b); float fx = float(def->Gfx.X + def->Gfx.Wdt * px); float fy = float(def->Gfx.Y + def->Gfx.Hgt * py); float fwdt = float(def->Gfx.Wdt); float fhgt = float(def->Gfx.Hgt); - lpDDraw->Blit(def->Gfx.Surface,fx,fy,fwdt,fhgt, + pDraw->Blit(def->Gfx.Surface,fx,fy,fwdt,fhgt, cgo.Surface, cx - particle->a, cy - particle->a, particle->a * 2, particle->a * 2, true); - lpDDraw->DeactivateBlitModulation(); + pDraw->DeactivateBlitModulation(); } bool fxStdInit(C4Particle *particle, C4Object *target) @@ -864,11 +864,11 @@ void fxStdDraw(C4Particle *particle, C4TargetFacet &cgo, C4Object *target) if (def->RByV == 3) // random rotation - currently a pseudo random rotation by x/y position r = (((int32_t)(particle->x * 23 + particle->y * 12)) % 360) * 100; // draw at pos - lpDDraw->ActivateBlitModulation(particle->b); - lpDDraw->StorePrimaryClipper(); - lpDDraw->SubPrimaryClipper(cgox, cgoy+def->YOff, 100000, 100000); + pDraw->ActivateBlitModulation(particle->b); + pDraw->StorePrimaryClipper(); + pDraw->SubPrimaryClipper(cgox, cgoy+def->YOff, 100000, 100000); if (def->Additive) - lpDDraw->SetBlitMode(C4GFXBLIT_ADDITIVE); + pDraw->SetBlitMode(C4GFXBLIT_ADDITIVE); // draw float draw_width = particle->a; @@ -890,20 +890,20 @@ void fxStdDraw(C4Particle *particle, C4TargetFacet &cgo, C4Object *target) { C4BltTransform rot; rot.SetRotate(r, (float) (tx+tx+twdt)/2, (float) (ty+ty+thgt)/2); - lpDDraw->Blit(def->Gfx.Surface,fx,fy,fwdt,fhgt, + pDraw->Blit(def->Gfx.Surface,fx,fy,fwdt,fhgt, cgo.Surface,tx,ty,twdt,thgt, true,&rot); } else { - lpDDraw->Blit(def->Gfx.Surface,fx,fy,fwdt,fhgt, + pDraw->Blit(def->Gfx.Surface,fx,fy,fwdt,fhgt, cgo.Surface,tx,ty,twdt,thgt, true); } - lpDDraw->ResetBlitMode(); - lpDDraw->RestorePrimaryClipper(); - lpDDraw->DeactivateBlitModulation(); + pDraw->ResetBlitMode(); + pDraw->RestorePrimaryClipper(); + pDraw->DeactivateBlitModulation(); } C4ParticleProcRec C4ParticleProcMap[] = diff --git a/src/game/landscape/C4PathFinder.cpp b/src/game/landscape/C4PathFinder.cpp index 01dd28178..67d6340ad 100644 --- a/src/game/landscape/C4PathFinder.cpp +++ b/src/game/landscape/C4PathFinder.cpp @@ -255,27 +255,27 @@ void C4PathFinderRay::Draw(C4TargetFacet &cgo) if (Status==C4PF_Ray_Crawl) { int32_t iX=0,iY=0; CrawlToAttach(iX,iY,CrawlAttach); - lpDDraw->DrawLineDw(cgo.Surface, + pDraw->DrawLineDw(cgo.Surface, cgo.X+X2-cgo.TargetX,cgo.Y+Y2-cgo.TargetY, cgo.X+X2-cgo.TargetX+7*iX,cgo.Y+Y2-cgo.TargetY+7*iY, C4RGB(0xff, 0, 0)); - //sprintf(OSTR,"%d",Depth); lpDDraw->TextOut(OSTR,cgo.Surface,cgo.X+X2-cgo.TargetX,cgo.Y+Y2-cgo.TargetY+20,CGray4); + //sprintf(OSTR,"%d",Depth); pDraw->TextOut(OSTR,cgo.Surface,cgo.X+X2-cgo.TargetX,cgo.Y+Y2-cgo.TargetY+20,CGray4); } // Ray line - lpDDraw->DrawLineDw(cgo.Surface, + pDraw->DrawLineDw(cgo.Surface, cgo.X+X-cgo.TargetX,cgo.Y+Y-cgo.TargetY, cgo.X+X2-cgo.TargetX,cgo.Y+Y2-cgo.TargetY, Color); // Crawler point - lpDDraw->DrawFrameDw(cgo.Surface, + pDraw->DrawFrameDw(cgo.Surface, cgo.X+X2-cgo.TargetX-1,cgo.Y+Y2-cgo.TargetY-1, cgo.X+X2-cgo.TargetX+1,cgo.Y+Y2-cgo.TargetY+1, (Status==C4PF_Ray_Crawl) ? ((Direction==C4PF_Direction_Left) ? C4RGB(0, 0xff, 0) : C4RGB(0, 0, 0xff)) : Color); // Search target point - lpDDraw->DrawFrameDw(cgo.Surface, + pDraw->DrawFrameDw(cgo.Surface, cgo.X+TargetX-cgo.TargetX-2,cgo.Y+TargetY-cgo.TargetY-2, cgo.X+TargetX-cgo.TargetX+2,cgo.Y+TargetY-cgo.TargetY+2, C4RGB(0xff, 0xff, 0)); @@ -345,7 +345,7 @@ bool C4PathFinderRay::PathFree(int32_t &rX, int32_t &rY, int32_t iToX, int32_t i d=2*dx-dy; aincr=2*(dx-dy); bincr=2*dx; x=rX; y=rY; for (y=rY; y!=iToY; y+=yincr) { - lpDDraw->SetPixel(sfcSurface,x,y,byCol); + pDraw->SetPixel(sfcSurface,x,y,byCol); if (d>=0) { x+=xincr; d+=aincr; } else d+=bincr; } } @@ -358,7 +358,7 @@ bool C4PathFinderRay::PathFree(int32_t &rX, int32_t &rY, int32_t iToX, int32_t i d=2*dy-dx; aincr=2*(dy-dx); bincr=2*dy; x=rX; y=rY; for (x=rX; x!=iToX; x+=xincr) { - lpDDraw->SetPixel(sfcSurface,x,y,byCol); + pDraw->SetPixel(sfcSurface,x,y,byCol); if (d>=0) { y+=yincr; d+=aincr; } else d+=bincr; } } diff --git a/src/game/landscape/C4Sky.cpp b/src/game/landscape/C4Sky.cpp index 3f2581d25..e2152af83 100644 --- a/src/game/landscape/C4Sky.cpp +++ b/src/game/landscape/C4Sky.cpp @@ -43,16 +43,16 @@ static bool SurfaceEnsureSize(C4Surface **ppSfc, int iMinWdt, int iMinHgt) while (iDstWdtIsShaderific()) return true; + if (iDstWdt==iWdt && iDstHgt==iHgt && pDraw->IsShaderific()) return true; // create new surface C4Surface *pNewSfc=new C4Surface(); - if (!pNewSfc->Create(iDstWdt, iDstHgt, false, false, lpDDraw->IsShaderific() ? 0 : 64)) + if (!pNewSfc->Create(iDstWdt, iDstHgt, false, false, pDraw->IsShaderific() ? 0 : 64)) { delete pNewSfc; return false; } // blit tiled into dest surface - lpDDraw->BlitSurfaceTile2(*ppSfc, pNewSfc, 0, 0, iDstWdt, iDstHgt, 0, 0, false); + pDraw->BlitSurfaceTile2(*ppSfc, pNewSfc, 0, 0, iDstWdt, iDstHgt, 0, 0, false); // destroy old surface, assign new delete *ppSfc; *ppSfc=pNewSfc; // success @@ -200,9 +200,9 @@ void C4Sky::Execute() void C4Sky::Draw(C4TargetFacet &cgo) { // background color? - if (BackClrEnabled) lpDDraw->DrawBoxDw(cgo.Surface, cgo.X, cgo.Y, cgo.X+cgo.Wdt, cgo.Y+cgo.Hgt, BackClr); + if (BackClrEnabled) pDraw->DrawBoxDw(cgo.Surface, cgo.X, cgo.Y, cgo.X+cgo.Wdt, cgo.Y+cgo.Hgt, BackClr); // sky surface? - if (Modulation != 0xffffffff) lpDDraw->ActivateBlitModulation(Modulation); + if (Modulation != 0xffffffff) pDraw->ActivateBlitModulation(Modulation); if (Surface) { // blit parallax sky @@ -224,16 +224,16 @@ void C4Sky::Draw(C4TargetFacet &cgo) ZoomDataStackItem zdsi(resultzoom); - lpDDraw->BlitSurfaceTile2(Surface, cgo.Surface, cgo.X, cgo.Y, cgo.Wdt * zoom / resultzoom, cgo.Hgt * zoom / resultzoom, -resultx, -resulty, false); + pDraw->BlitSurfaceTile2(Surface, cgo.Surface, cgo.X, cgo.Y, cgo.Wdt * zoom / resultzoom, cgo.Hgt * zoom / resultzoom, -resultx, -resulty, false); } else { // no sky surface: blit sky fade DWORD dwClr1=GetSkyFadeClr(cgo.TargetY); DWORD dwClr2=GetSkyFadeClr(cgo.TargetY+cgo.Hgt); - lpDDraw->DrawBoxFade(cgo.Surface, cgo.X, cgo.Y, cgo.Wdt, cgo.Hgt, dwClr1, dwClr1, dwClr2, dwClr2, cgo.TargetX, cgo.TargetY); + pDraw->DrawBoxFade(cgo.Surface, cgo.X, cgo.Y, cgo.Wdt, cgo.Hgt, dwClr1, dwClr1, dwClr2, dwClr2, cgo.TargetX, cgo.TargetY); } - if (Modulation != 0xffffffff) lpDDraw->DeactivateBlitModulation(); + if (Modulation != 0xffffffff) pDraw->DeactivateBlitModulation(); // done } diff --git a/src/game/landscape/C4Weather.cpp b/src/game/landscape/C4Weather.cpp index 12e28f335..eaf563fb7 100644 --- a/src/game/landscape/C4Weather.cpp +++ b/src/game/landscape/C4Weather.cpp @@ -186,7 +186,7 @@ void C4Weather::SetSeasonGamma() dwClr[i] |= BoundBy(iChanVal,0,255)<SetGamma(dwClr[0], dwClr[1], dwClr[2], C4GRI_SEASON); + pDraw->SetGamma(dwClr[0], dwClr[1], dwClr[2], C4GRI_SEASON); } void C4Weather::CompileFunc(StdCompiler *pComp) @@ -207,7 +207,7 @@ void C4Weather::CompileFunc(StdCompiler *pComp) dwGammaDefaults[i*3+1] = 0x808080; dwGammaDefaults[i*3+2] = 0xffffff; } - pComp->Value(mkNamingAdapt(mkArrayAdaptM(lpDDraw->dwGamma), "Gamma", dwGammaDefaults)); + pComp->Value(mkNamingAdapt(mkArrayAdaptM(pDraw->dwGamma), "Gamma", dwGammaDefaults)); } C4Weather Weather; diff --git a/src/game/object/C4Def.cpp b/src/game/object/C4Def.cpp index 78db7989c..2e5edb98c 100644 --- a/src/game/object/C4Def.cpp +++ b/src/game/object/C4Def.cpp @@ -548,7 +548,7 @@ void C4Def::Draw(C4Facet &cgo, bool fSelected, DWORD iColor, C4Object *pObj, int if (pObj) if (pObj->PictureRect.Wdt) fctPicRect = pObj->PictureRect; if (fSelected) - lpDDraw->DrawBoxDw(cgo.Surface, cgo.X, cgo.Y, cgo.X + cgo.Wdt - 1, cgo.Y + cgo.Hgt - 1, C4RGB(0xca, 0, 0)); + pDraw->DrawBoxDw(cgo.Surface, cgo.X, cgo.Y, cgo.X + cgo.Wdt - 1, cgo.Y + cgo.Hgt - 1, C4RGB(0xca, 0, 0)); C4DefGraphics* graphics = pObj ? pObj->GetGraphics() : &Graphics; @@ -581,12 +581,12 @@ void C4Def::Draw(C4Facet &cgo, bool fSelected, DWORD iColor, C4Object *pObj, int StdMeshMatrix matrix; if (C4ValueToMatrix(value, &matrix)) - lpDDraw->SetMeshTransform(&matrix); + pDraw->SetMeshTransform(&matrix); - lpDDraw->SetPerspective(true); - lpDDraw->RenderMesh(*instance, cgo.Surface, cgo.X,cgo.Y, cgo.Wdt, cgo.Hgt, pObj ? pObj->Color : iColor, trans); - lpDDraw->SetPerspective(false); - lpDDraw->SetMeshTransform(NULL); + pDraw->SetPerspective(true); + pDraw->RenderMesh(*instance, cgo.Surface, cgo.X,cgo.Y, cgo.Wdt, cgo.Hgt, pObj ? pObj->Color : iColor, trans); + pDraw->SetPerspective(false); + pDraw->SetMeshTransform(NULL); break; } diff --git a/src/game/object/C4DefGraphics.cpp b/src/game/object/C4DefGraphics.cpp index ea229dd61..fdf2aa8c0 100644 --- a/src/game/object/C4DefGraphics.cpp +++ b/src/game/object/C4DefGraphics.cpp @@ -865,8 +865,8 @@ void C4GraphicsOverlay::Draw(C4TargetFacet &cgo, C4Object *pForObj, int32_t iByP (OverlayObj ? static_cast(OverlayObj) : pForObj)->PrepareDrawing(); else { - lpDDraw->SetBlitMode(dwBlitMode); - if (dwClrModulation != 0xffffff) lpDDraw->ActivateBlitModulation(dwClrModulation); + pDraw->SetBlitMode(dwBlitMode); + if (dwClrModulation != 0xffffff) pDraw->ActivateBlitModulation(dwClrModulation); if (pMeshInstance) pMeshInstance->SetFaceOrderingForClrModulation(dwClrModulation); @@ -953,10 +953,10 @@ void C4GraphicsOverlay::Draw(C4TargetFacet &cgo, C4Object *pForObj, int32_t iByP pDef->GetProperty(P_MeshTransformation, &value); StdMeshMatrix matrix; if (C4ValueToMatrix(value, &matrix)) - lpDDraw->SetMeshTransform(&matrix); + pDraw->SetMeshTransform(&matrix); - lpDDraw->RenderMesh(*pMeshInstance, cgo.Surface, offX - pDef->Shape.Wdt/2.0, offY - pDef->Shape.Hgt/2.0, pDef->Shape.Wdt, pDef->Shape.Hgt, pForObj->Color, &trf); - lpDDraw->SetMeshTransform(NULL); + pDraw->RenderMesh(*pMeshInstance, cgo.Surface, offX - pDef->Shape.Wdt/2.0, offY - pDef->Shape.Hgt/2.0, pDef->Shape.Wdt, pDef->Shape.Hgt, pForObj->Color, &trf); + pDraw->SetMeshTransform(NULL); } else { @@ -978,13 +978,13 @@ void C4GraphicsOverlay::Draw(C4TargetFacet &cgo, C4Object *pForObj, int32_t iByP pDef->GetProperty(P_PictureTransformation, &value); StdMeshMatrix matrix; if (C4ValueToMatrix(value, &matrix)) - lpDDraw->SetMeshTransform(&matrix); + pDraw->SetMeshTransform(&matrix); C4DrawTransform trf(Transform, offX, offY); - lpDDraw->SetPerspective(true); - lpDDraw->RenderMesh(*pMeshInstance, cgo.Surface, offX - twdt/2, offY - thgt/2, twdt, thgt, pForObj->Color, &trf); - lpDDraw->SetPerspective(false); - lpDDraw->SetMeshTransform(NULL); + pDraw->SetPerspective(true); + pDraw->RenderMesh(*pMeshInstance, cgo.Surface, offX - twdt/2, offY - thgt/2, twdt, thgt, pForObj->Color, &trf); + pDraw->SetPerspective(false); + pDraw->SetMeshTransform(NULL); } } @@ -993,8 +993,8 @@ void C4GraphicsOverlay::Draw(C4TargetFacet &cgo, C4Object *pForObj, int32_t iByP (OverlayObj ? static_cast(OverlayObj) : pForObj)->FinishedDrawing(); else { - lpDDraw->ResetBlitMode(); - lpDDraw->DeactivateBlitModulation(); + pDraw->ResetBlitMode(); + pDraw->DeactivateBlitModulation(); } } @@ -1031,8 +1031,8 @@ void C4GraphicsOverlay::DrawPicture(C4Facet &cgo, C4Object *pForObj, C4DrawTrans } else { - lpDDraw->SetBlitMode(dwBlitMode); - if (dwClrModulation != 0xffffff) lpDDraw->ActivateBlitModulation(dwClrModulation); + pDraw->SetBlitMode(dwBlitMode); + if (dwClrModulation != 0xffffff) pDraw->ActivateBlitModulation(dwClrModulation); if (pMeshInstance) pMeshInstance->SetFaceOrderingForClrModulation(dwClrModulation); @@ -1056,7 +1056,7 @@ void C4GraphicsOverlay::DrawPicture(C4Facet &cgo, C4Object *pForObj, C4DrawTrans pDef->GetProperty(P_PictureTransformation, &value); StdMeshMatrix matrix; if (C4ValueToMatrix(value, &matrix)) - lpDDraw->SetMeshTransform(&matrix); + pDraw->SetMeshTransform(&matrix); // the picture we are rendering is the one with trans applied, and the overlay transformation // is applied to the picture we are rendering, so apply it afterwards. Note that @@ -1064,10 +1064,10 @@ void C4GraphicsOverlay::DrawPicture(C4Facet &cgo, C4Object *pForObj, C4DrawTrans C4DrawTransform trf(Transform, cgo.X+float(pForObj->Shape.Wdt)/2, cgo.Y+float(pForObj->Shape.Hgt)/2); if(trans) trf *= *trans; - lpDDraw->SetPerspective(true); - lpDDraw->RenderMesh(*pMeshInstance, cgo.Surface, cgo.X, cgo.Y, pForObj->Shape.Wdt, pForObj->Shape.Hgt, pForObj->Color, &trf); - lpDDraw->SetPerspective(false); - lpDDraw->SetMeshTransform(NULL); + pDraw->SetPerspective(true); + pDraw->RenderMesh(*pMeshInstance, cgo.Surface, cgo.X, cgo.Y, pForObj->Shape.Wdt, pForObj->Shape.Hgt, pForObj->Color, &trf); + pDraw->SetPerspective(false); + pDraw->SetMeshTransform(NULL); } // cleanup if (dwBlitMode == C4GFXBLIT_PARENT) @@ -1076,8 +1076,8 @@ void C4GraphicsOverlay::DrawPicture(C4Facet &cgo, C4Object *pForObj, C4DrawTrans } else { - lpDDraw->ResetBlitMode(); - lpDDraw->DeactivateBlitModulation(); + pDraw->ResetBlitMode(); + pDraw->DeactivateBlitModulation(); } } diff --git a/src/game/object/C4IDList.cpp b/src/game/object/C4IDList.cpp index e317f9acb..3a46217d9 100644 --- a/src/game/object/C4IDList.cpp +++ b/src/game/object/C4IDList.cpp @@ -411,7 +411,7 @@ void C4IDList::Draw(C4Facet &cgo, int32_t iSelection, cgo2 = cgo.TruncateSection(iAlign); rDefs.Draw(c_id,cgo2,(firstid+cnt==iSelection),0); sprintf(buf,"%dx",idcount); - if (fCounts) lpDDraw->TextOut(buf, ::GraphicsResource.FontRegular, 1.0, cgo2.Surface,cgo2.X+cgo2.Wdt-1, cgo2.Y + cgo2.Hgt - 1 - ::GraphicsResource.FontRegular.iLineHgt,CStdDDraw::DEFAULT_MESSAGE_COLOR,ARight); + if (fCounts) pDraw->TextOut(buf, ::GraphicsResource.FontRegular, 1.0, cgo2.Surface,cgo2.X+cgo2.Wdt-1, cgo2.Y + cgo2.Hgt - 1 - ::GraphicsResource.FontRegular.iLineHgt,CStdDDraw::DEFAULT_MESSAGE_COLOR,ARight); } } diff --git a/src/game/object/C4Object.cpp b/src/game/object/C4Object.cpp index caf8c8ebf..a0a943149 100644 --- a/src/game/object/C4Object.cpp +++ b/src/game/object/C4Object.cpp @@ -131,9 +131,9 @@ static void DrawVertex(C4Facet &cgo, int32_t tx, int32_t ty, int32_t col, int32_ { if (Inside(tx,cgo.X,cgo.X+cgo.Wdt) && Inside(ty,cgo.Y,cgo.Y+cgo.Hgt)) { - lpDDraw->DrawLineDw(cgo.Surface, tx - 1, ty, tx + 1, ty, col); - lpDDraw->DrawLineDw(cgo.Surface, tx, ty - 1, tx, ty + 1, col); - if (contact) lpDDraw->DrawFrameDw(cgo.Surface,tx-2,ty-2,tx+2,ty+2,C4RGB(0xff, 0xff, 0xff)); + pDraw->DrawLineDw(cgo.Surface, tx - 1, ty, tx + 1, ty, col); + pDraw->DrawLineDw(cgo.Surface, tx, ty - 1, tx, ty + 1, col); + if (contact) pDraw->DrawFrameDw(cgo.Surface,tx-2,ty-2,tx+2,ty+2,C4RGB(0xff, 0xff, 0xff)); } } @@ -544,7 +544,7 @@ void C4Object::DrawFaceImpl(C4TargetFacet &cgo, bool action, float fx, float fy, case C4DefGraphics::TYPE_Bitmap: sfc = action ? Action.Facet.Surface : GetGraphics()->GetBitmap(Color); - lpDDraw->Blit(sfc, + pDraw->Blit(sfc, fx, fy, fwdt, fhgt, cgo.Surface, tx, ty, twdt, thgt, true, transform); @@ -564,10 +564,10 @@ void C4Object::DrawFaceImpl(C4TargetFacet &cgo, bool action, float fx, float fy, matrix = StdMeshMatrix::Scale(twdt/fwdt,thgt/fhgt,std::sqrt(twdt*thgt/(fwdt*fhgt))) * matrix; } - lpDDraw->SetMeshTransform(&matrix); + pDraw->SetMeshTransform(&matrix); - lpDDraw->RenderMesh(*pMeshInstance, cgo.Surface, tx, ty, twdt, thgt, Color, transform); - lpDDraw->SetMeshTransform(NULL); + pDraw->RenderMesh(*pMeshInstance, cgo.Surface, tx, ty, twdt, thgt, Color, transform); + pDraw->SetMeshTransform(NULL); break; } } @@ -602,7 +602,7 @@ void C4Object::DrawFace(C4TargetFacet &cgo, float offX, float offY, int32_t iPha if ((!Def->Rotateable || (r==0)) && !pDrawTransform) { DrawFaceImpl(cgo, false, fx, fy, fwdt, fhgt, tx, ty, twdt, thgt, NULL); - /* lpDDraw->Blit(GetGraphics()->GetBitmap(Color), + /* pDraw->Blit(GetGraphics()->GetBitmap(Color), fx, fy, fwdt, fhgt, cgo.Surface, tx, ty, twdt, thgt, true, NULL);*/ @@ -621,7 +621,7 @@ void C4Object::DrawFace(C4TargetFacet &cgo, float offX, float offY, int32_t iPha rot.SetRotate(r * 100, offX, offY); } DrawFaceImpl(cgo, false, fx, fy, fwdt, fhgt, tx, ty, twdt, thgt, &rot); - /* lpDDraw->Blit(GetGraphics()->GetBitmap(Color), + /* pDraw->Blit(GetGraphics()->GetBitmap(Color), fx, fy, fwdt, fhgt, cgo.Surface, tx, ty, twdt, thgt, true, &rot);*/ @@ -675,7 +675,7 @@ void C4Object::DrawActionFace(C4TargetFacet &cgo, float offX, float offY) if ((!Def->Rotateable || (r==0)) && !pDrawTransform) { DrawFaceImpl(cgo, true, fx, fy, fwdt, fhgt, tx, ty, twdt, thgt, NULL); - /*lpDDraw->Blit(Action.Facet.Surface, + /*pDraw->Blit(Action.Facet.Surface, fx, fy, fwdt, fhgt, cgo.Surface, tx, ty, twdt, thgt, true, NULL);*/ @@ -696,7 +696,7 @@ void C4Object::DrawActionFace(C4TargetFacet &cgo, float offX, float offY) rot.SetRotate(r * 100, offX, offY); } DrawFaceImpl(cgo, true, fx, fy, fwdt, fhgt, tx, ty, twdt, thgt, &rot); - /* lpDDraw->Blit(Action.Facet.Surface, + /* pDraw->Blit(Action.Facet.Surface, fx, fy, fwdt, fhgt, cgo.Surface, tx, ty, twdt, thgt, true, &rot);*/ @@ -1976,8 +1976,8 @@ void C4Object::Draw(C4TargetFacet &cgo, int32_t iByPlayer, DrawMode eDrawMode, f GetDrawPosition(cgo, pCom->Tx._getInt(), pCom->Ty, cgo.Zoom, offX2, offY2, newzoom)) { ZoomDataStackItem zdsi(newzoom); - lpDDraw->DrawLineDw(cgo.Surface,offX1,offY1,offX2,offY2,C4RGB(0xca,0,0)); - lpDDraw->DrawFrameDw(cgo.Surface,offX2-1,offY2-1,offX2+1,offY2+1,C4RGB(0xca,0,0)); + pDraw->DrawLineDw(cgo.Surface,offX1,offY1,offX2,offY2,C4RGB(0xca,0,0)); + pDraw->DrawFrameDw(cgo.Surface,offX2-1,offY2-1,offX2+1,offY2+1,C4RGB(0xca,0,0)); } ccx=pCom->Tx._getInt(); ccy=pCom->Ty; @@ -2006,8 +2006,8 @@ void C4Object::Draw(C4TargetFacet &cgo, int32_t iByPlayer, DrawMode eDrawMode, f GetDrawPosition(cgo, pCom->Tx._getInt(), pCom->Ty, cgo.Zoom, offX2, offY2, newzoom)) { ZoomDataStackItem zdsi(newzoom); - lpDDraw->DrawLineDw(cgo.Surface,offX1,offY1,offX2,offY2,C4RGB(0,0xca,0)); - lpDDraw->DrawFrameDw(cgo.Surface,offX2-1,offY2-1,offX2+1,offY2+1,C4RGB(0,0xca,0)); + pDraw->DrawLineDw(cgo.Surface,offX1,offY1,offX2,offY2,C4RGB(0,0xca,0)); + pDraw->DrawFrameDw(cgo.Surface,offX2-1,offY2-1,offX2+1,offY2+1,C4RGB(0,0xca,0)); } ccx=pCom->Tx._getInt(); ccy=pCom->Ty; @@ -2034,7 +2034,7 @@ void C4Object::Draw(C4TargetFacet &cgo, int32_t iByPlayer, DrawMode eDrawMode, f if (iMoveTos) { Cmds.AppendChar('|'); Cmds.AppendFormat("%dx MoveTo",iMoveTos); iMoveTos=0; } // Draw message int32_t cmwdt,cmhgt; ::GraphicsResource.FontRegular.GetTextExtent(Cmds.getData(),cmwdt,cmhgt,true); - lpDDraw->TextOut(Cmds.getData(), ::GraphicsResource.FontRegular, 1.0, cgo.Surface,offX,offY+Shape.GetY()-10-cmhgt,CStdDDraw::DEFAULT_MESSAGE_COLOR,ACenter); + pDraw->TextOut(Cmds.getData(), ::GraphicsResource.FontRegular, 1.0, cgo.Surface,offX,offY+Shape.GetY()-10-cmhgt,CStdDDraw::DEFAULT_MESSAGE_COLOR,ACenter); } // Debug Display /////////////////////////////////////////////////////////////////////////////// @@ -2053,8 +2053,8 @@ void C4Object::Draw(C4TargetFacet &cgo, int32_t iByPlayer, DrawMode eDrawMode, f bool fOldClrModEnabled = !!(Category & C4D_IgnoreFoW); if (fOldClrModEnabled) { - fOldClrModEnabled = lpDDraw->GetClrModMapEnabled(); - lpDDraw->SetClrModMapEnabled(false); + fOldClrModEnabled = pDraw->GetClrModMapEnabled(); + pDraw->SetClrModMapEnabled(false); } // Fire facet - always draw, even if particles are drawn as well @@ -2100,7 +2100,7 @@ void C4Object::Draw(C4TargetFacet &cgo, int32_t iByPlayer, DrawMode eDrawMode, f if (Action.Facet.Surface && pActionDef->GetPropertyInt(P_FacetTargetStretch)) { if (Action.Target) - lpDDraw->Blit(Action.Facet.Surface, + pDraw->Blit(Action.Facet.Surface, float(Action.Facet.X),float(Action.Facet.Y),float(Action.Facet.Wdt),float(Action.Facet.Hgt), cgo.Surface, offX + Shape.GetX() + Action.FacetX, offY + Shape.GetY() + Action.FacetY,Action.Facet.Wdt, @@ -2141,13 +2141,13 @@ void C4Object::Draw(C4TargetFacet &cgo, int32_t iByPlayer, DrawMode eDrawMode, f if (::GraphicsSystem.ShowEntrance) if (eDrawMode!=ODM_BaseOnly) { if (OCF & OCF_Entrance) - lpDDraw->DrawFrameDw(cgo.Surface,offX+Def->Entrance.x, + pDraw->DrawFrameDw(cgo.Surface,offX+Def->Entrance.x, offY+Def->Entrance.y, offX+Def->Entrance.x+Def->Entrance.Wdt-1, offY+Def->Entrance.y+Def->Entrance.Hgt-1, C4RGB(0, 0, 0xff)); if (OCF & OCF_Collection) - lpDDraw->DrawFrameDw(cgo.Surface,offX+Def->Collection.x, + pDraw->DrawFrameDw(cgo.Surface,offX+Def->Collection.x, offY+Def->Collection.y, offX+Def->Collection.x+Def->Collection.Wdt-1, offY+Def->Collection.y+Def->Collection.Hgt-1, @@ -2161,7 +2161,7 @@ void C4Object::Draw(C4TargetFacet &cgo, int32_t iByPlayer, DrawMode eDrawMode, f StdStrBuf str; str.Format("%s (%d)",pActionDef->GetName(),Action.Phase); int32_t cmwdt,cmhgt; ::GraphicsResource.FontRegular.GetTextExtent(str.getData(),cmwdt,cmhgt,true); - lpDDraw->TextOut(str.getData(), ::GraphicsResource.FontRegular, + pDraw->TextOut(str.getData(), ::GraphicsResource.FontRegular, 1.0, cgo.Surface, offX, offY + Shape.GetY() - cmhgt, InLiquid ? 0xfa0000FF : CStdDDraw::DEFAULT_MESSAGE_COLOR, ACenter); } @@ -2169,7 +2169,7 @@ void C4Object::Draw(C4TargetFacet &cgo, int32_t iByPlayer, DrawMode eDrawMode, f // Debug Display /////////////////////////////////////////////////////////////////////// // Restore visibility inside FoW - if (fOldClrModEnabled) lpDDraw->SetClrModMapEnabled(fOldClrModEnabled); + if (fOldClrModEnabled) pDraw->SetClrModMapEnabled(fOldClrModEnabled); } @@ -2219,7 +2219,7 @@ void C4Object::DrawTopFace(C4TargetFacet &cgo, int32_t iByPlayer, DrawMode eDraw iTX = BoundBy(offX, cgo.X + iTWdt / 2, cgo.X + cgo.Wdt - iTWdt / 2); iTY = BoundBy(offY - Def->Shape.Hgt / 2 - 20 - iTHgt, cgo.Y, cgo.Y + cgo.Hgt - iTHgt); // Draw - lpDDraw->TextOut(szText, ::GraphicsResource.FontRegular, 1.0, cgo.Surface, iTX, iTY, + pDraw->TextOut(szText, ::GraphicsResource.FontRegular, 1.0, cgo.Surface, iTX, iTY, pOwner->ColorDw|0x7f000000,ACenter); } } @@ -2238,7 +2238,7 @@ void C4Object::DrawTopFace(C4TargetFacet &cgo, int32_t iByPlayer, DrawMode eDraw if (eDrawMode!=ODM_BaseOnly) { C4Facet &fctConSign = ::GraphicsResource.fctConstruction; - lpDDraw->Blit(fctConSign.Surface, + pDraw->Blit(fctConSign.Surface, fctConSign.X, fctConSign.Y, fctConSign.Wdt, fctConSign.Hgt, cgo.Surface, @@ -2261,7 +2261,7 @@ void C4Object::DrawTopFace(C4TargetFacet &cgo, int32_t iByPlayer, DrawMode eDraw // Draw top face bitmap if (Con!=FullCon && Def->GrowthType) // stretched - lpDDraw->Blit(TopFace.Surface, + pDraw->Blit(TopFace.Surface, TopFace.X, TopFace.Y, TopFace.Wdt, TopFace.Hgt, cgo.Surface, offX + Shape.GetX() + float(Def->TopFace.tx * Con) / FullCon, offY + Shape.GetY() + float(Def->TopFace.ty * Con) / FullCon, @@ -2269,7 +2269,7 @@ void C4Object::DrawTopFace(C4TargetFacet &cgo, int32_t iByPlayer, DrawMode eDraw true, pDrawTransform ? &C4DrawTransform(*pDrawTransform, offX, offY) : NULL); else // normal - lpDDraw->Blit(TopFace.Surface, + pDraw->Blit(TopFace.Surface, TopFace.X,TopFace.Y, TopFace.Wdt,TopFace.Hgt, cgo.Surface, @@ -4275,17 +4275,17 @@ void C4Object::SetRotation(int32_t nr) void C4Object::PrepareDrawing() { // color modulation - if (ColorMod != 0xffffffff || (BlitMode & (C4GFXBLIT_MOD2 | C4GFXBLIT_CLRSFC_MOD2))) lpDDraw->ActivateBlitModulation(ColorMod); + if (ColorMod != 0xffffffff || (BlitMode & (C4GFXBLIT_MOD2 | C4GFXBLIT_CLRSFC_MOD2))) pDraw->ActivateBlitModulation(ColorMod); // other blit modes - lpDDraw->SetBlitMode(BlitMode); + pDraw->SetBlitMode(BlitMode); } void C4Object::FinishedDrawing() { // color modulation - lpDDraw->DeactivateBlitModulation(); + pDraw->DeactivateBlitModulation(); // extra blitting flags - lpDDraw->ResetBlitMode(); + pDraw->ResetBlitMode(); } void C4Object::DrawSolidMask(C4TargetFacet &cgo) diff --git a/src/game/object/C4ObjectList.cpp b/src/game/object/C4ObjectList.cpp index da3046b90..fe48d7835 100644 --- a/src/game/object/C4ObjectList.cpp +++ b/src/game/object/C4ObjectList.cpp @@ -377,7 +377,7 @@ void C4ObjectList::DrawIDList(C4Facet &cgo, int iSelection, // Draw count sprintf(szCount,"%dx",iCount); if ((iCount!=1) || fDrawOneCounts) - lpDDraw->TextOut(szCount, ::GraphicsResource.FontRegular, 1.0, cgo2.Surface,cgo2.X+cgo2.Wdt-1,cgo2.Y+cgo2.Hgt-1-::GraphicsResource.FontRegular.iLineHgt,CStdDDraw::DEFAULT_MESSAGE_COLOR,ARight); + pDraw->TextOut(szCount, ::GraphicsResource.FontRegular, 1.0, cgo2.Surface,cgo2.X+cgo2.Wdt-1,cgo2.Y+cgo2.Hgt-1-::GraphicsResource.FontRegular.iLineHgt,CStdDDraw::DEFAULT_MESSAGE_COLOR,ARight); // Region if (pRegions) pRegions->Add(cgo2.X,cgo2.Y,cgo2.Wdt,cgo2.Hgt,pFirstObj->GetName(),iRegionCom,pFirstObj,COM_None,COM_None,pFirstObj->Number); // Next section @@ -398,7 +398,7 @@ void C4ObjectList::DrawIDList(C4Facet &cgo, int iSelection, // Draw count sprintf(szCount,"%dx",iCount); if ((iCount!=1) || fDrawOneCounts) - lpDDraw->TextOut(szCount,cgo2.Surface,cgo2.X+cgo2.Wdt-1,cgo2.Y+cgo2.Hgt-1-lpDDraw->TextHeight(),FWhite,ARight); + pDraw->TextOut(szCount,cgo2.Surface,cgo2.X+cgo2.Wdt-1,cgo2.Y+cgo2.Hgt-1-pDraw->TextHeight(),FWhite,ARight); // Region if (pRegions) pRegions->Add(cgo2.X,cgo2.Y,cgo2.Wdt,cgo2.Hgt,pFirstObj->GetName(),iRegionCom,pFirstObj,COM_None,COM_None,pFirstObj->id); // Next section diff --git a/src/game/script/C4GameScript.cpp b/src/game/script/C4GameScript.cpp index cfdf4e2ad..a0c7dc35a 100644 --- a/src/game/script/C4GameScript.cpp +++ b/src/game/script/C4GameScript.cpp @@ -1777,13 +1777,13 @@ static long FnReloadParticle(C4AulContext* ctx, C4String *szParticleName) static bool FnSetGamma(C4AulContext* ctx, long dwClr1, long dwClr2, long dwClr3, long iRampIndex) { - lpDDraw->SetGamma(dwClr1, dwClr2, dwClr3, iRampIndex); + pDraw->SetGamma(dwClr1, dwClr2, dwClr3, iRampIndex); return true; } static bool FnResetGamma(C4AulContext* ctx, long iRampIndex) { - lpDDraw->SetGamma(0x000000, 0x808080, 0xffffff, iRampIndex); + pDraw->SetGamma(0x000000, 0x808080, 0xffffff, iRampIndex); return true; } @@ -2288,7 +2288,7 @@ static bool FnCustomMessage(C4AulContext *ctx, C4String *pMsg, C4Object *pObj, N /*static long FnSetSaturation(C4AulContext *ctx, long s) { - return lpDDraw->SetSaturation(BoundBy(s,0l,255l)); + return pDraw->SetSaturation(BoundBy(s,0l,255l)); }*/ static bool FnPauseGame(C4AulContext *ctx, bool fToggle) diff --git a/src/game/script/C4TransferZone.cpp b/src/game/script/C4TransferZone.cpp index 2e1607705..666eefa4d 100644 --- a/src/game/script/C4TransferZone.cpp +++ b/src/game/script/C4TransferZone.cpp @@ -140,7 +140,7 @@ void C4TransferZones::Draw(C4TargetFacet &cgo) void C4TransferZone::Draw(C4TargetFacet &cgo, bool fHighlight) { if (Used) fHighlight=true; - lpDDraw->DrawFrameDw(cgo.Surface, + pDraw->DrawFrameDw(cgo.Surface, int(cgo.X+X-cgo.TargetX),int(cgo.Y+Y-cgo.TargetY), int(cgo.X+X-cgo.TargetX+Wdt-1),int(cgo.Y+Y-cgo.TargetY+Hgt-1), fHighlight ? C4RGB(0, 0xca, 0) : C4RGB(0xca, 0, 0)); diff --git a/src/gui/C4FileSelDlg.cpp b/src/gui/C4FileSelDlg.cpp index 13ba6e25e..c44c25552 100644 --- a/src/gui/C4FileSelDlg.cpp +++ b/src/gui/C4FileSelDlg.cpp @@ -515,7 +515,7 @@ void C4PortraitSelDlg::ListItem::DrawElement(C4TargetFacet &cgo) if (!fctImage.Surface) { // not loaded yet - lpDDraw->TextOut(LoadResStr("IDS_PRC_INITIALIZE"), ::GraphicsResource.MiniFont, 1.0f, cgo.Surface, cgoPicture.X+cgoPicture.Wdt/2, cgoPicture.Y+(cgoPicture.Hgt-::GraphicsResource.MiniFont.GetLineHeight())/2, C4GUI_StatusFontClr, ACenter, false); + pDraw->TextOut(LoadResStr("IDS_PRC_INITIALIZE"), ::GraphicsResource.MiniFont, 1.0f, cgo.Surface, cgoPicture.X+cgoPicture.Wdt/2, cgoPicture.Y+(cgoPicture.Hgt-::GraphicsResource.MiniFont.GetLineHeight())/2, C4GUI_StatusFontClr, ACenter, false); } else { @@ -523,7 +523,7 @@ void C4PortraitSelDlg::ListItem::DrawElement(C4TargetFacet &cgo) } } // draw filename - lpDDraw->TextOut(sFilenameLabelText.getData(), *pUseFont, 1.0f, cgo.Surface, cgoPicture.X+rcBounds.Wdt/2, cgoPicture.Y+cgoPicture.Hgt, C4GUI_MessageFontClr, ACenter, false); + pDraw->TextOut(sFilenameLabelText.getData(), *pUseFont, 1.0f, cgo.Surface, cgoPicture.X+rcBounds.Wdt/2, cgoPicture.Y+cgoPicture.Hgt, C4GUI_MessageFontClr, ACenter, false); } diff --git a/src/gui/C4GameMessage.cpp b/src/gui/C4GameMessage.cpp index be5b791da..51a902d44 100644 --- a/src/gui/C4GameMessage.cpp +++ b/src/gui/C4GameMessage.cpp @@ -181,7 +181,7 @@ void C4GameMessage::Draw(C4TargetFacet &cgo, int32_t iPlayer) PictureDef->GetDef()->Draw(facet); // draw message - lpDDraw->TextOut(sText.getData(),::GraphicsResource.FontRegular,1.0,cgo.Surface,iDrawX+PictureWidth+PictureIndent,iDrawY,ColorDw,ALeft); + pDraw->TextOut(sText.getData(),::GraphicsResource.FontRegular,1.0,cgo.Surface,iDrawX+PictureWidth+PictureIndent,iDrawY,ColorDw,ALeft); } else { @@ -189,7 +189,7 @@ void C4GameMessage::Draw(C4TargetFacet &cgo, int32_t iPlayer) iDrawX += (cgo.Wdt/2) * cgo.Zoom; iDrawY += (2 * cgo.Hgt / 3 + 50) * cgo.Zoom; if (!(dwFlags & C4GM_Bottom)) iDrawY += DrawMessageOffset; - lpDDraw->TextOut(sText.getData(),::GraphicsResource.FontRegular,1.0,cgo.Surface,iDrawX,iDrawY,ColorDw,ACenter); + pDraw->TextOut(sText.getData(),::GraphicsResource.FontRegular,1.0,cgo.Surface,iDrawX,iDrawY,ColorDw,ACenter); } } // Positioned @@ -232,7 +232,7 @@ void C4GameMessage::Draw(C4TargetFacet &cgo, int32_t iPlayer) iTX = BoundBy((iMsgX - cgo.X) * newzoom, iTWdt/2, cgo.Wdt * cgo.Zoom - iTWdt / 2) + 0.5f; iTY = BoundBy((iMsgY - cgo.Y) * newzoom - iTHgt, 0, cgo.Hgt * cgo.Zoom - iTHgt) + 0.5f; // Draw - lpDDraw->TextOut(sText.getData(), ::GraphicsResource.FontRegular, 1.0, + pDraw->TextOut(sText.getData(), ::GraphicsResource.FontRegular, 1.0, cgo.Surface, cgo.X + iTX, cgo.Y + iTY, diff --git a/src/gui/C4Gui.cpp b/src/gui/C4Gui.cpp index f891e24cf..206d88cca 100644 --- a/src/gui/C4Gui.cpp +++ b/src/gui/C4Gui.cpp @@ -274,14 +274,14 @@ namespace C4GUI y0 = cgo.TargetY + rcBounds.y + iTopOff, x1 = cgo.TargetX + rcBounds.x + rcBounds.Wdt - 1, y1 = cgo.TargetY + rcBounds.y + rcBounds.Hgt - 1; - if (fDrawTop) lpDDraw->DrawLineDw(cgo.Surface, (float)x0,(float)y0,(float)x1,(float)y0, C4GUI_BorderColor1 | dwAlpha); - if (fDrawLeft) lpDDraw->DrawLineDw(cgo.Surface, (float)x0,(float)y0,(float)x0,(float)y1, C4GUI_BorderColor1 | dwAlpha); - if (fDrawTop) lpDDraw->DrawLineDw(cgo.Surface, (float)(x0+1),(float)(y0+1),(float)(x1-1),(float)(y0+1), C4GUI_BorderColor2 | dwAlpha); - if (fDrawLeft) lpDDraw->DrawLineDw(cgo.Surface, (float)(x0+1),(float)(y0+1),(float)(x0+1),(float)(y1-1), C4GUI_BorderColor2 | dwAlpha); - lpDDraw->DrawLineDw(cgo.Surface, (float)x0,(float)y1,(float)x1,(float)y1, C4GUI_BorderColor3 | dwAlpha); - lpDDraw->DrawLineDw(cgo.Surface, (float)x1,(float)y0,(float)x1,(float)y1, C4GUI_BorderColor3 | dwAlpha); - lpDDraw->DrawLineDw(cgo.Surface, (float)(x0+1),(float)(y1-1),(float)(x1-1),(float)(y1-1), C4GUI_BorderColor1 | dwAlpha); - lpDDraw->DrawLineDw(cgo.Surface, (float)(x1-1),(float)(y0+1),(float)(x1-1),(float)(y1-1), C4GUI_BorderColor1 | dwAlpha); + if (fDrawTop) pDraw->DrawLineDw(cgo.Surface, (float)x0,(float)y0,(float)x1,(float)y0, C4GUI_BorderColor1 | dwAlpha); + if (fDrawLeft) pDraw->DrawLineDw(cgo.Surface, (float)x0,(float)y0,(float)x0,(float)y1, C4GUI_BorderColor1 | dwAlpha); + if (fDrawTop) pDraw->DrawLineDw(cgo.Surface, (float)(x0+1),(float)(y0+1),(float)(x1-1),(float)(y0+1), C4GUI_BorderColor2 | dwAlpha); + if (fDrawLeft) pDraw->DrawLineDw(cgo.Surface, (float)(x0+1),(float)(y0+1),(float)(x0+1),(float)(y1-1), C4GUI_BorderColor2 | dwAlpha); + pDraw->DrawLineDw(cgo.Surface, (float)x0,(float)y1,(float)x1,(float)y1, C4GUI_BorderColor3 | dwAlpha); + pDraw->DrawLineDw(cgo.Surface, (float)x1,(float)y0,(float)x1,(float)y1, C4GUI_BorderColor3 | dwAlpha); + pDraw->DrawLineDw(cgo.Surface, (float)(x0+1),(float)(y1-1),(float)(x1-1),(float)(y1-1), C4GUI_BorderColor1 | dwAlpha); + pDraw->DrawLineDw(cgo.Surface, (float)(x1-1),(float)(y0+1),(float)(x1-1),(float)(y1-1), C4GUI_BorderColor1 | dwAlpha); } void Element::DrawBar(C4TargetFacet &cgo, DynBarFacet &rFacets) @@ -457,7 +457,7 @@ namespace C4GUI // only if owned if (!fActive) return; // dbg: some cursor... - //lpDDraw->DrawFrame(lpDDraw->lpBack, x-5,y-5,x+5,y+5,2); + //pDraw->DrawFrame(pDraw->lpBack, x-5,y-5,x+5,y+5,2); int32_t iOffsetX = -GfxR->fctMouseCursor.Wdt/2; int32_t iOffsetY = -GfxR->fctMouseCursor.Hgt/2; @@ -475,7 +475,7 @@ namespace C4GUI } } // drag line - //if (LDown) lpDDraw->DrawLine(cgo.Surface, LDownX, LDownY, x,y, 4); + //if (LDown) pDraw->DrawLine(cgo.Surface, LDownX, LDownY, x,y, 4); } void CMouse::ReleaseElements() @@ -724,7 +724,7 @@ namespace C4GUI ::GraphicsSystem.pLoaderScreen->fctBackground.DrawFullScreen(cgo); else // loader not yet loaded: black BG - lpDDraw->DrawBoxDw(cgo.Surface, 0,0, cgo.Wdt+1, cgo.Hgt+1, 0x00000000); + pDraw->DrawBoxDw(cgo.Surface, 0,0, cgo.Wdt+1, cgo.Hgt+1, 0x00000000); } } // draw contents (if GUI-gfx are loaded, which is assumed in GUI-drawing-functions) @@ -1017,10 +1017,10 @@ namespace C4GUI if (y < cgo.Y+cgo.TargetY+tHgt+5) tY = Min(y+5, cgo.TargetY+cgo.Hgt-tHgt); else tY = y-tHgt-5; tX = BoundBy(x-tWdt/2, cgo.TargetX+cgo.X, cgo.TargetX+cgo.Wdt-tWdt); // draw tooltip box - lpDDraw->DrawBoxDw(cgo.Surface, tX,tY,tX+tWdt-1,tY+tHgt-2, C4GUI_ToolTipBGColor); - lpDDraw->DrawFrameDw(cgo.Surface, tX,tY,tX+tWdt-1,tY+tHgt-1, C4GUI_ToolTipFrameColor); + pDraw->DrawBoxDw(cgo.Surface, tX,tY,tX+tWdt-1,tY+tHgt-2, C4GUI_ToolTipBGColor); + pDraw->DrawFrameDw(cgo.Surface, tX,tY,tX+tWdt-1,tY+tHgt-1, C4GUI_ToolTipFrameColor); // draw tooltip - lpDDraw->TextOut(sText.getData(), *pUseFont, 1.0f, cgo.Surface, tX+3,tY+1, C4GUI_ToolTipColor, ALeft); + pDraw->TextOut(sText.getData(), *pUseFont, 1.0f, cgo.Surface, tX+3,tY+1, C4GUI_ToolTipColor, ALeft); // while there's a tooltip, redraw the bg, because it might overlap ::GraphicsSystem.InvalidateBg(); } diff --git a/src/gui/C4Gui.h b/src/gui/C4Gui.h index d7fb48f81..e1c1958e7 100644 --- a/src/gui/C4Gui.h +++ b/src/gui/C4Gui.h @@ -2536,7 +2536,7 @@ namespace C4GUI void Init(int32_t tx, int32_t ty, int32_t twdt, int32_t thgt); void Clear(); - void Render(bool fDoBG); // render to lpDDraw + void Render(bool fDoBG); // render to pDraw void RenderMouse(C4TargetFacet &cgo); // draw mouse only bool Execute(); // handle messages; execute all dialogs diff --git a/src/gui/C4GuiButton.cpp b/src/gui/C4GuiButton.cpp index cdf014091..d47ffb5d8 100644 --- a/src/gui/C4GuiButton.cpp +++ b/src/gui/C4GuiButton.cpp @@ -99,9 +99,9 @@ namespace C4GUI // draw selection highlight if (fEnabled) if (HasDrawFocus() || (fMouseOver && IsInActiveDlg(false))) { - lpDDraw->SetBlitMode(C4GFXBLIT_ADDITIVE); + pDraw->SetBlitMode(C4GFXBLIT_ADDITIVE); ::GraphicsResource.fctButtonHighlight.DrawX(cgo.Surface, x0+5, y0+3, rcBounds.Wdt-10, rcBounds.Hgt-6); - lpDDraw->ResetBlitMode(); + pDraw->ResetBlitMode(); } // draw text int32_t iTextHgt = rcBounds.Hgt-2; @@ -113,8 +113,8 @@ namespace C4GUI ::GraphicsResource.TitleFont); iTextHgt = rUseFont.GetLineHeight(); //CStdFont &rShadowFont = GetRes()->MiniFont; - //lpDDraw->TextOut(Text, rShadowFont, (float) iTextHgt/rShadowFont.GetLineHeight(), cgo.Surface, (x0+x1)/2 + iTxtOff, (y0+y1-iTextHgt)/2 + iTxtOff, C4GUI_ButtonFontShadowClr, ACenter, true); - lpDDraw->TextOut(sText.getData(), rUseFont, 1.0f, cgo.Surface, (x0+x1)/2 + iTxtOff, (y0+y1-iTextHgt)/2 + iTxtOff, C4GUI_ButtonFontClr, ACenter, true); + //pDraw->TextOut(Text, rShadowFont, (float) iTextHgt/rShadowFont.GetLineHeight(), cgo.Surface, (x0+x1)/2 + iTxtOff, (y0+y1-iTextHgt)/2 + iTxtOff, C4GUI_ButtonFontShadowClr, ACenter, true); + pDraw->TextOut(sText.getData(), rUseFont, 1.0f, cgo.Surface, (x0+x1)/2 + iTxtOff, (y0+y1-iTextHgt)/2 + iTxtOff, C4GUI_ButtonFontClr, ACenter, true); } bool Button::KeyButtonDown() @@ -220,9 +220,9 @@ namespace C4GUI // draw selection highlight if (fEnabled) if (fHighlight || HasDrawFocus() || (fMouseOver && IsInActiveDlg(false))) { - lpDDraw->SetBlitMode(C4GFXBLIT_ADDITIVE); + pDraw->SetBlitMode(C4GFXBLIT_ADDITIVE); ::GraphicsResource.fctButtonHighlightRound.DrawX(cgo.Surface, x0, y0, rcBounds.Wdt, rcBounds.Hgt); - lpDDraw->ResetBlitMode(); + pDraw->ResetBlitMode(); } // draw the icon if (fHasClr && fctIcon.Surface) fctIcon.Surface->SetClr(dwClr); @@ -230,15 +230,15 @@ namespace C4GUI // "button" down? if (fEnabled) if (fDown || fHighlight) { - lpDDraw->SetBlitMode(C4GFXBLIT_ADDITIVE); + pDraw->SetBlitMode(C4GFXBLIT_ADDITIVE); ::GraphicsResource.fctButtonHighlightRound.DrawX(cgo.Surface, x0, y0, rcBounds.Wdt, rcBounds.Hgt); - lpDDraw->ResetBlitMode(); + pDraw->ResetBlitMode(); } // some icon buttons have captions. draw caption below button if (sText.getLength()) { CStdFont &rUseFont = pCustomFont ? *pCustomFont : ::GraphicsResource.TextFont; - lpDDraw->TextOut(sText.getData(), rUseFont, 1.0f, cgo.Surface, x0+rcBounds.Wdt/2, y0+rcBounds.Hgt-rUseFont.GetLineHeight()*4/5, pCustomFont ? dwCustomFontClr : C4GUI_CaptionFontClr, ACenter); + pDraw->TextOut(sText.getData(), rUseFont, 1.0f, cgo.Surface, x0+rcBounds.Wdt/2, y0+rcBounds.Hgt-rUseFont.GetLineHeight()*4/5, pCustomFont ? dwCustomFontClr : C4GUI_CaptionFontClr, ACenter); } } @@ -274,9 +274,9 @@ namespace C4GUI // draw selection highlight if (fEnabled) if (HasDrawFocus() || (fMouseOver && IsInActiveDlg(false))) { - lpDDraw->SetBlitMode(C4GFXBLIT_ADDITIVE); + pDraw->SetBlitMode(C4GFXBLIT_ADDITIVE); ::GraphicsResource.fctButtonHighlightRound.DrawX(cgo.Surface, x0, y0, rcBounds.Wdt, rcBounds.Hgt); - lpDDraw->ResetBlitMode(); + pDraw->ResetBlitMode(); } // draw the arrow - down if pressed int32_t iFctIdx = eDir; @@ -330,14 +330,14 @@ namespace C4GUI if (sText.getLength()>0) { CStdFont *pUseFont = pFont ? pFont : &(::GraphicsResource.GetFontByHeight(rcBounds.Hgt, &fFontZoom)); - lpDDraw->TextOut(sText.getData(), *pUseFont, fFontZoom, cgo.Surface, (int)(x0+iTxtOffX), (int)(y0+iTxtOffY), dwTextClr, byTxtAlign, true); + pDraw->TextOut(sText.getData(), *pUseFont, fFontZoom, cgo.Surface, (int)(x0+iTxtOffX), (int)(y0+iTxtOffY), dwTextClr, byTxtAlign, true); } /* if (fEnabled) if (fMouseOver && IsInActiveDlg(false)) { - lpDDraw->SetBlitMode(C4GFXBLIT_ADDITIVE); + pDraw->SetBlitMode(C4GFXBLIT_ADDITIVE); GetRes()->fctButtonHighlight.DrawXFloat(cgo.Surface, x0, y0, rcfDrawBounds.right-rcfDrawBounds.left, rcfDrawBounds.bottom-rcfDrawBounds.top); - lpDDraw->ResetBlitMode(); + pDraw->ResetBlitMode(); }*/ } diff --git a/src/gui/C4GuiCheckBox.cpp b/src/gui/C4GuiCheckBox.cpp index d14300b8c..deed21d27 100644 --- a/src/gui/C4GuiCheckBox.cpp +++ b/src/gui/C4GuiCheckBox.cpp @@ -130,13 +130,13 @@ namespace C4GUI yOff = 0; fZoom = (float) rcBounds.Hgt / Max(pUseFont->GetLineHeight(), 1); } - lpDDraw->TextOut(sCaption.getData(), *pUseFont, fZoom, cgo.Surface, x0 + rcBounds.Hgt + C4GUI_CheckBoxLabelSpacing, y0 + yOff, fEnabled ? dwEnabledClr : dwDisabledClr, ALeft, true); + pDraw->TextOut(sCaption.getData(), *pUseFont, fZoom, cgo.Surface, x0 + rcBounds.Hgt + C4GUI_CheckBoxLabelSpacing, y0 + yOff, fEnabled ? dwEnabledClr : dwDisabledClr, ALeft, true); // selection marker if ((fMouseOn && IsInActiveDlg(false)) || HasDrawFocus()) { - lpDDraw->SetBlitMode(C4GFXBLIT_ADDITIVE); + pDraw->SetBlitMode(C4GFXBLIT_ADDITIVE); ::GraphicsResource.fctButtonHighlightRound.DrawX(cgo.Surface, x0+rcBounds.Hgt*1/4, y0+rcBounds.Hgt*1/4, rcBounds.Hgt*1/2, rcBounds.Hgt*1/2); - lpDDraw->ResetBlitMode(); + pDraw->ResetBlitMode(); } } diff --git a/src/gui/C4GuiComboBox.cpp b/src/gui/C4GuiComboBox.cpp index 0a17c6ba2..ec95a2a05 100644 --- a/src/gui/C4GuiComboBox.cpp +++ b/src/gui/C4GuiComboBox.cpp @@ -155,13 +155,13 @@ namespace C4GUI if (!fReadOnly && !fSimple) { // draw background - lpDDraw->DrawBoxDw(cgo.Surface, x0,y0,x0+rcBounds.Wdt-1,y0+rcBounds.Hgt-1,dwBGClr); + pDraw->DrawBoxDw(cgo.Surface, x0,y0,x0+rcBounds.Wdt-1,y0+rcBounds.Hgt-1,dwBGClr); // draw frame if (dwBorderClr) { int32_t x1=cgo.TargetX+rcBounds.x,y1=cgo.TargetY+rcBounds.y,x2=x1+rcBounds.Wdt,y2=y1+rcBounds.Hgt; - lpDDraw->DrawFrameDw(cgo.Surface, x1, y1, x2, y2-1, dwBorderClr); - lpDDraw->DrawFrameDw(cgo.Surface, x1+1, y1+1, x2-1, y2-2, dwBorderClr); + pDraw->DrawFrameDw(cgo.Surface, x1, y1, x2, y2-1, dwBorderClr); + pDraw->DrawFrameDw(cgo.Surface, x1+1, y1+1, x2-1, y2-2, dwBorderClr); } else // default frame color @@ -177,17 +177,17 @@ namespace C4GUI // draw text if (*Text) { - lpDDraw->StorePrimaryClipper(); - lpDDraw->SubPrimaryClipper(x0,y0,iRightTextEnd-1,y0+rcBounds.Hgt-1); - lpDDraw->TextOut(Text, *pUseFont, 1.0f, cgo.Surface, x0 + ::GraphicsResource.fctContext.Wdt + 2, y0 + (rcBounds.Hgt-pUseFont->GetLineHeight())/2, dwFontClr, ALeft); - lpDDraw->RestorePrimaryClipper(); + pDraw->StorePrimaryClipper(); + pDraw->SubPrimaryClipper(x0,y0,iRightTextEnd-1,y0+rcBounds.Hgt-1); + pDraw->TextOut(Text, *pUseFont, 1.0f, cgo.Surface, x0 + ::GraphicsResource.fctContext.Wdt + 2, y0 + (rcBounds.Hgt-pUseFont->GetLineHeight())/2, dwFontClr, ALeft); + pDraw->RestorePrimaryClipper(); } // draw selection highlight if ((HasDrawFocus() || iOpenMenu || fMouseOver) && !fReadOnly) { - lpDDraw->SetBlitMode(C4GFXBLIT_ADDITIVE); + pDraw->SetBlitMode(C4GFXBLIT_ADDITIVE); ::GraphicsResource.fctButtonHighlightRound.DrawX(cgo.Surface, x0, y0, rcBounds.Wdt, rcBounds.Hgt); - lpDDraw->ResetBlitMode(); + pDraw->ResetBlitMode(); } } diff --git a/src/gui/C4GuiContainers.cpp b/src/gui/C4GuiContainers.cpp index 6c3e3537a..bc84150f9 100644 --- a/src/gui/C4GuiContainers.cpp +++ b/src/gui/C4GuiContainers.cpp @@ -296,11 +296,11 @@ namespace C4GUI C4Rect &rcClipArea = (IsComponentOutsideClientArea() ? GetBounds() : GetClientRect()); // clip to window area int clx1, cly1, clx2, cly2; - lpDDraw->GetPrimaryClipper(clx1, cly1, clx2, cly2); + pDraw->GetPrimaryClipper(clx1, cly1, clx2, cly2); float nclx1 = cgo.TargetX+rcClipArea.x, ncly1 = cgo.TargetY+rcClipArea.y, nclx2 = cgo.TargetX+rcClipArea.x+rcClipArea.Wdt-1, ncly2 = cgo.TargetY+rcClipArea.y+rcClipArea.Hgt-1; - lpDDraw->ApplyZoom(nclx1, ncly1); - lpDDraw->ApplyZoom(nclx2, ncly2); - lpDDraw->SubPrimaryClipper(nclx1, ncly1, nclx2, ncly2); + pDraw->ApplyZoom(nclx1, ncly1); + pDraw->ApplyZoom(nclx2, ncly2); + pDraw->SubPrimaryClipper(nclx1, ncly1, nclx2, ncly2); // update target area cgo.TargetX += rcClientRect.x; cgo.TargetY += rcClientRect.y; // draw contents @@ -308,7 +308,7 @@ namespace C4GUI // reset target area cgo.TargetX -= rcClientRect.x; cgo.TargetY -= rcClientRect.y; // reset clipper - lpDDraw->SetPrimaryClipper(clx1, cly1, clx2, cly2); + pDraw->SetPrimaryClipper(clx1, cly1, clx2, cly2); } Window::Window() : Container() @@ -659,7 +659,7 @@ namespace C4GUI // draw background if (dwBackClr != 0xffffffff) { - lpDDraw->DrawBoxDw(cgo.Surface, cgo.TargetX+rcBounds.x, cgo.TargetY+rcBounds.y, cgo.TargetX+rcBounds.x+rcBounds.Wdt-1, cgo.TargetY+rcBounds.y+rcBounds.Hgt-1, dwBackClr); + pDraw->DrawBoxDw(cgo.Surface, cgo.TargetX+rcBounds.x, cgo.TargetY+rcBounds.y, cgo.TargetX+rcBounds.x+rcBounds.Wdt-1, cgo.TargetY+rcBounds.y+rcBounds.Hgt-1, dwBackClr); } // draw title label int32_t iBorderYOff = 0; @@ -671,7 +671,7 @@ namespace C4GUI iBorderYOff = pTitleFont->GetLineHeight()/2; pTitleFont->GetTextExtent(sTitle.getData(), iTitleGapWdt, iTitleGapX, true); iTitleGapX = 7; iTitleGapWdt += 4; - lpDDraw->TextOut(sTitle.getData(), *pTitleFont, 1.0f, cgo.Surface, cgo.TargetX+rcBounds.x+iTitleGapX+2, cgo.TargetY+rcBounds.y, dwTitleClr); + pDraw->TextOut(sTitle.getData(), *pTitleFont, 1.0f, cgo.Surface, cgo.TargetX+rcBounds.x+iTitleGapX+2, cgo.TargetY+rcBounds.y, dwTitleClr); } // draw frame if (dwFrameClr) @@ -681,17 +681,17 @@ namespace C4GUI { for (int i=0; i<2; ++i) { - lpDDraw->DrawLineDw(cgo.Surface, (float) x1+i, (float)y1, (float)(x1+i), (float)(y2-1), dwFrameClr); // left - lpDDraw->DrawLineDw(cgo.Surface, (float) (x1+2), (float)(y1+i), (float)(x1+iTitleGapX), (float)(y1+i), dwFrameClr); // top - left side - lpDDraw->DrawLineDw(cgo.Surface, (float) (x1+iTitleGapX+iTitleGapWdt), (float)(y1+i), (float)(x2-3), (float)(y1+i), dwFrameClr); // top - right side - lpDDraw->DrawLineDw(cgo.Surface, (float) (x2-1-i), (float)y1, (float)(x2-1-i), (float)(y2-1), dwFrameClr); // right - lpDDraw->DrawLineDw(cgo.Surface, (float) (x1+2), (float)(y2-1-i), (float)(x2-3), (float)(y2-1-i), dwFrameClr); // bottom + pDraw->DrawLineDw(cgo.Surface, (float) x1+i, (float)y1, (float)(x1+i), (float)(y2-1), dwFrameClr); // left + pDraw->DrawLineDw(cgo.Surface, (float) (x1+2), (float)(y1+i), (float)(x1+iTitleGapX), (float)(y1+i), dwFrameClr); // top - left side + pDraw->DrawLineDw(cgo.Surface, (float) (x1+iTitleGapX+iTitleGapWdt), (float)(y1+i), (float)(x2-3), (float)(y1+i), dwFrameClr); // top - right side + pDraw->DrawLineDw(cgo.Surface, (float) (x2-1-i), (float)y1, (float)(x2-1-i), (float)(y2-1), dwFrameClr); // right + pDraw->DrawLineDw(cgo.Surface, (float) (x1+2), (float)(y2-1-i), (float)(x2-3), (float)(y2-1-i), dwFrameClr); // bottom } } else { - lpDDraw->DrawFrameDw(cgo.Surface, x1, y1, x2, (y2-1), dwFrameClr); - lpDDraw->DrawFrameDw(cgo.Surface, (x1+1), (y1+1), (x2-1), (y2-2), dwFrameClr); + pDraw->DrawFrameDw(cgo.Surface, x1, y1, x2, (y2-1), dwFrameClr); + pDraw->DrawFrameDw(cgo.Surface, (x1+1), (y1+1), (x2-1), (y2-2), dwFrameClr); } } else diff --git a/src/gui/C4GuiDialogs.cpp b/src/gui/C4GuiDialogs.cpp index 089c6b768..fa1733a67 100644 --- a/src/gui/C4GuiDialogs.cpp +++ b/src/gui/C4GuiDialogs.cpp @@ -136,7 +136,7 @@ namespace C4GUI { // draw BG int ox = cgo.TargetX+rcBounds.x, oy = cgo.TargetY+rcBounds.y; - lpDDraw->DrawBoxDw(cgo.Surface, ox,oy,ox+rcBounds.Wdt-1,oy+rcBounds.Hgt-1,dwBackClr); + pDraw->DrawBoxDw(cgo.Surface, ox,oy,ox+rcBounds.Wdt-1,oy+rcBounds.Hgt-1,dwBackClr); // draw borders int x,y,Q; // top @@ -703,15 +703,15 @@ namespace C4GUI if (iFade < 100) { if (iFade <= 0) return; - lpDDraw->ActivateBlitModulation((iFade*255/100)<<24 | 0xffffff); + pDraw->ActivateBlitModulation((iFade*255/100)<<24 | 0xffffff); } // separate window: Clear background if (pWindow) - lpDDraw->DrawBoxDw(cgo.Surface, rcBounds.x, rcBounds.y, rcBounds.Wdt-1, rcBounds.Hgt-1, (0xff << 24) | (C4GUI_StandardBGColor & 0xffffff) ); + pDraw->DrawBoxDw(cgo.Surface, rcBounds.x, rcBounds.y, rcBounds.Wdt-1, rcBounds.Hgt-1, (0xff << 24) | (C4GUI_StandardBGColor & 0xffffff) ); // draw window + contents (evaluates IsVisible) Window::Draw(cgo); // reset blit modulation - if (iFade<100) lpDDraw->DeactivateBlitModulation(); + if (iFade<100) pDraw->DeactivateBlitModulation(); // blit output to own window if (pWindow) { @@ -731,7 +731,7 @@ namespace C4GUI { // standard border/bg then // draw background - lpDDraw->DrawBoxDw(cgo.Surface, cgo.TargetX+rcBounds.x,cgo.TargetY+rcBounds.y,rcBounds.x+rcBounds.Wdt-1+cgo.TargetX,rcBounds.y+rcBounds.Hgt-1+cgo.TargetY,C4GUI_StandardBGColor); + pDraw->DrawBoxDw(cgo.Surface, cgo.TargetX+rcBounds.x,cgo.TargetY+rcBounds.y,rcBounds.x+rcBounds.Wdt-1+cgo.TargetX,rcBounds.y+rcBounds.Hgt-1+cgo.TargetY,C4GUI_StandardBGColor); // draw frame Draw3DFrame(cgo); } @@ -1051,7 +1051,7 @@ namespace C4GUI { // draw upper board if (HasUpperBoard()) - lpDDraw->BlitSurfaceTile(::GraphicsResource.fctUpperBoard.Surface,cgo.Surface,0,Min(iFade-::GraphicsResource.fctUpperBoard.Hgt, 0),cgo.Wdt,::GraphicsResource.fctUpperBoard.Hgt); + pDraw->BlitSurfaceTile(::GraphicsResource.fctUpperBoard.Surface,cgo.Surface,0,Min(iFade-::GraphicsResource.fctUpperBoard.Hgt, 0),cgo.Wdt,::GraphicsResource.fctUpperBoard.Hgt); } void FullscreenDialog::UpdateOwnPos() diff --git a/src/gui/C4GuiEdit.cpp b/src/gui/C4GuiEdit.cpp index a9896e2b3..a156bfeb0 100644 --- a/src/gui/C4GuiEdit.cpp +++ b/src/gui/C4GuiEdit.cpp @@ -569,24 +569,24 @@ namespace C4GUI void Edit::DrawElement(C4TargetFacet &cgo) { // draw background - lpDDraw->DrawBoxDw(cgo.Surface, cgo.TargetX+rcBounds.x,cgo.TargetY+rcBounds.y,rcBounds.x+rcBounds.Wdt+cgo.TargetX-1,rcClientRect.y+rcClientRect.Hgt+cgo.TargetY, dwBGClr); + pDraw->DrawBoxDw(cgo.Surface, cgo.TargetX+rcBounds.x,cgo.TargetY+rcBounds.y,rcBounds.x+rcBounds.Wdt+cgo.TargetX-1,rcClientRect.y+rcClientRect.Hgt+cgo.TargetY, dwBGClr); // draw frame if (dwBorderColor) { int32_t x1=cgo.TargetX+rcBounds.x,y1=cgo.TargetY+rcBounds.y,x2=x1+rcBounds.Wdt,y2=y1+rcBounds.Hgt; - lpDDraw->DrawFrameDw(cgo.Surface, x1, y1, x2, y2-1, dwBorderColor); - lpDDraw->DrawFrameDw(cgo.Surface, x1+1, y1+1, x2-1, y2-2, dwBorderColor); + pDraw->DrawFrameDw(cgo.Surface, x1, y1, x2, y2-1, dwBorderColor); + pDraw->DrawFrameDw(cgo.Surface, x1+1, y1+1, x2-1, y2-2, dwBorderColor); } else // default frame color Draw3DFrame(cgo); // clipping int cx0,cy0,cx1,cy1; bool fClip, fOwnClip; - fClip = lpDDraw->GetPrimaryClipper(cx0,cy0,cx1,cy1); + fClip = pDraw->GetPrimaryClipper(cx0,cy0,cx1,cy1); float nclx1 = rcClientRect.x+cgo.TargetX-2, ncly1 = rcClientRect.y+cgo.TargetY, nclx2 = rcClientRect.x+rcClientRect.Wdt+cgo.TargetX+1, ncly2 = rcClientRect.y+rcClientRect.Hgt+cgo.TargetY; - lpDDraw->ApplyZoom(nclx1, ncly1); - lpDDraw->ApplyZoom(nclx2, ncly2); - fOwnClip = lpDDraw->SetPrimaryClipper(nclx1, ncly1, nclx2, ncly2); + pDraw->ApplyZoom(nclx1, ncly1); + pDraw->ApplyZoom(nclx2, ncly2); + fOwnClip = pDraw->SetPrimaryClipper(nclx1, ncly1, nclx2, ncly2); // get usable height of edit field int32_t iHgt = pFont->GetLineHeight(), iY0; if (rcClientRect.Hgt <= iHgt) @@ -623,10 +623,10 @@ namespace C4GUI c = pDrawText[iSelEnd]; pDrawText[iSelEnd]=0; pFont->GetTextExtent(pDrawText, iSelX2, h, false); pDrawText[iSelEnd]=c; iSelX1 -= iXScroll; iSelX2 -= iXScroll; // draw selection box around it - lpDDraw->DrawBoxDw(cgo.Surface, cgo.TargetX+rcClientRect.x+iSelX1,cgo.TargetY+iY0,rcClientRect.x+iSelX2-1+cgo.TargetX,iY0+iHgt-1+cgo.TargetY,0x7f7f7f00); + pDraw->DrawBoxDw(cgo.Surface, cgo.TargetX+rcClientRect.x+iSelX1,cgo.TargetY+iY0,rcClientRect.x+iSelX2-1+cgo.TargetX,iY0+iHgt-1+cgo.TargetY,0x7f7f7f00); } // draw edit text - lpDDraw->TextOut(pDrawText, *pFont, 1.0f, cgo.Surface, rcClientRect.x + cgo.TargetX - iXScroll, iY0 + cgo.TargetY - 1, dwFontClr, ALeft, false); + pDraw->TextOut(pDrawText, *pFont, 1.0f, cgo.Surface, rcClientRect.x + cgo.TargetX - iXScroll, iY0 + cgo.TargetY - 1, dwFontClr, ALeft, false); // draw cursor if (HasDrawFocus() && !(((dwLastInputTime-GetTime())/500)%2)) { @@ -634,13 +634,13 @@ namespace C4GUI pFont->GetTextExtent(pDrawText, w, h, false); pDrawText[iCursorPos] = cAtCursor; pFont->GetTextExtent(CursorRepresentation, wc, h, false); wc/=2; - lpDDraw->TextOut(CursorRepresentation, *pFont, 1.5f, cgo.Surface, rcClientRect.x + cgo.TargetX + w - wc - iXScroll, iY0 + cgo.TargetY - h/3, dwFontClr, ALeft, false); + pDraw->TextOut(CursorRepresentation, *pFont, 1.5f, cgo.Surface, rcClientRect.x + cgo.TargetX + w - wc - iXScroll, iY0 + cgo.TargetY - h/3, dwFontClr, ALeft, false); } // unclip if (fOwnClip) { - if (fClip) lpDDraw->SetPrimaryClipper(cx0,cy0,cx1,cy1); - else lpDDraw->NoPrimaryClipper(); + if (fClip) pDraw->SetPrimaryClipper(cx0,cy0,cx1,cy1); + else pDraw->NoPrimaryClipper(); } } diff --git a/src/gui/C4GuiLabels.cpp b/src/gui/C4GuiLabels.cpp index 665f7ec97..4b46642e7 100644 --- a/src/gui/C4GuiLabels.cpp +++ b/src/gui/C4GuiLabels.cpp @@ -37,7 +37,7 @@ namespace C4GUI void Label::DrawElement(C4TargetFacet &cgo) { // print out - lpDDraw->TextOut(sText.getData(), *pFont, 1.0f, cgo.Surface, x0 + cgo.TargetX, rcBounds.y + cgo.TargetY, dwFgClr, iAlign, fMarkup); + pDraw->TextOut(sText.getData(), *pFont, 1.0f, cgo.Surface, x0 + cgo.TargetX, rcBounds.y + cgo.TargetY, dwFgClr, iAlign, fMarkup); } Label::Label(const char *szLblText, int32_t iX0, int32_t iTop, int32_t iAlign, DWORD dwFClr, CStdFont *pFont, bool fMakeReadableOnBlack, bool fMarkup) @@ -174,10 +174,10 @@ namespace C4GUI iXOff -= iScrollPos; } // print out text; clipped - lpDDraw->StorePrimaryClipper(); - lpDDraw->SetPrimaryClipper(rcBounds.x + GetLeftIndent() + cgo.TargetX, rcBounds.y + cgo.TargetY, rcBounds.x+rcBounds.Wdt - GetRightIndent() + cgo.TargetX, rcBounds.y+rcBounds.Hgt + cgo.TargetY); - lpDDraw->TextOut(sText.getData(), *pFont, 1.0f, cgo.Surface, x0 + cgo.TargetX + iXOff, rcBounds.y + cgo.TargetY + (rcBounds.Hgt-pFont->GetLineHeight())/2-1, dwFgClr, iAlign); - lpDDraw->RestorePrimaryClipper(); + pDraw->StorePrimaryClipper(); + pDraw->SetPrimaryClipper(rcBounds.x + GetLeftIndent() + cgo.TargetX, rcBounds.y + cgo.TargetY, rcBounds.x+rcBounds.Wdt - GetRightIndent() + cgo.TargetX, rcBounds.y+rcBounds.Hgt + cgo.TargetY); + pDraw->TextOut(sText.getData(), *pFont, 1.0f, cgo.Surface, x0 + cgo.TargetX + iXOff, rcBounds.y + cgo.TargetY + (rcBounds.Hgt-pFont->GetLineHeight())/2-1, dwFgClr, iAlign); + pDraw->RestorePrimaryClipper(); } int32_t WoodenLabel::GetDefaultHeight(CStdFont *pUseFont) @@ -215,7 +215,7 @@ namespace C4GUI { // get clipping int iClipX, iClipY, iClipX2, iClipY2; - lpDDraw->GetPrimaryClipper(iClipX, iClipY, iClipX2, iClipY2); + pDraw->GetPrimaryClipper(iClipX, iClipY, iClipX2, iClipY2); // draw all lines int32_t iIndex = 0; const char *szLine; int32_t iY = rcBounds.y + cgo.TargetY; @@ -230,7 +230,7 @@ namespace C4GUI if (iY >= iClipY-iFontLineHeight) { // draw line - lpDDraw->TextOut(szLine, *pLineFont, 1.0f, cgo.Surface, rcBounds.x + cgo.TargetX, iY, dwLineClr, ALeft, fMarkup); + pDraw->TextOut(szLine, *pLineFont, 1.0f, cgo.Surface, rcBounds.x + cgo.TargetX, iY, dwLineClr, ALeft, fMarkup); } // advance line iY += iFontLineHeight; @@ -292,8 +292,8 @@ namespace C4GUI // draw horizontal line int32_t iX1 = rcBounds.x + cgo.TargetX, iX2 = iX1 + rcBounds.Wdt, iY = rcBounds.y + cgo.TargetY; - lpDDraw->DrawLineDw(cgo.Surface, (float)(iX1+1), (float)(iY+1), (float)(iX2-1), (float)(iY+1), dwShadowClr); - lpDDraw->DrawLineDw(cgo.Surface, (float)iX1, (float)iY, (float)(iX2-2), (float)iY, dwClr); + pDraw->DrawLineDw(cgo.Surface, (float)(iX1+1), (float)(iY+1), (float)(iX2-1), (float)(iY+1), dwShadowClr); + pDraw->DrawLineDw(cgo.Surface, (float)iX1, (float)iY, (float)(iX2-2), (float)iY, dwClr); } @@ -310,12 +310,12 @@ namespace C4GUI // calc progress width int32_t iProgressWdt = (rcBounds.Wdt-4) * iProgress / iMax; // draw progress - //lpDDraw->DrawBoxDw(cgo.Surface, cgo.TargetX+rcBounds.x+2, cgo.TargetY+rcBounds.y+2, cgo.TargetX+rcBounds.x+iProgressWdt, cgo.TargetY+rcBounds.y+rcBounds.Hgt-2, C4GUI_ProgressBarColor); + //pDraw->DrawBoxDw(cgo.Surface, cgo.TargetX+rcBounds.x+2, cgo.TargetY+rcBounds.y+2, cgo.TargetX+rcBounds.x+iProgressWdt, cgo.TargetY+rcBounds.y+rcBounds.Hgt-2, C4GUI_ProgressBarColor); ::GraphicsResource.fctProgressBar.DrawX(cgo.Surface, cgo.TargetX+rcBounds.x+2, cgo.TargetY+rcBounds.y+2, iProgressWdt, rcBounds.Hgt-2); // print out progress text char szPrg[32+1]; sprintf(szPrg, "%i%%", 100 * iProgress / iMax); - lpDDraw->TextOut(szPrg, rFont, 1.0f, cgo.Surface, cgo.TargetX+rcBounds.GetMiddleX(), rcBounds.y + cgo.TargetY + (rcBounds.Hgt-rFont.GetLineHeight())/2-1, C4GUI_ProgressBarFontClr, ACenter); + pDraw->TextOut(szPrg, rFont, 1.0f, cgo.Surface, cgo.TargetX+rcBounds.GetMiddleX(), rcBounds.y + cgo.TargetY + (rcBounds.Hgt-rFont.GetLineHeight())/2-1, C4GUI_ProgressBarFontClr, ACenter); } @@ -529,7 +529,7 @@ namespace C4GUI void TextWindow::DrawElement(C4TargetFacet &cgo) { // draw background - if (fDrawBackground) lpDDraw->DrawBoxDw(cgo.Surface, cgo.TargetX+rcBounds.x,cgo.TargetY+rcBounds.y,rcBounds.x+rcBounds.Wdt-1+cgo.TargetX,rcBounds.y+rcBounds.Hgt-1+cgo.TargetY,0x7f000000); + if (fDrawBackground) pDraw->DrawBoxDw(cgo.Surface, cgo.TargetX+rcBounds.x,cgo.TargetY+rcBounds.y,rcBounds.x+rcBounds.Wdt-1+cgo.TargetX,rcBounds.y+rcBounds.Hgt-1+cgo.TargetY,0x7f000000); // draw frame if (fDrawFrame) Draw3DFrame(cgo); } diff --git a/src/gui/C4GuiListBox.cpp b/src/gui/C4GuiListBox.cpp index 387a3ddaa..11998429d 100644 --- a/src/gui/C4GuiListBox.cpp +++ b/src/gui/C4GuiListBox.cpp @@ -105,7 +105,7 @@ namespace C4GUI void ListBox::DrawElement(C4TargetFacet &cgo) { if (fDrawBackground) - lpDDraw->DrawBoxDw(cgo.Surface, cgo.TargetX+rcBounds.x, cgo.TargetY+rcBounds.y, cgo.TargetX+rcBounds.x+rcBounds.Wdt-1, cgo.TargetY+rcBounds.y+rcBounds.Hgt-1, 0x7f000000); + pDraw->DrawBoxDw(cgo.Surface, cgo.TargetX+rcBounds.x, cgo.TargetY+rcBounds.y, cgo.TargetX+rcBounds.x+rcBounds.Wdt-1, cgo.TargetY+rcBounds.y+rcBounds.Hgt-1, 0x7f000000); if (fDrawBorder) Draw3DFrame(cgo); // listbox bg: mark selected item if (!pClientWindow) return; @@ -123,7 +123,7 @@ namespace C4GUI rcSelArea.Hgt = Min(rcSelArea.Hgt, GetClientRect().y + GetClientRect().Hgt - rcSelArea.y); // draw if (rcSelArea.Hgt>=0) - lpDDraw->DrawBoxDw(cgo.Surface, rcSelArea.x+cgo.TargetX, rcSelArea.y+cgo.TargetY, + pDraw->DrawBoxDw(cgo.Surface, rcSelArea.x+cgo.TargetX, rcSelArea.y+cgo.TargetY, rcSelArea.x+rcSelArea.Wdt+cgo.TargetX-1, rcSelArea.y+rcSelArea.Hgt+cgo.TargetY-1, HasDrawFocus() ? C4GUI_ListBoxSelColor : C4GUI_ListBoxInactSelColor); } @@ -140,7 +140,7 @@ namespace C4GUI // clip if (iY < GetClientRect().y || iY >= GetClientRect().y+GetClientRect().Hgt) continue; // draw - lpDDraw->DrawLineDw(cgo.Surface, (float)(iX0+cgo.TargetX), (float)(iY+cgo.TargetY), (float)(iX1+cgo.TargetX), (float)(iY+cgo.TargetY), C4GUI_ListBoxBarColor); + pDraw->DrawLineDw(cgo.Surface, (float)(iX0+cgo.TargetX), (float)(iY+cgo.TargetY), (float)(iX1+cgo.TargetX), (float)(iY+cgo.TargetY), C4GUI_ListBoxBarColor); } } diff --git a/src/gui/C4GuiMenu.cpp b/src/gui/C4GuiMenu.cpp index e0a368a44..8b5a34c71 100644 --- a/src/gui/C4GuiMenu.cpp +++ b/src/gui/C4GuiMenu.cpp @@ -54,7 +54,7 @@ namespace C4GUI } // print out label if (!!sText) - lpDDraw->TextOut(sText.getData(), ::GraphicsResource.TextFont, 1.0f, cgo.Surface, cgo.TargetX+rcBounds.x+GetIconIndent(), rcBounds.y + cgo.TargetY, C4GUI_ContextFontClr, ALeft); + pDraw->TextOut(sText.getData(), ::GraphicsResource.TextFont, 1.0f, cgo.Surface, cgo.TargetX+rcBounds.x+GetIconIndent(), rcBounds.y + cgo.TargetY, C4GUI_ContextFontClr, ALeft); // submenu arrow if (pSubmenuHandler) { @@ -182,7 +182,7 @@ namespace C4GUI void ContextMenu::DrawElement(C4TargetFacet &cgo) { // draw context menu bg - lpDDraw->DrawBoxDw(cgo.Surface, rcBounds.x+cgo.TargetX, rcBounds.y+cgo.TargetY, + pDraw->DrawBoxDw(cgo.Surface, rcBounds.x+cgo.TargetX, rcBounds.y+cgo.TargetY, rcBounds.x+rcBounds.Wdt+cgo.TargetX-1, rcBounds.y+rcBounds.Hgt+cgo.TargetY-1, C4GUI_ContextBGColor); // context bg: mark selected item @@ -194,7 +194,7 @@ namespace C4GUI rcSelArea.x += GetClientRect().x; rcSelArea.y += GetClientRect().y; // draw - lpDDraw->DrawBoxDw(cgo.Surface, rcSelArea.x+cgo.TargetX, rcSelArea.y+cgo.TargetY, + pDraw->DrawBoxDw(cgo.Surface, rcSelArea.x+cgo.TargetX, rcSelArea.y+cgo.TargetY, rcSelArea.x+rcSelArea.Wdt+cgo.TargetX-1, rcSelArea.y+rcSelArea.Hgt+cgo.TargetY-1, C4GUI_ContextSelColor); } @@ -628,9 +628,9 @@ namespace C4GUI // draw selection highlight if (HasDrawFocus() || (fMouseOver && IsInActiveDlg(false)) || iOpenMenu) { - lpDDraw->SetBlitMode(C4GFXBLIT_ADDITIVE); + pDraw->SetBlitMode(C4GFXBLIT_ADDITIVE); ::GraphicsResource.fctButtonHighlight.DrawX(cgo.Surface, x0, y0, rcBounds.Wdt, rcBounds.Hgt); - lpDDraw->ResetBlitMode(); + pDraw->ResetBlitMode(); } } diff --git a/src/gui/C4GuiTabular.cpp b/src/gui/C4GuiTabular.cpp index 30cfaccbb..54567ed33 100644 --- a/src/gui/C4GuiTabular.cpp +++ b/src/gui/C4GuiTabular.cpp @@ -68,14 +68,14 @@ namespace C4GUI int32_t iLabelHgt = rUseFont.GetLineHeight(); int32_t iIconLabelSpacing = 2; int32_t yTop = yCenter - (pfctIcon->Hgt+iIconLabelSpacing+iLabelHgt)/2; pfctIcon->Draw(cgo.Surface, xCenter-pfctIcon->Wdt/2, yTop, icoTitle); - lpDDraw->TextOut(sTitle.getData(), rUseFont, 1.0f, cgo.Surface, xCenter, yTop + pfctIcon->Hgt+iIconLabelSpacing, fActive ? C4GUI_GfxTabCaptActiveClr : C4GUI_GfxTabCaptInactiveClr , ACenter); + pDraw->TextOut(sTitle.getData(), rUseFont, 1.0f, cgo.Surface, xCenter, yTop + pfctIcon->Hgt+iIconLabelSpacing, fActive ? C4GUI_GfxTabCaptActiveClr : C4GUI_GfxTabCaptInactiveClr , ACenter); } // focus highlight if (fFocus) { - lpDDraw->SetBlitMode(C4GFXBLIT_ADDITIVE); + pDraw->SetBlitMode(C4GFXBLIT_ADDITIVE); ::GraphicsResource.fctButtonHighlightRound.DrawX(cgo.Surface, (fLarge ? x : x - iTxtWdt/2)+5, y+3, (fLarge ? iMaxWdt : iTxtWdt)-10, iTxtHgt-6); - lpDDraw->ResetBlitMode(); + pDraw->ResetBlitMode(); } if (!(pfctClip && pfctIcon)) { @@ -103,15 +103,15 @@ namespace C4GUI if (!fLarge && fHasCloseButton) x -= iTxtHgt/2; uint32_t dwClr = dwCaptionClr; if (!dwClr) dwClr = fActive ? C4GUI_CaptionFontClr : C4GUI_InactCaptionFontClr; - lpDDraw->TextOut(sTitle.getData(), rUseFont, fLarge ? 1.2f : 1.0f, cgo.Surface, x, y, dwClr, fLarge ? ALeft : ACenter, fTitleMarkup); + pDraw->TextOut(sTitle.getData(), rUseFont, fLarge ? 1.2f : 1.0f, cgo.Surface, x, y, dwClr, fLarge ? ALeft : ACenter, fTitleMarkup); // close button if (fHasCloseButton) { xo += iTxtWdt / (2 - fLarge) - iTxtHgt + 1; C4Facet cgoCloseBtn(cgo.Surface, xo, y+1, iTxtHgt-2, iTxtHgt-2); - if (!fCloseButtonHighlighted) lpDDraw->ActivateBlitModulation(0x7f7f7f); + if (!fCloseButtonHighlighted) pDraw->ActivateBlitModulation(0x7f7f7f); Icon::GetIconFacet(Ico_Close).Draw(cgoCloseBtn); - if (!fCloseButtonHighlighted) lpDDraw->DeactivateBlitModulation(); + if (!fCloseButtonHighlighted) pDraw->DeactivateBlitModulation(); } } } @@ -386,7 +386,7 @@ namespace C4GUI x1 = cgo.TargetX + rcBounds.x + rcBounds.Wdt - 1, y1 = cgo.TargetY + rcBounds.y + rcBounds.Hgt - 1; // main area BG - if (!fGfx) lpDDraw->DrawBoxDw(cgo.Surface, x0,y0,x1,y1, C4GUI_StandardBGColor); + if (!fGfx) pDraw->DrawBoxDw(cgo.Surface, x0,y0,x1,y1, C4GUI_StandardBGColor); // no tabs? if (!eTabPos) return; bool fLeft = (eTabPos == tbLeft); @@ -425,14 +425,14 @@ namespace C4GUI vtx[6] = d+iTabWidth; vtx[7] = y0; } DWORD dwClr = (pSheet == pActiveSheet) ? C4GUI_ActiveTabBGColor : C4GUI_StandardBGColor; - lpDDraw->DrawQuadDw(cgo.Surface, vtx, dwClr, dwClr, dwClr, dwClr); + pDraw->DrawQuadDw(cgo.Surface, vtx, dwClr, dwClr, dwClr, dwClr); // draw caption frame - lpDDraw->DrawLineDw(cgo.Surface, (float)vtx[0]-1 , (float)vtx[1] , (float)vtx[2]-1 ,(float)vtx[3] , C4GUI_BorderColorA1); - lpDDraw->DrawLineDw(cgo.Surface, (float)vtx[2]-1 , (float)vtx[3] , (float)vtx[4]-fLeft,(float)vtx[5] , C4GUI_BorderColorA1); - lpDDraw->DrawLineDw(cgo.Surface, (float)vtx[4] , (float)vtx[5] , (float)vtx[6] ,(float)vtx[7] , C4GUI_BorderColorA1); - lpDDraw->DrawLineDw(cgo.Surface, (float)vtx[0] , (float)vtx[1]+fLeft, (float)vtx[2] ,(float)vtx[3]+fLeft , C4GUI_BorderColorA2); - lpDDraw->DrawLineDw(cgo.Surface, (float)vtx[2]-!fLeft, (float)vtx[3]+1 , (float)vtx[4] ,(float)vtx[5]+!fLeft , C4GUI_BorderColorA2); - lpDDraw->DrawLineDw(cgo.Surface, (float)vtx[4]+1 , (float)vtx[5]+fLeft, (float)vtx[6] ,(float)vtx[7]+fLeft , C4GUI_BorderColorA2); + pDraw->DrawLineDw(cgo.Surface, (float)vtx[0]-1 , (float)vtx[1] , (float)vtx[2]-1 ,(float)vtx[3] , C4GUI_BorderColorA1); + pDraw->DrawLineDw(cgo.Surface, (float)vtx[2]-1 , (float)vtx[3] , (float)vtx[4]-fLeft,(float)vtx[5] , C4GUI_BorderColorA1); + pDraw->DrawLineDw(cgo.Surface, (float)vtx[4] , (float)vtx[5] , (float)vtx[6] ,(float)vtx[7] , C4GUI_BorderColorA1); + pDraw->DrawLineDw(cgo.Surface, (float)vtx[0] , (float)vtx[1]+fLeft, (float)vtx[2] ,(float)vtx[3]+fLeft , C4GUI_BorderColorA2); + pDraw->DrawLineDw(cgo.Surface, (float)vtx[2]-!fLeft, (float)vtx[3]+1 , (float)vtx[4] ,(float)vtx[5]+!fLeft , C4GUI_BorderColorA2); + pDraw->DrawLineDw(cgo.Surface, (float)vtx[4]+1 , (float)vtx[5]+fLeft, (float)vtx[6] ,(float)vtx[7]+fLeft , C4GUI_BorderColorA2); } // draw caption text int32_t iCptTextX = fLeft ? (x0-GetLeftSize()+10) : (d+iTabWidth/2); @@ -456,10 +456,10 @@ namespace C4GUI // draw tab border line across everything but active tab if (!fGfx) if (ad0||ad1) { - lpDDraw->DrawLineDw(cgo.Surface, (float)x0 ,(float)y0 ,(float)(fLeft ? x0 : ad0), (float)(fLeft ? ad0 : y0), C4GUI_BorderColorA1); - lpDDraw->DrawLineDw(cgo.Surface, (float)(x0+1),(float)(y0+1),(float)((fLeft ? x0 : ad0)+1), (float)((fLeft ? ad0 : y0)+1) , C4GUI_BorderColorA2); - lpDDraw->DrawLineDw(cgo.Surface, (float)(fLeft ? x0 : ad1), (float)(fLeft ? ad1 : y0), (float)(fLeft ? x0 : x1), (float)(fLeft ? y1 : y0), C4GUI_BorderColorA1); - lpDDraw->DrawLineDw(cgo.Surface, (float)((fLeft ? x0 : ad1)+1), (float)((fLeft ? ad1 : y0)+1), (float)((fLeft ? x0 : x1)+1), (float)((fLeft ? y1 : y0)+1), C4GUI_BorderColorA2); + pDraw->DrawLineDw(cgo.Surface, (float)x0 ,(float)y0 ,(float)(fLeft ? x0 : ad0), (float)(fLeft ? ad0 : y0), C4GUI_BorderColorA1); + pDraw->DrawLineDw(cgo.Surface, (float)(x0+1),(float)(y0+1),(float)((fLeft ? x0 : ad0)+1), (float)((fLeft ? ad0 : y0)+1) , C4GUI_BorderColorA2); + pDraw->DrawLineDw(cgo.Surface, (float)(fLeft ? x0 : ad1), (float)(fLeft ? ad1 : y0), (float)(fLeft ? x0 : x1), (float)(fLeft ? y1 : y0), C4GUI_BorderColorA1); + pDraw->DrawLineDw(cgo.Surface, (float)((fLeft ? x0 : ad1)+1), (float)((fLeft ? ad1 : y0)+1), (float)((fLeft ? x0 : x1)+1), (float)((fLeft ? y1 : y0)+1), C4GUI_BorderColorA2); } // main area bg in gfx: Atop inactive tabs if (fGfx) diff --git a/src/gui/C4LoaderScreen.cpp b/src/gui/C4LoaderScreen.cpp index 58953e44f..687726398 100644 --- a/src/gui/C4LoaderScreen.cpp +++ b/src/gui/C4LoaderScreen.cpp @@ -142,7 +142,7 @@ void C4LoaderScreen::Draw(C4Facet &cgo, int iProgress, C4LogBuffer *pLog, int Pr // simple black screen loader? if (fBlackScreen) { - lpDDraw->FillBG(); + pDraw->FillBG(); return; } // cgo.X/Y is assumed 0 here... @@ -159,13 +159,13 @@ void C4LoaderScreen::Draw(C4Facet &cgo, int iProgress, C4LogBuffer *pLog, int Pr // Background (loader) fctBackground.DrawFullScreen(cgo); // draw scenario title - lpDDraw->StringOut(Game.ScenarioTitle.getData(), TitleFont, 1.0f, cgo.Surface, cgo.Wdt-iHIndent, cgo.Hgt-iVIndent-iLogBoxHgt-iVMargin-iProgressBarHgt-iVMargin-TitleFont.iLineHgt, 0xdddddddd, ARight, false); + pDraw->StringOut(Game.ScenarioTitle.getData(), TitleFont, 1.0f, cgo.Surface, cgo.Wdt-iHIndent, cgo.Hgt-iVIndent-iLogBoxHgt-iVMargin-iProgressBarHgt-iVMargin-TitleFont.iLineHgt, 0xdddddddd, ARight, false); // draw info /*if (szInfo) - lpDDraw->TextOutDw(szInfo, cgo.Surface, cgo.Wdt/2, cgo.Hgt/2+20);*/ + pDraw->TextOutDw(szInfo, cgo.Surface, cgo.Wdt/2, cgo.Hgt/2+20);*/ // // draw progress bar - lpDDraw->DrawBoxDw(cgo.Surface, iHIndent, cgo.Hgt-iVIndent-iLogBoxHgt-iVMargin-iProgressBarHgt, cgo.Wdt-iHIndent, cgo.Hgt-iVIndent-iLogBoxHgt-iVMargin, 0xb0000000); + pDraw->DrawBoxDw(cgo.Surface, iHIndent, cgo.Hgt-iVIndent-iLogBoxHgt-iVMargin-iProgressBarHgt, cgo.Wdt-iHIndent, cgo.Hgt-iVIndent-iLogBoxHgt-iVMargin, 0xb0000000); int iProgressBarWdt=cgo.Wdt-iHIndent*2-2; if (::GraphicsResource.fctProgressBar.Surface) { @@ -173,15 +173,15 @@ void C4LoaderScreen::Draw(C4Facet &cgo, int iProgress, C4LogBuffer *pLog, int Pr } else { - lpDDraw->DrawBoxDw(cgo.Surface, iHIndent+1, cgo.Hgt-iVIndent-iLogBoxHgt-iVMargin-iProgressBarHgt+1, iHIndent+1+iProgressBarWdt*iProgress/100, cgo.Hgt-iVIndent-iLogBoxHgt-iVMargin-1, 0xb0ff0000); + pDraw->DrawBoxDw(cgo.Surface, iHIndent+1, cgo.Hgt-iVIndent-iLogBoxHgt-iVMargin-iProgressBarHgt+1, iHIndent+1+iProgressBarWdt*iProgress/100, cgo.Hgt-iVIndent-iLogBoxHgt-iVMargin-1, 0xb0ff0000); } - lpDDraw->StringOut(FormatString("%i%%", iProgress).getData(), rProgressBarFont, 1.0f, cgo.Surface, + pDraw->StringOut(FormatString("%i%%", iProgress).getData(), rProgressBarFont, 1.0f, cgo.Surface, cgo.Wdt/2, cgo.Hgt-iVIndent-iLogBoxHgt-iVMargin-rProgressBarFont.iLineHgt/2-iProgressBarHgt/2, 0xffffffff, ACenter, true); // draw log box if (pLog) { - lpDDraw->DrawBoxDw(cgo.Surface, iHIndent, cgo.Hgt-iVIndent-iLogBoxHgt, cgo.Wdt-iHIndent, cgo.Hgt-iVIndent, 0x7f000000); + pDraw->DrawBoxDw(cgo.Surface, iHIndent, cgo.Hgt-iVIndent-iLogBoxHgt, cgo.Wdt-iHIndent, cgo.Hgt-iVIndent, 0x7f000000); int iLineHgt=int(fLogBoxFontZoom*LogFont.iLineHgt); if (!iLineHgt) iLineHgt=5; int iLinesVisible = (iLogBoxHgt-2*iLogBoxMargin)/iLineHgt; int iX = iHIndent+iLogBoxMargin; @@ -192,14 +192,14 @@ void C4LoaderScreen::Draw(C4Facet &cgo, int iProgress, C4LogBuffer *pLog, int Pr const char *szLine = pLog->GetLine(i, NULL, NULL, NULL); if (!szLine || !*szLine) continue; LogFont.GetTextExtent(szLine, w,h, true); - lpDDraw->TextOut(szLine,LogFont,fLogBoxFontZoom,cgo.Surface,iX,iY); + pDraw->TextOut(szLine,LogFont,fLogBoxFontZoom,cgo.Surface,iX,iY); iY += h; } // append process text if (Process) { iY -= h; iX += w; - lpDDraw->TextOut(FormatString("%i%%", (int) Process).getData(),LogFont,fLogBoxFontZoom,cgo.Surface,iX,iY); + pDraw->TextOut(FormatString("%i%%", (int) Process).getData(),LogFont,fLogBoxFontZoom,cgo.Surface,iX,iY); } } } diff --git a/src/gui/C4Menu.cpp b/src/gui/C4Menu.cpp index 755948512..c0c800c87 100644 --- a/src/gui/C4Menu.cpp +++ b/src/gui/C4Menu.cpp @@ -129,7 +129,7 @@ void C4MenuItem::DrawElement(C4TargetFacet &cgo) // Select mark if (iStyle!=C4MN_Style_Info) if (fSelected && TextDisplayProgress) - lpDDraw->DrawBoxDw(cgo.Surface, cgoOut.X, cgoOut.Y, cgoOut.X + cgoOut.Wdt - 1, cgoOut.Y + cgoOut.Hgt - 1, C4RGB(0xca, 0, 0)); + pDraw->DrawBoxDw(cgo.Surface, cgoOut.X, cgoOut.Y, cgoOut.X + cgoOut.Wdt - 1, cgoOut.Y + cgoOut.Hgt - 1, C4RGB(0xca, 0, 0)); // Symbol/text areas C4Facet cgoItemSymbol,cgoItemText; cgoItemSymbol=cgoItemText=cgoOut; @@ -143,17 +143,17 @@ void C4MenuItem::DrawElement(C4TargetFacet &cgo) // Draw if there is no text progression at all (TextDisplayProgress==-1, or if it's progressed far enough already (TextDisplayProgress>0) if (Symbol.Surface && TextDisplayProgress) Symbol.DrawClr(cgoItemSymbol, true, dwSymbolClr); // Draw item text - lpDDraw->StorePrimaryClipper(); lpDDraw->SubPrimaryClipper(cgoItemText.X, cgoItemText.Y, cgoItemText.X+cgoItemText.Wdt-1, cgoItemText.Y+cgoItemText.Hgt-1); + pDraw->StorePrimaryClipper(); pDraw->SubPrimaryClipper(cgoItemText.X, cgoItemText.Y, cgoItemText.X+cgoItemText.Wdt-1, cgoItemText.Y+cgoItemText.Hgt-1); switch (iStyle) { case C4MN_Style_Context: - lpDDraw->TextOut(Caption,::GraphicsResource.FontRegular, 1.0, cgoItemText.Surface,cgoItemText.X,cgoItemText.Y,CStdDDraw::DEFAULT_MESSAGE_COLOR,ALeft); + pDraw->TextOut(Caption,::GraphicsResource.FontRegular, 1.0, cgoItemText.Surface,cgoItemText.X,cgoItemText.Y,CStdDDraw::DEFAULT_MESSAGE_COLOR,ALeft); break; case C4MN_Style_Info: { StdStrBuf sText; ::GraphicsResource.FontRegular.BreakMessage(InfoCaption, cgoItemText.Wdt, &sText, true); - lpDDraw->TextOut(sText.getData(), ::GraphicsResource.FontRegular, 1.0, cgoItemText.Surface,cgoItemText.X,cgoItemText.Y); + pDraw->TextOut(sText.getData(), ::GraphicsResource.FontRegular, 1.0, cgoItemText.Surface,cgoItemText.X,cgoItemText.Y); break; } case C4MN_Style_Dialog: @@ -169,19 +169,19 @@ void C4MenuItem::DrawElement(C4TargetFacet &cgo) // display broken text StdStrBuf sText; ::GraphicsResource.FontRegular.BreakMessage(Caption, cgoItemText.Wdt, &sText, true); - lpDDraw->TextOut(sText.getData(),::GraphicsResource.FontRegular, 1.0, cgoItemText.Surface,cgoItemText.X,cgoItemText.Y); + pDraw->TextOut(sText.getData(),::GraphicsResource.FontRegular, 1.0, cgoItemText.Surface,cgoItemText.X,cgoItemText.Y); // restore complete text if (cXChg) Caption[iStopPos] = cXChg; break; } } - lpDDraw->RestorePrimaryClipper(); + pDraw->RestorePrimaryClipper(); // Draw count if (Count!=C4MN_Item_NoCount) { char szCount[10+1]; sprintf(szCount,"%ix",Count); - lpDDraw->TextOut(szCount,::GraphicsResource.FontRegular, 1.0, cgoItemText.Surface,cgoItemText.X+cgoItemText.Wdt-1,cgoItemText.Y+cgoItemText.Hgt-1-::GraphicsResource.FontRegular.iLineHgt,CStdDDraw::DEFAULT_MESSAGE_COLOR,ARight); + pDraw->TextOut(szCount,::GraphicsResource.FontRegular, 1.0, cgoItemText.Surface,cgoItemText.X+cgoItemText.Wdt-1,cgoItemText.Y+cgoItemText.Hgt-1-::GraphicsResource.FontRegular.iLineHgt,CStdDDraw::DEFAULT_MESSAGE_COLOR,ARight); } } @@ -828,8 +828,8 @@ void C4Menu::DrawElement(C4TargetFacet &cgo) // Store and clear global clipper // int32_t iX1,iY1,iX2,iY2; -// lpDDraw->GetPrimaryClipper(iX1,iY1,iX2,iY2); -// lpDDraw->SubPrimaryClipper(rcBounds.x, rcBounds.y, rcBounds.x+rcBounds.Wdt-1, rcBounds.y+rcBounds.Hgt-1); +// pDraw->GetPrimaryClipper(iX1,iY1,iX2,iY2); +// pDraw->SubPrimaryClipper(rcBounds.x, rcBounds.y, rcBounds.x+rcBounds.Wdt-1, rcBounds.y+rcBounds.Hgt-1); C4Facet cgoExtra(cgo.Surface, cgo.TargetX+rcBounds.x+1, cgo.TargetY+rcBounds.y+rcBounds.Hgt-C4MN_SymbolSize-1, rcBounds.Wdt-2, C4MN_SymbolSize); @@ -853,12 +853,12 @@ void C4Menu::DrawElement(C4TargetFacet &cgo) } // Restore global clipper - //lpDDraw->SetPrimaryClipper(iX1,iY1,iX2,iY2); + //pDraw->SetPrimaryClipper(iX1,iY1,iX2,iY2); } void C4Menu::DrawFrame(C4Surface * sfcSurface, int32_t iX, int32_t iY, int32_t iWdt, int32_t iHgt) { - lpDDraw->DrawFrameDw(sfcSurface, iX+1, iY+1, iX+iWdt-1,iY+iHgt-1, C4RGB(0x44, 0, 0)); + pDraw->DrawFrameDw(sfcSurface, iX+1, iY+1, iX+iWdt-1,iY+iHgt-1, C4RGB(0x44, 0, 0)); } void C4Menu::SetAlignment(int32_t iAlignment) diff --git a/src/gui/C4MessageBoard.cpp b/src/gui/C4MessageBoard.cpp index 6d26710a3..b82068056 100644 --- a/src/gui/C4MessageBoard.cpp +++ b/src/gui/C4MessageBoard.cpp @@ -156,7 +156,7 @@ void C4MessageBoard::Draw(C4Facet &cgo) ::GraphicsSystem.pLoaderScreen->Draw(cgo, Game.InitProgress, &LogBuffer); else // loader not yet loaded: black BG - lpDDraw->DrawBoxDw(cgo.Surface, 0,0, cgo.Wdt, cgo.Hgt, 0x00000000); + pDraw->DrawBoxDw(cgo.Surface, 0,0, cgo.Wdt, cgo.Hgt, 0x00000000); return; } @@ -200,7 +200,7 @@ void C4MessageBoard::Draw(C4Facet &cgo) // dwFade = 0xff000000; dwColor |= dwFade; // Draw - lpDDraw->StringOut(Message,::GraphicsResource.FontRegular,1.0,cgo.Surface,cgo.X,iMsgY,dwColor); + pDraw->StringOut(Message,::GraphicsResource.FontRegular,1.0,cgo.Surface,cgo.X,iMsgY,dwColor); } } diff --git a/src/gui/C4MouseControl.cpp b/src/gui/C4MouseControl.cpp index 2fbd4e815..2ed715f52 100644 --- a/src/gui/C4MouseControl.cpp +++ b/src/gui/C4MouseControl.cpp @@ -393,7 +393,7 @@ void C4MouseControl::Draw(C4TargetFacet &cgo, const ZoomData &GameZoom) int32_t iOffsetX,iOffsetY; ZoomData GuiZoom; - lpDDraw->GetZoom(&GuiZoom); + pDraw->GetZoom(&GuiZoom); // Hidden if (!Visible || !fMouseOwned) return; @@ -442,7 +442,7 @@ void C4MouseControl::Draw(C4TargetFacet &cgo, const ZoomData &GameZoom) float XDraw, YDraw, ZoomDraw; if (fIsGameZoom) { - lpDDraw->SetZoom(GameZoom); + pDraw->SetZoom(GameZoom); XDraw = GameX; YDraw = GameY; ZoomDraw = 1.0f; // for drag construct: draw rounded to game pixels, because construction site will be placed at rounded game pixel positions @@ -454,22 +454,22 @@ void C4MouseControl::Draw(C4TargetFacet &cgo, const ZoomData &GameZoom) XDraw = GuiX; YDraw = GuiY; } // draw in special modulation mode - lpDDraw->SetBlitMode(C4GFXBLIT_MOD2); + pDraw->SetBlitMode(C4GFXBLIT_MOD2); // draw DragImage in red or green, according to the phase to be used iOffsetX=int(ZoomDraw*DragImage.Wdt/2); if (Drag == C4MC_Drag_Construct) iOffsetY=int(ZoomDraw*DragImage.Hgt); else iOffsetY=int(ZoomDraw*DragImage.Hgt/2); - lpDDraw->ActivateBlitModulation((Drag == C4MC_Drag_Script) ? 0x7fffffff : (DragImagePhase ? 0x8f7f0000 : 0x1f007f00)); - lpDDraw->Blit(DragImage.Surface, + pDraw->ActivateBlitModulation((Drag == C4MC_Drag_Script) ? 0x7fffffff : (DragImagePhase ? 0x8f7f0000 : 0x1f007f00)); + pDraw->Blit(DragImage.Surface, float(DragImage.X), float(DragImage.Y), float(DragImage.Wdt), float(DragImage.Hgt), cgo.Surface, XDraw + cgo.X - iOffsetX, YDraw + cgo.Y - iOffsetY, float(DragImage.Wdt)*ZoomDraw, float(DragImage.Hgt)*ZoomDraw,true); // reset color - lpDDraw->DeactivateBlitModulation(); - lpDDraw->SetBlitMode(0); - if (fIsGameZoom) lpDDraw->SetZoom(GuiZoom); + pDraw->DeactivateBlitModulation(); + pDraw->SetBlitMode(0); + if (fIsGameZoom) pDraw->SetZoom(GuiZoom); // reset cursor hotspot offset for script drawing iOffsetX = GfxR->fctMouseCursor.Wdt/2; iOffsetY = GfxR->fctMouseCursor.Hgt/2; @@ -493,7 +493,7 @@ void C4MouseControl::Draw(C4TargetFacet &cgo, const ZoomData &GameZoom) //------------------------------------------------------------------------------------------ case C4MC_Drag_Selecting: // Draw frame - lpDDraw->DrawFrameDw(cgo.Surface, + pDraw->DrawFrameDw(cgo.Surface, int32_t(cgo.X + GuiX), int32_t(cgo.Y + GuiY), int32_t(cgo.X + (DownX - cgo.TargetX) * GameZoom.Zoom / GuiZoom.Zoom), @@ -517,7 +517,7 @@ void C4MouseControl::Draw(C4TargetFacet &cgo, const ZoomData &GameZoom) // Otherwise red mouse control style int32_t iWdt,iHgt; ::GraphicsResource.FontRegular.GetTextExtent(Caption.getData(), iWdt, iHgt, true); - lpDDraw->TextOut(Caption.getData(), ::GraphicsResource.FontRegular, 1.0, + pDraw->TextOut(Caption.getData(), ::GraphicsResource.FontRegular, 1.0, cgo.Surface, float(cgo.X)+BoundBy(GuiX,float(iWdt)/2+1,float(cgo.Wdt)-iWdt/2-1), float(cgo.Y)+Min( CaptionBottomY ? float(CaptionBottomY-iHgt-1) : GuiY+13, float(cgo.Hgt-iHgt)), diff --git a/src/gui/C4PlayerInfoListBox.cpp b/src/gui/C4PlayerInfoListBox.cpp index ab8d29a66..46db97d1b 100644 --- a/src/gui/C4PlayerInfoListBox.cpp +++ b/src/gui/C4PlayerInfoListBox.cpp @@ -71,7 +71,7 @@ bool C4PlayerInfoListBox::ListItem::CanLocalChooseTeams(int32_t idPlayer) const void C4PlayerInfoListBox::ListItem::DrawElement(C4TargetFacet &cgo) { - if (dwBackground) lpDDraw->DrawBoxDw(cgo.Surface, cgo.TargetX+rcBounds.x, cgo.TargetY+rcBounds.y, cgo.TargetX+rcBounds.x+rcBounds.Wdt-1, cgo.TargetY+rcBounds.y+rcBounds.Hgt-1, dwBackground); + if (dwBackground) pDraw->DrawBoxDw(cgo.Surface, cgo.TargetX+rcBounds.x, cgo.TargetY+rcBounds.y, cgo.TargetX+rcBounds.x+rcBounds.Wdt-1, cgo.TargetY+rcBounds.y+rcBounds.Hgt-1, dwBackground); typedef C4GUI::Window BaseClass; BaseClass::DrawElement(cgo); } @@ -309,10 +309,10 @@ void C4PlayerInfoListBox::PlayerListItem::UpdateIcon(C4PlayerInfo *pInfo, C4Play fctDraw.Wdt = iSizeMax/2; fctDraw.X = 2; // shadow - DWORD dwPrevMod; bool fPrevMod = lpDDraw->GetBlitModulation(dwPrevMod); - lpDDraw->ActivateBlitModulation(1); + DWORD dwPrevMod; bool fPrevMod = pDraw->GetBlitModulation(dwPrevMod); + pDraw->ActivateBlitModulation(1); ::GraphicsResource.fctCrewClr.DrawClr(fctDraw, true, dwJoinedInfoClr); - if (fPrevMod) lpDDraw->ActivateBlitModulation(dwPrevMod); else lpDDraw->DeactivateBlitModulation(); + if (fPrevMod) pDraw->ActivateBlitModulation(dwPrevMod); else pDraw->DeactivateBlitModulation(); fctDraw.X = 0; // gfx ::GraphicsResource.fctCrewClr.DrawClr(fctDraw, true, dwJoinedInfoClr); diff --git a/src/gui/C4Scoreboard.cpp b/src/gui/C4Scoreboard.cpp index 31d31e0dd..c1f58dd48 100644 --- a/src/gui/C4Scoreboard.cpp +++ b/src/gui/C4Scoreboard.cpp @@ -421,7 +421,7 @@ void C4ScoreboardDlg::DrawElement(C4TargetFacet &cgo) { const char *szText = pBrd->GetCell(iCol, iRow)->Text.getData(); if (szText && *szText && (iRow || iCol)) - lpDDraw->TextOut(szText, ::GraphicsResource.FontRegular, 1.0, cgo.Surface, iCol ? iX + piColWidths[iCol]/2 : iX, iY, 0xffffffff, iCol ? ACenter : ALeft); + pDraw->TextOut(szText, ::GraphicsResource.FontRegular, 1.0, cgo.Surface, iCol ? iX + piColWidths[iCol]/2 : iX, iY, 0xffffffff, iCol ? ACenter : ALeft); iX += piColWidths[iCol]; } iY += ::GraphicsResource.FontRegular.GetLineHeight() + YIndent; diff --git a/src/gui/C4StartupAboutDlg.cpp b/src/gui/C4StartupAboutDlg.cpp index cdfa419c2..c569d25b2 100644 --- a/src/gui/C4StartupAboutDlg.cpp +++ b/src/gui/C4StartupAboutDlg.cpp @@ -90,7 +90,7 @@ void C4StartupAboutDlg::DrawElement(C4TargetFacet &cgo) { // draw background - do not use bg drawing proc, because it stretches // pre-clear background instead to prevent blinking borders - if (!IsFading()) lpDDraw->FillBG(); + if (!IsFading()) pDraw->FillBG(); C4Startup::Get()->Graphics.fctAboutBG.Draw(cgo, false); } diff --git a/src/gui/C4StartupMainDlg.cpp b/src/gui/C4StartupMainDlg.cpp index 57d76f9bb..5c7620271 100644 --- a/src/gui/C4StartupMainDlg.cpp +++ b/src/gui/C4StartupMainDlg.cpp @@ -117,7 +117,7 @@ void C4StartupMainDlg::DrawElement(C4TargetFacet &cgo) // draw version info StdStrBuf sVer; sVer.Format(LoadResStr("IDS_DLG_VERSION"), C4VERSION); - lpDDraw->TextOut(sVer.getData(), ::GraphicsResource.TextFont, 1.0f, cgo.Surface, rcBounds.Wdt*1/40, rcBounds.Hgt*38/40, 0xffffffff, ALeft, true); + pDraw->TextOut(sVer.getData(), ::GraphicsResource.TextFont, 1.0f, cgo.Surface, rcBounds.Wdt*1/40, rcBounds.Hgt*38/40, 0xffffffff, ALeft, true); } C4GUI::ContextMenu *C4StartupMainDlg::OnPlayerSelContext(C4GUI::Element *pBtn, int32_t iX, int32_t iY) diff --git a/src/gui/C4StartupNetDlg.cpp b/src/gui/C4StartupNetDlg.cpp index fdb1b5047..2f86ef800 100644 --- a/src/gui/C4StartupNetDlg.cpp +++ b/src/gui/C4StartupNetDlg.cpp @@ -101,7 +101,7 @@ void C4StartupNetListEntry::DrawElement(C4TargetFacet &cgo) { int32_t x1 = cgo.X+cgo.TargetX+rcBounds.x; int32_t y1 = cgo.Y+cgo.TargetY+rcBounds.y; - lpDDraw->DrawBoxDw(cgo.Surface, x1,y1, x1+rcBounds.Wdt, y1+rcBounds.Hgt, C4GUI_ImportantBGColor); + pDraw->DrawBoxDw(cgo.Surface, x1,y1, x1+rcBounds.Wdt, y1+rcBounds.Hgt, C4GUI_ImportantBGColor); } // inherited ParentClass::DrawElement(cgo); diff --git a/src/gui/C4StartupOptionsDlg.cpp b/src/gui/C4StartupOptionsDlg.cpp index c96d86d99..b987277f7 100644 --- a/src/gui/C4StartupOptionsDlg.cpp +++ b/src/gui/C4StartupOptionsDlg.cpp @@ -56,21 +56,21 @@ void C4StartupOptionsDlg::SmallButton::DrawElement(C4TargetFacet &cgo) float iDrawQuadLeft[8] = { x0,y0, x0+iIndent,y0, x0+iIndent,y1-iIndent, x0,y1 }; float iDrawQuadRight[8] = { x1,y0, x1,y1, x1-iIndent,y1, x1-iIndent,y0+iIndent }; float iDrawQuadBottom[8] = { x1,y1, x0,y1, x0+iIndent,y1-iIndent, x1,y1-iIndent }; - lpDDraw->DrawQuadDw(cgo.Surface, iDrawQuadTop, dwClrHigh,dwClrHigh,dwClrHigh,dwClrHigh); - lpDDraw->DrawQuadDw(cgo.Surface, iDrawQuadLeft, dwClrHigh,dwClrHigh,dwClrHigh,dwClrHigh); - lpDDraw->DrawQuadDw(cgo.Surface, iDrawQuadRight, dwClrLow,dwClrLow,dwClrLow,dwClrLow); - lpDDraw->DrawQuadDw(cgo.Surface, iDrawQuadBottom, dwClrLow,dwClrLow,dwClrLow,dwClrLow); - //lpDDraw->DrawFrameDw(cgo.Surface, x0+1, y0+1, x1-1, y1-1, aC4StartupBtnBorderColor2); + pDraw->DrawQuadDw(cgo.Surface, iDrawQuadTop, dwClrHigh,dwClrHigh,dwClrHigh,dwClrHigh); + pDraw->DrawQuadDw(cgo.Surface, iDrawQuadLeft, dwClrHigh,dwClrHigh,dwClrHigh,dwClrHigh); + pDraw->DrawQuadDw(cgo.Surface, iDrawQuadRight, dwClrLow,dwClrLow,dwClrLow,dwClrLow); + pDraw->DrawQuadDw(cgo.Surface, iDrawQuadBottom, dwClrLow,dwClrLow,dwClrLow,dwClrLow); + //pDraw->DrawFrameDw(cgo.Surface, x0+1, y0+1, x1-1, y1-1, aC4StartupBtnBorderColor2); // draw selection highlight int32_t iTxtOff = fDown ? iIndent : 0; if (fEnabled) if (HasDrawFocus() || (fMouseOver && IsInActiveDlg(false))) { - lpDDraw->SetBlitMode(C4GFXBLIT_ADDITIVE); + pDraw->SetBlitMode(C4GFXBLIT_ADDITIVE); ::GraphicsResource.fctButtonHighlight.DrawX(cgo.Surface, x0+5+iTxtOff, y0+3+iTxtOff, rcBounds.Wdt-10, rcBounds.Hgt-6); - lpDDraw->ResetBlitMode(); + pDraw->ResetBlitMode(); } // draw button text - lpDDraw->TextOut(sText.getData(), rUseFont, 1.0f, cgo.Surface, (x0+x1)/2 + iTxtOff, (y0+y1-iTextHgt)/2 + iTxtOff, C4StartupBtnFontClr, ACenter, true); + pDraw->TextOut(sText.getData(), rUseFont, 1.0f, cgo.Surface, (x0+x1)/2 + iTxtOff, (y0+y1-iTextHgt)/2 + iTxtOff, C4StartupBtnFontClr, ACenter, true); } int32_t C4StartupOptionsDlg::SmallButton::GetDefaultButtonHeight() @@ -1170,7 +1170,7 @@ bool C4StartupOptionsDlg::OnGfxMSComboSelChange(C4GUI::ComboBox *pForCombo, int3 { if(pTexMgr) pTexMgr->IntLock(); #ifdef USE_GL - lpDDraw->InvalidateDeviceObjects(); + pDraw->InvalidateDeviceObjects(); // Note: This assumes there is only one GL context (the main context). This // is true in fullscreen mode, and since the startup dlg is only shown in // fullscreen mode we are safe this way. @@ -1182,7 +1182,7 @@ bool C4StartupOptionsDlg::OnGfxMSComboSelChange(C4GUI::ComboBox *pForCombo, int3 // stops until the Window is being moved again (or tasked-out and back in // in fullscreen mode). This does not happen when only reinitializing the // GL context instead of whole DDraw so that's why we do this currently. - if(pD3D) lpDDraw->Clear(); + if(pD3D) pDraw->Clear(); #endif int32_t PrevMultiSampling = Config.Graphics.MultiSampling; @@ -1191,12 +1191,12 @@ bool C4StartupOptionsDlg::OnGfxMSComboSelChange(C4GUI::ComboBox *pForCombo, int3 #ifdef USE_GL if(pGL) pGL->pMainCtx->Init(Application.pWindow, &Application); - lpDDraw->RestoreDeviceObjects(); + pDraw->RestoreDeviceObjects(); #endif #ifdef USE_DIRECTX // Note: Editor is hardcoded to false at this point... I guess that's OK // because C4StartupOptionsDlg is never shown in editor mode anyway. - if(pD3D) lpDDraw->Init(&Application, false, false, Config.Graphics.ResX, Config.Graphics.ResY, Config.Graphics.BitDepth, Config.Graphics.Monitor); + if(pD3D) pDraw->Init(&Application, false, false, Config.Graphics.ResX, Config.Graphics.ResY, Config.Graphics.BitDepth, Config.Graphics.Monitor); #endif if(pTexMgr) pTexMgr->IntUnlock(); @@ -1537,9 +1537,9 @@ void C4StartupOptionsDlg::SaveGfxTroubleshoot() // get config set to be used bool fUseGL = (Config.Graphics.Engine == GFXENGN_OPENGL); // and apply them directly, if the engine is current - if (fUseGL == lpDDraw->IsOpenGL()) + if (fUseGL == pDraw->IsOpenGL()) { - lpDDraw->RestoreDeviceObjects(); + pDraw->RestoreDeviceObjects(); } } diff --git a/src/gui/C4StartupScenSelDlg.cpp b/src/gui/C4StartupScenSelDlg.cpp index d4be905d8..35dc037b4 100644 --- a/src/gui/C4StartupScenSelDlg.cpp +++ b/src/gui/C4StartupScenSelDlg.cpp @@ -156,7 +156,7 @@ bool C4MapFolderData::Load(C4Group &hGroup, C4ScenarioListLoader::Folder *pScenL C4FacetSurface fctDump; bool fSuccess=false; if (fctDump.Create(pScen->rcOverlayPos.Wdt, pScen->rcOverlayPos.Hgt, C4FCT_Full, C4FCT_Full)) { - lpDDraw->Blit(fctBackgroundPicture.Surface, + pDraw->Blit(fctBackgroundPicture.Surface, (float) pScen->rcOverlayPos.x, (float) pScen->rcOverlayPos.y, (float) pScen->rcOverlayPos.Wdt, (float) pScen->rcOverlayPos.Hgt, fctDump.Surface, diff --git a/src/gui/C4UpperBoard.cpp b/src/gui/C4UpperBoard.cpp index 70f1cfa45..f7b1dbba6 100644 --- a/src/gui/C4UpperBoard.cpp +++ b/src/gui/C4UpperBoard.cpp @@ -56,7 +56,7 @@ void C4UpperBoard::Draw(C4Facet &cgo) { if (!cgo.Surface) return; // Background - lpDDraw->BlitSurfaceTile(::GraphicsResource.fctUpperBoard.Surface,Output.Surface,0,0,Output.Wdt,Output.Hgt); + pDraw->BlitSurfaceTile(::GraphicsResource.fctUpperBoard.Surface,Output.Surface,0,0,Output.Wdt,Output.Hgt); // Logo C4Facet cgo2; float fLogoZoom = 1.0f; @@ -66,18 +66,18 @@ void C4UpperBoard::Draw(C4Facet &cgo) // Right text sections int32_t iRightOff = 1; // Playing time - lpDDraw->TextOut(cTimeString, ::GraphicsResource.FontRegular, 1.0, cgo.Surface, C4GUI::GetScreenWdt() - (iRightOff++) * TextWidth - 10, TextYPosition, 0xFFFFFFFF); + pDraw->TextOut(cTimeString, ::GraphicsResource.FontRegular, 1.0, cgo.Surface, C4GUI::GetScreenWdt() - (iRightOff++) * TextWidth - 10, TextYPosition, 0xFFFFFFFF); // Clock if (Config.Graphics.ShowClock) - lpDDraw->TextOut(cTimeString2, ::GraphicsResource.FontRegular, 1.0, cgo.Surface, C4GUI::GetScreenWdt() - (iRightOff++) * TextWidth - 30, TextYPosition, 0xFFFFFFFF); + pDraw->TextOut(cTimeString2, ::GraphicsResource.FontRegular, 1.0, cgo.Surface, C4GUI::GetScreenWdt() - (iRightOff++) * TextWidth - 30, TextYPosition, 0xFFFFFFFF); // FPS if (Config.General.FPS) { sprintf(cTimeString, "%d FPS", Game.FPS); - lpDDraw->TextOut(cTimeString, ::GraphicsResource.FontRegular, 1.0, cgo.Surface, C4GUI::GetScreenWdt() - (iRightOff++) * TextWidth - 30, TextYPosition, 0xFFFFFFFF); + pDraw->TextOut(cTimeString, ::GraphicsResource.FontRegular, 1.0, cgo.Surface, C4GUI::GetScreenWdt() - (iRightOff++) * TextWidth - 30, TextYPosition, 0xFFFFFFFF); } // Scenario title - lpDDraw->TextOut(Game.ScenarioTitle.getData(), ::GraphicsResource.FontRegular, 1.0, cgo.Surface, 10, cgo.Hgt / 2 - ::GraphicsResource.FontRegular.GetLineHeight() / 2, 0xFFFFFFFF); + pDraw->TextOut(Game.ScenarioTitle.getData(), ::GraphicsResource.FontRegular, 1.0, cgo.Surface, 10, cgo.Hgt / 2 - ::GraphicsResource.FontRegular.GetLineHeight() / 2, 0xFFFFFFFF); } void C4UpperBoard::Init(C4Facet &cgo) diff --git a/src/gui/C4Viewport.cpp b/src/gui/C4Viewport.cpp index fcd6bddf1..770dd7676 100644 --- a/src/gui/C4Viewport.cpp +++ b/src/gui/C4Viewport.cpp @@ -174,12 +174,12 @@ void C4Viewport::DrawMenu(C4TargetFacet &cgo0) cgo.Wdt = cgo0.Wdt * cgo0.Zoom; cgo.Hgt = cgo0.Hgt * cgo0.Zoom; cgo.TargetX = float(cgo0.X); cgo.TargetY = float(cgo0.Y); cgo.Zoom = 1; - lpDDraw->SetZoom(cgo.X, cgo.Y, cgo.Zoom); + pDraw->SetZoom(cgo.X, cgo.Y, cgo.Zoom); // Player eliminated if (pPlr && pPlr->Eliminated) { - lpDDraw->TextOut(FormatString(LoadResStr(pPlr->Surrendered ? "IDS_PLR_SURRENDERED" : "IDS_PLR_ELIMINATED"),pPlr->GetName()).getData(), + pDraw->TextOut(FormatString(LoadResStr(pPlr->Surrendered ? "IDS_PLR_SURRENDERED" : "IDS_PLR_ELIMINATED"),pPlr->GetName()).getData(), ::GraphicsResource.FontRegular, 1.0, cgo.Surface,cgo.TargetX+cgo.Wdt/2,cgo.TargetY+2*cgo.Hgt/3,0xfaFF0000,ACenter); return; } @@ -193,12 +193,12 @@ void C4Viewport::DrawMenu(C4TargetFacet &cgo0) if (::MouseControl.IsDragging() && ::MouseControl.IsViewport(this)) { fDragging = true; - lpDDraw->ActivateBlitModulation(0x4fffffff); + pDraw->ActivateBlitModulation(0x4fffffff); } // draw menu pPlr->Cursor->Menu->Draw(cgo); // reset modulation for dragging - if (fDragging) lpDDraw->DeactivateBlitModulation(); + if (fDragging) pDraw->DeactivateBlitModulation(); } // Player menu if (pPlr && pPlr->Menu.IsActive()) @@ -217,7 +217,7 @@ void C4Viewport::DrawMenu(C4TargetFacet &cgo0) ResetMenuPositions=false; // restore Zoom - lpDDraw->SetZoom(cgo0.X, cgo0.Y, cgo0.Zoom); + pDraw->SetZoom(cgo0.X, cgo0.Y, cgo0.Zoom); } void C4Viewport::Draw(C4TargetFacet &cgo0, bool fDrawOverlay) @@ -235,18 +235,18 @@ void C4Viewport::Draw(C4TargetFacet &cgo0, bool fDrawOverlay) if (fDrawOverlay) { // Draw landscape borders. Only if overlay, so complete map screenshots don't get messed up - if (BorderLeft) lpDDraw->BlitSurfaceTile(::GraphicsResource.fctBackground.Surface,cgo.Surface,DrawX,DrawY,BorderLeft,ViewHgt,-DrawX,-DrawY); - if (BorderTop) lpDDraw->BlitSurfaceTile(::GraphicsResource.fctBackground.Surface,cgo.Surface,DrawX+BorderLeft,DrawY,ViewWdt-BorderLeft-BorderRight,BorderTop,-DrawX-BorderLeft,-DrawY); - if (BorderRight) lpDDraw->BlitSurfaceTile(::GraphicsResource.fctBackground.Surface,cgo.Surface,DrawX+ViewWdt-BorderRight,DrawY,BorderRight,ViewHgt,-DrawX-ViewWdt+BorderRight,-DrawY); - if (BorderBottom)lpDDraw->BlitSurfaceTile(::GraphicsResource.fctBackground.Surface,cgo.Surface,DrawX+BorderLeft,DrawY+ViewHgt-BorderBottom,ViewWdt-BorderLeft-BorderRight,BorderBottom,-DrawX-BorderLeft,-DrawY-ViewHgt+BorderBottom); + if (BorderLeft) pDraw->BlitSurfaceTile(::GraphicsResource.fctBackground.Surface,cgo.Surface,DrawX,DrawY,BorderLeft,ViewHgt,-DrawX,-DrawY); + if (BorderTop) pDraw->BlitSurfaceTile(::GraphicsResource.fctBackground.Surface,cgo.Surface,DrawX+BorderLeft,DrawY,ViewWdt-BorderLeft-BorderRight,BorderTop,-DrawX-BorderLeft,-DrawY); + if (BorderRight) pDraw->BlitSurfaceTile(::GraphicsResource.fctBackground.Surface,cgo.Surface,DrawX+ViewWdt-BorderRight,DrawY,BorderRight,ViewHgt,-DrawX-ViewWdt+BorderRight,-DrawY); + if (BorderBottom)pDraw->BlitSurfaceTile(::GraphicsResource.fctBackground.Surface,cgo.Surface,DrawX+BorderLeft,DrawY+ViewHgt-BorderBottom,ViewWdt-BorderLeft-BorderRight,BorderBottom,-DrawX-BorderLeft,-DrawY-ViewHgt+BorderBottom); // Set clippers cgo.X += BorderLeft; cgo.Y += BorderTop; cgo.Wdt -= int(float(BorderLeft+BorderRight)/cgo.Zoom); cgo.Hgt -= int(float(BorderTop+BorderBottom)/cgo.Zoom); GameZoom.X = cgo.X; GameZoom.Y = cgo.Y; cgo.TargetX += BorderLeft/Zoom; cgo.TargetY += BorderTop/Zoom; // Apply Zoom - lpDDraw->SetZoom(GameZoom); - lpDDraw->SetPrimaryClipper(cgo.X,cgo.Y,DrawX+ViewWdt-1-BorderRight,DrawY+ViewHgt-1-BorderBottom); + pDraw->SetZoom(GameZoom); + pDraw->SetPrimaryClipper(cgo.X,cgo.Y,DrawX+ViewWdt-1-BorderRight,DrawY+ViewHgt-1-BorderBottom); } last_game_draw_cgo = cgo; @@ -259,11 +259,11 @@ void C4Viewport::Draw(C4TargetFacet &cgo0, bool fDrawOverlay) { ClrModMap.Reset(Game.C4S.Landscape.FoWRes, Game.C4S.Landscape.FoWRes, ViewWdt, ViewHgt, int(cgo.TargetX*Zoom), int(cgo.TargetY*Zoom), 0, cgo.X-BorderLeft, cgo.Y-BorderTop, Game.FoWColor, cgo.Surface); pPlr->FoW2Map(ClrModMap, int(float(cgo.X)/Zoom-cgo.TargetX), int(float(cgo.Y)/Zoom-cgo.TargetY)); - lpDDraw->SetClrModMap(&ClrModMap); - lpDDraw->SetClrModMapEnabled(true); + pDraw->SetClrModMap(&ClrModMap); + pDraw->SetClrModMapEnabled(true); } else - lpDDraw->SetClrModMapEnabled(false); + pDraw->SetClrModMapEnabled(false); */ C4ST_STARTNEW(SkyStat, "C4Viewport::Draw: Sky") @@ -299,7 +299,7 @@ void C4Viewport::Draw(C4TargetFacet &cgo0, bool fDrawOverlay) /* Fog of war disabled, see above // FogOfWar-mod off - lpDDraw->SetClrModMapEnabled(false); + pDraw->SetClrModMapEnabled(false); */ @@ -308,8 +308,8 @@ void C4Viewport::Draw(C4TargetFacet &cgo0, bool fDrawOverlay) // Determine zoom of overlay float fGUIZoom = GetGUIZoom(); // now restore complete cgo range for overlay drawing - lpDDraw->SetZoom(DrawX,DrawY, fGUIZoom); - lpDDraw->SetPrimaryClipper(DrawX,DrawY,DrawX+(ViewWdt-1),DrawY+(ViewHgt-1)); + pDraw->SetZoom(DrawX,DrawY, fGUIZoom); + pDraw->SetPrimaryClipper(DrawX,DrawY,DrawX+(ViewWdt-1),DrawY+(ViewHgt-1)); C4TargetFacet gui_cgo; gui_cgo.Set(cgo0); @@ -331,7 +331,7 @@ void C4Viewport::Draw(C4TargetFacet &cgo0, bool fDrawOverlay) // Game messages C4ST_STARTNEW(MsgStat, "C4Viewport::DrawOverlay: Messages") - lpDDraw->SetZoom(0, 0, 1.0); + pDraw->SetZoom(0, 0, 1.0); ::Messages.Draw(gui_cgo, cgo, Player); C4ST_STOP(MsgStat) @@ -342,8 +342,8 @@ void C4Viewport::Draw(C4TargetFacet &cgo0, bool fDrawOverlay) C4ST_STOP(OvrStat) // Remove zoom n clippers - lpDDraw->SetZoom(0, 0, 1.0); - lpDDraw->NoPrimaryClipper(); + pDraw->SetZoom(0, 0, 1.0); + pDraw->NoPrimaryClipper(); } } @@ -379,7 +379,7 @@ void C4Viewport::Execute() C4Window * w = pWindow; if (!w) w = &FullScreen; cgo.Set(w->pSurface,DrawX,DrawY,int32_t(ceilf(float(ViewWdt)/Zoom)),int32_t(ceilf(float(ViewHgt)/Zoom)),ViewX,ViewY,Zoom); - lpDDraw->PrepareRendering(w->pSurface); + pDraw->PrepareRendering(w->pSurface); // Draw Draw(cgo, true); // Video record & status (developer mode, first player viewport) @@ -699,7 +699,7 @@ void C4Viewport::DrawPlayerStartup(C4TargetFacet &cgo) } // Name - lpDDraw->TextOut(pPlr->GetName(), ::GraphicsResource.FontRegular, 1.0, cgo.Surface, + pDraw->TextOut(pPlr->GetName(), ::GraphicsResource.FontRegular, 1.0, cgo.Surface, cgo.X+cgo.Wdt/2,cgo.Y+cgo.Hgt*2/3+iNameHgtOff + DrawMessageOffset, pPlr->ColorDw | 0xff000000, ACenter); } @@ -807,7 +807,7 @@ void C4ViewportList::DrawFullscreenBackground() for (int i=0, iNum=BackgroundAreas.GetCount(); iBlitSurfaceTile(::GraphicsResource.fctBackground.Surface,FullScreen.pSurface,rc.x,rc.y,rc.Wdt,rc.Hgt,-rc.x,-rc.y); + pDraw->BlitSurfaceTile(::GraphicsResource.fctBackground.Surface,FullScreen.pSurface,rc.x,rc.y,rc.Wdt,rc.Hgt,-rc.x,-rc.y); } } diff --git a/src/lib/StdMeshMaterial.cpp b/src/lib/StdMeshMaterial.cpp index c339d3460..f8e2b1ca8 100644 --- a/src/lib/StdMeshMaterial.cpp +++ b/src/lib/StdMeshMaterial.cpp @@ -1018,7 +1018,7 @@ void StdMeshMatManager::Parse(const char* mat_script, const char* filename, StdM mat.Load(ctx); // To Gfxspecific setup of the material; choose working techniques - if (lpDDraw->PrepareMaterial(mat) && mat.BestTechniqueIndex != -1) + if (pDraw->PrepareMaterial(mat) && mat.BestTechniqueIndex != -1) Materials[material_name] = mat; else ctx.Error(StdCopyStrBuf("No working technique for material '") + material_name + "'"); diff --git a/src/lib/texture/C4Facet.cpp b/src/lib/texture/C4Facet.cpp index 982084fd3..3a0940d25 100644 --- a/src/lib/texture/C4Facet.cpp +++ b/src/lib/texture/C4Facet.cpp @@ -70,9 +70,9 @@ C4Facet C4Facet::GetPhase(int iPhaseX, int iPhaseY) void C4Facet::Draw(C4Surface * sfcTarget, float iX, float iY, int32_t iPhaseX, int32_t iPhaseY) { - if (!lpDDraw || !Surface || !sfcTarget || !Wdt || !Hgt) return; + if (!pDraw || !Surface || !sfcTarget || !Wdt || !Hgt) return; - lpDDraw->Blit(Surface, + pDraw->Blit(Surface, float(X+Wdt*iPhaseX),float(Y+Hgt*iPhaseY),float(Wdt),float(Hgt), sfcTarget, iX,iY,Wdt,Hgt,true); @@ -80,9 +80,9 @@ void C4Facet::Draw(C4Surface * sfcTarget, float iX, float iY, int32_t iPhaseX, i void C4Facet::DrawT(C4Surface * sfcTarget, float iX, float iY, int32_t iPhaseX, int32_t iPhaseY, C4DrawTransform *pTransform) { - if (!lpDDraw || !Surface || !sfcTarget || !Wdt || !Hgt) return; + if (!pDraw || !Surface || !sfcTarget || !Wdt || !Hgt) return; - lpDDraw->Blit(Surface, + pDraw->Blit(Surface, float(X+Wdt*iPhaseX),float(Y+Hgt*iPhaseY),float(Wdt),float(Hgt), sfcTarget, iX,iY,Wdt,Hgt,true,pTransform); @@ -90,7 +90,7 @@ void C4Facet::DrawT(C4Surface * sfcTarget, float iX, float iY, int32_t iPhaseX, void C4Facet::DrawT(C4Facet &cgo, bool fAspect, int32_t iPhaseX, int32_t iPhaseY, C4DrawTransform *pTransform) { - if (!lpDDraw || !Surface || !cgo.Surface || !Wdt || !Hgt) return; + if (!pDraw || !Surface || !cgo.Surface || !Wdt || !Hgt) return; // Drawing area C4Facet ccgo = cgo; @@ -111,7 +111,7 @@ void C4Facet::DrawT(C4Facet &cgo, bool fAspect, int32_t iPhaseX, int32_t iPhaseY } } - lpDDraw->Blit(Surface, + pDraw->Blit(Surface, float(X+Wdt*iPhaseX),float(Y+Hgt*iPhaseY),float(Wdt),float(Hgt), ccgo.Surface,ccgo.X,ccgo.Y,ccgo.Wdt,ccgo.Hgt, true,pTransform); @@ -120,7 +120,7 @@ void C4Facet::DrawT(C4Facet &cgo, bool fAspect, int32_t iPhaseX, int32_t iPhaseY void C4Facet::Draw(C4Facet &cgo, bool fAspect, int32_t iPhaseX, int32_t iPhaseY, bool fTransparent) { // Valid parameter check - if (!lpDDraw || !Surface || !cgo.Surface || !Wdt || !Hgt) return; + if (!pDraw || !Surface || !cgo.Surface || !Wdt || !Hgt) return; // Drawing area C4Facet ccgo = cgo; // Adjust for fixed aspect ratio @@ -140,7 +140,7 @@ void C4Facet::Draw(C4Facet &cgo, bool fAspect, int32_t iPhaseX, int32_t iPhaseY, } } // Blit - lpDDraw->Blit(Surface, + pDraw->Blit(Surface, float(X+Wdt*iPhaseX),float(Y+Hgt*iPhaseY),float(Wdt),float(Hgt), ccgo.Surface, ccgo.X,ccgo.Y,ccgo.Wdt,ccgo.Hgt, @@ -152,8 +152,8 @@ void C4Facet::DrawFullScreen(C4Facet &cgo) // stretched fullscreen blit: make sure right and lower side are cleared, because this may be missed due to stretching if (cgo.Wdt > Wdt+2 || cgo.Hgt > Wdt+2) { - lpDDraw->DrawBoxDw(cgo.Surface, cgo.X, cgo.Y+cgo.Hgt-1, cgo.X+cgo.Wdt+2, cgo.Y+cgo.Hgt+2, 0xff000000); - lpDDraw->DrawBoxDw(cgo.Surface, cgo.X+cgo.Wdt-1, cgo.Y, cgo.X+cgo.Wdt+2, cgo.Y+cgo.Hgt+2, 0xff000000); + pDraw->DrawBoxDw(cgo.Surface, cgo.X, cgo.Y+cgo.Hgt-1, cgo.X+cgo.Wdt+2, cgo.Y+cgo.Hgt+2, 0xff000000); + pDraw->DrawBoxDw(cgo.Surface, cgo.X+cgo.Wdt-1, cgo.Y, cgo.X+cgo.Wdt+2, cgo.Y+cgo.Hgt+2, 0xff000000); } // normal blit OK Draw(cgo, false); @@ -186,10 +186,10 @@ void C4Facet::DrawValue2Clr(C4Facet &cgo, int32_t iValue1, int32_t iValue2, DWOR void C4Facet::DrawXR(C4Surface * sfcTarget, int32_t iX, int32_t iY, int32_t iWdt, int32_t iHgt, int32_t iSectionX, int32_t iSectionY, int32_t r) { - if (!lpDDraw || !Surface || !sfcTarget || !Wdt || !Hgt) return; + if (!pDraw || !Surface || !sfcTarget || !Wdt || !Hgt) return; C4BltTransform rot; rot.SetRotate(r, (float) (iX+iX+iWdt)/2, (float) (iY+iY+iHgt)/2); - lpDDraw->Blit(Surface, + pDraw->Blit(Surface, float(X+Wdt*iSectionX),float(Y+Hgt*iSectionY),float(Wdt),float(Hgt), sfcTarget, iX,iY,iWdt,iHgt, @@ -256,20 +256,20 @@ C4Facet C4Facet::Truncate(int32_t iAlign, int32_t iSize) void C4Facet::DrawValue(C4Facet &cgo, int32_t iValue, int32_t iSectionX, int32_t iSectionY, int32_t iAlign) { - if (!lpDDraw) return; + if (!pDraw) return; char ostr[25]; sprintf(ostr,"%i",iValue); switch (iAlign) { case C4FCT_Center: Draw(cgo, true, iSectionX, iSectionY); - lpDDraw->TextOut(ostr, ::GraphicsResource.FontRegular, 1.0, cgo.Surface, + pDraw->TextOut(ostr, ::GraphicsResource.FontRegular, 1.0, cgo.Surface, cgo.X + cgo.Wdt - 1, cgo.Y + cgo.Hgt - 1, CStdDDraw::DEFAULT_MESSAGE_COLOR, ARight); break; case C4FCT_Right: { int32_t textwdt, texthgt; ::GraphicsResource.FontRegular.GetTextExtent(ostr, textwdt, texthgt, false); - lpDDraw->TextOut(ostr, ::GraphicsResource.FontRegular, 1.0, cgo.Surface, + pDraw->TextOut(ostr, ::GraphicsResource.FontRegular, 1.0, cgo.Surface, cgo.X + cgo.Wdt - 1, cgo.Y, CStdDDraw::DEFAULT_MESSAGE_COLOR, ARight); cgo.Set(cgo.Surface, cgo.X + cgo.Wdt - 1 - textwdt - 2 * cgo.Hgt, cgo.Y, 2 * cgo.Hgt, cgo.Hgt); Draw(cgo, true, iSectionX, iSectionY); @@ -280,13 +280,13 @@ void C4Facet::DrawValue(C4Facet &cgo, int32_t iValue, int32_t iSectionX, int32_t void C4Facet::DrawValue2(C4Facet &cgo, int32_t iValue1, int32_t iValue2, int32_t iSectionX, int32_t iSectionY, int32_t iAlign, int32_t *piUsedWidth) { - if (!lpDDraw) return; + if (!pDraw) return; char ostr[25]; sprintf(ostr,"%i/%i",iValue1,iValue2); switch (iAlign) { case C4FCT_Center: Draw(cgo, true, iSectionX, iSectionY); - lpDDraw->TextOut(ostr, ::GraphicsResource.FontRegular, 1.0, cgo.Surface, + pDraw->TextOut(ostr, ::GraphicsResource.FontRegular, 1.0, cgo.Surface, cgo.X + cgo.Wdt - 1, cgo.Y + cgo.Hgt - 1, CStdDDraw::DEFAULT_MESSAGE_COLOR, ARight); break; case C4FCT_Right: @@ -294,7 +294,7 @@ void C4Facet::DrawValue2(C4Facet &cgo, int32_t iValue1, int32_t iValue2, int32_t int32_t textwdt, texthgt; ::GraphicsResource.FontRegular.GetTextExtent(ostr, textwdt, texthgt, false); textwdt += Wdt + 3; - lpDDraw->TextOut(ostr, ::GraphicsResource.FontRegular, 1.0, cgo.Surface, + pDraw->TextOut(ostr, ::GraphicsResource.FontRegular, 1.0, cgo.Surface, cgo.X + cgo.Wdt - 1, cgo.Y, CStdDDraw::DEFAULT_MESSAGE_COLOR, ARight); cgo.Set(cgo.Surface, cgo.X + cgo.Wdt - textwdt, cgo.Y, 2 * cgo.Hgt, cgo.Hgt); Draw(cgo, true, iSectionX, iSectionY); @@ -306,8 +306,8 @@ void C4Facet::DrawValue2(C4Facet &cgo, int32_t iValue1, int32_t iValue2, int32_t void C4Facet::DrawX(C4Surface * sfcTarget, float iX, float iY, float iWdt, float iHgt, int32_t iSectionX, int32_t iSectionY) const { - if (!lpDDraw || !Surface || !sfcTarget || !Wdt || !Hgt) return; - lpDDraw->Blit(Surface, + if (!pDraw || !Surface || !sfcTarget || !Wdt || !Hgt) return; + pDraw->Blit(Surface, float(X+Wdt*iSectionX),float(Y+Hgt*iSectionY),float(Wdt),float(Hgt), sfcTarget, iX,iY,iWdt,iHgt, @@ -316,14 +316,14 @@ void C4Facet::DrawX(C4Surface * sfcTarget, float iX, float iY, float iWdt, float void C4Facet::DrawXFloat(C4Surface * sfcTarget, float fX, float fY, float fWdt, float fHgt) const { - if (!lpDDraw || !Surface || !sfcTarget || !Wdt || !Hgt || fWdt<=0 || fHgt<=0) return; + if (!pDraw || !Surface || !sfcTarget || !Wdt || !Hgt || fWdt<=0 || fHgt<=0) return; // Since only source coordinates are available as floats for blitting, go inwards into this facet to match blit // for closest integer target coordinates float zx = fWdt / float(Wdt), zy = fHgt / float(Hgt); int32_t iX = (int32_t) ceilf(fX), iY = (int32_t) ceilf(fY), iX2 = (int32_t) floorf(fX+fWdt), iY2 = (int32_t) floorf(fY+fHgt); float ox = (-fX+iX)/zx, oy = (-fY+iY)/zy; float oxs = (+fX+fWdt-iX2)/zx, oys = (+fY+fHgt-iY2)/zy; - lpDDraw->Blit(Surface, + pDraw->Blit(Surface, float(X)+ox, float(Y)+oy, float(Wdt)-ox-oxs, float(Hgt)-oy-oys, sfcTarget, iX,iY,iX2-iX,iY2-iY, @@ -331,7 +331,7 @@ void C4Facet::DrawXFloat(C4Surface * sfcTarget, float fX, float fY, float fWdt, zx=(iX2-iX)/(float(Wdt)-ox-oxs); zy=(iY2-iY)/(float(Hgt)-oy-oys); /* int32_t iX = floorf(fX+0.5)-1, iY = floorf(fY+0.5)-1, iX2 = floorf(fX+fWdt+0.5)-1, iY2 = floorf(fY+fHgt+0.5)-1; - lpDDraw->Blit(Surface, + pDraw->Blit(Surface, X, Y, Wdt, Hgt, sfcTarget, iX,iY,iX2-iX+1,iY2-iY+1, @@ -340,8 +340,8 @@ void C4Facet::DrawXFloat(C4Surface * sfcTarget, float fX, float fY, float fWdt, void C4Facet::DrawXT(C4Surface * sfcTarget, float iX, float iY, int32_t iWdt, int32_t iHgt, int32_t iPhaseX, int32_t iPhaseY, C4DrawTransform *pTransform) { - if (!lpDDraw || !Surface || !sfcTarget || !Wdt || !Hgt) return; - lpDDraw->Blit(Surface, + if (!pDraw || !Surface || !sfcTarget || !Wdt || !Hgt) return; + pDraw->Blit(Surface, float(X+Wdt*iPhaseX),float(Y+Hgt*iPhaseY),float(Wdt),float(Hgt), sfcTarget, iX,iY,iWdt,iHgt, @@ -351,7 +351,7 @@ void C4Facet::DrawXT(C4Surface * sfcTarget, float iX, float iY, int32_t iWdt, in void C4Facet::DrawEnergyLevelEx(int32_t iLevel, int32_t iRange, const C4Facet &gfx, int32_t bar_idx) { // draw energy level using graphics - if (!lpDDraw || !gfx.Surface) return; + if (!pDraw || !gfx.Surface) return; int32_t h=gfx.Hgt; int32_t yBar = Hgt - BoundBy(iLevel,0,iRange) * Hgt / Max(iRange,1); int32_t iY = 0, vidx=0; @@ -412,9 +412,9 @@ void C4Facet::Set(C4Surface &rSfc) void C4Facet::DrawTile(C4Surface * sfcTarget, int32_t iX, int32_t iY, int32_t iWdt, int32_t iHgt) { - if (!lpDDraw || !Surface || !Wdt || !Hgt) return; + if (!pDraw || !Surface || !Wdt || !Hgt) return; // Blits whole source surface, not surface facet area - lpDDraw->BlitSurfaceTile(Surface,sfcTarget,iX,iY,iWdt,iHgt,0,0,true); + pDraw->BlitSurfaceTile(Surface,sfcTarget,iX,iY,iWdt,iHgt,0,0,true); } void C4Facet::Expand(int32_t iLeft, int32_t iRight, int32_t iTop, int32_t iBottom) diff --git a/src/lib/texture/C4FacetEx.cpp b/src/lib/texture/C4FacetEx.cpp index 35a54359b..04d832e3c 100644 --- a/src/lib/texture/C4FacetEx.cpp +++ b/src/lib/texture/C4FacetEx.cpp @@ -46,13 +46,13 @@ void C4TargetFacet::SetRect(C4TargetRect &rSrc) void C4TargetFacet::DrawLineDw(int iX1, int iY1, int iX2, int iY2, uint32_t col1, uint32_t col2) { - if (!lpDDraw || !Surface || !Wdt || !Hgt) return; + if (!pDraw || !Surface || !Wdt || !Hgt) return; // Scroll position iX1-=TargetX; iY1-=TargetY; iX2-=TargetX; iY2-=TargetY; // No clipping is done here, because clipping will be done by gfx wrapper anyway // Draw line - lpDDraw->DrawLineDw(Surface,X+iX1,Y+iY1,X+iX2,Y+iY2,col1); - lpDDraw->DrawPix(Surface,(float)(X+iX1),(float)(Y+iY1),col2); + pDraw->DrawLineDw(Surface,X+iX1,Y+iY1,X+iX2,Y+iY2,col1); + pDraw->DrawPix(Surface,(float)(X+iX1),(float)(Y+iY1),col2); } // ------------------------ @@ -92,7 +92,7 @@ bool C4FacetSurface::EnsureSize(int iMinWdt, int iMinHgt) // create temp surface C4Surface *sfcDup=new C4Surface(iWdt,iHgt); if (!sfcDup) return false; - if (!lpDDraw->BlitSurface(&Face,sfcDup,0,0,false)) + if (!pDraw->BlitSurface(&Face,sfcDup,0,0,false)) { delete sfcDup; return false; } // calc needed size int iDstWdt=Surface->Wdt,iDstHgt=iHgt; @@ -101,7 +101,7 @@ bool C4FacetSurface::EnsureSize(int iMinWdt, int iMinHgt) // recreate this one if (!Face.Create(iDstWdt, iDstHgt)) { delete sfcDup; Clear(); return false; } // blit tiled into it - bool fSuccess=lpDDraw->BlitSurfaceTile(sfcDup, &Face, 0, 0, iDstWdt, iDstHgt, 0, 0, false); + bool fSuccess=pDraw->BlitSurfaceTile(sfcDup, &Face, 0, 0, iDstWdt, iDstHgt, 0, 0, false); // del temp surface delete sfcDup; // done @@ -194,7 +194,7 @@ bool C4FacetSurface::CopyFromSfcMaxSize(C4Surface &srcSfc, int32_t iMaxSize, uin } if (dwColor) srcSfc.SetClr(dwColor); Create(iTargetWdt, iTargetHgt); - lpDDraw->Blit(&srcSfc, 0.0f,0.0f,float(fctSource.Wdt),float(fctSource.Hgt), + pDraw->Blit(&srcSfc, 0.0f,0.0f,float(fctSource.Wdt),float(fctSource.Hgt), &Face, 0,0,iTargetWdt,iTargetHgt); } Set(&Face, 0,0, Face.Wdt, Face.Hgt); @@ -203,8 +203,8 @@ bool C4FacetSurface::CopyFromSfcMaxSize(C4Surface &srcSfc, int32_t iMaxSize, uin void C4FacetSurface::Grayscale(int32_t iOffset) { - if (!lpDDraw || !Surface || !Wdt || !Hgt) return; - lpDDraw->Grayscale(Surface, iOffset); + if (!pDraw || !Surface || !Wdt || !Hgt) return; + pDraw->Grayscale(Surface, iOffset); } bool C4FacetSurface::EnsureOwnSurface() diff --git a/src/network/C4Network2.cpp b/src/network/C4Network2.cpp index 49ccb6c51..c5dc83128 100644 --- a/src/network/C4Network2.cpp +++ b/src/network/C4Network2.cpp @@ -369,7 +369,7 @@ bool C4Network2::DoLobby() ChangeGameStatus(GS_Lobby, 0); // determine lobby type - bool fFullscreenLobby = !Console.Active && (lpDDraw->GetEngine() != GFXENGN_NOGFX); + bool fFullscreenLobby = !Console.Active && (pDraw->GetEngine() != GFXENGN_NOGFX); if (!fFullscreenLobby) { @@ -1022,7 +1022,7 @@ void C4Network2::DrawStatus(C4TargetFacet &cgo) Stat.Append("| - none -"); // draw - lpDDraw->TextOut(Stat.getData(), ::GraphicsResource.FontRegular, 1.0, cgo.Surface,cgo.X + 20,cgo.Y + 50); + pDraw->TextOut(Stat.getData(), ::GraphicsResource.FontRegular, 1.0, cgo.Surface,cgo.X + 20,cgo.Y + 50); } bool C4Network2::InitNetIO(bool fNoClientID, bool fHost) diff --git a/src/network/C4Network2Dialogs.cpp b/src/network/C4Network2Dialogs.cpp index 38b23feee..37160f58b 100644 --- a/src/network/C4Network2Dialogs.cpp +++ b/src/network/C4Network2Dialogs.cpp @@ -797,19 +797,19 @@ void C4Chart::DrawElement(C4TargetFacet &cgo) int iYLegendDraw = (th - iSeriesCount*Q)/2 + ty; while ((pSeries = pDisplayGraph->GetSeries(iSeries++))) { - lpDDraw->TextOut(pSeries->GetTitle(), rFont, 1.0f, cgo.Surface, tx+tw, iYLegendDraw, pSeries->GetColorDw() | 0xff000000, ALeft, true); + pDraw->TextOut(pSeries->GetTitle(), rFont, 1.0f, cgo.Surface, tx+tw, iYLegendDraw, pSeries->GetColorDw() | 0xff000000, ALeft, true); iYLegendDraw += Q; } } // safety: too small? if (tw < 10 || th < 10) return; // draw axis - lpDDraw->DrawLineDw(cgo.Surface, tx, ty+th, tx+tw-1, ty+th, C4RGB(0x91, 0x91, 0x91)); - lpDDraw->DrawLineDw(cgo.Surface, tx+tw-1, ty+th, tx+tw-1-AxisArrowLen, ty+th-AxisArrowThickness, C4RGB(0x91, 0x91, 0x91)); - lpDDraw->DrawLineDw(cgo.Surface, tx+tw-1, ty+th, tx+tw-1-AxisArrowLen, ty+th+AxisArrowThickness, C4RGB(0x91, 0x91, 0x91)); - lpDDraw->DrawLineDw(cgo.Surface, tx, ty, tx, ty+th, C4RGB(0x91, 0x91, 0x91)); - lpDDraw->DrawLineDw(cgo.Surface, tx, ty, tx-AxisArrowThickness, ty+AxisArrowLen, C4RGB(0x91, 0x91, 0x91)); - lpDDraw->DrawLineDw(cgo.Surface, tx, ty, tx+AxisArrowThickness, ty+AxisArrowLen, C4RGB(0x91, 0x91, 0x91)); + pDraw->DrawLineDw(cgo.Surface, tx, ty+th, tx+tw-1, ty+th, C4RGB(0x91, 0x91, 0x91)); + pDraw->DrawLineDw(cgo.Surface, tx+tw-1, ty+th, tx+tw-1-AxisArrowLen, ty+th-AxisArrowThickness, C4RGB(0x91, 0x91, 0x91)); + pDraw->DrawLineDw(cgo.Surface, tx+tw-1, ty+th, tx+tw-1-AxisArrowLen, ty+th+AxisArrowThickness, C4RGB(0x91, 0x91, 0x91)); + pDraw->DrawLineDw(cgo.Surface, tx, ty, tx, ty+th, C4RGB(0x91, 0x91, 0x91)); + pDraw->DrawLineDw(cgo.Surface, tx, ty, tx-AxisArrowThickness, ty+AxisArrowLen, C4RGB(0x91, 0x91, 0x91)); + pDraw->DrawLineDw(cgo.Surface, tx, ty, tx+AxisArrowThickness, ty+AxisArrowLen, C4RGB(0x91, 0x91, 0x91)); tw -= AxisArrowLen + AxisArrowIndent; th -= AxisArrowLen + AxisArrowIndent; ty += AxisArrowLen + AxisArrowIndent; // do axis numbering @@ -821,17 +821,17 @@ void C4Chart::DrawElement(C4TargetFacet &cgo) for (; iTime <= iMaxTime; iTime += iXAxisSteps) { iX = tx + tw * (iTime-iMinTime) / dt; - lpDDraw->DrawLineDw(cgo.Surface, iX, ty+th+1, iX, ty+th+AxisMarkerLen, C4RGB(0x91, 0x91, 0x91)); + pDraw->DrawLineDw(cgo.Surface, iX, ty+th+1, iX, ty+th+AxisMarkerLen, C4RGB(0x91, 0x91, 0x91)); sbuf.Format("%d", (int) iTime); - lpDDraw->TextOut(sbuf.getData(), rFont, 1.0f, cgo.Surface, iX, ty+th+AxisMarkerLen, 0xff7f7f7f, ACenter, false); + pDraw->TextOut(sbuf.getData(), rFont, 1.0f, cgo.Surface, iX, ty+th+AxisMarkerLen, 0xff7f7f7f, ACenter, false); } iVal = int( ((iMinVal-(iMinVal>0))/iYAxisSteps+(iMinVal>0))*iYAxisSteps ); for (; iVal <= iMaxVal; iVal += iYAxisSteps) { iY = ty+th - int((iVal-iMinVal) / dv * th); - lpDDraw->DrawLineDw(cgo.Surface, tx-AxisMarkerLen, iY, tx-1, iY, C4RGB(0x91, 0x91, 0x91)); + pDraw->DrawLineDw(cgo.Surface, tx-AxisMarkerLen, iY, tx-1, iY, C4RGB(0x91, 0x91, 0x91)); sbuf.Format("%d", (int) iVal); - lpDDraw->TextOut(sbuf.getData(), rFont, 1.0f, cgo.Surface, tx-AxisMarkerLen, iY-rFont.GetLineHeight()/2, 0xff7f7f7f, ARight, false); + pDraw->TextOut(sbuf.getData(), rFont, 1.0f, cgo.Surface, tx-AxisMarkerLen, iY-rFont.GetLineHeight()/2, 0xff7f7f7f, ARight, false); } // draw graph series(es) int iSeries = 0; @@ -845,7 +845,7 @@ void C4Chart::DrawElement(C4TargetFacet &cgo) iTime = iMinTime + dt*iX/tw; if (!Inside(iTime, iThisMinTime, iThisMaxTime)) continue; int iY2 = int((-pSeries->GetValue(iTime) + iMinVal) * th / dv) + ty+th; - if (fAnyVal) lpDDraw->DrawLineDw(cgo.Surface, (float) (tx+iX-1), (float) iY, (float) (tx+iX), (float) iY2, pSeries->GetColorDw()); + if (fAnyVal) pDraw->DrawLineDw(cgo.Surface, (float) (tx+iX-1), (float) iY, (float) (tx+iX), (float) iY2, pSeries->GetColorDw()); iY = iY2; fAnyVal = true; } diff --git a/src/platform/C4Surface.cpp b/src/platform/C4Surface.cpp index 5120c4b41..d99c2ad1e 100644 --- a/src/platform/C4Surface.cpp +++ b/src/platform/C4Surface.cpp @@ -207,8 +207,8 @@ bool C4Surface::Create(int iWdt, int iHgt, bool, bool fIsRenderTarget, int MaxTe if (!iWdt || !iHgt) return false; Wdt=iWdt; Hgt=iHgt; // create texture: check gfx system - if (!lpDDraw) return false; - if (!lpDDraw->DeviceReady()) return false; + if (!pDraw) return false; + if (!pDraw->DeviceReady()) return false; // store color format that will be used #ifdef USE_DIRECTX @@ -222,7 +222,7 @@ bool C4Surface::Create(int iWdt, int iHgt, bool, bool fIsRenderTarget, int MaxTe else #endif {/* nothing to do */} - byBytesPP=lpDDraw->byByteCnt; + byBytesPP=pDraw->byByteCnt; this->fIsRenderTarget = fIsRenderTarget; // create textures if (!CreateTextures(MaxTextureSize)) { Clear(); return false; } @@ -241,7 +241,7 @@ bool C4Surface::Copy(C4Surface &fromSfc) // Create surface if (!Create(fromSfc.Wdt, fromSfc.Hgt)) return false; // Blit copy - if (!lpDDraw->BlitSurface(&fromSfc, this, 0, 0, false)) + if (!pDraw->BlitSurface(&fromSfc, this, 0, 0, false)) { Clear(); return false; } // Success return true; @@ -270,7 +270,7 @@ bool C4Surface::CreateTextures(int MaxTextureSize) { // free previous FreeTextures(); - iTexSize=Min(GetNeedTexSize(Max(Wdt, Hgt)), lpDDraw->MaxTexSize); + iTexSize=Min(GetNeedTexSize(Max(Wdt, Hgt)), pDraw->MaxTexSize); if (MaxTextureSize) iTexSize=Min(iTexSize, MaxTextureSize); // get the number of textures needed for this size @@ -522,7 +522,7 @@ bool C4Surface::PageFlip(C4Rect *pSrcRt, C4Rect *pDstRt) if (!fPrimary) return false; // call from gfx thread only! - if (!lpDDraw->pApp || !lpDDraw->pApp->AssertMainThread()) return false; + if (!pDraw->pApp || !pDraw->pApp->AssertMainThread()) return false; #ifdef USE_GL if (pGL) return pCtx->PageFlip(); @@ -709,7 +709,7 @@ bool C4Surface::SavePNG(const char *szFilename, bool fSaveAlpha, bool fApplyGamm for (int x=0; xGamma.ApplyTo(dwClr); + if (fApplyGamma) dwClr = pDraw->Gamma.ApplyTo(dwClr); png.SetPix(x, y, dwClr); } } @@ -765,7 +765,7 @@ bool C4Surface::Lock() // lock it if (pSfc->LockRect(&lock, NULL, 0) != D3D_OK) return false; - lpDDraw->LockingPrimary(); + pDraw->LockingPrimary(); // store pitch and pointer PrimarySurfaceLockPitch=lock.Pitch; PrimarySurfaceLockBits=(BYTE*) lock.pBits; @@ -806,7 +806,7 @@ bool C4Surface::Unlock() // unlocking primary? if (pSfc->UnlockRect() != D3D_OK) return false; - lpDDraw->PrimaryUnlocked(); + pDraw->PrimaryUnlocked(); } else #endif @@ -972,12 +972,12 @@ DWORD C4Surface::GetPixDw(int iX, int iY, bool fApplyModulation) // otherwise, it's a ColorByOwner-pixel: adjust the color if (fApplyModulation) { - if (lpDDraw->dwBlitMode & C4GFXBLIT_CLRSFC_MOD2) + if (pDraw->dwBlitMode & C4GFXBLIT_CLRSFC_MOD2) ModulateClrMOD2(dwPix, ClrByOwnerClr); else ModulateClr(dwPix, ClrByOwnerClr); - if (lpDDraw->BlitModulated && !(lpDDraw->dwBlitMode & C4GFXBLIT_CLRSFC_OWNCLR)) - ModulateClr(dwPix, lpDDraw->BlitModulateClr); + if (pDraw->BlitModulated && !(pDraw->dwBlitMode & C4GFXBLIT_CLRSFC_OWNCLR)) + ModulateClr(dwPix, pDraw->BlitModulateClr); } else ModulateClr(dwPix, ClrByOwnerClr); @@ -993,12 +993,12 @@ DWORD C4Surface::GetPixDw(int iX, int iY, bool fApplyModulation) { // single main surface // apply color modulation if desired - if (fApplyModulation && lpDDraw->BlitModulated) + if (fApplyModulation && pDraw->BlitModulated) { - if (lpDDraw->dwBlitMode & C4GFXBLIT_MOD2) - ModulateClrMOD2(dwPix, lpDDraw->BlitModulateClr); + if (pDraw->dwBlitMode & C4GFXBLIT_MOD2) + ModulateClrMOD2(dwPix, pDraw->BlitModulateClr); else - ModulateClr(dwPix, lpDDraw->BlitModulateClr); + ModulateClr(dwPix, pDraw->BlitModulateClr); } } // return pixel value @@ -1173,7 +1173,7 @@ bool C4Surface::BltPix(int iX, int iY, C4Surface *sfcSource, int iSrcX, int iSrc } else { - if (lpDDraw->dwBlitMode & C4GFXBLIT_ADDITIVE) + if (pDraw->dwBlitMode & C4GFXBLIT_ADDITIVE) BltAlphaAdd(*pPix32, srcPix); else BltAlpha(*pPix32, srcPix); @@ -1194,7 +1194,7 @@ bool C4Surface::BltPix(int iX, int iY, C4Surface *sfcSource, int iSrcX, int iSrc { // merge in 32 bit DWORD dwDst=ClrW2Dw(*pPix16); - if (lpDDraw->dwBlitMode & C4GFXBLIT_ADDITIVE) + if (pDraw->dwBlitMode & C4GFXBLIT_ADDITIVE) BltAlphaAdd(dwDst, srcPix); else BltAlpha(dwDst, srcPix); @@ -1299,8 +1299,8 @@ C4TexRef::C4TexRef(int iSizeX, int iSizeY, bool fSingle) if (!pTexMgr) pTexMgr = new C4TexMgr(); pTexMgr->RegTex(this); // create texture: check ddraw - if (!lpDDraw) return; - if (!lpDDraw->DeviceReady()) return; + if (!pDraw) return; + if (!pDraw->DeviceReady()) return; // create it! #ifdef USE_DIRECTX if (pD3D) @@ -1309,7 +1309,7 @@ C4TexRef::C4TexRef(int iSizeX, int iSizeY, bool fSingle) bool fRenderTarget = fSingle && !Config.Graphics.NoOffscreenBlits; if (pD3D->lpDevice->CreateTexture(iSizeX, iSizeY, 1, fRenderTarget ? D3DUSAGE_RENDERTARGET : 0, pD3D->dwSurfaceType, fRenderTarget ? D3DPOOL_DEFAULT : D3DPOOL_MANAGED, &pTex, NULL) != D3D_OK) { - lpDDraw->Error("Error creating surface"); + pDraw->Error("Error creating surface"); return; } // empty texture @@ -1332,10 +1332,10 @@ C4TexRef::C4TexRef(int iSizeX, int iSizeY, bool fSingle) } else #endif - if (lpDDraw) + if (pDraw) { - texLock.pBits = new unsigned char[iSizeX*iSizeY*lpDDraw->byByteCnt]; - texLock.Pitch = iSizeX*lpDDraw->byByteCnt; + texLock.pBits = new unsigned char[iSizeX*iSizeY*pDraw->byByteCnt]; + texLock.Pitch = iSizeX*pDraw->byByteCnt; memset(texLock.pBits, 0x00, texLock.Pitch*iSizeY); // Always locked LockSize.x = LockSize.y = 0; @@ -1360,7 +1360,7 @@ C4TexRef::~C4TexRef() if (texName && pGL->pCurrCtx) glDeleteTextures(1, &texName); } #endif - if (lpDDraw) delete [] static_cast(texLock.pBits); texLock.pBits = 0; + if (pDraw) delete [] static_cast(texLock.pBits); texLock.pBits = 0; // remove from texture manager pTexMgr->UnregTex(this); } @@ -1445,7 +1445,7 @@ bool C4TexRef::Lock() texLock.pBits = new unsigned char[iSizeX*iSizeY*pGL->byByteCnt]; texLock.Pitch = iSizeX * pGL->byByteCnt; glBindTexture(GL_TEXTURE_2D, texName); - glGetTexImage(GL_TEXTURE_2D, 0, GL_BGRA, lpDDraw->byByteCnt == 2 ? GL_UNSIGNED_SHORT_4_4_4_4_REV : GL_UNSIGNED_INT_8_8_8_8_REV, texLock.pBits); + glGetTexImage(GL_TEXTURE_2D, 0, GL_BGRA, pDraw->byByteCnt == 2 ? GL_UNSIGNED_SHORT_4_4_4_4_REV : GL_UNSIGNED_INT_8_8_8_8_REV, texLock.pBits); return true; } } @@ -1491,7 +1491,7 @@ void C4TexRef::Unlock() // Default, changed in PerformBlt if necessary glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST); - glTexImage2D(GL_TEXTURE_2D, 0, 4, iSizeX, iSizeY, 0, GL_BGRA, lpDDraw->byByteCnt == 2 ? GL_UNSIGNED_SHORT_4_4_4_4_REV : GL_UNSIGNED_INT_8_8_8_8_REV, texLock.pBits); + glTexImage2D(GL_TEXTURE_2D, 0, 4, iSizeX, iSizeY, 0, GL_BGRA, pDraw->byByteCnt == 2 ? GL_UNSIGNED_SHORT_4_4_4_4_REV : GL_UNSIGNED_INT_8_8_8_8_REV, texLock.pBits); } else { @@ -1499,7 +1499,7 @@ void C4TexRef::Unlock() glBindTexture(GL_TEXTURE_2D, texName); glTexSubImage2D(GL_TEXTURE_2D, 0, LockSize.x, LockSize.y, LockSize.Wdt, LockSize.Hgt, - GL_BGRA, lpDDraw->byByteCnt == 2 ? GL_UNSIGNED_SHORT_4_4_4_4_REV : GL_UNSIGNED_INT_8_8_8_8_REV, texLock.pBits); + GL_BGRA, pDraw->byByteCnt == 2 ? GL_UNSIGNED_SHORT_4_4_4_4_REV : GL_UNSIGNED_INT_8_8_8_8_REV, texLock.pBits); } delete[] static_cast(texLock.pBits); texLock.pBits=NULL; // switch back to original context @@ -1517,7 +1517,7 @@ bool C4TexRef::ClearRect(C4Rect &rtClear) if (!LockForUpdate(rtClear)) return false; // clear pixels int y; - switch (lpDDraw->byByteCnt) + switch (pDraw->byByteCnt) { case 2: for (y = rtClear.y; y < rtClear.y + rtClear.Hgt; ++y) @@ -1544,7 +1544,7 @@ bool C4TexRef::FillBlack() if (!Lock()) return false; // clear pixels int y; - switch (lpDDraw->byByteCnt) + switch (pDraw->byByteCnt) { case 2: for (y=0; yDrawFrameDw(cgo.Surface, X+cgo.X,Y+cgo.Y, + pDraw->DrawFrameDw(cgo.Surface, X+cgo.X,Y+cgo.Y, X+cgo.X+Width-1,Y+cgo.Y+Height-1, Recording ? C4RGB(0xca, 0, 0) : C4RGB(0xff, 0xff, 0xff)); // Draw status StdStrBuf str; if (Recording) str.Format("%dx%d Frame %d",Width,Height,AviFrame); else str.Format("%dx%d",Width,Height); - lpDDraw->TextOut(str.getData(), ::GraphicsResource.FontRegular, 1.0,cgo.Surface,cgo.X+X+4,cgo.Y+Y+3,Recording ? 0xfaFF0000 : 0xfaFFFFFF); + pDraw->TextOut(str.getData(), ::GraphicsResource.FontRegular, 1.0,cgo.Surface,cgo.X+X+4,cgo.Y+Y+3,Recording ? 0xfaFF0000 : 0xfaFFFFFF); } bool C4Video::AdjustPosition() diff --git a/src/platform/C4VideoPlayback.cpp b/src/platform/C4VideoPlayback.cpp index 824bafcda..6bf3bfb75 100644 --- a/src/platform/C4VideoPlayback.cpp +++ b/src/platform/C4VideoPlayback.cpp @@ -129,7 +129,7 @@ bool C4VideoShowDialog::LoadVideo(C4VideoFile *pVideoFile) { #ifdef _WIN32 // load video file - if (!AVIFile.OpenFile(pVideoFile->GetFilename(), FullScreen.hWindow, lpDDraw->GetByteCnt()*8)) return false; + if (!AVIFile.OpenFile(pVideoFile->GetFilename(), FullScreen.hWindow, pDraw->GetByteCnt()*8)) return false; // prepare surface for display if (!fctBuffer.Create(AVIFile.GetWdt(), AVIFile.GetHgt(), C4FCT_Full, C4FCT_Full)) return false; iStartFrameTime = 0; // no frame shown yet diff --git a/src/platform/StdD3DShader.cpp b/src/platform/StdD3DShader.cpp index ade489610..30293fb68 100644 --- a/src/platform/StdD3DShader.cpp +++ b/src/platform/StdD3DShader.cpp @@ -107,7 +107,7 @@ void CStdD3DShader::Discard() bool CStdD3DShader::Error(const char *szMsg) { - return lpDDraw->Error(FormatString("Direct3D Shader error: %s", szMsg).getData()); + return pDraw->Error(FormatString("Direct3D Shader error: %s", szMsg).getData()); } bool CStdD3DShader::Compile(bool fMod2, bool fColoredFoW) diff --git a/src/platform/StdDDraw2.cpp b/src/platform/StdDDraw2.cpp index d253418ef..657a3267f 100644 --- a/src/platform/StdDDraw2.cpp +++ b/src/platform/StdDDraw2.cpp @@ -41,7 +41,7 @@ #include // Global access pointer -CStdDDraw *lpDDraw=NULL; +CStdDDraw *pDraw=NULL; int iGfxEngine=-1; // Transformation matrix to convert meshes from Ogre to Clonk coordinate system @@ -247,7 +247,7 @@ void C4FogOfWar::Reset(int ResX, int ResY, int WdtPx, int HgtPx, int OffX, int O { // then draw a background now and fade against transparent later // FIXME: don't do this if shaders are used - lpDDraw->DrawBoxDw(backsfc, x0,y0, x0+WdtPx-1, y0+HgtPx-1, dwBackClr); + pDraw->DrawBoxDw(backsfc, x0,y0, x0+WdtPx-1, y0+HgtPx-1, dwBackClr); FadeTransparent = true; } else @@ -277,8 +277,8 @@ void C4FogOfWar::ReduceModulation(int cx, int cy, int Radius, int (*VisProc)(int // display coordinates: zx, zy, x, y float zx = float(cx); float zy = float(cy); - lpDDraw->ApplyZoom(zx, zy); - Radius = int(lpDDraw->Zoom * Radius); + pDraw->ApplyZoom(zx, zy); + Radius = int(pDraw->Zoom * Radius); // reveal all within iRadius1; fade off squared until iRadius2 int x = OffX, y = OffY, xe = Wdt*ResolutionX+OffX; int RadiusSq = Radius*Radius; @@ -288,7 +288,7 @@ void C4FogOfWar::ReduceModulation(int cx, int cy, int Radius, int (*VisProc)(int { float lx = float(x); float ly = float(y); - lpDDraw->RemoveZoom(lx, ly); + pDraw->RemoveZoom(lx, ly); pMap[i] = Max(pMap[i], VisProc(255, int(lx), int(ly), int(cx), int(cy))); } // next pos @@ -301,10 +301,10 @@ void C4FogOfWar::AddModulation(int cx, int cy, int Radius, uint8_t Transparency) { { float x=float(cx); float y=float(cy); - lpDDraw->ApplyZoom(x,y); + pDraw->ApplyZoom(x,y); cx=int(x); cy=int(y); } - Radius = int(lpDDraw->Zoom * Radius); + Radius = int(pDraw->Zoom * Radius); // hide all within iRadius1; fade off squared until iRadius2 int x = OffX, y = OffY, xe = Wdt*ResolutionX+OffX; int RadiusSq = Radius*Radius; @@ -1254,19 +1254,19 @@ bool DDrawInit(C4AbstractApp * pApp, bool Editor, bool fUsePageLock, unsigned in { default: // Use the first engine possible if none selected #ifdef USE_DIRECTX - case GFXENGN_DIRECTX: lpDDraw = new CStdD3D(false); break; - case GFXENGN_DIRECTXS: lpDDraw = new CStdD3D(true); break; + case GFXENGN_DIRECTX: pDraw = new CStdD3D(false); break; + case GFXENGN_DIRECTXS: pDraw = new CStdD3D(true); break; #endif #ifdef USE_GL - case GFXENGN_OPENGL: lpDDraw = new CStdGL(); break; + case GFXENGN_OPENGL: pDraw = new CStdGL(); break; #endif - case GFXENGN_NOGFX: lpDDraw = new CStdNoGfx(); break; + case GFXENGN_NOGFX: pDraw = new CStdNoGfx(); break; } - if (!lpDDraw) return false; + if (!pDraw) return false; // init it - if (!lpDDraw->Init(pApp, Editor, fUsePageLock, iXRes, iYRes, iBitDepth, iMonitor)) + if (!pDraw->Init(pApp, Editor, fUsePageLock, iXRes, iYRes, iBitDepth, iMonitor)) { - delete lpDDraw; + delete pDraw; return false; } // done, success diff --git a/src/platform/StdDDraw2.h b/src/platform/StdDDraw2.h index 481df33b0..9256393f0 100644 --- a/src/platform/StdDDraw2.h +++ b/src/platform/StdDDraw2.h @@ -50,7 +50,7 @@ class StdMeshInstance; #define GFXENGN_NOGFX 3 // Global DDraw access pointer -extern CStdDDraw *lpDDraw; +extern CStdDDraw *pDraw; extern int iGfxEngine; @@ -192,7 +192,7 @@ public: static const StdMeshMatrix OgreToClonk; CStdDDraw(): MaxTexSize(0), Saturation(255) { } - virtual ~CStdDDraw() { lpDDraw=NULL; } + virtual ~CStdDDraw() { pDraw=NULL; } public: C4AbstractApp * pApp; // the application bool Active; // set if device is ready to render, etc. @@ -348,9 +348,9 @@ protected: struct ZoomDataStackItem: public ZoomData { - ZoomDataStackItem(float newzoom) { lpDDraw->GetZoom(this); lpDDraw->SetZoom(X, Y, newzoom); } - ZoomDataStackItem(int X, int Y, float newzoom) { lpDDraw->GetZoom(this); lpDDraw->SetZoom(X, Y, newzoom); } - ~ZoomDataStackItem() { lpDDraw->SetZoom(*this); } + ZoomDataStackItem(float newzoom) { pDraw->GetZoom(this); pDraw->SetZoom(X, Y, newzoom); } + ZoomDataStackItem(int X, int Y, float newzoom) { pDraw->GetZoom(this); pDraw->SetZoom(X, Y, newzoom); } + ~ZoomDataStackItem() { pDraw->SetZoom(*this); } }; bool LockSurfaceGlobal(C4Surface * sfcTarget); diff --git a/src/platform/StdFont.cpp b/src/platform/StdFont.cpp index 1831eb61b..847d7bf37 100644 --- a/src/platform/StdFont.cpp +++ b/src/platform/StdFont.cpp @@ -825,7 +825,7 @@ void CStdFont::DrawText(C4Surface * sfcDest, float iX, float iY, DWORD dwColor, C4BltTransform bt, *pbt=NULL; // set blit color DWORD dwOldModClr; - bool fWasModulated = lpDDraw->GetBlitModulation(dwOldModClr); + bool fWasModulated = pDraw->GetBlitModulation(dwOldModClr); if (fWasModulated) ModulateClr(dwColor, dwOldModClr); // get alpha fade percentage DWORD dwAlphaMod = Min(((dwColor>>0x18)*0xff)/0xaf, 255)<<0x18 | 0xffffff; @@ -902,9 +902,9 @@ void CStdFont::DrawText(C4Surface * sfcDest, float iX, float iY, DWORD dwColor, } //normal: not modulated, unless done by transform or alpha fadeout if ((dwColor>>0x18) >= 0xaf) - lpDDraw->DeactivateBlitModulation(); + pDraw->DeactivateBlitModulation(); else - lpDDraw->ActivateBlitModulation((dwColor&0xff000000) | 0xffffff); + pDraw->ActivateBlitModulation((dwColor&0xff000000) | 0xffffff); } else { @@ -912,7 +912,7 @@ void CStdFont::DrawText(C4Surface * sfcDest, float iX, float iY, DWORD dwColor, // get texture coordinates fctFromBlt = GetCharacterFacet(c); w2=int(fctFromBlt.Wdt*fZoom); h2=int(fctFromBlt.Hgt*fZoom); - lpDDraw->ActivateBlitModulation(dwColor); + pDraw->ActivateBlitModulation(dwColor); } // do color/markup if (pbt) @@ -923,7 +923,7 @@ void CStdFont::DrawText(C4Surface * sfcDest, float iX, float iY, DWORD dwColor, // apply markup Markup.Apply(bt, dwBlitClr); if (dwBlitClr != dwColor) ModulateClrA(dwBlitClr, dwAlphaMod); - lpDDraw->ActivateBlitModulation(dwBlitClr); + pDraw->ActivateBlitModulation(dwBlitClr); // move transformation center to center of letter float fOffX=(float) w2/2 + iX; float fOffY=(float) h2/2 + iY; @@ -931,7 +931,7 @@ void CStdFont::DrawText(C4Surface * sfcDest, float iX, float iY, DWORD dwColor, bt.mat[5] += fOffY - fOffX*bt.mat[3] - fOffY*bt.mat[4]; } // blit character or image - lpDDraw->Blit(fctFromBlt.Surface, float(fctFromBlt.X), float(fctFromBlt.Y), float(fctFromBlt.Wdt),float(fctFromBlt.Hgt), + pDraw->Blit(fctFromBlt.Surface, float(fctFromBlt.X), float(fctFromBlt.Y), float(fctFromBlt.Wdt),float(fctFromBlt.Hgt), sfcDest, iX, iY, float(w2), float(h2), true, pbt); // advance pos and skip character indent @@ -939,7 +939,7 @@ void CStdFont::DrawText(C4Surface * sfcDest, float iX, float iY, DWORD dwColor, } // reset blit modulation if (fWasModulated) - lpDDraw->ActivateBlitModulation(dwOldModClr); + pDraw->ActivateBlitModulation(dwOldModClr); else - lpDDraw->DeactivateBlitModulation(); + pDraw->DeactivateBlitModulation(); }