899c44da2d277e948dd5ad6bf51cd487802a246d
[pdfium.git] / fpdfsdk / include / formfiller / FFL_ListBox.h
1 // Copyright 2014 PDFium Authors. All rights reserved.\r
2 // Use of this source code is governed by a BSD-style license that can be\r
3 // found in the LICENSE file.\r
4  \r
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com\r
6 \r
7 #ifndef _FFL_LISTBOX_H_\r
8 #define _FFL_LISTBOX_H_\r
9 \r
10 class  CBA_FontMap;\r
11 class CFFL_ListBox : public CFFL_FormFiller\r
12 {\r
13 public:\r
14         CFFL_ListBox(CPDFDoc_Environment* pApp, CPDFSDK_Annot* pWidget);\r
15         virtual ~CFFL_ListBox();\r
16 \r
17         virtual PWL_CREATEPARAM         GetCreateParam();\r
18         virtual CPWL_Wnd*                       NewPDFWindow(const PWL_CREATEPARAM& cp, CPDFSDK_PageView* pPageView);\r
19 \r
20         virtual FX_BOOL                         OnChar(CPDFSDK_Annot* pAnnot, FX_UINT nChar, FX_UINT nFlags);\r
21 \r
22         virtual FX_BOOL                         IsDataChanged(CPDFSDK_PageView* pPageView);\r
23         virtual void                            SaveData(CPDFSDK_PageView* pPageView);\r
24 \r
25         virtual void                            GetActionData(CPDFSDK_PageView* pPageView, CPDF_AAction::AActionType type,\r
26                                                                         PDFSDK_FieldAction& fa);\r
27         virtual void                            SetActionData(CPDFSDK_PageView* pPageView, CPDF_AAction::AActionType type, \r
28                                                                         const PDFSDK_FieldAction& fa);\r
29 \r
30         virtual void                            SaveState(CPDFSDK_PageView* pPageView);\r
31         virtual void                            RestoreState(CPDFSDK_PageView* pPageView);\r
32 \r
33         virtual CPWL_Wnd*                       ResetPDFWindow(CPDFSDK_PageView* pPageView, FX_BOOL bRestoreValue);\r
34         virtual void                            OnKeyStroke(FX_BOOL bKeyDown, FX_DWORD nFlag);\r
35 \r
36 private:\r
37         CBA_FontMap*                                    m_pFontMap;\r
38         CFX_MapPtrTemplate<int, void*>  m_OriginSelections;\r
39         CFX_ArrayTemplate<int>                  m_State;\r
40 };\r
41 \r
42 \r
43 #endif //_FFL_LISTBOX_H_\r
44 \r