diff --git a/fpdfsdk/include/formfiller/FFL_CBA_Fontmap.h b/fpdfsdk/include/formfiller/FFL_CBA_Fontmap.h
index 50f5160..8601b98 100644
--- a/fpdfsdk/include/formfiller/FFL_CBA_Fontmap.h
+++ b/fpdfsdk/include/formfiller/FFL_CBA_Fontmap.h
@@ -7,10 +7,9 @@
 #ifndef _RAO_FONTMAP_H_
 #define _RAO_FONTMAP_H_
 
-#if _MSC_VER > 1000
-#pragma once
-#endif // _MSC_VER > 1000
+#include "../pdfwindow/PWL_FontMap.h"
 
+class CPDF_Dictionary;
 class CPDFSDK_Annot;
 
 class CBA_FontMap : public CPWL_FontMap
diff --git a/fpdfsdk/include/formfiller/FFL_CheckBox.h b/fpdfsdk/include/formfiller/FFL_CheckBox.h
index 9aaf7fe..240e748ea 100644
--- a/fpdfsdk/include/formfiller/FFL_CheckBox.h
+++ b/fpdfsdk/include/formfiller/FFL_CheckBox.h
@@ -7,6 +7,8 @@
 #ifndef _FFL_CHECKBOX_H_
 #define _FFL_CHECKBOX_H_
 
+#include "FFL_FormFiller.h"
+
 class CFFL_CheckBox : public CFFL_Button
 {
 public:
diff --git a/fpdfsdk/include/formfiller/FFL_ComboBox.h b/fpdfsdk/include/formfiller/FFL_ComboBox.h
index 6df8347..e9b8850 100644
--- a/fpdfsdk/include/formfiller/FFL_ComboBox.h
+++ b/fpdfsdk/include/formfiller/FFL_ComboBox.h
@@ -5,7 +5,13 @@
 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
 
 #ifndef _FFL_COMBOBOX_H_
- #define _FFL_COMBOBOX_H_
+#define _FFL_COMBOBOX_H_
+
+#include "../../../core/include/fxcrt/fx_string.h"
+#include "FFL_FormFiller.h"
+
+class CBA_FontMap;
+class CPDFSDK_Document;
 
 struct FFL_ComboBoxState
 {
@@ -14,7 +20,6 @@
 	int nEnd;
 	CFX_WideString sValue;
 };
-class CBA_FontMap;
 
 class CFFL_ComboBox : public CFFL_FormFiller, public IPWL_FocusHandler, public IPWL_Edit_Notify
 {
diff --git a/fpdfsdk/include/formfiller/FFL_ListBox.h b/fpdfsdk/include/formfiller/FFL_ListBox.h
index 43f5fce..03f71df 100644
--- a/fpdfsdk/include/formfiller/FFL_ListBox.h
+++ b/fpdfsdk/include/formfiller/FFL_ListBox.h
@@ -7,7 +7,10 @@
 #ifndef _FFL_LISTBOX_H_
 #define _FFL_LISTBOX_H_
 
+#include "FFL_FormFiller.h"
+
 class  CBA_FontMap;
+
 class CFFL_ListBox : public CFFL_FormFiller
 {
 public:
diff --git a/fpdfsdk/include/formfiller/FFL_Notify.h b/fpdfsdk/include/formfiller/FFL_Notify.h
index cabc1aa..1828d97 100644
--- a/fpdfsdk/include/formfiller/FFL_Notify.h
+++ b/fpdfsdk/include/formfiller/FFL_Notify.h
@@ -4,10 +4,14 @@
  
 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
 
-#if !defined(_FFL_NOTIFY_H_)
+#ifndef _FFL_NOTIFY_H_
 #define _FFL_NOTIFY_H_
 
+#include "../../../core/include/fpdfdoc/fpdf_doc.h"
+#include "../../../core/include/fxcrt/fx_string.h"
+
 class CFFL_FormFiller;
+class CPDF_FormField;
 
 class CFFL_Notify
 {
@@ -38,7 +42,6 @@
 	FX_BOOL									IsNotifying() const {return m_nNotifyFlag > 0;}
 
 private:
-//	CReader_InterForm *						GetReaderInterForm();
  	FX_BOOL									DoAAction(CPDF_AAction::AActionType eAAT, FX_BOOL & bExit);
  	FX_BOOL									FindAAction(CPDF_AAction::AActionType eAAT,CPDF_Action & action);
  	FX_BOOL									FindAAction(CPDF_AAction aaction,CPDF_AAction::AActionType eAAT,CPDF_Action & action);
diff --git a/fpdfsdk/include/formfiller/FFL_PushButton.h b/fpdfsdk/include/formfiller/FFL_PushButton.h
index be5e735..5d115c0 100644
--- a/fpdfsdk/include/formfiller/FFL_PushButton.h
+++ b/fpdfsdk/include/formfiller/FFL_PushButton.h
@@ -7,6 +7,8 @@
 #ifndef _FFL_PUSHBUTTON_H_
 #define _FFL_PUSHBUTTON_H_
 
+#include "FFL_FormFiller.h"
+
 class CFFL_PushButton : public CFFL_Button
 {
 public:
diff --git a/fpdfsdk/include/formfiller/FFL_RadioButton.h b/fpdfsdk/include/formfiller/FFL_RadioButton.h
index 037e563..2049a45 100644
--- a/fpdfsdk/include/formfiller/FFL_RadioButton.h
+++ b/fpdfsdk/include/formfiller/FFL_RadioButton.h
@@ -7,6 +7,8 @@
 #ifndef _FFL_RADIOBUTTON_H_
 #define _FFL_RADIOBUTTON_H_
 
+#include "FFL_FormFiller.h"
+
 class CFFL_RadioButton : public CFFL_Button
 {
 public:
diff --git a/fpdfsdk/include/formfiller/FFL_TextField.h b/fpdfsdk/include/formfiller/FFL_TextField.h
index 3a5fd68..e31a9e5 100644
--- a/fpdfsdk/include/formfiller/FFL_TextField.h
+++ b/fpdfsdk/include/formfiller/FFL_TextField.h
@@ -15,7 +15,8 @@
 
 class CBA_FontMap;
 
-class CFFL_EditUndoItem //: public IUndoItem
+
+class CFFL_EditUndoItem
 {
 public:
 	CFFL_EditUndoItem(CPWL_Edit* pEdit);
diff --git a/fpdfsdk/include/formfiller/FFL_Utils.h b/fpdfsdk/include/formfiller/FFL_Utils.h
index c5ac2a2..e64cce9 100644
--- a/fpdfsdk/include/formfiller/FFL_Utils.h
+++ b/fpdfsdk/include/formfiller/FFL_Utils.h
@@ -7,7 +7,10 @@
 #ifndef _FFL_UTILS_H_
 #define _FFL_UTILS_H_
 
-#define FFL_BASE_USERUNIT			1.0f / 72.0f
+#include "../../../core/include/fpdfapi/fpdf_parser.h"
+#include "../../../core/include/fxcrt/fx_memory.h"
+
+#define FFL_BASE_USERUNIT			(1.0f / 72.0f)
 
 class CFFL_Utils
 {
diff --git a/fpdfsdk/include/fpdf_dataavail.h b/fpdfsdk/include/fpdf_dataavail.h
index e4c1b97..3c37397 100644
--- a/fpdfsdk/include/fpdf_dataavail.h
+++ b/fpdfsdk/include/fpdf_dataavail.h
@@ -7,10 +7,9 @@
 #ifndef _FPDF_DATAAVAIL_H_
 #define _FPDF_DATAAVAIL_H_
 
-#ifndef _FPDFVIEW_H_
-#include "fpdfview.h"
-#endif
+#include <stddef.h>  // For size_t.
 
+#include "fpdfview.h"
 
 /** The result of the process which check linearized PDF. */
 #define FSDK_IS_LINEARIZED			1
diff --git a/fpdfsdk/include/fsdk_actionhandler.h b/fpdfsdk/include/fsdk_actionhandler.h
index 65d38d7..1ec7c09 100644
--- a/fpdfsdk/include/fsdk_actionhandler.h
+++ b/fpdfsdk/include/fsdk_actionhandler.h
@@ -7,8 +7,16 @@
 #ifndef _FSDK_ACTIONHANDLER_H_
 #define _FSDK_ACTIONHANDLER_H_
 
+#include "../../core/include/fpdfdoc/fpdf_doc.h"
+#include "../../core/include/fxcrt/fx_string.h"
+#include "fsdk_baseform.h"
 
+class CFX_PtrList;
 class CPDFDoc_Environment;
+class CPDFSDK_Annot;
+class CPDFSDK_Document;
+class CPDF_Bookmark;
+class CPDF_Dictionary;
 class IFXJS_Runtime;
 
 class CPDFSDK_FormActionHandler
diff --git a/fpdfsdk/include/fsdk_annothandler.h b/fpdfsdk/include/fsdk_annothandler.h
index 5b8b42f..f4bbf4c 100644
--- a/fpdfsdk/include/fsdk_annothandler.h
+++ b/fpdfsdk/include/fsdk_annothandler.h
@@ -7,10 +7,18 @@
 #ifndef _FSDK_ANNOTHANDLER_H_
 #define _FSDK_ANNOTHANDLER_H_
 
+#include "../../core/include/fxcrt/fx_basic.h"
 
-class CPDFDoc_Environment;
 class CFFL_IFormFiller;
+class CFX_RenderDevice;
+class CPDFDoc_Environment;
+class CPDFSDK_Annot;
 class CPDFSDK_PageView;
+class CPDF_Annot;
+class CPDF_Matrix;
+class CPDF_Point;
+class CPDF_Rect;
+
 class IPDFSDK_AnnotHandler
 {
 
diff --git a/fpdfsdk/include/fsdk_baseannot.h b/fpdfsdk/include/fsdk_baseannot.h
index 797c3f1..155ab58 100644
--- a/fpdfsdk/include/fsdk_baseannot.h
+++ b/fpdfsdk/include/fsdk_baseannot.h
@@ -13,7 +13,18 @@
 #include <ctime>
 #endif
 
+#include "../../core/include/fpdfdoc/fpdf_doc.h"
+#include "../../core/include/fxcrt/fx_basic.h"
+#include "fx_systemhandler.h"
+
 class CPDFSDK_PageView;
+class CPDF_Annot;
+class CPDF_Page;
+class CPDF_Rect;
+class CPDF_Matrix;
+class CPDF_RenderOptions;
+class CFX_RenderDevice;
+
 #define CFX_IntArray				CFX_ArrayTemplate<int>
 
 class  CPDFSDK_DateTime : public CFX_Object
diff --git a/fpdfsdk/include/fsdk_baseform.h b/fpdfsdk/include/fsdk_baseform.h
index 915d411..b15fba6 100644
--- a/fpdfsdk/include/fsdk_baseform.h
+++ b/fpdfsdk/include/fsdk_baseform.h
@@ -13,13 +13,21 @@
 #include <ctime>
 #endif
 
-class CPDFSDK_Document;
-class  CPDFSDK_DateTime;
-struct CPWL_Color;
-class CFFL_FormFiller;
-class CPDFSDK_PageView;
-class CPDFSDK_InterForm;
+#include "../../core/include/fpdfapi/fpdf_parser.h"
+#include "../../core/include/fpdfdoc/fpdf_doc.h"
+#include "../../core/include/fxcrt/fx_basic.h"
+#include "../../core/include/fxge/fx_dib.h"
+#include "fsdk_baseannot.h"
 
+class CFFL_FormFiller;
+class CPDFSDK_Annot;
+class CPDFSDK_DateTime;
+class CPDFSDK_Document;
+class CPDFSDK_InterForm;
+class CPDFSDK_PageView;
+class CPDF_Action;
+class CPDF_FormField;
+struct CPWL_Color;
 
 typedef struct _PDFSDK_FieldAction
 {
