summaryrefslogtreecommitdiff
path: root/xfa/include
diff options
context:
space:
mode:
Diffstat (limited to 'xfa/include')
-rw-r--r--xfa/include/foxitxfa.h1
-rw-r--r--xfa/include/fwl/adapter/fwl_adapterthreadmgr.h1
-rw-r--r--xfa/include/fwl/adapter/fwl_adapterwidgetmgr.h4
-rw-r--r--xfa/include/fwl/adapter/fwl_sdadapterimp.h12
-rw-r--r--xfa/include/fwl/basewidget/fwl_caret.h5
-rw-r--r--xfa/include/fwl/basewidget/fwl_checkbox.h8
-rw-r--r--xfa/include/fwl/basewidget/fwl_datetimepicker.h13
-rw-r--r--xfa/include/fwl/basewidget/fwl_listbox.h11
-rw-r--r--xfa/include/fwl/basewidget/fwl_monthcalendar.h9
-rw-r--r--xfa/include/fwl/basewidget/fwl_picturebox.h7
-rw-r--r--xfa/include/fwl/basewidget/fwl_pushbutton.h8
-rw-r--r--xfa/include/fwl/basewidget/fwl_scrollbar.h9
-rw-r--r--xfa/include/fwl/core/fwl_app.h4
-rw-r--r--xfa/include/fwl/core/fwl_content.h4
-rw-r--r--xfa/include/fwl/core/fwl_grid.h6
-rw-r--r--xfa/include/fwl/core/fwl_note.h1
-rw-r--r--xfa/include/fwl/core/fwl_panel.h6
-rw-r--r--xfa/include/fwl/core/fwl_target.h1
-rw-r--r--xfa/include/fwl/core/fwl_theme.h10
-rw-r--r--xfa/include/fwl/core/fwl_thread.h2
-rw-r--r--xfa/include/fwl/core/fwl_widgetmgr.h12
-rw-r--r--xfa/include/fwl/fwl.h77
-rw-r--r--xfa/include/fwl/lightwidget/app.h2
-rw-r--r--xfa/include/fwl/lightwidget/barcode.h5
-rw-r--r--xfa/include/fwl/lightwidget/caret.h6
-rw-r--r--xfa/include/fwl/lightwidget/checkbox.h8
-rw-r--r--xfa/include/fwl/lightwidget/datetimepicker.h8
-rw-r--r--xfa/include/fwl/lightwidget/listbox.h7
-rw-r--r--xfa/include/fwl/lightwidget/picturebox.h9
-rw-r--r--xfa/include/fwl/lightwidget/pushbutton.h8
-rw-r--r--xfa/include/fwl/lightwidget/scrollbar.h5
-rw-r--r--xfa/include/fwl/lightwidget/tooltipctrl.h8
-rw-r--r--xfa/include/fwl/theme/checkboxtp.h1
-rw-r--r--xfa/include/fwl/theme/listboxtp.h5
-rw-r--r--xfa/include/fwl/theme/monthcalendartp.h4
-rw-r--r--xfa/include/fwl/theme/pictureboxtp.h4
-rw-r--r--xfa/include/fwl/theme/pushbuttontp.h4
-rw-r--r--xfa/include/fwl/theme/scrollbartp.h4
-rw-r--r--xfa/include/fwl/theme/widgettp.h11
-rw-r--r--xfa/include/fxfa/fxfa_objectacc.h7
40 files changed, 132 insertions, 185 deletions
diff --git a/xfa/include/foxitxfa.h b/xfa/include/foxitxfa.h
index 8236a273a2..bdb72ed313 100644
--- a/xfa/include/foxitxfa.h
+++ b/xfa/include/foxitxfa.h
@@ -14,7 +14,6 @@
#include "core/include/fxcodec/fx_codec.h"
#include "core/include/fxcrt/fx_ext.h"
#include "core/include/fxge/fx_ge.h"
-#include "xfa/include/fwl/fwl.h"
#include "xfa/include/fxbarcode/BC_BarCode.h"
#include "xfa/include/fxfa/fxfa.h"
#include "xfa/include/fxgraphics/fx_graphics.h"
diff --git a/xfa/include/fwl/adapter/fwl_adapterthreadmgr.h b/xfa/include/fwl/adapter/fwl_adapterthreadmgr.h
index edd6158fd1..7446853299 100644
--- a/xfa/include/fwl/adapter/fwl_adapterthreadmgr.h
+++ b/xfa/include/fwl/adapter/fwl_adapterthreadmgr.h
@@ -7,6 +7,7 @@
#ifndef XFA_INCLUDE_FWL_ADAPTER_FWL_ADAPTERTHREADMGR_H_
#define XFA_INCLUDE_FWL_ADAPTER_FWL_ADAPTERTHREADMGR_H_
+#include "core/include/fxcrt/fx_system.h"
#include "xfa/include/fwl/core/fwl_error.h"
#include "xfa/include/fwl/core/fwl_thread.h"
diff --git a/xfa/include/fwl/adapter/fwl_adapterwidgetmgr.h b/xfa/include/fwl/adapter/fwl_adapterwidgetmgr.h
index ed9bd0fa80..454763a23b 100644
--- a/xfa/include/fwl/adapter/fwl_adapterwidgetmgr.h
+++ b/xfa/include/fwl/adapter/fwl_adapterwidgetmgr.h
@@ -7,6 +7,10 @@
#ifndef XFA_INCLUDE_FWL_ADAPTER_FWL_ADAPTERWIDGETMGR_H_
#define XFA_INCLUDE_FWL_ADAPTER_FWL_ADAPTERWIDGETMGR_H_
+#include "core/include/fxcrt/fx_coordinates.h"
+#include "core/include/fxcrt/fx_system.h"
+#include "xfa/include/fwl/core/fwl_error.h"
+
class IFWL_Widget;
class IFWL_Menu;
class IFWL_MenuDP;
diff --git a/xfa/include/fwl/adapter/fwl_sdadapterimp.h b/xfa/include/fwl/adapter/fwl_sdadapterimp.h
index 97125e5431..52cbb99c26 100644
--- a/xfa/include/fwl/adapter/fwl_sdadapterimp.h
+++ b/xfa/include/fwl/adapter/fwl_sdadapterimp.h
@@ -7,14 +7,9 @@
#ifndef XFA_INCLUDE_FWL_ADAPTER_FWL_SDADAPTERIMP_H_
#define XFA_INCLUDE_FWL_ADAPTER_FWL_SDADAPTERIMP_H_
-class IFWL_AdapterNative;
-class IFWL_AdapterWidgetMgr;
-class IFWL_AdapterThreadMgr;
-class IFWL_AdapterTimerMgr;
-class IFWL_WidgetMgrDelegate;
-class CFWL_SDAdatperNative;
-class CFWL_SDAdapterWidgetMgr;
-class CFWL_SDAdapterTimerMgr;
+#include "xfa/include/fwl/adapter/fwl_adapterthreadmgr.h"
+#include "xfa/include/fwl/adapter/fwl_adapterwidgetmgr.h"
+
class CFWL_SDAdapterWidgetMgr : public IFWL_AdapterWidgetMgr {
public:
CFWL_SDAdapterWidgetMgr();
@@ -74,6 +69,7 @@ class CFWL_SDAdapterWidgetMgr : public IFWL_AdapterWidgetMgr {
FX_FLOAT& r,
FX_FLOAT& b);
};
+
class CFWL_SDAdapterThreadMgr : public IFWL_AdapterThreadMgr {
public:
CFWL_SDAdapterThreadMgr();
diff --git a/xfa/include/fwl/basewidget/fwl_caret.h b/xfa/include/fwl/basewidget/fwl_caret.h
index 7b022e7816..d6144ae1e8 100644
--- a/xfa/include/fwl/basewidget/fwl_caret.h
+++ b/xfa/include/fwl/basewidget/fwl_caret.h
@@ -7,9 +7,8 @@
#ifndef XFA_INCLUDE_FWL_BASEWIDGET_FWL_CARET_H_
#define XFA_INCLUDE_FWL_BASEWIDGET_FWL_CARET_H_
-class CFWL_WidgetImpProperties;
-class IFWL_Widget;
-class IFWL_Caret;
+#include "xfa/include/fwl/core/fwl_widget.h"
+
#define FWL_CLASS_Caret L"FWL_CARET"
#define FWL_CLASSHASH_Caret 671181879
#define FWL_STATE_CAT_HightLight 1
diff --git a/xfa/include/fwl/basewidget/fwl_checkbox.h b/xfa/include/fwl/basewidget/fwl_checkbox.h
index 616fef5397..6979a1de38 100644
--- a/xfa/include/fwl/basewidget/fwl_checkbox.h
+++ b/xfa/include/fwl/basewidget/fwl_checkbox.h
@@ -7,10 +7,9 @@
#ifndef XFA_INCLUDE_FWL_BASEWIDGET_FWL_CHECKBOX_H_
#define XFA_INCLUDE_FWL_BASEWIDGET_FWL_CHECKBOX_H_
-class CFWL_WidgetImpProperties;
-class IFWL_Widget;
-class IFWL_CheckBoxDP;
-class IFWL_CheckBox;
+#include "xfa/include/fwl/core/fwl_note.h"
+#include "xfa/include/fwl/core/fwl_widget.h"
+
#define FWL_CLASS_CheckBox L"FWL_CHECKBOX"
#define FWL_CLASSHASH_CheckBox 4107183823
#define FWL_STYLEEXT_CKB_Left (0L << 0)
@@ -60,6 +59,7 @@ class IFWL_CheckBox;
#define FWL_PARTSTATE_CKB_Mask2 (3L << 2)
#define FWL_EVT_CKB_CheckStateChanged L"FWL_EVENT_CKB_CheckStateChanged"
#define FWL_EVTHASH_CKB_CheckStateChanged 2503252963
+
BEGIN_FWL_EVENT_DEF(CFWL_EvtCkbCheckStateChanged,
FWL_EVTHASH_CKB_CheckStateChanged)
END_FWL_EVENT_DEF
diff --git a/xfa/include/fwl/basewidget/fwl_datetimepicker.h b/xfa/include/fwl/basewidget/fwl_datetimepicker.h
index 5932991f6f..7cce00eadd 100644
--- a/xfa/include/fwl/basewidget/fwl_datetimepicker.h
+++ b/xfa/include/fwl/basewidget/fwl_datetimepicker.h
@@ -7,10 +7,9 @@
#ifndef XFA_INCLUDE_FWL_BASEWIDGET_FWL_DATETIMEPICKER_H_
#define XFA_INCLUDE_FWL_BASEWIDGET_FWL_DATETIMEPICKER_H_
-class CFWL_WidgetImpProperties;
-class IFWL_Widget;
-class IFWL_DateTimePickerDP;
-class IFWL_DateTimePicker;
+#include "xfa/include/fwl/core/fwl_note.h"
+#include "xfa/include/fwl/core/fwl_widget.h"
+
#define FWL_CLASS_DateTimePicker L"FWL_DATETIMEPICKER"
#define FWL_CLASSHASH_DateTimePicker 3851176257
#define FWL_STYLEEXT_DTP_AllowEdit (1L << 0)
@@ -47,21 +46,27 @@ class IFWL_DateTimePicker;
#define FWL_EVTHASH_DTP_HoverChanged 686674750
#define FWL_EVT_DTP_SelectChanged L"FWL_EVENT_DTP_SelectChanged"
#define FWL_EVTHASH_DTP_SelectChanged 1589616858
+
BEGIN_FWL_EVENT_DEF(CFWL_Event_DtpDropDown, FWL_EVTHASH_DTP_DropDown)
END_FWL_EVENT_DEF
+
BEGIN_FWL_EVENT_DEF(CFWL_Event_DtpCloseUp, FWL_EVTHASH_DTP_CloseUp)
END_FWL_EVENT_DEF
+
BEGIN_FWL_EVENT_DEF(CFWL_Event_DtpEditChanged, FWL_EVTHASH_DTP_EditChanged)
CFX_WideString m_wsText;
END_FWL_EVENT_DEF
+
BEGIN_FWL_EVENT_DEF(CFWL_Event_DtpHoverChanged, FWL_EVTHASH_DTP_HoverChanged)
int32_t hoverday;
END_FWL_EVENT_DEF
+
BEGIN_FWL_EVENT_DEF(CFWL_Event_DtpSelectChanged, FWL_EVTHASH_DTP_SelectChanged)
int32_t iYear;
int32_t iMonth;
int32_t iDay;
END_FWL_EVENT_DEF
+
class IFWL_DateTimePickerDP : public IFWL_DataProvider {
public:
virtual FWL_ERR GetToday(IFWL_Widget* pWidget,
diff --git a/xfa/include/fwl/basewidget/fwl_listbox.h b/xfa/include/fwl/basewidget/fwl_listbox.h
index 7645c2526b..4cf5c654d4 100644
--- a/xfa/include/fwl/basewidget/fwl_listbox.h
+++ b/xfa/include/fwl/basewidget/fwl_listbox.h
@@ -7,10 +7,11 @@
#ifndef XFA_INCLUDE_FWL_BASEWIDGET_FWL_LISTBOX_H_
#define XFA_INCLUDE_FWL_BASEWIDGET_FWL_LISTBOX_H_
-class CFWL_WidgetImpProperties;
-class IFWL_Widget;
+#include "xfa/include/fwl/core/fwl_note.h"
+#include "xfa/include/fwl/core/fwl_widget.h"
+
class IFWL_ListBoxDP;
-class IFWL_ListBox;
+
#define FWL_CLASS_ListBox L"FWL_LISTBOX"
#define FWL_CLASSHASH_ListBox 1777358317
#define FWL_STYLEEXT_LTB_MultiSelection (1L << 0)
@@ -49,20 +50,24 @@ class IFWL_ListBox;
#define FWL_EVT_LTB_DrawItem L"FWL_EVENT_LTB_DrawItem"
#define FWL_EVTHASH_LTB_SelChanged 1701781688
#define FWL_EVTHASH_LTB_DrawItem 1050853991
+
BEGIN_FWL_EVENT_DEF(CFWL_EvtLtbSelChanged, FWL_EVTHASH_LTB_SelChanged)
CFX_Int32Array iarraySels;
END_FWL_EVENT_DEF
+
BEGIN_FWL_EVENT_DEF(CFWL_EvtLtbDrawItem, FWL_EVTHASH_LTB_DrawItem)
CFX_Graphics* m_pGraphics;
CFX_Matrix m_matrix;
int32_t m_index;
CFX_RectF m_rect;
END_FWL_EVENT_DEF
+
typedef struct FWL_HLISTITEM_ { void* pData; } * FWL_HLISTITEM;
struct FWL_ListBoxItemData {
IFWL_ListBoxDP* pDataProvider;
int32_t iIndex;
};
+
class IFWL_ListBoxDP : public IFWL_DataProvider {
public:
virtual int32_t CountItems(IFWL_Widget* pWidget) = 0;
diff --git a/xfa/include/fwl/basewidget/fwl_monthcalendar.h b/xfa/include/fwl/basewidget/fwl_monthcalendar.h
index 3053947180..a57b8151c2 100644
--- a/xfa/include/fwl/basewidget/fwl_monthcalendar.h
+++ b/xfa/include/fwl/basewidget/fwl_monthcalendar.h
@@ -7,8 +7,9 @@
#ifndef XFA_INCLUDE_FWL_BASEWIDGET_FWL_MONTHCALENDAR_H_
#define XFA_INCLUDE_FWL_BASEWIDGET_FWL_MONTHCALENDAR_H_
-class IFWL_MonthCalendarDP;
-class IFWL_MonthCalendar;
+#include "xfa/include/fwl/core/fwl_note.h"
+#include "xfa/include/fwl/core/fwl_widget.h"
+
#define FWL_CLASS_MonthCalendar L"FWL_MONTHCALENDAR"
#define FWL_CLASSHASH_MonthCalendar 2733931374
#define FWL_STYLEEXT_MCD_MultiSelect (1L << 0)
@@ -97,22 +98,26 @@ class IFWL_MonthCalendar;
#define FWL_EVT_MCD_DateChanged L"FWL_EVENT_MCD_DateChanged"
#define FWL_NOTEHASH_MCD_DATASELECTED 1085596932
#define FWL_EVTHASH_MCD_DateChanged 54212227
+
BEGIN_FWL_EVENT_DEF(CFWL_Event_McdDateSelected, FWL_NOTEHASH_MCD_DATASELECTED)
int32_t m_iStartDay;
int32_t m_iEndDay;
END_FWL_EVENT_DEF
+
BEGIN_FWL_EVENT_DEF(CFWL_EventMcdDateChanged, FWL_EVTHASH_MCD_DateChanged)
int32_t m_iOldYear;
int32_t m_iOldMonth;
int32_t m_iStartDay;
int32_t m_iEndDay;
END_FWL_EVENT_DEF
+
class IFWL_MonthCalendarDP : public IFWL_DataProvider {
public:
virtual int32_t GetCurDay(IFWL_Widget* pWidget) = 0;
virtual int32_t GetCurMonth(IFWL_Widget* pWidget) = 0;
virtual int32_t GetCurYear(IFWL_Widget* pWidget) = 0;
};
+
class IFWL_MonthCalendar : public IFWL_Widget {
public:
static IFWL_MonthCalendar* Create(const CFWL_WidgetImpProperties& properties,
diff --git a/xfa/include/fwl/basewidget/fwl_picturebox.h b/xfa/include/fwl/basewidget/fwl_picturebox.h
index 0b206c2d04..2a27da4912 100644
--- a/xfa/include/fwl/basewidget/fwl_picturebox.h
+++ b/xfa/include/fwl/basewidget/fwl_picturebox.h
@@ -7,10 +7,8 @@
#ifndef XFA_INCLUDE_FWL_BASEWIDGET_FWL_PICTUREBOX_H_
#define XFA_INCLUDE_FWL_BASEWIDGET_FWL_PICTUREBOX_H_
-class CFWL_WidgetImpProperties;
-class IFWL_Widget;
-class IFWL_PictureBoxDP;
-class IFWL_PictureBox;
+#include "xfa/src/fwl/src/core/include/fwl_widgetimp.h"
+
#define FWL_CLASS_PictureBox L"FWL_PICTUREBOX"
#define FWL_CLASSHASH_PictureBox 2974721741
#define FWL_STYLEEXT_PTB_Left 0L << 0
@@ -32,6 +30,7 @@ class IFWL_PictureBox;
#define FWL_PART_PTB_Image 3
#define FWL_PARTSTATE_PTB_Normal (0L << 0)
#define FWL_PARTSTATE_PTB_Disabled (1L << 0)
+
class IFWL_PictureBoxDP : public IFWL_DataProvider {
public:
virtual CFX_DIBitmap* GetPicture(IFWL_Widget* pWidget) = 0;
diff --git a/xfa/include/fwl/basewidget/fwl_pushbutton.h b/xfa/include/fwl/basewidget/fwl_pushbutton.h
index 500cc0dcc1..3e5acd11b0 100644
--- a/xfa/include/fwl/basewidget/fwl_pushbutton.h
+++ b/xfa/include/fwl/basewidget/fwl_pushbutton.h
@@ -7,10 +7,9 @@
#ifndef XFA_INCLUDE_FWL_BASEWIDGET_FWL_PUSHBUTTON_H_
#define XFA_INCLUDE_FWL_BASEWIDGET_FWL_PUSHBUTTON_H_
-class CFWL_WidgetImpProperties;
-class IFWL_Widget;
-class IFWL_PushButtonDP;
-class IFWL_PushButton;
+#include "xfa/include/fwl/core/fwl_theme.h"
+#include "xfa/src/fwl/src/core/include/fwl_widgetimp.h"
+
#define FWL_CLASS_PushButton L"FWL_PUSHBUTTON"
#define FWL_CLASSHASH_PushButton 3521614244
#define FWL_STYLEEXT_PSB_Left (0L << 0)
@@ -40,6 +39,7 @@ class IFWL_PushButton;
#define FWL_PARTSTATE_PSB_Disabled (4L << 0)
#define FWL_PARTSTATE_PSB_Focused (1L << 3)
#define FWL_PARTSTATE_PSB_Mask (7L << 0)
+
class IFWL_PushButtonDP : public IFWL_DataProvider {
public:
virtual CFX_DIBitmap* GetPicture(IFWL_Widget* pWidget) = 0;
diff --git a/xfa/include/fwl/basewidget/fwl_scrollbar.h b/xfa/include/fwl/basewidget/fwl_scrollbar.h
index 691ec8826c..6a6df77087 100644
--- a/xfa/include/fwl/basewidget/fwl_scrollbar.h
+++ b/xfa/include/fwl/basewidget/fwl_scrollbar.h
@@ -7,10 +7,8 @@
#ifndef XFA_INCLUDE_FWL_BASEWIDGET_FWL_SCROLLBAR_H_
#define XFA_INCLUDE_FWL_BASEWIDGET_FWL_SCROLLBAR_H_
-class CFWL_WidgetImpProperties;
-class IFWL_Widget;
-class IFWL_ScrollBarDP;
-class IFWL_ScrollBar;
+#include "xfa/src/fwl/src/core/include/fwl_widgetimp.h"
+
#define FWL_CLASS_ScrollBar L"FWL_SCROLLBAR"
#define FWL_CLASSHASH_ScrollBar 2826584844
#define FWL_STYLEEXT_SCB_Horz (0L << 0)
@@ -33,6 +31,7 @@ class IFWL_ScrollBar;
#define FWL_WGTHITTEST_SCB_UpperTrack FWL_WGTHITTEST_MAX + 4
#define FWL_WGTHITTEST_SCB_Thumb FWL_WGTHITTEST_MAX + 5
#define FWL_CAPACITY_SCB_Size FWL_WGTCAPACITY_MAX
+
enum FWL_SCBCODE {
FWL_SCBCODE_None = 1,
FWL_SCBCODE_Min,
@@ -45,7 +44,9 @@ enum FWL_SCBCODE {
FWL_SCBCODE_TrackPos,
FWL_SCBCODE_EndScroll,
};
+
class IFWL_ScrollBarDP : public IFWL_DataProvider {};
+
class IFWL_ScrollBar : public IFWL_Widget {
public:
static IFWL_ScrollBar* Create(const CFWL_WidgetImpProperties& properties,
diff --git a/xfa/include/fwl/core/fwl_app.h b/xfa/include/fwl/core/fwl_app.h
index 9bfb519d88..ca771432db 100644
--- a/xfa/include/fwl/core/fwl_app.h
+++ b/xfa/include/fwl/core/fwl_app.h
@@ -7,7 +7,9 @@
#ifndef XFA_INCLUDE_FWL_CORE_FWL_APP_H_
#define XFA_INCLUDE_FWL_CORE_FWL_APP_H_
-class IFWL_NoteThread;
+#include "core/include/fxcrt/fx_string.h"
+#include "xfa/include/fwl/core/fwl_thread.h"
+
class IFWL_AdapterNative;
class IFWL_Widget;
class IFWL_WidgetMgr;
diff --git a/xfa/include/fwl/core/fwl_content.h b/xfa/include/fwl/core/fwl_content.h
index c665469aec..3ffb1a8dec 100644
--- a/xfa/include/fwl/core/fwl_content.h
+++ b/xfa/include/fwl/core/fwl_content.h
@@ -7,8 +7,8 @@
#ifndef XFA_INCLUDE_FWL_CORE_FWL_CONTENT_H_
#define XFA_INCLUDE_FWL_CORE_FWL_CONTENT_H_
-class IFWL_Widget;
-class IFWL_Content;
+#include "xfa/src/fwl/src/core/include/fwl_widgetimp.h"
+
class IFWL_Content : public IFWL_Widget {
public:
static IFWL_Content* Create();
diff --git a/xfa/include/fwl/core/fwl_grid.h b/xfa/include/fwl/core/fwl_grid.h
index 9e17e2c846..c5b443b2b0 100644
--- a/xfa/include/fwl/core/fwl_grid.h
+++ b/xfa/include/fwl/core/fwl_grid.h
@@ -7,11 +7,14 @@
#ifndef XFA_INCLUDE_FWL_CORE_FWL_GRID_H_
#define XFA_INCLUDE_FWL_CORE_FWL_GRID_H_
+#include "xfa/include/fwl/core/fwl_content.h"
+
class IFWL_Widget;
-class IFWL_Content;
+
#define FWL_CLASS_Grid L"FWL_GRID"
#define FWL_CLASSHASH_Grid 3150298670
#define FWL_GRIDSTYLEEXT_ShowGridLines (1L << 0)
+
struct FWL_LAYOUTDATA {
FX_FLOAT fWidth;
FX_FLOAT fHeight;
@@ -36,6 +39,7 @@ enum FWL_GRIDSIZE {
FWL_GRIDSIZE_MaxWidth,
FWL_GRIDSIZE_MaxHeight,
};
+
typedef struct FWL_HGRIDCOLROW_ { void* pData; } * FWL_HGRIDCOLROW;
class IFWL_Grid : public IFWL_Content {
public:
diff --git a/xfa/include/fwl/core/fwl_note.h b/xfa/include/fwl/core/fwl_note.h
index f06dd20e39..5d74c1e451 100644
--- a/xfa/include/fwl/core/fwl_note.h
+++ b/xfa/include/fwl/core/fwl_note.h
@@ -7,6 +7,7 @@
#ifndef XFA_INCLUDE_FWL_CORE_FWL_NOTE_H_
#define XFA_INCLUDE_FWL_CORE_FWL_NOTE_H_
+#include "xfa/include/fwl/core/fwl_error.h"
#include "xfa/include/fxgraphics/fx_graphics.h"
class IFWL_Target;
diff --git a/xfa/include/fwl/core/fwl_panel.h b/xfa/include/fwl/core/fwl_panel.h
index 94e01bca60..51e3d4caaa 100644
--- a/xfa/include/fwl/core/fwl_panel.h
+++ b/xfa/include/fwl/core/fwl_panel.h
@@ -7,10 +7,10 @@
#ifndef XFA_INCLUDE_FWL_CORE_FWL_PANEL_H_
#define XFA_INCLUDE_FWL_CORE_FWL_PANEL_H_
-class IFWL_Widget;
+#include "xfa/src/fwl/src/core/include/fwl_widgetimp.h"
+
class IFWL_Content;
-class IFWL_Panel;
-class IFWL_CustomPanel;
+
#define FWL_CLASS_Panel L"FWL_Panel"
#define FWL_CLASSHASH_Panel 881567292
diff --git a/xfa/include/fwl/core/fwl_target.h b/xfa/include/fwl/core/fwl_target.h
index 7eaf0b25f3..6572f8be33 100644
--- a/xfa/include/fwl/core/fwl_target.h
+++ b/xfa/include/fwl/core/fwl_target.h
@@ -8,6 +8,7 @@
#define XFA_INCLUDE_FWL_CORE_FWL_TARGET_H_
#include "core/include/fxcrt/fx_basic.h"
+#include "xfa/include/fwl/core/fwl_error.h"
// FWL contains three parallel inheritance hierarchies, which reference each
// other via pointers as follows:
diff --git a/xfa/include/fwl/core/fwl_theme.h b/xfa/include/fwl/core/fwl_theme.h
index 2700e3bd55..8f9f9a6c36 100644
--- a/xfa/include/fwl/core/fwl_theme.h
+++ b/xfa/include/fwl/core/fwl_theme.h
@@ -7,12 +7,11 @@
#ifndef XFA_INCLUDE_FWL_CORE_FWL_THEME_H_
#define XFA_INCLUDE_FWL_CORE_FWL_THEME_H_
+#include "xfa/include/fwl/core/fwl_error.h"
+#include "xfa/include/fxgraphics/fx_graphics.h"
+
class IFWL_Widget;
-class CFWL_ThemePart;
-class CFWL_ThemeBackground;
-class CFWL_ThemeText;
-class CFWL_ThemeElement;
-class IFWL_ThemeProvider;
+
#define FWL_WGTCAPACITY_CXBorder 1
#define FWL_WGTCAPACITY_CYBorder 2
#define FWL_WGTCAPACITY_ScrollBarWidth 3
@@ -27,6 +26,7 @@ class IFWL_ThemeProvider;
#define FWL_WGTCAPACITY_UIMargin 12
#define FWL_WGTCAPACITY_SpaceAboveBelow 13
#define FWL_WGTCAPACITY_MAX 65535
+
class CFWL_ThemePart {
public:
CFWL_ThemePart()
diff --git a/xfa/include/fwl/core/fwl_thread.h b/xfa/include/fwl/core/fwl_thread.h
index d83c74f8c4..5b41c9cf8a 100644
--- a/xfa/include/fwl/core/fwl_thread.h
+++ b/xfa/include/fwl/core/fwl_thread.h
@@ -22,6 +22,8 @@
// CFWL_App --------------> IFWL_App CFWL_AppImp
//
+#include "xfa/include/fwl/core/fwl_error.h"
+
class CFWL_ThreadImp;
class IFWL_NoteDriver;
diff --git a/xfa/include/fwl/core/fwl_widgetmgr.h b/xfa/include/fwl/core/fwl_widgetmgr.h
index 2420f6927f..9486af5ef7 100644
--- a/xfa/include/fwl/core/fwl_widgetmgr.h
+++ b/xfa/include/fwl/core/fwl_widgetmgr.h
@@ -7,9 +7,13 @@
#ifndef XFA_INCLUDE_FWL_CORE_FWL_WIDGETMGR_H_
#define XFA_INCLUDE_FWL_CORE_FWL_WIDGETMGR_H_
+#include "xfa/include/fwl/core/fwl_note.h"
+
class IFWL_Widget;
-class IFWL_WidgetMgr;
-class IFWL_WidgetMgrDelegate;
+
+#define FWL_WGTMGR_DisableThread 0x00000001
+#define FWL_WGTMGR_DisableForm 0x00000002
+
enum FWL_WGTRELATION {
FWL_WGTRELATION_Parent = 0,
FWL_WGTRELATION_Owner,
@@ -21,6 +25,7 @@ enum FWL_WGTRELATION {
FWL_WGTRELATION_LastChild,
FWL_WGTRELATION_SystemForm
};
+
class IFWL_WidgetMgr {
public:
virtual ~IFWL_WidgetMgr() {}
@@ -37,8 +42,7 @@ class IFWL_WidgetMgr {
};
IFWL_WidgetMgr* FWL_GetWidgetMgr();
FX_BOOL FWL_WidgetIsChild(IFWL_Widget* parent, IFWL_Widget* find);
-#define FWL_WGTMGR_DisableThread 0x00000001
-#define FWL_WGTMGR_DisableForm 0x00000002
+
class IFWL_WidgetMgrDelegate {
public:
virtual ~IFWL_WidgetMgrDelegate() {}
diff --git a/xfa/include/fwl/fwl.h b/xfa/include/fwl/fwl.h
deleted file mode 100644
index 32048ce86f..0000000000
--- a/xfa/include/fwl/fwl.h
+++ /dev/null
@@ -1,77 +0,0 @@
-// Copyright 2014 PDFium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
-
-// TODO(thestig): Remove this file and do IWYU.
-
-#ifndef XFA_INCLUDE_FWL_FWL_H_
-#define XFA_INCLUDE_FWL_FWL_H_
-
-#include "xfa/include/fwl/adapter/fwl_adapternative.h"
-#include "xfa/include/fwl/adapter/fwl_adapterthreadmgr.h"
-#include "xfa/include/fwl/adapter/fwl_adaptertimermgr.h"
-#include "xfa/include/fwl/adapter/fwl_adapterwidgetmgr.h"
-#include "xfa/include/fwl/adapter/fwl_sdadapterimp.h"
-#include "xfa/include/fwl/basewidget/fwl_barcode.h"
-#include "xfa/include/fwl/basewidget/fwl_caret.h"
-#include "xfa/include/fwl/basewidget/fwl_checkbox.h"
-#include "xfa/include/fwl/basewidget/fwl_combobox.h"
-#include "xfa/include/fwl/basewidget/fwl_datetimepicker.h"
-#include "xfa/include/fwl/basewidget/fwl_edit.h"
-#include "xfa/include/fwl/basewidget/fwl_listbox.h"
-#include "xfa/include/fwl/basewidget/fwl_menu.h"
-#include "xfa/include/fwl/basewidget/fwl_monthcalendar.h"
-#include "xfa/include/fwl/basewidget/fwl_picturebox.h"
-#include "xfa/include/fwl/basewidget/fwl_pushbutton.h"
-#include "xfa/include/fwl/basewidget/fwl_scrollbar.h"
-#include "xfa/include/fwl/basewidget/fwl_spinbutton.h"
-#include "xfa/include/fwl/basewidget/fwl_tooltipctrl.h"
-#include "xfa/include/fwl/basewidget/fxmath_barcode.h"
-#include "xfa/include/fwl/core/fwl_app.h"
-#include "xfa/include/fwl/core/fwl_content.h"
-#include "xfa/include/fwl/core/fwl_error.h"
-#include "xfa/include/fwl/core/fwl_form.h"
-#include "xfa/include/fwl/core/fwl_grid.h"
-#include "xfa/include/fwl/core/fwl_note.h"
-#include "xfa/include/fwl/core/fwl_panel.h"
-#include "xfa/include/fwl/core/fwl_target.h"
-#include "xfa/include/fwl/core/fwl_theme.h"
-#include "xfa/include/fwl/core/fwl_thread.h"
-#include "xfa/include/fwl/core/fwl_timer.h"
-#include "xfa/include/fwl/core/fwl_widget.h"
-#include "xfa/include/fwl/core/fwl_widgetdef.h"
-#include "xfa/include/fwl/core/fwl_widgetmgr.h"
-#include "xfa/include/fwl/lightwidget/app.h"
-#include "xfa/include/fwl/lightwidget/barcode.h"
-#include "xfa/include/fwl/lightwidget/caret.h"
-#include "xfa/include/fwl/lightwidget/checkbox.h"
-#include "xfa/include/fwl/lightwidget/combobox.h"
-#include "xfa/include/fwl/lightwidget/datetimepicker.h"
-#include "xfa/include/fwl/lightwidget/edit.h"
-#include "xfa/include/fwl/lightwidget/listbox.h"
-#include "xfa/include/fwl/lightwidget/picturebox.h"
-#include "xfa/include/fwl/lightwidget/pushbutton.h"
-#include "xfa/include/fwl/lightwidget/scrollbar.h"
-#include "xfa/include/fwl/lightwidget/theme.h"
-#include "xfa/include/fwl/lightwidget/tooltipctrl.h"
-#include "xfa/include/fwl/lightwidget/widget.h"
-#include "xfa/include/fwl/theme/barcodetp.h"
-#include "xfa/include/fwl/theme/barcodetp.h"
-#include "xfa/include/fwl/theme/carettp.h"
-#include "xfa/include/fwl/theme/checkboxtp.h"
-#include "xfa/include/fwl/theme/comboboxtp.h"
-#include "xfa/include/fwl/theme/datetimepickertp.h"
-#include "xfa/include/fwl/theme/edittp.h"
-#include "xfa/include/fwl/theme/formtp.h"
-#include "xfa/include/fwl/theme/listboxtp.h"
-#include "xfa/include/fwl/theme/monthcalendartp.h"
-#include "xfa/include/fwl/theme/pictureboxtp.h"
-#include "xfa/include/fwl/theme/pushbuttontp.h"
-#include "xfa/include/fwl/theme/scrollbartp.h"
-#include "xfa/include/fwl/theme/utils.h"
-#include "xfa/include/fwl/theme/widgettp.h"
-#include "xfa/include/fwl/theme/widgettp.h"
-
-#endif // XFA_INCLUDE_FWL_FWL_H_
diff --git a/xfa/include/fwl/lightwidget/app.h b/xfa/include/fwl/lightwidget/app.h
index 1049e8abcd..ce0c0df287 100644
--- a/xfa/include/fwl/lightwidget/app.h
+++ b/xfa/include/fwl/lightwidget/app.h
@@ -7,6 +7,8 @@
#ifndef XFA_INCLUDE_FWL_LIGHTWIDGET_APP_H_
#define XFA_INCLUDE_FWL_LIGHTWIDGET_APP_H_
+#include "xfa/include/fwl/core/fwl_error.h"
+
class CFWL_Theme;
class IFWL_App;
diff --git a/xfa/include/fwl/lightwidget/barcode.h b/xfa/include/fwl/lightwidget/barcode.h
index 04e27a12c9..2dec2a8806 100644
--- a/xfa/include/fwl/lightwidget/barcode.h
+++ b/xfa/include/fwl/lightwidget/barcode.h
@@ -7,12 +7,13 @@
#ifndef XFA_INCLUDE_FWL_LIGHTWIDGET_BARCODE_H_
#define XFA_INCLUDE_FWL_LIGHTWIDGET_BARCODE_H_
+#include "xfa/include/fwl/basewidget/fwl_barcode.h"
+#include "xfa/include/fwl/core/fwl_error.h"
#include "xfa/include/fwl/lightwidget/edit.h"
+#include "xfa/include/fxbarcode/BC_BarCode.h"
class CFWL_Widget;
class CFWL_WidgetProperties;
-class IFWL_BarcodeDP;
-class CFWL_BarcodeDP;
class CFWL_Barcode : public CFWL_Edit {
public:
diff --git a/xfa/include/fwl/lightwidget/caret.h b/xfa/include/fwl/lightwidget/caret.h
index db7e09d188..be11be1cf5 100644
--- a/xfa/include/fwl/lightwidget/caret.h
+++ b/xfa/include/fwl/lightwidget/caret.h
@@ -7,9 +7,9 @@
#ifndef XFA_INCLUDE_FWL_LIGHTWIDGET_CARET_H_
#define XFA_INCLUDE_FWL_LIGHTWIDGET_CARET_H_
-class CFWL_Widget;
-class CFWL_WidgetProperties;
-class CFWL_Caret;
+#include "xfa/include/fwl/core/fwl_error.h"
+#include "xfa/include/fwl/lightwidget/widget.h"
+
class CFWL_Caret : public CFWL_Widget {
public:
static CFWL_Caret* Create();
diff --git a/xfa/include/fwl/lightwidget/checkbox.h b/xfa/include/fwl/lightwidget/checkbox.h
index c357de9f81..3780badce2 100644
--- a/xfa/include/fwl/lightwidget/checkbox.h
+++ b/xfa/include/fwl/lightwidget/checkbox.h
@@ -7,11 +7,9 @@
#ifndef XFA_INCLUDE_FWL_LIGHTWIDGET_CHECKBOX_H_
#define XFA_INCLUDE_FWL_LIGHTWIDGET_CHECKBOX_H_
-class CFWL_Widget;
-class CFWL_WidgetProperties;
-class IFWL_CheckBoxDP;
-class CFWL_CheckBox;
-class CFWL_CheckBoxDP;
+#include "xfa/include/fwl/basewidget/fwl_checkbox.h"
+#include "xfa/include/fwl/lightwidget/widget.h"
+
class CFWL_CheckBox : public CFWL_Widget {
public:
static CFWL_CheckBox* Create();
diff --git a/xfa/include/fwl/lightwidget/datetimepicker.h b/xfa/include/fwl/lightwidget/datetimepicker.h
index e29e51879b..22048f37f6 100644
--- a/xfa/include/fwl/lightwidget/datetimepicker.h
+++ b/xfa/include/fwl/lightwidget/datetimepicker.h
@@ -7,11 +7,9 @@
#ifndef XFA_INCLUDE_FWL_LIGHTWIDGET_DATETIMEPICKER_H_
#define XFA_INCLUDE_FWL_LIGHTWIDGET_DATETIMEPICKER_H_
-class CFWL_Widget;
-class CFWL_WidgetProperties;
-class IFWL_DateTimePickerDP;
-class CFWL_DateTimePicker;
-class CFWL_DateTimePickerDP;
+#include "xfa/include/fwl/basewidget/fwl_datetimepicker.h"
+#include "xfa/include/fwl/lightwidget/widget.h"
+
class CFWL_DateTimePicker : public CFWL_Widget {
public:
static CFWL_DateTimePicker* Create();
diff --git a/xfa/include/fwl/lightwidget/listbox.h b/xfa/include/fwl/lightwidget/listbox.h
index b30f0f6739..008f17055f 100644
--- a/xfa/include/fwl/lightwidget/listbox.h
+++ b/xfa/include/fwl/lightwidget/listbox.h
@@ -10,12 +10,11 @@
#include <memory>
#include <vector>
+#include "xfa/include/fwl/basewidget/fwl_listbox.h"
+#include "xfa/include/fwl/core/fwl_error.h"
+#include "xfa/include/fwl/core/fwl_widget.h"
#include "xfa/include/fwl/lightwidget/widget.h"
-class CFWL_Widget;
-class CFWL_WidgetProperties;
-class IFWL_ListBoxDP;
-class CFWL_ListBox;
class CFWL_ListItem;
class CFWL_ListBox : public CFWL_Widget {
diff --git a/xfa/include/fwl/lightwidget/picturebox.h b/xfa/include/fwl/lightwidget/picturebox.h
index bd994ac1e8..5a21176241 100644
--- a/xfa/include/fwl/lightwidget/picturebox.h
+++ b/xfa/include/fwl/lightwidget/picturebox.h
@@ -7,11 +7,10 @@
#ifndef XFA_INCLUDE_FWL_LIGHTWIDGET_PICTUREBOX_H_
#define XFA_INCLUDE_FWL_LIGHTWIDGET_PICTUREBOX_H_
-class CFWL_Widget;
-class CFWL_WidgetProperties;
-class IFWL_PictureBoxDP;
-class CFWL_PictureBox;
-class CFWL_PictureBoxDP;
+#include "xfa/include/fwl/basewidget/fwl_picturebox.h"
+#include "xfa/include/fwl/core/fwl_error.h"
+#include "xfa/include/fwl/lightwidget/widget.h"
+
class CFWL_PictureBox : public CFWL_Widget {
public:
static CFWL_PictureBox* Create();
diff --git a/xfa/include/fwl/lightwidget/pushbutton.h b/xfa/include/fwl/lightwidget/pushbutton.h
index 709a52710a..d8f5760911 100644
--- a/xfa/include/fwl/lightwidget/pushbutton.h
+++ b/xfa/include/fwl/lightwidget/pushbutton.h
@@ -7,11 +7,9 @@
#ifndef XFA_INCLUDE_FWL_LIGHTWIDGET_PUSHBUTTON_H_
#define XFA_INCLUDE_FWL_LIGHTWIDGET_PUSHBUTTON_H_
-class CFWL_Widget;
-class CFWL_WidgetProperties;
-class IFWL_PushButtonDP;
-class CFWL_PushButton;
-class CFWL_PushButtonDP;
+#include "xfa/include/fwl/basewidget/fwl_pushbutton.h"
+#include "xfa/include/fwl/lightwidget/widget.h"
+
class CFWL_PushButton : public CFWL_Widget {
public:
static CFWL_PushButton* Create();
diff --git a/xfa/include/fwl/lightwidget/scrollbar.h b/xfa/include/fwl/lightwidget/scrollbar.h
index e835bdeb5a..d78e8bec63 100644
--- a/xfa/include/fwl/lightwidget/scrollbar.h
+++ b/xfa/include/fwl/lightwidget/scrollbar.h
@@ -7,9 +7,8 @@
#ifndef XFA_INCLUDE_FWL_LIGHTWIDGET_SCROLLBAR_H_
#define XFA_INCLUDE_FWL_LIGHTWIDGET_SCROLLBAR_H_
-class CFWL_Widget;
-class CFWL_WidgetProperties;
-class CFWL_ScrollBar;
+#include "xfa/include/fwl/lightwidget/widget.h"
+
class CFWL_ScrollBar : public CFWL_Widget {
public:
static CFWL_ScrollBar* Create();
diff --git a/xfa/include/fwl/lightwidget/tooltipctrl.h b/xfa/include/fwl/lightwidget/tooltipctrl.h
index 9b92f35242..c446fe47aa 100644
--- a/xfa/include/fwl/lightwidget/tooltipctrl.h
+++ b/xfa/include/fwl/lightwidget/tooltipctrl.h
@@ -7,11 +7,9 @@
#ifndef XFA_INCLUDE_FWL_LIGHTWIDGET_TOOLTIPCTRL_H_
#define XFA_INCLUDE_FWL_LIGHTWIDGET_TOOLTIPCTRL_H_
-class CFWL_Widget;
-class CFWL_WidgetProperties;
-class IFWL_ToolTipDP;
-class CFWL_ToolTip;
-class CFWL_ToolTipDP;
+#include "xfa/include/fwl/basewidget/fwl_tooltipctrl.h"
+#include "xfa/include/fwl/lightwidget/widget.h"
+
class CFWL_ToolTip : public CFWL_Widget {
public:
static CFWL_ToolTip* Create();
diff --git a/xfa/include/fwl/theme/checkboxtp.h b/xfa/include/fwl/theme/checkboxtp.h
index 6db6f561a1..4208897db6 100644
--- a/xfa/include/fwl/theme/checkboxtp.h
+++ b/xfa/include/fwl/theme/checkboxtp.h
@@ -7,6 +7,7 @@
#ifndef XFA_INCLUDE_FWL_THEME_CHECKBOXTP_H_
#define XFA_INCLUDE_FWL_THEME_CHECKBOXTP_H_
+#include "xfa/include/fwl/theme/utils.h"
#include "xfa/include/fwl/theme/widgettp.h"
class CFWL_CheckBoxTP : public CFWL_WidgetTP {
diff --git a/xfa/include/fwl/theme/listboxtp.h b/xfa/include/fwl/theme/listboxtp.h
index efab981a0d..8b689814ff 100644
--- a/xfa/include/fwl/theme/listboxtp.h
+++ b/xfa/include/fwl/theme/listboxtp.h
@@ -7,9 +7,8 @@
#ifndef XFA_INCLUDE_FWL_THEME_LISTBOXTP_H_
#define XFA_INCLUDE_FWL_THEME_LISTBOXTP_H_
-class CFWL_WidgetTP;
-class CFWL_ScrollBarTP;
-class CFWL_ListBoxTP;
+#include "xfa/include/fwl/theme/widgettp.h"
+
class CFWL_ListBoxTP : public CFWL_WidgetTP {
public:
CFWL_ListBoxTP();
diff --git a/xfa/include/fwl/theme/monthcalendartp.h b/xfa/include/fwl/theme/monthcalendartp.h
index da9fadbcaf..cf7f1e70b1 100644
--- a/xfa/include/fwl/theme/monthcalendartp.h
+++ b/xfa/include/fwl/theme/monthcalendartp.h
@@ -7,8 +7,8 @@
#ifndef XFA_INCLUDE_FWL_THEME_MONTHCALENDARTP_H_
#define XFA_INCLUDE_FWL_THEME_MONTHCALENDARTP_H_
-class CFWL_WidgetTP;
-class CFWL_MonthCalendarTP;
+#include "xfa/include/fwl/theme/widgettp.h"
+
class CFWL_MonthCalendarTP : public CFWL_WidgetTP {
public:
CFWL_MonthCalendarTP();
diff --git a/xfa/include/fwl/theme/pictureboxtp.h b/xfa/include/fwl/theme/pictureboxtp.h
index 7621d3b8f8..8879890649 100644
--- a/xfa/include/fwl/theme/pictureboxtp.h
+++ b/xfa/include/fwl/theme/pictureboxtp.h
@@ -7,8 +7,8 @@
#ifndef XFA_INCLUDE_FWL_THEME_PICTUREBOXTP_H_
#define XFA_INCLUDE_FWL_THEME_PICTUREBOXTP_H_
-class CFWL_WidgetTP;
-class CFWL_PictureBoxTP;
+#include "xfa/include/fwl/theme/widgettp.h"
+
class CFWL_PictureBoxTP : public CFWL_WidgetTP {
public:
CFWL_PictureBoxTP();
diff --git a/xfa/include/fwl/theme/pushbuttontp.h b/xfa/include/fwl/theme/pushbuttontp.h
index 43fcca7073..0b8cc4acf2 100644
--- a/xfa/include/fwl/theme/pushbuttontp.h
+++ b/xfa/include/fwl/theme/pushbuttontp.h
@@ -7,8 +7,8 @@
#ifndef XFA_INCLUDE_FWL_THEME_PUSHBUTTONTP_H_
#define XFA_INCLUDE_FWL_THEME_PUSHBUTTONTP_H_
-class CFWL_WidgetTP;
-class CFWL_PushButtonTP;
+#include "xfa/include/fwl/theme/widgettp.h"
+
class CFWL_PushButtonTP : public CFWL_WidgetTP {
public:
CFWL_PushButtonTP();
diff --git a/xfa/include/fwl/theme/scrollbartp.h b/xfa/include/fwl/theme/scrollbartp.h
index e9bd200827..5cfcaea95d 100644
--- a/xfa/include/fwl/theme/scrollbartp.h
+++ b/xfa/include/fwl/theme/scrollbartp.h
@@ -7,8 +7,8 @@
#ifndef XFA_INCLUDE_FWL_THEME_SCROLLBARTP_H_
#define XFA_INCLUDE_FWL_THEME_SCROLLBARTP_H_
-class CFWL_WidgetTP;
-class CFWL_ScrollBarTP;
+#include "xfa/include/fwl/theme/widgettp.h"
+
class CFWL_ScrollBarTP : public CFWL_WidgetTP {
public:
CFWL_ScrollBarTP();
diff --git a/xfa/include/fwl/theme/widgettp.h b/xfa/include/fwl/theme/widgettp.h
index 404ca51547..e7dee4d8be 100644
--- a/xfa/include/fwl/theme/widgettp.h
+++ b/xfa/include/fwl/theme/widgettp.h
@@ -10,16 +10,23 @@
#include <memory>
#include <vector>
+#include "core/include/fxcrt/fx_coordinates.h"
+#include "core/include/fxcrt/fx_system.h"
+#include "xfa/include/fwl/core/fwl_error.h"
+#include "xfa/include/fwl/core/fwl_theme.h"
+#include "xfa/include/fwl/core/fwl_widget.h"
+#include "xfa/include/fwl/theme/utils.h"
+
class IFWL_ThemeProvider;
class IFWL_Widget;
class IFDE_TextOut;
class IFX_Font;
class IFX_FontMgr;
+class CFWL_ArrowData;
+
#if _FXM_PLATFORM_ != _FXM_PLATFORM_WINDOWS_
class IFX_FontSourceEnum;
#endif
-class CFWL_WidgetTP;
-class CFWL_ArrowData;
class CFWL_WidgetTP {
public:
diff --git a/xfa/include/fxfa/fxfa_objectacc.h b/xfa/include/fxfa/fxfa_objectacc.h
index 426ad73791..b471b5707b 100644
--- a/xfa/include/fxfa/fxfa_objectacc.h
+++ b/xfa/include/fxfa/fxfa_objectacc.h
@@ -7,13 +7,11 @@
#ifndef XFA_INCLUDE_FXFA_FXFA_OBJECTACC_H_
#define XFA_INCLUDE_FXFA_FXFA_OBJECTACC_H_
-#include "core/include/fxge/fx_dib.h" // For FX_ARGB.
+#include "core/include/fxge/fx_dib.h"
+#include "xfa/src/fxfa/src/common/xfa_object.h"
class CXFA_Node;
class IFX_Locale;
-class CXFA_Data;
-class CXFA_Font;
-class CXFA_Fill;
class CXFA_Margin;
class CXFA_Caption;
class CXFA_Para;
@@ -59,7 +57,6 @@ inline FX_BOOL XFA_IsSpace(FX_WCHAR c) {
inline FX_BOOL XFA_IsDigit(FX_WCHAR c) {
return c >= '0' && c <= '9';
}
-typedef CFX_ArrayTemplate<CXFA_Node*> CXFA_NodeArray;
typedef CFX_ArrayTemplate<CXFA_Object*> CXFA_ObjArray;
class CXFA_Data {