summaryrefslogtreecommitdiff
path: root/xfa
diff options
context:
space:
mode:
Diffstat (limited to 'xfa')
-rw-r--r--xfa/fwl/theme/cfwl_pushbuttontp.cpp7
-rw-r--r--xfa/fwl/theme/cfwl_scrollbartp.cpp52
-rw-r--r--xfa/fwl/theme/cfwl_widgettp.cpp32
-rw-r--r--xfa/fwl/theme/cfwl_widgettp.h10
4 files changed, 21 insertions, 80 deletions
diff --git a/xfa/fwl/theme/cfwl_pushbuttontp.cpp b/xfa/fwl/theme/cfwl_pushbuttontp.cpp
index 3d3b1aabf7..c3eef0f11f 100644
--- a/xfa/fwl/theme/cfwl_pushbuttontp.cpp
+++ b/xfa/fwl/theme/cfwl_pushbuttontp.cpp
@@ -61,11 +61,8 @@ void CFWL_PushButtonTP::DrawBackground(CFWL_ThemeBackground* pParams) {
rtInner.height);
int32_t iColor = GetColorID(pParams->m_dwStates);
- DrawAxialShading(pGraphics, rect.left + PUSHBUTTON_SIZE_Corner, rect.top,
- rect.left + PUSHBUTTON_SIZE_Corner, rect.bottom(),
- m_pThemeData->clrStart[iColor],
- m_pThemeData->clrEnd[iColor], &fillPath,
- FXFILL_ALTERNATE, &pParams->m_matrix);
+ FillSolidRect(pGraphics, m_pThemeData->clrEnd[iColor], &rect,
+ &pParams->m_matrix);
pGraphics->SetStrokeColor(CXFA_GEColor(m_pThemeData->clrBorder[iColor]));
pGraphics->StrokePath(&strokePath, &pParams->m_matrix);
diff --git a/xfa/fwl/theme/cfwl_scrollbartp.cpp b/xfa/fwl/theme/cfwl_scrollbartp.cpp
index d94eed0ebf..1e9ade8c76 100644
--- a/xfa/fwl/theme/cfwl_scrollbartp.cpp
+++ b/xfa/fwl/theme/cfwl_scrollbartp.cpp
@@ -80,39 +80,26 @@ void CFWL_ScrollBarTP::DrawThumbBtn(CXFA_Graphics* pGraphics,
if (eState < FWLTHEME_STATE_Normal || eState > FWLTHEME_STATE_Disable)
return;
- CXFA_GEPath path;
CFX_RectF rect(*pRect);
- if (bVert) {
+ if (bVert)
rect.Deflate(1, 0);
- if (rect.IsEmpty(0.1f))
- return;
-
- path.AddRectangle(rect.left, rect.top, rect.width, rect.height);
- DrawAxialShading(pGraphics, rect.left, rect.top, rect.right(), rect.top,
- m_pThemeData->clrBtnBK[eState - 1][0],
- m_pThemeData->clrBtnBK[eState - 1][1], &path,
- FXFILL_WINDING, pMatrix);
- pGraphics->SaveGraphState();
- pGraphics->SetStrokeColor(
- CXFA_GEColor(m_pThemeData->clrBtnBorder[eState - 1]));
- pGraphics->StrokePath(&path, pMatrix);
- pGraphics->RestoreGraphState();
- } else {
+ else
rect.Deflate(0, 1);
- if (rect.IsEmpty(0.1f))
- return;
- path.AddRectangle(rect.left, rect.top, rect.width, rect.height);
- DrawAxialShading(pGraphics, rect.left, rect.top, rect.left, rect.bottom(),
- m_pThemeData->clrBtnBK[eState - 1][0],
- m_pThemeData->clrBtnBK[eState - 1][1], &path,
- FXFILL_WINDING, pMatrix);
- pGraphics->SaveGraphState();
- pGraphics->SetStrokeColor(
- CXFA_GEColor(m_pThemeData->clrBtnBorder[eState - 1]));
- pGraphics->StrokePath(&path, pMatrix);
- pGraphics->RestoreGraphState();
- }
+ if (rect.IsEmpty(0.1f))
+ return;
+
+ FillSolidRect(pGraphics, m_pThemeData->clrBtnBK[eState - 1][1], &rect,
+ pMatrix);
+
+ pGraphics->SaveGraphState();
+
+ CXFA_GEPath path;
+ path.AddRectangle(rect.left, rect.top, rect.width, rect.height);
+ pGraphics->SetStrokeColor(
+ CXFA_GEColor(m_pThemeData->clrBtnBorder[eState - 1]));
+ pGraphics->StrokePath(&path, pMatrix);
+ pGraphics->RestoreGraphState();
}
void CFWL_ScrollBarTP::DrawPaw(CXFA_Graphics* pGraphics,
@@ -223,13 +210,8 @@ void CFWL_ScrollBarTP::DrawTrack(CXFA_Graphics* pGraphics,
path.Clear();
path.AddRectangle(pRect->left + 1, pRect->top, pRect->width - 2,
pRect->height);
- float x1 = bVert ? pRect->left + 1 : pRect->left;
- float y1 = bVert ? pRect->top : pRect->top + 1;
- float x2 = bVert ? fRight - 1 : pRect->left;
- float y2 = bVert ? pRect->top : fBottom - 1;
pGraphics->RestoreGraphState();
- DrawAxialShading(pGraphics, x1, y1, x2, y2, m_pThemeData->clrTrackBKStart,
- m_pThemeData->clrTrackBKEnd, &path, FXFILL_WINDING, pMatrix);
+ FillSolidRect(pGraphics, m_pThemeData->clrTrackBKEnd, pRect, pMatrix);
}
void CFWL_ScrollBarTP::DrawMaxMinBtn(CXFA_Graphics* pGraphics,
diff --git a/xfa/fwl/theme/cfwl_widgettp.cpp b/xfa/fwl/theme/cfwl_widgettp.cpp
index 9cbed0cfc7..0f67b89715 100644
--- a/xfa/fwl/theme/cfwl_widgettp.cpp
+++ b/xfa/fwl/theme/cfwl_widgettp.cpp
@@ -137,29 +137,6 @@ void CFWL_WidgetTP::FillSolidRect(CXFA_Graphics* pGraphics,
pGraphics->RestoreGraphState();
}
-void CFWL_WidgetTP::DrawAxialShading(CXFA_Graphics* pGraphics,
- float fx1,
- float fy1,
- float fx2,
- float fy2,
- FX_ARGB beginColor,
- FX_ARGB endColor,
- CXFA_GEPath* path,
- int32_t fillMode,
- CFX_Matrix* pMatrix) {
- if (!pGraphics || !path)
- return;
-
- CFX_PointF begPoint(fx1, fy1);
- CFX_PointF endPoint(fx2, fy2);
- CXFA_GEShading shading(begPoint, endPoint, false, false, beginColor,
- endColor);
- pGraphics->SaveGraphState();
- pGraphics->SetFillColor(CXFA_GEColor(&shading));
- pGraphics->FillPath(path, fillMode, pMatrix);
- pGraphics->RestoreGraphState();
-}
-
void CFWL_WidgetTP::DrawFocus(CXFA_Graphics* pGraphics,
const CFX_RectF* pRect,
CFX_Matrix* pMatrix) {
@@ -236,15 +213,10 @@ void CFWL_WidgetTP::DrawBtn(CXFA_Graphics* pGraphics,
CFX_Matrix* pMatrix) {
InitializeArrowColorData();
+ FillSolidRect(pGraphics, m_pColorData->clrEnd[eState - 1], pRect, pMatrix);
+
CXFA_GEPath path;
- float fRight = pRect->right();
- float fBottom = pRect->bottom();
path.AddRectangle(pRect->left, pRect->top, pRect->width, pRect->height);
- DrawAxialShading(pGraphics, pRect->left, pRect->top, fRight, fBottom,
- m_pColorData->clrStart[eState - 1],
- m_pColorData->clrEnd[eState - 1], &path, FXFILL_WINDING,
- pMatrix);
-
pGraphics->SetStrokeColor(CXFA_GEColor(m_pColorData->clrBorder[eState - 1]));
pGraphics->StrokePath(&path, pMatrix);
}
diff --git a/xfa/fwl/theme/cfwl_widgettp.h b/xfa/fwl/theme/cfwl_widgettp.h
index 503c85eaf2..f62098d4ef 100644
--- a/xfa/fwl/theme/cfwl_widgettp.h
+++ b/xfa/fwl/theme/cfwl_widgettp.h
@@ -64,16 +64,6 @@ class CFWL_WidgetTP {
FX_ARGB fillColor,
const CFX_RectF* pRect,
CFX_Matrix* pMatrix = nullptr);
- void DrawAxialShading(CXFA_Graphics* pGraphics,
- float fx1,
- float fy1,
- float fx2,
- float fy2,
- FX_ARGB beginColor,
- FX_ARGB endColor,
- CXFA_GEPath* path,
- int32_t fillMode = FXFILL_WINDING,
- CFX_Matrix* pMatrix = nullptr);
void DrawFocus(CXFA_Graphics* pGraphics,
const CFX_RectF* pRect,
CFX_Matrix* pMatrix = nullptr);