Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(237)

Side by Side Diff: xfa/fxfa/include/fxfa_widget.h

Issue 2383593002: Move xfa/fxfa/include to xfa/fxfa (Closed)
Patch Set: Rebase to master Created 4 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « xfa/fxfa/include/fxfa_basic.h ('k') | xfa/fxfa/include/xfa_checksum.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 // Copyright 2014 PDFium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
6
7 #ifndef XFA_FXFA_INCLUDE_FXFA_WIDGET_H_
8 #define XFA_FXFA_INCLUDE_FXFA_WIDGET_H_
9
10 #include "core/fxcrt/fx_coordinates.h"
11 #include "core/fxge/fx_dib.h"
12 #include "xfa/fxfa/parser/cxfa_box.h"
13 #include "xfa/fxfa/parser/cxfa_event.h"
14 #include "xfa/fxfa/parser/cxfa_image.h"
15 #include "xfa/fxfa/parser/cxfa_margin.h"
16 #include "xfa/fxfa/parser/cxfa_script.h"
17 #include "xfa/fxfa/parser/cxfa_value.h"
18 #include "xfa/fxfa/parser/cxfa_widgetdata.h"
19
20 class CFGAS_GEFont;
21 class CXFA_EventParam;
22 class CXFA_FFApp;
23 class CXFA_FFDoc;
24 class CXFA_FFDocView;
25 class CXFA_FFWidget;
26 class CXFA_Node;
27 class CXFA_TextLayout;
28 class CXFA_WidgetLayoutData;
29 class IXFA_AppProvider;
30
31 class CXFA_WidgetAcc : public CXFA_WidgetData {
32 public:
33 CXFA_WidgetAcc(CXFA_FFDocView* pDocView, CXFA_Node* pNode);
34 ~CXFA_WidgetAcc();
35
36 FX_BOOL GetName(CFX_WideString& wsName, int32_t iNameType = 0);
37 FX_BOOL ProcessValueChanged();
38 void ResetData();
39
40 void SetImageEdit(const CFX_WideString& wsContentType,
41 const CFX_WideString& wsHref,
42 const CFX_WideString& wsData);
43
44 CXFA_WidgetAcc* GetExclGroup();
45 CXFA_FFDocView* GetDocView();
46 CXFA_FFDoc* GetDoc();
47 CXFA_FFApp* GetApp();
48 IXFA_AppProvider* GetAppProvider();
49
50 int32_t ProcessEvent(int32_t iActivity, CXFA_EventParam* pEventParam);
51 int32_t ProcessEvent(CXFA_Event& event, CXFA_EventParam* pEventParam);
52 int32_t ProcessCalculate();
53 int32_t ProcessValidate(int32_t iFlags = 0);
54 int32_t ExecuteScript(CXFA_Script script,
55 CXFA_EventParam* pEventParam,
56 CFXJSE_Value** pRetValue = nullptr);
57
58 CXFA_FFWidget* GetNextWidget(CXFA_FFWidget* pWidget);
59 void StartWidgetLayout(FX_FLOAT& fCalcWidth, FX_FLOAT& fCalcHeight);
60 FX_BOOL FindSplitPos(int32_t iBlockIndex, FX_FLOAT& fCalcHeight);
61 FX_BOOL LoadCaption();
62 void LoadText();
63 FX_BOOL LoadImageImage();
64 FX_BOOL LoadImageEditImage();
65 void GetImageDpi(int32_t& iImageXDpi, int32_t& iImageYDpi);
66 void GetImageEditDpi(int32_t& iImageXDpi, int32_t& iImageYDpi);
67 CXFA_TextLayout* GetCaptionTextLayout();
68 CXFA_TextLayout* GetTextLayout();
69 CFX_DIBitmap* GetImageImage();
70 CFX_DIBitmap* GetImageEditImage();
71 void SetImageImage(CFX_DIBitmap* newImage);
72 void SetImageEditImage(CFX_DIBitmap* newImage);
73 void UpdateUIDisplay(CXFA_FFWidget* pExcept = nullptr);
74
75 CXFA_Node* GetDatasets();
76 CFGAS_GEFont* GetFDEFont();
77 FX_FLOAT GetFontSize();
78 FX_ARGB GetTextColor();
79 FX_FLOAT GetLineHeight();
80 CXFA_WidgetLayoutData* GetWidgetLayoutData();
81
82 protected:
83 void ProcessScriptTestValidate(CXFA_Validate validate,
84 int32_t iRet,
85 CFXJSE_Value* pRetValue,
86 FX_BOOL bVersionFlag);
87 int32_t ProcessFormatTestValidate(CXFA_Validate validate,
88 FX_BOOL bVersionFlag);
89 int32_t ProcessNullTestValidate(CXFA_Validate validate,
90 int32_t iFlags,
91 FX_BOOL bVersionFlag);
92 void GetValidateCaptionName(CFX_WideString& wsCaptionName,
93 FX_BOOL bVersionFlag);
94 void GetValidateMessage(IXFA_AppProvider* pAppProvider,
95 CFX_WideString& wsMessage,
96 FX_BOOL bError,
97 FX_BOOL bVersionFlag);
98 void CalcCaptionSize(CFX_SizeF& szCap);
99 FX_BOOL CalculateFieldAutoSize(CFX_SizeF& size);
100 FX_BOOL CalculateWidgetAutoSize(CFX_SizeF& size);
101 FX_BOOL CalculateTextEditAutoSize(CFX_SizeF& size);
102 FX_BOOL CalculateCheckButtonAutoSize(CFX_SizeF& size);
103 FX_BOOL CalculatePushButtonAutoSize(CFX_SizeF& size);
104 FX_BOOL CalculateImageEditAutoSize(CFX_SizeF& size);
105 FX_BOOL CalculateImageAutoSize(CFX_SizeF& size);
106 FX_BOOL CalculateTextAutoSize(CFX_SizeF& size);
107 FX_FLOAT CalculateWidgetAutoHeight(FX_FLOAT fHeightCalc);
108 FX_FLOAT CalculateWidgetAutoWidth(FX_FLOAT fWidthCalc);
109 FX_FLOAT GetWidthWithoutMargin(FX_FLOAT fWidthCalc);
110 FX_FLOAT GetHeightWithoutMargin(FX_FLOAT fHeightCalc);
111 void CalculateTextContentSize(CFX_SizeF& size);
112 void CalculateAccWidthAndHeight(XFA_Element eUIType,
113 FX_FLOAT& fWidth,
114 FX_FLOAT& fCalcHeight);
115 void InitLayoutData();
116 void StartTextLayout(FX_FLOAT& fCalcWidth, FX_FLOAT& fCalcHeight);
117
118 CXFA_FFDocView* m_pDocView;
119 std::unique_ptr<CXFA_WidgetLayoutData> m_pLayoutData;
120 uint32_t m_nRecursionDepth;
121 };
122
123 #endif // XFA_FXFA_INCLUDE_FXFA_WIDGET_H_
OLDNEW
« no previous file with comments | « xfa/fxfa/include/fxfa_basic.h ('k') | xfa/fxfa/include/xfa_checksum.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698