summaryrefslogtreecommitdiff
path: root/xfa
diff options
context:
space:
mode:
authorLei Zhang <thestig@chromium.org>2015-06-19 14:58:28 -0700
committerLei Zhang <thestig@chromium.org>2015-06-19 14:58:28 -0700
commit568aff520b4ca33d851317a4ea88807b4fd2da40 (patch)
tree02c6409057908381d36efcd556dd8082044d5509 /xfa
parentc49828916f5b0766f8d6f0fd5bf0a6cc5bd3c1ec (diff)
downloadpdfium-568aff520b4ca33d851317a4ea88807b4fd2da40.tar.xz
Fix -Wnon-virtual-dtor warnings on the XFA branch.
R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1183483003.
Diffstat (limited to 'xfa')
-rw-r--r--xfa/include/fwl/adapter/fwl_adapterclipboardmgr.h5
-rw-r--r--xfa/include/fwl/adapter/fwl_adaptercursormgr.h2
-rw-r--r--xfa/include/fwl/adapter/fwl_adaptermonitormgr.h4
-rw-r--r--xfa/include/fwl/adapter/fwl_adapternative.h3
-rw-r--r--xfa/include/fwl/adapter/fwl_adapterthreadmgr.h4
-rw-r--r--xfa/include/fwl/adapter/fwl_adaptertimermgr.h4
-rw-r--r--xfa/include/fwl/adapter/fwl_adapterwidgetmgr.h3
-rw-r--r--xfa/include/fwl/basewidget/fwl_listbox.h1
-rw-r--r--xfa/include/fwl/basewidget/fxmath_barcode.h1
-rw-r--r--xfa/include/fwl/core/fwl_form.h1
-rw-r--r--xfa/include/fwl/core/fwl_note.h3
-rw-r--r--xfa/include/fwl/core/fwl_theme.h1
-rw-r--r--xfa/include/fwl/core/fwl_timer.h1
-rw-r--r--xfa/include/fwl/core/fwl_widget.h4
-rw-r--r--xfa/include/fwl/core/fwl_widgetmgr.h2
-rw-r--r--xfa/src/fdp/include/fde_brs.h1
-rw-r--r--xfa/src/fdp/include/fde_css.h20
-rw-r--r--xfa/src/fdp/include/fde_img.h1
-rw-r--r--xfa/src/fdp/include/fde_pen.h2
-rw-r--r--xfa/src/fdp/include/fde_psr.h2
-rw-r--r--xfa/src/fdp/include/fde_pth.h1
-rw-r--r--xfa/src/fdp/include/fde_rdr.h4
-rw-r--r--xfa/src/fdp/include/fde_rdv.h4
-rw-r--r--xfa/src/fdp/include/fde_tto.h2
-rw-r--r--xfa/src/fdp/include/fde_xml.h6
-rw-r--r--xfa/src/fee/include/fx_wordbreak.h2
-rw-r--r--xfa/src/fee/include/ifde_txtedtbuf.h3
-rw-r--r--xfa/src/fee/include/ifde_txtedtengine.h4
-rw-r--r--xfa/src/fee/src/fee/fde_txtedtengine.h1
-rw-r--r--xfa/src/fgas/include/fx_cpg.h2
-rw-r--r--xfa/src/fgas/include/fx_datetime.h1
-rw-r--r--xfa/src/fgas/include/fx_fnt.h8
-rw-r--r--xfa/src/fgas/include/fx_locale.h6
-rw-r--r--xfa/src/fgas/include/fx_mem.h4
-rw-r--r--xfa/src/fgas/include/fx_rbk.h1
-rw-r--r--xfa/src/fgas/include/fx_sax.h2
-rw-r--r--xfa/src/fgas/include/fx_stm.h1
-rw-r--r--xfa/src/fgas/include/fx_tbk.h3
-rw-r--r--xfa/src/fwl/src/basewidget/include/fwl_caretimp.h1
-rw-r--r--xfa/src/fwl/src/core/include/fwl_noteimp.h4
-rw-r--r--xfa/src/fwl/src/core/include/fwl_widgetimp.h1
-rw-r--r--xfa/src/fwl/src/core/include/fwl_widgetmgrimp.h4
-rw-r--r--xfa/src/fxfa/src/app/xfa_checksum.h2
-rw-r--r--xfa/src/fxfa/src/app/xfa_ffdocview.h4
-rw-r--r--xfa/src/fxfa/src/app/xfa_fwladapter.h1
-rw-r--r--xfa/src/fxfa/src/app/xfa_textlayout.h1
-rw-r--r--xfa/src/fxfa/src/common/xfa_docdata.h2
-rw-r--r--xfa/src/fxfa/src/common/xfa_doclayout.h1
-rw-r--r--xfa/src/fxfa/src/common/xfa_document.h2
-rw-r--r--xfa/src/fxfa/src/common/xfa_localemgr.h4
-rw-r--r--xfa/src/fxfa/src/common/xfa_parser.h2
-rw-r--r--xfa/src/fxfa/src/common/xfa_script.h3
52 files changed, 134 insertions, 18 deletions
diff --git a/xfa/include/fwl/adapter/fwl_adapterclipboardmgr.h b/xfa/include/fwl/adapter/fwl_adapterclipboardmgr.h
index 943d7caa12..55250f30de 100644
--- a/xfa/include/fwl/adapter/fwl_adapterclipboardmgr.h
+++ b/xfa/include/fwl/adapter/fwl_adapterclipboardmgr.h
@@ -6,8 +6,7 @@
#ifndef _FWL_ADAPTER_CLIPBOARDMGR_H
#define _FWL_ADAPTER_CLIPBOARDMGR_H
-class IFWL_Widget;
-class IFWL_AdapterClipboardMgr;
+
enum FWL_CLIPBOARDFORMAT {
FWL_CLIPBOARDFORMAT_Dib,
FWL_CLIPBOARDFORMAT_Text,
@@ -16,9 +15,11 @@ enum FWL_CLIPBOARDFORMAT {
typedef struct _FWL_HCLIPBOARDDATA {
void* pData;
} * FWL_HCLIPBOARDDATA;
+
class IFWL_AdapterClipboardMgr
{
public:
+ virtual ~IFWL_AdapterClipboardMgr() {}
virtual FWL_ERR Empty() = 0;
virtual FX_BOOL IsDataAvailable(FX_DWORD dwFormat) = 0;
virtual FWL_HCLIPBOARDDATA GetData(FX_DWORD dwFormat) = 0;
diff --git a/xfa/include/fwl/adapter/fwl_adaptercursormgr.h b/xfa/include/fwl/adapter/fwl_adaptercursormgr.h
index 7b7b567be1..b03be66cca 100644
--- a/xfa/include/fwl/adapter/fwl_adaptercursormgr.h
+++ b/xfa/include/fwl/adapter/fwl_adaptercursormgr.h
@@ -25,9 +25,11 @@ enum FWL_CURSORTYPE {
typedef struct _FWL_HCURSOR {
void* pData;
} *FWL_HCURSOR;
+
class IFWL_AdapterCursorMgr
{
public:
+ virtual ~IFWL_AdapterCursorMgr() {}
virtual FWL_HCURSOR GetSystemCursor(FWL_CURSORTYPE eCursorType) = 0;
virtual FWL_HCURSOR GetCustomCursor(const CFX_DIBitmap *pBitmap, FX_FLOAT xHotspot = 0, FX_FLOAT yHotspot = 0) = 0;
virtual FWL_ERR SetCursor(FWL_HCURSOR hCursor) = 0;
diff --git a/xfa/include/fwl/adapter/fwl_adaptermonitormgr.h b/xfa/include/fwl/adapter/fwl_adaptermonitormgr.h
index 3da0564225..77822543d0 100644
--- a/xfa/include/fwl/adapter/fwl_adaptermonitormgr.h
+++ b/xfa/include/fwl/adapter/fwl_adaptermonitormgr.h
@@ -6,13 +6,15 @@
#ifndef _FWL_ADAPTER_MONITORMGR_H
#define _FWL_ADAPTER_MONITORMGR_H
-class IFWL_AdapterMonitorMgr;
+
typedef struct _FWL_HMONITOR {
void* pData;
} *FWL_HMONITOR;
+
class IFWL_AdapterMonitorMgr
{
public:
+ virtual ~IFWL_AdapterMonitorMgr() {}
virtual int32_t CountMonitors() = 0;
virtual FWL_HMONITOR GetMonitor(int32_t nIndex) = 0;
virtual FWL_HMONITOR GetCurrentMonitor() = 0;
diff --git a/xfa/include/fwl/adapter/fwl_adapternative.h b/xfa/include/fwl/adapter/fwl_adapternative.h
index 55532945f9..cc348bf833 100644
--- a/xfa/include/fwl/adapter/fwl_adapternative.h
+++ b/xfa/include/fwl/adapter/fwl_adapternative.h
@@ -13,10 +13,11 @@ class IFWL_AdapterTimerMgr;
class IFWL_AdapterCursorMgr;
class IFWL_AdapterMonitorMgr;
class IFWL_AdapterClipboardMgr;
-class IFWL_AdapterNative;
+
class IFWL_AdapterNative
{
public:
+ virtual ~IFWL_AdapterNative() {}
virtual IFWL_AdapterWidgetMgr* GetWidgetMgr(IFWL_WidgetMgrDelegate *pDelegate) = 0;
virtual IFWL_AdapterThreadMgr* GetThreadMgr() = 0;
virtual IFWL_AdapterTimerMgr* GetTimerMgr() = 0;
diff --git a/xfa/include/fwl/adapter/fwl_adapterthreadmgr.h b/xfa/include/fwl/adapter/fwl_adapterthreadmgr.h
index f3e01855b0..ba2febfdb4 100644
--- a/xfa/include/fwl/adapter/fwl_adapterthreadmgr.h
+++ b/xfa/include/fwl/adapter/fwl_adapterthreadmgr.h
@@ -7,12 +7,13 @@
#ifndef _FWL_ADAPTER_THREAD_H
#define _FWL_ADAPTER_THREAD_H
class IFWL_Thread;
-class IFWL_AdapterThreadMgr;
class IFWL_AdapterMutex;
class IFWL_AdapterSemaphore;
+
class IFWL_AdapterThreadMgr
{
public:
+ virtual ~IFWL_AdapterThreadMgr() {}
virtual FWL_ERR Start(IFWL_Thread *pThread, FWL_HTHREAD &hThread, FX_BOOL bSuspended = FALSE) = 0;
virtual FWL_ERR Resume(FWL_HTHREAD hThread) = 0;
virtual FWL_ERR Suspend(FWL_HTHREAD hThread) = 0;
@@ -23,6 +24,7 @@ public:
class IFWL_AdapterSemaphore
{
public:
+ virtual ~IFWL_AdapterSemaphore() {}
static IFWL_AdapterSemaphore * Create();
virtual FWL_ERR Destroy() = 0;
virtual FWL_ERR Wait() const = 0;
diff --git a/xfa/include/fwl/adapter/fwl_adaptertimermgr.h b/xfa/include/fwl/adapter/fwl_adaptertimermgr.h
index 4c7f7e76dc..f3dce811fa 100644
--- a/xfa/include/fwl/adapter/fwl_adaptertimermgr.h
+++ b/xfa/include/fwl/adapter/fwl_adaptertimermgr.h
@@ -6,11 +6,13 @@
#ifndef _FWL_ADAPTER_TIMERMGR_H
#define _FWL_ADAPTER_TIMERMGR_H
+
class IFWL_Timer;
-class IFWL_AdapterTimerMgr;
+
class IFWL_AdapterTimerMgr
{
public:
+ virtual ~IFWL_AdapterTimerMgr() {}
virtual FWL_ERR Start(IFWL_Timer *pTimer, FX_DWORD dwElapse, FWL_HTIMER &hTimer, FX_BOOL bImmediately = TRUE) = 0;
virtual FWL_ERR Stop(FWL_HTIMER hTimer) = 0;
};
diff --git a/xfa/include/fwl/adapter/fwl_adapterwidgetmgr.h b/xfa/include/fwl/adapter/fwl_adapterwidgetmgr.h
index 603e931084..29e91bab8c 100644
--- a/xfa/include/fwl/adapter/fwl_adapterwidgetmgr.h
+++ b/xfa/include/fwl/adapter/fwl_adapterwidgetmgr.h
@@ -11,12 +11,13 @@ class IFWL_Menu;
class IFWL_MenuDP;
class CFX_Path;
class CFX_DIBitmap;
-class IFWL_AdapterWidgetMgr;
class IFWL_AdapterMessageHook;
class IFWL_AppDelegate;
+
class IFWL_AdapterWidgetMgr
{
public:
+ virtual ~IFWL_AdapterWidgetMgr() {}
virtual FWL_ERR CreateWidget(IFWL_Widget *pWidget, IFWL_Widget *pParent = NULL) = 0;
virtual FWL_ERR DestroyWidget(IFWL_Widget *pWidget) = 0;
virtual FWL_ERR GetWidgetRect(IFWL_Widget *pWidget, CFX_RectF &rect) = 0;
diff --git a/xfa/include/fwl/basewidget/fwl_listbox.h b/xfa/include/fwl/basewidget/fwl_listbox.h
index 3d0fa116ce..4ab4e46c10 100644
--- a/xfa/include/fwl/basewidget/fwl_listbox.h
+++ b/xfa/include/fwl/basewidget/fwl_listbox.h
@@ -88,6 +88,7 @@ public:
class IFWL_ListBoxCompare
{
public:
+ virtual ~IFWL_ListBoxCompare() {}
virtual int32_t Compare(FWL_HLISTITEM hLeft, FWL_HLISTITEM hRight) = 0;
};
class IFWL_ListBox : public IFWL_Widget
diff --git a/xfa/include/fwl/basewidget/fxmath_barcode.h b/xfa/include/fwl/basewidget/fxmath_barcode.h
index 15babc8253..5e78940958 100644
--- a/xfa/include/fwl/basewidget/fxmath_barcode.h
+++ b/xfa/include/fwl/basewidget/fxmath_barcode.h
@@ -9,6 +9,7 @@
class IFX_Barcode
{
public:
+ virtual ~IFX_Barcode() {}
virtual void Release() = 0;
virtual BC_TYPE GetType() = 0;
virtual FX_BOOL Encode(const CFX_WideStringC& contents, FX_BOOL isDevice, int32_t &e) = 0;
diff --git a/xfa/include/fwl/core/fwl_form.h b/xfa/include/fwl/core/fwl_form.h
index eb0b083008..e9a8323f20 100644
--- a/xfa/include/fwl/core/fwl_form.h
+++ b/xfa/include/fwl/core/fwl_form.h
@@ -42,6 +42,7 @@ class IFWL_Form;
#define FWL_PARTSTATE_FRM_Pressed 3
#define FWL_PARTSTATE_FRM_Inactive 4
#define FWL_PARTSTATE_FRM_Disabled 5
+
class IFWL_FormDP : public IFWL_DataProvider
{
public:
diff --git a/xfa/include/fwl/core/fwl_note.h b/xfa/include/fwl/core/fwl_note.h
index ea8328fffb..c423cd5a24 100644
--- a/xfa/include/fwl/core/fwl_note.h
+++ b/xfa/include/fwl/core/fwl_note.h
@@ -346,6 +346,7 @@ typedef enum {
class IFWL_NoteDriver
{
public:
+ virtual ~IFWL_NoteDriver() {}
virtual FX_BOOL SendNote(CFWL_Note *pNote) = 0;
virtual FX_BOOL PostMessage(CFWL_Message *pMessage) = 0;
virtual FWL_ERR RegisterEventTarget(IFWL_Widget *pListener, IFWL_Widget *pEventSource = NULL, FX_DWORD dwFilter = FWL_EVENT_ALL_MASK) = 0;
@@ -363,12 +364,14 @@ IFWL_Widget* FWL_GetCurrentThreadModalWidget(IFWL_NoteThread *pNoteThread);
class IFWL_NoteLoop
{
public:
+ virtual ~IFWL_NoteLoop() {}
virtual FX_BOOL PreProcessMessage(CFWL_Message *pMessage) = 0;
virtual FWL_ERR Idle(int32_t count) = 0;
};
class IFWL_ToolTipTarget
{
public:
+ virtual ~IFWL_ToolTipTarget() {}
virtual IFWL_Widget* GetWidget() = 0;
virtual FX_BOOL IsShowed() = 0;
virtual FWL_ERR DrawToolTip(CFX_Graphics *pGraphics, const CFX_Matrix *pMatrix, IFWL_Widget *pToolTip) = 0;
diff --git a/xfa/include/fwl/core/fwl_theme.h b/xfa/include/fwl/core/fwl_theme.h
index 9ab970b47c..94e81771a9 100644
--- a/xfa/include/fwl/core/fwl_theme.h
+++ b/xfa/include/fwl/core/fwl_theme.h
@@ -75,6 +75,7 @@ public:
class IFWL_ThemeProvider
{
public:
+ virtual ~IFWL_ThemeProvider() {}
virtual FX_BOOL IsValidWidget(IFWL_Widget *pWidget) = 0;
virtual FX_DWORD GetThemeID(IFWL_Widget *pWidget) = 0;
virtual FX_DWORD SetThemeID(IFWL_Widget *pWidget, FX_DWORD dwThemeID, FX_BOOL bChildren = TRUE) = 0;
diff --git a/xfa/include/fwl/core/fwl_timer.h b/xfa/include/fwl/core/fwl_timer.h
index a12f92a9d3..eae5bf48b4 100644
--- a/xfa/include/fwl/core/fwl_timer.h
+++ b/xfa/include/fwl/core/fwl_timer.h
@@ -13,6 +13,7 @@ typedef struct _FWL_HTIMER {
class IFWL_Timer
{
public:
+ virtual ~IFWL_Timer() {}
virtual int32_t Run(FWL_HTIMER hTimer) = 0;
};
FWL_HTIMER FWL_StartTimer(IFWL_Timer *pTimer, FX_DWORD dwElapse, FX_BOOL bImmediately = TRUE);
diff --git a/xfa/include/fwl/core/fwl_widget.h b/xfa/include/fwl/core/fwl_widget.h
index b6377cdc9f..6c3164c5e0 100644
--- a/xfa/include/fwl/core/fwl_widget.h
+++ b/xfa/include/fwl/core/fwl_widget.h
@@ -15,9 +15,11 @@ class IFWL_WidgetDelegate;
class IFWL_Custom;
class IFWL_Proxy;
class IFWL_Form;
+
class IFWL_DataProvider
{
public:
+ virtual ~IFWL_DataProvider() {}
virtual FWL_ERR GetCaption(IFWL_Widget *pWidget, CFX_WideString &wsCaption) = 0;
};
class IFWL_Widget : public IFWL_Target
@@ -59,6 +61,7 @@ public:
class IFWL_WidgetDelegate
{
public:
+ virtual ~IFWL_WidgetDelegate() {}
virtual int32_t OnProcessMessage(CFWL_Message *pMessage) = 0;
virtual FWL_ERR OnProcessEvent(CFWL_Event *pEvent) = 0;
virtual FWL_ERR OnDrawWidget(CFX_Graphics *pGraphics, const CFX_Matrix *pMatrix = NULL) = 0;
@@ -103,6 +106,7 @@ protected:
class IFWL_Proxy
{
public:
+ virtual ~IFWL_Proxy() {}
virtual FWL_ERR GetWidgetRect(CFX_RectF &rect, FX_BOOL bAutoSize = FALSE) = 0;
virtual FWL_ERR Update() = 0;
};
diff --git a/xfa/include/fwl/core/fwl_widgetmgr.h b/xfa/include/fwl/core/fwl_widgetmgr.h
index 95ff26a84c..f658476636 100644
--- a/xfa/include/fwl/core/fwl_widgetmgr.h
+++ b/xfa/include/fwl/core/fwl_widgetmgr.h
@@ -23,6 +23,7 @@ enum FWL_WGTRELATION {
class IFWL_WidgetMgr
{
public:
+ virtual ~IFWL_WidgetMgr() {}
virtual int32_t CountWidgets(IFWL_Widget *pParent = NULL) = 0;
virtual IFWL_Widget* GetWidget(int32_t nIndex, IFWL_Widget *pParent = NULL) = 0;
virtual IFWL_Widget* GetWidget(IFWL_Widget *pWidget, FWL_WGTRELATION eRelation) = 0;
@@ -39,6 +40,7 @@ FX_BOOL FWL_WidgetIsChild(IFWL_Widget *parent, IFWL_Widget *find);
class IFWL_WidgetMgrDelegate
{
public:
+ virtual ~IFWL_WidgetMgrDelegate() {}
virtual FWL_ERR OnSetCapability(FX_DWORD dwCapability = FWL_WGTMGR_DisableThread) = 0;
virtual int32_t OnProcessMessageToForm(CFWL_Message *pMessage) = 0;
virtual FWL_ERR OnDrawWidget(IFWL_Widget *pWidget, CFX_Graphics *pGraphics, const CFX_Matrix *pMatrix = NULL) = 0;
diff --git a/xfa/src/fdp/include/fde_brs.h b/xfa/src/fdp/include/fde_brs.h
index dacf31fd2a..d310c55749 100644
--- a/xfa/src/fdp/include/fde_brs.h
+++ b/xfa/src/fdp/include/fde_brs.h
@@ -34,6 +34,7 @@ class IFDE_Brush
{
public:
static IFDE_Brush* Create(int32_t iType);
+ virtual ~IFDE_Brush() {}
virtual void Release() = 0;
virtual int32_t GetType() const = 0;
};
diff --git a/xfa/src/fdp/include/fde_css.h b/xfa/src/fdp/include/fde_css.h
index 96d49250b9..ad8ffc01a5 100644
--- a/xfa/src/fdp/include/fde_css.h
+++ b/xfa/src/fdp/include/fde_css.h
@@ -230,6 +230,7 @@ enum FDE_CSSPROPERTYVALUE {
class IFDE_CSSValue
{
public:
+ virtual ~IFDE_CSSValue() {}
virtual FDE_CSSVALUETYPE GetType() const = 0;
};
class IFDE_CSSPrimitiveValue : public IFDE_CSSValue
@@ -375,6 +376,7 @@ enum FDE_CSSPROPERTY {
class IFDE_CSSDeclaration
{
public:
+ virtual ~IFDE_CSSDeclaration() {}
virtual IFDE_CSSValue* GetProperty(FDE_CSSPROPERTY eProperty, FX_BOOL &bImportant) const = 0;
virtual FX_POSITION GetStartPosition() const = 0;
virtual void GetNextProperty(FX_POSITION &pos, FDE_CSSPROPERTY &eProperty, IFDE_CSSValue *&pValue, FX_BOOL &bImportant) const = 0;
@@ -397,6 +399,7 @@ enum FDE_CSSSELECTORTYPE {
class IFDE_CSSSelector
{
public:
+ virtual ~IFDE_CSSSelector() {}
virtual FDE_CSSSELECTORTYPE GetType() const = 0;
virtual FX_DWORD GetNameHash() const = 0;
virtual IFDE_CSSSelector* GetNextSelector() const = 0;
@@ -419,6 +422,7 @@ enum FDE_CSSRULETYPE {
class IFDE_CSSRule
{
public:
+ virtual ~IFDE_CSSRule() {}
virtual FDE_CSSRULETYPE GetType() const = 0;
};
typedef CFX_MassArrayTemplate<IFDE_CSSRule*> CFDE_CSSRuleArray;
@@ -473,6 +477,7 @@ class IFDE_CSSStyleSheetCache
{
public:
static IFDE_CSSStyleSheetCache* Create();
+ virtual ~IFDE_CSSStyleSheetCache() {}
virtual void Release() = 0;
virtual void SetMaxItems(int32_t iMaxCount = 5) = 0;
virtual void AddStyleSheet(const CFX_ByteStringC& szKey, IFDE_CSSStyleSheet *pStyleSheet) = 0;
@@ -502,6 +507,7 @@ class IFDE_CSSSyntaxParser
{
public:
static IFDE_CSSSyntaxParser* Create();
+ virtual ~IFDE_CSSSyntaxParser() {}
virtual void Release() = 0;
virtual FX_BOOL Init(IFX_Stream *pStream, int32_t iCSSPlaneSize, int32_t iTextDataSize = 32, FX_BOOL bOnlyDeclaration = FALSE) = 0;
virtual FX_BOOL Init(const FX_WCHAR* pBuffer, int32_t iBufferSize, int32_t iTextDatSize = 32, FX_BOOL bOnlyDeclaration = FALSE) = 0;
@@ -842,6 +848,7 @@ enum FDE_CSSTEXTDECORATION {
class IFDE_CSSRubyStyle
{
public:
+ virtual ~IFDE_CSSRubyStyle() {}
virtual FDE_CSSRUBYALIGN GetRubyAlign() const = 0;
virtual FDE_CSSRUBYOVERHANG GetRubyOverhang() const = 0;
virtual FDE_CSSRUBYPOSITION GetRubyPosition() const = 0;
@@ -851,6 +858,7 @@ public:
class IFDE_CSSMultiColumnStyle
{
public:
+ virtual ~IFDE_CSSMultiColumnStyle() {}
virtual const FDE_CSSLENGTH& GetColumnCount() const = 0;
virtual const FDE_CSSLENGTH& GetColumnGap() const = 0;
virtual FX_ARGB GetColumnRuleColor() const = 0;
@@ -867,6 +875,7 @@ public:
class IFDE_CSSGeneratedContentStyle
{
public:
+ virtual ~IFDE_CSSGeneratedContentStyle() {}
virtual int32_t CountCounters() = 0;
virtual const FX_WCHAR* GetCounterIdentifier(int32_t index) = 0;
virtual FX_BOOL GetCounterReset(int32_t index, int32_t &iValue) = 0;
@@ -878,6 +887,7 @@ public:
class IFDE_CSSFontStyle
{
public:
+ virtual ~IFDE_CSSFontStyle() {}
virtual int32_t CountFontFamilies() const = 0;
virtual const FX_WCHAR* GetFontFamily(int32_t index) const = 0;
virtual FX_WORD GetFontWeight() const = 0;
@@ -894,6 +904,7 @@ public:
class IFDE_CSSBoundaryStyle
{
public:
+ virtual ~IFDE_CSSBoundaryStyle() {}
virtual FX_ARGB GetBorderLeftColor() const = 0;
virtual FX_ARGB GetBorderTopColor() const = 0;
virtual FX_ARGB GetBorderRightColor() const = 0;
@@ -922,6 +933,7 @@ public:
class IFDE_CSSPositionStyle
{
public:
+ virtual ~IFDE_CSSPositionStyle() {}
virtual FDE_CSSDISPLAY GetDisplay() const = 0;
virtual const FDE_CSSSIZE& GetBoxSize() const = 0;
virtual const FDE_CSSSIZE& GetMinBoxSize() const = 0;
@@ -943,6 +955,7 @@ public:
class IFDE_CSSParagraphStyle
{
public:
+ virtual ~IFDE_CSSParagraphStyle() {}
virtual FX_FLOAT GetLineHeight() const = 0;
virtual FDE_CSSWHITESPACE GetWhiteSpace() const = 0;
virtual const FDE_CSSLENGTH& GetTextIndent() const = 0;
@@ -991,6 +1004,7 @@ public:
class IFDE_CSSBackgroundStyle
{
public:
+ virtual ~IFDE_CSSBackgroundStyle() {}
virtual FX_ARGB GetBKGColor() const = 0;
virtual const FX_WCHAR* GetBKGImage() const = 0;
virtual FDE_CSSBKGREPEAT GetBKGRepeat() const = 0;
@@ -1002,6 +1016,7 @@ public:
class IFDE_CSSListStyle
{
public:
+ virtual ~IFDE_CSSListStyle() {}
virtual FDE_CSSLISTSTYLETYPE GetListStyleType() const = 0;
virtual FDE_CSSLISTSTYLEPOSITION GetListStylePosition() const = 0;
virtual const FX_WCHAR* GetListStyleImage() const = 0;
@@ -1011,11 +1026,13 @@ public:
class IFDE_CSSTableStyle
{
public:
+ virtual ~IFDE_CSSTableStyle() {}
virtual FDE_CSSCAPTIONSIDE GetCaptionSide() const = 0;
};
class IFDE_CSSVisualStyle
{
public:
+ virtual ~IFDE_CSSVisualStyle() {}
virtual FDE_CSSVISIBILITY GetVisibility() const = 0;
virtual FDE_CSSOVERFLOW GetOverflowX() const = 0;
virtual FDE_CSSOVERFLOW GetOverflowY() const = 0;
@@ -1053,6 +1070,7 @@ enum FDE_CSSSTYLESHEETPRIORITY {
class IFDE_CSSTagProvider
{
public:
+ virtual ~IFDE_CSSTagProvider() {}
virtual CFX_WideStringC GetTagName() = 0;
virtual FX_POSITION GetFirstAttribute() = 0;
virtual void GetNextAttribute(FX_POSITION &pos, CFX_WideStringC &wsAttr, CFX_WideStringC &wsValue) = 0;
@@ -1060,6 +1078,7 @@ public:
class IFDE_CSSAccelerator
{
public:
+ virtual ~IFDE_CSSAccelerator() {}
virtual void OnEnterTag(IFDE_CSSTagProvider *pTag) = 0;
virtual void OnLeaveTag(IFDE_CSSTagProvider *pTag) = 0;
};
@@ -1067,6 +1086,7 @@ class IFDE_CSSStyleSelector
{
public:
static IFDE_CSSStyleSelector* Create();
+ virtual ~IFDE_CSSStyleSelector() {}
virtual void Release() = 0;
virtual void SetFontMgr(IFX_FontMgr *pFontMgr) = 0;
virtual void SetDefFontSize(FX_FLOAT fFontSize) = 0;
diff --git a/xfa/src/fdp/include/fde_img.h b/xfa/src/fdp/include/fde_img.h
index 92ed9daac6..f5ffda6a5a 100644
--- a/xfa/src/fdp/include/fde_img.h
+++ b/xfa/src/fdp/include/fde_img.h
@@ -19,6 +19,7 @@ class IFDE_Image
{
public:
static IFDE_Image* Create(IFX_Stream *pStream, int32_t iFormat = FDE_IMAGEFORMAT_Unknown);
+ virtual ~IFDE_Image() {}
virtual void Release() = 0;
virtual FX_BOOL LoadImage() = 0;
virtual void FreeImage() = 0;
diff --git a/xfa/src/fdp/include/fde_pen.h b/xfa/src/fdp/include/fde_pen.h
index 074dc3c3e7..30f06ab70b 100644
--- a/xfa/src/fdp/include/fde_pen.h
+++ b/xfa/src/fdp/include/fde_pen.h
@@ -31,10 +31,12 @@ typedef struct _FDE_COMPOUNDPATTERN {
} FDE_COMPOUNDPATTERN, * FDE_LPCOMPOUNDPATTERN;
typedef FDE_COMPOUNDPATTERN const * FDE_LPCCOMPOUNDPATTERN;
typedef CFX_ArrayTemplate<FDE_COMPOUNDPATTERN> CFDE_CompoundPatterns;
+
class IFDE_Pen
{
public:
static IFDE_Pen* Create();
+ virtual ~IFDE_Pen() {}
virtual void Release() = 0;
virtual int32_t GetType() const = 0;
virtual FX_ARGB GetColor() const = 0;
diff --git a/xfa/src/fdp/include/fde_psr.h b/xfa/src/fdp/include/fde_psr.h
index 9934cfae09..121b88b16b 100644
--- a/xfa/src/fdp/include/fde_psr.h
+++ b/xfa/src/fdp/include/fde_psr.h
@@ -19,6 +19,7 @@ typedef struct _FDE_HVISUALOBJ {
class IFDE_VisualSet
{
public:
+ virtual ~IFDE_VisualSet() {}
virtual FDE_VISUALOBJTYPE GetType() = 0;
virtual FX_BOOL GetBBox(FDE_HVISUALOBJ hVisualObj, CFX_RectF &bbox) = 0;
virtual FX_BOOL GetMatrix(FDE_HVISUALOBJ hVisualObj, CFX_Matrix &matrix) = 0;
@@ -85,6 +86,7 @@ class IFDE_VisualSetIterator
{
public:
static IFDE_VisualSetIterator* Create();
+ virtual ~IFDE_VisualSetIterator() {}
virtual void Release() = 0;
virtual FX_BOOL AttachCanvas(IFDE_CanvasSet *pCanvas) = 0;
virtual FX_BOOL FilterObjects(FX_DWORD dwObjects = 0xFFFFFFFF) = 0;
diff --git a/xfa/src/fdp/include/fde_pth.h b/xfa/src/fdp/include/fde_pth.h
index be3cc8d50e..5aa9997484 100644
--- a/xfa/src/fdp/include/fde_pth.h
+++ b/xfa/src/fdp/include/fde_pth.h
@@ -11,6 +11,7 @@ class IFDE_Path
{
public:
static IFDE_Path* Create();
+ virtual ~IFDE_Path() {}
virtual void Release() = 0;
virtual FX_BOOL StartFigure() = 0;
virtual FX_BOOL CloseFigure() = 0;
diff --git a/xfa/src/fdp/include/fde_rdr.h b/xfa/src/fdp/include/fde_rdr.h
index cbae1c26fa..aef459f24d 100644
--- a/xfa/src/fdp/include/fde_rdr.h
+++ b/xfa/src/fdp/include/fde_rdr.h
@@ -8,7 +8,7 @@
#define _FDE_RENDERCONTEXT
class IFDE_Page;
class IFDE_RenderDevice;
-class IFDE_RenderContext;
+
void FDE_GetPageMatrix(CFX_Matrix &pageMatrix, const CFX_RectF &docPageRect, const CFX_Rect &devicePageRect, int32_t iRotate, FX_DWORD dwCoordinatesType = 0);
enum FDE_RENDERSTATUS {
FDE_RENDERSTATUS_Reset = 0,
@@ -16,10 +16,12 @@ enum FDE_RENDERSTATUS {
FDE_RENDERSTATUS_Done ,
FDE_RENDERSTATUS_Failed ,
};
+
class IFDE_RenderContext
{
public:
static IFDE_RenderContext* Create();
+ virtual ~IFDE_RenderContext() {}
virtual void Release() = 0;
virtual FX_BOOL StartRender(IFDE_RenderDevice *pRenderDevice,
IFDE_CanvasSet *pCanvasSet,
diff --git a/xfa/src/fdp/include/fde_rdv.h b/xfa/src/fdp/include/fde_rdv.h
index 41e8d5c43d..4b02f22ba7 100644
--- a/xfa/src/fdp/include/fde_rdv.h
+++ b/xfa/src/fdp/include/fde_rdv.h
@@ -11,15 +11,17 @@ class IFDE_Brush;
class IFDE_Image;
class CFX_DIBitmap;
class CFX_DIBSource;
-class IFDE_RenderDevice;
+
typedef struct _FDE_HDEVICESTATE {
void* pData;
} * FDE_HDEVICESTATE;
+
class IFDE_RenderDevice
{
public:
static IFDE_RenderDevice* Create(CFX_DIBitmap *pBitmap, FX_BOOL bRgbByteOrder = FALSE);
static IFDE_RenderDevice* Create(CFX_RenderDevice *pDevice);
+ virtual ~IFDE_RenderDevice() {}
virtual void Release() = 0;
virtual int32_t GetWidth() const = 0;
diff --git a/xfa/src/fdp/include/fde_tto.h b/xfa/src/fdp/include/fde_tto.h
index ec27490cfd..052f221238 100644
--- a/xfa/src/fdp/include/fde_tto.h
+++ b/xfa/src/fdp/include/fde_tto.h
@@ -31,10 +31,12 @@ class IFDE_TextOut;
#define FDE_TTOALIGNMENT_BottomCenter 9
#define FDE_TTOALIGNMENT_BottomRight 10
#define FDE_TTOALIGNMENT_BottomAuto 11
+
class IFDE_TextOut
{
public:
static IFDE_TextOut* Create();
+ virtual ~IFDE_TextOut() {}
virtual void Release() = 0;
virtual void SetFont(IFX_Font *pFont) = 0;
virtual void SetFontSize(FX_FLOAT fFontSize) = 0;
diff --git a/xfa/src/fdp/include/fde_xml.h b/xfa/src/fdp/include/fde_xml.h
index 2ffa30c0fd..03f6438ed4 100644
--- a/xfa/src/fdp/include/fde_xml.h
+++ b/xfa/src/fdp/include/fde_xml.h
@@ -43,9 +43,11 @@ FX_BOOL FDE_IsXMLNameChar(FX_WCHAR ch, FX_BOOL bFirstChar);
#ifdef __cplusplus
}
#endif
+
class IFDE_XMLNode
{
public:
+ virtual ~IFDE_XMLNode() {}
virtual void Release() = 0;
virtual FDE_XMLNODETYPE GetType() const = 0;
virtual int32_t CountChildNodes() const = 0;
@@ -119,6 +121,7 @@ class IFDE_XMLCharData : public IFDE_XMLDeclaration
{
public:
static IFDE_XMLCharData* Create(const CFX_WideString &wsCData);
+ virtual ~IFDE_XMLCharData() {}
virtual void GetCharData(CFX_WideString &wsCData) const = 0;
virtual void SetCharData(const CFX_WideString &wsCData) = 0;
@@ -136,6 +139,7 @@ class IFDE_XMLDoc
{
public:
static IFDE_XMLDoc* Create();
+ virtual ~IFDE_XMLDoc() {}
virtual void Release() = 0;
virtual FX_BOOL LoadXML(IFX_Stream *pXMLStream, int32_t iXMLPlaneSize = 8192, int32_t iTextDataSize = 256, FDE_LPXMLREADERHANDLER pHandler = NULL) = 0;
virtual FX_BOOL LoadXML(IFDE_XMLParser *pXMLParser) = 0;
@@ -148,6 +152,7 @@ public:
class IFDE_XMLParser
{
public:
+ virtual ~IFDE_XMLParser() {}
virtual void Release() = 0;
virtual int32_t DoParser(IFX_Pause *pPause) = 0;
};
@@ -170,6 +175,7 @@ class IFDE_XMLSyntaxParser
{
public:
static IFDE_XMLSyntaxParser* Create();
+ virtual ~IFDE_XMLSyntaxParser() {}
virtual void Release() = 0;
virtual void Init(IFX_Stream *pStream, int32_t iXMLPlaneSize, int32_t iTextDataSize = 256) = 0;
virtual FX_DWORD DoSyntaxParse() = 0;
diff --git a/xfa/src/fee/include/fx_wordbreak.h b/xfa/src/fee/include/fx_wordbreak.h
index 275930a8b7..5dc0b1b73b 100644
--- a/xfa/src/fee/include/fx_wordbreak.h
+++ b/xfa/src/fee/include/fx_wordbreak.h
@@ -7,9 +7,11 @@
#ifndef _FX_WORDBREAK_H
#define _FX_WORDBREAK_H
class IFX_CharIter;
+
class IFX_WordBreak
{
public:
+ virtual ~IFX_WordBreak() {}
virtual void Release() = 0;
virtual void Attach(IFX_CharIter * pIter) = 0;
virtual void Attach(const CFX_WideString & wsText) = 0;
diff --git a/xfa/src/fee/include/ifde_txtedtbuf.h b/xfa/src/fee/include/ifde_txtedtbuf.h
index 3aa24ffe69..b0706337c8 100644
--- a/xfa/src/fee/include/ifde_txtedtbuf.h
+++ b/xfa/src/fee/include/ifde_txtedtbuf.h
@@ -7,10 +7,11 @@
#ifndef _IFDE_TXTEDTBUF_H
#define _IFDE_TXTEDTBUF_H
#define FDE_DEFCHUNKLENGTH (1024)
-class IFDE_TxtEdtBuf;
+
class IFDE_TxtEdtBuf
{
public:
+ virtual ~IFDE_TxtEdtBuf() {}
virtual void Release() = 0;
virtual FX_BOOL SetChunkSize(int32_t nChunkSize) = 0;
diff --git a/xfa/src/fee/include/ifde_txtedtengine.h b/xfa/src/fee/include/ifde_txtedtengine.h
index 0ee175380e..d11a1e9db1 100644
--- a/xfa/src/fee/include/ifde_txtedtengine.h
+++ b/xfa/src/fee/include/ifde_txtedtengine.h
@@ -140,6 +140,7 @@ typedef _FDE_TXTEDT_TEXTCHANGE_INFO* FDE_LPTXTEDT_TEXTCHANGE_INFO;
class IFDE_TxtEdtEventSink
{
public:
+ virtual ~IFDE_TxtEdtEventSink() {}
virtual void On_CaretChanged(IFDE_TxtEdtEngine * pEdit, int32_t nPage, FX_BOOL bVisible = TRUE) = 0;
virtual void On_TextChanged(IFDE_TxtEdtEngine * pEdit, FDE_TXTEDT_TEXTCHANGE_INFO &ChangeInfo) = 0;
virtual void On_PageCountChanged(IFDE_TxtEdtEngine * pEdit) = 0;
@@ -157,6 +158,7 @@ public:
class IFX_CharIter
{
public:
+ virtual ~IFX_CharIter() {}
virtual void Release() = 0;
virtual FX_BOOL Next(FX_BOOL bPrev = FALSE) = 0;
virtual FX_WCHAR GetChar() = 0;
@@ -170,6 +172,7 @@ class IFDE_TxtEdtEngine
public:
static IFDE_TxtEdtEngine* Create();
+ virtual ~IFDE_TxtEdtEngine() {}
virtual void Release() = 0;
virtual void SetEditParams(const FDE_TXTEDTPARAMS &params) = 0;
virtual const FDE_TXTEDTPARAMS* GetEditParams() const = 0;
@@ -225,6 +228,7 @@ public:
class IFDE_TxtEdtParag
{
public:
+ virtual ~IFDE_TxtEdtParag() {}
virtual int32_t GetTextLength() const = 0;
virtual int32_t GetStartIndex() const = 0;
virtual int32_t CountLines() const = 0;
diff --git a/xfa/src/fee/src/fee/fde_txtedtengine.h b/xfa/src/fee/src/fee/fde_txtedtengine.h
index c482f5b52c..f039f1a72b 100644
--- a/xfa/src/fee/src/fee/fde_txtedtengine.h
+++ b/xfa/src/fee/src/fee/fde_txtedtengine.h
@@ -30,6 +30,7 @@ class IFDE_TxtEdtDoRecord
{
public:
static IFDE_TxtEdtDoRecord * Create(const CFX_ByteStringC& bsDoRecord);
+ virtual ~IFDE_TxtEdtDoRecord() {}
virtual void Release() = 0;
virtual FX_BOOL Redo() = 0;
virtual FX_BOOL Undo() = 0;
diff --git a/xfa/src/fgas/include/fx_cpg.h b/xfa/src/fgas/include/fx_cpg.h
index 0b58727fa3..42953b042b 100644
--- a/xfa/src/fgas/include/fx_cpg.h
+++ b/xfa/src/fgas/include/fx_cpg.h
@@ -208,10 +208,12 @@ typedef struct _FX_LANG2CPMAP {
FX_WORD wLanguage;
FX_WORD wCodepage;
} FX_LANG2CPMAP;
+
class IFX_CodePage
{
public:
static IFX_CodePage* Create(FX_WORD wCodePage);
+ virtual ~IFX_CodePage() {}
virtual void Release() = 0;
virtual FX_WORD GetCodePageNumber() const = 0;
virtual FX_CODESYSTEM GetCodeSystemType() const = 0;
diff --git a/xfa/src/fgas/include/fx_datetime.h b/xfa/src/fgas/include/fx_datetime.h
index dcaf18398f..b867b369d2 100644
--- a/xfa/src/fgas/include/fx_datetime.h
+++ b/xfa/src/fgas/include/fx_datetime.h
@@ -290,6 +290,7 @@ public:
{
m_DateTime = dt.m_DateTime;
}
+ virtual ~CFX_DateTime() {}
operator FX_DATETIME * ()
{
return &m_DateTime;
diff --git a/xfa/src/fgas/include/fx_fnt.h b/xfa/src/fgas/include/fx_fnt.h
index 6b328d9741..9242d9704f 100644
--- a/xfa/src/fgas/include/fx_fnt.h
+++ b/xfa/src/fgas/include/fx_fnt.h
@@ -37,11 +37,14 @@ class IFX_FontMgr;
#define FX_BOUNDINGSHAPE_Square 2
#define FX_BOUNDINGSHAPE_Triangle 3
#define FX_BOUNDINGSHAPE_Diamond 4
+
class IFX_FontProvider
{
public:
+ virtual ~IFX_FontProvider() {}
virtual FX_BOOL GetCharWidth(IFX_Font* pFont, FX_WCHAR wUnicode, int32_t &iWidth, FX_BOOL bCharCode = FALSE) = 0;
};
+
class IFX_Font
{
public:
@@ -50,6 +53,7 @@ public:
static IFX_Font* LoadFont(const FX_WCHAR* pszFileName, IFX_FontMgr *pFontMgr);
static IFX_Font* LoadFont(IFX_Stream *pFontStream, IFX_FontMgr *pFontMgr, FX_BOOL bSaveStream = FALSE);
static IFX_Font* LoadFont(CFX_Font *pExtFont, IFX_FontMgr *pFontMgr, FX_BOOL bTakeOver = FALSE);
+ virtual ~IFX_Font() {}
virtual void Release() = 0;
virtual IFX_Font* Retain() = 0;
virtual IFX_Font* Derive(FX_DWORD dwFontStyles, FX_WORD wCodePage = 0) = 0;
@@ -112,6 +116,7 @@ class IFX_FontMgr
{
public:
static IFX_FontMgr* Create(FX_LPEnumAllFonts pEnumerator, FX_LPMatchFont pMatcher = NULL, void* pUserData = NULL);
+ ~virtual ~IFX_FontMgr() {}
virtual void Release() = 0;
virtual IFX_Font* GetDefFontByCodePage(FX_WORD wCodePage, FX_DWORD dwFontStyles, const FX_WCHAR* pszFontFamily = NULL) = 0;
virtual IFX_Font* GetDefFontByCharset(uint8_t nCharset, FX_DWORD dwFontStyles, const FX_WCHAR* pszFontFamily = NULL) = 0;
@@ -129,6 +134,7 @@ public:
class IFX_FontMgrDelegate
{
public:
+ virtual ~IFX_FontMgrDelegate() {}
virtual IFX_Font* GetDefFontByCodePage(IFX_FontMgr* pFontMgr, FX_WORD wCodePage, FX_DWORD dwFontStyles, const FX_WCHAR* pszFontFamily = NULL) = 0;
virtual IFX_Font* GetDefFontByCharset(IFX_FontMgr* pFontMgr, uint8_t nCharset, FX_DWORD dwFontStyles, const FX_WCHAR* pszFontFamily = NULL) = 0;
virtual IFX_Font* GetDefFontByUnicode(IFX_FontMgr* pFontMgr, FX_WCHAR wUnicode, FX_DWORD dwFontStyles, const FX_WCHAR* pszFontFamily = NULL) = 0;
@@ -137,6 +143,7 @@ public:
class IFX_FontSourceEnum
{
public:
+ virtual ~IFX_FontSourceEnum() {}
virtual void Release() = 0;
virtual FX_POSITION GetStartPosition(void* pUserData = NULL) = 0;
virtual IFX_FileAccess* GetNext(FX_POSITION& pos, void* pUserData = NULL) = 0;
@@ -146,6 +153,7 @@ class IFX_FontMgr
{
public:
static IFX_FontMgr* Create(IFX_FontSourceEnum* pFontEnum, IFX_FontMgrDelegate* pDelegate = NULL, void* pUserData = NULL);
+ virtual ~IFX_FontMgr() {}
virtual void Release() = 0;
virtual IFX_Font* GetDefFontByCodePage(FX_WORD wCodePage, FX_DWORD dwFontStyles, const FX_WCHAR* pszFontFamily = NULL) = 0;
virtual IFX_Font* GetDefFontByCharset(uint8_t nCharset, FX_DWORD dwFontStyles, const FX_WCHAR* pszFontFamily = NULL) = 0;
diff --git a/xfa/src/fgas/include/fx_locale.h b/xfa/src/fgas/include/fx_locale.h
index b377f981e4..025814c7c2 100644
--- a/xfa/src/fgas/include/fx_locale.h
+++ b/xfa/src/fgas/include/fx_locale.h
@@ -49,14 +49,15 @@ enum FX_DATETIMETYPE {
FX_DATETIMETYPE_DateTime,
FX_DATETIMETYPE_TimeDate,
};
+
class IFX_Locale
{
public:
static IFX_Locale* Create(CXML_Element* pLocaleData);
+ virtual ~IFX_Locale() {}
virtual void Release() = 0;
-
virtual CFX_WideString GetName() = 0;
virtual void GetNumbericSymbol(FX_LOCALENUMSYMBOL eType, CFX_WideString& wsNumSymbol) const = 0;
@@ -70,9 +71,11 @@ public:
virtual void GetTimePattern(FX_LOCALEDATETIMESUBCATEGORY eType, CFX_WideString& wsPattern) const = 0;
virtual void GetNumPattern(FX_LOCALENUMSUBCATEGORY eType, CFX_WideString& wsPattern) const = 0;
};
+
class IFX_LocaleMgr
{
public:
+ virtual ~IFX_LocaleMgr() {}
virtual void Release() = 0;
virtual FX_WORD GetDefLocaleID() = 0;
virtual IFX_Locale* GetDefLocale() = 0;
@@ -88,6 +91,7 @@ class IFX_FormatString
public:
static IFX_FormatString* Create(IFX_LocaleMgr* pLocaleMgr, FX_BOOL bUseLCID);
+ virtual ~IFX_FormatString() {}
virtual void Release() = 0;
virtual void SplitFormatString(const CFX_WideString& wsFormatString, CFX_WideStringArray& wsPatterns) = 0;
virtual FX_LOCALECATEGORY GetCategory(const CFX_WideString& wsPattern) = 0;
diff --git a/xfa/src/fgas/include/fx_mem.h b/xfa/src/fgas/include/fx_mem.h
index c8875e185d..6c0e1faa25 100644
--- a/xfa/src/fgas/include/fx_mem.h
+++ b/xfa/src/fgas/include/fx_mem.h
@@ -14,9 +14,11 @@ enum FX_ALLOCTYPE {
FX_ALLOCTYPE_Fixed ,
FX_ALLOCTYPE_Dynamic ,
};
+
class IFX_MEMAllocator
{
public:
+ virtual ~IFX_MEMAllocator() {}
virtual void Release() = 0;
virtual void* Alloc(size_t size) = 0;
virtual void Free(void *pBlock) = 0;
@@ -25,10 +27,12 @@ public:
virtual size_t SetDefChunkSize(size_t size) = 0;
virtual size_t GetCurrentDataSize() const = 0;
};
+
IFX_MEMAllocator* FX_CreateAllocator(FX_ALLOCTYPE eType, size_t chunkSize, size_t blockSize);
class CFX_Target
{
public:
+ virtual ~CFX_Target() {}
void* operator new(size_t size)
{
return FX_Alloc(uint8_t, size);
diff --git a/xfa/src/fgas/include/fx_rbk.h b/xfa/src/fgas/include/fx_rbk.h
index 282b6e37db..a8544b047d 100644
--- a/xfa/src/fgas/include/fx_rbk.h
+++ b/xfa/src/fgas/include/fx_rbk.h
@@ -200,6 +200,7 @@ class IFX_RTFBreak
{
public:
static IFX_RTFBreak* Create(FX_DWORD dwPolicies);
+ virtual ~IFX_RTFBreak() {}
virtual void Release() = 0;
virtual void SetLineWidth(FX_FLOAT fLineStart, FX_FLOAT fLineEnd) = 0;
virtual void SetLinePos(FX_FLOAT fLinePos) = 0;
diff --git a/xfa/src/fgas/include/fx_sax.h b/xfa/src/fgas/include/fx_sax.h
index 9d959e2321..12a7d13435 100644
--- a/xfa/src/fgas/include/fx_sax.h
+++ b/xfa/src/fgas/include/fx_sax.h
@@ -27,6 +27,7 @@ enum FX_SAXNODE {
class IFX_SAXReaderHandler
{
public:
+ virtual ~IFX_SAXReaderHandler() {}
virtual void* OnTagEnter(const CFX_ByteStringC& bsTagName, FX_SAXNODE eType, FX_DWORD dwStartPos) = 0;
virtual void OnTagAttribute(void* pTag, const CFX_ByteStringC& bsAttri, const CFX_ByteStringC& bsValue) = 0;
virtual void OnTagBreak(void* pTag) = 0;
@@ -38,6 +39,7 @@ public:
class IFX_SAXReader
{
public:
+ virtual ~IFX_SAXReader() {}
virtual void Release() = 0;
virtual int32_t StartParse(IFX_FileRead *pFile, FX_DWORD dwStart = 0, FX_DWORD dwLen = -1, FX_DWORD dwParseMode = 0) = 0;
virtual int32_t ContinueParse(IFX_Pause *pPause = NULL) = 0;
diff --git a/xfa/src/fgas/include/fx_stm.h b/xfa/src/fgas/include/fx_stm.h
index b10b06a830..9b284329b5 100644
--- a/xfa/src/fgas/include/fx_stm.h
+++ b/xfa/src/fgas/include/fx_stm.h
@@ -37,6 +37,7 @@ public:
static IFX_Stream* CreateStream(uint8_t* pData, int32_t length, FX_DWORD dwAccess);
static IFX_Stream* CreateStream(IFX_BufferRead *pBufferRead, FX_DWORD dwAccess, int32_t iFileSize = -1, FX_BOOL bReleaseBufferRead = TRUE);
static IFX_Stream* CreateTextStream(IFX_Stream *pBaseStream, FX_BOOL bDeleteOnRelease);
+ virtual ~IFX_Stream() {}
virtual void Release() = 0;
virtual IFX_Stream* Retain() = 0;
virtual FX_DWORD GetAccessModes() const = 0;
diff --git a/xfa/src/fgas/include/fx_tbk.h b/xfa/src/fgas/include/fx_tbk.h
index e48e2eedf4..2eaca3922c 100644
--- a/xfa/src/fgas/include/fx_tbk.h
+++ b/xfa/src/fgas/include/fx_tbk.h
@@ -57,9 +57,11 @@ class IFX_TxtBreak;
#define FX_TXTLINEALIGNMENT_LowerMask 0x03
#define FX_TXTLINEALIGNMENT_HigherMask 0x0C
#define FX_TXTBREAK_MinimumTabWidth 160000
+
class IFX_TxtAccess
{
public:
+ virtual ~IFX_TxtAccess() {}
virtual FX_WCHAR GetChar(void* pIdentity, int32_t index) const = 0;
virtual int32_t GetWidth(void* pIdentity, int32_t index) const = 0;
};
@@ -178,6 +180,7 @@ class IFX_TxtBreak
{
public:
static IFX_TxtBreak* Create(FX_DWORD dwPolicies);
+ virtual ~IFX_TxtBreak() {}
virtual void Release() = 0;
virtual void SetLineWidth(FX_FLOAT fLineWidth) = 0;
virtual void SetLinePos(FX_FLOAT fLinePos) = 0;
diff --git a/xfa/src/fwl/src/basewidget/include/fwl_caretimp.h b/xfa/src/fwl/src/basewidget/include/fwl_caretimp.h
index f4d090acb4..6e9d197097 100644
--- a/xfa/src/fwl/src/basewidget/include/fwl_caretimp.h
+++ b/xfa/src/fwl/src/basewidget/include/fwl_caretimp.h
@@ -37,6 +37,7 @@ protected:
{
public:
CFWL_CaretTimer(CFWL_CaretImp *m_pCaret);
+ virtual ~CFWL_CaretTimer() {}
virtual int32_t Run(FWL_HTIMER hTimer);
CFWL_CaretImp *m_pCaret;
diff --git a/xfa/src/fwl/src/core/include/fwl_noteimp.h b/xfa/src/fwl/src/core/include/fwl_noteimp.h
index 78afc35313..cc94b37fa4 100644
--- a/xfa/src/fwl/src/core/include/fwl_noteimp.h
+++ b/xfa/src/fwl/src/core/include/fwl_noteimp.h
@@ -16,10 +16,12 @@ class CFWL_NoteLoop;
class CFWL_NoteDriver;
class CFWL_EventTarget;
class CFWL_ToolTipContainer;
+
class CFWL_NoteLoop
{
public:
CFWL_NoteLoop(CFWL_WidgetImp *pForm = NULL);
+ virtual ~CFWL_NoteLoop() {}
virtual FX_BOOL PreProcessMessage(CFWL_Message *pMessage);
virtual FWL_ERR Idle(int32_t count);
CFWL_WidgetImp* GetForm();
@@ -37,7 +39,7 @@ class CFWL_NoteDriver
{
public:
CFWL_NoteDriver();
- ~CFWL_NoteDriver();
+ virtual ~CFWL_NoteDriver();
virtual FX_BOOL SendNote(CFWL_Note *pNote);
virtual FX_BOOL PostMessage(CFWL_Message *pMessage);
virtual FWL_ERR RegisterEventTarget(IFWL_Widget *pListener, IFWL_Widget *pEventSource = NULL, FX_DWORD dwFilter = FWL_EVENT_ALL_MASK);
diff --git a/xfa/src/fwl/src/core/include/fwl_widgetimp.h b/xfa/src/fwl/src/core/include/fwl_widgetimp.h
index af4ceced95..fa523f390c 100644
--- a/xfa/src/fwl/src/core/include/fwl_widgetimp.h
+++ b/xfa/src/fwl/src/core/include/fwl_widgetimp.h
@@ -121,6 +121,7 @@ class CFWL_WidgetImpDelegate
{
public:
CFWL_WidgetImpDelegate();
+ virtual ~CFWL_WidgetImpDelegate() {}
virtual int32_t OnProcessMessage(CFWL_Message *pMessage);
virtual FWL_ERR OnProcessEvent(CFWL_Event *pEvent);
virtual FWL_ERR OnDrawWidget(CFX_Graphics *pGraphics, const CFX_Matrix *pMatrix = NULL);
diff --git a/xfa/src/fwl/src/core/include/fwl_widgetmgrimp.h b/xfa/src/fwl/src/core/include/fwl_widgetmgrimp.h
index f9b465fc52..31b978ec97 100644
--- a/xfa/src/fwl/src/core/include/fwl_widgetmgrimp.h
+++ b/xfa/src/fwl/src/core/include/fwl_widgetmgrimp.h
@@ -49,11 +49,12 @@ public:
FX_BOOL bOutsideChanged;
#endif
};
+
class CFWL_WidgetMgr
{
public:
CFWL_WidgetMgr(IFWL_AdapterNative *pAdapterNative);
- ~CFWL_WidgetMgr();
+ virtual ~CFWL_WidgetMgr();
virtual int32_t CountWidgets(IFWL_Widget *pParent = NULL);
virtual IFWL_Widget* GetWidget(int32_t nIndex, IFWL_Widget *pParent = NULL);
virtual IFWL_Widget* GetWidget(IFWL_Widget *pWidget, FWL_WGTRELATION eRelation);
@@ -127,6 +128,7 @@ class CFWL_WidgetMgrDelegate
{
public:
CFWL_WidgetMgrDelegate(CFWL_WidgetMgr *pWidgetMgr);
+ virtual ~CFWL_WidgetMgrDelegate() {}
virtual FWL_ERR OnSetCapability(FX_DWORD dwCapability = FWL_WGTMGR_DisableThread);
virtual int32_t OnProcessMessageToForm(CFWL_Message *pMessage);
virtual FWL_ERR OnDrawWidget(IFWL_Widget *pWidget, CFX_Graphics *pGraphics, const CFX_Matrix *pMatrix );
diff --git a/xfa/src/fxfa/src/app/xfa_checksum.h b/xfa/src/fxfa/src/app/xfa_checksum.h
index 4ffe670979..62e439fe1b 100644
--- a/xfa/src/fxfa/src/app/xfa_checksum.h
+++ b/xfa/src/fxfa/src/app/xfa_checksum.h
@@ -40,7 +40,7 @@ class CXFA_ChecksumContext : public IXFA_ChecksumContext
{
public:
CXFA_ChecksumContext();
- ~CXFA_ChecksumContext();
+ virtual ~CXFA_ChecksumContext();
virtual void Release()
{
delete this;
diff --git a/xfa/src/fxfa/src/app/xfa_ffdocview.h b/xfa/src/fxfa/src/app/xfa_ffdocview.h
index 557a39f3f6..6037716d8c 100644
--- a/xfa/src/fxfa/src/app/xfa_ffdocview.h
+++ b/xfa/src/fxfa/src/app/xfa_ffdocview.h
@@ -121,7 +121,7 @@ class CXFA_FFDocWidgetIterator : public IXFA_WidgetIterator
{
public:
CXFA_FFDocWidgetIterator(CXFA_FFDocView* pDocView, CXFA_Node* pTravelRoot);
- ~CXFA_FFDocWidgetIterator();
+ virtual ~CXFA_FFDocWidgetIterator();
virtual void Release()
{
@@ -144,7 +144,7 @@ class CXFA_WidgetAccIterator : public IXFA_WidgetAccIterator
{
public:
CXFA_WidgetAccIterator(CXFA_FFDocView* pDocView, CXFA_Node* pTravelRoot);
- ~CXFA_WidgetAccIterator();
+ virtual ~CXFA_WidgetAccIterator();
virtual void Release()
{
delete this;
diff --git a/xfa/src/fxfa/src/app/xfa_fwladapter.h b/xfa/src/fxfa/src/app/xfa_fwladapter.h
index 62975ff0da..8c472d46db 100644
--- a/xfa/src/fxfa/src/app/xfa_fwladapter.h
+++ b/xfa/src/fxfa/src/app/xfa_fwladapter.h
@@ -15,6 +15,7 @@ public:
class IXFA_FWLEventHandler
{
public:
+ virtual ~IXFA_FWLEventHandler() {}
virtual FX_BOOL GetPopupPos(IFWL_Widget *pWidget, FX_FLOAT fMinPopup, FX_FLOAT fMaxPopup,
const CFX_RectF &rtAnchor, CFX_RectF& rtPopup)
{
diff --git a/xfa/src/fxfa/src/app/xfa_textlayout.h b/xfa/src/fxfa/src/app/xfa_textlayout.h
index bb8b4b528d..2e01066680 100644
--- a/xfa/src/fxfa/src/app/xfa_textlayout.h
+++ b/xfa/src/fxfa/src/app/xfa_textlayout.h
@@ -11,6 +11,7 @@ class CXFA_TextTabstopsContext;
class IXFA_TextProvider
{
public:
+ virtual ~IXFA_TextProvider() {}
virtual CXFA_Node* GetTextNode(FX_BOOL &bRichText) = 0;
virtual CXFA_Para GetParaNode() = 0;
virtual CXFA_Font GetFontNode() = 0;
diff --git a/xfa/src/fxfa/src/common/xfa_docdata.h b/xfa/src/fxfa/src/common/xfa_docdata.h
index 7befa23d7f..b709fce016 100644
--- a/xfa/src/fxfa/src/common/xfa_docdata.h
+++ b/xfa/src/fxfa/src/common/xfa_docdata.h
@@ -13,6 +13,7 @@ class IXFA_PacketExport
{
public:
static IXFA_PacketExport* Create(CXFA_Document *pDocument, XFA_DATAFORMAT eFormat = XFA_DATAFORMAT_XDP);
+ virtual ~IXFA_PacketExport() {}
virtual void Release() = 0;
virtual FX_BOOL Export(IFX_FileWrite *pWrite) = 0;
virtual FX_BOOL Export(IFX_FileWrite *pWrite, CXFA_Node *pNode, FX_DWORD dwFlag = 0, const FX_CHAR* pChecksum = NULL) = 0;
@@ -21,6 +22,7 @@ class IXFA_PacketImport
{
public:
static IXFA_PacketImport* Create(CXFA_Document *pDstDoc);
+ virtual ~IXFA_PacketImport() {}
virtual void Release() = 0;
virtual FX_BOOL ImportData(IFX_FileRead* pDataDocument) = 0;
};
diff --git a/xfa/src/fxfa/src/common/xfa_doclayout.h b/xfa/src/fxfa/src/common/xfa_doclayout.h
index d360faa62c..78c58a1edf 100644
--- a/xfa/src/fxfa/src/common/xfa_doclayout.h
+++ b/xfa/src/fxfa/src/common/xfa_doclayout.h
@@ -95,6 +95,7 @@ public:
class IXFA_DocLayout
{
public:
+ virtual ~IXFA_DocLayout() {}
virtual CXFA_Document* GetDocument() const = 0;
virtual int32_t StartLayout(FX_BOOL bForceRestart = FALSE) = 0;
virtual int32_t DoLayout(IFX_Pause *pPause = NULL) = 0;
diff --git a/xfa/src/fxfa/src/common/xfa_document.h b/xfa/src/fxfa/src/common/xfa_document.h
index 20b8e1a020..47cf98e717 100644
--- a/xfa/src/fxfa/src/common/xfa_document.h
+++ b/xfa/src/fxfa/src/common/xfa_document.h
@@ -64,6 +64,7 @@ enum XFA_LAYOUTRESULT {
class IXFA_Notify
{
public:
+ virtual ~IXFA_Notify() {}
virtual void OnPageEvent(IXFA_LayoutPage *pSender, XFA_PAGEEVENT eEvent, void* pParam = NULL) = 0;
virtual void OnNodeEvent(CXFA_Node *pSender, XFA_NODEEVENT eEvent, void* pParam = NULL, void* pParam2 = NULL, void* pParam3 = NULL, void* pParam4 = NULL) = 0;
@@ -93,6 +94,7 @@ public:
class IXFA_ObjFactory
{
public:
+ virtual ~IXFA_ObjFactory() {}
virtual CXFA_Node* CreateNode(FX_DWORD dwPacket, XFA_ELEMENT eElement) = 0;
virtual CXFA_Node* CreateNode(XFA_LPCPACKETINFO pPacket, XFA_ELEMENT eElement) = 0;
};
diff --git a/xfa/src/fxfa/src/common/xfa_localemgr.h b/xfa/src/fxfa/src/common/xfa_localemgr.h
index 14981ca418..19c7b96172 100644
--- a/xfa/src/fxfa/src/common/xfa_localemgr.h
+++ b/xfa/src/fxfa/src/common/xfa_localemgr.h
@@ -52,6 +52,8 @@ public:
static IXFA_TimeZoneProvider* Get();
static void Destroy();
+ virtual ~IXFA_TimeZoneProvider() {}
+
virtual void SetTimeZone(FX_TIMEZONE& tz) = 0;
virtual void GetTimeZone(FX_TIMEZONE& tz) = 0;
@@ -60,7 +62,7 @@ class CXFA_TimeZoneProvider : public IXFA_TimeZoneProvider
{
public:
CXFA_TimeZoneProvider();
- ~CXFA_TimeZoneProvider();
+ virtual ~CXFA_TimeZoneProvider();
virtual void SetTimeZone(FX_TIMEZONE& tz);
virtual void GetTimeZone(FX_TIMEZONE& tz);
private:
diff --git a/xfa/src/fxfa/src/common/xfa_parser.h b/xfa/src/fxfa/src/common/xfa_parser.h
index b534acd03c..08a8b3413d 100644
--- a/xfa/src/fxfa/src/common/xfa_parser.h
+++ b/xfa/src/fxfa/src/common/xfa_parser.h
@@ -11,6 +11,7 @@ class IXFA_Parser
{
public:
static IXFA_Parser* Create(IXFA_ObjFactory *pFactory, FX_BOOL bDocumentParser = FALSE);
+ virtual ~IXFA_Parser() {}
virtual void Release() = 0;
virtual int32_t StartParse(IFX_FileRead *pStream, XFA_XDPPACKET ePacketID = XFA_XDPPACKET_XDP) = 0;
virtual int32_t DoParse(IFX_Pause *pPause = NULL) = 0;
@@ -32,6 +33,7 @@ class IXFA_DataLoaderOptionsProvider
{
public:
static IXFA_DataLoaderOptionsProvider* Create(CXFA_Node* pConfigurationDOM);
+ virtual ~IXFA_DataLoaderOptionsProvider() {}
virtual void Release() = 0;
};
#endif
diff --git a/xfa/src/fxfa/src/common/xfa_script.h b/xfa/src/fxfa/src/common/xfa_script.h
index c7f18071ac..fd9cdc44ac 100644
--- a/xfa/src/fxfa/src/common/xfa_script.h
+++ b/xfa/src/fxfa/src/common/xfa_script.h
@@ -67,8 +67,8 @@ typedef struct _XFA_RESOLVENODE_RS {
return hValueArray.GetSize();
}
CXFA_ObjArray nodes;
- XFA_LPCSCRIPTATTRIBUTEINFO pScriptAttribute;
XFA_RESOVENODE_RSTYPE dwFlags;
+ XFA_LPCSCRIPTATTRIBUTEINFO pScriptAttribute;
} XFA_RESOLVENODE_RS, * XFA_LPRESOLVENODE_RS;
typedef struct _XFA_JSBUILTININFO {
uint32_t uUnicodeHash;
@@ -79,6 +79,7 @@ XFA_LPCJSBUILTININFO XFA_GetJSBuiltinByHash(uint32_t uHashCode);
class IXFA_ScriptContext
{
public:
+ virtual ~IXFA_ScriptContext() {}
virtual void Release() = 0;
virtual void Initialize(FXJSE_HRUNTIME hRuntime) = 0;