summaryrefslogtreecommitdiff
path: root/fpdfsdk/include
AgeCommit message (Collapse)Author
2016-08-03Use smart pointers for class owned pointersweili
For all classes under /fpdfsdk, use smart pointer to replace raw pointer type for class owned member variables so that memory management will be easier. BUG=pdfium:518 Review-Url: https://codereview.chromium.org/2173253002
2016-08-01Watch for destruction of CPDFSDK_widget during callbacktsepez
Speculative fix since I had trouble with the repro. BUG=632709 Review-Url: https://codereview.chromium.org/2197793002
2016-07-28Split fpdfdoc/include/fpdf_doc.h into individual classes.dsinclair
This CL splits the header file apart. The cpp files are not touched as part of this CL, they will be done as a followup. This de-duplicates the fpdf_doc.h BUG=pdfium:249 Review-Url: https://codereview.chromium.org/2183313004
2016-07-27Reland of Remove pageview from map immediatelydsinclair
This reverts commit f2cee9894b9f7cf2e50060965ad1eedd90ab55b6. This CL removes the default parameter from the CPDFSDK_Document::GetPageView |ReNew| flag and updates the code as needed. In CFFL_FormFillter::KillFocusForAnnot we flip the flag to |FALSE| as we don't want to re-create the page view if it is already removed. If we don't do this then the page view will be re-created in the map, the page associated to the page view, but then the page can be deleted out from under the pageview as it isn't owned by the page view. BUG=chromium:630654 Review-Url: https://codereview.chromium.org/2179163004
2016-07-24Use actual type instead CFX_Deletableweili
Change two places that used CFX_Deletable to use actual types. This makes the type more obvious, and avoids unnecessary casts. Review-Url: https://codereview.chromium.org/2180443002
2016-07-21Remove the use of handler array in CPDFSDK_AnnotHandlerMgrweili
Use map to store and manage the handlers directly instead of needing an extra array. Review-Url: https://codereview.chromium.org/2166953005
2016-06-15Make code compile with clang_use_chrome_plugin (part IV)weili
This change mainly contains files in fpdfsdk/ directory. This is part of the efforts to make PDFium code compilable by Clang chromium style plugins. The changes are mainly the following: -- move inline constructor/destructor of complex class/struct out-of-line; -- add constructor/destructor of complex class/struct if not explicitly defined; -- add explicit out-of-line copy constructor when needed; -- move inline virtual functions out-of-line; -- Properly mark virtual functions with 'override'; -- some minor cleanups plus removing an unused file and splitting cxfa_eventparam out from fxfa.h BUG=pdfium:469 Review-Url: https://codereview.chromium.org/2062313002
2016-06-08Change time_t conversion operator to ToTime_t() functionweili
In class CPDFSDK_DateTime, use ToTime_t() function to make the conversion more clear. Also, clean up the code in this class by removing buggy/unused code, using static_cast instead of c cast etc. Review-Url: https://codereview.chromium.org/2043873006
2016-06-08Fix GetPageIndex() for dynamic XFA documents.thestig
BUG=614211 Review-Url: https://codereview.chromium.org/2045013004
2016-06-07Get rid of NULLs in fpdfsdk/thestig
Review-Url: https://codereview.chromium.org/2031653003
2016-05-26Remove default arguments from CFX_FxgeDevice.thestig
Remove unused dithering code. Review-Url: https://codereview.chromium.org/2010813003
2016-05-26Remove checks for _WIN32_WCE.thestig
Review-Url: https://codereview.chromium.org/2011563006
2016-05-25Clean up fx_ge.h and IWYU.thestig
Review-Url: https://codereview.chromium.org/2009253003
2016-05-25Remove CFX_PrivateData from CPDF_Pagetsepez
CFX_PrivateData served two purposes here: The first was to hold an opaque pointer to the corresponding page structure in the next higher layer, of which it knows no details. Introduce an empty CPDF_Page::View class to represent this higher class, so as to get type safety while preserving layering. The second was to hold an opaque render context, which it also happened to own. Make this a CFX_Deletable to help with management. Also remove an unused inheritance from CFX_PrivateData in CPDF_Annot. Review-Url: https://codereview.chromium.org/2008553008
2016-05-23Remove dead code from CPDF_InterForm.thestig
Clean up related code. Review-Url: https://codereview.chromium.org/2003853003
2016-05-19Remove Release() from CPDFDOC_Environmenttsepez
It's never called. But looking at the comments in fpdf_formfill.h for the Release callback, it seems like it should always be called as part of the dtor. BUG= Review-Url: https://codereview.chromium.org/1995753004
2016-05-16Convert border style defines to an enum class.dsinclair
There were two defines, BBS_ and PBS_ for the various border styles in the system. They were the same, except PBS_ had an extra SHADOW define which was never used. This CL combines both of those into a single BorderStyle enum class and updates the code as needed. Also, removes ADDBIT, GETBIT unused defines. Updates barcode code to use the util.h defines instead of redefinition. fsdk_baseannot names starting with _ were cleaned up and some #defines moved to constants. Review-Url: https://codereview.chromium.org/1980973002
2016-04-28Change bool type to fix warnings.chromium/2720dsinclair
Switching the Is{SHIFT|CTRL|ALT|}KeyDown methods to bool from FX_BOOL generated cfx_systemhandler.cpp(129): warning C4800: 'FX_BOOL': forcing value to bool 'true' or 'false' (performance warning) on the win_chromium_x64_rel_ng and win8_chromium_ng bots. This CL switches back to FX_BOOL. Attempting to move everything to bool has huge ripple effects. I removed IsINSERTKeyDown as it was always false. Review-Url: https://codereview.chromium.org/1929963002
2016-04-27Remove IFX_SystemHandler.dsinclair
This CL folds IFX_SystemHandler into CFX_SystemHandler. Methods which either had no implementation, or returned a default value have been removed. Review URL: https://codereview.chromium.org/1923093002
2016-04-26Remove no-op ShowFileDialog(s).tsepez
Two different versions, one in xfa and one in fpdfsdk, both do nothing. Review URL: https://codereview.chromium.org/1915323002
2016-04-22Remove CFX_MapPtrTemplate usage in fsdk_baseform.cpptsepez
Replace one instance with std::map. Remove another instance that is never inserted into. Review URL: https://codereview.chromium.org/1919433002
2016-04-21Remove unused CFX_IntArray.tsepez
The only place its used, elements are added to it but the array is not used otherwise. Review URL: https://codereview.chromium.org/1906133002
2016-04-21Replace CFX_RectArray with std::vector<CFX_FloatRect>tsepez
Use RVO now that we use an array type compatible with it. Review URL: https://codereview.chromium.org/1906903002
2016-04-06Move remaining xfa/include/fxfa filesdsinclair
This CL moves the remaining files in xfa/include/fxfa to xfa/fxfa/include. Review URL: https://codereview.chromium.org/1864973005
2016-04-06Move remaining fpdfdoc filesdsinclair
This CL moves the last two fpdfdoc files from core/include/fpdfdoc to core/fpdfdoc/include. Review URL: https://codereview.chromium.org/1864163002
2016-04-06Move code from fpdfsdk/include to the sub directories.dsinclair
This CL moves the fxedit, jsapi and fpdfxfa code out of fpdfsdk/include to the various sub-include directories. Review URL: https://codereview.chromium.org/1863163002
2016-04-06Move core/include/fxge to core/fxge/include.dsinclair
This CL is a straight move of the fxge includes into core/fxge/include. Review URL: https://codereview.chromium.org/1868533002
2016-04-06Mark FPDF_BStr_* with DLLEXPORT / STDCALL.thestig
BUG=pdfium:464 Review URL: https://codereview.chromium.org/1859303002
2016-04-05Remove core/include/fpdfdoc/fpdf_vt.hdsinclair
This CL removes the core/include/fpdfdoc/fpdf_vt.h file. The IPDF_VariableText class was removed in favour of the only concrete class of CPD_VariableText. CPVT_Provider was moved to CPDF_VariableText::Provider and CPDF_VariableText_Iterator was moved to CPDF_VariableText::Iterator. The IFX_Edit_FontMap interface was merged into the IPVT_FontMap interface so there is only one. Other classes were split out as needed in order to keep things compiling. BUG=pdfium:468 Review URL: https://codereview.chromium.org/1860063002
2016-04-04Make IPDF_VariableText_{Provider,Iterator} inner classes.dsinclair
This CL moves the IPDF_VariableText_Provider and IPDF_VariableText_Iterator classes to be nested sub-classes of IPDF_VariableText. BUG=pdfium:455 Review URL: https://codereview.chromium.org/1855403002
2016-04-04Cleanup the FF Handler proxy methods.dsinclair
This CL removes the proxy methods from CXFA_FFWidgetHandler and CXFA_DocHandler and removes CXFA_FFMenuHandler as it was only proxy methods. The calls are made directly on the object now. Review URL: https://codereview.chromium.org/1857893002
2016-03-31Remove IXFA_* interfaces.dsinclair
This CL removes the IXFA_* interfaces which are: - Implemented once. - Not implemented by an fpdfsdk class. This requires making a few classes visible to fpdfsdk so we can have the correct instances available instead of the IXFA types. Review URL: https://codereview.chromium.org/1846993002
2016-03-31Move the fpdfsdk/include/javascript folderdsinclair
This CL splits the IJavaScript.h file into the two inner classes and puts them in the fpdfsdk/javascript folder. Review URL: https://codereview.chromium.org/1847583004
2016-03-31Split core/include/fpdfdoc/fpdf_ap.hdsinclair
This CL splits the fpdf_ap.h file apart into individual pieces and moves the implementations to their own CPP files. Review URL: https://codereview.chromium.org/1840413002
2016-03-25Remove FX_DWORD from fpdfsdk/ and testingtsepez
BUG= Review URL: https://codereview.chromium.org/1835693002
2016-03-24Re-land "Preserve m_pDynamicObjsMap until FXJS_PerIsolateData is destroyed.""Tom Sepez
Fix the destruction order. This reverts commit 129a60ec2d4d98ed953beaca629c99a52fb7e9b0. BUG=594120 TBR=jochen@chromium.org Review URL: https://codereview.chromium.org/1831723004 .
2016-03-23Move the fpdfsdk/include/pdfwindow/ headers into fpdfsdk/pdfwindow.dan sinclair
This CL moves all of the pdfwindow headers to live beside their source files. R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1823153002 .
2016-03-23Move xfa/include/fwl/{core,basewidget} to xfa/fwl/{core,basewidget}.Dan Sinclair
This CL moves and splits the FWL files from the core and basewidget directories into the non-include folders. R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1827923002 .
2016-03-23Move core/include/fxcrt to core/fxcrt/include.Dan Sinclair
This CL moves the fxcrt code into the core/fxcrt directory. The only exception was fx_bidi.h which was moved into core/fxcrt as it is not used outside of core/. R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1825953002 .
2016-03-21Remove FX_WORD in favor of uint16_t.Tom Sepez
It isn't buying us anthing, and it looks strange in a struct when other uint types are already present. R=dsinclair@chromium.org Review URL: https://codereview.chromium.org/1821043003 .
2016-03-21Move core/include/fpdfapi/fpdf_pageobj.h into core/fpdfapi.Dan Sinclair
This CL splits the file into individual classes and moves them into core/fpdfapi/fpdf_page as needed. R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1811053002 .
2016-03-21Move fpdfsdk/include/formfiller to fpdfsdk/formfiller.Dan Sinclair
This CL moves the .h files and renames the .cpp files to match. R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1809193002 .
2016-03-18Trigger page view event when re-layout is finishedjinming_wang
BUG=pdfium:401 R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1758553003 .
2016-03-15FPDF_PageDelete must delete XFA pages as well.Tom Sepez
Currently, it is only deleting the CPDF_ resources, which are wrapped by XFA objects in an XFA build. Hence, if a page is deleted and then re-inserted, we get the old contents. In print preview, chromium first inserts blank pages and then replaces them later on, causing the associated bug. BUG=594111 R=dsinclair@chromium.org Review URL: https://codereview.chromium.org/1804163002 .
2016-03-15Move xfa/include/fxjse/fxjse.h into xfa/fxjse/include.Dan Sinclair
This CL moves the fxjse.h header and splits the cfxjse_arguments.h into its own file. R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1807623002 .
2016-03-15core/include/fdpfapi cleanup Part I.Dan Sinclair
This Cl moves a bunch of the files from core/include/fpdfapi to their correct location outside the core/include tree. R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1805603002 .
2016-03-15Modify xfa code to avoid c4800 warningsWei Li
BUG=pdfium:29 R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1800793002 .
2016-03-14Move fx_crypto.h and fpdf_text.h out of core/include.Dan Sinclair
This CL moves the two files and breaks fpdf_text.h apart into individual pieces. R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1801973002 .
2016-03-11Re-enable MSVC warning 4800 for compiling with chromium_codeWei Li
Mainly change the code to avoid the warnings; in a few cases we have to use explicit casts. BUG=pdfium:29 R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1783023002 .
2016-03-10Split apart the remainder of fpdf_render_render.cpp into per-class files.Tom Sepez
R=dsinclair@chromium.org Review URL: https://codereview.chromium.org/1778173002 .