1 // Copyright 2016 The PDFium Authors 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_FWL_IFWL_WIDGETDELEGATE_H_ 8 #define XFA_FWL_IFWL_WIDGETDELEGATE_H_ 9 10 #include "v8/include/cppgc/garbage-collected.h" 11 12 class CFGAS_GEGraphics; 13 class CFX_Matrix; 14 15 namespace pdfium { 16 17 class CFWL_Event; 18 class CFWL_Message; 19 20 class IFWL_WidgetDelegate : public cppgc::GarbageCollectedMixin { 21 public: 22 virtual ~IFWL_WidgetDelegate() = default; 23 24 virtual void OnProcessMessage(CFWL_Message* pMessage) = 0; 25 virtual void OnProcessEvent(CFWL_Event* pEvent) = 0; 26 virtual void OnDrawWidget(CFGAS_GEGraphics* pGraphics, 27 const CFX_Matrix& matrix) = 0; 28 }; 29 30 } // namespace pdfium 31 32 // TODO(crbug.com/42271761): Remove. 33 using pdfium::IFWL_WidgetDelegate; 34 35 #endif // XFA_FWL_IFWL_WIDGETDELEGATE_H_ 36