summaryrefslogtreecommitdiff
path: root/xfa/fwl/core/fwl_noteimp.h
diff options
context:
space:
mode:
authordsinclair <dsinclair@chromium.org>2016-04-28 10:51:13 -0700
committerCommit bot <commit-bot@chromium.org>2016-04-28 10:51:13 -0700
commit7322343b9322b93d97077575f95a00dcca3f0451 (patch)
tree36337e0a2aff2147a9067477f982496129f0f7a1 /xfa/fwl/core/fwl_noteimp.h
parente6ebf7af7ea94d48091be300cec84b499d3b8ae0 (diff)
downloadpdfium-7322343b9322b93d97077575f95a00dcca3f0451.tar.xz
More FWL interface cleanup.
This CL merges the IFWL_Target class into IFWL_Widget and IFWL_Thread into IFWL_App. The IFWL_WidgetMgrDelegate, IFWL_NoteDriver and IFWL_NotThread are removed in favour of their concrete classes. Review-Url: https://codereview.chromium.org/1921853006
Diffstat (limited to 'xfa/fwl/core/fwl_noteimp.h')
-rw-r--r--xfa/fwl/core/fwl_noteimp.h54
1 files changed, 31 insertions, 23 deletions
diff --git a/xfa/fwl/core/fwl_noteimp.h b/xfa/fwl/core/fwl_noteimp.h
index f51f09cf00..8607a334f1 100644
--- a/xfa/fwl/core/fwl_noteimp.h
+++ b/xfa/fwl/core/fwl_noteimp.h
@@ -7,10 +7,20 @@
#ifndef XFA_FWL_CORE_FWL_NOTEIMP_H_
#define XFA_FWL_CORE_FWL_NOTEIMP_H_
-#include "xfa/fwl/core/ifwl_notedriver.h"
-#include "xfa/fwl/core/ifwl_noteloop.h"
+#include "xfa/fwl/core/cfwl_event.h"
+#include "xfa/fwl/core/cfwl_message.h"
+#include "xfa/fwl/core/fwl_error.h"
+#include "xfa/fwl/core/ifwl_widget.h"
#include "xfa/fxgraphics/include/cfx_graphics.h"
+#define FWL_KEYFLAG_Ctrl (1 << 0)
+#define FWL_KEYFLAG_Alt (1 << 1)
+#define FWL_KEYFLAG_Shift (1 << 2)
+#define FWL_KEYFLAG_Command (1 << 3)
+#define FWL_KEYFLAG_LButton (1 << 4)
+#define FWL_KEYFLAG_RButton (1 << 5)
+#define FWL_KEYFLAG_MButton (1 << 6)
+
class CFWL_CoreToolTipDP;
class CFWL_MsgActivate;
class CFWL_MsgDeactivate;
@@ -27,14 +37,12 @@ class CFWL_ToolTipImp;
class CFWL_WidgetImp;
class IFWL_ToolTipTarget;
-class CFWL_NoteLoop : public IFWL_NoteLoop {
+class CFWL_NoteLoop {
public:
CFWL_NoteLoop(CFWL_WidgetImp* pForm = nullptr);
- ~CFWL_NoteLoop() override {}
-
- // IFWL_NoteLoop:
- FWL_ERR Idle(int32_t count) override;
+ ~CFWL_NoteLoop() {}
+ FWL_ERR Idle(int32_t count);
CFWL_WidgetImp* GetForm();
FX_BOOL ContinueModal();
FWL_ERR EndModalLoop();
@@ -47,25 +55,24 @@ class CFWL_NoteLoop : public IFWL_NoteLoop {
FX_BOOL m_bContinueModal;
};
-class CFWL_NoteDriver : public IFWL_NoteDriver {
+class CFWL_NoteDriver {
public:
CFWL_NoteDriver();
- ~CFWL_NoteDriver() override;
+ ~CFWL_NoteDriver();
- // IFWL_NoteDriver:
- FX_BOOL SendEvent(CFWL_Event* pNote) override;
+ FX_BOOL SendEvent(CFWL_Event* pNote);
FWL_ERR RegisterEventTarget(IFWL_Widget* pListener,
IFWL_Widget* pEventSource = nullptr,
- uint32_t dwFilter = FWL_EVENT_ALL_MASK) override;
- FWL_ERR UnregisterEventTarget(IFWL_Widget* pListener) override;
- void ClearEventTargets(FX_BOOL bRemoveAll) override;
- IFWL_Thread* GetOwnerThread() const override;
- FWL_ERR PushNoteLoop(IFWL_NoteLoop* pNoteLoop) override;
- IFWL_NoteLoop* PopNoteLoop() override;
- IFWL_Widget* GetFocus() override;
- FX_BOOL SetFocus(IFWL_Widget* pFocus, FX_BOOL bNotify = FALSE) override;
- void SetGrab(IFWL_Widget* pGrab, FX_BOOL bSet) override;
- FWL_ERR Run() override;
+ uint32_t dwFilter = FWL_EVENT_ALL_MASK);
+ FWL_ERR UnregisterEventTarget(IFWL_Widget* pListener);
+ void ClearEventTargets(FX_BOOL bRemoveAll);
+ IFWL_App* GetOwnerApp() const;
+ FWL_ERR PushNoteLoop(CFWL_NoteLoop* pNoteLoop);
+ CFWL_NoteLoop* PopNoteLoop();
+ IFWL_Widget* GetFocus();
+ FX_BOOL SetFocus(IFWL_Widget* pFocus, FX_BOOL bNotify = FALSE);
+ void SetGrab(IFWL_Widget* pGrab, FX_BOOL bSet);
+ FWL_ERR Run();
IFWL_Widget* GetHover();
void SetHover(IFWL_Widget* pHover);
@@ -96,9 +103,10 @@ class CFWL_NoteDriver : public IFWL_NoteDriver {
FX_BOOL IsValidMessage(CFWL_Message* pMessage);
IFWL_Widget* GetMessageForm(IFWL_Widget* pDstTarget);
void ClearInvalidEventTargets(FX_BOOL bRemoveAll);
- CFX_ArrayTemplate<CFWL_TargetImp*> m_forms;
+
+ CFX_ArrayTemplate<CFWL_WidgetImp*> m_forms;
CFX_ArrayTemplate<CFWL_Message*> m_noteQueue;
- CFX_ArrayTemplate<IFWL_NoteLoop*> m_noteLoopQueue;
+ CFX_ArrayTemplate<CFWL_NoteLoop*> m_noteLoopQueue;
CFX_MapPtrToPtr m_eventTargets;
int32_t m_sendEventCalled;
IFWL_Widget* m_pHover;