Home | History | Annotate | Download | only in fwl
      1 // Copyright 2016 PDFium Authors. All rights reserved.
      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_CFWL_COMBOBOXPROXY_H_
      8 #define XFA_FWL_CFWL_COMBOBOXPROXY_H_
      9 
     10 #include <memory>
     11 
     12 #include "xfa/fwl/cfwl_formproxy.h"
     13 
     14 class CFWL_ComboBox;
     15 
     16 class CFWL_ComboBoxProxy : public CFWL_FormProxy {
     17  public:
     18   CFWL_ComboBoxProxy(CFWL_ComboBox* pCombobBox,
     19                      const CFWL_App* app,
     20                      std::unique_ptr<CFWL_WidgetProperties> properties,
     21                      CFWL_Widget* pOuter);
     22   ~CFWL_ComboBoxProxy() override;
     23 
     24   // CFWL_FormProxy
     25   void OnProcessMessage(CFWL_Message* pMessage) override;
     26   void OnDrawWidget(CXFA_Graphics* pGraphics,
     27                     const CFX_Matrix& matrix) override;
     28 
     29   void Reset() { m_bLButtonUpSelf = false; }
     30 
     31  private:
     32   void OnLButtonDown(CFWL_Message* pMsg);
     33   void OnLButtonUp(CFWL_Message* pMsg);
     34   void OnFocusChanged(CFWL_Message* pMsg, bool bSet);
     35 
     36   bool m_bLButtonDown;
     37   bool m_bLButtonUpSelf;
     38   CFWL_ComboBox* m_pComboBox;
     39 };
     40 
     41 #endif  // XFA_FWL_CFWL_COMBOBOXPROXY_H_
     42