Move methods from graphics renderer to base interface

This commit is contained in:
Oleg Korshul
2024-09-09 15:03:59 +03:00
parent f21d92ee92
commit 493cec92c6
6 changed files with 27 additions and 36 deletions

View File

@ -1537,7 +1537,7 @@ void CGraphicsRenderer::Restore()
RELEASEOBJECT(pState);
}
void CGraphicsRenderer::put_BlendMode(const unsigned int nBlendMode)
void CGraphicsRenderer::put_BlendMode(const unsigned int& nBlendMode)
{
if (NULL != m_pRenderer)
{

View File

@ -163,9 +163,9 @@ public:
virtual HRESULT PenDashPattern(double* pPattern, LONG lCount);
// brush ------------------------------------------------------------------------------------
virtual void put_BrushGradInfo(const NSStructures::GradientInfo &_ginfo) override {
m_oBrush.m_oGradientInfo = _ginfo;
}
virtual void put_BrushGradInfo(void* pGradInfo) override {
m_oBrush.m_oGradientInfo = *((NSStructures::GradientInfo*)pGradInfo);
}
virtual HRESULT get_BrushType(LONG* lType);
virtual HRESULT put_BrushType(const LONG& lType);
@ -278,7 +278,7 @@ public:
{
_SetFont();
}
virtual void put_BlendMode(const unsigned int nBlendMode) override;
virtual void put_BlendMode(const unsigned int& nBlendMode) override;
public:
virtual void CloseFont()

View File

@ -403,6 +403,15 @@ public:
UNUSED_VARIABLE(dValue);
return S_FALSE;
}
virtual void put_BrushGradInfo(void* pGradInfo)
{
UNUSED_VARIABLE(pGradInfo);
}
virtual void put_BlendMode(const unsigned int& nBlendMode)
{
UNUSED_VARIABLE(nBlendMode);
}
};
#define PROPERTY_RENDERER(NameBase, Name, Type) \

View File

@ -131,11 +131,6 @@ namespace NSGraphics
virtual void drawVerLine(BYTE align, double x, double y, double b, double penW) = 0;
virtual void drawHorLineExt(BYTE align, double y, double x, double r, double penW, double leftMW, double rightMW) = 0;
// test
virtual void put_BrushGradInfo(const NSStructures::GradientInfo &_ginfo) = 0;
virtual void put_BlendMode(const unsigned int nBlendMode) = 0;
};
GRAPHICS_DECL IGraphicsRenderer* Create();

View File

@ -1895,11 +1895,8 @@ namespace PdfReader
cur_y += delta_y;
}
if (NSGraphics::IGraphicsRenderer* GRenderer = dynamic_cast<NSGraphics::IGraphicsRenderer*>(m_pRenderer))
{
GRenderer->put_BrushGradInfo(info);
m_pRenderer->DrawPath(c_nWindingFillMode);
}
m_pRenderer->put_BrushGradInfo(&info);
m_pRenderer->DrawPath(c_nWindingFillMode);
m_pRenderer->EndCommand(c_nPathType);
m_pRenderer->put_BrushType(brush);
@ -1953,11 +1950,8 @@ namespace PdfReader
t+=delta;
}
if (NSGraphics::IGraphicsRenderer* GRenderer = dynamic_cast<NSGraphics::IGraphicsRenderer*>(m_pRenderer))
{
GRenderer->put_BrushGradInfo(info);
m_pRenderer->DrawPath(c_nWindingFillMode);
}
m_pRenderer->put_BrushGradInfo(&info);
m_pRenderer->DrawPath(c_nWindingFillMode);
m_pRenderer->EndCommand(c_nPathType);
@ -2009,11 +2003,9 @@ namespace PdfReader
t+=delta;
}
if (NSGraphics::IGraphicsRenderer* GRenderer = dynamic_cast<NSGraphics::IGraphicsRenderer*>(m_pRenderer))
{
GRenderer->put_BrushGradInfo(info);
m_pRenderer->DrawPath(c_nWindingFillMode);
}
m_pRenderer->put_BrushGradInfo(&info);
m_pRenderer->DrawPath(c_nWindingFillMode);
m_pRenderer->EndCommand(c_nPathType);
m_pRenderer->put_BrushType(brush);
pGState->clearPath();
@ -2051,11 +2043,9 @@ namespace PdfReader
NSStructures::GradientInfo info = NSStructures::GInfoConstructor::get_triangle(pixel_points, rgba8_colors, {}, false);
if (NSGraphics::IGraphicsRenderer* GRenderer = dynamic_cast<NSGraphics::IGraphicsRenderer*>(m_pRenderer))
{
GRenderer->put_BrushGradInfo(info);
m_pRenderer->DrawPath(c_nWindingFillMode);
}
m_pRenderer->put_BrushGradInfo(&info);
m_pRenderer->DrawPath(c_nWindingFillMode);
pGState->clearPath();
m_pRenderer->EndCommand(c_nPathType);
m_pRenderer->put_BrushType(brush);
@ -2107,11 +2097,8 @@ namespace PdfReader
false
);
if (NSGraphics::IGraphicsRenderer* GRenderer = dynamic_cast<NSGraphics::IGraphicsRenderer*>(m_pRenderer))
{
GRenderer->put_BrushGradInfo(info);
m_pRenderer->DrawPath(c_nWindingFillMode);
}
m_pRenderer->put_BrushGradInfo(&info);
m_pRenderer->DrawPath(c_nWindingFillMode);
m_pRenderer->EndCommand(c_nPathType);
m_pRenderer->put_BrushType(brush);

View File

@ -61,7 +61,7 @@ QImage GenerateImg(std::vector<NSStructures::Point> &points, Info &info, const i
NSStructures::GradientInfo ginfo = info.ginfo;
ginfo.shading.f_type = NSStructures::ShadingInfo::UseNew;
pRasterRenderer->put_BrushGradInfo(ginfo);
pRasterRenderer->put_BrushGradInfo(&ginfo);
auto a = info.c;
auto b = info.p;
LONG *c = a.data();