summaryrefslogtreecommitdiff
path: root/xfa/fxfa
diff options
context:
space:
mode:
Diffstat (limited to 'xfa/fxfa')
-rw-r--r--xfa/fxfa/cxfa_ffimage.cpp6
-rw-r--r--xfa/fxfa/cxfa_ffimageedit.cpp2
-rw-r--r--xfa/fxfa/cxfa_ffwidget.cpp24
-rw-r--r--xfa/fxfa/cxfa_ffwidget.h2
-rw-r--r--xfa/fxfa/cxfa_widgetacc.cpp6
-rw-r--r--xfa/fxfa/parser/cxfa_imagedata.cpp67
-rw-r--r--xfa/fxfa/parser/cxfa_imagedata.h15
-rw-r--r--xfa/fxfa/parser/cxfa_valuedata.cpp5
-rw-r--r--xfa/fxfa/parser/xfa_document_datamerger_imp.cpp6
9 files changed, 47 insertions, 86 deletions
diff --git a/xfa/fxfa/cxfa_ffimage.cpp b/xfa/fxfa/cxfa_ffimage.cpp
index e7dc715eb7..063d3aef5b 100644
--- a/xfa/fxfa/cxfa_ffimage.cpp
+++ b/xfa/fxfa/cxfa_ffimage.cpp
@@ -61,10 +61,10 @@ void CXFA_FFImage::RenderWidget(CXFA_Graphics* pGS,
iVertAlign = paraData.GetVerticalAlign();
}
- int32_t iAspect = m_pDataAcc->GetFormValueData().GetImageData().GetAspect();
int32_t iImageXDpi = 0;
int32_t iImageYDpi = 0;
m_pDataAcc->GetImageDpi(iImageXDpi, iImageYDpi);
- XFA_DrawImage(pGS, rtImage, mtRotate, pDIBitmap, iAspect, iImageXDpi,
- iImageYDpi, iHorzAlign, iVertAlign);
+ XFA_DrawImage(pGS, rtImage, mtRotate, pDIBitmap,
+ m_pDataAcc->GetFormValueData().GetImageData().GetAspect(),
+ iImageXDpi, iImageYDpi, iHorzAlign, iVertAlign);
}
diff --git a/xfa/fxfa/cxfa_ffimageedit.cpp b/xfa/fxfa/cxfa_ffimageedit.cpp
index 38ece830d7..1f3be60c32 100644
--- a/xfa/fxfa/cxfa_ffimageedit.cpp
+++ b/xfa/fxfa/cxfa_ffimageedit.cpp
@@ -76,7 +76,7 @@ void CXFA_FFImageEdit::RenderWidget(CXFA_Graphics* pGS,
iVertAlign = paraData.GetVerticalAlign();
}
- int32_t iAspect = XFA_ATTRIBUTEENUM_Fit;
+ XFA_ATTRIBUTEENUM iAspect = XFA_ATTRIBUTEENUM_Fit;
CXFA_ValueData valueData = m_pDataAcc->GetFormValueData();
if (valueData.HasValidNode()) {
CXFA_ImageData imageData = valueData.GetImageData();
diff --git a/xfa/fxfa/cxfa_ffwidget.cpp b/xfa/fxfa/cxfa_ffwidget.cpp
index a593ff45a2..c66d705623 100644
--- a/xfa/fxfa/cxfa_ffwidget.cpp
+++ b/xfa/fxfa/cxfa_ffwidget.cpp
@@ -1674,7 +1674,7 @@ void XFA_DrawImage(CXFA_Graphics* pGS,
const CFX_RectF& rtImage,
const CFX_Matrix& matrix,
const RetainPtr<CFX_DIBitmap>& pDIBitmap,
- int32_t iAspect,
+ XFA_ATTRIBUTEENUM iAspect,
int32_t iImageXDpi,
int32_t iImageYDpi,
int32_t iHorzAlign,
@@ -1695,14 +1695,14 @@ void XFA_DrawImage(CXFA_Graphics* pGS,
f1 = std::min(f1, f2);
rtFit.height = rtFit.height * f1;
rtFit.width = rtFit.width * f1;
- } break;
- case XFA_ATTRIBUTEENUM_Actual:
break;
+ }
case XFA_ATTRIBUTEENUM_Height: {
float f1 = rtImage.height / rtFit.height;
rtFit.height = rtImage.height;
rtFit.width = f1 * rtFit.width;
- } break;
+ break;
+ }
case XFA_ATTRIBUTEENUM_None:
rtFit.height = rtImage.height;
rtFit.width = rtImage.width;
@@ -1711,7 +1711,11 @@ void XFA_DrawImage(CXFA_Graphics* pGS,
float f1 = rtImage.width / rtFit.width;
rtFit.width = rtImage.width;
rtFit.height = rtFit.height * f1;
- } break;
+ break;
+ }
+ case XFA_ATTRIBUTEENUM_Actual:
+ default:
+ break;
}
if (iHorzAlign == XFA_ATTRIBUTEENUM_Center) {
rtFit.left += (rtImage.width - rtFit.width) / 2;
@@ -1879,16 +1883,12 @@ RetainPtr<CFX_DIBitmap> XFA_LoadImageData(CXFA_FFDoc* pDoc,
bool& bNameImage,
int32_t& iImageXDpi,
int32_t& iImageYDpi) {
- WideString wsHref;
- WideString wsImage;
- pImageData->GetHref(wsHref);
- pImageData->GetContent(wsImage);
+ WideString wsHref = pImageData->GetHref();
+ WideString wsImage = pImageData->GetContent();
if (wsHref.IsEmpty() && wsImage.IsEmpty())
return nullptr;
- WideString wsContentType;
- pImageData->GetContentType(wsContentType);
- FXCODEC_IMAGE_TYPE type = XFA_GetImageType(wsContentType);
+ FXCODEC_IMAGE_TYPE type = XFA_GetImageType(pImageData->GetContentType());
ByteString bsContent;
uint8_t* pImageBuffer = nullptr;
RetainPtr<IFX_SeekableReadStream> pImageFileRead;
diff --git a/xfa/fxfa/cxfa_ffwidget.h b/xfa/fxfa/cxfa_ffwidget.h
index 2c20f1d33b..3de3d49293 100644
--- a/xfa/fxfa/cxfa_ffwidget.h
+++ b/xfa/fxfa/cxfa_ffwidget.h
@@ -42,7 +42,7 @@ void XFA_DrawImage(CXFA_Graphics* pGS,
const CFX_RectF& rtImage,
const CFX_Matrix& matrix,
const RetainPtr<CFX_DIBitmap>& pDIBitmap,
- int32_t iAspect,
+ XFA_ATTRIBUTEENUM iAspect,
int32_t iImageXDpi,
int32_t iImageYDpi,
int32_t iHorzAlign = XFA_ATTRIBUTEENUM_Left,
diff --git a/xfa/fxfa/cxfa_widgetacc.cpp b/xfa/fxfa/cxfa_widgetacc.cpp
index 5bff539366..26ba231533 100644
--- a/xfa/fxfa/cxfa_widgetacc.cpp
+++ b/xfa/fxfa/cxfa_widgetacc.cpp
@@ -176,9 +176,9 @@ void CXFA_WidgetAcc::ResetData() {
CXFA_ImageData imageData = imageValueData.GetImageData();
WideString wsContentType, wsHref;
if (imageData.HasValidNode()) {
- imageData.GetContent(wsValue);
- imageData.GetContentType(wsContentType);
- imageData.GetHref(wsHref);
+ wsValue = imageData.GetContent();
+ wsContentType = imageData.GetContentType();
+ wsHref = imageData.GetHref();
}
SetImageEdit(wsContentType, wsHref, wsValue);
break;
diff --git a/xfa/fxfa/parser/cxfa_imagedata.cpp b/xfa/fxfa/parser/cxfa_imagedata.cpp
index 145d3586a5..dcf5563ad5 100644
--- a/xfa/fxfa/parser/cxfa_imagedata.cpp
+++ b/xfa/fxfa/parser/cxfa_imagedata.cpp
@@ -8,57 +8,29 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-CXFA_ImageData::CXFA_ImageData(CXFA_Node* pNode, bool bDefValue)
- : CXFA_DataData(pNode), m_bDefValue(bDefValue) {}
+CXFA_ImageData::CXFA_ImageData(CXFA_Node* pNode) : CXFA_DataData(pNode) {}
-int32_t CXFA_ImageData::GetAspect() {
+XFA_ATTRIBUTEENUM CXFA_ImageData::GetAspect() const {
return m_pNode->JSNode()->GetEnum(XFA_Attribute::Aspect);
}
-bool CXFA_ImageData::GetContentType(WideString& wsContentType) {
- pdfium::Optional<WideString> content =
- m_pNode->JSNode()->TryCData(XFA_Attribute::ContentType, true);
- if (!content)
- return false;
-
- wsContentType = *content;
- return true;
+WideString CXFA_ImageData::GetContentType() const {
+ return m_pNode->JSNode()
+ ->TryCData(XFA_Attribute::ContentType, true)
+ .value_or(L"");
}
-bool CXFA_ImageData::GetHref(WideString& wsHref) {
- if (m_bDefValue) {
- pdfium::Optional<WideString> ret =
- m_pNode->JSNode()->TryCData(XFA_Attribute::Href, true);
- if (!ret)
- return false;
-
- wsHref = *ret;
- return true;
- }
- pdfium::Optional<WideString> ret =
- m_pNode->JSNode()->TryAttribute(XFA_Attribute::Href, true);
- if (!ret)
- return false;
-
- wsHref = *ret;
- return true;
+WideString CXFA_ImageData::GetHref() const {
+ return m_pNode->JSNode()->TryCData(XFA_Attribute::Href, true).value_or(L"");
}
-XFA_ATTRIBUTEENUM CXFA_ImageData::GetTransferEncoding() {
- if (m_bDefValue) {
- return static_cast<XFA_ATTRIBUTEENUM>(
- m_pNode->JSNode()->GetEnum(XFA_Attribute::TransferEncoding));
- }
- return XFA_ATTRIBUTEENUM_Base64;
+XFA_ATTRIBUTEENUM CXFA_ImageData::GetTransferEncoding() const {
+ return static_cast<XFA_ATTRIBUTEENUM>(
+ m_pNode->JSNode()->GetEnum(XFA_Attribute::TransferEncoding));
}
-bool CXFA_ImageData::GetContent(WideString& wsText) {
- pdfium::Optional<WideString> ret = m_pNode->JSNode()->TryContent(false, true);
- if (!ret)
- return false;
-
- wsText = *ret;
- return true;
+WideString CXFA_ImageData::GetContent() const {
+ return m_pNode->JSNode()->TryContent(false, true).value_or(L"");
}
void CXFA_ImageData::SetContentType(const WideString& wsContentType) {
@@ -67,17 +39,10 @@ void CXFA_ImageData::SetContentType(const WideString& wsContentType) {
}
void CXFA_ImageData::SetHref(const WideString& wsHref) {
- if (m_bDefValue) {
- m_pNode->JSNode()->SetCData(XFA_Attribute::Href, wsHref, false, false);
- return;
- }
- m_pNode->JSNode()->SetAttribute(XFA_Attribute::Href, wsHref.AsStringView(),
- false);
+ m_pNode->JSNode()->SetCData(XFA_Attribute::Href, wsHref, false, false);
}
void CXFA_ImageData::SetTransferEncoding(XFA_ATTRIBUTEENUM iTransferEncoding) {
- if (m_bDefValue) {
- m_pNode->JSNode()->SetEnum(XFA_Attribute::TransferEncoding,
- iTransferEncoding, false);
- }
+ m_pNode->JSNode()->SetEnum(XFA_Attribute::TransferEncoding, iTransferEncoding,
+ false);
}
diff --git a/xfa/fxfa/parser/cxfa_imagedata.h b/xfa/fxfa/parser/cxfa_imagedata.h
index b8e5141cd7..445d3d4fba 100644
--- a/xfa/fxfa/parser/cxfa_imagedata.h
+++ b/xfa/fxfa/parser/cxfa_imagedata.h
@@ -15,22 +15,19 @@ class CXFA_Node;
class CXFA_ImageData : public CXFA_DataData {
public:
- CXFA_ImageData(CXFA_Node* pNode, bool bDefValue);
+ explicit CXFA_ImageData(CXFA_Node* pNode);
- int32_t GetAspect();
- bool GetContent(WideString& wsText);
+ XFA_ATTRIBUTEENUM GetAspect() const;
+ WideString GetContent() const;
- bool GetHref(WideString& wsHref);
+ WideString GetHref() const;
void SetHref(const WideString& wsHref);
- XFA_ATTRIBUTEENUM GetTransferEncoding();
+ XFA_ATTRIBUTEENUM GetTransferEncoding() const;
void SetTransferEncoding(XFA_ATTRIBUTEENUM iTransferEncoding);
- bool GetContentType(WideString& wsContentType);
+ WideString GetContentType() const;
void SetContentType(const WideString& wsContentType);
-
- private:
- bool m_bDefValue;
};
#endif // XFA_FXFA_PARSER_CXFA_IMAGEDATA_H_
diff --git a/xfa/fxfa/parser/cxfa_valuedata.cpp b/xfa/fxfa/parser/cxfa_valuedata.cpp
index e44a76dbcc..1ca051e637 100644
--- a/xfa/fxfa/parser/cxfa_valuedata.cpp
+++ b/xfa/fxfa/parser/cxfa_valuedata.cpp
@@ -59,7 +59,6 @@ CXFA_ExDataData CXFA_ValueData::GetExData() {
}
CXFA_ImageData CXFA_ValueData::GetImageData() {
- return CXFA_ImageData(
- m_pNode ? (m_pNode->GetNodeItem(XFA_NODEITEM_FirstChild)) : nullptr,
- true);
+ return CXFA_ImageData(m_pNode ? m_pNode->GetNodeItem(XFA_NODEITEM_FirstChild)
+ : nullptr);
}
diff --git a/xfa/fxfa/parser/xfa_document_datamerger_imp.cpp b/xfa/fxfa/parser/xfa_document_datamerger_imp.cpp
index 9e33b72936..b7b3c0c12e 100644
--- a/xfa/fxfa/parser/xfa_document_datamerger_imp.cpp
+++ b/xfa/fxfa/parser/xfa_document_datamerger_imp.cpp
@@ -142,9 +142,9 @@ void CreateDataBinding(CXFA_Node* pFormNode,
WideString wsContentType;
WideString wsHref;
if (imageData.HasValidNode()) {
- imageData.GetContent(wsValue);
- imageData.GetContentType(wsContentType);
- imageData.GetHref(wsHref);
+ wsValue = imageData.GetContent();
+ wsContentType = imageData.GetContentType();
+ wsHref = imageData.GetHref();
}
CFX_XMLElement* pXMLDataElement =
static_cast<CFX_XMLElement*>(pDataNode->GetXMLMappingNode());