| OLD | NEW |
| 1 // Copyright 2014 PDFium Authors. All rights reserved. | 1 // Copyright 2014 PDFium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com | 5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com |
| 6 | 6 |
| 7 #ifndef FPDFSDK_PDFWINDOW_PWL_WND_H_ | 7 #ifndef FPDFSDK_PDFWINDOW_PWL_WND_H_ |
| 8 #define FPDFSDK_PDFWINDOW_PWL_WND_H_ | 8 #define FPDFSDK_PDFWINDOW_PWL_WND_H_ |
| 9 | 9 |
| 10 #include <vector> | 10 #include <vector> |
| 11 | 11 |
| 12 #include "core/fpdfdoc/include/fpdf_doc.h" | 12 #include "core/fpdfdoc/include/fpdf_doc.h" |
| 13 #include "core/fxcrt/include/fx_basic.h" | 13 #include "core/fxcrt/include/fx_basic.h" |
| 14 #include "fpdfsdk/include/fx_systemhandler.h" | 14 #include "fpdfsdk/include/fx_systemhandler.h" |
| 15 | 15 |
| 16 class CPWL_MsgControl; | 16 class CPWL_MsgControl; |
| 17 class CPWL_ScrollBar; | 17 class CPWL_ScrollBar; |
| 18 class CPWL_Timer; | 18 class CPWL_Timer; |
| 19 class CPWL_TimerHandler; | 19 class CPWL_TimerHandler; |
| 20 class CPWL_Wnd; | 20 class CPWL_Wnd; |
| 21 class IPVT_FontMap; | 21 class IPVT_FontMap; |
| 22 class IFX_SystemHandler; | 22 class IFX_SystemHandler; |
| 23 class IPWL_Provider; | 23 class IPWL_Provider; |
| 24 class IPWL_SpellCheck; | |
| 25 | 24 |
| 26 // window styles | 25 // window styles |
| 27 #define PWS_CHILD 0x80000000L | 26 #define PWS_CHILD 0x80000000L |
| 28 #define PWS_BORDER 0x40000000L | 27 #define PWS_BORDER 0x40000000L |
| 29 #define PWS_BACKGROUND 0x20000000L | 28 #define PWS_BACKGROUND 0x20000000L |
| 30 #define PWS_HSCROLL 0x10000000L | 29 #define PWS_HSCROLL 0x10000000L |
| 31 #define PWS_VSCROLL 0x08000000L | 30 #define PWS_VSCROLL 0x08000000L |
| 32 #define PWS_VISIBLE 0x04000000L | 31 #define PWS_VISIBLE 0x04000000L |
| 33 #define PWS_DISABLE 0x02000000L | 32 #define PWS_DISABLE 0x02000000L |
| 34 #define PWS_READONLY 0x01000000L | 33 #define PWS_READONLY 0x01000000L |
| (...skipping 23 matching lines...) Expand all Loading... |
| 58 #define PLBS_MULTIPLESEL 0x0001L | 57 #define PLBS_MULTIPLESEL 0x0001L |
| 59 #define PLBS_HOVERSEL 0x0008L | 58 #define PLBS_HOVERSEL 0x0008L |
| 60 | 59 |
| 61 // combobox styles | 60 // combobox styles |
| 62 #define PCBS_ALLOWCUSTOMTEXT 0x0001L | 61 #define PCBS_ALLOWCUSTOMTEXT 0x0001L |
| 63 | 62 |
| 64 // richedit styles | 63 // richedit styles |
| 65 #define PRES_MULTILINE 0x0001L | 64 #define PRES_MULTILINE 0x0001L |
| 66 #define PRES_AUTORETURN 0x0002L | 65 #define PRES_AUTORETURN 0x0002L |
| 67 #define PRES_AUTOSCROLL 0x0004L | 66 #define PRES_AUTOSCROLL 0x0004L |
| 68 #define PRES_SPELLCHECK 0x0008L | |
| 69 #define PRES_UNDO 0x0100L | 67 #define PRES_UNDO 0x0100L |
| 70 #define PRES_MULTIPAGES 0x0200L | 68 #define PRES_MULTIPAGES 0x0200L |
| 71 #define PRES_TEXTOVERFLOW 0x0400L | 69 #define PRES_TEXTOVERFLOW 0x0400L |
| 72 | 70 |
| 73 // border style | 71 // border style |
| 74 #define PBS_SOLID 0 | 72 #define PBS_SOLID 0 |
| 75 #define PBS_DASH 1 | 73 #define PBS_DASH 1 |
| 76 #define PBS_BEVELED 2 | 74 #define PBS_BEVELED 2 |
| 77 #define PBS_INSET 3 | 75 #define PBS_INSET 3 |
| 78 #define PBS_UNDERLINED 4 | 76 #define PBS_UNDERLINED 4 |
| (...skipping 82 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 161 #define PWL_DEFAULT_TEXTCOLOR CPWL_Color(COLORTYPE_RGB, 0, 0, 0) | 159 #define PWL_DEFAULT_TEXTCOLOR CPWL_Color(COLORTYPE_RGB, 0, 0, 0) |
| 162 #define PWL_DEFAULT_FONTSIZE 9.0f | 160 #define PWL_DEFAULT_FONTSIZE 9.0f |
| 163 #define PWL_DEFAULT_BLACKCOLOR CPWL_Color(COLORTYPE_GRAY, 0) | 161 #define PWL_DEFAULT_BLACKCOLOR CPWL_Color(COLORTYPE_GRAY, 0) |
| 164 #define PWL_DEFAULT_WHITECOLOR CPWL_Color(COLORTYPE_GRAY, 1) | 162 #define PWL_DEFAULT_WHITECOLOR CPWL_Color(COLORTYPE_GRAY, 1) |
| 165 #define PWL_DEFAULT_HEAVYGRAYCOLOR CPWL_Color(COLORTYPE_GRAY, 0.50) | 163 #define PWL_DEFAULT_HEAVYGRAYCOLOR CPWL_Color(COLORTYPE_GRAY, 0.50) |
| 166 #define PWL_DEFAULT_LIGHTGRAYCOLOR CPWL_Color(COLORTYPE_GRAY, 0.75) | 164 #define PWL_DEFAULT_LIGHTGRAYCOLOR CPWL_Color(COLORTYPE_GRAY, 0.75) |
| 167 #define PWL_TRIANGLE_HALFLEN 2.0f | 165 #define PWL_TRIANGLE_HALFLEN 2.0f |
| 168 #define PWL_CBBUTTON_TRIANGLE_HALFLEN 3.0f | 166 #define PWL_CBBUTTON_TRIANGLE_HALFLEN 3.0f |
| 169 #define PWL_INVALIDATE_INFLATE 2 | 167 #define PWL_INVALIDATE_INFLATE 2 |
| 170 | 168 |
| 171 class IPWL_SpellCheck { | |
| 172 public: | |
| 173 virtual ~IPWL_SpellCheck() {} | |
| 174 virtual FX_BOOL CheckWord(const FX_CHAR* sWord) = 0; | |
| 175 virtual void SuggestWords(const FX_CHAR* sWord, | |
| 176 std::vector<CFX_ByteString>& sSuggest) = 0; | |
| 177 }; | |
| 178 | |
| 179 class IPWL_Provider { | 169 class IPWL_Provider { |
| 180 public: | 170 public: |
| 181 virtual ~IPWL_Provider() {} | 171 virtual ~IPWL_Provider() {} |
| 182 | 172 |
| 183 // get a matrix which map user space to CWnd client space | 173 // get a matrix which map user space to CWnd client space |
| 184 virtual CFX_Matrix GetWindowMatrix(void* pAttachedData) = 0; | 174 virtual CFX_Matrix GetWindowMatrix(void* pAttachedData) = 0; |
| 185 | 175 |
| 186 /* | 176 /* |
| 187 0 L"&Undo\tCtrl+Z" | 177 0 L"&Undo\tCtrl+Z" |
| 188 1 L"&Redo\tCtrl+Shift+Z" | 178 1 L"&Redo\tCtrl+Shift+Z" |
| (...skipping 17 matching lines...) Expand all Loading... |
| 206 public: | 196 public: |
| 207 PWL_CREATEPARAM() | 197 PWL_CREATEPARAM() |
| 208 : rcRectWnd(0, 0, 0, 0), | 198 : rcRectWnd(0, 0, 0, 0), |
| 209 pSystemHandler(NULL), | 199 pSystemHandler(NULL), |
| 210 pFontMap(NULL), | 200 pFontMap(NULL), |
| 211 pProvider(NULL), | 201 pProvider(NULL), |
| 212 pFocusHandler(NULL), | 202 pFocusHandler(NULL), |
| 213 dwFlags(0), | 203 dwFlags(0), |
| 214 sBackgroundColor(), | 204 sBackgroundColor(), |
| 215 hAttachedWnd(NULL), | 205 hAttachedWnd(NULL), |
| 216 pSpellCheck(NULL), | |
| 217 nBorderStyle(PBS_SOLID), | 206 nBorderStyle(PBS_SOLID), |
| 218 dwBorderWidth(1), | 207 dwBorderWidth(1), |
| 219 sBorderColor(), | 208 sBorderColor(), |
| 220 sTextColor(), | 209 sTextColor(), |
| 221 sTextStrokeColor(), | 210 sTextStrokeColor(), |
| 222 nTransparency(255), | 211 nTransparency(255), |
| 223 fFontSize(PWL_DEFAULT_FONTSIZE), | 212 fFontSize(PWL_DEFAULT_FONTSIZE), |
| 224 sDash(3, 0, 0), | 213 sDash(3, 0, 0), |
| 225 pAttachedData(NULL), | 214 pAttachedData(NULL), |
| 226 pParentWnd(NULL), | 215 pParentWnd(NULL), |
| 227 pMsgControl(NULL), | 216 pMsgControl(NULL), |
| 228 eCursorType(FXCT_ARROW), | 217 eCursorType(FXCT_ARROW), |
| 229 mtChild(1, 0, 0, 1, 0, 0) {} | 218 mtChild(1, 0, 0, 1, 0, 0) {} |
| 230 | 219 |
| 231 CFX_FloatRect rcRectWnd; // required | 220 CFX_FloatRect rcRectWnd; // required |
| 232 IFX_SystemHandler* pSystemHandler; // required | 221 IFX_SystemHandler* pSystemHandler; // required |
| 233 IPVT_FontMap* pFontMap; // required for text window | 222 IPVT_FontMap* pFontMap; // required for text window |
| 234 IPWL_Provider* pProvider; // required for self coordinate | 223 IPWL_Provider* pProvider; // required for self coordinate |
| 235 IPWL_FocusHandler* pFocusHandler; // optional | 224 IPWL_FocusHandler* pFocusHandler; // optional |
| 236 uint32_t dwFlags; // optional | 225 uint32_t dwFlags; // optional |
| 237 CPWL_Color sBackgroundColor; // optional | 226 CPWL_Color sBackgroundColor; // optional |
| 238 FX_HWND hAttachedWnd; // required for no-reader framework | 227 FX_HWND hAttachedWnd; // required for no-reader framework |
| 239 IPWL_SpellCheck* pSpellCheck; // required for spellchecking | |
| 240 int32_t nBorderStyle; // optional | 228 int32_t nBorderStyle; // optional |
| 241 int32_t dwBorderWidth; // optional | 229 int32_t dwBorderWidth; // optional |
| 242 CPWL_Color sBorderColor; // optional | 230 CPWL_Color sBorderColor; // optional |
| 243 CPWL_Color sTextColor; // optional | 231 CPWL_Color sTextColor; // optional |
| 244 CPWL_Color sTextStrokeColor; // optional | 232 CPWL_Color sTextStrokeColor; // optional |
| 245 int32_t nTransparency; // optional | 233 int32_t nTransparency; // optional |
| 246 FX_FLOAT fFontSize; // optional | 234 FX_FLOAT fFontSize; // optional |
| 247 CPWL_Dash sDash; // optional | 235 CPWL_Dash sDash; // optional |
| 248 void* pAttachedData; // optional | 236 void* pAttachedData; // optional |
| 249 CPWL_Wnd* pParentWnd; // ignore | 237 CPWL_Wnd* pParentWnd; // ignore |
| (...skipping 213 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 463 CFX_FloatRect m_rcWindow; | 451 CFX_FloatRect m_rcWindow; |
| 464 CFX_FloatRect m_rcClip; | 452 CFX_FloatRect m_rcClip; |
| 465 | 453 |
| 466 FX_BOOL m_bCreated; | 454 FX_BOOL m_bCreated; |
| 467 FX_BOOL m_bVisible; | 455 FX_BOOL m_bVisible; |
| 468 FX_BOOL m_bNotifying; | 456 FX_BOOL m_bNotifying; |
| 469 FX_BOOL m_bEnabled; | 457 FX_BOOL m_bEnabled; |
| 470 }; | 458 }; |
| 471 | 459 |
| 472 #endif // FPDFSDK_PDFWINDOW_PWL_WND_H_ | 460 #endif // FPDFSDK_PDFWINDOW_PWL_WND_H_ |
| OLD | NEW |