1ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann// Copyright 2014 PDFium Authors. All rights reserved. 2ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann// Use of this source code is governed by a BSD-style license that can be 3ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann// found in the LICENSE file. 4ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann 5ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com 6ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann 7ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann#ifndef _FWL_EDIT_LIGHT_H 8ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann#define _FWL_EDIT_LIGHT_H 9ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmannclass CFWL_Widget; 10ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmannclass CFWL_WidgetProperties; 11ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmannclass CFWL_Edit; 12ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmannclass CFWL_Edit : public CFWL_Widget { 13ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann public: 14ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann static CFWL_Edit* Create(); 15ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann FWL_ERR Initialize(const CFWL_WidgetProperties* pProperties = NULL); 16ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann FWL_ERR SetText(const CFX_WideString& wsText); 17ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann int32_t GetTextLength() const; 18ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann FWL_ERR GetText(CFX_WideString& wsText, 19ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann int32_t nStart = 0, 20ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann int32_t nCount = -1) const; 21ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann FWL_ERR ClearText(); 22ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann int32_t GetCaretPos() const; 23ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann int32_t SetCaretPos(int32_t nIndex, FX_BOOL bBefore = TRUE); 24ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann FWL_ERR AddSelRange(int32_t nStart, int32_t nCount = -1); 25ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann int32_t CountSelRanges(); 26ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann int32_t GetSelRange(int32_t nIndex, int32_t& nStart); 27ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann FWL_ERR ClearSelections(); 28ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann int32_t GetLimit(); 29ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann FWL_ERR SetLimit(int32_t nLimit); 30ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann FWL_ERR SetAliasChar(FX_WCHAR wAlias); 31ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann FWL_ERR SetFormatString(const CFX_WideString& wsFormat); 32ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann FWL_ERR Insert(int32_t nStart, const FX_WCHAR* lpText, int32_t nLen); 33ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann FWL_ERR DeleteSelections(); 34ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann FWL_ERR DeleteRange(int32_t nStart, int32_t nCount = -1); 35ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann FWL_ERR ReplaceSelections(const CFX_WideStringC& wsReplace); 36ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann FWL_ERR Replace(int32_t nStart, 37ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann int32_t nLen, 38ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann const CFX_WideStringC& wsReplace); 39ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann FWL_ERR DoClipboard(int32_t iCmd); 40ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann FX_BOOL Redo(const CFX_ByteStringC& bsRecord); 41ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann FX_BOOL Undo(const CFX_ByteStringC& bsRecord); 42ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann FWL_ERR SetTabWidth(FX_FLOAT fTabWidth, FX_BOOL bEquidistant); 43ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann FWL_ERR SetNumberRange(int32_t iMin, int32_t iMax); 44ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann FWL_ERR SetBackColor(FX_DWORD dwColor); 45ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann FWL_ERR SetFont(const CFX_WideString& wsFont, FX_FLOAT fSize); 46ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann FX_BOOL CanUndo(); 47ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann FX_BOOL CanRedo(); 48ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann FX_BOOL Undo(); 49ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann FX_BOOL Redo(); 50ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann FX_BOOL Copy(CFX_WideString& wsCopy); 51ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann FX_BOOL Cut(CFX_WideString& wsCut); 52ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann FX_BOOL Paste(const CFX_WideString& wsPaste); 53ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann FX_BOOL Delete(); 54ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann void SetScrollOffset(FX_FLOAT fScrollOffset); 55ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann FX_BOOL GetSuggestWords(CFX_PointF pointf, CFX_ByteStringArray& sSuggest); 56ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann FX_BOOL ReplaceSpellCheckWord(CFX_PointF pointf, 57ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann const CFX_ByteStringC& bsReplace); 58ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann CFWL_Edit(); 59ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann virtual ~CFWL_Edit(); 60ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann}; 61ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann#endif 62