From 398a43d83174d75366da57726ff81f199f04e24c Mon Sep 17 00:00:00 2001 From: Dan Sinclair Date: Wed, 23 Mar 2016 15:51:01 -0400 Subject: Move xfa/include/fwl/{core,basewidget} to xfa/fwl/{core,basewidget}. 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 . --- BUILD.gn | 83 ++- fpdfsdk/include/fpdfxfa/DEPS | 3 + fpdfsdk/include/fpdfxfa/fpdfxfa_util.h | 2 +- xfa.gyp | 83 ++- xfa/fde/css/#fde_cssstyleselector.h# | 901 ------------------------ xfa/fwl/basewidget/fwl_barcodeimp.cpp | 3 +- xfa/fwl/basewidget/fwl_barcodeimp.h | 6 +- xfa/fwl/basewidget/fwl_caretimp.cpp | 5 +- xfa/fwl/basewidget/fwl_caretimp.h | 2 +- xfa/fwl/basewidget/fwl_checkboximp.cpp | 7 +- xfa/fwl/basewidget/fwl_checkboximp.h | 3 +- xfa/fwl/basewidget/fwl_comboboximp.cpp | 7 +- xfa/fwl/basewidget/fwl_datetimepickerimp.cpp | 5 +- xfa/fwl/basewidget/fwl_datetimepickerimp.h | 9 +- xfa/fwl/basewidget/fwl_editimp.cpp | 9 +- xfa/fwl/basewidget/fwl_editimp.h | 6 +- xfa/fwl/basewidget/fwl_listboximp.cpp | 6 +- xfa/fwl/basewidget/fwl_listboximp.h | 11 +- xfa/fwl/basewidget/fwl_monthcalendarimp.cpp | 7 +- xfa/fwl/basewidget/fwl_monthcalendarimp.h | 3 +- xfa/fwl/basewidget/fwl_pushbuttonimp.cpp | 6 +- xfa/fwl/basewidget/fwl_pushbuttonimp.h | 4 +- xfa/fwl/basewidget/fwl_scrollbarimp.cpp | 7 +- xfa/fwl/basewidget/fwl_scrollbarimp.h | 2 +- xfa/fwl/basewidget/fwl_spinbuttonimp.cpp | 10 +- xfa/fwl/basewidget/fwl_spinbuttonimp.h | 6 +- xfa/fwl/basewidget/fwl_tooltipctrlimp.cpp | 8 +- xfa/fwl/basewidget/fwl_tooltipctrlimp.h | 2 +- xfa/fwl/basewidget/fxmath_barcodeimp.h | 2 +- xfa/fwl/basewidget/ifwl_barcode.h | 63 ++ xfa/fwl/basewidget/ifwl_caret.h | 33 + xfa/fwl/basewidget/ifwl_checkbox.h | 85 +++ xfa/fwl/basewidget/ifwl_combobox.h | 152 ++++ xfa/fwl/basewidget/ifwl_datetimepicker.h | 115 +++ xfa/fwl/basewidget/ifwl_edit.h | 178 +++++ xfa/fwl/basewidget/ifwl_listbox.h | 142 ++++ xfa/fwl/basewidget/ifwl_monthcalendar.h | 139 ++++ xfa/fwl/basewidget/ifwl_picturebox.h | 59 ++ xfa/fwl/basewidget/ifwl_pushbutton.h | 61 ++ xfa/fwl/basewidget/ifwl_scrollbar.h | 77 ++ xfa/fwl/basewidget/ifwl_spinbutton.h | 44 ++ xfa/fwl/basewidget/ifwl_tooltip.h | 49 ++ xfa/fwl/basewidget/ifx_barcode.h | 62 ++ xfa/fwl/core/cfwl_event.h | 145 ++++ xfa/fwl/core/cfwl_message.h | 159 +++++ xfa/fwl/core/cfwl_note.h | 67 ++ xfa/fwl/core/cfwl_themebackground.h | 25 + xfa/fwl/core/cfwl_themepart.h | 31 + xfa/fwl/core/cfwl_themetext.h | 23 + xfa/fwl/core/cfwl_widgetimpproperties.h | 43 ++ xfa/fwl/core/fwl_appimp.cpp | 6 +- xfa/fwl/core/fwl_contentimp.cpp | 2 +- xfa/fwl/core/fwl_error.h | 22 + xfa/fwl/core/fwl_formimp.cpp | 12 +- xfa/fwl/core/fwl_formimp.h | 6 +- xfa/fwl/core/fwl_gridimp.cpp | 2 + xfa/fwl/core/fwl_gridimp.h | 6 +- xfa/fwl/core/fwl_noteimp.cpp | 30 +- xfa/fwl/core/fwl_noteimp.h | 30 +- xfa/fwl/core/fwl_panelimp.cpp | 9 +- xfa/fwl/core/fwl_sdadapterimp.cpp | 8 +- xfa/fwl/core/fwl_sdadapterimp.h | 89 +++ xfa/fwl/core/fwl_targetimp.h | 2 +- xfa/fwl/core/fwl_threadimp.cpp | 1 + xfa/fwl/core/fwl_threadimp.h | 3 +- xfa/fwl/core/fwl_timerimp.cpp | 8 +- xfa/fwl/core/fwl_widgetdef.h | 249 +++++++ xfa/fwl/core/fwl_widgetimp.cpp | 28 +- xfa/fwl/core/fwl_widgetimp.h | 8 +- xfa/fwl/core/fwl_widgetmgrimp.cpp | 9 +- xfa/fwl/core/fwl_widgetmgrimp.h | 4 +- xfa/fwl/core/ifwl_adapternative.h | 24 + xfa/fwl/core/ifwl_adapterthreadmgr.h | 27 + xfa/fwl/core/ifwl_adapterwidgetmgr.h | 81 +++ xfa/fwl/core/ifwl_app.h | 45 ++ xfa/fwl/core/ifwl_content.h | 30 + xfa/fwl/core/ifwl_custom.h | 26 + xfa/fwl/core/ifwl_custompanel.h | 28 + xfa/fwl/core/ifwl_dataprovider.h | 22 + xfa/fwl/core/ifwl_form.h | 97 +++ xfa/fwl/core/ifwl_grid.h | 93 +++ xfa/fwl/core/ifwl_notedriver.h | 58 ++ xfa/fwl/core/ifwl_noteloop.h | 22 + xfa/fwl/core/ifwl_notethread.h | 19 + xfa/fwl/core/ifwl_panel.h | 30 + xfa/fwl/core/ifwl_proxy.h | 21 + xfa/fwl/core/ifwl_target.h | 52 ++ xfa/fwl/core/ifwl_themeprovider.h | 58 ++ xfa/fwl/core/ifwl_thread.h | 48 ++ xfa/fwl/core/ifwl_timer.h | 24 + xfa/fwl/core/ifwl_tooltiptarget.h | 37 + xfa/fwl/core/ifwl_widget.h | 69 ++ xfa/fwl/core/ifwl_widgetdelegate.h | 26 + xfa/fwl/core/ifwl_widgetmgr.h | 51 ++ xfa/fwl/core/ifwl_widgetmgrdelegate.h | 33 + xfa/fwl/core/include/ifwl_adaptertimermgr.h | 25 + xfa/fwl/lightwidget/app.cpp | 4 +- xfa/fwl/lightwidget/caret.cpp | 2 +- xfa/fwl/lightwidget/checkbox.cpp | 2 +- xfa/fwl/lightwidget/combobox.cpp | 4 +- xfa/fwl/lightwidget/datetimepicker.cpp | 7 +- xfa/fwl/lightwidget/edit.cpp | 2 +- xfa/fwl/lightwidget/scrollbar.cpp | 2 +- xfa/fwl/lightwidget/theme.cpp | 3 + xfa/fwl/lightwidget/widget.cpp | 5 +- xfa/fwl/theme/barcodetp.cpp | 6 +- xfa/fwl/theme/carettp.cpp | 5 +- xfa/fwl/theme/checkboxtp.cpp | 6 +- xfa/fwl/theme/comboboxtp.cpp | 6 +- xfa/fwl/theme/datetimepickertp.cpp | 3 +- xfa/fwl/theme/edittp.cpp | 5 +- xfa/fwl/theme/formtp.cpp | 8 +- xfa/fwl/theme/listboxtp.cpp | 5 +- xfa/fwl/theme/monthcalendartp.cpp | 7 +- xfa/fwl/theme/pictureboxtp.cpp | 6 +- xfa/fwl/theme/pushbuttontp.cpp | 6 +- xfa/fwl/theme/scrollbartp.cpp | 6 +- xfa/fwl/theme/widgettp.cpp | 6 +- xfa/fxfa/app/xfa_ffapp.cpp | 2 +- xfa/fxfa/app/xfa_ffapp.h | 6 +- xfa/fxfa/app/xfa_ffbarcode.cpp | 3 +- xfa/fxfa/app/xfa_ffcheckbutton.cpp | 4 +- xfa/fxfa/app/xfa_ffchoicelist.cpp | 5 +- xfa/fxfa/app/xfa_ffdoc.cpp | 2 +- xfa/fxfa/app/xfa_fffield.cpp | 5 +- xfa/fxfa/app/xfa_fffield.h | 4 +- xfa/fxfa/app/xfa_ffimageedit.cpp | 4 +- xfa/fxfa/app/xfa_ffpushbutton.cpp | 3 +- xfa/fxfa/app/xfa_fftext.cpp | 2 +- xfa/fxfa/app/xfa_fftextedit.cpp | 6 +- xfa/fxfa/app/xfa_fwladapter.h | 2 +- xfa/fxfa/app/xfa_fwltheme.cpp | 24 +- xfa/fxfa/app/xfa_fwltheme.h | 4 +- xfa/include/fwl/adapter/fwl_adapternative.h | 24 - xfa/include/fwl/adapter/fwl_adapterthreadmgr.h | 26 - xfa/include/fwl/adapter/fwl_adaptertimermgr.h | 25 - xfa/include/fwl/adapter/fwl_adapterwidgetmgr.h | 81 --- xfa/include/fwl/adapter/fwl_sdadapterimp.h | 89 --- xfa/include/fwl/basewidget/fwl_barcode.h | 63 -- xfa/include/fwl/basewidget/fwl_caret.h | 32 - xfa/include/fwl/basewidget/fwl_checkbox.h | 82 --- xfa/include/fwl/basewidget/fwl_combobox.h | 141 ---- xfa/include/fwl/basewidget/fwl_datetimepicker.h | 112 --- xfa/include/fwl/basewidget/fwl_edit.h | 171 ----- xfa/include/fwl/basewidget/fwl_listbox.h | 136 ---- xfa/include/fwl/basewidget/fwl_menu.h | 17 - xfa/include/fwl/basewidget/fwl_monthcalendar.h | 137 ---- xfa/include/fwl/basewidget/fwl_picturebox.h | 53 -- xfa/include/fwl/basewidget/fwl_pushbutton.h | 56 -- xfa/include/fwl/basewidget/fwl_scrollbar.h | 72 -- xfa/include/fwl/basewidget/fwl_spinbutton.h | 43 -- xfa/include/fwl/basewidget/fwl_tooltipctrl.h | 48 -- xfa/include/fwl/basewidget/fxmath_barcode.h | 62 -- xfa/include/fwl/core/fwl_app.h | 44 -- xfa/include/fwl/core/fwl_content.h | 27 - xfa/include/fwl/core/fwl_error.h | 22 - xfa/include/fwl/core/fwl_form.h | 87 --- xfa/include/fwl/core/fwl_grid.h | 89 --- xfa/include/fwl/core/fwl_note.h | 381 ---------- xfa/include/fwl/core/fwl_panel.h | 42 -- xfa/include/fwl/core/fwl_target.h | 52 -- xfa/include/fwl/core/fwl_theme.h | 88 --- xfa/include/fwl/core/fwl_thread.h | 53 -- xfa/include/fwl/core/fwl_timer.h | 24 - xfa/include/fwl/core/fwl_widget.h | 120 ---- xfa/include/fwl/core/fwl_widgetdef.h | 249 ------- xfa/include/fwl/core/fwl_widgetmgr.h | 60 -- xfa/include/fwl/lightwidget/app.h | 2 +- xfa/include/fwl/lightwidget/barcode.h | 4 +- xfa/include/fwl/lightwidget/caret.h | 3 +- xfa/include/fwl/lightwidget/checkbox.h | 2 +- xfa/include/fwl/lightwidget/combobox.h | 2 +- xfa/include/fwl/lightwidget/datetimepicker.h | 2 +- xfa/include/fwl/lightwidget/listbox.h | 6 +- xfa/include/fwl/lightwidget/picturebox.h | 4 +- xfa/include/fwl/lightwidget/pushbutton.h | 2 +- xfa/include/fwl/lightwidget/theme.h | 6 +- xfa/include/fwl/lightwidget/tooltipctrl.h | 2 +- xfa/include/fwl/lightwidget/widget.h | 4 +- xfa/include/fwl/theme/widgettp.h | 8 +- 180 files changed, 3601 insertions(+), 3976 deletions(-) create mode 100644 fpdfsdk/include/fpdfxfa/DEPS delete mode 100644 xfa/fde/css/#fde_cssstyleselector.h# create mode 100644 xfa/fwl/basewidget/ifwl_barcode.h create mode 100644 xfa/fwl/basewidget/ifwl_caret.h create mode 100644 xfa/fwl/basewidget/ifwl_checkbox.h create mode 100644 xfa/fwl/basewidget/ifwl_combobox.h create mode 100644 xfa/fwl/basewidget/ifwl_datetimepicker.h create mode 100644 xfa/fwl/basewidget/ifwl_edit.h create mode 100644 xfa/fwl/basewidget/ifwl_listbox.h create mode 100644 xfa/fwl/basewidget/ifwl_monthcalendar.h create mode 100644 xfa/fwl/basewidget/ifwl_picturebox.h create mode 100644 xfa/fwl/basewidget/ifwl_pushbutton.h create mode 100644 xfa/fwl/basewidget/ifwl_scrollbar.h create mode 100644 xfa/fwl/basewidget/ifwl_spinbutton.h create mode 100644 xfa/fwl/basewidget/ifwl_tooltip.h create mode 100644 xfa/fwl/basewidget/ifx_barcode.h create mode 100644 xfa/fwl/core/cfwl_event.h create mode 100644 xfa/fwl/core/cfwl_message.h create mode 100644 xfa/fwl/core/cfwl_note.h create mode 100644 xfa/fwl/core/cfwl_themebackground.h create mode 100644 xfa/fwl/core/cfwl_themepart.h create mode 100644 xfa/fwl/core/cfwl_themetext.h create mode 100644 xfa/fwl/core/cfwl_widgetimpproperties.h create mode 100644 xfa/fwl/core/fwl_error.h create mode 100644 xfa/fwl/core/fwl_sdadapterimp.h create mode 100644 xfa/fwl/core/fwl_widgetdef.h create mode 100644 xfa/fwl/core/ifwl_adapternative.h create mode 100644 xfa/fwl/core/ifwl_adapterthreadmgr.h create mode 100644 xfa/fwl/core/ifwl_adapterwidgetmgr.h create mode 100644 xfa/fwl/core/ifwl_app.h create mode 100644 xfa/fwl/core/ifwl_content.h create mode 100644 xfa/fwl/core/ifwl_custom.h create mode 100644 xfa/fwl/core/ifwl_custompanel.h create mode 100644 xfa/fwl/core/ifwl_dataprovider.h create mode 100644 xfa/fwl/core/ifwl_form.h create mode 100644 xfa/fwl/core/ifwl_grid.h create mode 100644 xfa/fwl/core/ifwl_notedriver.h create mode 100644 xfa/fwl/core/ifwl_noteloop.h create mode 100644 xfa/fwl/core/ifwl_notethread.h create mode 100644 xfa/fwl/core/ifwl_panel.h create mode 100644 xfa/fwl/core/ifwl_proxy.h create mode 100644 xfa/fwl/core/ifwl_target.h create mode 100644 xfa/fwl/core/ifwl_themeprovider.h create mode 100644 xfa/fwl/core/ifwl_thread.h create mode 100644 xfa/fwl/core/ifwl_timer.h create mode 100644 xfa/fwl/core/ifwl_tooltiptarget.h create mode 100644 xfa/fwl/core/ifwl_widget.h create mode 100644 xfa/fwl/core/ifwl_widgetdelegate.h create mode 100644 xfa/fwl/core/ifwl_widgetmgr.h create mode 100644 xfa/fwl/core/ifwl_widgetmgrdelegate.h create mode 100644 xfa/fwl/core/include/ifwl_adaptertimermgr.h delete mode 100644 xfa/include/fwl/adapter/fwl_adapternative.h delete mode 100644 xfa/include/fwl/adapter/fwl_adapterthreadmgr.h delete mode 100644 xfa/include/fwl/adapter/fwl_adaptertimermgr.h delete mode 100644 xfa/include/fwl/adapter/fwl_adapterwidgetmgr.h delete mode 100644 xfa/include/fwl/adapter/fwl_sdadapterimp.h delete mode 100644 xfa/include/fwl/basewidget/fwl_barcode.h delete mode 100644 xfa/include/fwl/basewidget/fwl_caret.h delete mode 100644 xfa/include/fwl/basewidget/fwl_checkbox.h delete mode 100644 xfa/include/fwl/basewidget/fwl_combobox.h delete mode 100644 xfa/include/fwl/basewidget/fwl_datetimepicker.h delete mode 100644 xfa/include/fwl/basewidget/fwl_edit.h delete mode 100644 xfa/include/fwl/basewidget/fwl_listbox.h delete mode 100644 xfa/include/fwl/basewidget/fwl_menu.h delete mode 100644 xfa/include/fwl/basewidget/fwl_monthcalendar.h delete mode 100644 xfa/include/fwl/basewidget/fwl_picturebox.h delete mode 100644 xfa/include/fwl/basewidget/fwl_pushbutton.h delete mode 100644 xfa/include/fwl/basewidget/fwl_scrollbar.h delete mode 100644 xfa/include/fwl/basewidget/fwl_spinbutton.h delete mode 100644 xfa/include/fwl/basewidget/fwl_tooltipctrl.h delete mode 100644 xfa/include/fwl/basewidget/fxmath_barcode.h delete mode 100644 xfa/include/fwl/core/fwl_app.h delete mode 100644 xfa/include/fwl/core/fwl_content.h delete mode 100644 xfa/include/fwl/core/fwl_error.h delete mode 100644 xfa/include/fwl/core/fwl_form.h delete mode 100644 xfa/include/fwl/core/fwl_grid.h delete mode 100644 xfa/include/fwl/core/fwl_note.h delete mode 100644 xfa/include/fwl/core/fwl_panel.h delete mode 100644 xfa/include/fwl/core/fwl_target.h delete mode 100644 xfa/include/fwl/core/fwl_theme.h delete mode 100644 xfa/include/fwl/core/fwl_thread.h delete mode 100644 xfa/include/fwl/core/fwl_timer.h delete mode 100644 xfa/include/fwl/core/fwl_widget.h delete mode 100644 xfa/include/fwl/core/fwl_widgetdef.h delete mode 100644 xfa/include/fwl/core/fwl_widgetmgr.h diff --git a/BUILD.gn b/BUILD.gn index 753e5a72be..862929f28f 100644 --- a/BUILD.gn +++ b/BUILD.gn @@ -981,10 +981,32 @@ if (pdf_enable_xfa) { "xfa/fwl/basewidget/fwl_tooltipctrlimp.h", "xfa/fwl/basewidget/fxmath_barcodeimp.cpp", "xfa/fwl/basewidget/fxmath_barcodeimp.h", + "xfa/fwl/basewidget/ifwl_barcode.h", + "xfa/fwl/basewidget/ifwl_caret.h", + "xfa/fwl/basewidget/ifwl_checkbox.h", + "xfa/fwl/basewidget/ifwl_combobox.h", + "xfa/fwl/basewidget/ifwl_datetimepicker.h", + "xfa/fwl/basewidget/ifwl_edit.h", + "xfa/fwl/basewidget/ifwl_listbox.h", + "xfa/fwl/basewidget/ifwl_monthcalendar.h", + "xfa/fwl/basewidget/ifwl_picturebox.h", + "xfa/fwl/basewidget/ifwl_pushbutton.h", + "xfa/fwl/basewidget/ifwl_scrollbar.h", + "xfa/fwl/basewidget/ifwl_spinbutton.h", + "xfa/fwl/basewidget/ifwl_tooltip.h", + "xfa/fwl/basewidget/ifx_barcode.h", + "xfa/fwl/core/cfwl_event.h", + "xfa/fwl/core/cfwl_message.h", + "xfa/fwl/core/cfwl_note.h", + "xfa/fwl/core/cfwl_themebackground.h", + "xfa/fwl/core/cfwl_themepart.h", + "xfa/fwl/core/cfwl_themetext.h", + "xfa/fwl/core/cfwl_widgetimpproperties.h", "xfa/fwl/core/fwl_appimp.cpp", "xfa/fwl/core/fwl_appimp.h", "xfa/fwl/core/fwl_contentimp.cpp", "xfa/fwl/core/fwl_contentimp.h", + "xfa/fwl/core/fwl_error.h", "xfa/fwl/core/fwl_formimp.cpp", "xfa/fwl/core/fwl_formimp.h", "xfa/fwl/core/fwl_gridimp.cpp", @@ -994,15 +1016,42 @@ if (pdf_enable_xfa) { "xfa/fwl/core/fwl_panelimp.cpp", "xfa/fwl/core/fwl_panelimp.h", "xfa/fwl/core/fwl_sdadapterimp.cpp", + "xfa/fwl/core/fwl_sdadapterimp.h", "xfa/fwl/core/fwl_targetimp.cpp", "xfa/fwl/core/fwl_targetimp.h", "xfa/fwl/core/fwl_threadimp.cpp", "xfa/fwl/core/fwl_threadimp.h", "xfa/fwl/core/fwl_timerimp.cpp", + "xfa/fwl/core/fwl_widgetdef.h", "xfa/fwl/core/fwl_widgetimp.cpp", "xfa/fwl/core/fwl_widgetimp.h", "xfa/fwl/core/fwl_widgetmgrimp.cpp", "xfa/fwl/core/fwl_widgetmgrimp.h", + "xfa/fwl/core/ifwl_adapternative.h", + "xfa/fwl/core/ifwl_adapterthreadmgr.h", + "xfa/fwl/core/ifwl_adapterwidgetmgr.h", + "xfa/fwl/core/ifwl_app.h", + "xfa/fwl/core/ifwl_content.h", + "xfa/fwl/core/ifwl_custom.h", + "xfa/fwl/core/ifwl_custompanel.h", + "xfa/fwl/core/ifwl_dataprovider.h", + "xfa/fwl/core/ifwl_form.h", + "xfa/fwl/core/ifwl_grid.h", + "xfa/fwl/core/ifwl_notedriver.h", + "xfa/fwl/core/ifwl_noteloop.h", + "xfa/fwl/core/ifwl_notethread.h", + "xfa/fwl/core/ifwl_panel.h", + "xfa/fwl/core/ifwl_proxy.h", + "xfa/fwl/core/ifwl_target.h", + "xfa/fwl/core/ifwl_themeprovider.h", + "xfa/fwl/core/ifwl_thread.h", + "xfa/fwl/core/ifwl_timer.h", + "xfa/fwl/core/ifwl_tooltiptarget.h", + "xfa/fwl/core/ifwl_widget.h", + "xfa/fwl/core/ifwl_widgetdelegate.h", + "xfa/fwl/core/ifwl_widgetmgr.h", + "xfa/fwl/core/ifwl_widgetmgrdelegate.h", + "xfa/fwl/core/include/ifwl_adaptertimermgr.h", "xfa/fwl/lightwidget/app.cpp", "xfa/fwl/lightwidget/barcode.cpp", "xfa/fwl/lightwidget/caret.cpp", @@ -1433,40 +1482,6 @@ if (pdf_enable_xfa) { "xfa/fxgraphics/cfx_shading.h", "xfa/fxgraphics/include/cfx_graphics.h", "xfa/fxjse/include/fxjse.h", - "xfa/include/fwl/adapter/fwl_adapternative.h", - "xfa/include/fwl/adapter/fwl_adapterthreadmgr.h", - "xfa/include/fwl/adapter/fwl_adaptertimermgr.h", - "xfa/include/fwl/adapter/fwl_adapterwidgetmgr.h", - "xfa/include/fwl/adapter/fwl_sdadapterimp.h", - "xfa/include/fwl/basewidget/fwl_barcode.h", - "xfa/include/fwl/basewidget/fwl_caret.h", - "xfa/include/fwl/basewidget/fwl_checkbox.h", - "xfa/include/fwl/basewidget/fwl_combobox.h", - "xfa/include/fwl/basewidget/fwl_datetimepicker.h", - "xfa/include/fwl/basewidget/fwl_edit.h", - "xfa/include/fwl/basewidget/fwl_listbox.h", - "xfa/include/fwl/basewidget/fwl_menu.h", - "xfa/include/fwl/basewidget/fwl_monthcalendar.h", - "xfa/include/fwl/basewidget/fwl_picturebox.h", - "xfa/include/fwl/basewidget/fwl_pushbutton.h", - "xfa/include/fwl/basewidget/fwl_scrollbar.h", - "xfa/include/fwl/basewidget/fwl_spinbutton.h", - "xfa/include/fwl/basewidget/fwl_tooltipctrl.h", - "xfa/include/fwl/basewidget/fxmath_barcode.h", - "xfa/include/fwl/core/fwl_app.h", - "xfa/include/fwl/core/fwl_content.h", - "xfa/include/fwl/core/fwl_error.h", - "xfa/include/fwl/core/fwl_form.h", - "xfa/include/fwl/core/fwl_grid.h", - "xfa/include/fwl/core/fwl_note.h", - "xfa/include/fwl/core/fwl_panel.h", - "xfa/include/fwl/core/fwl_target.h", - "xfa/include/fwl/core/fwl_theme.h", - "xfa/include/fwl/core/fwl_thread.h", - "xfa/include/fwl/core/fwl_timer.h", - "xfa/include/fwl/core/fwl_widget.h", - "xfa/include/fwl/core/fwl_widgetdef.h", - "xfa/include/fwl/core/fwl_widgetmgr.h", "xfa/include/fwl/lightwidget/app.h", "xfa/include/fwl/lightwidget/barcode.h", "xfa/include/fwl/lightwidget/caret.h", diff --git a/fpdfsdk/include/fpdfxfa/DEPS b/fpdfsdk/include/fpdfxfa/DEPS new file mode 100644 index 0000000000..f207778cb2 --- /dev/null +++ b/fpdfsdk/include/fpdfxfa/DEPS @@ -0,0 +1,3 @@ +include_rules = [ + "+xfa/fwl/core/include", +] diff --git a/fpdfsdk/include/fpdfxfa/fpdfxfa_util.h b/fpdfsdk/include/fpdfxfa/fpdfxfa_util.h index 545d910206..f4c73c65c2 100644 --- a/fpdfsdk/include/fpdfxfa/fpdfxfa_util.h +++ b/fpdfsdk/include/fpdfxfa/fpdfxfa_util.h @@ -10,7 +10,7 @@ #include #include "fpdfsdk/include/fpdfxfa/fpdfxfa_doc.h" -#include "xfa/include/fwl/adapter/fwl_adaptertimermgr.h" +#include "xfa/fwl/core/include/ifwl_adaptertimermgr.h" #define JS_STR_VIEWERTYPE_STANDARD L"Exchange" #define JS_STR_LANGUANGE L"ENU" diff --git a/xfa.gyp b/xfa.gyp index 2185d6e2ef..680a724c82 100644 --- a/xfa.gyp +++ b/xfa.gyp @@ -35,40 +35,6 @@ 'FT2_BUILD_LIBRARY', ], "sources":[ - "xfa/include/fwl/adapter/fwl_adapternative.h", - "xfa/include/fwl/adapter/fwl_adapterthreadmgr.h", - "xfa/include/fwl/adapter/fwl_adaptertimermgr.h", - "xfa/include/fwl/adapter/fwl_adapterwidgetmgr.h", - "xfa/include/fwl/adapter/fwl_sdadapterimp.h", - "xfa/include/fwl/basewidget/fwl_barcode.h", - "xfa/include/fwl/basewidget/fwl_caret.h", - "xfa/include/fwl/basewidget/fwl_checkbox.h", - "xfa/include/fwl/basewidget/fwl_combobox.h", - "xfa/include/fwl/basewidget/fwl_datetimepicker.h", - "xfa/include/fwl/basewidget/fwl_edit.h", - "xfa/include/fwl/basewidget/fwl_listbox.h", - "xfa/include/fwl/basewidget/fwl_menu.h", - "xfa/include/fwl/basewidget/fwl_monthcalendar.h", - "xfa/include/fwl/basewidget/fwl_picturebox.h", - "xfa/include/fwl/basewidget/fwl_pushbutton.h", - "xfa/include/fwl/basewidget/fwl_scrollbar.h", - "xfa/include/fwl/basewidget/fwl_spinbutton.h", - "xfa/include/fwl/basewidget/fwl_tooltipctrl.h", - "xfa/include/fwl/basewidget/fxmath_barcode.h", - "xfa/include/fwl/core/fwl_app.h", - "xfa/include/fwl/core/fwl_content.h", - "xfa/include/fwl/core/fwl_error.h", - "xfa/include/fwl/core/fwl_form.h", - "xfa/include/fwl/core/fwl_grid.h", - "xfa/include/fwl/core/fwl_note.h", - "xfa/include/fwl/core/fwl_panel.h", - "xfa/include/fwl/core/fwl_target.h", - "xfa/include/fwl/core/fwl_theme.h", - "xfa/include/fwl/core/fwl_thread.h", - "xfa/include/fwl/core/fwl_timer.h", - "xfa/include/fwl/core/fwl_widget.h", - "xfa/include/fwl/core/fwl_widgetdef.h", - "xfa/include/fwl/core/fwl_widgetmgr.h", "xfa/include/fwl/lightwidget/app.h", "xfa/include/fwl/lightwidget/barcode.h", "xfa/include/fwl/lightwidget/caret.h", @@ -220,10 +186,32 @@ "xfa/fwl/basewidget/fwl_tooltipctrlimp.h", "xfa/fwl/basewidget/fxmath_barcodeimp.cpp", "xfa/fwl/basewidget/fxmath_barcodeimp.h", + "xfa/fwl/basewidget/ifwl_barcode.h", + "xfa/fwl/basewidget/ifwl_caret.h", + "xfa/fwl/basewidget/ifwl_checkbox.h", + "xfa/fwl/basewidget/ifwl_combobox.h", + "xfa/fwl/basewidget/ifwl_datetimepicker.h", + "xfa/fwl/basewidget/ifwl_edit.h", + "xfa/fwl/basewidget/ifwl_listbox.h", + "xfa/fwl/basewidget/ifwl_monthcalendar.h", + "xfa/fwl/basewidget/ifwl_picturebox.h", + "xfa/fwl/basewidget/ifwl_pushbutton.h", + "xfa/fwl/basewidget/ifwl_scrollbar.h", + "xfa/fwl/basewidget/ifwl_spinbutton.h", + "xfa/fwl/basewidget/ifwl_tooltip.h", + "xfa/fwl/basewidget/ifx_barcode.h", + "xfa/fwl/core/cfwl_event.h", + "xfa/fwl/core/cfwl_note.h", + "xfa/fwl/core/cfwl_message.h", + "xfa/fwl/core/cfwl_themebackground.h", + "xfa/fwl/core/cfwl_themepart.h", + "xfa/fwl/core/cfwl_themetext.h", + "xfa/fwl/core/cfwl_widgetimpproperties.h", "xfa/fwl/core/fwl_appimp.cpp", "xfa/fwl/core/fwl_appimp.h", "xfa/fwl/core/fwl_contentimp.cpp", "xfa/fwl/core/fwl_contentimp.h", + "xfa/fwl/core/fwl_error.h", "xfa/fwl/core/fwl_formimp.cpp", "xfa/fwl/core/fwl_formimp.h", "xfa/fwl/core/fwl_gridimp.cpp", @@ -233,15 +221,42 @@ "xfa/fwl/core/fwl_panelimp.cpp", "xfa/fwl/core/fwl_panelimp.h", "xfa/fwl/core/fwl_sdadapterimp.cpp", + "xfa/fwl/core/fwl_sdadapterimp.h", "xfa/fwl/core/fwl_targetimp.cpp", "xfa/fwl/core/fwl_targetimp.h", "xfa/fwl/core/fwl_threadimp.cpp", "xfa/fwl/core/fwl_threadimp.h", "xfa/fwl/core/fwl_timerimp.cpp", + "xfa/fwl/core/fwl_widgetdef.h", "xfa/fwl/core/fwl_widgetimp.cpp", "xfa/fwl/core/fwl_widgetimp.h", "xfa/fwl/core/fwl_widgetmgrimp.cpp", "xfa/fwl/core/fwl_widgetmgrimp.h", + "xfa/fwl/core/ifwl_adapternative.h", + "xfa/fwl/core/ifwl_adapterthreadmgr.h", + "xfa/fwl/core/ifwl_adapterwidgetmgr.h", + "xfa/fwl/core/ifwl_app.h", + "xfa/fwl/core/ifwl_content.h", + "xfa/fwl/core/ifwl_custom.h", + "xfa/fwl/core/ifwl_custompanel.h", + "xfa/fwl/core/ifwl_dataprovider.h", + "xfa/fwl/core/ifwl_form.h", + "xfa/fwl/core/ifwl_grid.h", + "xfa/fwl/core/ifwl_notedriver.h", + "xfa/fwl/core/ifwl_noteloop.h", + "xfa/fwl/core/ifwl_notethread.h", + "xfa/fwl/core/ifwl_panel.h", + "xfa/fwl/core/ifwl_proxy.h", + "xfa/fwl/core/ifwl_target.h", + "xfa/fwl/core/ifwl_themeprovider.h", + "xfa/fwl/core/ifwl_thread.h", + "xfa/fwl/core/ifwl_timer.h", + "xfa/fwl/core/ifwl_tooltiptarget.h", + "xfa/fwl/core/ifwl_widget.h", + "xfa/fwl/core/ifwl_widgetdelegate.h", + "xfa/fwl/core/ifwl_widgetmgr.h", + "xfa/fwl/core/ifwl_widgetmgrdelegate.h", + "xfa/fwl/core/include/ifwl_adaptertimermgr.h", "xfa/fwl/lightwidget/app.cpp", "xfa/fwl/lightwidget/barcode.cpp", "xfa/fwl/lightwidget/caret.cpp", diff --git a/xfa/fde/css/#fde_cssstyleselector.h# b/xfa/fde/css/#fde_cssstyleselector.h# deleted file mode 100644 index 9078a44dd5..0000000000 --- a/xfa/fde/css/#fde_cssstyleselector.h# +++ /dev/null @@ -1,901 +0,0 @@ -// Copyright 2014 PDFium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com - -#ifndef XFA_FDE_CSS_FDE_CSSSTYLESELECTOR_H_ -#define XFA_FDE_CSS_FDE_CSSSTYLESELECTOR_H_ - -#include - -#include "core/include/fxcrt/fx_ext.h" -#include "xfa/fde/css/fde_css.h" -#include "xfa/fde/css/fde_csscache.h" -#include "xfa/fde/css/fde_cssdeclaration.h" -#include "xfa/fgas/crt/fgas_memory.h" -#include "xfa/fgas/crt/fgas_system.h" - -#define FDE_CSSUNIVERSALHASH ('*') - -class FDE_CSSRuleData : public CFX_Target { - public: - FDE_CSSRuleData(IFDE_CSSSelector* pSel, - IFDE_CSSDeclaration* pDecl, - FX_DWORD dwPos); - - IFDE_CSSSelector* pSelector; - IFDE_CSSDeclaration* pDeclaration; - FX_DWORD dwPriority; - FDE_CSSRuleData* pNext; -}; - -class CFDE_CSSRuleCollection : public CFX_Target { - public: - CFDE_CSSRuleCollection() - : m_pStaticStore(nullptr), - m_pUniversalRules(nullptr), - m_pPersudoRules(nullptr), - m_iSelectors(0) {} - ~CFDE_CSSRuleCollection() { Clear(); } - void AddRulesFrom(const CFDE_CSSStyleSheetArray& sheets, - FX_DWORD dwMediaList, - IFX_FontMgr* pFontMgr); - void Clear(); - - int32_t CountSelectors() const { return m_iSelectors; } - FDE_CSSRuleData* GetIDRuleData(FX_DWORD dwIDHash) { - void* pData; - return m_IDRules.Lookup((void*)(uintptr_t)dwIDHash, pData) - ? (FDE_CSSRuleData*)pData - : NULL; - } - FDE_CSSRuleData* GetTagRuleData(FX_DWORD dwTagHasn) { - void* pData; - return m_TagRules.Lookup((void*)(uintptr_t)dwTagHasn, pData) - ? (FDE_CSSRuleData*)pData - : NULL; - } - FDE_CSSRuleData* GetClassRuleData(FX_DWORD dwIDHash) { - void* pData; - return m_ClassRules.Lookup((void*)(uintptr_t)dwIDHash, pData) - ? (FDE_CSSRuleData*)pData - : NULL; - } - FDE_CSSRuleData* GetUniversalRuleData() { return m_pUniversalRules; } - FDE_CSSRuleData* GetPersudoRuleData() { return m_pPersudoRules; } - IFX_MEMAllocator* m_pStaticStore; - - protected: - void AddRulesFrom(IFDE_CSSStyleSheet* pStyleSheet, - IFDE_CSSRule* pRule, - FX_DWORD dwMediaList, - IFX_FontMgr* pFontMgr); - void AddRuleTo(CFX_MapPtrToPtr& map, - FX_DWORD dwKey, - IFDE_CSSSelector* pSel, - IFDE_CSSDeclaration* pDecl); - FX_BOOL AddRuleTo(FDE_CSSRuleData*& pList, FDE_CSSRuleData* pData); - FDE_CSSRuleData* NewRuleData(IFDE_CSSSelector* pSel, - IFDE_CSSDeclaration* pDecl); - CFX_MapPtrToPtr m_IDRules; - CFX_MapPtrToPtr m_TagRules; - CFX_MapPtrToPtr m_ClassRules; - FDE_CSSRuleData* m_pUniversalRules; - FDE_CSSRuleData* m_pPersudoRules; - int32_t m_iSelectors; -}; -class CFDE_CSSAccelerator; -class CFDE_CSSComputedStyle; -class CFDE_CSSStyleSelector : public IFDE_CSSStyleSelector, public CFX_Target { - public: - CFDE_CSSStyleSelector(); - ~CFDE_CSSStyleSelector(); - virtual void Release() { delete this; } - - virtual void SetFontMgr(IFX_FontMgr* pFontMgr); - virtual void SetDefFontSize(FX_FLOAT fFontSize); - - virtual FX_BOOL SetStyleSheet(FDE_CSSSTYLESHEETGROUP eType, - IFDE_CSSStyleSheet* pSheet); - virtual FX_BOOL SetStyleSheets(FDE_CSSSTYLESHEETGROUP eType, - const CFDE_CSSStyleSheetArray* pArray); - virtual void SetStylePriority(FDE_CSSSTYLESHEETGROUP eType, - FDE_CSSSTYLESHEETPRIORITY ePriority); - virtual void UpdateStyleIndex(FX_DWORD dwMediaList); - virtual IFDE_CSSAccelerator* InitAccelerator(); - virtual IFDE_CSSComputedStyle* CreateComputedStyle( - IFDE_CSSComputedStyle* pParentStyle); - virtual int32_t MatchDeclarations( - IFDE_CSSTagProvider* pTag, - CFDE_CSSDeclarationArray& matchedDecls, - FDE_CSSPERSUDO ePersudoType = FDE_CSSPERSUDO_NONE); - virtual void ComputeStyle(IFDE_CSSTagProvider* pTag, - const IFDE_CSSDeclaration** ppDeclArray, - int32_t iDeclCount, - IFDE_CSSComputedStyle* pDestStyle); - - protected: - void Reset(); - void MatchRules(FDE_CSSTagCache* pCache, - FDE_CSSRuleData* pList, - FDE_CSSPERSUDO ePersudoType); - FX_BOOL MatchSelector(FDE_CSSTagCache* pCache, - IFDE_CSSSelector* pSel, - FDE_CSSPERSUDO ePersudoType); - void AppendInlineStyle(CFDE_CSSDeclaration* pDecl, - const FX_WCHAR* psz, - int32_t iLen); - void ApplyDeclarations(FX_BOOL bPriority, - const IFDE_CSSDeclaration** ppDeclArray, - int32_t iDeclCount, - IFDE_CSSComputedStyle* pDestStyle); - void ApplyProperty(FDE_CSSPROPERTY eProperty, - IFDE_CSSValue* pValue, - CFDE_CSSComputedStyle* pComputedStyle); - - FX_FLOAT ApplyNumber(FDE_CSSPRIMITIVETYPE eUnit, - FX_FLOAT fValue, - FX_FLOAT fPercentBase); - FX_BOOL SetLengthWithPercent(FDE_CSSLENGTH& width, - FDE_CSSPRIMITIVETYPE eType, - IFDE_CSSPrimitiveValue* pPrimitive, - FX_FLOAT fFontSize); - FX_FLOAT ToFontSize(FDE_CSSPROPERTYVALUE eValue, FX_FLOAT fCurFontSize); - FDE_CSSDISPLAY ToDisplay(FDE_CSSPROPERTYVALUE eValue); - FDE_CSSTEXTALIGN ToTextAlign(FDE_CSSPROPERTYVALUE eValue); - uint16_t ToFontWeight(FDE_CSSPROPERTYVALUE eValue); - FDE_CSSFONTSTYLE ToFontStyle(FDE_CSSPROPERTYVALUE eValue); - FDE_CSSBORDERSTYLE ToBorderStyle(FDE_CSSPROPERTYVALUE eValue); - FDE_CSSVERTICALALIGN ToVerticalAlign(FDE_CSSPROPERTYVALUE eValue); - FDE_CSSLISTSTYLETYPE ToListStyleType(FDE_CSSPROPERTYVALUE eValue); - FDE_CSSLISTSTYLEPOSITION ToListStylePosition(FDE_CSSPROPERTYVALUE eValue); - FDE_CSSVISIBILITY ToVisibility(FDE_CSSPROPERTYVALUE eValue); - FDE_CSSWHITESPACE ToWhiteSpace(FDE_CSSPROPERTYVALUE eValue); - FX_DWORD ToTextDecoration(IFDE_CSSValueList* pList); - FDE_CSSTEXTTRANSFORM ToTextTransform(FDE_CSSPROPERTYVALUE eValue); - FDE_CSSFONTVARIANT ToFontVariant(FDE_CSSPROPERTYVALUE eValue); - FDE_CSSFLOAT ToFloat(FDE_CSSPROPERTYVALUE eValue); - FDE_CSSCLEAR ToClear(FDE_CSSPROPERTYVALUE eValue); - FDE_CSSWRITINGMODE ToWritingMode(FDE_CSSPROPERTYVALUE eValue); - FDE_CSSWORDBREAK ToWordBreak(FDE_CSSPROPERTYVALUE eValue); - FDE_CSSPAGEBREAK ToPageBreak(FDE_CSSPROPERTYVALUE eValue); - FDE_CSSOVERFLOW ToOverflow(FDE_CSSPROPERTYVALUE eValue); - FDE_CSSLINEBREAK ToLineBreak(FDE_CSSPROPERTYVALUE eValue); - FDE_CSSTEXTCOMBINE ToTextCombine(FDE_CSSPROPERTYVALUE eValue); - FX_BOOL ToTextEmphasisMark(FDE_CSSPROPERTYVALUE eValue, - FDE_CSSTEXTEMPHASISMARK& eMark); - FX_BOOL ToTextEmphasisFill(FDE_CSSPROPERTYVALUE eValue, - FDE_CSSTEXTEMPHASISFILL& eFill); - FDE_CSSCURSOR ToCursor(FDE_CSSPROPERTYVALUE eValue); - FDE_CSSPOSITION ToPosition(FDE_CSSPROPERTYVALUE eValue); - FDE_CSSCAPTIONSIDE ToCaptionSide(FDE_CSSPROPERTYVALUE eValue); - FDE_CSSBKGREPEAT ToBKGRepeat(FDE_CSSPROPERTYVALUE eValue); - FDE_CSSBKGATTACHMENT ToBKGAttachment(FDE_CSSPROPERTYVALUE eValue); - FDE_CSSRUBYALIGN ToRubyAlign(FDE_CSSPROPERTYVALUE eValue); - FDE_CSSRUBYOVERHANG ToRubyOverhang(FDE_CSSPROPERTYVALUE eValue); - FDE_CSSRUBYPOSITION ToRubyPosition(FDE_CSSPROPERTYVALUE eValue); - FDE_CSSRUBYSPAN ToRubySpan(FDE_CSSPROPERTYVALUE eValue); - IFX_FontMgr* m_pFontMgr; - FX_FLOAT m_fDefFontSize; - IFX_MEMAllocator* m_pRuleDataStore; - CFDE_CSSStyleSheetArray m_SheetGroups[FDE_CSSSTYLESHEETGROUP_MAX]; - CFDE_CSSRuleCollection m_RuleCollection[FDE_CSSSTYLESHEETGROUP_MAX]; - FDE_CSSSTYLESHEETGROUP m_ePriorities[FDE_CSSSTYLESHEETPRIORITY_MAX]; - IFX_MEMAllocator* m_pInlineStyleStore; - IFX_MEMAllocator* m_pFixedStyleStore; - CFDE_CSSAccelerator* m_pAccelerator; - std::vector m_MatchedRules; -}; - -struct FDE_CSSCOUNTERDATA { - public: - FDE_CSSCOUNTERDATA() { FXSYS_memset(this, 0, sizeof(FDE_CSSCOUNTERDATA)); } - FX_BOOL GetCounterIncrement(int32_t& iValue) { - iValue = m_iIncVal; - return m_bIncrement; - } - FX_BOOL GetCounterReset(int32_t& iValue) { - iValue = m_iResetVal; - return m_bReset; - } - - const FX_WCHAR* m_pszIdent; - FX_BOOL m_bIncrement; - FX_BOOL m_bReset; - int32_t m_iIncVal; - int32_t m_iResetVal; -}; - -class CFDE_CSSCounterStyle { - public: - CFDE_CSSCounterStyle() : m_pCounterInc(NULL), m_pCounterReset(NULL) {} - void SetCounterIncrementList(IFDE_CSSValueList* pList) { - m_pCounterInc = pList; - m_bIndexDirty = TRUE; - } - void SetCounterResetList(IFDE_CSSValueList* pList) { - m_pCounterReset = pList; - m_bIndexDirty = TRUE; - } - int32_t CountCounters() { - UpdateIndex(); - return m_arrCounterData.GetSize(); - } - FX_BOOL GetCounterIncrement(int32_t index, int32_t& iValue) { - UpdateIndex(); - return m_arrCounterData.ElementAt(index).GetCounterIncrement(iValue); - } - FX_BOOL GetCounterReset(int32_t index, int32_t& iValue) { - UpdateIndex(); - return m_arrCounterData.ElementAt(index).GetCounterReset(iValue); - } - const FX_WCHAR* GetCounterIdentifier(int32_t index) { - UpdateIndex(); - return m_arrCounterData.ElementAt(index).m_pszIdent; - } - - protected: - void UpdateIndex(); - void DoUpdateIndex(IFDE_CSSValueList* pList); - int32_t FindIndex(const FX_WCHAR* pszIdentifier); - IFDE_CSSValueList* m_pCounterInc; - IFDE_CSSValueList* m_pCounterReset; - CFX_ArrayTemplate m_arrCounterData; - FX_BOOL m_bIndexDirty; -}; -class CFDE_CSSInheritedData { - public: - void Reset() { - FXSYS_memset(this, 0, sizeof(CFDE_CSSInheritedData)); - m_LetterSpacing.Set(FDE_CSSLENGTHUNIT_Normal); - m_WordSpacing.Set(FDE_CSSLENGTHUNIT_Normal); - m_TextIndent.Set(FDE_CSSLENGTHUNIT_Point, 0); - m_fFontSize = 12.0f; - m_fLineHeight = 14.0f; - m_wFontWeight = 400; - m_dwFontColor = 0xFF000000; - m_iWidows = 2; - m_bTextEmphasisColorCurrent = TRUE; - m_iOrphans = 2; - } - const FX_WCHAR* m_pszListStyleImage; - FDE_CSSLENGTH m_LetterSpacing; - FDE_CSSLENGTH m_WordSpacing; - FDE_CSSLENGTH m_TextIndent; - IFDE_CSSValueList* m_pFontFamily; - IFDE_CSSValueList* m_pQuotes; - IFDE_CSSValueList* m_pCursorUris; - FDE_CSSCURSOR m_eCursor; - FX_FLOAT m_fFontSize; - FX_FLOAT m_fLineHeight; - FX_ARGB m_dwFontColor; - FX_ARGB m_dwTextEmphasisColor; - uint16_t m_wFontWeight; - int32_t m_iWidows; - int32_t m_iOrphans; - const FX_WCHAR* m_pszTextEmphasisCustomMark; - FX_DWORD m_eFontVariant : 1; - FX_DWORD m_eFontStyle : 1; - FX_DWORD m_bTextEmphasisColorCurrent : 1; - FX_DWORD m_eTextAligh : 2; - FX_DWORD m_eVisibility : 2; - FX_DWORD m_eWhiteSpace : 3; - FX_DWORD m_eTextTransform : 2; - FX_DWORD m_eWritingMode : 2; - FX_DWORD m_eWordBreak : 2; - FX_DWORD m_eLineBreak : 2; - FX_DWORD m_eTextEmphasisFill : 1; - FX_DWORD m_eTextEmphasisMark : 3; - FX_DWORD m_eCaptionSide : 3; - - uint16_t m_eRubyAlign : 4; - uint16_t m_eRubyOverhang : 2; - uint16_t m_eRubyPosition : 2; -}; -class CFDE_CSSNonInheritedData { - public: - void Reset() { - FXSYS_memset(this, 0, sizeof(CFDE_CSSNonInheritedData)); - m_MarginWidth = m_BorderWidth = - m_PaddingWidth.Set(FDE_CSSLENGTHUNIT_Point, 0); - m_MinBoxSize.Set(FDE_CSSLENGTHUNIT_Point, 0); - m_MaxBoxSize.Set(FDE_CSSLENGTHUNIT_None); - m_eDisplay = FDE_CSSDISPLAY_Inline; - m_fVerticalAlign = 0.0f; - m_ColumnCount.Set(FDE_CSSLENGTHUNIT_Auto); - m_ColumnGap.Set(FDE_CSSLENGTHUNIT_Normal); - m_bColumnRuleColorSame = TRUE; - m_ColumnWidth.Set(FDE_CSSLENGTHUNIT_Auto); - m_ColumnRuleWidth.Set(FDE_CSSLENGTHUNIT_Auto); - m_eTextCombine = FDE_CSSTEXTCOMBINE_None; - } - - IFDE_CSSValueList* m_pContentList; - CFDE_CSSCounterStyle* m_pCounterStyle; - FDE_CSSRECT m_MarginWidth; - FDE_CSSRECT m_BorderWidth; - FDE_CSSRECT m_PaddingWidth; - FDE_CSSSIZE m_BoxSize; - FDE_CSSSIZE m_MinBoxSize; - FDE_CSSSIZE m_MaxBoxSize; - FDE_CSSPOINT m_BKGPosition; - const FX_WCHAR* m_pszBKGImage; - FX_ARGB m_dwBKGColor; - FX_ARGB m_dwBDRLeftColor; - FX_ARGB m_dwBDRTopColor; - FX_ARGB m_dwBDRRightColor; - FX_ARGB m_dwBDRBottomColor; - IFDE_CSSValue* m_pRubySpan; - FDE_CSSLENGTH m_ColumnCount; - FDE_CSSLENGTH m_ColumnGap; - FDE_CSSLENGTH m_ColumnRuleWidth; - FDE_CSSLENGTH m_ColumnWidth; - FX_ARGB m_dwColumnRuleColor; - FDE_CSSLENGTH m_Top; - FDE_CSSLENGTH m_Bottom; - FDE_CSSLENGTH m_Left; - FDE_CSSLENGTH m_Right; - - FX_FLOAT m_fVerticalAlign; - FX_FLOAT m_fTextCombineNumber; - FX_DWORD m_eBDRLeftStyle : 4; - FX_DWORD m_eBDRTopStyle : 4; - FX_DWORD m_eBDRRightStyle : 4; - FX_DWORD m_eBDRBottomStyle : 4; - FX_DWORD m_eDisplay : 5; - FX_DWORD m_eVerticalAlign : 4; - FX_DWORD m_eListStyleType : 5; - FX_DWORD m_eColumnRuleStyle : 4; - FX_DWORD m_ePageBreakInside : 3; - FX_DWORD m_ePageBreakAfter : 3; - FX_DWORD m_ePageBreakBefore : 3; - FX_DWORD m_ePosition : 2; - FX_DWORD m_eBKGRepeat : 2; - FX_DWORD m_eFloat : 2; - FX_DWORD m_eClear : 2; - FX_DWORD m_eOverflowX : 3; - FX_DWORD m_eOverflowY : 3; - FX_DWORD m_eListStylePosition : 1; - FX_DWORD m_eBKGAttachment : 1; - FX_DWORD m_bHasMargin : 1; - FX_DWORD m_bHasBorder : 1; - FX_DWORD m_bHasPadding : 1; - FX_DWORD m_dwTextDecoration : 5; - FX_DWORD m_eTextCombine : 1; - FX_DWORD m_bColumnRuleColorSame : 1; - FX_DWORD m_bHasTextCombineNumber : 1; -}; -class CFDE_CSSComputedStyle : public IFDE_CSSComputedStyle, - public IFDE_CSSFontStyle, - public IFDE_CSSBoundaryStyle, - public IFDE_CSSPositionStyle, - public IFDE_CSSParagraphStyle, - public IFDE_CSSBackgroundStyle, - public IFDE_CSSVisualStyle, - public IFDE_CSSListStyle, - public IFDE_CSSMultiColumnStyle, - public IFDE_CSSGeneratedContentStyle, - public IFDE_CSSTableStyle, - public IFDE_CSSRubyStyle, - public CFX_Target { - public: - CFDE_CSSComputedStyle(IFX_MEMAllocator* pAlloc) - : m_dwRefCount(1), m_pAllocator(pAlloc) {} - ~CFDE_CSSComputedStyle() {} - virtual FX_DWORD AddRef() { return ++m_dwRefCount; } - virtual FX_DWORD Release() { - FX_DWORD dwRefCount = --m_dwRefCount; - if (dwRefCount == 0) { - if (m_NonInheritedData.m_pCounterStyle != NULL) { - delete m_NonInheritedData.m_pCounterStyle; - } - FXTARGET_DeleteWith(CFDE_CSSComputedStyle, m_pAllocator, this); - } - return dwRefCount; - } - - virtual void Reset() { - m_InheritedData.Reset(); - m_NonInheritedData.Reset(); - } - virtual IFDE_CSSFontStyle* GetFontStyles() const { - return (IFDE_CSSFontStyle * const) this; - } - virtual IFDE_CSSBoundaryStyle* GetBoundaryStyles() const { - return (IFDE_CSSBoundaryStyle * const) this; - } - virtual IFDE_CSSPositionStyle* GetPositionStyles() const { - return (IFDE_CSSPositionStyle * const) this; - } - virtual IFDE_CSSParagraphStyle* GetParagraphStyles() const { - return (IFDE_CSSParagraphStyle * const) this; - } - virtual IFDE_CSSBackgroundStyle* GetBackgroundStyles() const { - return (IFDE_CSSBackgroundStyle * const) this; - } - virtual IFDE_CSSVisualStyle* GetVisualStyles() const { - return (IFDE_CSSVisualStyle * const) this; - } - virtual IFDE_CSSListStyle* GetListStyles() const { - return (IFDE_CSSListStyle * const) this; - } - virtual IFDE_CSSTableStyle* GetTableStyle() const { - return (IFDE_CSSTableStyle * const) this; - } - virtual IFDE_CSSMultiColumnStyle* GetMultiColumnStyle() const { - return (IFDE_CSSMultiColumnStyle * const) this; - } - virtual IFDE_CSSGeneratedContentStyle* GetGeneratedContentStyle() const { - return (IFDE_CSSGeneratedContentStyle * const) this; - } - virtual IFDE_CSSRubyStyle* GetRubyStyle() const { - return (IFDE_CSSRubyStyle * const) this; - } - virtual FX_BOOL GetCustomStyle(const CFX_WideStringC& wsName, - CFX_WideString& wsValue) const { - for (int32_t i = m_CustomProperties.GetSize() - 2; i > -1; i -= 2) { - if (wsName == m_CustomProperties[i]) { - wsValue = m_CustomProperties[i + 1]; - return TRUE; - } - } - return FALSE; - } - virtual FDE_CSSRUBYALIGN GetRubyAlign() const { - return (FDE_CSSRUBYALIGN)m_InheritedData.m_eRubyAlign; - } - virtual FDE_CSSRUBYPOSITION GetRubyPosition() const { - return (FDE_CSSRUBYPOSITION)m_InheritedData.m_eRubyPosition; - } - virtual FDE_CSSRUBYOVERHANG GetRubyOverhang() const { - return (FDE_CSSRUBYOVERHANG)m_InheritedData.m_eRubyOverhang; - } - virtual FDE_CSSRUBYSPAN GetRubySpanType() const { - return m_NonInheritedData.m_pRubySpan == NULL ? FDE_CSSRUBYSPAN_None - : FDE_CSSRUBYSPAN_Attr; - } - virtual IFDE_CSSValue* GetRubySpanAttr() const { - return m_NonInheritedData.m_pRubySpan; - } - virtual FDE_CSSCAPTIONSIDE GetCaptionSide() const { - return (FDE_CSSCAPTIONSIDE)m_InheritedData.m_eCaptionSide; - } - virtual int32_t CountCounters() { - return (m_NonInheritedData.m_pCounterStyle == NULL) - ? 0 - : m_NonInheritedData.m_pCounterStyle->CountCounters(); - } - virtual const FX_WCHAR* GetCounterIdentifier(int32_t index) { - return m_NonInheritedData.m_pCounterStyle->GetCounterIdentifier(index); - } - virtual FX_BOOL GetCounterReset(int32_t index, int32_t& iValue) { - return m_NonInheritedData.m_pCounterStyle->GetCounterReset(index, iValue); - } - virtual FX_BOOL GetCounterIncrement(int32_t index, int32_t& iValue) { - return m_NonInheritedData.m_pCounterStyle->GetCounterIncrement(index, - iValue); - } - virtual IFDE_CSSValueList* GetContent() const { - return m_NonInheritedData.m_pContentList; - } - virtual int32_t CountQuotes() const { - return m_InheritedData.m_pQuotes == NULL - ? 0 - : m_InheritedData.m_pQuotes->CountValues(); - } - virtual const FX_WCHAR* GetQuotes(int32_t index) const { - FXSYS_assert(m_InheritedData.m_pQuotes != NULL && - m_InheritedData.m_pQuotes->CountValues() > index); - return ((IFDE_CSSPrimitiveValue*)(m_InheritedData.m_pQuotes->GetValue( - index))) - ->GetString(index); - } - virtual const FDE_CSSLENGTH& GetColumnCount() const { - return m_NonInheritedData.m_ColumnCount; - } - virtual const FDE_CSSLENGTH& GetColumnGap() const { - return m_NonInheritedData.m_ColumnGap; - } - virtual FX_ARGB GetColumnRuleColor() const { - return m_NonInheritedData.m_bColumnRuleColorSame - ? m_InheritedData.m_dwFontColor - : m_NonInheritedData.m_dwColumnRuleColor; - } - virtual FDE_CSSBORDERSTYLE GetColumnRuleStyle() const { - return (FDE_CSSBORDERSTYLE)m_NonInheritedData.m_eColumnRuleStyle; - } - virtual const FDE_CSSLENGTH& GetColumnRuleWidth() const { - return m_NonInheritedData.m_ColumnRuleWidth; - } - virtual const FDE_CSSLENGTH& GetColumnWidth() const { - return m_NonInheritedData.m_ColumnWidth; - } - virtual void SetColumnCount(const FDE_CSSLENGTH& columnCount) { - m_NonInheritedData.m_ColumnCount = columnCount; - } - virtual void SetColumnGap(const FDE_CSSLENGTH& columnGap) { - m_NonInheritedData.m_ColumnGap = columnGap; - } - virtual void SetColumnRuleColor(FX_ARGB dwColumnRuleColor) { - m_NonInheritedData.m_dwColumnRuleColor = dwColumnRuleColor, - m_NonInheritedData.m_bColumnRuleColorSame = FALSE; - } - virtual void SetColumnRuleStyle(FDE_CSSBORDERSTYLE eColumnRuleStyle) { - m_NonInheritedData.m_eColumnRuleStyle = eColumnRuleStyle; - } - virtual void SetColumnRuleWidth(const FDE_CSSLENGTH& columnRuleWidth) { - m_NonInheritedData.m_ColumnRuleWidth = columnRuleWidth; - } - virtual void SetColumnWidth(const FDE_CSSLENGTH& columnWidth) { - m_NonInheritedData.m_ColumnWidth = columnWidth; - } - virtual int32_t CountFontFamilies() const { - return m_InheritedData.m_pFontFamily - ? m_InheritedData.m_pFontFamily->CountValues() - : 0; - } - virtual const FX_WCHAR* GetFontFamily(int32_t index) const { - return ((IFDE_CSSPrimitiveValue*)(m_InheritedData.m_pFontFamily->GetValue( - index))) - ->GetString(index); - } - virtual uint16_t GetFontWeight() const { - return m_InheritedData.m_wFontWeight; - } - virtual FDE_CSSFONTVARIANT GetFontVariant() const { - return (FDE_CSSFONTVARIANT)m_InheritedData.m_eFontVariant; - } - virtual FDE_CSSFONTSTYLE GetFontStyle() const { - return (FDE_CSSFONTSTYLE)m_InheritedData.m_eFontStyle; - } - virtual FX_FLOAT GetFontSize() const { return m_InheritedData.m_fFontSize; } - virtual FX_ARGB GetColor() const { return m_InheritedData.m_dwFontColor; } - virtual void SetFontWeight(uint16_t wFontWeight) { - m_InheritedData.m_wFontWeight = wFontWeight; - } - virtual void SetFontVariant(FDE_CSSFONTVARIANT eFontVariant) { - m_InheritedData.m_eFontVariant = eFontVariant; - } - virtual void SetFontStyle(FDE_CSSFONTSTYLE eFontStyle) { - m_InheritedData.m_eFontStyle = eFontStyle; - } - virtual void SetFontSize(FX_FLOAT fFontSize) { - m_InheritedData.m_fFontSize = fFontSize; - } - virtual void SetColor(FX_ARGB dwFontColor) { - m_InheritedData.m_dwFontColor = dwFontColor; - } - virtual FX_ARGB GetBorderLeftColor() const { - return m_NonInheritedData.m_dwBDRLeftColor; - } - virtual FX_ARGB GetBorderTopColor() const { - return m_NonInheritedData.m_dwBDRTopColor; - } - virtual FX_ARGB GetBorderRightColor() const { - return m_NonInheritedData.m_dwBDRRightColor; - } - virtual FX_ARGB GetBorderBottomColor() const { - return m_NonInheritedData.m_dwBDRBottomColor; - } - - virtual FDE_CSSBORDERSTYLE GetBorderLeftStyle() const { - return (FDE_CSSBORDERSTYLE)m_NonInheritedData.m_eBDRLeftStyle; - } - virtual FDE_CSSBORDERSTYLE GetBorderTopStyle() const { - return (FDE_CSSBORDERSTYLE)m_NonInheritedData.m_eBDRTopStyle; - } - virtual FDE_CSSBORDERSTYLE GetBorderRightStyle() const { - return (FDE_CSSBORDERSTYLE)m_NonInheritedData.m_eBDRRightStyle; - } - virtual FDE_CSSBORDERSTYLE GetBorderBottomStyle() const { - return (FDE_CSSBORDERSTYLE)m_NonInheritedData.m_eBDRBottomStyle; - } - - virtual const FDE_CSSRECT* GetBorderWidth() const { - return m_NonInheritedData.m_bHasBorder ? &(m_NonInheritedData.m_BorderWidth) - : NULL; - } - virtual const FDE_CSSRECT* GetMarginWidth() const { - return m_NonInheritedData.m_bHasMargin ? &(m_NonInheritedData.m_MarginWidth) - : NULL; - } - virtual const FDE_CSSRECT* GetPaddingWidth() const { - return m_NonInheritedData.m_bHasPadding - ? &(m_NonInheritedData.m_PaddingWidth) - : NULL; - } - virtual void SetBorderLeftColor(FX_ARGB dwBorderColor) { - m_NonInheritedData.m_dwBDRLeftColor = dwBorderColor; - } - virtual void SetBorderTopColor(FX_ARGB dwBorderColor) { - m_NonInheritedData.m_dwBDRTopColor = dwBorderColor; - } - virtual void SetBorderRightColor(FX_ARGB dwBorderColor) { - m_NonInheritedData.m_dwBDRRightColor = dwBorderColor; - } - virtual void SetBorderBottomColor(FX_ARGB dwBorderColor) { - m_NonInheritedData.m_dwBDRBottomColor = dwBorderColor; - } - - virtual void SetBorderLeftStyle(FDE_CSSBORDERSTYLE eBorderStyle) { - m_NonInheritedData.m_eBDRLeftStyle = eBorderStyle; - } - virtual void SetBorderTopStyle(FDE_CSSBORDERSTYLE eBorderStyle) { - m_NonInheritedData.m_eBDRTopStyle = eBorderStyle; - } - virtual void SetBorderRightStyle(FDE_CSSBORDERSTYLE eBorderStyle) { - m_NonInheritedData.m_eBDRRightStyle = eBorderStyle; - } - virtual void SetBorderBottomStyle(FDE_CSSBORDERSTYLE eBorderStyle) { - m_NonInheritedData.m_eBDRBottomStyle = eBorderStyle; - } - - virtual void SetBorderWidth(const FDE_CSSRECT& rect) { - m_NonInheritedData.m_BorderWidth = rect; - m_NonInheritedData.m_bHasBorder = TRUE; - } - virtual void SetMarginWidth(const FDE_CSSRECT& rect) { - m_NonInheritedData.m_MarginWidth = rect; - m_NonInheritedData.m_bHasMargin = TRUE; - } - virtual void SetPaddingWidth(const FDE_CSSRECT& rect) { - m_NonInheritedData.m_PaddingWidth = rect; - m_NonInheritedData.m_bHasPadding = TRUE; - } - virtual FDE_CSSDISPLAY GetDisplay() const { - return (FDE_CSSDISPLAY)m_NonInheritedData.m_eDisplay; - } - virtual const FDE_CSSSIZE& GetBoxSize() const { - return m_NonInheritedData.m_BoxSize; - } - virtual const FDE_CSSSIZE& GetMinBoxSize() const { - return m_NonInheritedData.m_MinBoxSize; - } - virtual const FDE_CSSSIZE& GetMaxBoxSize() const { - return m_NonInheritedData.m_MaxBoxSize; - } - virtual FDE_CSSFLOAT GetFloat() const { - return (FDE_CSSFLOAT)m_NonInheritedData.m_eFloat; - } - virtual FDE_CSSCLEAR GetClear() const { - return (FDE_CSSCLEAR)m_NonInheritedData.m_eClear; - } - virtual FDE_CSSPOSITION GetPosition() const { - return (FDE_CSSPOSITION)m_NonInheritedData.m_ePosition; - } - virtual FDE_CSSLENGTH GetTop() const { return m_NonInheritedData.m_Top; } - virtual FDE_CSSLENGTH GetBottom() const { - return m_NonInheritedData.m_Bottom; - } - virtual FDE_CSSLENGTH GetLeft() const { return m_NonInheritedData.m_Left; } - virtual FDE_CSSLENGTH GetRight() const { return m_NonInheritedData.m_Right; } - - virtual void SetDisplay(FDE_CSSDISPLAY eDisplay) { - m_NonInheritedData.m_eDisplay = eDisplay; - } - virtual void SetBoxSize(const FDE_CSSSIZE& size) { - m_NonInheritedData.m_BoxSize = size; - } - virtual void SetMinBoxSize(const FDE_CSSSIZE& size) { - m_NonInheritedData.m_MinBoxSize = size; - } - virtual void SetMaxBoxSize(const FDE_CSSSIZE& size) { - m_NonInheritedData.m_MaxBoxSize = size; - } - virtual void SetFloat(FDE_CSSFLOAT eFloat) { - m_NonInheritedData.m_eFloat = eFloat; - } - virtual void SetClear(FDE_CSSCLEAR eClear) { - m_NonInheritedData.m_eClear = eClear; - } - virtual FX_FLOAT GetLineHeight() const { - return m_InheritedData.m_fLineHeight; - } - virtual FDE_CSSWHITESPACE GetWhiteSpace() const { - return (FDE_CSSWHITESPACE)m_InheritedData.m_eWhiteSpace; - } - virtual const FDE_CSSLENGTH& GetTextIndent() const { - return m_InheritedData.m_TextIndent; - } - virtual FDE_CSSTEXTALIGN GetTextAlign() const { - return (FDE_CSSTEXTALIGN)m_InheritedData.m_eTextAligh; - } - virtual FDE_CSSVERTICALALIGN GetVerticalAlign() const { - return (FDE_CSSVERTICALALIGN)m_NonInheritedData.m_eVerticalAlign; - } - virtual FX_FLOAT GetNumberVerticalAlign() const { - return m_NonInheritedData.m_fVerticalAlign; - } - virtual FDE_CSSTEXTTRANSFORM GetTextTransform() const { - return (FDE_CSSTEXTTRANSFORM)m_InheritedData.m_eTextTransform; - } - virtual FX_DWORD GetTextDecoration() const { - return m_NonInheritedData.m_dwTextDecoration; - } - virtual const FDE_CSSLENGTH& GetLetterSpacing() const { - return m_InheritedData.m_LetterSpacing; - } - virtual const FDE_CSSLENGTH& GetWordSpacing() const { - return m_InheritedData.m_WordSpacing; - } - virtual FDE_CSSWRITINGMODE GetWritingMode() const { - return (FDE_CSSWRITINGMODE)m_InheritedData.m_eWritingMode; - } - virtual FDE_CSSWORDBREAK GetWordBreak() const { - return (FDE_CSSWORDBREAK)m_InheritedData.m_eWordBreak; - } - virtual int32_t GetWidows() const { return m_InheritedData.m_iWidows; } - virtual FX_ARGB GetTextEmphasisColor() const { - return m_InheritedData.m_bTextEmphasisColorCurrent - ? m_InheritedData.m_dwFontColor - : m_InheritedData.m_dwTextEmphasisColor; - } - virtual FDE_CSSPAGEBREAK GetPageBreakBefore() const { - return (FDE_CSSPAGEBREAK)m_NonInheritedData.m_ePageBreakBefore; - } - virtual FDE_CSSPAGEBREAK GetPageBreakAfter() const { - return (FDE_CSSPAGEBREAK)m_NonInheritedData.m_ePageBreakAfter; - } - virtual FDE_CSSPAGEBREAK GetPageBreakInside() const { - return (FDE_CSSPAGEBREAK)m_NonInheritedData.m_ePageBreakInside; - } - virtual int32_t GetOrphans() const { return m_InheritedData.m_iOrphans; } - virtual FDE_CSSLINEBREAK GetLineBreak() const { - return (FDE_CSSLINEBREAK)m_InheritedData.m_eLineBreak; - } - virtual FDE_CSSTEXTEMPHASISMARK GetTextEmphasisMark() const; - virtual FDE_CSSTEXTEMPHASISFILL GetTextEmphasisFill() const { - return (FDE_CSSTEXTEMPHASISFILL)m_InheritedData.m_eTextEmphasisFill; - } - virtual const FX_WCHAR* GetTextEmphasisCustom() const { - FXSYS_assert(m_InheritedData.m_eTextEmphasisMark == - FDE_CSSTEXTEMPHASISMARK_Custom); - return m_InheritedData.m_pszTextEmphasisCustomMark; - } - virtual FDE_CSSTEXTCOMBINE GetTextCombineType() const { - return (FDE_CSSTEXTCOMBINE)m_NonInheritedData.m_eTextCombine; - } - virtual FX_BOOL HasTextCombineNumber() const { - return m_NonInheritedData.m_bHasTextCombineNumber; - } - virtual FX_FLOAT GetTextCombineNumber() const { - FXSYS_assert(m_NonInheritedData.m_eTextCombine == - FDE_CSSTEXTCOMBINE_Horizontal); - return m_NonInheritedData.m_fTextCombineNumber; - } - virtual void SetLineHeight(FX_FLOAT fLineHeight) { - m_InheritedData.m_fLineHeight = fLineHeight; - } - virtual void SetWhiteSpace(FDE_CSSWHITESPACE eWhiteSpace) { - m_InheritedData.m_eWhiteSpace = eWhiteSpace; - } - virtual void SetTextIndent(const FDE_CSSLENGTH& textIndent) { - m_InheritedData.m_TextIndent = textIndent; - } - virtual void SetTextAlign(FDE_CSSTEXTALIGN eTextAlign) { - m_InheritedData.m_eTextAligh = eTextAlign; - } - virtual void SetVerticalAlign(FDE_CSSVERTICALALIGN eVerticalAlign) { - m_NonInheritedData.m_eVerticalAlign = eVerticalAlign; - } - virtual void SetNumberVerticalAlign(FX_FLOAT fAlign) { - m_NonInheritedData.m_eVerticalAlign = FDE_CSSVERTICALALIGN_Number, - m_NonInheritedData.m_fVerticalAlign = fAlign; - } - virtual void SetTextTransform(FDE_CSSTEXTTRANSFORM eTextTransform) { - m_InheritedData.m_eTextTransform = eTextTransform; - } - virtual void SetTextDecoration(FX_DWORD dwTextDecoration) { - m_NonInheritedData.m_dwTextDecoration = dwTextDecoration; - } - virtual void SetLetterSpacing(const FDE_CSSLENGTH& letterSpacing) { - m_InheritedData.m_LetterSpacing = letterSpacing; - } - virtual void SetWordSpacing(const FDE_CSSLENGTH& wordSpacing) { - m_InheritedData.m_WordSpacing = wordSpacing; - } - virtual void SetWritingMode(FDE_CSSWRITINGMODE eWritingMode) { - m_InheritedData.m_eWritingMode = eWritingMode; - } - virtual void SetWordBreak(FDE_CSSWORDBREAK eWordBreak) { - m_InheritedData.m_eWordBreak = eWordBreak; - } - virtual void SetWidows(int32_t iWidows) { - m_InheritedData.m_iWidows = iWidows; - } - virtual void SetTextEmphasisColor(FX_ARGB dwTextEmphasisColor) { - m_InheritedData.m_dwTextEmphasisColor = dwTextEmphasisColor, - m_InheritedData.m_bTextEmphasisColorCurrent = FALSE; - } - virtual void SetPageBreakBefore(FDE_CSSPAGEBREAK ePageBreakBefore) { - m_NonInheritedData.m_ePageBreakBefore = ePageBreakBefore; - } - virtual void SetPageBreakAfter(FDE_CSSPAGEBREAK ePageBreakAfter) { - m_NonInheritedData.m_ePageBreakAfter = ePageBreakAfter; - } - virtual void SetPageBreakInside(FDE_CSSPAGEBREAK ePageBreakInside) { - m_NonInheritedData.m_ePageBreakInside = ePageBreakInside; - } - virtual void SetOrphans(int32_t iOrphans) { - m_InheritedData.m_iOrphans = iOrphans; - } - virtual void SetLineBreak(FDE_CSSLINEBREAK eLineBreak) { - m_InheritedData.m_eLineBreak = eLineBreak; - } - virtual FX_ARGB GetBKGColor() const { - return m_NonInheritedData.m_dwBKGColor; - } - virtual const FX_WCHAR* GetBKGImage() const { - return m_NonInheritedData.m_pszBKGImage; - } - virtual const FDE_CSSPOINT& GetBKGPosition() const { - return m_NonInheritedData.m_BKGPosition; - } - virtual FDE_CSSBKGREPEAT GetBKGRepeat() const { - return (FDE_CSSBKGREPEAT)m_NonInheritedData.m_eBKGRepeat; - } - virtual FDE_CSSBKGATTACHMENT GetBKGAttachment() const { - return (FDE_CSSBKGATTACHMENT)m_NonInheritedData.m_eBKGAttachment; - } - virtual void SetBKGColor(FX_ARGB dwBKGColor) { - m_NonInheritedData.m_dwBKGColor = dwBKGColor; - } - virtual void SetBKGPosition(const FDE_CSSPOINT& bkgPosition) { - m_NonInheritedData.m_BKGPosition = bkgPosition; - } - virtual FDE_CSSVISIBILITY GetVisibility() const { - return (FDE_CSSVISIBILITY)m_InheritedData.m_eVisibility; - } - virtual FDE_CSSOVERFLOW GetOverflowX() const { - return (FDE_CSSOVERFLOW)m_NonInheritedData.m_eOverflowX; - } - virtual FDE_CSSOVERFLOW GetOverflowY() const { - return (FDE_CSSOVERFLOW)m_NonInheritedData.m_eOverflowY; - } - virtual int32_t CountCursorUrls() const { - return m_InheritedData.m_pCursorUris == NULL - ? 0 - : m_InheritedData.m_pCursorUris->CountValues(); - } - virtual const FX_WCHAR* GetCursorUrl(int32_t index) const { - FXSYS_assert(m_InheritedData.m_pCursorUris != NULL); - return ((IFDE_CSSPrimitiveValue*)(m_InheritedData.m_pCursorUris->GetValue( - index))) - ->GetString(index); - } - virtual FDE_CSSCURSOR GetCursorType() const { - return m_InheritedData.m_eCursor; - } - virtual void SetVisibility(FDE_CSSVISIBILITY eVisibility) { - m_InheritedData.m_eVisibility = eVisibility; - } - virtual FDE_CSSLISTSTYLETYPE GetListStyleType() const { - return (FDE_CSSLISTSTYLETYPE)m_NonInheritedData.m_eListStyleType; - } - virtual FDE_CSSLISTSTYLEPOSITION GetListStylePosition() const { - return (FDE_CSSLISTSTYLEPOSITION)m_NonInheritedData.m_eListStylePosition; - } - virtual const FX_WCHAR* GetListStyleImage() const { - return m_InheritedData.m_pszListStyleImage; - } - virtual void SetListStyleType(FDE_CSSLISTSTYLETYPE eListStyleType) { - m_NonInheritedData.m_eListStyleType = eListStyleType; - } - virtual void SetListStylePosition( - FDE_CSSLISTSTYLEPOSITION eListStylePosition) { - m_NonInheritedData.m_eListStylePosition = eListStylePosition; - } - void AddCustomStyle(const CFX_WideString& wsName, - const CFX_WideString& wsValue) { - m_CustomProperties.Add(wsName); - m_CustomProperties.Add(wsValue); - } - FX_DWORD m_dwRefCount; - IFX_MEMAllocator* m_pAllocator; - CFDE_CSSInheritedData m_InheritedData; - CFDE_CSSNonInheritedData m_NonInheritedData; - CFX_WideStringArray m_CustomProperties; -}; - -#endif // XFA_FDE_CSS_FDE_CSSSTYLESELECTOR_H_ diff --git a/xfa/fwl/basewidget/fwl_barcodeimp.cpp b/xfa/fwl/basewidget/fwl_barcodeimp.cpp index 97ac8e4acb..1ee731399f 100644 --- a/xfa/fwl/basewidget/fwl_barcodeimp.cpp +++ b/xfa/fwl/basewidget/fwl_barcodeimp.cpp @@ -7,10 +7,11 @@ #include "xfa/fwl/basewidget/fwl_barcodeimp.h" #include "xfa/fwl/basewidget/fwl_editimp.h" +#include "xfa/fwl/core/cfwl_themepart.h" #include "xfa/fwl/core/fwl_noteimp.h" #include "xfa/fwl/core/fwl_targetimp.h" #include "xfa/fwl/core/fwl_widgetimp.h" -#include "xfa/include/fwl/core/fwl_theme.h" +#include "xfa/fwl/core/ifwl_themeprovider.h" // static IFWL_Barcode* IFWL_Barcode::Create(const CFWL_WidgetImpProperties& properties) { diff --git a/xfa/fwl/basewidget/fwl_barcodeimp.h b/xfa/fwl/basewidget/fwl_barcodeimp.h index bf7ad91050..2f12782c69 100644 --- a/xfa/fwl/basewidget/fwl_barcodeimp.h +++ b/xfa/fwl/basewidget/fwl_barcodeimp.h @@ -8,9 +8,9 @@ #define XFA_FWL_BASEWIDGET_FWL_BARCODEIMP_H_ #include "xfa/fwl/basewidget/fwl_editimp.h" -#include "xfa/include/fwl/basewidget/fwl_barcode.h" -#include "xfa/include/fwl/basewidget/fwl_scrollbar.h" -#include "xfa/include/fwl/basewidget/fxmath_barcode.h" +#include "xfa/fwl/basewidget/ifwl_barcode.h" +#include "xfa/fwl/basewidget/ifwl_scrollbar.h" +#include "xfa/fwl/basewidget/ifx_barcode.h" class CFWL_WidgetImpProperties; class CFWL_BarcodeImpDelegate; diff --git a/xfa/fwl/basewidget/fwl_caretimp.cpp b/xfa/fwl/basewidget/fwl_caretimp.cpp index ea7402e029..cc0f548392 100644 --- a/xfa/fwl/basewidget/fwl_caretimp.cpp +++ b/xfa/fwl/basewidget/fwl_caretimp.cpp @@ -6,11 +6,12 @@ #include "xfa/fwl/basewidget/fwl_caretimp.h" +#include "xfa/fwl/basewidget/ifwl_caret.h" +#include "xfa/fwl/core/cfwl_themebackground.h" #include "xfa/fwl/core/fwl_noteimp.h" #include "xfa/fwl/core/fwl_targetimp.h" #include "xfa/fwl/core/fwl_widgetimp.h" -#include "xfa/include/fwl/basewidget/fwl_caret.h" -#include "xfa/include/fwl/core/fwl_theme.h" +#include "xfa/fwl/core/ifwl_themeprovider.h" // static IFWL_Caret* IFWL_Caret::Create(const CFWL_WidgetImpProperties& properties, diff --git a/xfa/fwl/basewidget/fwl_caretimp.h b/xfa/fwl/basewidget/fwl_caretimp.h index dee4dd855d..c4b6015c01 100644 --- a/xfa/fwl/basewidget/fwl_caretimp.h +++ b/xfa/fwl/basewidget/fwl_caretimp.h @@ -8,8 +8,8 @@ #define XFA_FWL_BASEWIDGET_FWL_CARETIMP_H_ #include "xfa/fwl/core/fwl_widgetimp.h" +#include "xfa/fwl/core/ifwl_timer.h" #include "xfa/fxgraphics/cfx_color.h" -#include "xfa/include/fwl/core/fwl_timer.h" class CFWL_WidgetImpProperties; class IFWL_Widget; diff --git a/xfa/fwl/basewidget/fwl_checkboximp.cpp b/xfa/fwl/basewidget/fwl_checkboximp.cpp index 5912d0e17c..8ab75562b9 100644 --- a/xfa/fwl/basewidget/fwl_checkboximp.cpp +++ b/xfa/fwl/basewidget/fwl_checkboximp.cpp @@ -9,12 +9,15 @@ #include #include "xfa/fde/tto/fde_textout.h" +#include "xfa/fwl/basewidget/ifwl_checkbox.h" +#include "xfa/fwl/core/cfwl_message.h" +#include "xfa/fwl/core/cfwl_themebackground.h" +#include "xfa/fwl/core/cfwl_themetext.h" #include "xfa/fwl/core/fwl_noteimp.h" #include "xfa/fwl/core/fwl_targetimp.h" #include "xfa/fwl/core/fwl_widgetimp.h" #include "xfa/fwl/core/fwl_widgetmgrimp.h" -#include "xfa/include/fwl/basewidget/fwl_checkbox.h" -#include "xfa/include/fwl/core/fwl_theme.h" +#include "xfa/fwl/core/ifwl_themeprovider.h" #define FWL_CKB_CaptionMargin 5 diff --git a/xfa/fwl/basewidget/fwl_checkboximp.h b/xfa/fwl/basewidget/fwl_checkboximp.h index 1f6f5f3f7c..b5d0d153a7 100644 --- a/xfa/fwl/basewidget/fwl_checkboximp.h +++ b/xfa/fwl/basewidget/fwl_checkboximp.h @@ -9,9 +9,10 @@ #include "xfa/fwl/core/fwl_widgetimp.h" +class CFWL_CheckBoxImpDelegate; +class CFWL_MsgMouse; class CFWL_WidgetImpProperties; class IFWL_Widget; -class CFWL_CheckBoxImpDelegate; class CFWL_CheckBoxImp : public CFWL_WidgetImp { public: diff --git a/xfa/fwl/basewidget/fwl_comboboximp.cpp b/xfa/fwl/basewidget/fwl_comboboximp.cpp index 7aae6d5a97..5404777e73 100644 --- a/xfa/fwl/basewidget/fwl_comboboximp.cpp +++ b/xfa/fwl/basewidget/fwl_comboboximp.cpp @@ -11,6 +11,10 @@ #include "xfa/fwl/basewidget/fwl_formproxyimp.h" #include "xfa/fwl/basewidget/fwl_listboximp.h" #include "xfa/fwl/basewidget/fwl_scrollbarimp.h" +#include "xfa/fwl/core/cfwl_message.h" +#include "xfa/fwl/core/cfwl_themebackground.h" +#include "xfa/fwl/core/cfwl_themepart.h" +#include "xfa/fwl/core/cfwl_themetext.h" #include "xfa/fwl/core/fwl_appimp.h" #include "xfa/fwl/core/fwl_formimp.h" #include "xfa/fwl/core/fwl_noteimp.h" @@ -19,7 +23,8 @@ #include "xfa/fwl/core/fwl_threadimp.h" #include "xfa/fwl/core/fwl_widgetimp.h" #include "xfa/fwl/core/fwl_widgetmgrimp.h" -#include "xfa/include/fwl/core/fwl_theme.h" +#include "xfa/fwl/core/ifwl_notethread.h" +#include "xfa/fwl/core/ifwl_themeprovider.h" // static IFWL_ComboBox* IFWL_ComboBox::Create( diff --git a/xfa/fwl/basewidget/fwl_datetimepickerimp.cpp b/xfa/fwl/basewidget/fwl_datetimepickerimp.cpp index cd82dde5ac..70f76c607b 100644 --- a/xfa/fwl/basewidget/fwl_datetimepickerimp.cpp +++ b/xfa/fwl/basewidget/fwl_datetimepickerimp.cpp @@ -9,13 +9,16 @@ #include "xfa/fwl/basewidget/fwl_editimp.h" #include "xfa/fwl/basewidget/fwl_formproxyimp.h" #include "xfa/fwl/basewidget/fwl_monthcalendarimp.h" +#include "xfa/fwl/basewidget/ifwl_spinbutton.h" +#include "xfa/fwl/core/cfwl_message.h" +#include "xfa/fwl/core/cfwl_themebackground.h" #include "xfa/fwl/core/fwl_formimp.h" #include "xfa/fwl/core/fwl_noteimp.h" #include "xfa/fwl/core/fwl_panelimp.h" #include "xfa/fwl/core/fwl_targetimp.h" #include "xfa/fwl/core/fwl_widgetimp.h" #include "xfa/fwl/core/fwl_widgetmgrimp.h" -#include "xfa/include/fwl/basewidget/fwl_spinbutton.h" +#include "xfa/fwl/core/ifwl_themeprovider.h" #define FWL_DTP_WIDTH 100 #define FWL_DTP_HEIGHT 20 diff --git a/xfa/fwl/basewidget/fwl_datetimepickerimp.h b/xfa/fwl/basewidget/fwl_datetimepickerimp.h index 4c0ebc5cc5..9a4b920aed 100644 --- a/xfa/fwl/basewidget/fwl_datetimepickerimp.h +++ b/xfa/fwl/basewidget/fwl_datetimepickerimp.h @@ -11,11 +11,10 @@ #include "xfa/fwl/basewidget/fwl_editimp.h" #include "xfa/fwl/basewidget/fwl_monthcalendarimp.h" -#include "xfa/include/fwl/basewidget/fwl_datetimepicker.h" -#include "xfa/include/fwl/basewidget/fwl_edit.h" -#include "xfa/include/fwl/basewidget/fwl_monthcalendar.h" -#include "xfa/include/fwl/core/fwl_form.h" -#include "xfa/include/fwl/core/fwl_theme.h" +#include "xfa/fwl/basewidget/ifwl_datetimepicker.h" +#include "xfa/fwl/basewidget/ifwl_edit.h" +#include "xfa/fwl/basewidget/ifwl_monthcalendar.h" +#include "xfa/fwl/core/ifwl_form.h" class CFWL_WidgetImp; class CFWL_WidgetImpProperties; diff --git a/xfa/fwl/basewidget/fwl_editimp.cpp b/xfa/fwl/basewidget/fwl_editimp.cpp index a0d707438e..73c7fa31e1 100644 --- a/xfa/fwl/basewidget/fwl_editimp.cpp +++ b/xfa/fwl/basewidget/fwl_editimp.cpp @@ -15,16 +15,19 @@ #include "xfa/fwl/basewidget/fwl_caretimp.h" #include "xfa/fwl/basewidget/fwl_comboboximp.h" #include "xfa/fwl/basewidget/fwl_scrollbarimp.h" +#include "xfa/fwl/basewidget/ifwl_caret.h" +#include "xfa/fwl/basewidget/ifwl_datetimepicker.h" +#include "xfa/fwl/core/cfwl_message.h" +#include "xfa/fwl/core/cfwl_themebackground.h" +#include "xfa/fwl/core/cfwl_themepart.h" #include "xfa/fwl/core/fwl_appimp.h" #include "xfa/fwl/core/fwl_noteimp.h" #include "xfa/fwl/core/fwl_targetimp.h" #include "xfa/fwl/core/fwl_threadimp.h" #include "xfa/fwl/core/fwl_widgetimp.h" #include "xfa/fwl/core/fwl_widgetmgrimp.h" +#include "xfa/fwl/core/ifwl_themeprovider.h" #include "xfa/fxgraphics/cfx_path.h" -#include "xfa/include/fwl/basewidget/fwl_caret.h" -#include "xfa/include/fwl/basewidget/fwl_datetimepicker.h" -#include "xfa/include/fwl/core/fwl_theme.h" // static IFWL_Edit* IFWL_Edit::Create(const CFWL_WidgetImpProperties& properties, diff --git a/xfa/fwl/basewidget/fwl_editimp.h b/xfa/fwl/basewidget/fwl_editimp.h index 6693b8d187..3dcf48e1ae 100644 --- a/xfa/fwl/basewidget/fwl_editimp.h +++ b/xfa/fwl/basewidget/fwl_editimp.h @@ -11,9 +11,13 @@ #include #include "xfa/fee/ifde_txtedtengine.h" +#include "xfa/fwl/basewidget/ifwl_scrollbar.h" #include "xfa/fwl/core/fwl_widgetimp.h" -#include "xfa/include/fwl/basewidget/fwl_scrollbar.h" +#include "xfa/fxgraphics/cfx_path.h" +class CFWL_MsgActivate; +class CFWL_MsgDeactivate; +class CFWL_MsgMouse; class CFWL_WidgetImpProperties; class CFWL_WidgetImpDelegate; class IFWL_Caret; diff --git a/xfa/fwl/basewidget/fwl_listboximp.cpp b/xfa/fwl/basewidget/fwl_listboximp.cpp index a7481165bf..ad5800142c 100644 --- a/xfa/fwl/basewidget/fwl_listboximp.cpp +++ b/xfa/fwl/basewidget/fwl_listboximp.cpp @@ -9,10 +9,14 @@ #include "xfa/fde/tto/fde_textout.h" #include "xfa/fwl/basewidget/fwl_comboboximp.h" #include "xfa/fwl/basewidget/fwl_scrollbarimp.h" +#include "xfa/fwl/core/cfwl_message.h" +#include "xfa/fwl/core/cfwl_themebackground.h" +#include "xfa/fwl/core/cfwl_themepart.h" +#include "xfa/fwl/core/cfwl_themetext.h" #include "xfa/fwl/core/fwl_noteimp.h" #include "xfa/fwl/core/fwl_targetimp.h" #include "xfa/fwl/core/fwl_widgetimp.h" -#include "xfa/include/fwl/core/fwl_theme.h" +#include "xfa/fwl/core/ifwl_themeprovider.h" #define FWL_LISTBOX_ItemTextMargin 2 diff --git a/xfa/fwl/basewidget/fwl_listboximp.h b/xfa/fwl/basewidget/fwl_listboximp.h index a78faf3d13..a4f9188b4d 100644 --- a/xfa/fwl/basewidget/fwl_listboximp.h +++ b/xfa/fwl/basewidget/fwl_listboximp.h @@ -9,13 +9,16 @@ #include +#include "xfa/fwl/basewidget/ifwl_combobox.h" +#include "xfa/fwl/basewidget/ifwl_edit.h" +#include "xfa/fwl/basewidget/ifwl_listbox.h" +#include "xfa/fwl/basewidget/ifwl_scrollbar.h" #include "xfa/fwl/core/fwl_widgetimp.h" -#include "xfa/include/fwl/basewidget/fwl_combobox.h" -#include "xfa/include/fwl/basewidget/fwl_edit.h" -#include "xfa/include/fwl/basewidget/fwl_listbox.h" -#include "xfa/include/fwl/basewidget/fwl_scrollbar.h" class CFWL_ListBoxImpDelegate; +class CFWL_MsgKillFocus; +class CFWL_MsgMouse; +class CFWL_MsgMouseWheel; class CFWL_ListBoxImp : public CFWL_WidgetImp { public: diff --git a/xfa/fwl/basewidget/fwl_monthcalendarimp.cpp b/xfa/fwl/basewidget/fwl_monthcalendarimp.cpp index e6dad35481..7106601b68 100644 --- a/xfa/fwl/basewidget/fwl_monthcalendarimp.cpp +++ b/xfa/fwl/basewidget/fwl_monthcalendarimp.cpp @@ -9,11 +9,14 @@ #include #include "xfa/fde/tto/fde_textout.h" +#include "xfa/fwl/basewidget/ifwl_monthcalendar.h" +#include "xfa/fwl/core/cfwl_message.h" +#include "xfa/fwl/core/cfwl_themebackground.h" +#include "xfa/fwl/core/cfwl_themetext.h" #include "xfa/fwl/core/fwl_noteimp.h" #include "xfa/fwl/core/fwl_targetimp.h" #include "xfa/fwl/core/fwl_widgetimp.h" -#include "xfa/include/fwl/basewidget/fwl_monthcalendar.h" -#include "xfa/include/fwl/core/fwl_theme.h" +#include "xfa/fwl/core/ifwl_themeprovider.h" #define MONTHCAL_HSEP_HEIGHT 1 #define MONTHCAL_VSEP_WIDTH 1 diff --git a/xfa/fwl/basewidget/fwl_monthcalendarimp.h b/xfa/fwl/basewidget/fwl_monthcalendarimp.h index c9542cb599..f1c12b5302 100644 --- a/xfa/fwl/basewidget/fwl_monthcalendarimp.h +++ b/xfa/fwl/basewidget/fwl_monthcalendarimp.h @@ -10,9 +10,10 @@ #include "xfa/fgas/localization/fgas_datetime.h" #include "xfa/fwl/core/fwl_widgetimp.h" +class CFWL_MonthCalendarImpDelegate; +class CFWL_MsgMouse; class CFWL_WidgetImpProperties; class IFWL_Widget; -class CFWL_MonthCalendarImpDelegate; extern uint8_t FX_DaysInMonth(int32_t iYear, uint8_t iMonth); diff --git a/xfa/fwl/basewidget/fwl_pushbuttonimp.cpp b/xfa/fwl/basewidget/fwl_pushbuttonimp.cpp index ac0055b215..cb6f99de7c 100644 --- a/xfa/fwl/basewidget/fwl_pushbuttonimp.cpp +++ b/xfa/fwl/basewidget/fwl_pushbuttonimp.cpp @@ -7,10 +7,14 @@ #include "xfa/fwl/basewidget/fwl_pushbuttonimp.h" #include "xfa/fde/tto/fde_textout.h" +#include "xfa/fwl/basewidget/ifwl_pushbutton.h" +#include "xfa/fwl/core/cfwl_message.h" +#include "xfa/fwl/core/cfwl_themebackground.h" +#include "xfa/fwl/core/cfwl_themetext.h" #include "xfa/fwl/core/fwl_noteimp.h" #include "xfa/fwl/core/fwl_targetimp.h" #include "xfa/fwl/core/fwl_widgetimp.h" -#include "xfa/include/fwl/basewidget/fwl_pushbutton.h" +#include "xfa/fwl/core/ifwl_themeprovider.h" // static IFWL_PushButton* IFWL_PushButton::Create( diff --git a/xfa/fwl/basewidget/fwl_pushbuttonimp.h b/xfa/fwl/basewidget/fwl_pushbuttonimp.h index 32d8f6c4e2..8c0d5f3395 100644 --- a/xfa/fwl/basewidget/fwl_pushbuttonimp.h +++ b/xfa/fwl/basewidget/fwl_pushbuttonimp.h @@ -9,9 +9,10 @@ #include "xfa/fwl/core/fwl_widgetimp.h" +class CFWL_MsgMouse; class CFWL_WidgetImpProperties; -class IFWL_Widget; class CFWL_PushButtonImpDelegate; +class IFWL_Widget; class CFWL_PushButtonImp : public CFWL_WidgetImp { public: @@ -44,6 +45,7 @@ class CFWL_PushButtonImp : public CFWL_WidgetImp { int32_t m_iTTOAlign; friend class CFWL_PushButtonImpDelegate; }; + class CFWL_PushButtonImpDelegate : public CFWL_WidgetImpDelegate { public: CFWL_PushButtonImpDelegate(CFWL_PushButtonImp* pOwner); diff --git a/xfa/fwl/basewidget/fwl_scrollbarimp.cpp b/xfa/fwl/basewidget/fwl_scrollbarimp.cpp index 6bab12be53..ad41d82be2 100644 --- a/xfa/fwl/basewidget/fwl_scrollbarimp.cpp +++ b/xfa/fwl/basewidget/fwl_scrollbarimp.cpp @@ -6,11 +6,14 @@ #include "xfa/fwl/basewidget/fwl_scrollbarimp.h" +#include "xfa/fwl/basewidget/ifwl_scrollbar.h" +#include "xfa/fwl/core/cfwl_message.h" +#include "xfa/fwl/core/cfwl_themebackground.h" +#include "xfa/fwl/core/cfwl_themepart.h" #include "xfa/fwl/core/fwl_noteimp.h" #include "xfa/fwl/core/fwl_targetimp.h" #include "xfa/fwl/core/fwl_widgetimp.h" -#include "xfa/include/fwl/basewidget/fwl_scrollbar.h" -#include "xfa/include/fwl/core/fwl_theme.h" +#include "xfa/fwl/core/ifwl_themeprovider.h" #define FWL_SCROLLBAR_Elapse 500 #define FWL_SCROLLBAR_MinThumb 5 diff --git a/xfa/fwl/basewidget/fwl_scrollbarimp.h b/xfa/fwl/basewidget/fwl_scrollbarimp.h index 2e378a677c..a06e47aada 100644 --- a/xfa/fwl/basewidget/fwl_scrollbarimp.h +++ b/xfa/fwl/basewidget/fwl_scrollbarimp.h @@ -8,7 +8,7 @@ #define XFA_FWL_BASEWIDGET_FWL_SCROLLBARIMP_H_ #include "xfa/fwl/core/fwl_widgetimp.h" -#include "xfa/include/fwl/core/fwl_timer.h" +#include "xfa/fwl/core/ifwl_timer.h" class CFWL_WidgetImpProperties; class IFWL_Widget; diff --git a/xfa/fwl/basewidget/fwl_spinbuttonimp.cpp b/xfa/fwl/basewidget/fwl_spinbuttonimp.cpp index 9493cbbc7d..bc11d8fdf1 100644 --- a/xfa/fwl/basewidget/fwl_spinbuttonimp.cpp +++ b/xfa/fwl/basewidget/fwl_spinbuttonimp.cpp @@ -6,12 +6,16 @@ #include "xfa/fwl/basewidget/fwl_spinbuttonimp.h" +#include "xfa/fwl/basewidget/ifwl_spinbutton.h" +#include "xfa/fwl/core/cfwl_message.h" +#include "xfa/fwl/core/cfwl_themebackground.h" +#include "xfa/fwl/core/cfwl_widgetimpproperties.h" #include "xfa/fwl/core/fwl_noteimp.h" #include "xfa/fwl/core/fwl_targetimp.h" #include "xfa/fwl/core/fwl_widgetimp.h" -#include "xfa/include/fwl/basewidget/fwl_spinbutton.h" -#include "xfa/include/fwl/core/fwl_theme.h" -#include "xfa/include/fwl/core/fwl_timer.h" +#include "xfa/fwl/core/ifwl_themeprovider.h" +#include "xfa/fwl/core/ifwl_themeprovider.h" +#include "xfa/fwl/core/ifwl_timer.h" #define FWL_SPN_MinWidth 18 #define FWL_SPN_MinHeight 32 diff --git a/xfa/fwl/basewidget/fwl_spinbuttonimp.h b/xfa/fwl/basewidget/fwl_spinbuttonimp.h index d8eb5963dc..7f04ae5c1c 100644 --- a/xfa/fwl/basewidget/fwl_spinbuttonimp.h +++ b/xfa/fwl/basewidget/fwl_spinbuttonimp.h @@ -8,10 +8,12 @@ #define XFA_FWL_BASEWIDGET_FWL_SPINBUTTONIMP_H_ #include "xfa/fwl/core/fwl_widgetimp.h" -#include "xfa/include/fwl/core/fwl_timer.h" +#include "xfa/fwl/core/ifwl_timer.h" +#include "xfa/fwl/core/ifwl_widget.h" -class CFWL_WidgetImpProperties; +class CFWL_MsgMouse; class CFWL_SpinButtonImpDelegate; +class CFWL_WidgetImpProperties; class CFWL_SpinButtonImp : public CFWL_WidgetImp, public IFWL_Timer { public: diff --git a/xfa/fwl/basewidget/fwl_tooltipctrlimp.cpp b/xfa/fwl/basewidget/fwl_tooltipctrlimp.cpp index 3d545e66fe..584e6c3ae8 100644 --- a/xfa/fwl/basewidget/fwl_tooltipctrlimp.cpp +++ b/xfa/fwl/basewidget/fwl_tooltipctrlimp.cpp @@ -7,13 +7,17 @@ #include "xfa/fwl/basewidget/fwl_tooltipctrlimp.h" #include "xfa/fde/tto/fde_textout.h" +#include "xfa/fwl/basewidget/ifwl_tooltip.h" +#include "xfa/fwl/core/cfwl_themebackground.h" +#include "xfa/fwl/core/cfwl_themepart.h" +#include "xfa/fwl/core/cfwl_themetext.h" #include "xfa/fwl/core/fwl_formimp.h" #include "xfa/fwl/core/fwl_noteimp.h" #include "xfa/fwl/core/fwl_panelimp.h" #include "xfa/fwl/core/fwl_targetimp.h" #include "xfa/fwl/core/fwl_widgetimp.h" -#include "xfa/include/fwl/basewidget/fwl_tooltipctrl.h" -#include "xfa/include/fwl/core/fwl_theme.h" +#include "xfa/fwl/core/ifwl_themeprovider.h" +#include "xfa/fwl/core/ifwl_tooltiptarget.h" // static IFWL_ToolTip* IFWL_ToolTip::Create(const CFWL_WidgetImpProperties& properties, diff --git a/xfa/fwl/basewidget/fwl_tooltipctrlimp.h b/xfa/fwl/basewidget/fwl_tooltipctrlimp.h index 42fe276fb9..121f302572 100644 --- a/xfa/fwl/basewidget/fwl_tooltipctrlimp.h +++ b/xfa/fwl/basewidget/fwl_tooltipctrlimp.h @@ -9,7 +9,7 @@ #include "xfa/fwl/core/fwl_formimp.h" #include "xfa/fwl/core/fwl_widgetimp.h" -#include "xfa/include/fwl/core/fwl_timer.h" +#include "xfa/fwl/core/ifwl_timer.h" class CFWL_WidgetImpProperties; class IFWL_Widget; diff --git a/xfa/fwl/basewidget/fxmath_barcodeimp.h b/xfa/fwl/basewidget/fxmath_barcodeimp.h index 30fe400ca1..bcad0489e6 100644 --- a/xfa/fwl/basewidget/fxmath_barcodeimp.h +++ b/xfa/fwl/basewidget/fxmath_barcodeimp.h @@ -9,8 +9,8 @@ #include "core/fxcrt/include/fx_string.h" #include "core/fxcrt/include/fx_system.h" +#include "xfa/fwl/basewidget/ifx_barcode.h" #include "xfa/fxbarcode/include/BC_Library.h" -#include "xfa/include/fwl/basewidget/fxmath_barcode.h" class CBC_CodeBase; diff --git a/xfa/fwl/basewidget/ifwl_barcode.h b/xfa/fwl/basewidget/ifwl_barcode.h new file mode 100644 index 0000000000..250e608da7 --- /dev/null +++ b/xfa/fwl/basewidget/ifwl_barcode.h @@ -0,0 +1,63 @@ +// Copyright 2014 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef XFA_FWL_BASEWIDGET_IFWL_BARCODE_H_ +#define XFA_FWL_BASEWIDGET_IFWL_BARCODE_H_ + +#include "xfa/fxbarcode/include/BC_Library.h" +#include "xfa/fwl/basewidget/ifwl_edit.h" + +class CFWL_WidgetImpProperties; + +#define FWL_CLASS_Barcode L"FWL_BARCODE" +#define FWL_CLASSHASH_Barcode 366886968 +#define FWL_BCDATTRIBUTE_CHARENCODING (1L << 0) +#define FWL_BCDATTRIBUTE_MODULEHEIGHT (1L << 1) +#define FWL_BCDATTRIBUTE_MODULEWIDTH (1L << 2) +#define FWL_BCDATTRIBUTE_DATALENGTH (1L << 3) +#define FWL_BCDATTRIBUTE_CALCHECKSUM (1L << 4) +#define FWL_BCDATTRIBUTE_PRINTCHECKSUM (1L << 5) +#define FWL_BCDATTRIBUTE_TEXTLOCATION (1L << 6) +#define FWL_BCDATTRIBUTE_WIDENARROWRATIO (1L << 7) +#define FWL_BCDATTRIBUTE_STARTCHAR (1L << 8) +#define FWL_BCDATTRIBUTE_ENDCHAR (1L << 9) +#define FWL_BCDATTRIBUTE_VERSION (1L << 10) +#define FWL_BCDATTRIBUTE_ECLEVEL (1L << 11) +#define FWL_BCDATTRIBUTE_TRUNCATED (1L << 12) +#define FWL_PART_BCD_Border 1 +#define FWL_PART_BCD_Edge 2 +#define FWL_PART_BCD_Background 3 +#define FWL_BCUPDATECMD_Data FWL_WGTUPDATECMD_User + +class IFWL_BarcodeDP : public IFWL_EditDP { + public: + virtual BC_CHAR_ENCODING GetCharEncoding() = 0; + virtual int32_t GetModuleHeight() = 0; + virtual int32_t GetModuleWidth() = 0; + virtual int32_t GetDataLength() = 0; + virtual int32_t GetCalChecksum() = 0; + virtual FX_BOOL GetPrintChecksum() = 0; + virtual BC_TEXT_LOC GetTextLocation() = 0; + virtual int32_t GetWideNarrowRatio() = 0; + virtual FX_CHAR GetStartChar() = 0; + virtual FX_CHAR GetEndChar() = 0; + virtual int32_t GetVersion() = 0; + virtual int32_t GetErrorCorrectionLevel() = 0; + virtual FX_BOOL GetTruncated() = 0; + virtual FX_DWORD GetBarcodeAttributeMask() = 0; +}; + +class IFWL_Barcode : public IFWL_Edit { + public: + static IFWL_Barcode* Create(const CFWL_WidgetImpProperties& properties); + void SetType(BC_TYPE type); + FX_BOOL IsProtectedType(); + + protected: + IFWL_Barcode(); +}; + +#endif // XFA_FWL_BASEWIDGET_IFWL_BARCODE_H_ diff --git a/xfa/fwl/basewidget/ifwl_caret.h b/xfa/fwl/basewidget/ifwl_caret.h new file mode 100644 index 0000000000..5b0138f6ce --- /dev/null +++ b/xfa/fwl/basewidget/ifwl_caret.h @@ -0,0 +1,33 @@ +// Copyright 2014 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef XFA_FWL_BASEWIDGET_IFWL_CARET_H_ +#define XFA_FWL_BASEWIDGET_IFWL_CARET_H_ + +#include "xfa/fwl/core/ifwl_widget.h" +#include "xfa/fwl/core/cfwl_widgetimpproperties.h" + +#define FWL_CLASS_Caret L"FWL_CARET" +#define FWL_CLASSHASH_Caret 671181879 +#define FWL_STATE_CAT_HightLight 1 +#define FWL_PART_CAT_Background 1 +#define FWL_PARTSTATE_CAT_HightLight 1 + +class IFWL_Caret : public IFWL_Widget { + public: + static IFWL_Caret* Create(const CFWL_WidgetImpProperties& properties, + IFWL_Widget* pOuter); + + FWL_ERR ShowCaret(FX_BOOL bFlag = TRUE); + FWL_ERR GetFrequency(FX_DWORD& elapse); + FWL_ERR SetFrequency(FX_DWORD elapse); + FWL_ERR SetColor(CFX_Color crFill); + + protected: + IFWL_Caret(); +}; + +#endif // XFA_FWL_BASEWIDGET_IFWL_CARET_H_ diff --git a/xfa/fwl/basewidget/ifwl_checkbox.h b/xfa/fwl/basewidget/ifwl_checkbox.h new file mode 100644 index 0000000000..3b634553d0 --- /dev/null +++ b/xfa/fwl/basewidget/ifwl_checkbox.h @@ -0,0 +1,85 @@ +// Copyright 2014 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef XFA_FWL_BASEWIDGET_IFWL_CHECKBOX_H_ +#define XFA_FWL_BASEWIDGET_IFWL_CHECKBOX_H_ + +#include "xfa/fwl/core/ifwl_widget.h" +#include "xfa/fwl/core/cfwl_event.h" +#include "xfa/fwl/core/ifwl_dataprovider.h" +#include "xfa/fwl/core/cfwl_widgetimpproperties.h" + +#define FWL_CLASS_CheckBox L"FWL_CHECKBOX" +#define FWL_CLASSHASH_CheckBox 4107183823 +#define FWL_STYLEEXT_CKB_Left (0L << 0) +#define FWL_STYLEEXT_CKB_Center (1L << 0) +#define FWL_STYLEEXT_CKB_Right (2L << 0) +#define FWL_STYLEEXT_CKB_Top (0L << 2) +#define FWL_STYLEEXT_CKB_VCenter (1L << 2) +#define FWL_STYLEEXT_CKB_Bottom (2L << 2) +#define FWL_STYLEEXT_CKB_LeftText (1L << 4) +#define FWL_STYLEEXT_CKB_MultiLine (1L << 5) +#define FWL_STYLEEXT_CKB_3State (1L << 6) +#define FWL_STYLEEXT_CKB_RadioButton (1L << 7) +#define FWL_STYLEEXT_CKB_ShapeSolidSquare (0L << 8) +#define FWL_STYLEEXT_CKB_ShapeSunkenSquare (1L << 8) +#define FWL_STYLEEXT_CKB_ShapeSolidCircle (2L << 8) +#define FWL_STYLEEXT_CKB_ShapeSunkenCircle (3L << 8) +#define FWL_STYLEEXT_CKB_SignShapeCheck (0L << 10) +#define FWL_STYLEEXT_CKB_SignShapeCircle (1L << 10) +#define FWL_STYLEEXT_CKB_SignShapeCross (2L << 10) +#define FWL_STYLEEXT_CKB_SignShapeDiamond (3L << 10) +#define FWL_STYLEEXT_CKB_SignShapeSquare (4L << 10) +#define FWL_STYLEEXT_CKB_SignShapeStar (5L << 10) +#define FWL_STYLEEXT_CKB_HLayoutMask (3L << 0) +#define FWL_STYLEEXT_CKB_VLayoutMask (3L << 2) +#define FWL_STYLEEXT_CKB_ShapeMask (3L << 8) +#define FWL_STYLEEXT_CKB_SignShapeMask (7L << 10) +#define FWL_STATE_CKB_Hovered (1 << FWL_WGTSTATE_MAX) +#define FWL_STATE_CKB_Pressed (1 << (FWL_WGTSTATE_MAX + 1)) +#define FWL_STATE_CKB_Unchecked (0 << (FWL_WGTSTATE_MAX + 2)) +#define FWL_STATE_CKB_Checked (1 << (FWL_WGTSTATE_MAX + 2)) +#define FWL_STATE_CKB_Neutral (2 << (FWL_WGTSTATE_MAX + 2)) +#define FWL_STATE_CKB_CheckMask (3L << (FWL_WGTSTATE_MAX + 2)) +#define FWL_PART_CKB_Border 1 +#define FWL_PART_CKB_Edge 2 +#define FWL_PART_CKB_Background 3 +#define FWL_PART_CKB_CheckBox 4 +#define FWL_PART_CKB_Caption 5 +#define FWL_PARTSTATE_CKB_Normal (0L << 0) +#define FWL_PARTSTATE_CKB_Pressed (1L << 0) +#define FWL_PARTSTATE_CKB_Hovered (2L << 0) +#define FWL_PARTSTATE_CKB_Disabled (3L << 0) +#define FWL_PARTSTATE_CKB_UnChecked (0L << 2) +#define FWL_PARTSTATE_CKB_Checked (1L << 2) +#define FWL_PARTSTATE_CKB_Neutral (2L << 2) +#define FWL_PARTSTATE_CKB_Focused (1L << 4) +#define FWL_PARTSTATE_CKB_Mask1 (3L << 0) +#define FWL_PARTSTATE_CKB_Mask2 (3L << 2) +#define FWL_EVT_CKB_CheckStateChanged L"FWL_EVENT_CKB_CheckStateChanged" +#define FWL_EVTHASH_CKB_CheckStateChanged 2503252963 + +BEGIN_FWL_EVENT_DEF(CFWL_EvtCkbCheckStateChanged, + FWL_EVTHASH_CKB_CheckStateChanged) +END_FWL_EVENT_DEF + +class IFWL_CheckBoxDP : public IFWL_DataProvider { + public: + virtual FX_FLOAT GetBoxSize(IFWL_Widget* pWidget) = 0; +}; + +class IFWL_CheckBox : public IFWL_Widget { + public: + static IFWL_CheckBox* Create(const CFWL_WidgetImpProperties& properties, + IFWL_Widget* pOuter); + int32_t GetCheckState(); + FWL_ERR SetCheckState(int32_t iCheck); + + protected: + IFWL_CheckBox(); +}; + +#endif // XFA_FWL_BASEWIDGET_IFWL_CHECKBOX_H_ diff --git a/xfa/fwl/basewidget/ifwl_combobox.h b/xfa/fwl/basewidget/ifwl_combobox.h new file mode 100644 index 0000000000..93efe287b2 --- /dev/null +++ b/xfa/fwl/basewidget/ifwl_combobox.h @@ -0,0 +1,152 @@ +// Copyright 2014 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef XFA_FWL_BASEWIDGET_IFWL_COMBOBOX_H_ +#define XFA_FWL_BASEWIDGET_IFWL_COMBOBOX_H_ + +#include "xfa/fwl/basewidget/ifwl_listbox.h" +#include "xfa/fxgraphics/include/cfx_graphics.h" + +class CFWL_WidgetImpProperties; +class IFWL_ComboBox; + +#define FWL_CLASS_ComboBox L"FWL_COMBOBOX" +#define FWL_CLASSHASH_ComboBox 602353697 +#define FWL_STYLEEXT_CMB_DropList (0L << 0) +#define FWL_STYLEEXT_CMB_DropDown (1L << 0) +#define FWL_STYLEEXT_CMB_Sort (1L << 1) +#define FWL_STYLEEXT_CMB_ListDrag (1L << 2) +#define FWL_STYLEEXT_CMB_OwnerDraw (1L << 3) +#define FWL_STYLEEXT_CMB_EditHNear (0L << 4) +#define FWL_STYLEEXT_CMB_EditHCenter (1L << 4) +#define FWL_STYLEEXT_CMB_EditHFar (2L << 4) +#define FWL_STYLEEXT_CMB_EditVNear (0L << 6) +#define FWL_STYLEEXT_CMB_EditVCenter (1L << 6) +#define FWL_STYLEEXT_CMB_EditVFar (2L << 6) +#define FWL_STYLEEXT_CMB_EditJustified (1L << 8) +#define FWL_STYLEEXT_CMB_EditDistributed (2L << 8) +#define FWL_STYLEEXT_CMB_EditHAlignMask (3L << 4) +#define FWL_STYLEEXT_CMB_EditVAlignMask (3L << 6) +#define FWL_STYLEEXT_CMB_EditHAlignModeMask (3L << 8) +#define FWL_STYLEEXT_CMB_ListItemLeftAlign (0L << 10) +#define FWL_STYLEEXT_CMB_ListItemCenterAlign (1L << 10) +#define FWL_STYLEEXT_CMB_ListItemRightAlign (2L << 10) +#define FWL_STYLEEXT_CMB_ListItemText (0L << 12) +#define FWL_STYLEEXT_CMB_ListItemIconText (1L << 12) +#define FWL_STYLEEXT_CMB_ListItemAlignMask (3L << 12) +#define FWL_STYLEEXT_CMB_ReadOnly (1L << 13) +#define FWL_PART_CMB_Border 1 +#define FWL_PART_CMB_Edge 2 +#define FWL_PART_CMB_Background 3 +#define FWL_PART_CMB_DropDownButton 4 +#define FWL_PART_CMB_Caption 5 +#define FWL_PART_CMB_StretcgHandler 6 +#define FWL_PARTSTATE_CMB_Normal (0L << 0) +#define FWL_PARTSTATE_CMB_Hovered (1L << 0) +#define FWL_PARTSTATE_CMB_Pressed (2L << 0) +#define FWL_PARTSTATE_CMB_Disabled (3L << 0) +#define FWL_PARTSTATE_CMB_Selected (1L << 2) +#define FWL_WGTCAPACITY_CMB_ComboFormHandler (FWL_WGTCAPACITY_MAX + 7) +#define FWL_EVT_CMB_DropDown L"FWL_EVENT_CMB_PreDropDown" +#define FWL_EVT_CMB_PostDropDown L"FWL_EVENT_CMB_PostDropDown" +#define FWL_EVT_CMB_CloseUp L"FWL_EVENT_CMB_CloseUp" +#define FWL_EVT_CMB_EditChanged L"FWL_EVENT_CMB_EditChanged" +#define FWL_EVT_CMB_SelChanged L"FWL_EVENT_CMB_SelChanged" +#define FWL_EVT_CMB_HoverChanged L"FWL_EVENT_CMB_HoverChanged" +#define FWL_EVT_CMB_DrawItem L"FWL_EVENT_CMB_DrawItem" +#define FWL_EVTHASH_CMB_PreDropDown 1357646798 +#define FWL_EVTHASH_CMB_PostDropDown 3677010285 +#define FWL_EVTHASH_CMB_CloseUp 2871271190 +#define FWL_EVTHASH_CMB_EditChanged 1527034762 +#define FWL_EVTHASH_CMB_SelChanged 2923227784 +#define FWL_EVTHASH_CMB_HoverChanged 944325448 +#define FWL_EVTHASH_CMB_DrawItem 917354551 + +enum FWL_CMB_TEXTCHANGED { + FWL_CMB_TEXTCHANGED_Insert = 0, + FWL_CMB_TEXTCHANGED_Delete, + FWL_CMB_TEXTCHANGED_Replace, +}; + +BEGIN_FWL_EVENT_DEF(CFWL_EvtCmbPreDropDown, FWL_EVTHASH_CMB_PreDropDown) +END_FWL_EVENT_DEF + +BEGIN_FWL_EVENT_DEF(CFWL_EvtCmbPostDropDown, FWL_EVTHASH_CMB_PostDropDown) +END_FWL_EVENT_DEF + +BEGIN_FWL_EVENT_DEF(CFWL_EvtCmbCloseUp, FWL_EVTHASH_CMB_CloseUp) +END_FWL_EVENT_DEF + +BEGIN_FWL_EVENT_DEF(CFWL_EvtCmbEditChanged, FWL_EVTHASH_CMB_EditChanged) +int32_t nChangeType; +CFX_WideString wsInsert; +CFX_WideString wsDelete; +END_FWL_EVENT_DEF + +BEGIN_FWL_EVENT_DEF(CFWL_EvtCmbSelChanged, FWL_EVTHASH_CMB_SelChanged) +CFX_Int32Array iArraySels; +FX_BOOL bLButtonUp; +END_FWL_EVENT_DEF + +BEGIN_FWL_EVENT_DEF(CFWL_EvtCmbHoverChanged, FWL_EVTHASH_CMB_HoverChanged) +int32_t m_iCurHover; +END_FWL_EVENT_DEF + +BEGIN_FWL_EVENT_DEF(CFWL_EvtCmbDrawItem, FWL_EVTHASH_CMB_DrawItem) +CFX_Graphics* m_pGraphics; +CFX_Matrix m_matrix; +int32_t m_index; +CFX_RectF m_rtItem; +END_FWL_EVENT_DEF + +class IFWL_ComboBoxDP : public IFWL_ListBoxDP { + public: + virtual FX_FLOAT GetListHeight(IFWL_Widget* pWidget) = 0; +}; + +class IFWL_ComboBox : public IFWL_Widget { + public: + static IFWL_ComboBox* Create(const CFWL_WidgetImpProperties& properties); + + int32_t GetCurSel(); + FWL_ERR SetCurSel(int32_t iSel); + FWL_ERR SetEditText(const CFX_WideString& wsText); + int32_t GetEditTextLength() const; + FWL_ERR GetEditText(CFX_WideString& wsText, + int32_t nStart = 0, + int32_t nCount = -1) const; + FWL_ERR SetEditSelRange(int32_t nStart, int32_t nCount = -1); + int32_t GetEditSelRange(int32_t nIndex, int32_t& nStart); + int32_t GetEditLimit(); + FWL_ERR SetEditLimit(int32_t nLimit); + FWL_ERR EditDoClipboard(int32_t iCmd); + FX_BOOL EditRedo(const CFX_ByteStringC& bsRecord); + FX_BOOL EditUndo(const CFX_ByteStringC& bsRecord); + IFWL_ListBox* GetListBoxt(); + FX_BOOL AfterFocusShowDropList(); + FX_ERR OpenDropDownList(FX_BOOL bActivate); + FX_BOOL EditCanUndo(); + FX_BOOL EditCanRedo(); + FX_BOOL EditUndo(); + FX_BOOL EditRedo(); + FX_BOOL EditCanCopy(); + FX_BOOL EditCanCut(); + FX_BOOL EditCanSelectAll(); + FX_BOOL EditCopy(CFX_WideString& wsCopy); + FX_BOOL EditCut(CFX_WideString& wsCut); + FX_BOOL EditPaste(const CFX_WideString& wsPaste); + FX_BOOL EditSelectAll(); + FX_BOOL EditDelete(); + FX_BOOL EditDeSelect(); + FWL_ERR GetBBox(CFX_RectF& rect); + FWL_ERR EditModifyStylesEx(FX_DWORD dwStylesExAdded, + FX_DWORD dwStylesExRemoved); + + protected: + IFWL_ComboBox(); +}; + +#endif // XFA_FWL_BASEWIDGET_IFWL_COMBOBOX_H_ diff --git a/xfa/fwl/basewidget/ifwl_datetimepicker.h b/xfa/fwl/basewidget/ifwl_datetimepicker.h new file mode 100644 index 0000000000..25c69682a9 --- /dev/null +++ b/xfa/fwl/basewidget/ifwl_datetimepicker.h @@ -0,0 +1,115 @@ +// Copyright 2014 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef XFA_FWL_BASEWIDGET_IFWL_DATETIMEPICKER_H_ +#define XFA_FWL_BASEWIDGET_IFWL_DATETIMEPICKER_H_ + +#include "xfa/fwl/core/ifwl_widget.h" +#include "xfa/fwl/core/ifwl_dataprovider.h" +#include "xfa/fwl/core/cfwl_event.h" +#include "xfa/fwl/core/cfwl_widgetimpproperties.h" + +#define FWL_CLASS_DateTimePicker L"FWL_DATETIMEPICKER" +#define FWL_CLASSHASH_DateTimePicker 3851176257 +#define FWL_STYLEEXT_DTP_AllowEdit (1L << 0) +#define FWL_STYLEEXT_DTP_LongDateFormat (0L << 1) +#define FWL_STYLEEXT_DTP_ShortDateFormat (1L << 1) +#define FWL_STYLEEXT_DTP_TimeFormat (2L << 1) +#define FWL_STYLEEXT_DTP_Spin (1L << 3) +#define FWL_STYLEEXT_DTP_EditHNear (0L << 4) +#define FWL_STYLEEXT_DTP_EditHCenter (1L << 4) +#define FWL_STYLEEXT_DTP_EditHFar (2L << 4) +#define FWL_STYLEEXT_DTP_EditVNear (0L << 6) +#define FWL_STYLEEXT_DTP_EditVCenter (1L << 6) +#define FWL_STYLEEXT_DTP_EditVFar (2L << 6) +#define FWL_STYLEEXT_DTP_EditJustified (1L << 8) +#define FWL_STYLEEXT_DTP_EditDistributed (2L << 8) +#define FWL_STYLEEXT_DTP_EditHAlignMask (3L << 4) +#define FWL_STYLEEXT_DTP_EditVAlignMask (3L << 6) +#define FWL_STYLEEXT_DTP_EditHAlignModeMask (3L << 8) +#define FWL_PART_DTP_Border 1 +#define FWL_PART_DTP_Edge 2 +#define FWL_PART_DTP_Background 3 +#define FWL_PART_DTP_DropDownButton 4 +#define FWL_PARTSTATE_DTP_Normal (0L << 0) +#define FWL_PARTSTATE_DTP_Hovered (1L << 0) +#define FWL_PARTSTATE_DTP_Pressed (2L << 0) +#define FWL_PARTSTATE_DTP_Disabled (3L << 0) +#define FWL_EVT_DTP_DropDown L"FWL_EVENT_DTP_DropDown" +#define FWL_EVTHASH_DTP_DropDown 264728733 +#define FWL_EVT_DTP_CloseUp L"FWL_EVENT_DTP_CloseUp" +#define FWL_EVTHASH_DTP_CloseUp 4280973803 +#define FWL_EVT_DTP_EditChanged L"FWL_EVENT_DTP_EditChanged" +#define FWL_EVTHASH_DTP_EditChanged 4009610944 +#define FWL_EVT_DTP_HoverChanged L"FWL_EVENT_DTP_HoverChanged" +#define FWL_EVTHASH_DTP_HoverChanged 686674750 +#define FWL_EVT_DTP_SelectChanged L"FWL_EVENT_DTP_SelectChanged" +#define FWL_EVTHASH_DTP_SelectChanged 1589616858 + +BEGIN_FWL_EVENT_DEF(CFWL_Event_DtpDropDown, FWL_EVTHASH_DTP_DropDown) +END_FWL_EVENT_DEF + +BEGIN_FWL_EVENT_DEF(CFWL_Event_DtpCloseUp, FWL_EVTHASH_DTP_CloseUp) +END_FWL_EVENT_DEF + +BEGIN_FWL_EVENT_DEF(CFWL_Event_DtpEditChanged, FWL_EVTHASH_DTP_EditChanged) +CFX_WideString m_wsText; +END_FWL_EVENT_DEF + +BEGIN_FWL_EVENT_DEF(CFWL_Event_DtpHoverChanged, FWL_EVTHASH_DTP_HoverChanged) +int32_t hoverday; +END_FWL_EVENT_DEF + +BEGIN_FWL_EVENT_DEF(CFWL_Event_DtpSelectChanged, FWL_EVTHASH_DTP_SelectChanged) +int32_t iYear; +int32_t iMonth; +int32_t iDay; +END_FWL_EVENT_DEF + +class IFWL_DateTimePickerDP : public IFWL_DataProvider { + public: + virtual FWL_ERR GetToday(IFWL_Widget* pWidget, + int32_t& iYear, + int32_t& iMonth, + int32_t& iDay) = 0; +}; + +class IFWL_DateTimePicker : public IFWL_Widget { + public: + static IFWL_DateTimePicker* Create(const CFWL_WidgetImpProperties& properties, + IFWL_Widget* pOuter); + + FWL_ERR GetCurSel(int32_t& iYear, int32_t& iMonth, int32_t& iDay); + FWL_ERR SetCurSel(int32_t iYear, int32_t iMonth, int32_t iDay); + FWL_ERR SetEditText(const CFX_WideString& wsText); + FWL_ERR GetEditText(CFX_WideString& wsText, + int32_t nStart = 0, + int32_t nCount = -1) const; + int32_t CountSelRanges(); + int32_t GetSelRange(int32_t nIndex, int32_t& nStart); + FX_BOOL CanUndo(); + FX_BOOL CanRedo(); + FX_BOOL Undo(); + FX_BOOL Redo(); + FX_BOOL CanCopy(); + FX_BOOL CanCut(); + FX_BOOL CanSelectAll(); + FX_BOOL Copy(CFX_WideString& wsCopy); + FX_BOOL Cut(CFX_WideString& wsCut); + FX_BOOL Paste(const CFX_WideString& wsPaste); + FX_BOOL SelectAll(); + FX_BOOL Delete(); + FX_BOOL DeSelect(); + FWL_ERR GetBBox(CFX_RectF& rect); + FWL_ERR SetEditLimit(int32_t nLimit); + FWL_ERR ModifyEditStylesEx(FX_DWORD dwStylesExAdded, + FX_DWORD dwStylesExRemoved); + + protected: + IFWL_DateTimePicker(); +}; + +#endif // XFA_FWL_BASEWIDGET_IFWL_DATETIMEPICKER_H_ diff --git a/xfa/fwl/basewidget/ifwl_edit.h b/xfa/fwl/basewidget/ifwl_edit.h new file mode 100644 index 0000000000..74b66e8779 --- /dev/null +++ b/xfa/fwl/basewidget/ifwl_edit.h @@ -0,0 +1,178 @@ +// Copyright 2014 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef XFA_FWL_BASEWIDGET_IFWL_EDIT_H_ +#define XFA_FWL_BASEWIDGET_IFWL_EDIT_H_ + +#include + +#include "xfa/include/fwl/lightwidget/widget.h" +#include "xfa/fwl/core/ifwl_dataprovider.h" + +#define FWL_CLASS_Edit L"FWL_EDIT" +#define FWL_CLASSHASH_Edit 2893987822 +#define FWL_STYLEEXT_EDT_ReadOnly (1L << 0) +#define FWL_STYLEEXT_EDT_MultiLine (1L << 1) +#define FWL_STYLEEXT_EDT_WantReturn (1L << 2) +#define FWL_STYLEEXT_EDT_NoHideSel (1L << 3) +#define FWL_STYLEEXT_EDT_AutoHScroll (1L << 4) +#define FWL_STYLEEXT_EDT_AutoVScroll (1L << 5) +#define FWL_STYLEEXT_EDT_NoRedoUndo (1L << 6) +#define FWL_STYLEEXT_EDT_Validate (1L << 7) +#define FWL_STYLEEXT_EDT_Password (1L << 8) +#define FWL_STYLEEXT_EDT_Number (1L << 9) +#define FWL_STYLEEXT_EDT_HSelfAdaption (1L << 10) +#define FWL_STYLEEXT_EDT_VSelfAdaption (1L << 11) +#define FWL_STYLEEXT_EDT_VerticalLayout (1L << 12) +#define FWL_STYLEEXT_EDT_VerticalChars (1L << 13) +#define FWL_STYLEEXT_EDT_ReverseLine (1L << 14) +#define FWL_STYLEEXT_EDT_ArabicShapes (1L << 15) +#define FWL_STYLEEXT_EDT_ExpandTab (1L << 16) +#define FWL_STYLEEXT_EDT_CombText (1L << 17) +#define FWL_STYLEEXT_EDT_HNear (0L << 18) +#define FWL_STYLEEXT_EDT_HCenter (1L << 18) +#define FWL_STYLEEXT_EDT_HFar (2L << 18) +#define FWL_STYLEEXT_EDT_VNear (0L << 20) +#define FWL_STYLEEXT_EDT_VCenter (1L << 20) +#define FWL_STYLEEXT_EDT_VFar (2L << 20) +#define FWL_STYLEEXT_EDT_Justified (1L << 22) +#define FWL_STYLEEXT_EDT_Distributed (2L << 22) +#define FWL_STYLEEXT_EDT_HAlignMask (3L << 18) +#define FWL_STYLEEXT_EDT_VAlignMask (3L << 20) +#define FWL_STYLEEXT_EDT_HAlignModeMask (3L << 22) +#define FWL_STYLEEXT_EDT_InnerCaret (1L << 24) +#define FWL_STYLEEXT_EDT_ShowScrollbarFocus (1L << 25) +#define FWL_STYLEEXT_EDT_OuterScrollbar (1L << 26) +#define FWL_STYLEEXT_EDT_LastLineHeight (1L << 27) +#define FWL_STATE_EDT_Editing (1 << FWL_WGTSTATE_MAX) +#define FWL_PART_EDT_Border 1 +#define FWL_PART_EDT_Edge 2 +#define FWL_PART_EDT_Background 3 +#define FWL_PART_EDT_CombTextLine 4 +#define FWL_PARTDATA_EDT_Background 0 +#define FWL_PARTDATA_EDT_StaticBackground 1 +#define FWL_PARTSTATE_EDT_Normal (0L << 0) +#define FWL_PARTSTATE_EDT_ReadOnly (1L << 0) +#define FWL_PARTSTATE_EDT_Disable (2L << 0) +#define FWL_EVT_EDT_TextChanged L"FWL_EVENT_EDT_TextChanged" +#define FWL_EVTHASH_EDT_TextChanged 1064022132 +#define FWL_EVT_EDT_PreSelfAdaption L"FWL_EVENT_PreSelfAdaption" +#define FWL_EVTHASH_EDT_PreSelfAdaption 1001979178 +#define FWL_EVT_EDT_Validate L"FWL_EVTHASH_EDT_Validate" +#define FWL_EVTHASH_EDT_Validate 3373308608 +#define FWL_EVT_EDT_CheckWord L"FWL_EVTHASH_EDT_CheckWord" +#define FWL_EVTHASH_EDT_CheckWord 2897181520 +#define FWL_EVT_EDT_GetSuggestWords L"FWL_EVTHASH_EDT_GetSuggestWords" +#define FWL_EVTHASH_EDT_GetSuggestWords 315782791 +#define FWL_EVT_EDT_TextFull L"FWL_EVTHASH_EDT_TextFull" +#define FWL_EVTHASH_EDT_TextFull 2158580174 +#define FWL_EDT_FIND_FLAGS_Prev (0L << 0) +#define FWL_EDT_FIND_FLAGS_Next (1L << 0) +#define FWL_EDT_FIND_FLAGS_WholeWord (1L << 1) +#define FWL_EDT_FIND_FLAGS_NoCase (1L << 2) + +typedef struct FWL_HEDTFIND_ { void* pData; } * FWL_HEDTFIND; + +enum FWL_EDT_TEXTCHANGED { + FWL_EDT_TEXTCHANGED_Insert = 0, + FWL_EDT_TEXTCHANGED_Delete, + FWL_EDT_TEXTCHANGED_Replace, +}; + +BEGIN_FWL_EVENT_DEF(CFWL_EvtEdtTextChanged, FWL_EVTHASH_EDT_TextChanged) +int32_t nChangeType; +CFX_WideString wsInsert; +CFX_WideString wsDelete; +CFX_WideString wsPrevText; +END_FWL_EVENT_DEF + +BEGIN_FWL_EVENT_DEF(CFWL_EvtEdtTextFull, FWL_EVTHASH_EDT_TextFull) +END_FWL_EVENT_DEF + +BEGIN_FWL_EVENT_DEF(CFWL_EvtEdtPreSelfAdaption, FWL_EVTHASH_EDT_PreSelfAdaption) +FX_BOOL bHSelfAdaption; +FX_BOOL bVSelfAdaption; +CFX_RectF rtAfterChange; +END_FWL_EVENT_DEF + +BEGIN_FWL_EVENT_DEF(CFWL_EvtEdtValidate, FWL_EVTHASH_EDT_Validate) +IFWL_Widget* pDstWidget; +CFX_WideString wsInsert; +FX_BOOL bValidate; +END_FWL_EVENT_DEF + +BEGIN_FWL_EVENT_DEF(CFWL_EvtEdtCheckWord, FWL_EVTHASH_EDT_CheckWord) +CFX_ByteString bsWord; +FX_BOOL bCheckWord; +END_FWL_EVENT_DEF + +BEGIN_FWL_EVENT_DEF(CFWL_EvtEdtGetSuggestWords, FWL_EVTHASH_EDT_GetSuggestWords) +FX_BOOL bSuggestWords; +CFX_ByteString bsWord; +std::vector bsArraySuggestWords; +END_FWL_EVENT_DEF + +class CFWL_WidgetImpProperties; + +class IFWL_EditDP : public IFWL_DataProvider {}; + +class IFWL_Edit : public IFWL_Widget { + public: + static IFWL_Edit* Create(const CFWL_WidgetImpProperties& properties, + IFWL_Widget* pOuter); + static IFWL_Edit* CreateComboEdit(const CFWL_WidgetImpProperties& properties, + IFWL_Widget* pOuter); + + FWL_ERR SetText(const CFX_WideString& wsText); + int32_t GetTextLength() const; + FWL_ERR GetText(CFX_WideString& wsText, + int32_t nStart = 0, + int32_t nCount = -1) const; + FWL_ERR ClearText(); + int32_t GetCaretPos() const; + int32_t SetCaretPos(int32_t nIndex, FX_BOOL bBefore = TRUE); + FWL_ERR AddSelRange(int32_t nStart, int32_t nCount = -1); + int32_t CountSelRanges(); + int32_t GetSelRange(int32_t nIndex, int32_t& nStart); + FWL_ERR ClearSelections(); + int32_t GetLimit(); + FWL_ERR SetLimit(int32_t nLimit); + FWL_ERR SetAliasChar(FX_WCHAR wAlias); + FWL_ERR SetFormatString(const CFX_WideString& wsFormat); + FWL_ERR Insert(int32_t nStart, const FX_WCHAR* lpText, int32_t nLen); + FWL_ERR DeleteSelections(); + FWL_ERR DeleteRange(int32_t nStart, int32_t nCount = -1); + FWL_ERR ReplaceSelections(const CFX_WideStringC& wsReplace); + FWL_ERR Replace(int32_t nStart, + int32_t nLen, + const CFX_WideStringC& wsReplace); + FWL_ERR DoClipboard(int32_t iCmd); + FX_BOOL Copy(CFX_WideString& wsCopy); + FX_BOOL Cut(CFX_WideString& wsCut); + FX_BOOL Paste(const CFX_WideString& wsPaste); + FX_BOOL Delete(); + FX_BOOL Redo(const CFX_ByteStringC& bsRecord); + FX_BOOL Undo(const CFX_ByteStringC& bsRecord); + FX_BOOL Undo(); + FX_BOOL Redo(); + FX_BOOL CanUndo(); + FX_BOOL CanRedo(); + FWL_ERR SetTabWidth(FX_FLOAT fTabWidth, FX_BOOL bEquidistant); + FWL_ERR SetOuter(IFWL_Widget* pOuter); + FWL_ERR SetNumberRange(int32_t iMin, int32_t iMax); + FWL_ERR SetBackColor(FX_DWORD dwColor); + FWL_ERR SetFont(const CFX_WideString& wsFont, FX_FLOAT fSize); + void SetScrollOffset(FX_FLOAT fScrollOffset); + FX_BOOL GetSuggestWords(CFX_PointF pointf, + std::vector& sSuggest); + FX_BOOL ReplaceSpellCheckWord(CFX_PointF pointf, + const CFX_ByteStringC& bsReplace); + + protected: + IFWL_Edit(); +}; + +#endif // XFA_FWL_BASEWIDGET_IFWL_EDIT_H_ diff --git a/xfa/fwl/basewidget/ifwl_listbox.h b/xfa/fwl/basewidget/ifwl_listbox.h new file mode 100644 index 0000000000..7bec4edd18 --- /dev/null +++ b/xfa/fwl/basewidget/ifwl_listbox.h @@ -0,0 +1,142 @@ +// Copyright 2014 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef XFA_FWL_BASEWIDGET_IFWL_LISTBOX_H_ +#define XFA_FWL_BASEWIDGET_IFWL_LISTBOX_H_ + +#include "xfa/fwl/core/ifwl_widget.h" +#include "xfa/fwl/core/ifwl_dataprovider.h" +#include "xfa/fwl/core/cfwl_event.h" +#include "xfa/fwl/core/cfwl_widgetimpproperties.h" + +#define FWL_CLASS_ListBox L"FWL_LISTBOX" +#define FWL_CLASSHASH_ListBox 1777358317 +#define FWL_STYLEEXT_LTB_MultiSelection (1L << 0) +#define FWL_STYLEEXT_LTB_Sort (1L << 1) +#define FWL_STYLEEXT_LTB_ShowScrollBarAlaways (1L << 2) +#define FWL_STYLEEXT_LTB_MultiColumn (1L << 3) +#define FWL_STYLEEXT_LTB_LeftAlign (0L << 4) +#define FWL_STYLEEXT_LTB_CenterAlign (1L << 4) +#define FWL_STYLEEXT_LTB_RightAlign (2L << 4) +#define FWL_STYLEEXT_LTB_MultiLine (1L << 6) +#define FWL_STYLEEXT_LTB_OwnerDraw (1L << 7) +#define FWL_STYLEEXT_LTB_Icon (1L << 8) +#define FWL_STYLEEXT_LTB_Check (1L << 9) +#define FWL_STYLEEXT_LTB_AlignMask (3L << 4) +#define FWL_STYLEEXT_LTB_ShowScrollBarFocus (1L << 10) +#define FWL_ITEMSTATE_LTB_Selected (1L << 0) +#define FWL_ITEMSTATE_LTB_Focused (1L << 1) +#define FWL_ITEMSTATE_LTB_Checked (1L << 2) +#define FWL_PART_LTB_Border 1 +#define FWL_PART_LTB_Edge 2 +#define FWL_PART_LTB_Background 3 +#define FWL_PART_LTB_ListItem 4 +#define FWL_PART_LTB_Check 5 +#define FWL_PART_LTB_Icon 6 +#define FWL_PARTSTATE_LTB_Normal (0L << 0) +#define FWL_PARTSTATE_LTB_Selected (1L << 0) +#define FWL_PARTSTATE_LTB_Disabled (2L << 0) +#define FWL_PARTSTATE_LTB_Focused (1L << 2) +#define FWL_PARTSTATE_LTB_UnChecked (0L << 3) +#define FWL_PARTSTATE_LTB_Checked (1L << 3) +#define FWL_PARTSTATE_LTB_Mask (3L << 0) +#define FWL_WGTHITTEST_LTB_Item FWL_WGTHITTEST_MAX + 1 +#define FWL_WGTHITTEST_LTB_HScrollBar FWL_WGTHITTEST_MAX + 2 +#define FWL_WGTHITTEST_LTB_VScrollBar FWL_WGTHITTEST_MAX + 3 +#define FWL_EVT_LTB_SelChanged L"FWL_EVENT_LTB_SelChanged" +#define FWL_EVT_LTB_DrawItem L"FWL_EVENT_LTB_DrawItem" +#define FWL_EVTHASH_LTB_SelChanged 1701781688 +#define FWL_EVTHASH_LTB_DrawItem 1050853991 + +typedef struct FWL_HLISTITEM_ { void* pData; } * FWL_HLISTITEM; + +class CFX_DIBitmap; +class IFWL_ListBoxDP; + +struct FWL_ListBoxItemData { + IFWL_ListBoxDP* pDataProvider; + int32_t iIndex; +}; + +BEGIN_FWL_EVENT_DEF(CFWL_EvtLtbSelChanged, FWL_EVTHASH_LTB_SelChanged) +CFX_Int32Array iarraySels; +END_FWL_EVENT_DEF + +BEGIN_FWL_EVENT_DEF(CFWL_EvtLtbDrawItem, FWL_EVTHASH_LTB_DrawItem) +CFX_Graphics* m_pGraphics; +CFX_Matrix m_matrix; +int32_t m_index; +CFX_RectF m_rect; +END_FWL_EVENT_DEF + +class IFWL_ListBoxDP : public IFWL_DataProvider { + public: + virtual int32_t CountItems(IFWL_Widget* pWidget) = 0; + virtual FWL_HLISTITEM GetItem(IFWL_Widget* pWidget, int32_t nIndex) = 0; + virtual int32_t GetItemIndex(IFWL_Widget* pWidget, FWL_HLISTITEM hItem) = 0; + virtual FX_BOOL SetItemIndex(IFWL_Widget* pWidget, + FWL_HLISTITEM hItem, + int32_t nIndex) = 0; + virtual FX_DWORD GetItemStyles(IFWL_Widget* pWidget, FWL_HLISTITEM hItem) = 0; + virtual FWL_ERR GetItemText(IFWL_Widget* pWidget, + FWL_HLISTITEM hItem, + CFX_WideString& wsText) = 0; + virtual FWL_ERR GetItemRect(IFWL_Widget* pWidget, + FWL_HLISTITEM hItem, + CFX_RectF& rtItem) = 0; + virtual void* GetItemData(IFWL_Widget* pWidget, FWL_HLISTITEM hItem) = 0; + virtual FWL_ERR SetItemStyles(IFWL_Widget* pWidget, + FWL_HLISTITEM hItem, + FX_DWORD dwStyle) = 0; + virtual FWL_ERR SetItemText(IFWL_Widget* pWidget, + FWL_HLISTITEM hItem, + const FX_WCHAR* pszText) = 0; + virtual FWL_ERR SetItemRect(IFWL_Widget* pWidget, + FWL_HLISTITEM hItem, + const CFX_RectF& rtItem) = 0; + virtual FX_FLOAT GetItemHeight(IFWL_Widget* pWidget) = 0; + virtual CFX_DIBitmap* GetItemIcon(IFWL_Widget* pWidget, + FWL_HLISTITEM hItem) = 0; + virtual FWL_ERR GetItemCheckRect(IFWL_Widget* pWidget, + FWL_HLISTITEM hItem, + CFX_RectF& rtCheck) = 0; + virtual FWL_ERR SetItemCheckRect(IFWL_Widget* pWidget, + FWL_HLISTITEM hItem, + const CFX_RectF& rtCheck) = 0; + virtual FX_DWORD GetItemCheckState(IFWL_Widget* pWidget, + FWL_HLISTITEM hItem) = 0; + virtual FWL_ERR SetItemCheckState(IFWL_Widget* pWidget, + FWL_HLISTITEM hItem, + FX_DWORD dwCheckState) = 0; +}; + +class IFWL_ListBoxCompare { + public: + virtual ~IFWL_ListBoxCompare() {} + virtual int32_t Compare(FWL_HLISTITEM hLeft, FWL_HLISTITEM hRight) = 0; +}; + +class IFWL_ListBox : public IFWL_Widget { + public: + static IFWL_ListBox* Create(const CFWL_WidgetImpProperties& properties, + IFWL_Widget* pOuter); + static IFWL_ListBox* CreateComboList( + const CFWL_WidgetImpProperties& properties, + IFWL_Widget* pOuter); + + int32_t CountSelItems(); + FWL_HLISTITEM GetSelItem(int32_t nIndexSel); + int32_t GetSelIndex(int32_t nIndex); + FWL_ERR SetSelItem(FWL_HLISTITEM hItem, FX_BOOL bSelect = TRUE); + FWL_ERR GetItemText(FWL_HLISTITEM hItem, CFX_WideString& wsText); + FWL_ERR GetScrollPos(FX_FLOAT& fPos, FX_BOOL bVert = TRUE); + FWL_ERR* Sort(IFWL_ListBoxCompare* pCom); + + protected: + IFWL_ListBox(); +}; + +#endif // XFA_FWL_BASEWIDGET_IFWL_LISTBOX_H_ diff --git a/xfa/fwl/basewidget/ifwl_monthcalendar.h b/xfa/fwl/basewidget/ifwl_monthcalendar.h new file mode 100644 index 0000000000..8f9ab9ae3e --- /dev/null +++ b/xfa/fwl/basewidget/ifwl_monthcalendar.h @@ -0,0 +1,139 @@ +// Copyright 2014 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef XFA_FWL_BASEWIDGET_IFWL_MONTHCALENDAR_H_ +#define XFA_FWL_BASEWIDGET_IFWL_MONTHCALENDAR_H_ + +#include "xfa/fwl/core/ifwl_widget.h" +#include "xfa/fwl/core/cfwl_event.h" +#include "xfa/fwl/core/ifwl_dataprovider.h" +#include "xfa/fwl/core/cfwl_widgetimpproperties.h" + +#define FWL_CLASS_MonthCalendar L"FWL_MONTHCALENDAR" +#define FWL_CLASSHASH_MonthCalendar 2733931374 +#define FWL_STYLEEXT_MCD_MultiSelect (1L << 0) +#define FWL_STYLEEXT_MCD_NoToday (1L << 1) +#define FWL_STYLEEXT_MCD_NoTodayCircle (1L << 2) +#define FWL_STYLEEXT_MCD_WeekNumbers (1L << 3) +#define FWL_WGTCAPACITY_MC_HEADER_WIDTH 12 +#define FWL_WGTCAPACITY_MC_HEADER_Height 13 +#define FWL_WGTCAPACITY_MC_HEADER_BTN_WIDTH 14 +#define FWL_WGTCAPACITY_MC_HEADER_BTN_HEIGHT 15 +#define FWL_WGTCAPACITY_MC_HEADER_BTN_HMARGIN 16 +#define FWL_WGTCAPACITY_MC_HEADER_BTN_VMARGIN 17 +#define FWL_WGTCAPACITY_MC_HEADER_TEXTWIDHT 18 +#define FWL_WGTCAPACITY_MC_HEADER_TEXTHEIGHT 19 +#define FWL_WGTCAPACITY_MC_HEADER_TEXT_HMARGIN 20 +#define FWL_WGTCAPACITY_MC_HEADER_TEXT_VMARGIN 21 +#define FWL_WGTCAPACITY_MC_HSEP_WIDTH 22 +#define FWL_WGTCAPACITY_MC_HSEP_HEIGHT 23 +#define FWL_WGTCAPACITY_MC_VSEP_WIDTH 24 +#define FWL_WGTCAPACITY_MC_VSEP_HEIGHT 25 +#define FWL_WGTCAPACITY_MC_WEEKNUM_WIDTH 26 +#define FWL_WGTCAPACITY_MC_SEP_DOFFSET 40 +#define FWL_WGTCAPACITY_MC_SEP_X 27 +#define FWL_WGTCAPACITY_MC_SEP_Y 28 +#define FWL_WGTCAPACITY_MC_WEEKNUM_HEIGHT 29 +#define FWL_WGTCAPACITY_MC_WEEK_WIDTH 30 +#define FWL_WGTCAPACITY_MC_WEEK_HEIGHT 31 +#define FWL_WGTCAPACITY_MC_DATES_CELL_WIDTH 32 +#define FWL_WGTCAPACITY_MC_DATES_CELL_HEIGHT 33 +#define FWL_WGTCAPACITY_MC_TODAY_WIDHT 34 +#define FWL_WGTCAPACITY_MC_TODAY_HEIGHT 35 +#define FWL_WGTCAPACITY_MC_TODAY_FLAG_WIDHT 36 +#define FWL_WGTCAPACITY_MC_WIDTH 37 +#define FWL_WGTCAPACITY_MC_HEIGHT 38 +#define FWL_ITEMSTATE_MCD_Nomal (0L << 0) +#define FWL_ITEMSTATE_MCD_Flag (1L << 0) +#define FWL_ITEMSTATE_MCD_Selected (1L << 1) +#define FWL_ITEMSTATE_MCD_Focused (1L << 2) +#define FWL_PART_MCD_Border 1 +#define FWL_PART_MCD_Edge 2 +#define FWL_PART_MCD_Background 3 +#define FWL_PART_MCD_LBtn 4 +#define FWL_PART_MCD_RBtn 5 +#define FWL_PART_MCD_HSeparator 6 +#define FWL_PART_MCD_VSeparator 7 +#define FWL_PART_MCD_TodayCircle 8 +#define FWL_PART_MCD_DateInCircle 9 +#define FWL_PART_MCD_DateInBK 10 +#define FWL_PART_MCD_Caption 9 +#define FWL_PART_MCD_DatesIn 10 +#define FWL_PART_MCD_DatesOut 11 +#define FWL_PART_MCD_Week 12 +#define FWL_PART_MCD_Today 13 +#define FWL_PART_MCD_Header 14 +#define FWL_PART_MCD_WeekNum 15 +#define FWL_PART_MCD_WeekNumSep 16 +#define FWL_PARTSTATE_MCD_Normal (0L << 0) +#define FWL_PARTSTATE_MCD_Pressed (1L << 0) +#define FWL_PARTSTATE_MCD_Hovered (2L << 0) +#define FWL_PARTSTATE_MCD_Selected (3L << 0) +#define FWL_PARTSTATE_MCD_LSelected (1L << 2) +#define FWL_PARTSTATE_MCD_RSelected (2L << 2) +#define FWL_PARTSTATE_MCD_Flagged (1L << 3) +#define FWL_PARTSTATE_MCD_Focused (1L << 4) +#define FWL_MCCAPACITY_Sun FWL_WGTCAPACITY_MAX + 5 +#define FWL_MCCAPACITY_Mon FWL_WGTCAPACITY_MAX + 6 +#define FWL_MCCAPACITY_Tue FWL_WGTCAPACITY_MAX + 7 +#define FWL_MCCAPACITY_Wed FWL_WGTCAPACITY_MAX + 8 +#define FWL_MCCAPACITY_Thu FWL_WGTCAPACITY_MAX + 9 +#define FWL_MCCAPACITY_Fri FWL_WGTCAPACITY_MAX + 10 +#define FWL_MCCAPACITY_Sat FWL_WGTCAPACITY_MAX + 11 +#define FWL_MCCAPACITY_January FWL_WGTCAPACITY_MAX + 12 +#define FWL_MCCAPACITY_February FWL_WGTCAPACITY_MAX + 13 +#define FWL_MCCAPACITY_March FWL_WGTCAPACITY_MAX + 14 +#define FWL_MCCAPACITY_April FWL_WGTCAPACITY_MAX + 15 +#define FWL_MCCAPACITY_May FWL_WGTCAPACITY_MAX + 16 +#define FWL_MCCAPACITY_June FWL_WGTCAPACITY_MAX + 17 +#define FWL_MCCAPACITY_July FWL_WGTCAPACITY_MAX + 18 +#define FWL_MCCAPACITY_August FWL_WGTCAPACITY_MAX + 19 +#define FWL_MCCAPACITY_September FWL_WGTCAPACITY_MAX + 20 +#define FWL_MCCAPACITY_October FWL_WGTCAPACITY_MAX + 21 +#define FWL_MCCAPACITY_November FWL_WGTCAPACITY_MAX + 22 +#define FWL_MCCAPACITY_December FWL_WGTCAPACITY_MAX + 23 +#define FWL_MCCAPACITY_Today FWL_WGTCAPACITY_MAX + 24 +#define FWL_EVENT_MCD_DATESELECTED L"FWL_EVENT_MCD_DateSelected" +#define FWL_EVT_MCD_DateChanged L"FWL_EVENT_MCD_DateChanged" +#define FWL_NOTEHASH_MCD_DATASELECTED 1085596932 +#define FWL_EVTHASH_MCD_DateChanged 54212227 + +BEGIN_FWL_EVENT_DEF(CFWL_Event_McdDateSelected, FWL_NOTEHASH_MCD_DATASELECTED) +int32_t m_iStartDay; +int32_t m_iEndDay; +END_FWL_EVENT_DEF + +BEGIN_FWL_EVENT_DEF(CFWL_EventMcdDateChanged, FWL_EVTHASH_MCD_DateChanged) +int32_t m_iOldYear; +int32_t m_iOldMonth; +int32_t m_iStartDay; +int32_t m_iEndDay; +END_FWL_EVENT_DEF + +class IFWL_MonthCalendarDP : public IFWL_DataProvider { + public: + virtual int32_t GetCurDay(IFWL_Widget* pWidget) = 0; + virtual int32_t GetCurMonth(IFWL_Widget* pWidget) = 0; + virtual int32_t GetCurYear(IFWL_Widget* pWidget) = 0; +}; + +class IFWL_MonthCalendar : public IFWL_Widget { + public: + static IFWL_MonthCalendar* Create(const CFWL_WidgetImpProperties& properties, + IFWL_Widget* pOuter); + + int32_t CountSelect(); + FX_BOOL GetSelect(int32_t& iYear, + int32_t& iMonth, + int32_t& iDay, + int32_t nIndex = 0); + FX_BOOL SetSelect(int32_t iYear, int32_t iMonth, int32_t iDay); + + protected: + IFWL_MonthCalendar(); +}; + +#endif // XFA_FWL_BASEWIDGET_IFWL_MONTHCALENDAR_H_ diff --git a/xfa/fwl/basewidget/ifwl_picturebox.h b/xfa/fwl/basewidget/ifwl_picturebox.h new file mode 100644 index 0000000000..acc34f78d4 --- /dev/null +++ b/xfa/fwl/basewidget/ifwl_picturebox.h @@ -0,0 +1,59 @@ +// Copyright 2014 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef XFA_FWL_BASEWIDGET_IFWL_PICTUREBOX_H_ +#define XFA_FWL_BASEWIDGET_IFWL_PICTUREBOX_H_ + +#include "xfa/fwl/core/fwl_widgetimp.h" +#include "xfa/fwl/core/ifwl_dataprovider.h" +#include "xfa/fwl/core/ifwl_widget.h" +#include "xfa/fwl/core/cfwl_widgetimpproperties.h" +#include "xfa/fwl/core/fwl_error.h" + +#define FWL_CLASS_PictureBox L"FWL_PICTUREBOX" +#define FWL_CLASSHASH_PictureBox 2974721741 +#define FWL_STYLEEXT_PTB_Left 0L << 0 +#define FWL_STYLEEXT_PTB_Center 1L << 0 +#define FWL_STYLEEXT_PTB_Right 2L << 0 +#define FWL_STYLEEXT_PTB_Top 0L << 2 +#define FWL_STYLEEXT_PTB_Vcenter 1L << 2 +#define FWL_STYLEEXT_PTB_Bottom 2L << 2 +#define FWL_STYLEEXT_PTB_Normal 0L << 4 +#define FWL_STYLEEXT_PTB_AutoSize 1L << 4 +#define FWL_STYLEEXT_PTB_StretchImage 2L << 4 +#define FWL_STYLEEXT_PTB_StretchHImage 3L << 4 +#define FWL_STYLEEXT_PTB_StretchVImage 4L << 4 +#define FWL_STYLEEXT_PTB_HAlignMask 3L << 0 +#define FWL_STYLEEXT_PTB_VAlignMask 3L << 2 +#define FWL_STYLEEXT_PTB_StretchAlignMask 7L << 4 +#define FWL_PART_PTB_Border 1 +#define FWL_PART_PTB_Edge 2 +#define FWL_PART_PTB_Image 3 +#define FWL_PARTSTATE_PTB_Normal (0L << 0) +#define FWL_PARTSTATE_PTB_Disabled (1L << 0) + +class CFX_DIBitmap; + +class IFWL_PictureBoxDP : public IFWL_DataProvider { + public: + virtual CFX_DIBitmap* GetPicture(IFWL_Widget* pWidget) = 0; + virtual CFX_DIBitmap* GetErrorPicture(IFWL_Widget* pWidget) = 0; + virtual CFX_DIBitmap* GetInitialPicture(IFWL_Widget* pWidget) = 0; + virtual int32_t GetOpacity(IFWL_Widget* pWidget) = 0; + virtual int32_t GetFlipMode(IFWL_Widget* pWidget) = 0; + virtual FWL_ERR GetMatrix(IFWL_Widget* pWidget, CFX_Matrix& matrix) = 0; +}; + +class IFWL_PictureBox : public IFWL_Widget { + public: + static IFWL_PictureBox* Create(const CFWL_WidgetImpProperties& properties, + IFWL_Widget* pOuter); + + protected: + IFWL_PictureBox(); +}; + +#endif // XFA_FWL_BASEWIDGET_IFWL_PICTUREBOX_H_ diff --git a/xfa/fwl/basewidget/ifwl_pushbutton.h b/xfa/fwl/basewidget/ifwl_pushbutton.h new file mode 100644 index 0000000000..400b0c1b38 --- /dev/null +++ b/xfa/fwl/basewidget/ifwl_pushbutton.h @@ -0,0 +1,61 @@ +// Copyright 2014 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef XFA_FWL_BASEWIDGET_IFWL_PUSHBUTTON_H_ +#define XFA_FWL_BASEWIDGET_IFWL_PUSHBUTTON_H_ + +#include "xfa/fwl/core/fwl_widgetimp.h" +#include "xfa/fwl/core/ifwl_dataprovider.h" +#include "xfa/fwl/core/cfwl_widgetimpproperties.h" +#include "xfa/fwl/core/ifwl_widget.h" + +#define FWL_CLASS_PushButton L"FWL_PUSHBUTTON" +#define FWL_CLASSHASH_PushButton 3521614244 +#define FWL_STYLEEXT_PSB_Left (0L << 0) +#define FWL_STYLEEXT_PSB_Center (1L << 0) +#define FWL_STYLEEXT_PSB_Right (2L << 0) +#define FWL_STYLEEXT_PSB_Top (0L << 2) +#define FWL_STYLEEXT_PSB_VCenter (1L << 2) +#define FWL_STYLEEXT_PSB_Bottom (2L << 2) +#define FWL_STYLEEXT_PSB_TextOnly (0L << 4) +#define FWL_STYLEEXT_PSB_IconOnly (1L << 4) +#define FWL_STYLEEXT_PSB_TextIcon (2L << 4) +#define FWL_STYLEEXT_PSB_HLayoutMask (3L << 0) +#define FWL_STYLEEXT_PSB_VLayoutMask (3L << 2) +#define FWL_STYLEEXT_PSB_ModeMask (3L << 4) +#define FWL_STATE_PSB_Hovered (1 << FWL_WGTSTATE_MAX) +#define FWL_STATE_PSB_Pressed (1 << (FWL_WGTSTATE_MAX + 1)) +#define FWL_STATE_PSB_Default (1 << (FWL_WGTSTATE_MAX + 2)) +#define FWL_WGTCAPACITY_PSB_Margin (FWL_WGTCAPACITY_MAX + 1) +#define FWL_PART_PSB_Border 1 +#define FWL_PART_PSB_Edge 2 +#define FWL_PART_PSB_Background 3 +#define FWL_PART_PSB_Caption 4 +#define FWL_PARTSTATE_PSB_Normal (0L << 0) +#define FWL_PARTSTATE_PSB_Pressed (1L << 0) +#define FWL_PARTSTATE_PSB_Hovered (2L << 0) +#define FWL_PARTSTATE_PSB_Default (3L << 0) +#define FWL_PARTSTATE_PSB_Disabled (4L << 0) +#define FWL_PARTSTATE_PSB_Focused (1L << 3) +#define FWL_PARTSTATE_PSB_Mask (7L << 0) + +class CFX_DIBitmap; + +class IFWL_PushButtonDP : public IFWL_DataProvider { + public: + virtual CFX_DIBitmap* GetPicture(IFWL_Widget* pWidget) = 0; +}; + +class IFWL_PushButton : public IFWL_Widget { + public: + static IFWL_PushButton* Create(const CFWL_WidgetImpProperties& properties, + IFWL_Widget* pOuter); + + protected: + IFWL_PushButton(); +}; + +#endif // XFA_FWL_BASEWIDGET_IFWL_PUSHBUTTON_H_ diff --git a/xfa/fwl/basewidget/ifwl_scrollbar.h b/xfa/fwl/basewidget/ifwl_scrollbar.h new file mode 100644 index 0000000000..c481332132 --- /dev/null +++ b/xfa/fwl/basewidget/ifwl_scrollbar.h @@ -0,0 +1,77 @@ +// Copyright 2014 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef XFA_FWL_BASEWIDGET_IFWL_SCROLLBAR_H_ +#define XFA_FWL_BASEWIDGET_IFWL_SCROLLBAR_H_ + +#include "xfa/fwl/core/fwl_widgetimp.h" +#include "xfa/fwl/core/ifwl_widget.h" +#include "xfa/fwl/core/ifwl_dataprovider.h" +#include "xfa/fwl/core/cfwl_widgetimpproperties.h" +#include "core/fxcrt/include/fx_system.h" +#include "xfa/fwl/core/fwl_error.h" + +#define FWL_CLASS_ScrollBar L"FWL_SCROLLBAR" +#define FWL_CLASSHASH_ScrollBar 2826584844 +#define FWL_STYLEEXT_SCB_Horz (0L << 0) +#define FWL_STYLEEXT_SCB_Vert (1L << 0) +#define FWL_PART_SCB_Border 1 +#define FWL_PART_SCB_Edge 2 +#define FWL_PART_SCB_Background 3 +#define FWL_PART_SCB_ForeArrow 4 +#define FWL_PART_SCB_BackArrow 5 +#define FWL_PART_SCB_Thumb 6 +#define FWL_PART_SCB_LowerTrack 7 +#define FWL_PART_SCB_UpperTrack 8 +#define FWL_PARTSTATE_SCB_Normal (0L << 0) +#define FWL_PARTSTATE_SCB_Hovered (1L << 0) +#define FWL_PARTSTATE_SCB_Pressed (2L << 0) +#define FWL_PARTSTATE_SCB_Disabled (3L << 0) +#define FWL_WGTHITTEST_SCB_ForeArrow FWL_WGTHITTEST_MAX + 1 +#define FWL_WGTHITTEST_SCB_BackArrow FWL_WGTHITTEST_MAX + 2 +#define FWL_WGTHITTEST_SCB_LowerTrack FWL_WGTHITTEST_MAX + 3 +#define FWL_WGTHITTEST_SCB_UpperTrack FWL_WGTHITTEST_MAX + 4 +#define FWL_WGTHITTEST_SCB_Thumb FWL_WGTHITTEST_MAX + 5 +#define FWL_CAPACITY_SCB_Size FWL_WGTCAPACITY_MAX + +enum FWL_SCBCODE { + FWL_SCBCODE_None = 1, + FWL_SCBCODE_Min, + FWL_SCBCODE_Max, + FWL_SCBCODE_PageBackward, + FWL_SCBCODE_PageForward, + FWL_SCBCODE_StepBackward, + FWL_SCBCODE_StepForward, + FWL_SCBCODE_Pos, + FWL_SCBCODE_TrackPos, + FWL_SCBCODE_EndScroll, +}; + +class IFWL_ScrollBarDP : public IFWL_DataProvider {}; + +class IFWL_ScrollBar : public IFWL_Widget { + public: + static IFWL_ScrollBar* Create(const CFWL_WidgetImpProperties& properties, + IFWL_Widget* pOuter); + + FX_BOOL IsVertical(); + FWL_ERR GetRange(FX_FLOAT& fMin, FX_FLOAT& fMax); + FWL_ERR SetRange(FX_FLOAT fMin, FX_FLOAT fMax); + FX_FLOAT GetPageSize(); + FWL_ERR SetPageSize(FX_FLOAT fPageSize); + FX_FLOAT GetStepSize(); + FWL_ERR SetStepSize(FX_FLOAT fStepSize); + FX_FLOAT GetPos(); + FWL_ERR SetPos(FX_FLOAT fPos); + FX_FLOAT GetTrackPos(); + FWL_ERR SetTrackPos(FX_FLOAT fTrackPos); + FX_BOOL DoScroll(FX_DWORD dwCode, FX_FLOAT fPos = 0.0f); + + protected: + IFWL_ScrollBar(); +}; + +#endif // XFA_FWL_BASEWIDGET_IFWL_SCROLLBAR_H_ diff --git a/xfa/fwl/basewidget/ifwl_spinbutton.h b/xfa/fwl/basewidget/ifwl_spinbutton.h new file mode 100644 index 0000000000..f68ab0f251 --- /dev/null +++ b/xfa/fwl/basewidget/ifwl_spinbutton.h @@ -0,0 +1,44 @@ +// Copyright 2014 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef XFA_FWL_BASEWIDGET_IFWL_SPINBUTTON_H_ +#define XFA_FWL_BASEWIDGET_IFWL_SPINBUTTON_H_ + +#include "xfa/fwl/core/fwl_widgetimp.h" + +#define FWL_CLASS_SpinButton L"FWL_SPINBUTTON" +#define FWL_CLASSHASH_SpinButton 3793043646 +#define FWL_STYLEEXE_SPB_Vert (1L << 0) +#define FWL_PART_SPB_Border 1 +#define FWL_PART_SPB_Edge 2 +#define FWL_PART_SPB_UpButton 3 +#define FWL_PART_SPB_DownButton 4 +#define FWL_PARTSTATE_SPB_Normal (0L << 0) +#define FWL_PARTSTATE_SPB_Hovered (1L << 0) +#define FWL_PARTSTATE_SPB_Pressed (2L << 0) +#define FWL_PARTSTATE_SPB_Disabled (3L << 0) +#define FWL_WGTHITTEST_SPB_UpButton (FWL_WGTHITTEST_MAX + 1) +#define FWL_WGTHITTEST_SPB_DownButton (FWL_WGTHITTEST_MAX + 2) +#define FWL_EVT_SPB_Click L"FWL_EVENT_SPB_Click" +#define FWL_EVTHASH_SPB_Click 2927651187 + +BEGIN_FWL_EVENT_DEF(CFWL_EvtSpbClick, FWL_EVTHASH_SPB_Click) +FX_BOOL m_bUp; +END_FWL_EVENT_DEF + +class IFWL_SpinButton : public IFWL_Widget { + public: + static IFWL_SpinButton* Create(const CFWL_WidgetImpProperties& properties, + IFWL_Widget* pOuter); + + FWL_ERR EnableButton(FX_BOOL bEnable, FX_BOOL bUp = TRUE); + FX_BOOL IsButtonEnable(FX_BOOL bUp = TRUE); + + protected: + IFWL_SpinButton(); +}; + +#endif // XFA_FWL_BASEWIDGET_IFWL_SPINBUTTON_H_ diff --git a/xfa/fwl/basewidget/ifwl_tooltip.h b/xfa/fwl/basewidget/ifwl_tooltip.h new file mode 100644 index 0000000000..278544b459 --- /dev/null +++ b/xfa/fwl/basewidget/ifwl_tooltip.h @@ -0,0 +1,49 @@ +// Copyright 2014 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef XFA_FWL_BASEWIDGET_IFWL_TOOLTIP_H_ +#define XFA_FWL_BASEWIDGET_IFWL_TOOLTIP_H_ + +#include "xfa/fwl/core/ifwl_form.h" + +class CFWL_WidgetImpProperties; +class IFWL_ToolTip; + +#define FWL_CLASS_ToolTip L"FWL_TOOLTIP" +#define FWL_CLASSHASH_ToolTip 1111984755 +#define FWL_STYLEEXT_TTP_Rectangle (0L << 3) +#define FWL_STYLEEXT_TTP_RoundCorner (1L << 3) +#define FWL_STYLEEXT_TTP_Balloon (1L << 4) +#define FWL_STYLEEXT_TTP_Multiline (1L << 5) +#define FWL_STYLEEXT_TTP_NoAnchor (1L << 6) +#define FWL_PART_TTP_Border 1 +#define FWL_PART_TTP_Background 2 +#define FWL_PART_TTP_Caption 3 + +class IFWL_ToolTipDP : public IFWL_DataProvider { + public: + virtual FWL_ERR GetCaption(IFWL_Widget* pWidget, + CFX_WideString& wsCaption) = 0; + virtual int32_t GetInitialDelay(IFWL_Widget* pWidget) = 0; + virtual int32_t GetAutoPopDelay(IFWL_Widget* pWidget) = 0; + virtual CFX_DIBitmap* GetToolTipIcon(IFWL_Widget* pWidget) = 0; + virtual CFX_SizeF GetToolTipIconSize(IFWL_Widget* pWidget) = 0; +}; + +class IFWL_ToolTip : public IFWL_Form { + public: + static IFWL_ToolTip* Create(const CFWL_WidgetImpProperties& properties, + IFWL_Widget* pOuter); + + FWL_ERR SetAnchor(const CFX_RectF& rtAnchor); + FWL_ERR Show(); + FWL_ERR Hide(); + + protected: + IFWL_ToolTip(); +}; + +#endif // XFA_FWL_BASEWIDGET_IFWL_TOOLTIP_H_ diff --git a/xfa/fwl/basewidget/ifx_barcode.h b/xfa/fwl/basewidget/ifx_barcode.h new file mode 100644 index 0000000000..a44a01ba8d --- /dev/null +++ b/xfa/fwl/basewidget/ifx_barcode.h @@ -0,0 +1,62 @@ +// Copyright 2014 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef XFA_FWL_BASEWIDGET_IFX_BARCODE_H_ +#define XFA_FWL_BASEWIDGET_IFX_BARCODE_H_ + +#include "core/fxcrt/include/fx_string.h" +#include "core/fxcrt/include/fx_system.h" +#include "core/include/fxge/fx_dib.h" +#include "xfa/fxbarcode/include/BC_Library.h" + +class CFX_Font; +class CFX_Matrix; +class CFX_RenderDevice; + +class IFX_Barcode { + public: + virtual ~IFX_Barcode() {} + + virtual void Release() = 0; + + virtual BC_TYPE GetType() = 0; + virtual FX_BOOL Encode(const CFX_WideStringC& contents, + FX_BOOL isDevice, + int32_t& e) = 0; + virtual FX_BOOL RenderDevice(CFX_RenderDevice* device, + const CFX_Matrix* matirx, + int32_t& e) = 0; + virtual FX_BOOL RenderBitmap(CFX_DIBitmap*& pOutBitmap, int32_t& e) = 0; + virtual CFX_WideString Decode(uint8_t* buf, + int32_t width, + int32_t height, + int32_t& errorCode) = 0; + virtual CFX_WideString Decode(CFX_DIBitmap* pBitmap, int32_t& errorCode) = 0; + virtual FX_BOOL SetCharEncoding(BC_CHAR_ENCODING encoding) = 0; + virtual FX_BOOL SetModuleHeight(int32_t moduleHeight) = 0; + virtual FX_BOOL SetModuleWidth(int32_t moduleWidth) = 0; + virtual FX_BOOL SetHeight(int32_t height) = 0; + virtual FX_BOOL SetWidth(int32_t width) = 0; + virtual FX_BOOL CheckContentValidity(const CFX_WideStringC& contents) = 0; + virtual FX_BOOL SetPrintChecksum(FX_BOOL checksum) = 0; + virtual FX_BOOL SetDataLength(int32_t length) = 0; + virtual FX_BOOL SetCalChecksum(int32_t state) = 0; + virtual FX_BOOL SetFont(CFX_Font* pFont) = 0; + virtual FX_BOOL SetFontSize(FX_FLOAT size) = 0; + virtual FX_BOOL SetFontStyle(int32_t style) = 0; + virtual FX_BOOL SetFontColor(FX_ARGB color) = 0; + virtual FX_BOOL SetTextLocation(BC_TEXT_LOC location) = 0; + virtual FX_BOOL SetWideNarrowRatio(int32_t ratio) = 0; + virtual FX_BOOL SetStartChar(FX_CHAR start) = 0; + virtual FX_BOOL SetEndChar(FX_CHAR end) = 0; + virtual FX_BOOL SetVersion(int32_t version) = 0; + virtual FX_BOOL SetErrorCorrectionLevel(int32_t level) = 0; + virtual FX_BOOL SetTruncated(FX_BOOL truncated) = 0; +}; + +IFX_Barcode* FX_Barcode_Create(BC_TYPE type); + +#endif // XFA_FWL_BASEWIDGET_IFX_BARCODE_H_ diff --git a/xfa/fwl/core/cfwl_event.h b/xfa/fwl/core/cfwl_event.h new file mode 100644 index 0000000000..97ca1d31a1 --- /dev/null +++ b/xfa/fwl/core/cfwl_event.h @@ -0,0 +1,145 @@ +// Copyright 2016 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef XFA_FWL_CORE_CFWL_EVENT_H_ +#define XFA_FWL_CORE_CFWL_EVENT_H_ + +#include "core/fxcrt/include/fx_coordinates.h" +#include "core/fxcrt/include/fx_string.h" +#include "core/fxcrt/include/fx_system.h" +#include "xfa/fwl/core/cfwl_note.h" +#include "xfa/fwl/core/fwl_error.h" + +#define FWL_EVT_Mouse L"FWL_EVENT_Mouse" +#define FWL_EVT_MouseWheel L"FWL_EVENT_MouseWheel" +#define FWL_EVT_Key L"FWL_EVENT_Key" +#define FWL_EVT_SetFocus L"FWL_EVENT_SetFocus" +#define FWL_EVT_KillFocus L"FWL_EVENT_KillFocus" +#define FWL_EVT_Click L"FWL_EVENT_Click" +#define FWL_EVT_Draw L"FWL_EVENT_Draw" +#define FWL_EVT_Scroll L"FWL_EVENT_Scroll" +#define FWL_EVT_Close L"FWL_EVENT_Close" +#define FWL_EVT_ContextMenu L"FWL_EVENT_ContextMenu" +#define FWL_EVT_MenuCommand L"FWL_EVENT_MenuCommand" +#define FWL_EVT_SizeChanged L"FWL_EVENT_SizeChanged" + +#define FWL_EVTHASH_Mouse 1765258002 +#define FWL_EVTHASH_MouseWheel 3907114407 +#define FWL_EVTHASH_Key 2408354450 +#define FWL_EVTHASH_SetFocus 3909721269 +#define FWL_EVTHASH_KillFocus 1779363253 +#define FWL_EVTHASH_Draw 2430713303 +#define FWL_EVTHASH_Click 4026328783 +#define FWL_EVTHASH_Scroll 2965158968 +#define FWL_EVTHASH_Close 4036693599 +#define FWL_EVTHASH_ContextMenu 2717307715 +#define FWL_EVTHASH_MenuCommand 497763741 +#define FWL_EVTHASH_SizeChanged 3083958510 +#define FWL_EVTHASH_Idle 839546759 + +typedef enum { + FWL_EVENT_MOUSE_MASK = 1 << 0, + FWL_EVENT_MOUSEWHEEL_MASK = 1 << 1, + FWL_EVENT_KEY_MASK = 1 << 2, + FWL_EVENT_FOCUSCHANGED_MASK = 1 << 3, + FWL_EVENT_DRAW_MASK = 1 << 4, + FWL_EVENT_CLOSE_MASK = 1 << 5, + FWL_EVENT_SIZECHANGED_MASK = 1 << 6, + FWL_EVENT_IDLE_MASK = 1 << 7, + FWL_EVENT_CONTROL_MASK = 1 << 8, + FWL_EVENT_ALL_MASK = 0xFF +} FWLEventMask; + +class CFX_Graphics; +class IFWL_Widget; + +class CFWL_Event : public CFWL_Note { + public: + CFWL_Event() : CFWL_Note(TRUE) {} + virtual ~CFWL_Event() {} +}; + +#define BEGIN_FWL_EVENT_DEF(classname, eventhashcode) \ + class classname : public CFWL_Event { \ + public: \ + classname() : CFWL_Event() {} \ + virtual FWL_ERR GetClassName(CFX_WideString& wsClass) const { \ + wsClass = L## #classname; \ + return FWL_ERR_Succeeded; \ + } \ + virtual FX_DWORD GetClassID() const { return eventhashcode; } + +#define END_FWL_EVENT_DEF \ + } \ + ; // NOLINT + +BEGIN_FWL_EVENT_DEF(CFWL_EvtMouse, FWL_EVTHASH_Mouse) +FX_FLOAT m_fx; +FX_FLOAT m_fy; +FX_DWORD m_dwFlags; +FX_DWORD m_dwCmd; +END_FWL_EVENT_DEF + +BEGIN_FWL_EVENT_DEF(CFWL_EvtMouseWheel, FWL_EVTHASH_MouseWheel) +FX_FLOAT m_fx; +FX_FLOAT m_fy; +FX_FLOAT m_fDeltaX; +FX_FLOAT m_fDeltaY; +FX_DWORD m_dwFlags; +END_FWL_EVENT_DEF + +BEGIN_FWL_EVENT_DEF(CFWL_EvtKey, FWL_EVTHASH_Key) +FX_DWORD m_dwKeyCode; +FX_DWORD m_dwFlags; +FX_DWORD m_dwCmd; +END_FWL_EVENT_DEF + +BEGIN_FWL_EVENT_DEF(CFWL_EvtSetFocus, FWL_EVTHASH_SetFocus) +IFWL_Widget* m_pSetFocus; +END_FWL_EVENT_DEF + +BEGIN_FWL_EVENT_DEF(CFWL_EvtKillFocus, FWL_EVTHASH_KillFocus) +IFWL_Widget* m_pKillFocus; +END_FWL_EVENT_DEF + +BEGIN_FWL_EVENT_DEF(CFWL_EvtDraw, FWL_EVTHASH_Draw) +CFX_Graphics* m_pGraphics; +IFWL_Widget* m_pWidget; +END_FWL_EVENT_DEF + +BEGIN_FWL_EVENT_DEF(CFWL_EvtClick, FWL_EVTHASH_Click) +END_FWL_EVENT_DEF + +BEGIN_FWL_EVENT_DEF(CFWL_EvtScroll, FWL_EVTHASH_Scroll) +FX_DWORD m_iScrollCode; +FX_FLOAT m_fPos; +FX_BOOL* m_pRet; +END_FWL_EVENT_DEF + +BEGIN_FWL_EVENT_DEF(CFWL_EvtClose, FWL_EVTHASH_Close) +END_FWL_EVENT_DEF + +BEGIN_FWL_EVENT_DEF(CFWL_EvtContextMenu, FWL_EVTHASH_ContextMenu) +FX_FLOAT m_fPosX; +FX_FLOAT m_fPosY; +IFWL_Widget* m_pOwner; +END_FWL_EVENT_DEF + +BEGIN_FWL_EVENT_DEF(CFWL_EvtMenuCommand, FWL_EVTHASH_MenuCommand) +int32_t m_iCommand; +void* m_pData; +END_FWL_EVENT_DEF + +BEGIN_FWL_EVENT_DEF(CFWL_EvtSizeChanged, FWL_EVTHASH_SizeChanged) +IFWL_Widget* m_pWidget; +CFX_RectF m_rtOld; +CFX_RectF m_rtNew; +END_FWL_EVENT_DEF + +BEGIN_FWL_EVENT_DEF(CFWL_EvtIdle, FWL_EVTHASH_Idle) +END_FWL_EVENT_DEF + +#endif // XFA_FWL_CORE_CFWL_EVENT_H_ diff --git a/xfa/fwl/core/cfwl_message.h b/xfa/fwl/core/cfwl_message.h new file mode 100644 index 0000000000..f3e4a58602 --- /dev/null +++ b/xfa/fwl/core/cfwl_message.h @@ -0,0 +1,159 @@ +// Copyright 2016 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef XFA_FWL_CORE_CFWL_MESSAGE_H_ +#define XFA_FWL_CORE_CFWL_MESSAGE_H_ + +#include "core/fxcrt/include/fx_string.h" +#include "core/fxcrt/include/fx_system.h" +#include "xfa/fwl/core/cfwl_note.h" +#include "xfa/fwl/core/fwl_error.h" + +#define FWL_MSGHASH_Activate 2410369469 +#define FWL_MSGHASH_Deactivate 1184214790 +#define FWL_MSGHASH_SetFocus 4174512504 +#define FWL_MSGHASH_KillFocus 1557903832 +#define FWL_MSGHASH_Mouse 706128309 +#define FWL_MSGHASH_MouseWheel 893703466 +#define FWL_MSGHASH_Key 3751372405 +#define FWL_MSGHASH_Cursor 3182626218 +#define FWL_MSGHASH_Size 160077735 +#define FWL_MSGHASH_WindowMove 1032269377 +#define FWL_MSGHASH_DropFiles 2004165236 +#define FWL_MSGHASH_TaskClicked 3128231086 +#define FWL_MSGHASH_Close 2977563906 +#define FWL_MSGHASH_Post 1969633074 +#define FWL_MSGHASH_WindowWillMove 2229175763 + +#define FWL_MSG_Activate L"FWL_MESSAGE_Activate" +#define FWL_MSG_Deactivate L"FWL_MESSAGE_Deactivate" +#define FWL_MSG_SetFocus L"FWL_MESSAGE_SetFocus" +#define FWL_MSG_KillFocus L"FWL_MESSAGE_KillFocus" +#define FWL_MSG_Mouse L"FWL_MESSAGE_Mouse" +#define FWL_MSG_MouseWheel L"FWL_MESSAGE_MouseWheel" +#define FWL_MSG_Key L"FWL_MESSAGE_Key" +#define FWL_MSG_Cursor L"FWL_MESSAGE_Cursor" +#define FWL_MSG_Size L"FWL_MESSAGE_Size" +#define FWL_MSG_WindowMove L"FWL_MESSAGE_WindowMove" +#define FWL_MSG_DropFiles L"FWL_MESSAGE_DropFiles" +#define FWL_MSG_TaskClicked L"FWL_MESSAGE_TaskClicked" +#define FWL_MSG_Close L"FWL_MESSAGE_Close" +#define FWL_MSG_Post L"FWL_MESSAGE_Post" +#define FWL_MSG_WindowWillMove L"FWL_MESSAGE_WindowWillMove" + +#define FWL_MSGMOUSECMD_LButtonDown 1 +#define FWL_MSGMOUSECMD_LButtonUp 2 +#define FWL_MSGMOUSECMD_LButtonDblClk 3 +#define FWL_MSGMOUSECMD_RButtonDown 4 +#define FWL_MSGMOUSECMD_RButtonUp 5 +#define FWL_MSGMOUSECMD_RButtonDblClk 6 +#define FWL_MSGMOUSECMD_MButtonDown 7 +#define FWL_MSGMOUSECMD_MButtonUp 8 +#define FWL_MSGMOUSECMD_MButtonDblClk 9 +#define FWL_MSGMOUSECMD_MouseMove 10 +#define FWL_MSGMOUSECMD_MouseEnter 11 +#define FWL_MSGMOUSECMD_MouseLeave 12 +#define FWL_MSGMOUSECMD_MouseHover 13 +#define FWL_MSGKEYCMD_KeyDown 1 +#define FWL_MSGKEYCMD_KeyUp 2 +#define FWL_MSGKEYCMD_Char 3 + +class IFWL_Widget; + +class CFWL_Message : public CFWL_Note { + public: + CFWL_Message() : CFWL_Note(FALSE) {} + virtual ~CFWL_Message() {} +}; + +#define BEGIN_FWL_MESSAGE_DEF(classname, msghashcode) \ + class classname : public CFWL_Message { \ + public: \ + classname() : CFWL_Message() {} \ + virtual CFWL_Note* Clone() { return new classname(*this); } \ + virtual FWL_ERR GetClassName(CFX_WideString& wsClass) const { \ + wsClass = L## #classname; \ + return FWL_ERR_Succeeded; \ + } \ + virtual FX_DWORD GetClassID() const { return msghashcode; } + +#define END_FWL_MESSAGE_DEF \ + } \ + ; // NOLINT + +BEGIN_FWL_MESSAGE_DEF(CFWL_MsgActivate, FWL_MSGHASH_Activate) +END_FWL_MESSAGE_DEF + +BEGIN_FWL_MESSAGE_DEF(CFWL_MsgDeactivate, FWL_MSGHASH_Deactivate) +END_FWL_MESSAGE_DEF + +BEGIN_FWL_MESSAGE_DEF(CFWL_MsgMouse, FWL_MSGHASH_Mouse) +FX_FLOAT m_fx; +FX_FLOAT m_fy; +FX_DWORD m_dwFlags; +FX_DWORD m_dwCmd; +END_FWL_MESSAGE_DEF + +BEGIN_FWL_MESSAGE_DEF(CFWL_MsgMouseWheel, FWL_MSGHASH_MouseWheel) +FX_FLOAT m_fx; +FX_FLOAT m_fy; +FX_FLOAT m_fDeltaX; +FX_FLOAT m_fDeltaY; +FX_DWORD m_dwFlags; +END_FWL_MESSAGE_DEF + +BEGIN_FWL_MESSAGE_DEF(CFWL_MsgSetFocus, FWL_MSGHASH_SetFocus) +IFWL_Widget* m_pKillFocus; +END_FWL_MESSAGE_DEF + +BEGIN_FWL_MESSAGE_DEF(CFWL_MsgKillFocus, FWL_MSGHASH_KillFocus) +IFWL_Widget* m_pSetFocus; +END_FWL_MESSAGE_DEF + +BEGIN_FWL_MESSAGE_DEF(CFWL_MsgKey, FWL_MSGHASH_Key) +FX_DWORD m_dwKeyCode; +FX_DWORD m_dwFlags; +FX_DWORD m_dwCmd; +END_FWL_MESSAGE_DEF + +BEGIN_FWL_MESSAGE_DEF(CFWL_MsgCursor, FWL_MSGHASH_Cursor) +END_FWL_MESSAGE_DEF + +BEGIN_FWL_MESSAGE_DEF(CFWL_MsgSize, FWL_MSGHASH_Size) +int32_t m_iWidth; +int32_t m_iHeight; +END_FWL_MESSAGE_DEF + +BEGIN_FWL_MESSAGE_DEF(CFWL_MsgWindowMove, FWL_MSGHASH_WindowMove) +FX_FLOAT m_fx; +FX_FLOAT m_fy; +END_FWL_MESSAGE_DEF + +BEGIN_FWL_MESSAGE_DEF(CFWL_MsgDropFiles, FWL_MSGHASH_DropFiles) +CFWL_MsgDropFiles(const CFWL_MsgDropFiles& copy) { + m_pDstTarget = copy.m_pDstTarget; + m_pSrcTarget = copy.m_pSrcTarget; + m_fx = copy.m_fx; + m_fy = copy.m_fy; + m_files.Append(copy.m_files); +} +FX_FLOAT m_fx; +FX_FLOAT m_fy; +CFX_WideStringArray m_files; +END_FWL_MESSAGE_DEF + +BEGIN_FWL_MESSAGE_DEF(CFWL_MsgTaskClicked, FWL_MSGHASH_TaskClicked) +FX_FLOAT m_fx; +FX_FLOAT m_fy; +END_FWL_MESSAGE_DEF + +BEGIN_FWL_MESSAGE_DEF(CFWL_MsgClose, FWL_MSGHASH_Close) +END_FWL_MESSAGE_DEF + +BEGIN_FWL_MESSAGE_DEF(CFWL_MsgWindowWillMove, FWL_MSGHASH_WindowWillMove) +END_FWL_MESSAGE_DEF + +#endif // XFA_FWL_CORE_CFWL_MESSAGE_H_ diff --git a/xfa/fwl/core/cfwl_note.h b/xfa/fwl/core/cfwl_note.h new file mode 100644 index 0000000000..c0f105388c --- /dev/null +++ b/xfa/fwl/core/cfwl_note.h @@ -0,0 +1,67 @@ +// Copyright 2016 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef XFA_FWL_CORE_CFWL_NOTE_H_ +#define XFA_FWL_CORE_CFWL_NOTE_H_ + +#include "core/fxcrt/include/fx_string.h" +#include "core/fxcrt/include/fx_system.h" +#include "xfa/fwl/core/fwl_error.h" + +class IFWL_Widget; + +// Separate hierarchy not related to IFWL_* hierarchy. These should not +// get cast to IFWL_* types. +class CFWL_Note { + public: + virtual FX_DWORD Release() { + m_dwRefCount--; + FX_DWORD dwRefCount = m_dwRefCount; + if (!m_dwRefCount) + delete this; + return dwRefCount; + } + + virtual CFWL_Note* Retain() { + m_dwRefCount++; + return this; + } + + virtual FWL_ERR GetClassName(CFX_WideString& wsClass) const { + wsClass = L"CFWL_Note"; + return FWL_ERR_Succeeded; + } + + virtual FX_DWORD GetClassID() const { return 0; } + + virtual FX_BOOL IsInstance(const CFX_WideStringC& wsClass) const { + return TRUE; + } + + virtual CFWL_Note* Clone() { return NULL; } + FX_BOOL IsEvent() const { return m_bIsEvent; } + + IFWL_Widget* m_pSrcTarget; + IFWL_Widget* m_pDstTarget; + FX_DWORD m_dwExtend; + + protected: + CFWL_Note(FX_BOOL bIsEvent) + : m_pSrcTarget(NULL), + m_pDstTarget(NULL), + m_dwExtend(0), + m_dwRefCount(1), + m_bIsEvent(bIsEvent) {} + + virtual ~CFWL_Note() {} + virtual FX_BOOL Initialize() { return TRUE; } + virtual int32_t Finalize() { return 0; } + + FX_DWORD m_dwRefCount; + FX_BOOL m_bIsEvent; +}; + +#endif // XFA_FWL_CORE_CFWL_NOTE_H_ diff --git a/xfa/fwl/core/cfwl_themebackground.h b/xfa/fwl/core/cfwl_themebackground.h new file mode 100644 index 0000000000..cdab5b2729 --- /dev/null +++ b/xfa/fwl/core/cfwl_themebackground.h @@ -0,0 +1,25 @@ +// Copyright 2016 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef XFA_FWL_CORE_CFWL_THEMEBACKGROUND_H_ +#define XFA_FWL_CORE_CFWL_THEMEBACKGROUND_H_ + +#include "core/include/fxge/fx_dib.h" +#include "xfa/fwl/core/cfwl_themepart.h" + +class CFX_DIBitmpa; +class CFX_Graphics; +class CFX_Path; + +class CFWL_ThemeBackground : public CFWL_ThemePart { + public: + CFWL_ThemeBackground() : m_pGraphics(NULL), m_pImage(NULL), m_pPath(NULL) {} + CFX_Graphics* m_pGraphics; + CFX_DIBitmap* m_pImage; + CFX_Path* m_pPath; +}; + +#endif // XFA_FWL_CORE_CFWL_THEMEBACKGROUND_H_ diff --git a/xfa/fwl/core/cfwl_themepart.h b/xfa/fwl/core/cfwl_themepart.h new file mode 100644 index 0000000000..ddbdc321b2 --- /dev/null +++ b/xfa/fwl/core/cfwl_themepart.h @@ -0,0 +1,31 @@ +// Copyright 2016 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef XFA_FWL_CORE_CFWL_THEMEPART_H_ +#define XFA_FWL_CORE_CFWL_THEMEPART_H_ + +#include "core/fxcrt/include/fx_coordinates.h" +#include "core/fxcrt/include/fx_system.h" +#include "xfa/fwl/core/ifwl_widget.h" + +class CFWL_ThemePart { + public: + CFWL_ThemePart() + : m_pWidget(NULL), m_iPart(0), m_dwStates(0), m_dwData(0), m_pData(NULL) { + m_rtPart.Reset(); + m_matrix.SetIdentity(); + } + + CFX_Matrix m_matrix; + CFX_RectF m_rtPart; + IFWL_Widget* m_pWidget; + int32_t m_iPart; + FX_DWORD m_dwStates; + FX_DWORD m_dwData; + void* m_pData; +}; + +#endif // XFA_FWL_CORE_CFWL_THEMEPART_H_ diff --git a/xfa/fwl/core/cfwl_themetext.h b/xfa/fwl/core/cfwl_themetext.h new file mode 100644 index 0000000000..e4c0e92ed1 --- /dev/null +++ b/xfa/fwl/core/cfwl_themetext.h @@ -0,0 +1,23 @@ +// Copyright 2016 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef XFA_FWL_CORE_CFWL_THEMETEXT_H_ +#define XFA_FWL_CORE_CFWL_THEMETEXT_H_ + +#include "core/fxcrt/include/fx_string.h" +#include "core/fxcrt/include/fx_system.h" +#include "xfa/fwl/core/cfwl_themepart.h" + +class CFWL_ThemeText : public CFWL_ThemePart { + public: + CFWL_ThemeText() : m_pGraphics(NULL) {} + CFX_WideString m_wsText; + FX_DWORD m_dwTTOStyles; + int32_t m_iTTOAlign; + CFX_Graphics* m_pGraphics; +}; + +#endif // XFA_FWL_CORE_CFWL_THEMETEXT_H_ diff --git a/xfa/fwl/core/cfwl_widgetimpproperties.h b/xfa/fwl/core/cfwl_widgetimpproperties.h new file mode 100644 index 0000000000..7a3bab603d --- /dev/null +++ b/xfa/fwl/core/cfwl_widgetimpproperties.h @@ -0,0 +1,43 @@ +// Copyright 2016 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef XFA_FWL_CORE_CFWL_WIDGETIMPPROPERTIES_H_ +#define XFA_FWL_CORE_CFWL_WIDGETIMPPROPERTIES_H_ + +#include "core/fxcrt/include/fx_coordinates.h" +#include "core/fxcrt/include/fx_system.h" +#include "xfa/fwl/core/fwl_widgetdef.h" + +class IFWL_DataProvider; +class IFWL_ThemeProvider; +class IFWL_Widget; + +class CFWL_WidgetImpProperties { + public: + CFWL_WidgetImpProperties() + : m_dwStyles(FWL_WGTSTYLE_Child), + m_dwStyleExes(0), + m_dwStates(0), + m_pThemeProvider(nullptr), + m_pDataProvider(nullptr), + m_pParent(nullptr), + m_pOwner(nullptr) { + m_ctmOnParent.SetIdentity(); + m_rtWidget.Set(0, 0, 0, 0); + } + + CFX_Matrix m_ctmOnParent; + CFX_RectF m_rtWidget; + FX_DWORD m_dwStyles; + FX_DWORD m_dwStyleExes; + FX_DWORD m_dwStates; + IFWL_ThemeProvider* m_pThemeProvider; + IFWL_DataProvider* m_pDataProvider; + IFWL_Widget* m_pParent; + IFWL_Widget* m_pOwner; +}; + +#endif // XFA_FWL_CORE_CFWL_WIDGETIMPPROPERTIES_H_ diff --git a/xfa/fwl/core/fwl_appimp.cpp b/xfa/fwl/core/fwl_appimp.cpp index 31634860f4..2cff349f82 100644 --- a/xfa/fwl/core/fwl_appimp.cpp +++ b/xfa/fwl/core/fwl_appimp.cpp @@ -10,9 +10,9 @@ #include "xfa/fwl/core/fwl_targetimp.h" #include "xfa/fwl/core/fwl_threadimp.h" #include "xfa/fwl/core/fwl_widgetmgrimp.h" -#include "xfa/include/fwl/adapter/fwl_adapterwidgetmgr.h" -#include "xfa/include/fwl/core/fwl_app.h" -#include "xfa/include/fwl/core/fwl_widget.h" +#include "xfa/fwl/core/ifwl_adapterwidgetmgr.h" +#include "xfa/fwl/core/ifwl_app.h" +#include "xfa/fwl/core/ifwl_widget.h" IFWL_App* IFWL_App::Create(IFWL_AdapterNative* pAdapter) { IFWL_App* pApp = new IFWL_App; diff --git a/xfa/fwl/core/fwl_contentimp.cpp b/xfa/fwl/core/fwl_contentimp.cpp index a38998f0cf..5bfac08df4 100644 --- a/xfa/fwl/core/fwl_contentimp.cpp +++ b/xfa/fwl/core/fwl_contentimp.cpp @@ -11,7 +11,7 @@ #include "xfa/fwl/core/fwl_threadimp.h" #include "xfa/fwl/core/fwl_widgetimp.h" #include "xfa/fwl/core/fwl_widgetmgrimp.h" -#include "xfa/include/fwl/core/fwl_content.h" +#include "xfa/fwl/core/ifwl_content.h" FWL_ERR IFWL_Content::InsertWidget(IFWL_Widget* pChild, int32_t nIndex) { return static_cast(GetImpl())->InsertWidget(pChild, nIndex); diff --git a/xfa/fwl/core/fwl_error.h b/xfa/fwl/core/fwl_error.h new file mode 100644 index 0000000000..92a483f4e8 --- /dev/null +++ b/xfa/fwl/core/fwl_error.h @@ -0,0 +1,22 @@ +// Copyright 2014 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef XFA_FWL_CORE_FWL_ERROR_H_ +#define XFA_FWL_CORE_FWL_ERROR_H_ + +#include + +typedef int32_t FWL_ERR; + +#define FWL_ERR_Succeeded 0 +#define FWL_ERR_Indefinite -1 +#define FWL_ERR_Parameter_Invalid -100 +#define FWL_ERR_Property_Invalid -200 +#define FWL_ERR_Intermediate_Value__Invalid -300 +#define FWL_ERR_Method_Not_Supported -400 +#define FWL_ERR_Out_Of_Memory -500 + +#endif // XFA_FWL_CORE_FWL_ERROR_H_ diff --git a/xfa/fwl/core/fwl_formimp.cpp b/xfa/fwl/core/fwl_formimp.cpp index a321431f6f..83176550eb 100644 --- a/xfa/fwl/core/fwl_formimp.cpp +++ b/xfa/fwl/core/fwl_formimp.cpp @@ -8,6 +8,10 @@ #include "xfa/fde/tto/fde_textout.h" #include "xfa/fwl/basewidget/fwl_formproxyimp.h" +#include "xfa/fwl/core/cfwl_message.h" +#include "xfa/fwl/core/cfwl_themebackground.h" +#include "xfa/fwl/core/cfwl_themepart.h" +#include "xfa/fwl/core/cfwl_themetext.h" #include "xfa/fwl/core/fwl_appimp.h" #include "xfa/fwl/core/fwl_noteimp.h" #include "xfa/fwl/core/fwl_panelimp.h" @@ -15,10 +19,10 @@ #include "xfa/fwl/core/fwl_threadimp.h" #include "xfa/fwl/core/fwl_widgetimp.h" #include "xfa/fwl/core/fwl_widgetmgrimp.h" -#include "xfa/include/fwl/adapter/fwl_adapterwidgetmgr.h" -#include "xfa/include/fwl/core/fwl_app.h" -#include "xfa/include/fwl/core/fwl_content.h" -#include "xfa/include/fwl/core/fwl_theme.h" +#include "xfa/fwl/core/ifwl_adapterwidgetmgr.h" +#include "xfa/fwl/core/ifwl_app.h" +#include "xfa/fwl/core/ifwl_content.h" +#include "xfa/fwl/core/ifwl_themeprovider.h" #define FWL_SYSBTNSIZE 21 #define FWL_SYSBTNMARGIN 5 diff --git a/xfa/fwl/core/fwl_formimp.h b/xfa/fwl/core/fwl_formimp.h index eddc1d6032..e5c0f8022e 100644 --- a/xfa/fwl/core/fwl_formimp.h +++ b/xfa/fwl/core/fwl_formimp.h @@ -9,11 +9,13 @@ #include "xfa/fwl/core/fwl_panelimp.h" #include "xfa/fwl/core/fwl_widgetimp.h" -#include "xfa/include/fwl/core/fwl_form.h" +#include "xfa/fwl/core/ifwl_form.h" +class CFWL_MsgMouse; +class CFWL_MsgClose; +class CFWL_MsgWindowMove; class CFWL_NoteLoop; class CFWL_WidgetImpProperties; -class CFWL_MsgMouse; class IFWL_Widget; class IFWL_ThemeProvider; class CFWL_SysBtn; diff --git a/xfa/fwl/core/fwl_gridimp.cpp b/xfa/fwl/core/fwl_gridimp.cpp index a898bea838..9ff1949b38 100644 --- a/xfa/fwl/core/fwl_gridimp.cpp +++ b/xfa/fwl/core/fwl_gridimp.cpp @@ -6,6 +6,8 @@ #include "xfa/fwl/core/fwl_gridimp.h" +#include "xfa/fwl/core/cfwl_message.h" +#include "xfa/fwl/core/cfwl_widgetimpproperties.h" #include "xfa/fwl/core/fwl_contentimp.h" #include "xfa/fwl/core/fwl_noteimp.h" #include "xfa/fwl/core/fwl_targetimp.h" diff --git a/xfa/fwl/core/fwl_gridimp.h b/xfa/fwl/core/fwl_gridimp.h index fda283f70c..3329cb779d 100644 --- a/xfa/fwl/core/fwl_gridimp.h +++ b/xfa/fwl/core/fwl_gridimp.h @@ -8,9 +8,9 @@ #define XFA_FWL_CORE_FWL_GRIDIMP_H_ #include "xfa/fwl/core/fwl_contentimp.h" -#include "xfa/include/fwl/core/fwl_app.h" -#include "xfa/include/fwl/core/fwl_content.h" -#include "xfa/include/fwl/core/fwl_grid.h" +#include "xfa/fwl/core/ifwl_app.h" +#include "xfa/fwl/core/ifwl_content.h" +#include "xfa/fwl/core/ifwl_grid.h" class CFWL_GridLength { public: diff --git a/xfa/fwl/core/fwl_noteimp.cpp b/xfa/fwl/core/fwl_noteimp.cpp index 6553454ff0..ecc13f082e 100644 --- a/xfa/fwl/core/fwl_noteimp.cpp +++ b/xfa/fwl/core/fwl_noteimp.cpp @@ -8,6 +8,8 @@ #include "core/fxcrt/include/fx_ext.h" #include "xfa/fwl/basewidget/fwl_tooltipctrlimp.h" +#include "xfa/fwl/basewidget/ifwl_tooltip.h" +#include "xfa/fwl/core/cfwl_message.h" #include "xfa/fwl/core/fwl_appimp.h" #include "xfa/fwl/core/fwl_formimp.h" #include "xfa/fwl/core/fwl_panelimp.h" @@ -15,10 +17,10 @@ #include "xfa/fwl/core/fwl_threadimp.h" #include "xfa/fwl/core/fwl_widgetimp.h" #include "xfa/fwl/core/fwl_widgetmgrimp.h" -#include "xfa/include/fwl/adapter/fwl_adapterwidgetmgr.h" -#include "xfa/include/fwl/basewidget/fwl_tooltipctrl.h" -#include "xfa/include/fwl/core/fwl_app.h" -#include "xfa/include/fwl/core/fwl_grid.h" +#include "xfa/fwl/core/ifwl_adapterwidgetmgr.h" +#include "xfa/fwl/core/ifwl_app.h" +#include "xfa/fwl/core/ifwl_grid.h" +#include "xfa/fwl/core/ifwl_tooltiptarget.h" CFWL_NoteLoop::CFWL_NoteLoop(CFWL_WidgetImp* pForm) : m_pForm(pForm), m_bContinueModal(TRUE) {} @@ -805,7 +807,7 @@ void CFWL_NoteDriver::ClearInvalidEventTargets(FX_BOOL bRemoveAll) { } } } -class CFWL_CoreToopTipDP : public IFWL_ToolTipDP { +class CFWL_CoreToolTipDP : public IFWL_ToolTipDP { public: FWL_ERR GetCaption(IFWL_Widget* pWidget, CFX_WideString& wsCaption); int32_t GetInitialDelay(IFWL_Widget* pWidget); @@ -813,36 +815,36 @@ class CFWL_CoreToopTipDP : public IFWL_ToolTipDP { CFX_DIBitmap* GetToolTipIcon(IFWL_Widget* pWidget); CFX_SizeF GetToolTipIconSize(IFWL_Widget* pWidget); CFX_RectF GetAnchor(); - CFWL_CoreToopTipDP(); + CFWL_CoreToolTipDP(); CFX_WideString m_wsCaption; int32_t m_nInitDelayTime; int32_t m_nAutoPopDelayTime; CFX_RectF m_fAnchor; }; -CFWL_CoreToopTipDP::CFWL_CoreToopTipDP() { +CFWL_CoreToolTipDP::CFWL_CoreToolTipDP() { m_nInitDelayTime = 500; m_nAutoPopDelayTime = 50000; m_fAnchor.Set(0.0, 0.0, 0.0, 0.0); } -FWL_ERR CFWL_CoreToopTipDP::GetCaption(IFWL_Widget* pWidget, +FWL_ERR CFWL_CoreToolTipDP::GetCaption(IFWL_Widget* pWidget, CFX_WideString& wsCaption) { wsCaption = m_wsCaption; return FWL_ERR_Succeeded; } -int32_t CFWL_CoreToopTipDP::GetInitialDelay(IFWL_Widget* pWidget) { +int32_t CFWL_CoreToolTipDP::GetInitialDelay(IFWL_Widget* pWidget) { return m_nInitDelayTime; } -int32_t CFWL_CoreToopTipDP::GetAutoPopDelay(IFWL_Widget* pWidget) { +int32_t CFWL_CoreToolTipDP::GetAutoPopDelay(IFWL_Widget* pWidget) { return m_nAutoPopDelayTime; } -CFX_DIBitmap* CFWL_CoreToopTipDP::GetToolTipIcon(IFWL_Widget* pWidget) { +CFX_DIBitmap* CFWL_CoreToolTipDP::GetToolTipIcon(IFWL_Widget* pWidget) { return NULL; } -CFX_SizeF CFWL_CoreToopTipDP::GetToolTipIconSize(IFWL_Widget* pWidget) { +CFX_SizeF CFWL_CoreToolTipDP::GetToolTipIconSize(IFWL_Widget* pWidget) { return CFX_SizeF(); } -CFX_RectF CFWL_CoreToopTipDP::GetAnchor() { +CFX_RectF CFWL_CoreToolTipDP::GetAnchor() { return m_fAnchor; } CFWL_EventTarget::~CFWL_EventTarget() { @@ -930,7 +932,7 @@ CFWL_ToolTipContainer* CFWL_ToolTipContainer::s_pInstance = NULL; CFWL_ToolTipContainer::CFWL_ToolTipContainer() : pCurTarget(NULL), m_pToolTipImp(NULL) { - m_ToolTipDp = new CFWL_CoreToopTipDP; + m_ToolTipDp = new CFWL_CoreToolTipDP; m_ToolTipDp->m_nInitDelayTime = 0; m_ToolTipDp->m_nAutoPopDelayTime = 2000; } diff --git a/xfa/fwl/core/fwl_noteimp.h b/xfa/fwl/core/fwl_noteimp.h index e0f17bb278..7554082871 100644 --- a/xfa/fwl/core/fwl_noteimp.h +++ b/xfa/fwl/core/fwl_noteimp.h @@ -7,14 +7,24 @@ #ifndef XFA_FWL_CORE_FWL_NOTEIMP_H_ #define XFA_FWL_CORE_FWL_NOTEIMP_H_ -#include "xfa/include/fwl/core/fwl_note.h" - -class CFWL_WidgetImp; +#include "xfa/fwl/core/ifwl_notedriver.h" +#include "xfa/fwl/core/ifwl_noteloop.h" +#include "xfa/fxgraphics/include/cfx_graphics.h" + +class CFWL_CoreToolTipDP; +class CFWL_MsgActivate; +class CFWL_MsgDeactivate; +class CFWL_MsgDropFiles; +class CFWL_MsgKey; +class CFWL_MsgKillFocus; +class CFWL_MsgMouse; +class CFWL_MsgMouseWheel; +class CFWL_MsgSetFocus; +class CFWL_MsgSize; +class CFWL_MsgWindowMove; class CFWL_ToolTipImp; -class CFWL_CoreToopTipDP; -class CFWL_NoteDriver; -class CFWL_EventTarget; -class CFWL_ToolTipContainer; +class CFWL_WidgetImp; +class IFWL_ToolTipTarget; class CFWL_NoteLoop : public IFWL_NoteLoop { public: @@ -37,6 +47,7 @@ class CFWL_NoteLoop : public IFWL_NoteLoop { CFWL_WidgetImp* m_pForm; FX_BOOL m_bContinueModal; }; + class CFWL_NoteDriver : public IFWL_NoteDriver { public: CFWL_NoteDriver(); @@ -105,7 +116,9 @@ class CFWL_NoteDriver : public IFWL_NoteDriver { FWLMessageHookCallback m_hook; void* m_hookInfo; }; + typedef CFX_MapPtrTemplate CFWL_EventSource; + class CFWL_EventTarget { public: CFWL_EventTarget(CFWL_NoteDriver* pNoteDriver, IFWL_Widget* pListener) @@ -124,6 +137,7 @@ class CFWL_EventTarget { CFWL_NoteDriver* m_pNoteDriver; FX_BOOL m_bInvalid; }; + class CFWL_ToolTipContainer { public: static CFWL_ToolTipContainer* getInstance(); @@ -147,7 +161,7 @@ class CFWL_ToolTipContainer { IFWL_ToolTipTarget* pCurTarget; CFWL_ToolTipImp* m_pToolTipImp; - CFWL_CoreToopTipDP* m_ToolTipDp; + CFWL_CoreToolTipDP* m_ToolTipDp; CFX_PtrArray m_arrWidget; private: diff --git a/xfa/fwl/core/fwl_panelimp.cpp b/xfa/fwl/core/fwl_panelimp.cpp index e24413368c..3d1bf9a84d 100644 --- a/xfa/fwl/core/fwl_panelimp.cpp +++ b/xfa/fwl/core/fwl_panelimp.cpp @@ -6,13 +6,16 @@ #include "xfa/fwl/core/fwl_panelimp.h" +#include "xfa/fwl/core/cfwl_widgetimpproperties.h" #include "xfa/fwl/core/fwl_noteimp.h" #include "xfa/fwl/core/fwl_targetimp.h" #include "xfa/fwl/core/fwl_widgetimp.h" #include "xfa/fwl/core/fwl_widgetmgrimp.h" -#include "xfa/include/fwl/core/fwl_content.h" -#include "xfa/include/fwl/core/fwl_grid.h" -#include "xfa/include/fwl/core/fwl_panel.h" +#include "xfa/fwl/core/ifwl_content.h" +#include "xfa/fwl/core/ifwl_custompanel.h" +#include "xfa/fwl/core/ifwl_grid.h" +#include "xfa/fwl/core/ifwl_panel.h" +#include "xfa/fwl/core/ifwl_proxy.h" // static IFWL_Panel* IFWL_Panel::Create(CFWL_WidgetImpProperties& properties, diff --git a/xfa/fwl/core/fwl_sdadapterimp.cpp b/xfa/fwl/core/fwl_sdadapterimp.cpp index 550c4cc1ef..1d69defcac 100644 --- a/xfa/fwl/core/fwl_sdadapterimp.cpp +++ b/xfa/fwl/core/fwl_sdadapterimp.cpp @@ -4,16 +4,16 @@ // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com -#include "xfa/include/fwl/adapter/fwl_sdadapterimp.h" +#include "xfa/fwl/core/fwl_sdadapterimp.h" #include "core/fxcrt/include/fx_system.h" #include "xfa/fwl/core/fwl_noteimp.h" #include "xfa/fwl/core/fwl_targetimp.h" #include "xfa/fwl/core/fwl_threadimp.h" #include "xfa/fwl/core/fwl_widgetmgrimp.h" -#include "xfa/include/fwl/adapter/fwl_adapterthreadmgr.h" -#include "xfa/include/fwl/adapter/fwl_adapterwidgetmgr.h" -#include "xfa/include/fwl/core/fwl_app.h" +#include "xfa/fwl/core/ifwl_adapterthreadmgr.h" +#include "xfa/fwl/core/ifwl_adapterwidgetmgr.h" +#include "xfa/fwl/core/ifwl_app.h" CFWL_SDAdapterWidgetMgr::CFWL_SDAdapterWidgetMgr() {} CFWL_SDAdapterWidgetMgr::~CFWL_SDAdapterWidgetMgr() {} diff --git a/xfa/fwl/core/fwl_sdadapterimp.h b/xfa/fwl/core/fwl_sdadapterimp.h new file mode 100644 index 0000000000..0e8bd7f683 --- /dev/null +++ b/xfa/fwl/core/fwl_sdadapterimp.h @@ -0,0 +1,89 @@ +// Copyright 2014 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef XFA_FWL_CORE_FWL_SDADAPTERIMP_H_ +#define XFA_FWL_CORE_FWL_SDADAPTERIMP_H_ + +#include "xfa/fwl/core/ifwl_adapterthreadmgr.h" +#include "xfa/fwl/core/ifwl_adapterwidgetmgr.h" + +class CFWL_SDAdapterWidgetMgr : public IFWL_AdapterWidgetMgr { + public: + CFWL_SDAdapterWidgetMgr(); + ~CFWL_SDAdapterWidgetMgr(); + virtual FWL_ERR CreateWidget(IFWL_Widget* pWidget, + IFWL_Widget* pParent = NULL); + virtual FWL_ERR DestroyWidget(IFWL_Widget* pWidget); + virtual FWL_ERR SetWidgetRect(IFWL_Widget* pWidget, const CFX_RectF& rect); + virtual FWL_ERR SetWidgetPosition(IFWL_Widget* pWidget, + FX_FLOAT fx, + FX_FLOAT fy); + virtual FWL_ERR SetParentWidget(IFWL_Widget* pWidget, IFWL_Widget* pParent); + virtual FWL_ERR ShowWidget(IFWL_Widget* pWidget); + virtual FWL_ERR HideWidget(IFWL_Widget* pWidget); + virtual FWL_ERR SetNormal(IFWL_Widget* pWidget); + virtual FWL_ERR SetMaximize(IFWL_Widget* pWidget); + virtual FWL_ERR SetMinimize(IFWL_Widget* pWidget); + virtual FWL_ERR RunWidget(IFWL_Widget* pWidget); + virtual FWL_ERR RepaintWidget(IFWL_Widget* pWidget, const CFX_RectF* pRect); + virtual FWL_ERR Exit(int32_t iExitCode); + virtual FWL_ERR CreateWidgetWithNativeId(IFWL_Widget* pWidget, void* vp); + virtual FX_BOOL GetPopupPos(IFWL_Widget* pWidget, + FX_FLOAT fMinHeight, + FX_FLOAT fMaxHeight, + const CFX_RectF& rtAnchor, + CFX_RectF& rtPopup); + + public: + virtual FWL_ERR GetWidgetRect(IFWL_Widget* pWidget, CFX_RectF& rect); + virtual FWL_ERR SetWidgetIcon(IFWL_Widget* pWidget, + const CFX_DIBitmap* pIcon, + FX_BOOL bBig); + virtual FWL_ERR SetWidgetCaption(IFWL_Widget* pWidget, + const CFX_WideStringC& wsCaption); + virtual FWL_ERR SetBorderRegion(IFWL_Widget* pWidget, CFX_Path* pPath); + virtual FWL_ERR SetTransparent(IFWL_Widget* pWidget, FX_DWORD dwAlpha); + virtual FWL_ERR SetFullScreen(IFWL_Widget* pWidget, FX_BOOL bFullScreen); + virtual FX_BOOL CheckMessage(); + virtual FX_BOOL IsIdleMessage(); + virtual FWL_ERR DispatchMessage(); + virtual FWL_ERR GetWidgetDC(IFWL_Widget* pWidget, void*& pDC); + virtual FWL_ERR ReleaseWidgetDC(IFWL_Widget* pWidget, + void* pDC, + CFX_RectF* pClip = 0); + virtual void* GetWindow(IFWL_Widget* pWidget); + virtual FX_DWORD GetKeyState(FX_DWORD dwVirtKey); + virtual FWL_ERR RunLoop(IFWL_Widget* widget); + virtual FWL_ERR EndLoop(); + virtual FWL_ERR InitMenu(IFWL_Menu* pMenu, IFWL_MenuDP* pMenuData); + virtual FWL_ERR UpdateMenu(IFWL_Menu* pMenu, + const void* hItem, + int32_t iType); + virtual int32_t TrackPopupMenu(IFWL_Menu* pMenu, IFWL_MenuDP* pMenuData); + virtual FWL_ERR SetMessageHook(IFWL_AdapterMessageHook* hook); + virtual FWL_ERR GetSystemBorder(FX_FLOAT& l, + FX_FLOAT& t, + FX_FLOAT& r, + FX_FLOAT& b); +}; + +class CFWL_SDAdapterThreadMgr : public IFWL_AdapterThreadMgr { + public: + CFWL_SDAdapterThreadMgr(); + ~CFWL_SDAdapterThreadMgr(); + + public: + virtual FWL_ERR Start(IFWL_Thread* pThread, + FWL_HTHREAD& hThread, + FX_BOOL bSuspended = FALSE); + virtual FWL_ERR Resume(FWL_HTHREAD hThread); + virtual FWL_ERR Suspend(FWL_HTHREAD hThread); + virtual FWL_ERR Kill(FWL_HTHREAD hThread, int32_t iExitCode); + virtual FWL_ERR Stop(FWL_HTHREAD hThread, int32_t iExitCode); + virtual IFWL_Thread* GetCurrentThread(); +}; + +#endif // XFA_FWL_CORE_FWL_SDADAPTERIMP_H_ diff --git a/xfa/fwl/core/fwl_targetimp.h b/xfa/fwl/core/fwl_targetimp.h index 616c1acd01..69946fbf14 100644 --- a/xfa/fwl/core/fwl_targetimp.h +++ b/xfa/fwl/core/fwl_targetimp.h @@ -8,7 +8,7 @@ #define XFA_FWL_CORE_FWL_TARGETIMP_H_ #include "core/fxcrt/include/fx_basic.h" -#include "xfa/include/fwl/core/fwl_target.h" +#include "xfa/fwl/core/ifwl_target.h" class CFWL_TargetImp { public: diff --git a/xfa/fwl/core/fwl_threadimp.cpp b/xfa/fwl/core/fwl_threadimp.cpp index e0ec0b01e7..66c57ebee6 100644 --- a/xfa/fwl/core/fwl_threadimp.cpp +++ b/xfa/fwl/core/fwl_threadimp.cpp @@ -9,6 +9,7 @@ #include "xfa/fwl/core/fwl_appimp.h" #include "xfa/fwl/core/fwl_noteimp.h" #include "xfa/fwl/core/fwl_targetimp.h" +#include "xfa/fwl/core/ifwl_notethread.h" void IFWL_Thread::Release() { delete m_pImpl; diff --git a/xfa/fwl/core/fwl_threadimp.h b/xfa/fwl/core/fwl_threadimp.h index 591849bc08..3806f3ca4b 100644 --- a/xfa/fwl/core/fwl_threadimp.h +++ b/xfa/fwl/core/fwl_threadimp.h @@ -7,10 +7,11 @@ #ifndef XFA_FWL_CORE_FWL_THREADIMP_H_ #define XFA_FWL_CORE_FWL_THREADIMP_H_ -#include "xfa/include/fwl/core/fwl_thread.h" // For FWL_HTHREAD. +#include "xfa/fwl/core/ifwl_thread.h" class CFWL_NoteDriver; class IFWL_NoteDriver; +class IFWL_NoteThread; class CFWL_ThreadImp { public: diff --git a/xfa/fwl/core/fwl_timerimp.cpp b/xfa/fwl/core/fwl_timerimp.cpp index d9741f6fd4..b9cb478a18 100644 --- a/xfa/fwl/core/fwl_timerimp.cpp +++ b/xfa/fwl/core/fwl_timerimp.cpp @@ -7,10 +7,10 @@ #include "xfa/fwl/core/fwl_appimp.h" #include "xfa/fwl/core/fwl_targetimp.h" #include "xfa/fwl/core/fwl_threadimp.h" -#include "xfa/include/fwl/adapter/fwl_adapternative.h" -#include "xfa/include/fwl/adapter/fwl_adaptertimermgr.h" -#include "xfa/include/fwl/core/fwl_app.h" -#include "xfa/include/fwl/core/fwl_timer.h" +#include "xfa/fwl/core/ifwl_adapternative.h" +#include "xfa/fwl/core/ifwl_app.h" +#include "xfa/fwl/core/ifwl_timer.h" +#include "xfa/fwl/core/include/ifwl_adaptertimermgr.h" FWL_HTIMER FWL_StartTimer(IFWL_Timer* pTimer, FX_DWORD dwElapse, diff --git a/xfa/fwl/core/fwl_widgetdef.h b/xfa/fwl/core/fwl_widgetdef.h new file mode 100644 index 0000000000..849ba6fc7b --- /dev/null +++ b/xfa/fwl/core/fwl_widgetdef.h @@ -0,0 +1,249 @@ +// Copyright 2014 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef XFA_FWL_CORE_FWL_WIDGETDEF_H_ +#define XFA_FWL_CORE_FWL_WIDGETDEF_H_ + +#define FWL_WGTSTYLE_OverLapper (0L << 0) +#define FWL_WGTSTYLE_Popup (1L << 0) +#define FWL_WGTSTYLE_Child (2L << 0) +#define FWL_WGTSTYLE_Border (1L << 2) +#define FWL_WGTSTYLE_Caption (1L << 3) +#define FWL_WGTSTYLE_NarrowCaption (1L << 4) +#define FWL_WGTSTYLE_Icon (1L << 5) +#define FWL_WGTSTYLE_MinimizeBox (1L << 6) +#define FWL_WGTSTYLE_MaximizeBox (1L << 7) +#define FWL_WGTSTYLE_CloseBox (1L << 8) +#define FWL_WGTSTYLE_HScroll (1L << 9) +#define FWL_WGTSTYLE_VScroll (1L << 11) +#define FWL_WGTSTYLE_LeftScrollbar (1L << 12) +#define FWL_WGTSTYLE_LeftAlignment (0L << 13) +#define FWL_WGTSTYLE_CenterAlignment (1L << 13) +#define FWL_WGTSTYLE_RightAlignment (2L << 13) +#define FWL_WGTSTYLE_TopAlignment (0L << 15) +#define FWL_WGTSTYLE_VCenterAlignment (1L << 15) +#define FWL_WGTSTYLE_BottomAlignment (2L << 15) +#define FWL_WGTSTYLE_RTLReading (1L << 17) +#define FWL_WGTSTYLE_RTLLayout (1L << 18) +#define FWL_WGTSTYLE_EdgeNone (0L << 19) +#define FWL_WGTSTYLE_EdgeFlat (1L << 19) +#define FWL_WGTSTYLE_EdgeRaised (2L << 19) +#define FWL_WGTSTYLE_EdgeSunken (3L << 19) +#define FWL_WGTSTYLE_EdgeMask (3L << 19) +#define FWL_WGTSTYLE_Shadow (3L << 21) +#define FWL_WGTSTYLE_Group (1L << 22) +#define FWL_WGTSTYLE_TabStop (1L << 23) +#define FWL_WGTSTYLE_Offscreen (1L << 24) +#define FWL_WGTSTYLE_DragAcceptFiles (1L << 25) +#define FWL_WGTSTYLE_TopMost (1L << 26) +#define FWL_WGTSTYLE_TransParent (1L << 27) +#define FWL_WGTSTYLE_NoBackground (1L << 28) +#define FWL_WGTSTYLE_WindowTypeMask (3L << 0) +#define FWL_WGTSTATE_Restored (0L << 0) +#define FWL_WGTSTATE_Minimized (1L << 0) +#define FWL_WGTSTATE_Maximized (2L << 0) +#define FWL_WGTSTATE_Disabled (1L << 2) +#define FWL_WGTSTATE_Deactivated (1L << 3) +#define FWL_WGTSTATE_Focused (1L << 4) +#define FWL_WGTSTATE_Invisible (1L << 5) +#define FWL_WGTSTATE_MAX (6) +#define FWL_WGTHITTEST_Unknown 0 +#define FWL_WGTHITTEST_Client 1 +#define FWL_WGTHITTEST_Left 2 +#define FWL_WGTHITTEST_Top 3 +#define FWL_WGTHITTEST_Right 4 +#define FWL_WGTHITTEST_Bottom 5 +#define FWL_WGTHITTEST_LeftTop 6 +#define FWL_WGTHITTEST_RightTop 7 +#define FWL_WGTHITTEST_LeftBottom 8 +#define FWL_WGTHITTEST_RightBottom 9 +#define FWL_WGTHITTEST_Icon 10 +#define FWL_WGTHITTEST_Titlebar 11 +#define FWL_WGTHITTEST_MinBox 12 +#define FWL_WGTHITTEST_MaxBox 13 +#define FWL_WGTHITTEST_CloseBox 14 +#define FWL_WGTHITTEST_HScrollBar 15 +#define FWL_WGTHITTEST_VScrollBar 16 +#define FWL_WGTHITTEST_Border 17 +#define FWL_WGTHITTEST_Edge 18 +#define FWL_WGTHITTEST_Edit 19 +#define FWL_WGTHITTEST_HyperLink 20 +#define FWL_WGTHITTEST_MAX 21 +#define FWL_VKEY_LButton 0x01 +#define FWL_VKEY_RButton 0x02 +#define FWL_VKEY_MButton 0x04 +#define FWL_VKEY_Back 0x08 +#define FWL_VKEY_Tab 0x09 +#define FWL_VKEY_Clear 0x0C +#define FWL_VKEY_Return 0x0D +#define FWL_VKEY_Shift 0x10 +#define FWL_VKEY_Control 0x11 +#define FWL_VKEY_Menu 0x12 +#define FWL_VKEY_Pause 0x13 +#define FWL_VKEY_Capital 0x14 +#define FWL_VKEY_Kana 0x15 +#define FWL_VKEY_Hangul 0x15 +#define FWL_VKEY_Junja 0x17 +#define FWL_VKEY_Final 0x18 +#define FWL_VKEY_Hanja 0x19 +#define FWL_VKEY_Kanji 0x19 +#define FWL_VKEY_Escape 0x1B +#define FWL_VKEY_Convert 0x1C +#define FWL_VKEY_NonConvert 0x1D +#define FWL_VKEY_Accept 0x1E +#define FWL_VKEY_ModeChange 0x1F +#define FWL_VKEY_Space 0x20 +#define FWL_VKEY_Prior 0x21 +#define FWL_VKEY_Next 0x22 +#define FWL_VKEY_End 0x23 +#define FWL_VKEY_Home 0x24 +#define FWL_VKEY_Left 0x25 +#define FWL_VKEY_Up 0x26 +#define FWL_VKEY_Right 0x27 +#define FWL_VKEY_Down 0x28 +#define FWL_VKEY_Select 0x29 +#define FWL_VKEY_Print 0x2A +#define FWL_VKEY_Execute 0x2B +#define FWL_VKEY_Snapshot 0x2C +#define FWL_VKEY_Insert 0x2D +#define FWL_VKEY_Delete 0x2E +#define FWL_VKEY_Help 0x2F +#define FWL_VKEY_0 0x30 +#define FWL_VKEY_1 0x31 +#define FWL_VKEY_2 0x32 +#define FWL_VKEY_3 0x33 +#define FWL_VKEY_4 0x34 +#define FWL_VKEY_5 0x35 +#define FWL_VKEY_6 0x36 +#define FWL_VKEY_7 0x37 +#define FWL_VKEY_8 0x38 +#define FWL_VKEY_9 0x39 +#define FWL_VKEY_A 0x41 +#define FWL_VKEY_B 0x42 +#define FWL_VKEY_C 0x43 +#define FWL_VKEY_D 0x44 +#define FWL_VKEY_E 0x45 +#define FWL_VKEY_F 0x46 +#define FWL_VKEY_G 0x47 +#define FWL_VKEY_H 0x48 +#define FWL_VKEY_I 0x49 +#define FWL_VKEY_J 0x4A +#define FWL_VKEY_K 0x4B +#define FWL_VKEY_L 0x4C +#define FWL_VKEY_M 0x4D +#define FWL_VKEY_N 0x4E +#define FWL_VKEY_O 0x4F +#define FWL_VKEY_P 0x50 +#define FWL_VKEY_Q 0x51 +#define FWL_VKEY_R 0x52 +#define FWL_VKEY_S 0x53 +#define FWL_VKEY_T 0x54 +#define FWL_VKEY_U 0x55 +#define FWL_VKEY_V 0x56 +#define FWL_VKEY_W 0x57 +#define FWL_VKEY_X 0x58 +#define FWL_VKEY_Y 0x59 +#define FWL_VKEY_Z 0x5A +#define FWL_VKEY_LWin 0x5B +#define FWL_VKEY_Command 0x5B +#define FWL_VKEY_RWin 0x5C +#define FWL_VKEY_Apps 0x5D +#define FWL_VKEY_Sleep 0x5F +#define FWL_VKEY_NumPad0 0x60 +#define FWL_VKEY_NumPad1 0x61 +#define FWL_VKEY_NumPad2 0x62 +#define FWL_VKEY_NumPad3 0x63 +#define FWL_VKEY_NumPad4 0x64 +#define FWL_VKEY_NumPad5 0x65 +#define FWL_VKEY_NumPad6 0x66 +#define FWL_VKEY_NumPad7 0x67 +#define FWL_VKEY_NumPad8 0x68 +#define FWL_VKEY_NumPad9 0x69 +#define FWL_VKEY_Multiply 0x6A +#define FWL_VKEY_Add 0x6B +#define FWL_VKEY_Separator 0x6C +#define FWL_VKEY_Subtract 0x6D +#define FWL_VKEY_Decimal 0x6E +#define FWL_VKEY_Divide 0x6F +#define FWL_VKEY_F1 0x70 +#define FWL_VKEY_F2 0x71 +#define FWL_VKEY_F3 0x72 +#define FWL_VKEY_F4 0x73 +#define FWL_VKEY_F5 0x74 +#define FWL_VKEY_F6 0x75 +#define FWL_VKEY_F7 0x76 +#define FWL_VKEY_F8 0x77 +#define FWL_VKEY_F9 0x78 +#define FWL_VKEY_F10 0x79 +#define FWL_VKEY_F11 0x7A +#define FWL_VKEY_F12 0x7B +#define FWL_VKEY_F13 0x7C +#define FWL_VKEY_F14 0x7D +#define FWL_VKEY_F15 0x7E +#define FWL_VKEY_F16 0x7F +#define FWL_VKEY_F17 0x80 +#define FWL_VKEY_F18 0x81 +#define FWL_VKEY_F19 0x82 +#define FWL_VKEY_F20 0x83 +#define FWL_VKEY_F21 0x84 +#define FWL_VKEY_F22 0x85 +#define FWL_VKEY_F23 0x86 +#define FWL_VKEY_F24 0x87 +#define FWL_VKEY_NunLock 0x90 +#define FWL_VKEY_Scroll 0x91 +#define FWL_VKEY_LShift 0xA0 +#define FWL_VKEY_RShift 0xA1 +#define FWL_VKEY_LControl 0xA2 +#define FWL_VKEY_RControl 0xA3 +#define FWL_VKEY_LMenu 0xA4 +#define FWL_VKEY_RMenu 0xA5 +#define FWL_VKEY_BROWSER_Back 0xA6 +#define FWL_VKEY_BROWSER_Forward 0xA7 +#define FWL_VKEY_BROWSER_Refresh 0xA8 +#define FWL_VKEY_BROWSER_Stop 0xA9 +#define FWL_VKEY_BROWSER_Search 0xAA +#define FWL_VKEY_BROWSER_Favorites 0xAB +#define FWL_VKEY_BROWSER_Home 0xAC +#define FWL_VKEY_VOLUME_Mute 0xAD +#define FWL_VKEY_VOLUME_Down 0xAE +#define FWL_VKEY_VOLUME_Up 0xAF +#define FWL_VKEY_MEDIA_NEXT_Track 0xB0 +#define FWL_VKEY_MEDIA_PREV_Track 0xB1 +#define FWL_VKEY_MEDIA_Stop 0xB2 +#define FWL_VKEY_MEDIA_PLAY_Pause 0xB3 +#define FWL_VKEY_MEDIA_LAUNCH_Mail 0xB4 +#define FWL_VKEY_MEDIA_LAUNCH_MEDIA_Select 0xB5 +#define FWL_VKEY_MEDIA_LAUNCH_APP1 0xB6 +#define FWL_VKEY_MEDIA_LAUNCH_APP2 0xB7 +#define FWL_VKEY_OEM_1 0xBA +#define FWL_VKEY_OEM_Plus 0xBB +#define FWL_VKEY_OEM_Comma 0xBC +#define FWL_VKEY_OEM_Minus 0xBD +#define FWL_VKEY_OEM_Period 0xBE +#define FWL_VKEY_OEM_2 0xBF +#define FWL_VKEY_OEM_3 0xC0 +#define FWL_VKEY_OEM_4 0xDB +#define FWL_VKEY_OEM_5 0xDC +#define FWL_VKEY_OEM_6 0xDD +#define FWL_VKEY_OEM_7 0xDE +#define FWL_VKEY_OEM_8 0xDF +#define FWL_VKEY_OEM_102 0xE2 +#define FWL_VKEY_ProcessKey 0xE5 +#define FWL_VKEY_Packet 0xE7 +#define FWL_VKEY_Attn 0xF6 +#define FWL_VKEY_Crsel 0xF7 +#define FWL_VKEY_Exsel 0xF8 +#define FWL_VKEY_Ereof 0xF9 +#define FWL_VKEY_Play 0xFA +#define FWL_VKEY_Zoom 0xFB +#define FWL_VKEY_NoName 0xFC +#define FWL_VKEY_PA1 0xFD +#define FWL_VKEY_OEM_Clear 0xFE +#define FWL_VKEY_Unknown 0 +#define FWL_VKEYSTATE_Toggled 0x0001 +#define FWL_VKEYSTATE_Down 0x0100 + +#endif // XFA_FWL_CORE_FWL_WIDGETDEF_H_ diff --git a/xfa/fwl/core/fwl_widgetimp.cpp b/xfa/fwl/core/fwl_widgetimp.cpp index 18429681c5..fdc192756d 100644 --- a/xfa/fwl/core/fwl_widgetimp.cpp +++ b/xfa/fwl/core/fwl_widgetimp.cpp @@ -9,21 +9,29 @@ #include #include "xfa/fde/tto/fde_textout.h" +#include "xfa/fwl/basewidget/ifwl_combobox.h" +#include "xfa/fwl/basewidget/ifwl_datetimepicker.h" +#include "xfa/fwl/core/cfwl_message.h" +#include "xfa/fwl/core/cfwl_themebackground.h" +#include "xfa/fwl/core/cfwl_themepart.h" +#include "xfa/fwl/core/cfwl_themetext.h" #include "xfa/fwl/core/fwl_appimp.h" #include "xfa/fwl/core/fwl_noteimp.h" #include "xfa/fwl/core/fwl_targetimp.h" #include "xfa/fwl/core/fwl_threadimp.h" #include "xfa/fwl/core/fwl_widgetmgrimp.h" -#include "xfa/include/fwl/adapter/fwl_adapternative.h" -#include "xfa/include/fwl/adapter/fwl_adapterthreadmgr.h" -#include "xfa/include/fwl/adapter/fwl_adapterwidgetmgr.h" -#include "xfa/include/fwl/basewidget/fwl_combobox.h" -#include "xfa/include/fwl/basewidget/fwl_datetimepicker.h" -#include "xfa/include/fwl/basewidget/fwl_menu.h" -#include "xfa/include/fwl/core/fwl_app.h" -#include "xfa/include/fwl/core/fwl_content.h" -#include "xfa/include/fwl/core/fwl_form.h" -#include "xfa/include/fwl/core/fwl_theme.h" +#include "xfa/fwl/core/ifwl_adapternative.h" +#include "xfa/fwl/core/ifwl_adapterthreadmgr.h" +#include "xfa/fwl/core/ifwl_adapterwidgetmgr.h" +#include "xfa/fwl/core/ifwl_app.h" +#include "xfa/fwl/core/ifwl_content.h" +#include "xfa/fwl/core/ifwl_custom.h" +#include "xfa/fwl/core/ifwl_form.h" +#include "xfa/fwl/core/ifwl_proxy.h" +#include "xfa/fwl/core/ifwl_themeprovider.h" + +#define FWL_CLASSHASH_Menu 3957949655 +#define FWL_STYLEEXT_MNU_Vert (1L << 0) FWL_ERR IFWL_Widget::GetWidgetRect(CFX_RectF& rect, FX_BOOL bAutoSize) { return static_cast(GetImpl()) diff --git a/xfa/fwl/core/fwl_widgetimp.h b/xfa/fwl/core/fwl_widgetimp.h index 0aa7beb2fb..718268fd31 100644 --- a/xfa/fwl/core/fwl_widgetimp.h +++ b/xfa/fwl/core/fwl_widgetimp.h @@ -7,16 +7,20 @@ #ifndef XFA_FWL_CORE_FWL_WIDGETIMP_H_ #define XFA_FWL_CORE_FWL_WIDGETIMP_H_ +#include "core/fxcrt/include/fx_coordinates.h" +#include "core/fxcrt/include/fx_system.h" +#include "xfa/fwl/core/cfwl_event.h" #include "xfa/fwl/core/fwl_targetimp.h" -#include "xfa/include/fwl/core/fwl_widget.h" +#include "xfa/fwl/core/ifwl_widgetdelegate.h" +class CFWL_MsgKey; class CFWL_NoteThreadImp; class CFWL_WidgetImpProperties; class CFWL_WidgetMgr; class IFWL_DataProvider; +class IFWL_NoteThread; class IFWL_ThemeProvider; class IFWL_Widget; -class IFWL_WidgetDelegate; class CFWL_WidgetImp : public CFWL_TargetImp { public: diff --git a/xfa/fwl/core/fwl_widgetmgrimp.cpp b/xfa/fwl/core/fwl_widgetmgrimp.cpp index ab507c221a..9a9b2d6f24 100644 --- a/xfa/fwl/core/fwl_widgetmgrimp.cpp +++ b/xfa/fwl/core/fwl_widgetmgrimp.cpp @@ -6,15 +6,16 @@ #include "xfa/fwl/core/fwl_widgetmgrimp.h" +#include "xfa/fwl/core/cfwl_message.h" #include "xfa/fwl/core/fwl_appimp.h" #include "xfa/fwl/core/fwl_noteimp.h" #include "xfa/fwl/core/fwl_targetimp.h" #include "xfa/fwl/core/fwl_threadimp.h" #include "xfa/fwl/core/fwl_widgetimp.h" -#include "xfa/include/fwl/adapter/fwl_adapternative.h" -#include "xfa/include/fwl/adapter/fwl_adapterwidgetmgr.h" -#include "xfa/include/fwl/core/fwl_app.h" -#include "xfa/include/fwl/core/fwl_form.h" +#include "xfa/fwl/core/ifwl_adapternative.h" +#include "xfa/fwl/core/ifwl_adapterwidgetmgr.h" +#include "xfa/fwl/core/ifwl_app.h" +#include "xfa/fwl/core/ifwl_form.h" FX_BOOL FWL_UseOffscreen(IFWL_Widget* pWidget) { #if (_FX_OS_ == _FX_MACOSX_) diff --git a/xfa/fwl/core/fwl_widgetmgrimp.h b/xfa/fwl/core/fwl_widgetmgrimp.h index c29045d055..76e4425555 100644 --- a/xfa/fwl/core/fwl_widgetmgrimp.h +++ b/xfa/fwl/core/fwl_widgetmgrimp.h @@ -7,7 +7,9 @@ #ifndef XFA_FWL_CORE_FWL_WIDGETMGRIMP_H_ #define XFA_FWL_CORE_FWL_WIDGETMGRIMP_H_ -#include "xfa/include/fwl/core/fwl_widgetmgr.h" +#include "xfa/fwl/core/ifwl_widgetmgr.h" +#include "xfa/fwl/core/ifwl_widgetmgrdelegate.h" +#include "xfa/fxgraphics/include/cfx_graphics.h" class IFWL_Widget; class IFWL_AdapterWidgetMgr; diff --git a/xfa/fwl/core/ifwl_adapternative.h b/xfa/fwl/core/ifwl_adapternative.h new file mode 100644 index 0000000000..6c6d8019ff --- /dev/null +++ b/xfa/fwl/core/ifwl_adapternative.h @@ -0,0 +1,24 @@ +// Copyright 2014 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef XFA_FWL_CORE_IFWL_ADAPTERNATIVE_H_ +#define XFA_FWL_CORE_IFWL_ADAPTERNATIVE_H_ + +class IFWL_WidgetMgrDelegate; +class IFWL_AdapterWidgetMgr; +class IFWL_AdapterThreadMgr; +class IFWL_AdapterTimerMgr; + +class IFWL_AdapterNative { + public: + virtual ~IFWL_AdapterNative() {} + virtual IFWL_AdapterWidgetMgr* GetWidgetMgr( + IFWL_WidgetMgrDelegate* pDelegate) = 0; + virtual IFWL_AdapterThreadMgr* GetThreadMgr() = 0; + virtual IFWL_AdapterTimerMgr* GetTimerMgr() = 0; +}; + +#endif // XFA_FWL_CORE_IFWL_ADAPTERNATIVE_H_ diff --git a/xfa/fwl/core/ifwl_adapterthreadmgr.h b/xfa/fwl/core/ifwl_adapterthreadmgr.h new file mode 100644 index 0000000000..821ced3164 --- /dev/null +++ b/xfa/fwl/core/ifwl_adapterthreadmgr.h @@ -0,0 +1,27 @@ +// Copyright 2014 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef XFA_FWL_CORE_IFWL_ADAPTERTHREADMGR_H_ +#define XFA_FWL_CORE_IFWL_ADAPTERTHREADMGR_H_ + +#include "core/fxcrt/include/fx_system.h" +#include "xfa/fwl/core/fwl_error.h" +#include "xfa/fwl/core/ifwl_thread.h" + +class IFWL_AdapterThreadMgr { + public: + virtual ~IFWL_AdapterThreadMgr() {} + virtual FWL_ERR Start(IFWL_Thread* pThread, + FWL_HTHREAD& hThread, + FX_BOOL bSuspended = FALSE) = 0; + virtual FWL_ERR Resume(FWL_HTHREAD hThread) = 0; + virtual FWL_ERR Suspend(FWL_HTHREAD hThread) = 0; + virtual FWL_ERR Kill(FWL_HTHREAD hThread, int32_t iExitCode) = 0; + virtual FWL_ERR Stop(FWL_HTHREAD hThread, int32_t iExitCode) = 0; + virtual IFWL_Thread* GetCurrentThread() = 0; +}; + +#endif // XFA_FWL_CORE_IFWL_ADAPTERTHREADMGR_H_ diff --git a/xfa/fwl/core/ifwl_adapterwidgetmgr.h b/xfa/fwl/core/ifwl_adapterwidgetmgr.h new file mode 100644 index 0000000000..80dbfd9bf5 --- /dev/null +++ b/xfa/fwl/core/ifwl_adapterwidgetmgr.h @@ -0,0 +1,81 @@ +// Copyright 2014 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef XFA_FWL_CORE_IFWL_ADAPTERWIDGETMGR_H_ +#define XFA_FWL_CORE_IFWL_ADAPTERWIDGETMGR_H_ + +#include "core/fxcrt/include/fx_coordinates.h" +#include "core/fxcrt/include/fx_system.h" +#include "xfa/fwl/core/fwl_error.h" + +class IFWL_Widget; +class IFWL_Menu; +class IFWL_MenuDP; +class CFX_Path; +class CFX_DIBitmap; +class IFWL_AdapterMessageHook; + +class IFWL_AdapterWidgetMgr { + public: + virtual ~IFWL_AdapterWidgetMgr() {} + virtual FWL_ERR CreateWidget(IFWL_Widget* pWidget, + IFWL_Widget* pParent = NULL) = 0; + virtual FWL_ERR DestroyWidget(IFWL_Widget* pWidget) = 0; + virtual FWL_ERR GetWidgetRect(IFWL_Widget* pWidget, CFX_RectF& rect) = 0; + virtual FWL_ERR SetWidgetRect(IFWL_Widget* pWidget, + const CFX_RectF& rect) = 0; + virtual FWL_ERR SetWidgetPosition(IFWL_Widget* pWidget, + FX_FLOAT fx, + FX_FLOAT fy) = 0; + virtual FWL_ERR SetParentWidget(IFWL_Widget* pWidget, + IFWL_Widget* pParent) = 0; + virtual FWL_ERR SetWidgetIcon(IFWL_Widget* pWidget, + const CFX_DIBitmap* pIcon, + FX_BOOL bBig) = 0; + virtual FWL_ERR SetWidgetCaption(IFWL_Widget* pWidget, + const CFX_WideStringC& wsCaption) = 0; + virtual FWL_ERR SetBorderRegion(IFWL_Widget* pWidget, CFX_Path* pPath) = 0; + virtual FWL_ERR SetTransparent(IFWL_Widget* pWidget, FX_DWORD dwAlpha) = 0; + virtual FWL_ERR ShowWidget(IFWL_Widget* pWidget) = 0; + virtual FWL_ERR HideWidget(IFWL_Widget* pWidget) = 0; + virtual FWL_ERR SetNormal(IFWL_Widget* pWidget) = 0; + virtual FWL_ERR SetMaximize(IFWL_Widget* pWidget) = 0; + virtual FWL_ERR SetMinimize(IFWL_Widget* pWidget) = 0; + virtual FWL_ERR SetFullScreen(IFWL_Widget* pWidget, FX_BOOL bFullScreen) = 0; + virtual FX_BOOL CheckMessage() = 0; + virtual FX_BOOL IsIdleMessage() = 0; + virtual FWL_ERR DispatchMessage() = 0; + virtual FWL_ERR RepaintWidget(IFWL_Widget* pWidget, + const CFX_RectF* pRect) = 0; + virtual FWL_ERR Exit(int32_t iExitCode) = 0; + virtual FWL_ERR CreateWidgetWithNativeId(IFWL_Widget* pWidget, + void* UserData) = 0; + virtual FWL_ERR GetWidgetDC(IFWL_Widget* pWidget, void*& pDC) = 0; + virtual FWL_ERR ReleaseWidgetDC(IFWL_Widget* pWidget, + void* pDC, + CFX_RectF* pClip = 0) = 0; + virtual void* GetWindow(IFWL_Widget* pWidget) = 0; + virtual FX_DWORD GetKeyState(FX_DWORD dwVirtKey) = 0; + virtual FWL_ERR RunLoop(IFWL_Widget* widget) = 0; + virtual FWL_ERR EndLoop() = 0; + virtual FWL_ERR InitMenu(IFWL_Menu* pMenu, IFWL_MenuDP* pMenuData) = 0; + virtual FWL_ERR UpdateMenu(IFWL_Menu* pMenu, + const void* hItem, + int32_t iType) = 0; + virtual int32_t TrackPopupMenu(IFWL_Menu* pMenu, IFWL_MenuDP* pMenuData) = 0; + virtual FWL_ERR SetMessageHook(IFWL_AdapterMessageHook* hook) = 0; + virtual FWL_ERR GetSystemBorder(FX_FLOAT& l, + FX_FLOAT& t, + FX_FLOAT& r, + FX_FLOAT& b) = 0; + virtual FX_BOOL GetPopupPos(IFWL_Widget* pWidget, + FX_FLOAT fMinHeight, + FX_FLOAT fMaxHeight, + const CFX_RectF& rtAnchor, + CFX_RectF& rtPopup) = 0; +}; + +#endif // XFA_FWL_CORE_IFWL_ADAPTERWIDGETMGR_H_ diff --git a/xfa/fwl/core/ifwl_app.h b/xfa/fwl/core/ifwl_app.h new file mode 100644 index 0000000000..ed1fd673b2 --- /dev/null +++ b/xfa/fwl/core/ifwl_app.h @@ -0,0 +1,45 @@ +// Copyright 2014 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef XFA_FWL_CORE_IFWL_APP_H_ +#define XFA_FWL_CORE_IFWL_APP_H_ + +#include "core/fxcrt/include/fx_string.h" +#include "xfa/fwl/core/ifwl_notethread.h" + +class IFWL_AdapterNative; +class IFWL_Widget; +class IFWL_WidgetMgr; +class IFWL_ThemeProvider; +class IFWL_AdapterWidgetMgr; + +class IFWL_App : public IFWL_NoteThread { + public: + static IFWL_App* Create(IFWL_AdapterNative* pAdapter); + + FWL_ERR Initialize(); + FWL_ERR Finalize(); + IFWL_AdapterNative* GetAdapterNative(); + IFWL_WidgetMgr* GetWidgetMgr(); + IFWL_ThemeProvider* GetThemeProvider(); + FWL_ERR SetThemeProvider(IFWL_ThemeProvider* pThemeProvider); + FWL_ERR Exit(int32_t iExitCode); + + private: + IFWL_App() {} +}; + +IFWL_App* FWL_GetApp(); +void FWL_SetApp(IFWL_App* pApp); +IFWL_AdapterNative* FWL_GetAdapterNative(); +IFWL_AdapterWidgetMgr* FWL_GetAdapterWidgetMgr(); +IFWL_ThemeProvider* FWL_GetThemeProvider(); +extern FWL_ERR FWL_Execute(const CFX_WideStringC& wsExecutable, + const CFX_WideStringC& wsParameters); +FWL_ERR FWL_SetFullScreen(IFWL_Widget* pWidget, FX_BOOL bFullScreen); +FX_BOOL FWL_AppIsActived(); + +#endif // XFA_FWL_CORE_IFWL_APP_H_ diff --git a/xfa/fwl/core/ifwl_content.h b/xfa/fwl/core/ifwl_content.h new file mode 100644 index 0000000000..76292a609c --- /dev/null +++ b/xfa/fwl/core/ifwl_content.h @@ -0,0 +1,30 @@ +// Copyright 2014 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef XFA_FWL_CORE_IFWL_CONTENT_H_ +#define XFA_FWL_CORE_IFWL_CONTENT_H_ + +#include "xfa/fwl/core/fwl_widgetimp.h" +#include "xfa/fwl/core/ifwl_widget.h" +#include "core/fxcrt/include/fx_system.h" +#include "xfa/fwl/core/fwl_error.h" + +class IFWL_Content : public IFWL_Widget { + public: + static IFWL_Content* Create(); + FWL_ERR InsertWidget(IFWL_Widget* pChild, int32_t nIndex = -1); + FWL_ERR RemoveWidget(IFWL_Widget* pWidget); + FWL_ERR RemoveAllWidgets(); + FWL_ERR GetMinSize(FX_FLOAT& fWidth, FX_FLOAT& fHeight); + FWL_ERR SetMinSize(FX_FLOAT fWidth, FX_FLOAT fHeight); + FWL_ERR GetMaxSize(FX_FLOAT& fWidth, FX_FLOAT& fHeight); + FWL_ERR SetMaxSize(FX_FLOAT fWidth, FX_FLOAT fHeight); + + protected: + IFWL_Content(); +}; + +#endif // XFA_FWL_CORE_IFWL_CONTENT_H_ diff --git a/xfa/fwl/core/ifwl_custom.h b/xfa/fwl/core/ifwl_custom.h new file mode 100644 index 0000000000..d7f1b40923 --- /dev/null +++ b/xfa/fwl/core/ifwl_custom.h @@ -0,0 +1,26 @@ +// Copyright 2016 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef XFA_FWL_CORE_IFWL_CUSTOM_H_ +#define XFA_FWL_CORE_IFWL_CUSTOM_H_ + +#include "xfa/fwl/core/fwl_error.h" +#include "xfa/fwl/core/ifwl_widget.h" + +class IFWL_Proxy; + +class IFWL_Custom : public IFWL_Widget { + public: + static IFWL_Custom* Create(const CFWL_WidgetImpProperties& properties, + IFWL_Widget* pOuter); + + FWL_ERR SetProxy(IFWL_Proxy* pProxy); + + protected: + IFWL_Custom(); +}; + +#endif // XFA_FWL_CORE_IFWL_CUSTOM_H_ diff --git a/xfa/fwl/core/ifwl_custompanel.h b/xfa/fwl/core/ifwl_custompanel.h new file mode 100644 index 0000000000..3491227af0 --- /dev/null +++ b/xfa/fwl/core/ifwl_custompanel.h @@ -0,0 +1,28 @@ +// Copyright 2016 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef XFA_FWL_CORE_IFWL_CUSTOMPANEL_H_ +#define XFA_FWL_CORE_IFWL_CUSTOMPANEL_H_ + +#include "xfa/fwl/core/fwl_widgetimp.h" +#include "xfa/fwl/core/ifwl_widget.h" + +class IFWL_Proxy; + +class IFWL_CustomPanel : public IFWL_Widget { + public: + static IFWL_CustomPanel* Create(CFWL_WidgetImpProperties& properties, + IFWL_Widget* pOuter); + + IFWL_Content* GetContent(); + FWL_ERR SetContent(IFWL_Content* pContent); + FWL_ERR SetProxy(IFWL_Proxy* pProxy); + + protected: + IFWL_CustomPanel(); +}; + +#endif // XFA_FWL_CORE_IFWL_CUSTOMPANEL_H_ diff --git a/xfa/fwl/core/ifwl_dataprovider.h b/xfa/fwl/core/ifwl_dataprovider.h new file mode 100644 index 0000000000..271edb7ac8 --- /dev/null +++ b/xfa/fwl/core/ifwl_dataprovider.h @@ -0,0 +1,22 @@ +// Copyright 2016 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef XFA_FWL_CORE_IFWL_DATAPROVIDER_H_ +#define XFA_FWL_CORE_IFWL_DATAPROVIDER_H_ + +#include "core/fxcrt/include/fx_string.h" +#include "xfa/fwl/core/fwl_error.h" + +class IFWL_Widget; + +class IFWL_DataProvider { + public: + virtual ~IFWL_DataProvider() {} + virtual FWL_ERR GetCaption(IFWL_Widget* pWidget, + CFX_WideString& wsCaption) = 0; +}; + +#endif // XFA_FWL_CORE_IFWL_DATAPROVIDER_H_ diff --git a/xfa/fwl/core/ifwl_form.h b/xfa/fwl/core/ifwl_form.h new file mode 100644 index 0000000000..66391692a9 --- /dev/null +++ b/xfa/fwl/core/ifwl_form.h @@ -0,0 +1,97 @@ +// Copyright 2014 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef XFA_FWL_CORE_IFWL_FORM_H_ +#define XFA_FWL_CORE_IFWL_FORM_H_ + +#include "xfa/fwl/core/ifwl_panel.h" +#include "xfa/fwl/core/ifwl_dataprovider.h" +#include "core/fxcrt/include/fx_system.h" +#include "xfa/fwl/core/cfwl_widgetimpproperties.h" + +#define FWL_CLASS_Form L"FWL_FORM" +#define FWL_CLASSHASH_Form 881567292 +#define FWL_CLASS_FormProxy L"FWL_FORMPROXY" +#define FWL_CLASSHASH_FormProxy 881567291 +#define FWL_STYLEEXT_FRM_Resize (1L << 0) +#define FWL_STYLEEXT_FRM_NativeBorder (1L << 1) +#define FWL_STYLEEXT_FRM_RoundCorner (2L << 1) +#define FWL_STYLEEXT_FRM_RoundCorner4 (3L << 1) +#define FWL_STYLEEXT_FRM_NoDrawClient (1L << 3) +#define FWL_STYLEEXT_FRM_BorderCornerMask (3L << 1) +#define FWL_STYLEEXT_FRM_Max (3) + +#if (_FX_OS_ == _FX_MACOSX_) +#define FWL_UseMacSystemBorder +#endif + +#define FWL_WGTCAPACITY_FRM_CYCaption (FWL_WGTCAPACITY_MAX + 1) +#define FWL_WGTCAPACITY_FRM_CYNarrowCaption (FWL_WGTCAPACITY_MAX + 2) +#define FWL_WGTCAPACITY_FRM_BigIcon (FWL_WGTCAPACITY_MAX + 3) +#define FWL_WGTCAPACITY_FRM_SmallIcon (FWL_WGTCAPACITY_MAX + 4) +#define FWL_PART_FRM_Border 1 +#define FWL_PART_FRM_Edge 2 +#define FWL_PART_FRM_Background 3 +#define FWL_PART_FRM_Caption 4 +#define FWL_PART_FRM_NarrowCaption 5 +#define FWL_PART_FRM_CloseBox 6 +#define FWL_PART_FRM_MinimizeBox 7 +#define FWL_PART_FRM_MaximizeBox 8 +#define FWL_PART_FRM_HeadText 9 +#define FWL_PART_FRM_Icon 10 +#define FWL_PARTSTATE_FRM_Normal 1 +#define FWL_PARTSTATE_FRM_Hover 2 +#define FWL_PARTSTATE_FRM_Pressed 3 +#define FWL_PARTSTATE_FRM_Inactive 4 +#define FWL_PARTSTATE_FRM_Disabled 5 + +enum FWL_FORMSIZE { + FWL_FORMSIZE_Manual = 0, + FWL_FORMSIZE_Width, + FWL_FORMSIZE_Height, + FWL_FORMSIZE_All, +}; + +enum FWL_COMMANDID { + FWL_COMMANDID_Close = 0, + FWL_COMMANDID_Ok, + FWL_COMMANDID_Cancel, + FWL_COMMANDID_Abort, + FWL_COMMANDID_Retry, + FWL_COMMANDID_Ignore, + FWL_COMMANDID_Yes, + FWL_COMMANDID_No, +}; + +class CFX_DIBitmap; +class CFX_WideString; +class CFX_Path; +class IFWL_Widget; +class IFWL_Form; + +class IFWL_FormDP : public IFWL_DataProvider { + public: + virtual CFX_DIBitmap* GetIcon(IFWL_Widget* pWidget, FX_BOOL bBig) = 0; +}; + +class IFWL_Form : public IFWL_Panel { + public: + static IFWL_Form* CreateFormProxy(CFWL_WidgetImpProperties& properties, + CFX_WideString* classname, + IFWL_Widget* pOuter); + + FWL_FORMSIZE GetFormSize(); + FWL_ERR SetFormSize(FWL_FORMSIZE eFormSize); + IFWL_Widget* DoModal(); + IFWL_Widget* DoModal(FX_DWORD& dwCommandID); + FWL_ERR EndDoModal(); + FWL_ERR SetBorderRegion(CFX_Path* pPath); + + protected: + IFWL_Form(); +}; + +#endif // XFA_FWL_CORE_IFWL_FORM_H_ diff --git a/xfa/fwl/core/ifwl_grid.h b/xfa/fwl/core/ifwl_grid.h new file mode 100644 index 0000000000..f1ef57f912 --- /dev/null +++ b/xfa/fwl/core/ifwl_grid.h @@ -0,0 +1,93 @@ +// Copyright 2014 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef XFA_FWL_CORE_IFWL_GRID_H_ +#define XFA_FWL_CORE_IFWL_GRID_H_ + +#include "xfa/fwl/core/ifwl_content.h" + +class IFWL_Widget; + +#define FWL_CLASS_Grid L"FWL_GRID" +#define FWL_CLASSHASH_Grid 3150298670 +#define FWL_GRIDSTYLEEXT_ShowGridLines (1L << 0) + +struct FWL_LAYOUTDATA { + FX_FLOAT fWidth; + FX_FLOAT fHeight; +}; + +enum FWL_GRIDUNIT { + FWL_GRIDUNIT_Auto = 0, + FWL_GRIDUNIT_Fixed, + FWL_GRIDUNIT_Scaled, + FWL_GRIDUNIT_Infinity, +}; + +enum FWL_GRIDMARGIN { + FWL_GRIDMARGIN_Left = 0, + FWL_GRIDMARGIN_Top, + FWL_GRIDMARGIN_Right, + FWL_GRIDMARGIN_Bottom, +}; + +enum FWL_GRIDSIZE { + FWL_GRIDSIZE_Width = 0, + FWL_GRIDSIZE_Height, + FWL_GRIDSIZE_MinWidth, + FWL_GRIDSIZE_MinHeight, + FWL_GRIDSIZE_MaxWidth, + FWL_GRIDSIZE_MaxHeight, +}; + +typedef struct FWL_HGRIDCOLROW_ { void* pData; } * FWL_HGRIDCOLROW; + +class IFWL_Grid : public IFWL_Content { + public: + static IFWL_Grid* Create(const CFWL_WidgetImpProperties& properties); + + FWL_HGRIDCOLROW InsertColRow(FX_BOOL bColumn, int32_t nIndex = -1); + int32_t CountColRows(FX_BOOL bColumn); + FWL_HGRIDCOLROW GetColRow(FX_BOOL bColumn, int32_t nIndex); + int32_t GetIndex(FWL_HGRIDCOLROW hColRow); + FX_FLOAT GetSize(FWL_HGRIDCOLROW hColRow, FWL_GRIDUNIT& eUnit); + FWL_ERR SetSize(FWL_HGRIDCOLROW hColRow, FX_FLOAT fSize, FWL_GRIDUNIT eUnit); + FX_FLOAT GetMinSize(FWL_HGRIDCOLROW hColRow, FWL_GRIDUNIT& eUnit); + FWL_ERR SetMinSize(FWL_HGRIDCOLROW hColRow, + FX_FLOAT fSize, + FWL_GRIDUNIT eUnit); + FX_FLOAT GetMaxSize(FWL_HGRIDCOLROW hColRow, FWL_GRIDUNIT& eUnit); + FWL_ERR SetMaxSize(FWL_HGRIDCOLROW hColRow, + FX_FLOAT fSize, + FWL_GRIDUNIT eUnit); + FX_BOOL DeleteColRow(FWL_HGRIDCOLROW hColRow); + FX_BOOL IsColumn(FWL_HGRIDCOLROW hColRow); + int32_t GetWidgetPos(IFWL_Widget* pWidget, FX_BOOL bColumn); + FWL_ERR SetWidgetPos(IFWL_Widget* pWidget, int32_t iPos, FX_BOOL bColumn); + int32_t GetWidgetSpan(IFWL_Widget* pWidget, FX_BOOL bColumn); + FWL_ERR SetWidgetSpan(IFWL_Widget* pWidget, int32_t iSpan, FX_BOOL bColumn); + FX_FLOAT GetWidgetSize(IFWL_Widget* pWidget, + FWL_GRIDSIZE eSize, + FWL_GRIDUNIT& eUnit); + FWL_ERR SetWidgetSize(IFWL_Widget* pWidget, + FWL_GRIDSIZE eSize, + FX_FLOAT fSize, + FWL_GRIDUNIT eUit); + FX_BOOL GetWidgetMargin(IFWL_Widget* pWidget, + FWL_GRIDMARGIN eMargin, + FX_FLOAT& fMargin); + FWL_ERR SetWidgetMargin(IFWL_Widget* pWidget, + FWL_GRIDMARGIN eMargin, + FX_FLOAT fMargin); + FWL_ERR RemoveWidgetMargin(IFWL_Widget* pWidget, FWL_GRIDMARGIN eMargin); + FX_FLOAT GetGridSize(FWL_GRIDSIZE eSize, FWL_GRIDUNIT& eUnit); + FWL_ERR SetGridSize(FWL_GRIDSIZE eSize, FX_FLOAT fSize, FWL_GRIDUNIT eUit); + + protected: + IFWL_Grid(); +}; + +#endif // XFA_FWL_CORE_IFWL_GRID_H_ diff --git a/xfa/fwl/core/ifwl_notedriver.h b/xfa/fwl/core/ifwl_notedriver.h new file mode 100644 index 0000000000..cdedd6f0c9 --- /dev/null +++ b/xfa/fwl/core/ifwl_notedriver.h @@ -0,0 +1,58 @@ +// Copyright 2016 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef XFA_FWL_CORE_IFWL_NOTEDRIVER_H_ +#define XFA_FWL_CORE_IFWL_NOTEDRIVER_H_ + +#include "core/fxcrt/include/fx_system.h" +#include "xfa/fwl/core/cfwl_event.h" +#include "xfa/fwl/core/fwl_error.h" + +#define FWL_KEYFLAG_Ctrl (1 << 0) +#define FWL_KEYFLAG_Alt (1 << 1) +#define FWL_KEYFLAG_Shift (1 << 2) +#define FWL_KEYFLAG_Command (1 << 3) +#define FWL_KEYFLAG_LButton (1 << 4) +#define FWL_KEYFLAG_RButton (1 << 5) +#define FWL_KEYFLAG_MButton (1 << 6) + +class CFWL_Message; +class CFWL_Note; +class IFWL_NoteLoop; +class IFWL_NoteThread; +class IFWL_Widget; + +class IFWL_NoteDriver { + public: + virtual ~IFWL_NoteDriver() {} + + virtual FX_BOOL SendNote(CFWL_Note* pNote) = 0; + virtual FX_BOOL PostMessage(CFWL_Message* pMessage) = 0; + virtual FWL_ERR RegisterEventTarget( + IFWL_Widget* pListener, + IFWL_Widget* pEventSource = NULL, + FX_DWORD dwFilter = FWL_EVENT_ALL_MASK) = 0; + virtual FWL_ERR UnregisterEventTarget(IFWL_Widget* pListener) = 0; + virtual void ClearEventTargets(FX_BOOL bRemoveAll) = 0; + virtual int32_t GetQueueMaxSize() const = 0; + virtual FWL_ERR SetQueueMaxSize(const int32_t size) = 0; + virtual IFWL_NoteThread* GetOwnerThread() const = 0; + virtual FWL_ERR PushNoteLoop(IFWL_NoteLoop* pNoteLoop) = 0; + virtual IFWL_NoteLoop* PopNoteLoop() = 0; + virtual IFWL_Widget* GetFocus() = 0; + virtual FX_BOOL SetFocus(IFWL_Widget* pFocus, FX_BOOL bNotify = FALSE) = 0; + virtual void SetGrab(IFWL_Widget* pGrab, FX_BOOL bSet) = 0; + virtual FWL_ERR Run() = 0; +}; + +IFWL_Widget* FWL_GetCurrentThreadModalWidget(IFWL_NoteThread* pNoteThread); + +typedef FX_BOOL (*FWLMessageHookCallback)(CFWL_Message* msg, void* info); +FWL_ERR FWL_SetHook(IFWL_NoteDriver* driver, + FWLMessageHookCallback callback, + void* info); + +#endif // XFA_FWL_CORE_IFWL_NOTEDRIVER_H_ diff --git a/xfa/fwl/core/ifwl_noteloop.h b/xfa/fwl/core/ifwl_noteloop.h new file mode 100644 index 0000000000..a56d880b4a --- /dev/null +++ b/xfa/fwl/core/ifwl_noteloop.h @@ -0,0 +1,22 @@ +// Copyright 2016 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef XFA_FWL_CORE_IFWL_NOTELOOP_H_ +#define XFA_FWL_CORE_IFWL_NOTELOOP_H_ + +#include "core/fxcrt/include/fx_system.h" +#include "xfa/fwl/core/fwl_error.h" + +class CFWL_Message; + +class IFWL_NoteLoop { + public: + virtual ~IFWL_NoteLoop() {} + virtual FX_BOOL PreProcessMessage(CFWL_Message* pMessage) = 0; + virtual FWL_ERR Idle(int32_t count) = 0; +}; + +#endif // XFA_FWL_CORE_IFWL_NOTELOOP_H_ diff --git a/xfa/fwl/core/ifwl_notethread.h b/xfa/fwl/core/ifwl_notethread.h new file mode 100644 index 0000000000..30a29b5a9c --- /dev/null +++ b/xfa/fwl/core/ifwl_notethread.h @@ -0,0 +1,19 @@ +// Copyright 2016 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef XFA_FWL_CORE_IFWL_NOTETHREAD_H_ +#define XFA_FWL_CORE_IFWL_NOTETHREAD_H_ + +#include "xfa/fwl/core/ifwl_thread.h" + +class IFWL_NoteDriver; + +class IFWL_NoteThread : public IFWL_Thread { + public: + IFWL_NoteDriver* GetNoteDriver(); +}; + +#endif // XFA_FWL_CORE_IFWL_NOTETHREAD_H_ diff --git a/xfa/fwl/core/ifwl_panel.h b/xfa/fwl/core/ifwl_panel.h new file mode 100644 index 0000000000..ec9b02d3f7 --- /dev/null +++ b/xfa/fwl/core/ifwl_panel.h @@ -0,0 +1,30 @@ +// Copyright 2014 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef XFA_FWL_CORE_IFWL_PANEL_H_ +#define XFA_FWL_CORE_IFWL_PANEL_H_ + +#include "xfa/fwl/core/fwl_widgetimp.h" +#include "xfa/fwl/core/ifwl_widget.h" + +class IFWL_Content; + +#define FWL_CLASS_Panel L"FWL_Panel" +#define FWL_CLASSHASH_Panel 881567292 + +class IFWL_Panel : public IFWL_Widget { + public: + static IFWL_Panel* Create(CFWL_WidgetImpProperties& properties, + IFWL_Widget* pOuter); + + IFWL_Content* GetContent(); + FWL_ERR SetContent(IFWL_Content* pContent); + + protected: + IFWL_Panel(); +}; + +#endif // XFA_FWL_CORE_IFWL_PANEL_H_ diff --git a/xfa/fwl/core/ifwl_proxy.h b/xfa/fwl/core/ifwl_proxy.h new file mode 100644 index 0000000000..80393c5382 --- /dev/null +++ b/xfa/fwl/core/ifwl_proxy.h @@ -0,0 +1,21 @@ +// Copyright 2016 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef XFA_FWL_CORE_IFWL_PROXY_H_ +#define XFA_FWL_CORE_IFWL_PROXY_H_ + +#include "core/fxcrt/include/fx_coordinates.h" +#include "core/fxcrt/include/fx_system.h" +#include "xfa/fwl/core/fwl_error.h" + +class IFWL_Proxy { + public: + virtual ~IFWL_Proxy() {} + virtual FWL_ERR GetWidgetRect(CFX_RectF& rect, FX_BOOL bAutoSize = FALSE) = 0; + virtual FWL_ERR Update() = 0; +}; + +#endif // XFA_FWL_CORE_IFWL_PROXY_H_ diff --git a/xfa/fwl/core/ifwl_target.h b/xfa/fwl/core/ifwl_target.h new file mode 100644 index 0000000000..fd6410e16c --- /dev/null +++ b/xfa/fwl/core/ifwl_target.h @@ -0,0 +1,52 @@ +// Copyright 2014 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef XFA_FWL_CORE_IFWL_TARGET_H_ +#define XFA_FWL_CORE_IFWL_TARGET_H_ + +#include "core/fxcrt/include/fx_basic.h" +#include "xfa/fwl/core/fwl_error.h" + +// FWL contains three parallel inheritance hierarchies, which reference each +// other via pointers as follows: +// +// m_pImpl +// (nonesuch) IFWL_Target ----------> CFWL_TargetImp +// | | +// A A +// m_pIface | | +// CFWL_Widget ----------> IFWL_Widget CFWL_WidgetImp +// | | | +// A A A +// | | | +// CFWL_... IFWL_... CFWL_...Imp +// + +class CFWL_TargetImp; + +class IFWL_Target { + public: + IFWL_Target() : m_pImpl(nullptr) {} + virtual ~IFWL_Target(); + + // These call into equivalent polymorphic methods of m_pImpl. There + // should be no need to override these in subclasses. + FWL_ERR GetClassName(CFX_WideString& wsClass) const; + FX_DWORD GetClassID() const; + FX_BOOL IsInstance(const CFX_WideStringC& wsClass) const; + FWL_ERR Initialize(); + FWL_ERR Finalize(); + + CFWL_TargetImp* GetImpl() const { return m_pImpl; } + + protected: + void SetImpl(CFWL_TargetImp* pImpl) { m_pImpl = pImpl; } + + private: + CFWL_TargetImp* m_pImpl; +}; + +#endif // XFA_FWL_CORE_IFWL_TARGET_H_ diff --git a/xfa/fwl/core/ifwl_themeprovider.h b/xfa/fwl/core/ifwl_themeprovider.h new file mode 100644 index 0000000000..2bdacd5947 --- /dev/null +++ b/xfa/fwl/core/ifwl_themeprovider.h @@ -0,0 +1,58 @@ +// Copyright 2014 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef XFA_FWL_CORE_IFWL_THEMEPROVIDER_H_ +#define XFA_FWL_CORE_IFWL_THEMEPROVIDER_H_ + +#include "core/fxcrt/include/fx_coordinates.h" +#include "core/fxcrt/include/fx_system.h" +#include "xfa/fwl/core/fwl_error.h" + +#define FWL_WGTCAPACITY_CXBorder 1 +#define FWL_WGTCAPACITY_CYBorder 2 +#define FWL_WGTCAPACITY_ScrollBarWidth 3 +#define FWL_WGTCAPACITY_EdgeFlat 4 +#define FWL_WGTCAPACITY_EdgeRaised 5 +#define FWL_WGTCAPACITY_EdgeSunken 6 +#define FWL_WGTCAPACITY_Font 7 +#define FWL_WGTCAPACITY_FontSize 8 +#define FWL_WGTCAPACITY_TextColor 9 +#define FWL_WGTCAPACITY_TextSelColor 10 +#define FWL_WGTCAPACITY_LineHeight 11 +#define FWL_WGTCAPACITY_UIMargin 12 +#define FWL_WGTCAPACITY_SpaceAboveBelow 13 +#define FWL_WGTCAPACITY_MAX 65535 + +class CFWL_ThemeBackground; +class CFWL_ThemePart; +class CFWL_ThemeText; +class IFWL_Widget; + +class IFWL_ThemeProvider { + public: + virtual ~IFWL_ThemeProvider() {} + virtual FX_BOOL IsValidWidget(IFWL_Widget* pWidget) = 0; + virtual FX_DWORD GetThemeID(IFWL_Widget* pWidget) = 0; + virtual FX_DWORD SetThemeID(IFWL_Widget* pWidget, + FX_DWORD dwThemeID, + FX_BOOL bChildren = TRUE) = 0; + virtual FWL_ERR GetThemeMatrix(IFWL_Widget* pWidget, CFX_Matrix& matrix) = 0; + virtual FWL_ERR SetThemeMatrix(IFWL_Widget* pWidget, + const CFX_Matrix& matrix) = 0; + virtual FX_BOOL DrawBackground(CFWL_ThemeBackground* pParams) = 0; + virtual FX_BOOL DrawText(CFWL_ThemeText* pParams) = 0; + virtual void* GetCapacity(CFWL_ThemePart* pThemePart, + FX_DWORD dwCapacity) = 0; + virtual FX_BOOL IsCustomizedLayout(IFWL_Widget* pWidget) = 0; + virtual FWL_ERR GetPartRect(CFWL_ThemePart* pThemePart, + CFX_RectF& rtPart) = 0; + virtual FX_BOOL IsInPart(CFWL_ThemePart* pThemePart, + FX_FLOAT fx, + FX_FLOAT fy) = 0; + virtual FX_BOOL CalcTextRect(CFWL_ThemeText* pParams, CFX_RectF& rect) = 0; +}; + +#endif // XFA_FWL_CORE_IFWL_THEMEPROVIDER_H_ diff --git a/xfa/fwl/core/ifwl_thread.h b/xfa/fwl/core/ifwl_thread.h new file mode 100644 index 0000000000..c6f0c445d1 --- /dev/null +++ b/xfa/fwl/core/ifwl_thread.h @@ -0,0 +1,48 @@ +// Copyright 2014 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef XFA_FWL_CORE_IFWL_THREAD_H_ +#define XFA_FWL_CORE_IFWL_THREAD_H_ + +// The FWL thread/app code contains three parallel inheritance hierarchies, +// which reference each other via pointers as follows: +// +// m_pImpl +// (nonesuch) IFWL_Thread ----------> CFWL_ThreadImp +// | <---------- | +// A m_pIface A +// | | +// (nonesuch) IFWL_NoteThread CFWL_NoteThreadImp +// | | +// A A +// m_pIface | | +// CFWL_App --------------> IFWL_App CFWL_AppImp +// + +#include "xfa/fwl/core/fwl_error.h" + +class CFWL_ThreadImp; +class IFWL_NoteDriver; + +typedef struct FWL_HTHREAD_ { void* pData; } * FWL_HTHREAD; + +class IFWL_Thread { + public: + // These call into polymorphic methods in the impl; no need to override. + void Release(); + FWL_ERR Run(FWL_HTHREAD hThread); + + CFWL_ThreadImp* GetImpl() const { return m_pImpl; } + void SetImpl(CFWL_ThreadImp* pImpl) { m_pImpl = pImpl; } + + protected: + virtual ~IFWL_Thread() {} + + private: + CFWL_ThreadImp* m_pImpl; +}; + +#endif // XFA_FWL_CORE_IFWL_THREAD_H_ diff --git a/xfa/fwl/core/ifwl_timer.h b/xfa/fwl/core/ifwl_timer.h new file mode 100644 index 0000000000..42fc84be17 --- /dev/null +++ b/xfa/fwl/core/ifwl_timer.h @@ -0,0 +1,24 @@ +// Copyright 2014 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef XFA_FWL_CORE_IFWL_TIMER_H_ +#define XFA_FWL_CORE_IFWL_TIMER_H_ + +#include "core/fxcrt/include/fx_system.h" + +typedef struct FWL_HTIMER_ { void* pData; } * FWL_HTIMER; + +class IFWL_Timer { + public: + virtual ~IFWL_Timer() {} + virtual int32_t Run(FWL_HTIMER hTimer) = 0; +}; +FWL_HTIMER FWL_StartTimer(IFWL_Timer* pTimer, + FX_DWORD dwElapse, + FX_BOOL bImmediately = TRUE); +int32_t FWL_StopTimer(FWL_HTIMER hTimer); + +#endif // XFA_FWL_CORE_IFWL_TIMER_H_ diff --git a/xfa/fwl/core/ifwl_tooltiptarget.h b/xfa/fwl/core/ifwl_tooltiptarget.h new file mode 100644 index 0000000000..b0bbe44a7a --- /dev/null +++ b/xfa/fwl/core/ifwl_tooltiptarget.h @@ -0,0 +1,37 @@ +// Copyright 2016 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef XFA_FWL_CORE_IFWL_TOOLTIPTARGET_H_ +#define XFA_FWL_CORE_IFWL_TOOLTIPTARGET_H_ + +#include "core/fxcrt/include/fx_coordinates.h" +#include "core/fxcrt/include/fx_string.h" +#include "core/fxcrt/include/fx_system.h" +#include "xfa/fwl/core/fwl_error.h" + +class CFX_Graphics; +class IFWL_Widget; + +class IFWL_ToolTipTarget { + public: + virtual ~IFWL_ToolTipTarget() {} + virtual IFWL_Widget* GetWidget() = 0; + virtual FX_BOOL IsShowed() = 0; + virtual FWL_ERR DrawToolTip(CFX_Graphics* pGraphics, + const CFX_Matrix* pMatrix, + IFWL_Widget* pToolTip) = 0; + virtual FX_BOOL UseDefaultTheme() = 0; + virtual FWL_ERR GetCaption(CFX_WideString& wsCaption) = 0; + virtual FWL_ERR GetToolTipSize(CFX_SizeF& sz) = 0; + virtual FWL_ERR GetToolTipPos(CFX_PointF& pt) { return FWL_ERR_Indefinite; } +}; + +FWL_ERR FWL_AddToolTipTarget(IFWL_ToolTipTarget* pTarget); +FWL_ERR FWL_RemoveToolTipTarget(IFWL_ToolTipTarget* pTarget); +FWL_ERR FWL_SetToolTipInitialDelay(int32_t iDelayTime); +FWL_ERR FWL_SetToolTipAutoPopDelay(int32_t iDelayTime); + +#endif // XFA_FWL_CORE_IFWL_TOOLTIPTARGET_H_ diff --git a/xfa/fwl/core/ifwl_widget.h b/xfa/fwl/core/ifwl_widget.h new file mode 100644 index 0000000000..06e4bebc1c --- /dev/null +++ b/xfa/fwl/core/ifwl_widget.h @@ -0,0 +1,69 @@ +// Copyright 2014 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef XFA_FWL_CORE_IFWL_WIDGET_H_ +#define XFA_FWL_CORE_IFWL_WIDGET_H_ + +#include "xfa/fwl/core/fwl_error.h" +#include "core/fxcrt/include/fx_coordinates.h" +#include "core/fxcrt/include/fx_system.h" +#include "core/fxcrt/include/fx_basic.h" +#include "xfa/fwl/core/ifwl_target.h" + +class CFX_Graphics; +class IFWL_DataProvider; +class IFWL_Form; +class IFWL_NoteThread; +class IFWL_ThemeProvider; +class IFWL_WidgetDelegate; + +class IFWL_Widget : public IFWL_Target { + public: + FWL_ERR GetWidgetRect(CFX_RectF& rect, FX_BOOL bAutoSize = FALSE); + FWL_ERR GetGlobalRect(CFX_RectF& rect); + FWL_ERR SetWidgetRect(const CFX_RectF& rect); + FWL_ERR GetClientRect(CFX_RectF& rect); + IFWL_Widget* GetParent(); + FWL_ERR SetParent(IFWL_Widget* pParent); + IFWL_Widget* GetOwner(); + FWL_ERR SetOwner(IFWL_Widget* pOwner); + IFWL_Widget* GetOuter(); + FX_DWORD GetStyles(); + FWL_ERR ModifyStyles(FX_DWORD dwStylesAdded, FX_DWORD dwStylesRemoved); + FX_DWORD GetStylesEx(); + FWL_ERR ModifyStylesEx(FX_DWORD dwStylesExAdded, FX_DWORD dwStylesExRemoved); + FX_DWORD GetStates(); + FWL_ERR SetStates(FX_DWORD dwStates, FX_BOOL bSet = TRUE); + FWL_ERR SetPrivateData(void* module_id, + void* pData, + PD_CALLBACK_FREEDATA callback); + void* GetPrivateData(void* module_id); + FWL_ERR Update(); + FWL_ERR LockUpdate(); + FWL_ERR UnlockUpdate(); + FX_DWORD HitTest(FX_FLOAT fx, FX_FLOAT fy); + FWL_ERR TransformTo(IFWL_Widget* pWidget, FX_FLOAT& fx, FX_FLOAT& fy); + FWL_ERR TransformTo(IFWL_Widget* pWidget, CFX_RectF& rt); + FWL_ERR GetMatrix(CFX_Matrix& matrix, FX_BOOL bGlobal = FALSE); + FWL_ERR SetMatrix(const CFX_Matrix& matrix); + FWL_ERR DrawWidget(CFX_Graphics* pGraphics, const CFX_Matrix* pMatrix = NULL); + IFWL_ThemeProvider* GetThemeProvider(); + FWL_ERR SetThemeProvider(IFWL_ThemeProvider* pThemeProvider); + FWL_ERR SetDataProvider(IFWL_DataProvider* pDataProvider); + IFWL_WidgetDelegate* SetDelegate(IFWL_WidgetDelegate* pDelegate); + IFWL_NoteThread* GetOwnerThread() const; + CFX_SizeF GetOffsetFromParent(IFWL_Widget* pParent); +}; + +typedef CFX_MapPtrTemplate CFX_MapAccelerators; + +FWL_ERR FWL_Accelerator_SetApp(CFX_MapAccelerators* pMapAccel); +FWL_ERR FWL_Accelerator_SetThread(CFX_MapAccelerators* pMapAccel); +FWL_ERR FWL_Accelerator_SetForm(IFWL_Form* pFrom, + CFX_MapAccelerators* pMapAccel); +FWL_ERR FWL_EnabelWidget(IFWL_Widget* widget, FX_BOOL bEnable); + +#endif // XFA_FWL_CORE_IFWL_WIDGET_H_ diff --git a/xfa/fwl/core/ifwl_widgetdelegate.h b/xfa/fwl/core/ifwl_widgetdelegate.h new file mode 100644 index 0000000000..eeca68e8bc --- /dev/null +++ b/xfa/fwl/core/ifwl_widgetdelegate.h @@ -0,0 +1,26 @@ +// Copyright 2016 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef XFA_FWL_CORE_IFWL_WIDGETDELEGATE_H_ +#define XFA_FWL_CORE_IFWL_WIDGETDELEGATE_H_ + +#include "xfa/fwl/core/fwl_error.h" + +class CFWL_Event; +class CFWL_Message; +class CFX_Graphics; +class CFX_Matrix; + +class IFWL_WidgetDelegate { + public: + virtual ~IFWL_WidgetDelegate() {} + virtual int32_t OnProcessMessage(CFWL_Message* pMessage) = 0; + virtual FWL_ERR OnProcessEvent(CFWL_Event* pEvent) = 0; + virtual FWL_ERR OnDrawWidget(CFX_Graphics* pGraphics, + const CFX_Matrix* pMatrix = NULL) = 0; +}; + +#endif // XFA_FWL_CORE_IFWL_WIDGETDELEGATE_H_ diff --git a/xfa/fwl/core/ifwl_widgetmgr.h b/xfa/fwl/core/ifwl_widgetmgr.h new file mode 100644 index 0000000000..5ff11f3592 --- /dev/null +++ b/xfa/fwl/core/ifwl_widgetmgr.h @@ -0,0 +1,51 @@ +// Copyright 2014 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef XFA_FWL_CORE_IFWL_WIDGETMGR_H_ +#define XFA_FWL_CORE_IFWL_WIDGETMGR_H_ + +#include "core/fxcrt/include/fx_system.h" +#include "xfa/fwl/core/fwl_error.h" +#include "core/fxcrt/include/fx_coordinates.h" + +class CFX_WideString; +class CFX_Matrix; +class IFWL_Widget; + +enum FWL_WGTRELATION { + FWL_WGTRELATION_Parent = 0, + FWL_WGTRELATION_Owner, + FWL_WGTRELATION_FirstSibling, + FWL_WGTRELATION_PriorSibling, + FWL_WGTRELATION_NextSibling, + FWL_WGTRELATION_LastSibling, + FWL_WGTRELATION_FirstChild, + FWL_WGTRELATION_LastChild, + FWL_WGTRELATION_SystemForm +}; + +class IFWL_WidgetMgr { + public: + virtual ~IFWL_WidgetMgr() {} + virtual int32_t CountWidgets(IFWL_Widget* pParent = NULL) = 0; + virtual IFWL_Widget* GetWidget(int32_t nIndex, + IFWL_Widget* pParent = NULL) = 0; + virtual IFWL_Widget* GetWidget(IFWL_Widget* pWidget, + FWL_WGTRELATION eRelation) = 0; + virtual int32_t GetWidgetIndex(IFWL_Widget* pWidget) = 0; + virtual FX_BOOL SetWidgetIndex(IFWL_Widget* pWidget, int32_t nIndex) = 0; + virtual FWL_ERR RepaintWidget(IFWL_Widget* pWidget, + const CFX_RectF* pRect = NULL) = 0; + virtual FX_DWORD GetCapability() = 0; +}; + +IFWL_WidgetMgr* FWL_GetWidgetMgr(); +FX_BOOL FWL_WidgetIsChild(IFWL_Widget* parent, IFWL_Widget* find); +FWL_ERR FWL_WidgetMgrSnapshot(IFWL_Widget* pWidget, + const CFX_WideString* saveFile, + const CFX_Matrix* pMatrix = NULL); + +#endif // XFA_FWL_CORE_IFWL_WIDGETMGR_H_ diff --git a/xfa/fwl/core/ifwl_widgetmgrdelegate.h b/xfa/fwl/core/ifwl_widgetmgrdelegate.h new file mode 100644 index 0000000000..620495722a --- /dev/null +++ b/xfa/fwl/core/ifwl_widgetmgrdelegate.h @@ -0,0 +1,33 @@ +// Copyright 2016 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef XFA_FWL_CORE_IFWL_WIDGETMGRDELEGATE_H_ +#define XFA_FWL_CORE_IFWL_WIDGETMGRDELEGATE_H_ + +#include "core/fxcrt/include/fx_system.h" +#include "xfa/fwl/core/fwl_error.h" + +#define FWL_WGTMGR_DisableThread 0x00000001 +#define FWL_WGTMGR_DisableForm 0x00000002 + +class CFWL_Message; +class CFX_Graphics; +class CFX_Matrix; +class IFWL_Widget; + +class IFWL_WidgetMgrDelegate { + public: + virtual ~IFWL_WidgetMgrDelegate() {} + + virtual FWL_ERR OnSetCapability( + FX_DWORD dwCapability = FWL_WGTMGR_DisableThread) = 0; + virtual int32_t OnProcessMessageToForm(CFWL_Message* pMessage) = 0; + virtual FWL_ERR OnDrawWidget(IFWL_Widget* pWidget, + CFX_Graphics* pGraphics, + const CFX_Matrix* pMatrix = nullptr) = 0; +}; + +#endif // XFA_FWL_CORE_IFWL_WIDGETMGRDELEGATE_H_ diff --git a/xfa/fwl/core/include/ifwl_adaptertimermgr.h b/xfa/fwl/core/include/ifwl_adaptertimermgr.h new file mode 100644 index 0000000000..7c776704e1 --- /dev/null +++ b/xfa/fwl/core/include/ifwl_adaptertimermgr.h @@ -0,0 +1,25 @@ +// Copyright 2014 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef XFA_FWL_CORE_INCLUDE_IFWL_ADAPTERTIMERMGR_H_ +#define XFA_FWL_CORE_INCLUDE_IFWL_ADAPTERTIMERMGR_H_ + +#include "xfa/fwl/core/fwl_error.h" +#include "xfa/fwl/core/ifwl_timer.h" + +class IFWL_Timer; + +class IFWL_AdapterTimerMgr { + public: + virtual ~IFWL_AdapterTimerMgr() {} + virtual FWL_ERR Start(IFWL_Timer* pTimer, + FX_DWORD dwElapse, + FWL_HTIMER& hTimer, + FX_BOOL bImmediately = TRUE) = 0; + virtual FWL_ERR Stop(FWL_HTIMER hTimer) = 0; +}; + +#endif // XFA_FWL_CORE_INCLUDE_IFWL_ADAPTERTIMERMGR_H_ diff --git a/xfa/fwl/lightwidget/app.cpp b/xfa/fwl/lightwidget/app.cpp index ca6462a2a6..1d5b7d6f8f 100644 --- a/xfa/fwl/lightwidget/app.cpp +++ b/xfa/fwl/lightwidget/app.cpp @@ -7,8 +7,8 @@ #include "xfa/include/fwl/lightwidget/app.h" #include "core/fxcrt/include/fx_coordinates.h" -#include "xfa/include/fwl/core/fwl_app.h" -#include "xfa/include/fwl/core/fwl_error.h" +#include "xfa/fwl/core/fwl_error.h" +#include "xfa/fwl/core/ifwl_app.h" #include "xfa/include/fwl/lightwidget/theme.h" CFWL_App::CFWL_App() : m_pIface(IFWL_App::Create(nullptr)), m_pTheme(nullptr) {} diff --git a/xfa/fwl/lightwidget/caret.cpp b/xfa/fwl/lightwidget/caret.cpp index b81c6c2b08..5415aa5560 100644 --- a/xfa/fwl/lightwidget/caret.cpp +++ b/xfa/fwl/lightwidget/caret.cpp @@ -8,9 +8,9 @@ #include +#include "xfa/fwl/basewidget/ifwl_caret.h" #include "xfa/fwl/core/fwl_targetimp.h" #include "xfa/fxgraphics/cfx_color.h" -#include "xfa/include/fwl/basewidget/fwl_caret.h" #include "xfa/include/fwl/lightwidget/edit.h" CFWL_Caret* CFWL_Caret::Create() { diff --git a/xfa/fwl/lightwidget/checkbox.cpp b/xfa/fwl/lightwidget/checkbox.cpp index 6b7a370973..1d921993d6 100644 --- a/xfa/fwl/lightwidget/checkbox.cpp +++ b/xfa/fwl/lightwidget/checkbox.cpp @@ -8,7 +8,7 @@ #include -#include "xfa/include/fwl/core/fwl_error.h" +#include "xfa/fwl/core/fwl_error.h" CFWL_CheckBox* CFWL_CheckBox::Create() { return new CFWL_CheckBox; diff --git a/xfa/fwl/lightwidget/combobox.cpp b/xfa/fwl/lightwidget/combobox.cpp index aadb0d5ab6..7ea1370341 100644 --- a/xfa/fwl/lightwidget/combobox.cpp +++ b/xfa/fwl/lightwidget/combobox.cpp @@ -8,8 +8,8 @@ #include -#include "xfa/include/fwl/core/fwl_error.h" -#include "xfa/include/fwl/core/fwl_widget.h" +#include "xfa/fwl/core/fwl_error.h" +#include "xfa/fwl/core/ifwl_widget.h" CFWL_ComboBox* CFWL_ComboBox::Create() { return new CFWL_ComboBox; diff --git a/xfa/fwl/lightwidget/datetimepicker.cpp b/xfa/fwl/lightwidget/datetimepicker.cpp index bf1d976d90..3372c53829 100644 --- a/xfa/fwl/lightwidget/datetimepicker.cpp +++ b/xfa/fwl/lightwidget/datetimepicker.cpp @@ -8,10 +8,9 @@ #include -#include "xfa/include/fwl/basewidget/fwl_datetimepicker.h" -#include "xfa/include/fwl/core/fwl_error.h" -#include "xfa/include/fwl/core/fwl_note.h" -#include "xfa/include/fwl/core/fwl_widget.h" +#include "xfa/fwl/basewidget/ifwl_datetimepicker.h" +#include "xfa/fwl/core/fwl_error.h" +#include "xfa/fwl/core/ifwl_widget.h" CFWL_DateTimePicker* CFWL_DateTimePicker::Create() { return new CFWL_DateTimePicker; diff --git a/xfa/fwl/lightwidget/edit.cpp b/xfa/fwl/lightwidget/edit.cpp index 303943a8f6..612d5a4ac2 100644 --- a/xfa/fwl/lightwidget/edit.cpp +++ b/xfa/fwl/lightwidget/edit.cpp @@ -9,7 +9,7 @@ #include #include -#include "xfa/include/fwl/basewidget/fwl_edit.h" +#include "xfa/fwl/basewidget/ifwl_edit.h" CFWL_Edit* CFWL_Edit::Create() { return new CFWL_Edit; diff --git a/xfa/fwl/lightwidget/scrollbar.cpp b/xfa/fwl/lightwidget/scrollbar.cpp index cc927e724e..a070483183 100644 --- a/xfa/fwl/lightwidget/scrollbar.cpp +++ b/xfa/fwl/lightwidget/scrollbar.cpp @@ -8,7 +8,7 @@ #include -#include "xfa/include/fwl/basewidget/fwl_scrollbar.h" +#include "xfa/fwl/basewidget/ifwl_scrollbar.h" CFWL_ScrollBar* CFWL_ScrollBar::Create() { return new CFWL_ScrollBar; diff --git a/xfa/fwl/lightwidget/theme.cpp b/xfa/fwl/lightwidget/theme.cpp index fe9f55928b..950d70e944 100644 --- a/xfa/fwl/lightwidget/theme.cpp +++ b/xfa/fwl/lightwidget/theme.cpp @@ -8,6 +8,9 @@ #include +#include "xfa/fwl/core/cfwl_themebackground.h" +#include "xfa/fwl/core/cfwl_themepart.h" +#include "xfa/fwl/core/cfwl_themetext.h" #include "xfa/include/fwl/theme/barcodetp.h" #include "xfa/include/fwl/theme/carettp.h" #include "xfa/include/fwl/theme/checkboxtp.h" diff --git a/xfa/fwl/lightwidget/widget.cpp b/xfa/fwl/lightwidget/widget.cpp index daaab3c300..ae1f147502 100644 --- a/xfa/fwl/lightwidget/widget.cpp +++ b/xfa/fwl/lightwidget/widget.cpp @@ -7,13 +7,14 @@ #include "xfa/include/fwl/lightwidget/widget.h" #include "xfa/fde/tto/fde_textout.h" +#include "xfa/fwl/core/cfwl_themetext.h" #include "xfa/fwl/core/fwl_noteimp.h" #include "xfa/fwl/core/fwl_noteimp.h" #include "xfa/fwl/core/fwl_targetimp.h" #include "xfa/fwl/core/fwl_widgetimp.h" #include "xfa/fwl/core/fwl_widgetmgrimp.h" -#include "xfa/include/fwl/core/fwl_theme.h" -#include "xfa/include/fwl/core/fwl_thread.h" +#include "xfa/fwl/core/ifwl_notethread.h" +#include "xfa/fwl/core/ifwl_themeprovider.h" CFWL_WidgetImpProperties CFWL_WidgetProperties::MakeWidgetImpProperties( IFWL_DataProvider* pDataProvider) const { diff --git a/xfa/fwl/theme/barcodetp.cpp b/xfa/fwl/theme/barcodetp.cpp index 477ce99d9b..da10d7a344 100644 --- a/xfa/fwl/theme/barcodetp.cpp +++ b/xfa/fwl/theme/barcodetp.cpp @@ -6,9 +6,9 @@ #include "xfa/include/fwl/theme/barcodetp.h" -#include "xfa/include/fwl/basewidget/fwl_barcode.h" -#include "xfa/include/fwl/core/fwl_theme.h" -#include "xfa/include/fwl/core/fwl_widget.h" +#include "xfa/fwl/basewidget/ifwl_barcode.h" +#include "xfa/fwl/core/cfwl_themebackground.h" +#include "xfa/fwl/core/ifwl_widget.h" CFWL_BarcodeTP::CFWL_BarcodeTP() {} CFWL_BarcodeTP::~CFWL_BarcodeTP() {} diff --git a/xfa/fwl/theme/carettp.cpp b/xfa/fwl/theme/carettp.cpp index 7b165f9b68..b1cf5ef65a 100644 --- a/xfa/fwl/theme/carettp.cpp +++ b/xfa/fwl/theme/carettp.cpp @@ -6,10 +6,11 @@ #include "xfa/include/fwl/theme/carettp.h" +#include "xfa/fwl/basewidget/ifwl_caret.h" +#include "xfa/fwl/core/cfwl_themebackground.h" +#include "xfa/fwl/core/ifwl_widget.h" #include "xfa/fxgraphics/cfx_color.h" #include "xfa/fxgraphics/cfx_path.h" -#include "xfa/include/fwl/basewidget/fwl_caret.h" -#include "xfa/include/fwl/core/fwl_widget.h" CFWL_CaretTP::CFWL_CaretTP() {} CFWL_CaretTP::~CFWL_CaretTP() {} diff --git a/xfa/fwl/theme/checkboxtp.cpp b/xfa/fwl/theme/checkboxtp.cpp index b039609826..e7d206a1a0 100644 --- a/xfa/fwl/theme/checkboxtp.cpp +++ b/xfa/fwl/theme/checkboxtp.cpp @@ -7,10 +7,12 @@ #include "xfa/include/fwl/theme/checkboxtp.h" #include "xfa/fde/tto/fde_textout.h" +#include "xfa/fwl/basewidget/ifwl_checkbox.h" +#include "xfa/fwl/core/cfwl_themebackground.h" +#include "xfa/fwl/core/cfwl_themetext.h" +#include "xfa/fwl/core/ifwl_widget.h" #include "xfa/fxgraphics/cfx_color.h" #include "xfa/fxgraphics/cfx_path.h" -#include "xfa/include/fwl/basewidget/fwl_checkbox.h" -#include "xfa/include/fwl/core/fwl_widget.h" #define CHECKBOX_SIZE_SIGNMARGIN 3 #define CHECKBOX_SIZE_SIGNBORDER 2 diff --git a/xfa/fwl/theme/comboboxtp.cpp b/xfa/fwl/theme/comboboxtp.cpp index c3824ec703..23b1320fe3 100644 --- a/xfa/fwl/theme/comboboxtp.cpp +++ b/xfa/fwl/theme/comboboxtp.cpp @@ -6,10 +6,12 @@ #include "xfa/include/fwl/theme/comboboxtp.h" +#include "xfa/fwl/basewidget/ifwl_combobox.h" +#include "xfa/fwl/core/cfwl_themebackground.h" +#include "xfa/fwl/core/ifwl_themeprovider.h" +#include "xfa/fwl/core/ifwl_widget.h" #include "xfa/fxgraphics/cfx_color.h" #include "xfa/fxgraphics/cfx_path.h" -#include "xfa/include/fwl/basewidget/fwl_combobox.h" -#include "xfa/include/fwl/core/fwl_widget.h" #define FWLTHEME_CAPACITY_ComboFormHandler 8.0f diff --git a/xfa/fwl/theme/datetimepickertp.cpp b/xfa/fwl/theme/datetimepickertp.cpp index 5efe0b850e..99c5ccb448 100644 --- a/xfa/fwl/theme/datetimepickertp.cpp +++ b/xfa/fwl/theme/datetimepickertp.cpp @@ -6,7 +6,8 @@ #include "xfa/include/fwl/theme/datetimepickertp.h" -#include "xfa/include/fwl/basewidget/fwl_datetimepicker.h" +#include "xfa/fwl/basewidget/ifwl_datetimepicker.h" +#include "xfa/fwl/core/cfwl_themebackground.h" CFWL_DateTimePickerTP::CFWL_DateTimePickerTP() { m_pThemeData = new DTPThemeData; diff --git a/xfa/fwl/theme/edittp.cpp b/xfa/fwl/theme/edittp.cpp index 61a28ef78a..a99b2146d1 100644 --- a/xfa/fwl/theme/edittp.cpp +++ b/xfa/fwl/theme/edittp.cpp @@ -6,10 +6,11 @@ #include "xfa/include/fwl/theme/edittp.h" +#include "xfa/fwl/basewidget/ifwl_edit.h" +#include "xfa/fwl/core/cfwl_themebackground.h" +#include "xfa/fwl/core/ifwl_widget.h" #include "xfa/fxgraphics/cfx_color.h" #include "xfa/fxgraphics/cfx_path.h" -#include "xfa/include/fwl/basewidget/fwl_edit.h" -#include "xfa/include/fwl/core/fwl_widget.h" CFWL_EditTP::CFWL_EditTP() {} CFWL_EditTP::~CFWL_EditTP() {} diff --git a/xfa/fwl/theme/formtp.cpp b/xfa/fwl/theme/formtp.cpp index d07902d2c7..67ef025f7e 100644 --- a/xfa/fwl/theme/formtp.cpp +++ b/xfa/fwl/theme/formtp.cpp @@ -7,10 +7,14 @@ #include "xfa/include/fwl/theme/formtp.h" #include "xfa/fde/tto/fde_textout.h" +#include "xfa/fwl/core/cfwl_themebackground.h" +#include "xfa/fwl/core/cfwl_themepart.h" +#include "xfa/fwl/core/cfwl_themetext.h" +#include "xfa/fwl/core/ifwl_form.h" +#include "xfa/fwl/core/ifwl_themeprovider.h" +#include "xfa/fwl/core/ifwl_widget.h" #include "xfa/fxgraphics/cfx_color.h" #include "xfa/fxgraphics/cfx_path.h" -#include "xfa/include/fwl/core/fwl_form.h" -#include "xfa/include/fwl/core/fwl_widget.h" #define FWLTHEME_CAPACITY_CXFormBorder 3 #define FWLTHEME_CAPACITY_CYFormBorder 3 diff --git a/xfa/fwl/theme/listboxtp.cpp b/xfa/fwl/theme/listboxtp.cpp index 72979db02c..0022e06f50 100644 --- a/xfa/fwl/theme/listboxtp.cpp +++ b/xfa/fwl/theme/listboxtp.cpp @@ -6,10 +6,11 @@ #include "xfa/include/fwl/theme/listboxtp.h" +#include "xfa/fwl/basewidget/ifwl_listbox.h" +#include "xfa/fwl/core/cfwl_themebackground.h" +#include "xfa/fwl/core/ifwl_widget.h" #include "xfa/fxgraphics/cfx_color.h" #include "xfa/fxgraphics/cfx_path.h" -#include "xfa/include/fwl/basewidget/fwl_listbox.h" -#include "xfa/include/fwl/core/fwl_widget.h" CFWL_ListBoxTP::CFWL_ListBoxTP() {} CFWL_ListBoxTP::~CFWL_ListBoxTP() {} diff --git a/xfa/fwl/theme/monthcalendartp.cpp b/xfa/fwl/theme/monthcalendartp.cpp index 5a2f3afe4d..832adde73a 100644 --- a/xfa/fwl/theme/monthcalendartp.cpp +++ b/xfa/fwl/theme/monthcalendartp.cpp @@ -7,10 +7,13 @@ #include "xfa/include/fwl/theme/monthcalendartp.h" #include "xfa/fde/tto/fde_textout.h" +#include "xfa/fwl/basewidget/ifwl_monthcalendar.h" +#include "xfa/fwl/core/cfwl_themebackground.h" +#include "xfa/fwl/core/cfwl_themetext.h" +#include "xfa/fwl/core/ifwl_themeprovider.h" +#include "xfa/fwl/core/ifwl_widget.h" #include "xfa/fxgraphics/cfx_color.h" #include "xfa/fxgraphics/cfx_path.h" -#include "xfa/include/fwl/basewidget/fwl_monthcalendar.h" -#include "xfa/include/fwl/core/fwl_widget.h" #define FWL_THEMECAPACITY_MC_HEADER_WIDTH 200 #define FWL_THEMECAPACITY_MC_HEADER_HEIGHT 30 diff --git a/xfa/fwl/theme/pictureboxtp.cpp b/xfa/fwl/theme/pictureboxtp.cpp index 5d7c079e86..ab5cd02246 100644 --- a/xfa/fwl/theme/pictureboxtp.cpp +++ b/xfa/fwl/theme/pictureboxtp.cpp @@ -6,10 +6,12 @@ #include "xfa/include/fwl/theme/pictureboxtp.h" -#include "xfa/include/fwl/basewidget/fwl_picturebox.h" -#include "xfa/include/fwl/core/fwl_widget.h" +#include "xfa/fwl/basewidget/ifwl_picturebox.h" +#include "xfa/fwl/core/cfwl_themebackground.h" +#include "xfa/fwl/core/ifwl_widget.h" CFWL_PictureBoxTP::CFWL_PictureBoxTP() {} + CFWL_PictureBoxTP::~CFWL_PictureBoxTP() {} FX_BOOL CFWL_PictureBoxTP::IsValidWidget(IFWL_Widget* pWidget) { diff --git a/xfa/fwl/theme/pushbuttontp.cpp b/xfa/fwl/theme/pushbuttontp.cpp index 456199e877..091375094e 100644 --- a/xfa/fwl/theme/pushbuttontp.cpp +++ b/xfa/fwl/theme/pushbuttontp.cpp @@ -6,10 +6,12 @@ #include "xfa/include/fwl/theme/pushbuttontp.h" +#include "xfa/fwl/basewidget/ifwl_pushbutton.h" +#include "xfa/fwl/core/cfwl_themebackground.h" +#include "xfa/fwl/core/ifwl_themeprovider.h" +#include "xfa/fwl/core/ifwl_widget.h" #include "xfa/fxgraphics/cfx_color.h" #include "xfa/fxgraphics/cfx_path.h" -#include "xfa/include/fwl/basewidget/fwl_pushbutton.h" -#include "xfa/include/fwl/core/fwl_widget.h" #define PUSHBUTTON_SIZE_Corner 2 diff --git a/xfa/fwl/theme/scrollbartp.cpp b/xfa/fwl/theme/scrollbartp.cpp index 7a794050cb..2c7bed02da 100644 --- a/xfa/fwl/theme/scrollbartp.cpp +++ b/xfa/fwl/theme/scrollbartp.cpp @@ -6,10 +6,12 @@ #include "xfa/include/fwl/theme/scrollbartp.h" +#include "xfa/fwl/basewidget/ifwl_scrollbar.h" +#include "xfa/fwl/core/cfwl_themebackground.h" +#include "xfa/fwl/core/ifwl_themeprovider.h" +#include "xfa/fwl/core/ifwl_widget.h" #include "xfa/fxgraphics/cfx_color.h" #include "xfa/fxgraphics/cfx_path.h" -#include "xfa/include/fwl/basewidget/fwl_scrollbar.h" -#include "xfa/include/fwl/core/fwl_widget.h" #define FWL_SCROLL_PawLen 12.5f diff --git a/xfa/fwl/theme/widgettp.cpp b/xfa/fwl/theme/widgettp.cpp index 7d3f4626f6..2eda644838 100644 --- a/xfa/fwl/theme/widgettp.cpp +++ b/xfa/fwl/theme/widgettp.cpp @@ -9,10 +9,14 @@ #include #include "xfa/fde/tto/fde_textout.h" +#include "xfa/fwl/core/cfwl_themebackground.h" +#include "xfa/fwl/core/cfwl_themepart.h" +#include "xfa/fwl/core/cfwl_themetext.h" +#include "xfa/fwl/core/ifwl_themeprovider.h" +#include "xfa/fwl/core/ifwl_widgetmgr.h" #include "xfa/fxgraphics/cfx_color.h" #include "xfa/fxgraphics/cfx_path.h" #include "xfa/fxgraphics/cfx_shading.h" -#include "xfa/include/fwl/core/fwl_widgetmgr.h" static void FWL_SetChildThemeID(IFWL_Widget* pParent, FX_DWORD dwThemeID) { IFWL_WidgetMgr* pWidgetMgr = FWL_GetWidgetMgr(); diff --git a/xfa/fxfa/app/xfa_ffapp.cpp b/xfa/fxfa/app/xfa_ffapp.cpp index 8327d1b27c..c31538659e 100644 --- a/xfa/fxfa/app/xfa_ffapp.cpp +++ b/xfa/fxfa/app/xfa_ffapp.cpp @@ -8,13 +8,13 @@ #include +#include "xfa/fwl/core/ifwl_widgetmgrdelegate.h" #include "xfa/fxfa/app/xfa_ffdoc.h" #include "xfa/fxfa/app/xfa_ffdochandler.h" #include "xfa/fxfa/app/xfa_ffwidgethandler.h" #include "xfa/fxfa/app/xfa_fontmgr.h" #include "xfa/fxfa/app/xfa_fwladapter.h" #include "xfa/fxfa/app/xfa_fwltheme.h" -#include "xfa/include/fwl/core/fwl_widgetmgr.h" CXFA_FileRead::CXFA_FileRead(const CFX_ArrayTemplate& streams) { int32_t iCount = streams.GetSize(); diff --git a/xfa/fxfa/app/xfa_ffapp.h b/xfa/fxfa/app/xfa_ffapp.h index fe3358ace7..c6c32868b4 100644 --- a/xfa/fxfa/app/xfa_ffapp.h +++ b/xfa/fxfa/app/xfa_ffapp.h @@ -10,9 +10,9 @@ #include "core/fpdfapi/fpdf_parser/include/cpdf_stream.h" #include "core/fpdfapi/fpdf_parser/include/cpdf_stream_acc.h" #include "xfa/fgas/font/fgas_font.h" -#include "xfa/include/fwl/adapter/fwl_adapternative.h" -#include "xfa/include/fwl/adapter/fwl_sdadapterimp.h" -#include "xfa/include/fwl/core/fwl_app.h" +#include "xfa/fwl/core/fwl_sdadapterimp.h" +#include "xfa/fwl/core/ifwl_adapternative.h" +#include "xfa/fwl/core/ifwl_app.h" #include "xfa/include/fxfa/fxfa.h" class CXFA_FWLAdapterWidgetMgr; diff --git a/xfa/fxfa/app/xfa_ffbarcode.cpp b/xfa/fxfa/app/xfa_ffbarcode.cpp index 49e01cba92..8bc4a26931 100644 --- a/xfa/fxfa/app/xfa_ffbarcode.cpp +++ b/xfa/fxfa/app/xfa_ffbarcode.cpp @@ -7,12 +7,13 @@ #include "xfa/fxfa/app/xfa_ffbarcode.h" #include "core/fxcrt/include/fx_ext.h" +#include "xfa/fwl/core/ifwl_app.h" +#include "xfa/fwl/core/ifwl_notedriver.h" #include "xfa/fxfa/app/xfa_fffield.h" #include "xfa/fxfa/app/xfa_ffpageview.h" #include "xfa/fxfa/app/xfa_fftextedit.h" #include "xfa/fxfa/app/xfa_ffwidget.h" #include "xfa/fxfa/app/xfa_fwladapter.h" -#include "xfa/include/fwl/core/fwl_app.h" #include "xfa/include/fwl/lightwidget/barcode.h" namespace { diff --git a/xfa/fxfa/app/xfa_ffcheckbutton.cpp b/xfa/fxfa/app/xfa_ffcheckbutton.cpp index 862a2cd013..1e7c71aa3d 100644 --- a/xfa/fxfa/app/xfa_ffcheckbutton.cpp +++ b/xfa/fxfa/app/xfa_ffcheckbutton.cpp @@ -6,6 +6,9 @@ #include "xfa/fxfa/app/xfa_ffcheckbutton.h" +#include "xfa/fwl/core/cfwl_message.h" +#include "xfa/fwl/core/ifwl_notedriver.h" +#include "xfa/fwl/core/ifwl_widgetmgrdelegate.h" #include "xfa/fxfa/app/xfa_ffapp.h" #include "xfa/fxfa/app/xfa_ffdoc.h" #include "xfa/fxfa/app/xfa_ffdocview.h" @@ -13,7 +16,6 @@ #include "xfa/fxfa/app/xfa_fffield.h" #include "xfa/fxfa/app/xfa_ffpageview.h" #include "xfa/fxfa/app/xfa_ffwidget.h" -#include "xfa/include/fwl/core/fwl_widgetmgr.h" #include "xfa/include/fwl/lightwidget/checkbox.h" CXFA_FFCheckButton::CXFA_FFCheckButton(CXFA_FFPageView* pPageView, diff --git a/xfa/fxfa/app/xfa_ffchoicelist.cpp b/xfa/fxfa/app/xfa_ffchoicelist.cpp index 2789e073f4..f94ed1ef43 100644 --- a/xfa/fxfa/app/xfa_ffchoicelist.cpp +++ b/xfa/fxfa/app/xfa_ffchoicelist.cpp @@ -6,14 +6,15 @@ #include "xfa/fxfa/app/xfa_ffchoicelist.h" +#include "xfa/fwl/basewidget/ifwl_edit.h" +#include "xfa/fwl/core/ifwl_app.h" +#include "xfa/fwl/core/ifwl_notedriver.h" #include "xfa/fxfa/app/xfa_ffdoc.h" #include "xfa/fxfa/app/xfa_ffdocview.h" #include "xfa/fxfa/app/xfa_fffield.h" #include "xfa/fxfa/app/xfa_ffpageview.h" #include "xfa/fxfa/app/xfa_ffwidget.h" #include "xfa/fxfa/app/xfa_fwladapter.h" -#include "xfa/include/fwl/basewidget/fwl_edit.h" -#include "xfa/include/fwl/core/fwl_app.h" #include "xfa/include/fwl/lightwidget/combobox.h" #include "xfa/include/fwl/lightwidget/listbox.h" diff --git a/xfa/fxfa/app/xfa_ffdoc.cpp b/xfa/fxfa/app/xfa_ffdoc.cpp index b7e1b1f416..ec2a1a215e 100644 --- a/xfa/fxfa/app/xfa_ffdoc.cpp +++ b/xfa/fxfa/app/xfa_ffdoc.cpp @@ -11,6 +11,7 @@ #include "core/fxcrt/include/fx_ext.h" #include "core/include/fpdfdoc/fpdf_doc.h" #include "xfa/fgas/crt/fgas_algorithm.h" +#include "xfa/fwl/core/ifwl_notedriver.h" #include "xfa/fxfa/app/xfa_ffapp.h" #include "xfa/fxfa/app/xfa_ffdocview.h" #include "xfa/fxfa/app/xfa_ffnotify.h" @@ -18,7 +19,6 @@ #include "xfa/fxfa/app/xfa_fontmgr.h" #include "xfa/fxfa/parser/xfa_docdata.h" #include "xfa/fxfa/parser/xfa_parser.h" -#include "xfa/include/fwl/core/fwl_note.h" CXFA_FFDoc::CXFA_FFDoc(CXFA_FFApp* pApp, IXFA_DocProvider* pDocProvider) : m_pDocProvider(pDocProvider), diff --git a/xfa/fxfa/app/xfa_fffield.cpp b/xfa/fxfa/app/xfa_fffield.cpp index cc8f7ed2a4..0f5874f9aa 100644 --- a/xfa/fxfa/app/xfa_fffield.cpp +++ b/xfa/fxfa/app/xfa_fffield.cpp @@ -6,6 +6,9 @@ #include "xfa/fxfa/app/xfa_fffield.h" +#include "xfa/fwl/basewidget/ifwl_edit.h" +#include "xfa/fwl/core/cfwl_message.h" +#include "xfa/fwl/core/ifwl_widgetmgrdelegate.h" #include "xfa/fxfa/app/xfa_ffapp.h" #include "xfa/fxfa/app/xfa_ffdoc.h" #include "xfa/fxfa/app/xfa_ffdocview.h" @@ -15,8 +18,6 @@ #include "xfa/fxfa/app/xfa_textlayout.h" #include "xfa/fxgraphics/cfx_color.h" #include "xfa/fxgraphics/cfx_path.h" -#include "xfa/include/fwl/basewidget/fwl_edit.h" -#include "xfa/include/fwl/core/fwl_widgetmgr.h" #include "xfa/include/fwl/lightwidget/edit.h" #include "xfa/include/fwl/lightwidget/picturebox.h" diff --git a/xfa/fxfa/app/xfa_fffield.h b/xfa/fxfa/app/xfa_fffield.h index 4f816cebab..952cfcda5a 100644 --- a/xfa/fxfa/app/xfa_fffield.h +++ b/xfa/fxfa/app/xfa_fffield.h @@ -7,10 +7,10 @@ #ifndef XFA_FXFA_APP_XFA_FFFIELD_H_ #define XFA_FXFA_APP_XFA_FFFIELD_H_ +#include "xfa/fwl/core/fwl_sdadapterimp.h" +#include "xfa/fwl/core/ifwl_widgetdelegate.h" #include "xfa/fxfa/app/xfa_ffpageview.h" #include "xfa/fxfa/app/xfa_ffwidget.h" -#include "xfa/include/fwl/adapter/fwl_sdadapterimp.h" -#include "xfa/include/fwl/core/fwl_widget.h" #include "xfa/include/fwl/lightwidget/widget.h" #define XFA_MINUI_HEIGHT 4.32f diff --git a/xfa/fxfa/app/xfa_ffimageedit.cpp b/xfa/fxfa/app/xfa_ffimageedit.cpp index 4f9f6c670c..c2d75522c7 100644 --- a/xfa/fxfa/app/xfa_ffimageedit.cpp +++ b/xfa/fxfa/app/xfa_ffimageedit.cpp @@ -6,12 +6,14 @@ #include "xfa/fxfa/app/xfa_ffimageedit.h" +#include "xfa/fwl/core/cfwl_message.h" +#include "xfa/fwl/core/ifwl_app.h" +#include "xfa/fwl/core/ifwl_notedriver.h" #include "xfa/fxfa/app/xfa_ffdoc.h" #include "xfa/fxfa/app/xfa_ffdocview.h" #include "xfa/fxfa/app/xfa_fffield.h" #include "xfa/fxfa/app/xfa_ffpageview.h" #include "xfa/fxfa/app/xfa_ffwidget.h" -#include "xfa/include/fwl/core/fwl_app.h" #include "xfa/include/fwl/lightwidget/picturebox.h" CXFA_FFImageEdit::CXFA_FFImageEdit(CXFA_FFPageView* pPageView, diff --git a/xfa/fxfa/app/xfa_ffpushbutton.cpp b/xfa/fxfa/app/xfa_ffpushbutton.cpp index bf18387af8..37472a840f 100644 --- a/xfa/fxfa/app/xfa_ffpushbutton.cpp +++ b/xfa/fxfa/app/xfa_ffpushbutton.cpp @@ -6,6 +6,8 @@ #include "xfa/fxfa/app/xfa_ffpushbutton.h" +#include "xfa/fwl/core/ifwl_notedriver.h" +#include "xfa/fwl/core/ifwl_widgetmgrdelegate.h" #include "xfa/fxfa/app/xfa_ffapp.h" #include "xfa/fxfa/app/xfa_fffield.h" #include "xfa/fxfa/app/xfa_ffpageview.h" @@ -14,7 +16,6 @@ #include "xfa/fxfa/app/xfa_textlayout.h" #include "xfa/fxgraphics/cfx_color.h" #include "xfa/fxgraphics/cfx_path.h" -#include "xfa/include/fwl/core/fwl_widgetmgr.h" #include "xfa/include/fwl/lightwidget/pushbutton.h" CXFA_FFPushButton::CXFA_FFPushButton(CXFA_FFPageView* pPageView, diff --git a/xfa/fxfa/app/xfa_fftext.cpp b/xfa/fxfa/app/xfa_fftext.cpp index d87815856d..b35f7b4296 100644 --- a/xfa/fxfa/app/xfa_fftext.cpp +++ b/xfa/fxfa/app/xfa_fftext.cpp @@ -6,6 +6,7 @@ #include "xfa/fxfa/app/xfa_fftext.h" +#include "xfa/fwl/core/fwl_widgetdef.h" #include "xfa/fxfa/app/xfa_ffapp.h" #include "xfa/fxfa/app/xfa_ffdoc.h" #include "xfa/fxfa/app/xfa_ffdraw.h" @@ -13,7 +14,6 @@ #include "xfa/fxfa/app/xfa_ffwidget.h" #include "xfa/fxfa/app/xfa_textlayout.h" #include "xfa/fxgraphics/include/cfx_graphics.h" -#include "xfa/include/fwl/core/fwl_widgetdef.h" CXFA_FFText::CXFA_FFText(CXFA_FFPageView* pPageView, CXFA_WidgetAcc* pDataAcc) : CXFA_FFDraw(pPageView, pDataAcc) {} diff --git a/xfa/fxfa/app/xfa_fftextedit.cpp b/xfa/fxfa/app/xfa_fftextedit.cpp index c35fe58387..837054aec8 100644 --- a/xfa/fxfa/app/xfa_fftextedit.cpp +++ b/xfa/fxfa/app/xfa_fftextedit.cpp @@ -8,6 +8,10 @@ #include +#include "xfa/fwl/basewidget/ifwl_datetimepicker.h" +#include "xfa/fwl/basewidget/ifwl_edit.h" +#include "xfa/fwl/core/cfwl_message.h" +#include "xfa/fwl/core/ifwl_notedriver.h" #include "xfa/fxfa/app/xfa_ffapp.h" #include "xfa/fxfa/app/xfa_ffdoc.h" #include "xfa/fxfa/app/xfa_ffdocview.h" @@ -17,8 +21,6 @@ #include "xfa/fxfa/app/xfa_fwladapter.h" #include "xfa/fxfa/app/xfa_textlayout.h" #include "xfa/fxfa/parser/xfa_localevalue.h" -#include "xfa/include/fwl/basewidget/fwl_datetimepicker.h" -#include "xfa/include/fwl/basewidget/fwl_edit.h" #include "xfa/include/fwl/lightwidget/datetimepicker.h" #include "xfa/include/fwl/lightwidget/edit.h" diff --git a/xfa/fxfa/app/xfa_fwladapter.h b/xfa/fxfa/app/xfa_fwladapter.h index bf9a3d6c8e..c42ae7402b 100644 --- a/xfa/fxfa/app/xfa_fwladapter.h +++ b/xfa/fxfa/app/xfa_fwladapter.h @@ -7,7 +7,7 @@ #ifndef XFA_FXFA_APP_XFA_FWLADAPTER_H_ #define XFA_FXFA_APP_XFA_FWLADAPTER_H_ -#include "xfa/include/fwl/adapter/fwl_sdadapterimp.h" +#include "xfa/fwl/core/fwl_sdadapterimp.h" class CXFA_FWLAdapterWidgetMgr : public CFWL_SDAdapterWidgetMgr { public: diff --git a/xfa/fxfa/app/xfa_fwltheme.cpp b/xfa/fxfa/app/xfa_fwltheme.cpp index 11b70024c4..3c0d100488 100644 --- a/xfa/fxfa/app/xfa_fwltheme.cpp +++ b/xfa/fxfa/app/xfa_fwltheme.cpp @@ -8,20 +8,22 @@ #include "xfa/fde/tto/fde_textout.h" #include "xfa/fgas/crt/fgas_codepage.h" +#include "xfa/fwl/basewidget/ifwl_barcode.h" +#include "xfa/fwl/basewidget/ifwl_caret.h" +#include "xfa/fwl/basewidget/ifwl_checkbox.h" +#include "xfa/fwl/basewidget/ifwl_combobox.h" +#include "xfa/fwl/basewidget/ifwl_datetimepicker.h" +#include "xfa/fwl/basewidget/ifwl_edit.h" +#include "xfa/fwl/basewidget/ifwl_listbox.h" +#include "xfa/fwl/basewidget/ifwl_monthcalendar.h" +#include "xfa/fwl/basewidget/ifwl_picturebox.h" +#include "xfa/fwl/basewidget/ifwl_pushbutton.h" +#include "xfa/fwl/basewidget/ifwl_scrollbar.h" +#include "xfa/fwl/core/cfwl_themebackground.h" +#include "xfa/fwl/core/cfwl_themetext.h" #include "xfa/fxfa/app/xfa_ffapp.h" #include "xfa/fxfa/app/xfa_ffwidget.h" #include "xfa/fxgraphics/cfx_color.h" -#include "xfa/include/fwl/basewidget/fwl_barcode.h" -#include "xfa/include/fwl/basewidget/fwl_caret.h" -#include "xfa/include/fwl/basewidget/fwl_checkbox.h" -#include "xfa/include/fwl/basewidget/fwl_combobox.h" -#include "xfa/include/fwl/basewidget/fwl_datetimepicker.h" -#include "xfa/include/fwl/basewidget/fwl_edit.h" -#include "xfa/include/fwl/basewidget/fwl_listbox.h" -#include "xfa/include/fwl/basewidget/fwl_monthcalendar.h" -#include "xfa/include/fwl/basewidget/fwl_picturebox.h" -#include "xfa/include/fwl/basewidget/fwl_pushbutton.h" -#include "xfa/include/fwl/basewidget/fwl_scrollbar.h" namespace { diff --git a/xfa/fxfa/app/xfa_fwltheme.h b/xfa/fxfa/app/xfa_fwltheme.h index aab8099a88..484c56967a 100644 --- a/xfa/fxfa/app/xfa_fwltheme.h +++ b/xfa/fxfa/app/xfa_fwltheme.h @@ -7,9 +7,9 @@ #ifndef XFA_FXFA_APP_XFA_FWLTHEME_H_ #define XFA_FXFA_APP_XFA_FWLTHEME_H_ +#include "xfa/fwl/core/ifwl_target.h" +#include "xfa/fwl/core/ifwl_themeprovider.h" #include "xfa/fxfa/app/xfa_ffapp.h" -#include "xfa/include/fwl/core/fwl_target.h" -#include "xfa/include/fwl/core/fwl_theme.h" #include "xfa/include/fwl/theme/barcodetp.h" #include "xfa/include/fwl/theme/carettp.h" #include "xfa/include/fwl/theme/checkboxtp.h" diff --git a/xfa/include/fwl/adapter/fwl_adapternative.h b/xfa/include/fwl/adapter/fwl_adapternative.h deleted file mode 100644 index 83e6fd9af8..0000000000 --- a/xfa/include/fwl/adapter/fwl_adapternative.h +++ /dev/null @@ -1,24 +0,0 @@ -// Copyright 2014 PDFium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com - -#ifndef XFA_INCLUDE_FWL_ADAPTER_FWL_ADAPTERNATIVE_H_ -#define XFA_INCLUDE_FWL_ADAPTER_FWL_ADAPTERNATIVE_H_ - -class IFWL_WidgetMgrDelegate; -class IFWL_AdapterWidgetMgr; -class IFWL_AdapterThreadMgr; -class IFWL_AdapterTimerMgr; - -class IFWL_AdapterNative { - public: - virtual ~IFWL_AdapterNative() {} - virtual IFWL_AdapterWidgetMgr* GetWidgetMgr( - IFWL_WidgetMgrDelegate* pDelegate) = 0; - virtual IFWL_AdapterThreadMgr* GetThreadMgr() = 0; - virtual IFWL_AdapterTimerMgr* GetTimerMgr() = 0; -}; - -#endif // XFA_INCLUDE_FWL_ADAPTER_FWL_ADAPTERNATIVE_H_ diff --git a/xfa/include/fwl/adapter/fwl_adapterthreadmgr.h b/xfa/include/fwl/adapter/fwl_adapterthreadmgr.h deleted file mode 100644 index dbd1d72ea2..0000000000 --- a/xfa/include/fwl/adapter/fwl_adapterthreadmgr.h +++ /dev/null @@ -1,26 +0,0 @@ -// Copyright 2014 PDFium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com - -#ifndef XFA_INCLUDE_FWL_ADAPTER_FWL_ADAPTERTHREADMGR_H_ -#define XFA_INCLUDE_FWL_ADAPTER_FWL_ADAPTERTHREADMGR_H_ - -#include "core/fxcrt/include/fx_system.h" -#include "xfa/include/fwl/core/fwl_error.h" -#include "xfa/include/fwl/core/fwl_thread.h" - -class IFWL_AdapterThreadMgr { - public: - virtual ~IFWL_AdapterThreadMgr() {} - virtual FWL_ERR Start(IFWL_Thread* pThread, - FWL_HTHREAD& hThread, - FX_BOOL bSuspended = FALSE) = 0; - virtual FWL_ERR Resume(FWL_HTHREAD hThread) = 0; - virtual FWL_ERR Suspend(FWL_HTHREAD hThread) = 0; - virtual FWL_ERR Kill(FWL_HTHREAD hThread, int32_t iExitCode) = 0; - virtual FWL_ERR Stop(FWL_HTHREAD hThread, int32_t iExitCode) = 0; - virtual IFWL_Thread* GetCurrentThread() = 0; -}; -#endif // XFA_INCLUDE_FWL_ADAPTER_FWL_ADAPTERTHREADMGR_H_ diff --git a/xfa/include/fwl/adapter/fwl_adaptertimermgr.h b/xfa/include/fwl/adapter/fwl_adaptertimermgr.h deleted file mode 100644 index f8b0daab86..0000000000 --- a/xfa/include/fwl/adapter/fwl_adaptertimermgr.h +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright 2014 PDFium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com - -#ifndef XFA_INCLUDE_FWL_ADAPTER_FWL_ADAPTERTIMERMGR_H_ -#define XFA_INCLUDE_FWL_ADAPTER_FWL_ADAPTERTIMERMGR_H_ - -#include "xfa/include/fwl/core/fwl_error.h" -#include "xfa/include/fwl/core/fwl_timer.h" - -class IFWL_Timer; - -class IFWL_AdapterTimerMgr { - public: - virtual ~IFWL_AdapterTimerMgr() {} - virtual FWL_ERR Start(IFWL_Timer* pTimer, - FX_DWORD dwElapse, - FWL_HTIMER& hTimer, - FX_BOOL bImmediately = TRUE) = 0; - virtual FWL_ERR Stop(FWL_HTIMER hTimer) = 0; -}; - -#endif // XFA_INCLUDE_FWL_ADAPTER_FWL_ADAPTERTIMERMGR_H_ diff --git a/xfa/include/fwl/adapter/fwl_adapterwidgetmgr.h b/xfa/include/fwl/adapter/fwl_adapterwidgetmgr.h deleted file mode 100644 index f5d3c05000..0000000000 --- a/xfa/include/fwl/adapter/fwl_adapterwidgetmgr.h +++ /dev/null @@ -1,81 +0,0 @@ -// Copyright 2014 PDFium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com - -#ifndef XFA_INCLUDE_FWL_ADAPTER_FWL_ADAPTERWIDGETMGR_H_ -#define XFA_INCLUDE_FWL_ADAPTER_FWL_ADAPTERWIDGETMGR_H_ - -#include "core/fxcrt/include/fx_coordinates.h" -#include "core/fxcrt/include/fx_system.h" -#include "xfa/include/fwl/core/fwl_error.h" - -class IFWL_Widget; -class IFWL_Menu; -class IFWL_MenuDP; -class CFX_Path; -class CFX_DIBitmap; -class IFWL_AdapterMessageHook; - -class IFWL_AdapterWidgetMgr { - public: - virtual ~IFWL_AdapterWidgetMgr() {} - virtual FWL_ERR CreateWidget(IFWL_Widget* pWidget, - IFWL_Widget* pParent = NULL) = 0; - virtual FWL_ERR DestroyWidget(IFWL_Widget* pWidget) = 0; - virtual FWL_ERR GetWidgetRect(IFWL_Widget* pWidget, CFX_RectF& rect) = 0; - virtual FWL_ERR SetWidgetRect(IFWL_Widget* pWidget, - const CFX_RectF& rect) = 0; - virtual FWL_ERR SetWidgetPosition(IFWL_Widget* pWidget, - FX_FLOAT fx, - FX_FLOAT fy) = 0; - virtual FWL_ERR SetParentWidget(IFWL_Widget* pWidget, - IFWL_Widget* pParent) = 0; - virtual FWL_ERR SetWidgetIcon(IFWL_Widget* pWidget, - const CFX_DIBitmap* pIcon, - FX_BOOL bBig) = 0; - virtual FWL_ERR SetWidgetCaption(IFWL_Widget* pWidget, - const CFX_WideStringC& wsCaption) = 0; - virtual FWL_ERR SetBorderRegion(IFWL_Widget* pWidget, CFX_Path* pPath) = 0; - virtual FWL_ERR SetTransparent(IFWL_Widget* pWidget, FX_DWORD dwAlpha) = 0; - virtual FWL_ERR ShowWidget(IFWL_Widget* pWidget) = 0; - virtual FWL_ERR HideWidget(IFWL_Widget* pWidget) = 0; - virtual FWL_ERR SetNormal(IFWL_Widget* pWidget) = 0; - virtual FWL_ERR SetMaximize(IFWL_Widget* pWidget) = 0; - virtual FWL_ERR SetMinimize(IFWL_Widget* pWidget) = 0; - virtual FWL_ERR SetFullScreen(IFWL_Widget* pWidget, FX_BOOL bFullScreen) = 0; - virtual FX_BOOL CheckMessage() = 0; - virtual FX_BOOL IsIdleMessage() = 0; - virtual FWL_ERR DispatchMessage() = 0; - virtual FWL_ERR RepaintWidget(IFWL_Widget* pWidget, - const CFX_RectF* pRect) = 0; - virtual FWL_ERR Exit(int32_t iExitCode) = 0; - virtual FWL_ERR CreateWidgetWithNativeId(IFWL_Widget* pWidget, - void* UserData) = 0; - virtual FWL_ERR GetWidgetDC(IFWL_Widget* pWidget, void*& pDC) = 0; - virtual FWL_ERR ReleaseWidgetDC(IFWL_Widget* pWidget, - void* pDC, - CFX_RectF* pClip = 0) = 0; - virtual void* GetWindow(IFWL_Widget* pWidget) = 0; - virtual FX_DWORD GetKeyState(FX_DWORD dwVirtKey) = 0; - virtual FWL_ERR RunLoop(IFWL_Widget* widget) = 0; - virtual FWL_ERR EndLoop() = 0; - virtual FWL_ERR InitMenu(IFWL_Menu* pMenu, IFWL_MenuDP* pMenuData) = 0; - virtual FWL_ERR UpdateMenu(IFWL_Menu* pMenu, - const void* hItem, - int32_t iType) = 0; - virtual int32_t TrackPopupMenu(IFWL_Menu* pMenu, IFWL_MenuDP* pMenuData) = 0; - virtual FWL_ERR SetMessageHook(IFWL_AdapterMessageHook* hook) = 0; - virtual FWL_ERR GetSystemBorder(FX_FLOAT& l, - FX_FLOAT& t, - FX_FLOAT& r, - FX_FLOAT& b) = 0; - virtual FX_BOOL GetPopupPos(IFWL_Widget* pWidget, - FX_FLOAT fMinHeight, - FX_FLOAT fMaxHeight, - const CFX_RectF& rtAnchor, - CFX_RectF& rtPopup) = 0; -}; - -#endif // XFA_INCLUDE_FWL_ADAPTER_FWL_ADAPTERWIDGETMGR_H_ diff --git a/xfa/include/fwl/adapter/fwl_sdadapterimp.h b/xfa/include/fwl/adapter/fwl_sdadapterimp.h deleted file mode 100644 index 52cbb99c26..0000000000 --- a/xfa/include/fwl/adapter/fwl_sdadapterimp.h +++ /dev/null @@ -1,89 +0,0 @@ -// Copyright 2014 PDFium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com - -#ifndef XFA_INCLUDE_FWL_ADAPTER_FWL_SDADAPTERIMP_H_ -#define XFA_INCLUDE_FWL_ADAPTER_FWL_SDADAPTERIMP_H_ - -#include "xfa/include/fwl/adapter/fwl_adapterthreadmgr.h" -#include "xfa/include/fwl/adapter/fwl_adapterwidgetmgr.h" - -class CFWL_SDAdapterWidgetMgr : public IFWL_AdapterWidgetMgr { - public: - CFWL_SDAdapterWidgetMgr(); - ~CFWL_SDAdapterWidgetMgr(); - virtual FWL_ERR CreateWidget(IFWL_Widget* pWidget, - IFWL_Widget* pParent = NULL); - virtual FWL_ERR DestroyWidget(IFWL_Widget* pWidget); - virtual FWL_ERR SetWidgetRect(IFWL_Widget* pWidget, const CFX_RectF& rect); - virtual FWL_ERR SetWidgetPosition(IFWL_Widget* pWidget, - FX_FLOAT fx, - FX_FLOAT fy); - virtual FWL_ERR SetParentWidget(IFWL_Widget* pWidget, IFWL_Widget* pParent); - virtual FWL_ERR ShowWidget(IFWL_Widget* pWidget); - virtual FWL_ERR HideWidget(IFWL_Widget* pWidget); - virtual FWL_ERR SetNormal(IFWL_Widget* pWidget); - virtual FWL_ERR SetMaximize(IFWL_Widget* pWidget); - virtual FWL_ERR SetMinimize(IFWL_Widget* pWidget); - virtual FWL_ERR RunWidget(IFWL_Widget* pWidget); - virtual FWL_ERR RepaintWidget(IFWL_Widget* pWidget, const CFX_RectF* pRect); - virtual FWL_ERR Exit(int32_t iExitCode); - virtual FWL_ERR CreateWidgetWithNativeId(IFWL_Widget* pWidget, void* vp); - virtual FX_BOOL GetPopupPos(IFWL_Widget* pWidget, - FX_FLOAT fMinHeight, - FX_FLOAT fMaxHeight, - const CFX_RectF& rtAnchor, - CFX_RectF& rtPopup); - - public: - virtual FWL_ERR GetWidgetRect(IFWL_Widget* pWidget, CFX_RectF& rect); - virtual FWL_ERR SetWidgetIcon(IFWL_Widget* pWidget, - const CFX_DIBitmap* pIcon, - FX_BOOL bBig); - virtual FWL_ERR SetWidgetCaption(IFWL_Widget* pWidget, - const CFX_WideStringC& wsCaption); - virtual FWL_ERR SetBorderRegion(IFWL_Widget* pWidget, CFX_Path* pPath); - virtual FWL_ERR SetTransparent(IFWL_Widget* pWidget, FX_DWORD dwAlpha); - virtual FWL_ERR SetFullScreen(IFWL_Widget* pWidget, FX_BOOL bFullScreen); - virtual FX_BOOL CheckMessage(); - virtual FX_BOOL IsIdleMessage(); - virtual FWL_ERR DispatchMessage(); - virtual FWL_ERR GetWidgetDC(IFWL_Widget* pWidget, void*& pDC); - virtual FWL_ERR ReleaseWidgetDC(IFWL_Widget* pWidget, - void* pDC, - CFX_RectF* pClip = 0); - virtual void* GetWindow(IFWL_Widget* pWidget); - virtual FX_DWORD GetKeyState(FX_DWORD dwVirtKey); - virtual FWL_ERR RunLoop(IFWL_Widget* widget); - virtual FWL_ERR EndLoop(); - virtual FWL_ERR InitMenu(IFWL_Menu* pMenu, IFWL_MenuDP* pMenuData); - virtual FWL_ERR UpdateMenu(IFWL_Menu* pMenu, - const void* hItem, - int32_t iType); - virtual int32_t TrackPopupMenu(IFWL_Menu* pMenu, IFWL_MenuDP* pMenuData); - virtual FWL_ERR SetMessageHook(IFWL_AdapterMessageHook* hook); - virtual FWL_ERR GetSystemBorder(FX_FLOAT& l, - FX_FLOAT& t, - FX_FLOAT& r, - FX_FLOAT& b); -}; - -class CFWL_SDAdapterThreadMgr : public IFWL_AdapterThreadMgr { - public: - CFWL_SDAdapterThreadMgr(); - ~CFWL_SDAdapterThreadMgr(); - - public: - virtual FWL_ERR Start(IFWL_Thread* pThread, - FWL_HTHREAD& hThread, - FX_BOOL bSuspended = FALSE); - virtual FWL_ERR Resume(FWL_HTHREAD hThread); - virtual FWL_ERR Suspend(FWL_HTHREAD hThread); - virtual FWL_ERR Kill(FWL_HTHREAD hThread, int32_t iExitCode); - virtual FWL_ERR Stop(FWL_HTHREAD hThread, int32_t iExitCode); - virtual IFWL_Thread* GetCurrentThread(); -}; - -#endif // XFA_INCLUDE_FWL_ADAPTER_FWL_SDADAPTERIMP_H_ diff --git a/xfa/include/fwl/basewidget/fwl_barcode.h b/xfa/include/fwl/basewidget/fwl_barcode.h deleted file mode 100644 index 0d3db83421..0000000000 --- a/xfa/include/fwl/basewidget/fwl_barcode.h +++ /dev/null @@ -1,63 +0,0 @@ -// Copyright 2014 PDFium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com - -#ifndef XFA_INCLUDE_FWL_BASEWIDGET_FWL_BARCODE_H_ -#define XFA_INCLUDE_FWL_BASEWIDGET_FWL_BARCODE_H_ - -#include "xfa/fxbarcode/include/BC_Library.h" -#include "xfa/include/fwl/basewidget/fwl_edit.h" - -class CFWL_WidgetImpProperties; - -#define FWL_CLASS_Barcode L"FWL_BARCODE" -#define FWL_CLASSHASH_Barcode 366886968 -#define FWL_BCDATTRIBUTE_CHARENCODING (1L << 0) -#define FWL_BCDATTRIBUTE_MODULEHEIGHT (1L << 1) -#define FWL_BCDATTRIBUTE_MODULEWIDTH (1L << 2) -#define FWL_BCDATTRIBUTE_DATALENGTH (1L << 3) -#define FWL_BCDATTRIBUTE_CALCHECKSUM (1L << 4) -#define FWL_BCDATTRIBUTE_PRINTCHECKSUM (1L << 5) -#define FWL_BCDATTRIBUTE_TEXTLOCATION (1L << 6) -#define FWL_BCDATTRIBUTE_WIDENARROWRATIO (1L << 7) -#define FWL_BCDATTRIBUTE_STARTCHAR (1L << 8) -#define FWL_BCDATTRIBUTE_ENDCHAR (1L << 9) -#define FWL_BCDATTRIBUTE_VERSION (1L << 10) -#define FWL_BCDATTRIBUTE_ECLEVEL (1L << 11) -#define FWL_BCDATTRIBUTE_TRUNCATED (1L << 12) -#define FWL_PART_BCD_Border 1 -#define FWL_PART_BCD_Edge 2 -#define FWL_PART_BCD_Background 3 -#define FWL_BCUPDATECMD_Data FWL_WGTUPDATECMD_User - -class IFWL_BarcodeDP : public IFWL_EditDP { - public: - virtual BC_CHAR_ENCODING GetCharEncoding() = 0; - virtual int32_t GetModuleHeight() = 0; - virtual int32_t GetModuleWidth() = 0; - virtual int32_t GetDataLength() = 0; - virtual int32_t GetCalChecksum() = 0; - virtual FX_BOOL GetPrintChecksum() = 0; - virtual BC_TEXT_LOC GetTextLocation() = 0; - virtual int32_t GetWideNarrowRatio() = 0; - virtual FX_CHAR GetStartChar() = 0; - virtual FX_CHAR GetEndChar() = 0; - virtual int32_t GetVersion() = 0; - virtual int32_t GetErrorCorrectionLevel() = 0; - virtual FX_BOOL GetTruncated() = 0; - virtual FX_DWORD GetBarcodeAttributeMask() = 0; -}; - -class IFWL_Barcode : public IFWL_Edit { - public: - static IFWL_Barcode* Create(const CFWL_WidgetImpProperties& properties); - void SetType(BC_TYPE type); - FX_BOOL IsProtectedType(); - - protected: - IFWL_Barcode(); -}; - -#endif // XFA_INCLUDE_FWL_BASEWIDGET_FWL_BARCODE_H_ diff --git a/xfa/include/fwl/basewidget/fwl_caret.h b/xfa/include/fwl/basewidget/fwl_caret.h deleted file mode 100644 index d6144ae1e8..0000000000 --- a/xfa/include/fwl/basewidget/fwl_caret.h +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright 2014 PDFium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com - -#ifndef XFA_INCLUDE_FWL_BASEWIDGET_FWL_CARET_H_ -#define XFA_INCLUDE_FWL_BASEWIDGET_FWL_CARET_H_ - -#include "xfa/include/fwl/core/fwl_widget.h" - -#define FWL_CLASS_Caret L"FWL_CARET" -#define FWL_CLASSHASH_Caret 671181879 -#define FWL_STATE_CAT_HightLight 1 -#define FWL_PART_CAT_Background 1 -#define FWL_PARTSTATE_CAT_HightLight 1 - -class IFWL_Caret : public IFWL_Widget { - public: - static IFWL_Caret* Create(const CFWL_WidgetImpProperties& properties, - IFWL_Widget* pOuter); - - FWL_ERR ShowCaret(FX_BOOL bFlag = TRUE); - FWL_ERR GetFrequency(FX_DWORD& elapse); - FWL_ERR SetFrequency(FX_DWORD elapse); - FWL_ERR SetColor(CFX_Color crFill); - - protected: - IFWL_Caret(); -}; - -#endif // XFA_INCLUDE_FWL_BASEWIDGET_FWL_CARET_H_ diff --git a/xfa/include/fwl/basewidget/fwl_checkbox.h b/xfa/include/fwl/basewidget/fwl_checkbox.h deleted file mode 100644 index 6979a1de38..0000000000 --- a/xfa/include/fwl/basewidget/fwl_checkbox.h +++ /dev/null @@ -1,82 +0,0 @@ -// Copyright 2014 PDFium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com - -#ifndef XFA_INCLUDE_FWL_BASEWIDGET_FWL_CHECKBOX_H_ -#define XFA_INCLUDE_FWL_BASEWIDGET_FWL_CHECKBOX_H_ - -#include "xfa/include/fwl/core/fwl_note.h" -#include "xfa/include/fwl/core/fwl_widget.h" - -#define FWL_CLASS_CheckBox L"FWL_CHECKBOX" -#define FWL_CLASSHASH_CheckBox 4107183823 -#define FWL_STYLEEXT_CKB_Left (0L << 0) -#define FWL_STYLEEXT_CKB_Center (1L << 0) -#define FWL_STYLEEXT_CKB_Right (2L << 0) -#define FWL_STYLEEXT_CKB_Top (0L << 2) -#define FWL_STYLEEXT_CKB_VCenter (1L << 2) -#define FWL_STYLEEXT_CKB_Bottom (2L << 2) -#define FWL_STYLEEXT_CKB_LeftText (1L << 4) -#define FWL_STYLEEXT_CKB_MultiLine (1L << 5) -#define FWL_STYLEEXT_CKB_3State (1L << 6) -#define FWL_STYLEEXT_CKB_RadioButton (1L << 7) -#define FWL_STYLEEXT_CKB_ShapeSolidSquare (0L << 8) -#define FWL_STYLEEXT_CKB_ShapeSunkenSquare (1L << 8) -#define FWL_STYLEEXT_CKB_ShapeSolidCircle (2L << 8) -#define FWL_STYLEEXT_CKB_ShapeSunkenCircle (3L << 8) -#define FWL_STYLEEXT_CKB_SignShapeCheck (0L << 10) -#define FWL_STYLEEXT_CKB_SignShapeCircle (1L << 10) -#define FWL_STYLEEXT_CKB_SignShapeCross (2L << 10) -#define FWL_STYLEEXT_CKB_SignShapeDiamond (3L << 10) -#define FWL_STYLEEXT_CKB_SignShapeSquare (4L << 10) -#define FWL_STYLEEXT_CKB_SignShapeStar (5L << 10) -#define FWL_STYLEEXT_CKB_HLayoutMask (3L << 0) -#define FWL_STYLEEXT_CKB_VLayoutMask (3L << 2) -#define FWL_STYLEEXT_CKB_ShapeMask (3L << 8) -#define FWL_STYLEEXT_CKB_SignShapeMask (7L << 10) -#define FWL_STATE_CKB_Hovered (1 << FWL_WGTSTATE_MAX) -#define FWL_STATE_CKB_Pressed (1 << (FWL_WGTSTATE_MAX + 1)) -#define FWL_STATE_CKB_Unchecked (0 << (FWL_WGTSTATE_MAX + 2)) -#define FWL_STATE_CKB_Checked (1 << (FWL_WGTSTATE_MAX + 2)) -#define FWL_STATE_CKB_Neutral (2 << (FWL_WGTSTATE_MAX + 2)) -#define FWL_STATE_CKB_CheckMask (3L << (FWL_WGTSTATE_MAX + 2)) -#define FWL_PART_CKB_Border 1 -#define FWL_PART_CKB_Edge 2 -#define FWL_PART_CKB_Background 3 -#define FWL_PART_CKB_CheckBox 4 -#define FWL_PART_CKB_Caption 5 -#define FWL_PARTSTATE_CKB_Normal (0L << 0) -#define FWL_PARTSTATE_CKB_Pressed (1L << 0) -#define FWL_PARTSTATE_CKB_Hovered (2L << 0) -#define FWL_PARTSTATE_CKB_Disabled (3L << 0) -#define FWL_PARTSTATE_CKB_UnChecked (0L << 2) -#define FWL_PARTSTATE_CKB_Checked (1L << 2) -#define FWL_PARTSTATE_CKB_Neutral (2L << 2) -#define FWL_PARTSTATE_CKB_Focused (1L << 4) -#define FWL_PARTSTATE_CKB_Mask1 (3L << 0) -#define FWL_PARTSTATE_CKB_Mask2 (3L << 2) -#define FWL_EVT_CKB_CheckStateChanged L"FWL_EVENT_CKB_CheckStateChanged" -#define FWL_EVTHASH_CKB_CheckStateChanged 2503252963 - -BEGIN_FWL_EVENT_DEF(CFWL_EvtCkbCheckStateChanged, - FWL_EVTHASH_CKB_CheckStateChanged) -END_FWL_EVENT_DEF -class IFWL_CheckBoxDP : public IFWL_DataProvider { - public: - virtual FX_FLOAT GetBoxSize(IFWL_Widget* pWidget) = 0; -}; - -class IFWL_CheckBox : public IFWL_Widget { - public: - static IFWL_CheckBox* Create(const CFWL_WidgetImpProperties& properties, - IFWL_Widget* pOuter); - int32_t GetCheckState(); - FWL_ERR SetCheckState(int32_t iCheck); - - protected: - IFWL_CheckBox(); -}; - -#endif // XFA_INCLUDE_FWL_BASEWIDGET_FWL_CHECKBOX_H_ diff --git a/xfa/include/fwl/basewidget/fwl_combobox.h b/xfa/include/fwl/basewidget/fwl_combobox.h deleted file mode 100644 index 194d0b12e1..0000000000 --- a/xfa/include/fwl/basewidget/fwl_combobox.h +++ /dev/null @@ -1,141 +0,0 @@ -// Copyright 2014 PDFium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com - -#ifndef XFA_INCLUDE_FWL_BASEWIDGET_FWL_COMBOBOX_H_ -#define XFA_INCLUDE_FWL_BASEWIDGET_FWL_COMBOBOX_H_ - -#include "xfa/include/fwl/basewidget/fwl_listbox.h" - -class CFWL_WidgetImpProperties; -class IFWL_ComboBox; - -#define FWL_CLASS_ComboBox L"FWL_COMBOBOX" -#define FWL_CLASSHASH_ComboBox 602353697 -#define FWL_STYLEEXT_CMB_DropList (0L << 0) -#define FWL_STYLEEXT_CMB_DropDown (1L << 0) -#define FWL_STYLEEXT_CMB_Sort (1L << 1) -#define FWL_STYLEEXT_CMB_ListDrag (1L << 2) -#define FWL_STYLEEXT_CMB_OwnerDraw (1L << 3) -#define FWL_STYLEEXT_CMB_EditHNear (0L << 4) -#define FWL_STYLEEXT_CMB_EditHCenter (1L << 4) -#define FWL_STYLEEXT_CMB_EditHFar (2L << 4) -#define FWL_STYLEEXT_CMB_EditVNear (0L << 6) -#define FWL_STYLEEXT_CMB_EditVCenter (1L << 6) -#define FWL_STYLEEXT_CMB_EditVFar (2L << 6) -#define FWL_STYLEEXT_CMB_EditJustified (1L << 8) -#define FWL_STYLEEXT_CMB_EditDistributed (2L << 8) -#define FWL_STYLEEXT_CMB_EditHAlignMask (3L << 4) -#define FWL_STYLEEXT_CMB_EditVAlignMask (3L << 6) -#define FWL_STYLEEXT_CMB_EditHAlignModeMask (3L << 8) -#define FWL_STYLEEXT_CMB_ListItemLeftAlign (0L << 10) -#define FWL_STYLEEXT_CMB_ListItemCenterAlign (1L << 10) -#define FWL_STYLEEXT_CMB_ListItemRightAlign (2L << 10) -#define FWL_STYLEEXT_CMB_ListItemText (0L << 12) -#define FWL_STYLEEXT_CMB_ListItemIconText (1L << 12) -#define FWL_STYLEEXT_CMB_ListItemAlignMask (3L << 12) -#define FWL_STYLEEXT_CMB_ReadOnly (1L << 13) -#define FWL_PART_CMB_Border 1 -#define FWL_PART_CMB_Edge 2 -#define FWL_PART_CMB_Background 3 -#define FWL_PART_CMB_DropDownButton 4 -#define FWL_PART_CMB_Caption 5 -#define FWL_PART_CMB_StretcgHandler 6 -#define FWL_PARTSTATE_CMB_Normal (0L << 0) -#define FWL_PARTSTATE_CMB_Hovered (1L << 0) -#define FWL_PARTSTATE_CMB_Pressed (2L << 0) -#define FWL_PARTSTATE_CMB_Disabled (3L << 0) -#define FWL_PARTSTATE_CMB_Selected (1L << 2) -#define FWL_WGTCAPACITY_CMB_ComboFormHandler (FWL_WGTCAPACITY_MAX + 7) -enum FWL_CMB_TEXTCHANGED { - FWL_CMB_TEXTCHANGED_Insert = 0, - FWL_CMB_TEXTCHANGED_Delete, - FWL_CMB_TEXTCHANGED_Replace, -}; -#define FWL_EVT_CMB_DropDown L"FWL_EVENT_CMB_PreDropDown" -#define FWL_EVT_CMB_PostDropDown L"FWL_EVENT_CMB_PostDropDown" -#define FWL_EVT_CMB_CloseUp L"FWL_EVENT_CMB_CloseUp" -#define FWL_EVT_CMB_EditChanged L"FWL_EVENT_CMB_EditChanged" -#define FWL_EVT_CMB_SelChanged L"FWL_EVENT_CMB_SelChanged" -#define FWL_EVT_CMB_HoverChanged L"FWL_EVENT_CMB_HoverChanged" -#define FWL_EVT_CMB_DrawItem L"FWL_EVENT_CMB_DrawItem" -#define FWL_EVTHASH_CMB_PreDropDown 1357646798 -#define FWL_EVTHASH_CMB_PostDropDown 3677010285 -#define FWL_EVTHASH_CMB_CloseUp 2871271190 -#define FWL_EVTHASH_CMB_EditChanged 1527034762 -#define FWL_EVTHASH_CMB_SelChanged 2923227784 -#define FWL_EVTHASH_CMB_HoverChanged 944325448 -#define FWL_EVTHASH_CMB_DrawItem 917354551 -BEGIN_FWL_EVENT_DEF(CFWL_EvtCmbPreDropDown, FWL_EVTHASH_CMB_PreDropDown) -END_FWL_EVENT_DEF -BEGIN_FWL_EVENT_DEF(CFWL_EvtCmbPostDropDown, FWL_EVTHASH_CMB_PostDropDown) -END_FWL_EVENT_DEF -BEGIN_FWL_EVENT_DEF(CFWL_EvtCmbCloseUp, FWL_EVTHASH_CMB_CloseUp) -END_FWL_EVENT_DEF -BEGIN_FWL_EVENT_DEF(CFWL_EvtCmbEditChanged, FWL_EVTHASH_CMB_EditChanged) -int32_t nChangeType; -CFX_WideString wsInsert; -CFX_WideString wsDelete; -END_FWL_EVENT_DEF -BEGIN_FWL_EVENT_DEF(CFWL_EvtCmbSelChanged, FWL_EVTHASH_CMB_SelChanged) -CFX_Int32Array iArraySels; -FX_BOOL bLButtonUp; -END_FWL_EVENT_DEF -BEGIN_FWL_EVENT_DEF(CFWL_EvtCmbHoverChanged, FWL_EVTHASH_CMB_HoverChanged) -int32_t m_iCurHover; -END_FWL_EVENT_DEF -BEGIN_FWL_EVENT_DEF(CFWL_EvtCmbDrawItem, FWL_EVTHASH_CMB_DrawItem) -CFX_Graphics* m_pGraphics; -CFX_Matrix m_matrix; -int32_t m_index; -CFX_RectF m_rtItem; -END_FWL_EVENT_DEF -class IFWL_ComboBoxDP : public IFWL_ListBoxDP { - public: - virtual FX_FLOAT GetListHeight(IFWL_Widget* pWidget) = 0; -}; -class IFWL_ComboBox : public IFWL_Widget { - public: - static IFWL_ComboBox* Create(const CFWL_WidgetImpProperties& properties); - - int32_t GetCurSel(); - FWL_ERR SetCurSel(int32_t iSel); - FWL_ERR SetEditText(const CFX_WideString& wsText); - int32_t GetEditTextLength() const; - FWL_ERR GetEditText(CFX_WideString& wsText, - int32_t nStart = 0, - int32_t nCount = -1) const; - FWL_ERR SetEditSelRange(int32_t nStart, int32_t nCount = -1); - int32_t GetEditSelRange(int32_t nIndex, int32_t& nStart); - int32_t GetEditLimit(); - FWL_ERR SetEditLimit(int32_t nLimit); - FWL_ERR EditDoClipboard(int32_t iCmd); - FX_BOOL EditRedo(const CFX_ByteStringC& bsRecord); - FX_BOOL EditUndo(const CFX_ByteStringC& bsRecord); - IFWL_ListBox* GetListBoxt(); - FX_BOOL AfterFocusShowDropList(); - FX_ERR OpenDropDownList(FX_BOOL bActivate); - FX_BOOL EditCanUndo(); - FX_BOOL EditCanRedo(); - FX_BOOL EditUndo(); - FX_BOOL EditRedo(); - FX_BOOL EditCanCopy(); - FX_BOOL EditCanCut(); - FX_BOOL EditCanSelectAll(); - FX_BOOL EditCopy(CFX_WideString& wsCopy); - FX_BOOL EditCut(CFX_WideString& wsCut); - FX_BOOL EditPaste(const CFX_WideString& wsPaste); - FX_BOOL EditSelectAll(); - FX_BOOL EditDelete(); - FX_BOOL EditDeSelect(); - FWL_ERR GetBBox(CFX_RectF& rect); - FWL_ERR EditModifyStylesEx(FX_DWORD dwStylesExAdded, - FX_DWORD dwStylesExRemoved); - - protected: - IFWL_ComboBox(); -}; - -#endif // XFA_INCLUDE_FWL_BASEWIDGET_FWL_COMBOBOX_H_ diff --git a/xfa/include/fwl/basewidget/fwl_datetimepicker.h b/xfa/include/fwl/basewidget/fwl_datetimepicker.h deleted file mode 100644 index 7cce00eadd..0000000000 --- a/xfa/include/fwl/basewidget/fwl_datetimepicker.h +++ /dev/null @@ -1,112 +0,0 @@ -// Copyright 2014 PDFium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com - -#ifndef XFA_INCLUDE_FWL_BASEWIDGET_FWL_DATETIMEPICKER_H_ -#define XFA_INCLUDE_FWL_BASEWIDGET_FWL_DATETIMEPICKER_H_ - -#include "xfa/include/fwl/core/fwl_note.h" -#include "xfa/include/fwl/core/fwl_widget.h" - -#define FWL_CLASS_DateTimePicker L"FWL_DATETIMEPICKER" -#define FWL_CLASSHASH_DateTimePicker 3851176257 -#define FWL_STYLEEXT_DTP_AllowEdit (1L << 0) -#define FWL_STYLEEXT_DTP_LongDateFormat (0L << 1) -#define FWL_STYLEEXT_DTP_ShortDateFormat (1L << 1) -#define FWL_STYLEEXT_DTP_TimeFormat (2L << 1) -#define FWL_STYLEEXT_DTP_Spin (1L << 3) -#define FWL_STYLEEXT_DTP_EditHNear (0L << 4) -#define FWL_STYLEEXT_DTP_EditHCenter (1L << 4) -#define FWL_STYLEEXT_DTP_EditHFar (2L << 4) -#define FWL_STYLEEXT_DTP_EditVNear (0L << 6) -#define FWL_STYLEEXT_DTP_EditVCenter (1L << 6) -#define FWL_STYLEEXT_DTP_EditVFar (2L << 6) -#define FWL_STYLEEXT_DTP_EditJustified (1L << 8) -#define FWL_STYLEEXT_DTP_EditDistributed (2L << 8) -#define FWL_STYLEEXT_DTP_EditHAlignMask (3L << 4) -#define FWL_STYLEEXT_DTP_EditVAlignMask (3L << 6) -#define FWL_STYLEEXT_DTP_EditHAlignModeMask (3L << 8) -#define FWL_PART_DTP_Border 1 -#define FWL_PART_DTP_Edge 2 -#define FWL_PART_DTP_Background 3 -#define FWL_PART_DTP_DropDownButton 4 -#define FWL_PARTSTATE_DTP_Normal (0L << 0) -#define FWL_PARTSTATE_DTP_Hovered (1L << 0) -#define FWL_PARTSTATE_DTP_Pressed (2L << 0) -#define FWL_PARTSTATE_DTP_Disabled (3L << 0) -#define FWL_EVT_DTP_DropDown L"FWL_EVENT_DTP_DropDown" -#define FWL_EVTHASH_DTP_DropDown 264728733 -#define FWL_EVT_DTP_CloseUp L"FWL_EVENT_DTP_CloseUp" -#define FWL_EVTHASH_DTP_CloseUp 4280973803 -#define FWL_EVT_DTP_EditChanged L"FWL_EVENT_DTP_EditChanged" -#define FWL_EVTHASH_DTP_EditChanged 4009610944 -#define FWL_EVT_DTP_HoverChanged L"FWL_EVENT_DTP_HoverChanged" -#define FWL_EVTHASH_DTP_HoverChanged 686674750 -#define FWL_EVT_DTP_SelectChanged L"FWL_EVENT_DTP_SelectChanged" -#define FWL_EVTHASH_DTP_SelectChanged 1589616858 - -BEGIN_FWL_EVENT_DEF(CFWL_Event_DtpDropDown, FWL_EVTHASH_DTP_DropDown) -END_FWL_EVENT_DEF - -BEGIN_FWL_EVENT_DEF(CFWL_Event_DtpCloseUp, FWL_EVTHASH_DTP_CloseUp) -END_FWL_EVENT_DEF - -BEGIN_FWL_EVENT_DEF(CFWL_Event_DtpEditChanged, FWL_EVTHASH_DTP_EditChanged) -CFX_WideString m_wsText; -END_FWL_EVENT_DEF - -BEGIN_FWL_EVENT_DEF(CFWL_Event_DtpHoverChanged, FWL_EVTHASH_DTP_HoverChanged) -int32_t hoverday; -END_FWL_EVENT_DEF - -BEGIN_FWL_EVENT_DEF(CFWL_Event_DtpSelectChanged, FWL_EVTHASH_DTP_SelectChanged) -int32_t iYear; -int32_t iMonth; -int32_t iDay; -END_FWL_EVENT_DEF - -class IFWL_DateTimePickerDP : public IFWL_DataProvider { - public: - virtual FWL_ERR GetToday(IFWL_Widget* pWidget, - int32_t& iYear, - int32_t& iMonth, - int32_t& iDay) = 0; -}; -class IFWL_DateTimePicker : public IFWL_Widget { - public: - static IFWL_DateTimePicker* Create(const CFWL_WidgetImpProperties& properties, - IFWL_Widget* pOuter); - - FWL_ERR GetCurSel(int32_t& iYear, int32_t& iMonth, int32_t& iDay); - FWL_ERR SetCurSel(int32_t iYear, int32_t iMonth, int32_t iDay); - FWL_ERR SetEditText(const CFX_WideString& wsText); - FWL_ERR GetEditText(CFX_WideString& wsText, - int32_t nStart = 0, - int32_t nCount = -1) const; - int32_t CountSelRanges(); - int32_t GetSelRange(int32_t nIndex, int32_t& nStart); - FX_BOOL CanUndo(); - FX_BOOL CanRedo(); - FX_BOOL Undo(); - FX_BOOL Redo(); - FX_BOOL CanCopy(); - FX_BOOL CanCut(); - FX_BOOL CanSelectAll(); - FX_BOOL Copy(CFX_WideString& wsCopy); - FX_BOOL Cut(CFX_WideString& wsCut); - FX_BOOL Paste(const CFX_WideString& wsPaste); - FX_BOOL SelectAll(); - FX_BOOL Delete(); - FX_BOOL DeSelect(); - FWL_ERR GetBBox(CFX_RectF& rect); - FWL_ERR SetEditLimit(int32_t nLimit); - FWL_ERR ModifyEditStylesEx(FX_DWORD dwStylesExAdded, - FX_DWORD dwStylesExRemoved); - - protected: - IFWL_DateTimePicker(); -}; - -#endif // XFA_INCLUDE_FWL_BASEWIDGET_FWL_DATETIMEPICKER_H_ diff --git a/xfa/include/fwl/basewidget/fwl_edit.h b/xfa/include/fwl/basewidget/fwl_edit.h deleted file mode 100644 index 79a7a84230..0000000000 --- a/xfa/include/fwl/basewidget/fwl_edit.h +++ /dev/null @@ -1,171 +0,0 @@ -// Copyright 2014 PDFium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com - -#ifndef XFA_INCLUDE_FWL_BASEWIDGET_FWL_EDIT_H_ -#define XFA_INCLUDE_FWL_BASEWIDGET_FWL_EDIT_H_ - -#include - -#include "xfa/include/fwl/lightwidget/widget.h" - -class CFWL_WidgetImpProperties; -class IFWL_Edit; - -#define FWL_CLASS_Edit L"FWL_EDIT" -#define FWL_CLASSHASH_Edit 2893987822 -#define FWL_STYLEEXT_EDT_ReadOnly (1L << 0) -#define FWL_STYLEEXT_EDT_MultiLine (1L << 1) -#define FWL_STYLEEXT_EDT_WantReturn (1L << 2) -#define FWL_STYLEEXT_EDT_NoHideSel (1L << 3) -#define FWL_STYLEEXT_EDT_AutoHScroll (1L << 4) -#define FWL_STYLEEXT_EDT_AutoVScroll (1L << 5) -#define FWL_STYLEEXT_EDT_NoRedoUndo (1L << 6) -#define FWL_STYLEEXT_EDT_Validate (1L << 7) -#define FWL_STYLEEXT_EDT_Password (1L << 8) -#define FWL_STYLEEXT_EDT_Number (1L << 9) -#define FWL_STYLEEXT_EDT_HSelfAdaption (1L << 10) -#define FWL_STYLEEXT_EDT_VSelfAdaption (1L << 11) -#define FWL_STYLEEXT_EDT_VerticalLayout (1L << 12) -#define FWL_STYLEEXT_EDT_VerticalChars (1L << 13) -#define FWL_STYLEEXT_EDT_ReverseLine (1L << 14) -#define FWL_STYLEEXT_EDT_ArabicShapes (1L << 15) -#define FWL_STYLEEXT_EDT_ExpandTab (1L << 16) -#define FWL_STYLEEXT_EDT_CombText (1L << 17) -#define FWL_STYLEEXT_EDT_HNear (0L << 18) -#define FWL_STYLEEXT_EDT_HCenter (1L << 18) -#define FWL_STYLEEXT_EDT_HFar (2L << 18) -#define FWL_STYLEEXT_EDT_VNear (0L << 20) -#define FWL_STYLEEXT_EDT_VCenter (1L << 20) -#define FWL_STYLEEXT_EDT_VFar (2L << 20) -#define FWL_STYLEEXT_EDT_Justified (1L << 22) -#define FWL_STYLEEXT_EDT_Distributed (2L << 22) -#define FWL_STYLEEXT_EDT_HAlignMask (3L << 18) -#define FWL_STYLEEXT_EDT_VAlignMask (3L << 20) -#define FWL_STYLEEXT_EDT_HAlignModeMask (3L << 22) -#define FWL_STYLEEXT_EDT_InnerCaret (1L << 24) -#define FWL_STYLEEXT_EDT_ShowScrollbarFocus (1L << 25) -#define FWL_STYLEEXT_EDT_OuterScrollbar (1L << 26) -#define FWL_STYLEEXT_EDT_LastLineHeight (1L << 27) -#define FWL_STATE_EDT_Editing (1 << FWL_WGTSTATE_MAX) -#define FWL_PART_EDT_Border 1 -#define FWL_PART_EDT_Edge 2 -#define FWL_PART_EDT_Background 3 -#define FWL_PART_EDT_CombTextLine 4 -#define FWL_PARTDATA_EDT_Background 0 -#define FWL_PARTDATA_EDT_StaticBackground 1 -#define FWL_PARTSTATE_EDT_Normal (0L << 0) -#define FWL_PARTSTATE_EDT_ReadOnly (1L << 0) -#define FWL_PARTSTATE_EDT_Disable (2L << 0) -enum FWL_EDT_TEXTCHANGED { - FWL_EDT_TEXTCHANGED_Insert = 0, - FWL_EDT_TEXTCHANGED_Delete, - FWL_EDT_TEXTCHANGED_Replace, -}; - -#define FWL_EVT_EDT_TextChanged L"FWL_EVENT_EDT_TextChanged" -#define FWL_EVTHASH_EDT_TextChanged 1064022132 -#define FWL_EVT_EDT_PreSelfAdaption L"FWL_EVENT_PreSelfAdaption" -#define FWL_EVTHASH_EDT_PreSelfAdaption 1001979178 -#define FWL_EVT_EDT_Validate L"FWL_EVTHASH_EDT_Validate" -#define FWL_EVTHASH_EDT_Validate 3373308608 -#define FWL_EVT_EDT_CheckWord L"FWL_EVTHASH_EDT_CheckWord" -#define FWL_EVTHASH_EDT_CheckWord 2897181520 -#define FWL_EVT_EDT_GetSuggestWords L"FWL_EVTHASH_EDT_GetSuggestWords" -#define FWL_EVTHASH_EDT_GetSuggestWords 315782791 -#define FWL_EVT_EDT_TextFull L"FWL_EVTHASH_EDT_TextFull" -#define FWL_EVTHASH_EDT_TextFull 2158580174 - -BEGIN_FWL_EVENT_DEF(CFWL_EvtEdtTextChanged, FWL_EVTHASH_EDT_TextChanged) -int32_t nChangeType; -CFX_WideString wsInsert; -CFX_WideString wsDelete; -CFX_WideString wsPrevText; -END_FWL_EVENT_DEF -BEGIN_FWL_EVENT_DEF(CFWL_EvtEdtTextFull, FWL_EVTHASH_EDT_TextFull) -END_FWL_EVENT_DEF -BEGIN_FWL_EVENT_DEF(CFWL_EvtEdtPreSelfAdaption, FWL_EVTHASH_EDT_PreSelfAdaption) -FX_BOOL bHSelfAdaption; -FX_BOOL bVSelfAdaption; -CFX_RectF rtAfterChange; -END_FWL_EVENT_DEF -BEGIN_FWL_EVENT_DEF(CFWL_EvtEdtValidate, FWL_EVTHASH_EDT_Validate) -IFWL_Widget* pDstWidget; -CFX_WideString wsInsert; -FX_BOOL bValidate; -END_FWL_EVENT_DEF -BEGIN_FWL_EVENT_DEF(CFWL_EvtEdtCheckWord, FWL_EVTHASH_EDT_CheckWord) -CFX_ByteString bsWord; -FX_BOOL bCheckWord; -END_FWL_EVENT_DEF -BEGIN_FWL_EVENT_DEF(CFWL_EvtEdtGetSuggestWords, FWL_EVTHASH_EDT_GetSuggestWords) -FX_BOOL bSuggestWords; -CFX_ByteString bsWord; -std::vector bsArraySuggestWords; -END_FWL_EVENT_DEF -class IFWL_EditDP : public IFWL_DataProvider {}; -#define FWL_EDT_FIND_FLAGS_Prev (0L << 0) -#define FWL_EDT_FIND_FLAGS_Next (1L << 0) -#define FWL_EDT_FIND_FLAGS_WholeWord (1L << 1) -#define FWL_EDT_FIND_FLAGS_NoCase (1L << 2) -typedef struct FWL_HEDTFIND_ { void* pData; } * FWL_HEDTFIND; - -class IFWL_Edit : public IFWL_Widget { - public: - static IFWL_Edit* Create(const CFWL_WidgetImpProperties& properties, - IFWL_Widget* pOuter); - static IFWL_Edit* CreateComboEdit(const CFWL_WidgetImpProperties& properties, - IFWL_Widget* pOuter); - - FWL_ERR SetText(const CFX_WideString& wsText); - int32_t GetTextLength() const; - FWL_ERR GetText(CFX_WideString& wsText, - int32_t nStart = 0, - int32_t nCount = -1) const; - FWL_ERR ClearText(); - int32_t GetCaretPos() const; - int32_t SetCaretPos(int32_t nIndex, FX_BOOL bBefore = TRUE); - FWL_ERR AddSelRange(int32_t nStart, int32_t nCount = -1); - int32_t CountSelRanges(); - int32_t GetSelRange(int32_t nIndex, int32_t& nStart); - FWL_ERR ClearSelections(); - int32_t GetLimit(); - FWL_ERR SetLimit(int32_t nLimit); - FWL_ERR SetAliasChar(FX_WCHAR wAlias); - FWL_ERR SetFormatString(const CFX_WideString& wsFormat); - FWL_ERR Insert(int32_t nStart, const FX_WCHAR* lpText, int32_t nLen); - FWL_ERR DeleteSelections(); - FWL_ERR DeleteRange(int32_t nStart, int32_t nCount = -1); - FWL_ERR ReplaceSelections(const CFX_WideStringC& wsReplace); - FWL_ERR Replace(int32_t nStart, - int32_t nLen, - const CFX_WideStringC& wsReplace); - FWL_ERR DoClipboard(int32_t iCmd); - FX_BOOL Copy(CFX_WideString& wsCopy); - FX_BOOL Cut(CFX_WideString& wsCut); - FX_BOOL Paste(const CFX_WideString& wsPaste); - FX_BOOL Delete(); - FX_BOOL Redo(const CFX_ByteStringC& bsRecord); - FX_BOOL Undo(const CFX_ByteStringC& bsRecord); - FX_BOOL Undo(); - FX_BOOL Redo(); - FX_BOOL CanUndo(); - FX_BOOL CanRedo(); - FWL_ERR SetTabWidth(FX_FLOAT fTabWidth, FX_BOOL bEquidistant); - FWL_ERR SetOuter(IFWL_Widget* pOuter); - FWL_ERR SetNumberRange(int32_t iMin, int32_t iMax); - FWL_ERR SetBackColor(FX_DWORD dwColor); - FWL_ERR SetFont(const CFX_WideString& wsFont, FX_FLOAT fSize); - void SetScrollOffset(FX_FLOAT fScrollOffset); - FX_BOOL GetSuggestWords(CFX_PointF pointf, - std::vector& sSuggest); - FX_BOOL ReplaceSpellCheckWord(CFX_PointF pointf, - const CFX_ByteStringC& bsReplace); - - protected: - IFWL_Edit(); -}; - -#endif // XFA_INCLUDE_FWL_BASEWIDGET_FWL_EDIT_H_ diff --git a/xfa/include/fwl/basewidget/fwl_listbox.h b/xfa/include/fwl/basewidget/fwl_listbox.h deleted file mode 100644 index 4cf5c654d4..0000000000 --- a/xfa/include/fwl/basewidget/fwl_listbox.h +++ /dev/null @@ -1,136 +0,0 @@ -// Copyright 2014 PDFium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com - -#ifndef XFA_INCLUDE_FWL_BASEWIDGET_FWL_LISTBOX_H_ -#define XFA_INCLUDE_FWL_BASEWIDGET_FWL_LISTBOX_H_ - -#include "xfa/include/fwl/core/fwl_note.h" -#include "xfa/include/fwl/core/fwl_widget.h" - -class IFWL_ListBoxDP; - -#define FWL_CLASS_ListBox L"FWL_LISTBOX" -#define FWL_CLASSHASH_ListBox 1777358317 -#define FWL_STYLEEXT_LTB_MultiSelection (1L << 0) -#define FWL_STYLEEXT_LTB_Sort (1L << 1) -#define FWL_STYLEEXT_LTB_ShowScrollBarAlaways (1L << 2) -#define FWL_STYLEEXT_LTB_MultiColumn (1L << 3) -#define FWL_STYLEEXT_LTB_LeftAlign (0L << 4) -#define FWL_STYLEEXT_LTB_CenterAlign (1L << 4) -#define FWL_STYLEEXT_LTB_RightAlign (2L << 4) -#define FWL_STYLEEXT_LTB_MultiLine (1L << 6) -#define FWL_STYLEEXT_LTB_OwnerDraw (1L << 7) -#define FWL_STYLEEXT_LTB_Icon (1L << 8) -#define FWL_STYLEEXT_LTB_Check (1L << 9) -#define FWL_STYLEEXT_LTB_AlignMask (3L << 4) -#define FWL_STYLEEXT_LTB_ShowScrollBarFocus (1L << 10) -#define FWL_ITEMSTATE_LTB_Selected (1L << 0) -#define FWL_ITEMSTATE_LTB_Focused (1L << 1) -#define FWL_ITEMSTATE_LTB_Checked (1L << 2) -#define FWL_PART_LTB_Border 1 -#define FWL_PART_LTB_Edge 2 -#define FWL_PART_LTB_Background 3 -#define FWL_PART_LTB_ListItem 4 -#define FWL_PART_LTB_Check 5 -#define FWL_PART_LTB_Icon 6 -#define FWL_PARTSTATE_LTB_Normal (0L << 0) -#define FWL_PARTSTATE_LTB_Selected (1L << 0) -#define FWL_PARTSTATE_LTB_Disabled (2L << 0) -#define FWL_PARTSTATE_LTB_Focused (1L << 2) -#define FWL_PARTSTATE_LTB_UnChecked (0L << 3) -#define FWL_PARTSTATE_LTB_Checked (1L << 3) -#define FWL_PARTSTATE_LTB_Mask (3L << 0) -#define FWL_WGTHITTEST_LTB_Item FWL_WGTHITTEST_MAX + 1 -#define FWL_WGTHITTEST_LTB_HScrollBar FWL_WGTHITTEST_MAX + 2 -#define FWL_WGTHITTEST_LTB_VScrollBar FWL_WGTHITTEST_MAX + 3 -#define FWL_EVT_LTB_SelChanged L"FWL_EVENT_LTB_SelChanged" -#define FWL_EVT_LTB_DrawItem L"FWL_EVENT_LTB_DrawItem" -#define FWL_EVTHASH_LTB_SelChanged 1701781688 -#define FWL_EVTHASH_LTB_DrawItem 1050853991 - -BEGIN_FWL_EVENT_DEF(CFWL_EvtLtbSelChanged, FWL_EVTHASH_LTB_SelChanged) -CFX_Int32Array iarraySels; -END_FWL_EVENT_DEF - -BEGIN_FWL_EVENT_DEF(CFWL_EvtLtbDrawItem, FWL_EVTHASH_LTB_DrawItem) -CFX_Graphics* m_pGraphics; -CFX_Matrix m_matrix; -int32_t m_index; -CFX_RectF m_rect; -END_FWL_EVENT_DEF - -typedef struct FWL_HLISTITEM_ { void* pData; } * FWL_HLISTITEM; -struct FWL_ListBoxItemData { - IFWL_ListBoxDP* pDataProvider; - int32_t iIndex; -}; - -class IFWL_ListBoxDP : public IFWL_DataProvider { - public: - virtual int32_t CountItems(IFWL_Widget* pWidget) = 0; - virtual FWL_HLISTITEM GetItem(IFWL_Widget* pWidget, int32_t nIndex) = 0; - virtual int32_t GetItemIndex(IFWL_Widget* pWidget, FWL_HLISTITEM hItem) = 0; - virtual FX_BOOL SetItemIndex(IFWL_Widget* pWidget, - FWL_HLISTITEM hItem, - int32_t nIndex) = 0; - virtual FX_DWORD GetItemStyles(IFWL_Widget* pWidget, FWL_HLISTITEM hItem) = 0; - virtual FWL_ERR GetItemText(IFWL_Widget* pWidget, - FWL_HLISTITEM hItem, - CFX_WideString& wsText) = 0; - virtual FWL_ERR GetItemRect(IFWL_Widget* pWidget, - FWL_HLISTITEM hItem, - CFX_RectF& rtItem) = 0; - virtual void* GetItemData(IFWL_Widget* pWidget, FWL_HLISTITEM hItem) = 0; - virtual FWL_ERR SetItemStyles(IFWL_Widget* pWidget, - FWL_HLISTITEM hItem, - FX_DWORD dwStyle) = 0; - virtual FWL_ERR SetItemText(IFWL_Widget* pWidget, - FWL_HLISTITEM hItem, - const FX_WCHAR* pszText) = 0; - virtual FWL_ERR SetItemRect(IFWL_Widget* pWidget, - FWL_HLISTITEM hItem, - const CFX_RectF& rtItem) = 0; - virtual FX_FLOAT GetItemHeight(IFWL_Widget* pWidget) = 0; - virtual CFX_DIBitmap* GetItemIcon(IFWL_Widget* pWidget, - FWL_HLISTITEM hItem) = 0; - virtual FWL_ERR GetItemCheckRect(IFWL_Widget* pWidget, - FWL_HLISTITEM hItem, - CFX_RectF& rtCheck) = 0; - virtual FWL_ERR SetItemCheckRect(IFWL_Widget* pWidget, - FWL_HLISTITEM hItem, - const CFX_RectF& rtCheck) = 0; - virtual FX_DWORD GetItemCheckState(IFWL_Widget* pWidget, - FWL_HLISTITEM hItem) = 0; - virtual FWL_ERR SetItemCheckState(IFWL_Widget* pWidget, - FWL_HLISTITEM hItem, - FX_DWORD dwCheckState) = 0; -}; -class IFWL_ListBoxCompare { - public: - virtual ~IFWL_ListBoxCompare() {} - virtual int32_t Compare(FWL_HLISTITEM hLeft, FWL_HLISTITEM hRight) = 0; -}; -class IFWL_ListBox : public IFWL_Widget { - public: - static IFWL_ListBox* Create(const CFWL_WidgetImpProperties& properties, - IFWL_Widget* pOuter); - static IFWL_ListBox* CreateComboList( - const CFWL_WidgetImpProperties& properties, - IFWL_Widget* pOuter); - - int32_t CountSelItems(); - FWL_HLISTITEM GetSelItem(int32_t nIndexSel); - int32_t GetSelIndex(int32_t nIndex); - FWL_ERR SetSelItem(FWL_HLISTITEM hItem, FX_BOOL bSelect = TRUE); - FWL_ERR GetItemText(FWL_HLISTITEM hItem, CFX_WideString& wsText); - FWL_ERR GetScrollPos(FX_FLOAT& fPos, FX_BOOL bVert = TRUE); - FWL_ERR* Sort(IFWL_ListBoxCompare* pCom); - - protected: - IFWL_ListBox(); -}; - -#endif // XFA_INCLUDE_FWL_BASEWIDGET_FWL_LISTBOX_H_ diff --git a/xfa/include/fwl/basewidget/fwl_menu.h b/xfa/include/fwl/basewidget/fwl_menu.h deleted file mode 100644 index d8ab0d9292..0000000000 --- a/xfa/include/fwl/basewidget/fwl_menu.h +++ /dev/null @@ -1,17 +0,0 @@ -// Copyright 2014 PDFium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com - -#ifndef XFA_INCLUDE_FWL_BASEWIDGET_FWL_MENU_H_ -#define XFA_INCLUDE_FWL_BASEWIDGET_FWL_MENU_H_ - -#define FWL_CLASS_Menu L"FWL_MENU" -#define FWL_CLASSHASH_Menu 3957949655 -#define FWL_STYLEEXT_MNU_Horz (0L << 0) -#define FWL_STYLEEXT_MNU_Vert (1L << 0) -#define FWL_STYLEEXT_MNU_Dock (1L << 1) -#define FWL_STYLEEXT_MNU_OwnerDraw (1L << 2) - -#endif // XFA_INCLUDE_FWL_BASEWIDGET_FWL_MENU_H_ diff --git a/xfa/include/fwl/basewidget/fwl_monthcalendar.h b/xfa/include/fwl/basewidget/fwl_monthcalendar.h deleted file mode 100644 index a57b8151c2..0000000000 --- a/xfa/include/fwl/basewidget/fwl_monthcalendar.h +++ /dev/null @@ -1,137 +0,0 @@ -// Copyright 2014 PDFium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com - -#ifndef XFA_INCLUDE_FWL_BASEWIDGET_FWL_MONTHCALENDAR_H_ -#define XFA_INCLUDE_FWL_BASEWIDGET_FWL_MONTHCALENDAR_H_ - -#include "xfa/include/fwl/core/fwl_note.h" -#include "xfa/include/fwl/core/fwl_widget.h" - -#define FWL_CLASS_MonthCalendar L"FWL_MONTHCALENDAR" -#define FWL_CLASSHASH_MonthCalendar 2733931374 -#define FWL_STYLEEXT_MCD_MultiSelect (1L << 0) -#define FWL_STYLEEXT_MCD_NoToday (1L << 1) -#define FWL_STYLEEXT_MCD_NoTodayCircle (1L << 2) -#define FWL_STYLEEXT_MCD_WeekNumbers (1L << 3) -#define FWL_WGTCAPACITY_MC_HEADER_WIDTH 12 -#define FWL_WGTCAPACITY_MC_HEADER_Height 13 -#define FWL_WGTCAPACITY_MC_HEADER_BTN_WIDTH 14 -#define FWL_WGTCAPACITY_MC_HEADER_BTN_HEIGHT 15 -#define FWL_WGTCAPACITY_MC_HEADER_BTN_HMARGIN 16 -#define FWL_WGTCAPACITY_MC_HEADER_BTN_VMARGIN 17 -#define FWL_WGTCAPACITY_MC_HEADER_TEXTWIDHT 18 -#define FWL_WGTCAPACITY_MC_HEADER_TEXTHEIGHT 19 -#define FWL_WGTCAPACITY_MC_HEADER_TEXT_HMARGIN 20 -#define FWL_WGTCAPACITY_MC_HEADER_TEXT_VMARGIN 21 -#define FWL_WGTCAPACITY_MC_HSEP_WIDTH 22 -#define FWL_WGTCAPACITY_MC_HSEP_HEIGHT 23 -#define FWL_WGTCAPACITY_MC_VSEP_WIDTH 24 -#define FWL_WGTCAPACITY_MC_VSEP_HEIGHT 25 -#define FWL_WGTCAPACITY_MC_WEEKNUM_WIDTH 26 -#define FWL_WGTCAPACITY_MC_SEP_DOFFSET 40 -#define FWL_WGTCAPACITY_MC_SEP_X 27 -#define FWL_WGTCAPACITY_MC_SEP_Y 28 -#define FWL_WGTCAPACITY_MC_WEEKNUM_HEIGHT 29 -#define FWL_WGTCAPACITY_MC_WEEK_WIDTH 30 -#define FWL_WGTCAPACITY_MC_WEEK_HEIGHT 31 -#define FWL_WGTCAPACITY_MC_DATES_CELL_WIDTH 32 -#define FWL_WGTCAPACITY_MC_DATES_CELL_HEIGHT 33 -#define FWL_WGTCAPACITY_MC_TODAY_WIDHT 34 -#define FWL_WGTCAPACITY_MC_TODAY_HEIGHT 35 -#define FWL_WGTCAPACITY_MC_TODAY_FLAG_WIDHT 36 -#define FWL_WGTCAPACITY_MC_WIDTH 37 -#define FWL_WGTCAPACITY_MC_HEIGHT 38 -#define FWL_ITEMSTATE_MCD_Nomal (0L << 0) -#define FWL_ITEMSTATE_MCD_Flag (1L << 0) -#define FWL_ITEMSTATE_MCD_Selected (1L << 1) -#define FWL_ITEMSTATE_MCD_Focused (1L << 2) -#define FWL_PART_MCD_Border 1 -#define FWL_PART_MCD_Edge 2 -#define FWL_PART_MCD_Background 3 -#define FWL_PART_MCD_LBtn 4 -#define FWL_PART_MCD_RBtn 5 -#define FWL_PART_MCD_HSeparator 6 -#define FWL_PART_MCD_VSeparator 7 -#define FWL_PART_MCD_TodayCircle 8 -#define FWL_PART_MCD_DateInCircle 9 -#define FWL_PART_MCD_DateInBK 10 -#define FWL_PART_MCD_Caption 9 -#define FWL_PART_MCD_DatesIn 10 -#define FWL_PART_MCD_DatesOut 11 -#define FWL_PART_MCD_Week 12 -#define FWL_PART_MCD_Today 13 -#define FWL_PART_MCD_Header 14 -#define FWL_PART_MCD_WeekNum 15 -#define FWL_PART_MCD_WeekNumSep 16 -#define FWL_PARTSTATE_MCD_Normal (0L << 0) -#define FWL_PARTSTATE_MCD_Pressed (1L << 0) -#define FWL_PARTSTATE_MCD_Hovered (2L << 0) -#define FWL_PARTSTATE_MCD_Selected (3L << 0) -#define FWL_PARTSTATE_MCD_LSelected (1L << 2) -#define FWL_PARTSTATE_MCD_RSelected (2L << 2) -#define FWL_PARTSTATE_MCD_Flagged (1L << 3) -#define FWL_PARTSTATE_MCD_Focused (1L << 4) -#define FWL_MCCAPACITY_Sun FWL_WGTCAPACITY_MAX + 5 -#define FWL_MCCAPACITY_Mon FWL_WGTCAPACITY_MAX + 6 -#define FWL_MCCAPACITY_Tue FWL_WGTCAPACITY_MAX + 7 -#define FWL_MCCAPACITY_Wed FWL_WGTCAPACITY_MAX + 8 -#define FWL_MCCAPACITY_Thu FWL_WGTCAPACITY_MAX + 9 -#define FWL_MCCAPACITY_Fri FWL_WGTCAPACITY_MAX + 10 -#define FWL_MCCAPACITY_Sat FWL_WGTCAPACITY_MAX + 11 -#define FWL_MCCAPACITY_January FWL_WGTCAPACITY_MAX + 12 -#define FWL_MCCAPACITY_February FWL_WGTCAPACITY_MAX + 13 -#define FWL_MCCAPACITY_March FWL_WGTCAPACITY_MAX + 14 -#define FWL_MCCAPACITY_April FWL_WGTCAPACITY_MAX + 15 -#define FWL_MCCAPACITY_May FWL_WGTCAPACITY_MAX + 16 -#define FWL_MCCAPACITY_June FWL_WGTCAPACITY_MAX + 17 -#define FWL_MCCAPACITY_July FWL_WGTCAPACITY_MAX + 18 -#define FWL_MCCAPACITY_August FWL_WGTCAPACITY_MAX + 19 -#define FWL_MCCAPACITY_September FWL_WGTCAPACITY_MAX + 20 -#define FWL_MCCAPACITY_October FWL_WGTCAPACITY_MAX + 21 -#define FWL_MCCAPACITY_November FWL_WGTCAPACITY_MAX + 22 -#define FWL_MCCAPACITY_December FWL_WGTCAPACITY_MAX + 23 -#define FWL_MCCAPACITY_Today FWL_WGTCAPACITY_MAX + 24 -#define FWL_EVENT_MCD_DATESELECTED L"FWL_EVENT_MCD_DateSelected" -#define FWL_EVT_MCD_DateChanged L"FWL_EVENT_MCD_DateChanged" -#define FWL_NOTEHASH_MCD_DATASELECTED 1085596932 -#define FWL_EVTHASH_MCD_DateChanged 54212227 - -BEGIN_FWL_EVENT_DEF(CFWL_Event_McdDateSelected, FWL_NOTEHASH_MCD_DATASELECTED) -int32_t m_iStartDay; -int32_t m_iEndDay; -END_FWL_EVENT_DEF - -BEGIN_FWL_EVENT_DEF(CFWL_EventMcdDateChanged, FWL_EVTHASH_MCD_DateChanged) -int32_t m_iOldYear; -int32_t m_iOldMonth; -int32_t m_iStartDay; -int32_t m_iEndDay; -END_FWL_EVENT_DEF - -class IFWL_MonthCalendarDP : public IFWL_DataProvider { - public: - virtual int32_t GetCurDay(IFWL_Widget* pWidget) = 0; - virtual int32_t GetCurMonth(IFWL_Widget* pWidget) = 0; - virtual int32_t GetCurYear(IFWL_Widget* pWidget) = 0; -}; - -class IFWL_MonthCalendar : public IFWL_Widget { - public: - static IFWL_MonthCalendar* Create(const CFWL_WidgetImpProperties& properties, - IFWL_Widget* pOuter); - - int32_t CountSelect(); - FX_BOOL GetSelect(int32_t& iYear, - int32_t& iMonth, - int32_t& iDay, - int32_t nIndex = 0); - FX_BOOL SetSelect(int32_t iYear, int32_t iMonth, int32_t iDay); - - protected: - IFWL_MonthCalendar(); -}; - -#endif // XFA_INCLUDE_FWL_BASEWIDGET_FWL_MONTHCALENDAR_H_ diff --git a/xfa/include/fwl/basewidget/fwl_picturebox.h b/xfa/include/fwl/basewidget/fwl_picturebox.h deleted file mode 100644 index 123607a804..0000000000 --- a/xfa/include/fwl/basewidget/fwl_picturebox.h +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2014 PDFium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com - -#ifndef XFA_INCLUDE_FWL_BASEWIDGET_FWL_PICTUREBOX_H_ -#define XFA_INCLUDE_FWL_BASEWIDGET_FWL_PICTUREBOX_H_ - -#include "xfa/fwl/core/fwl_widgetimp.h" - -#define FWL_CLASS_PictureBox L"FWL_PICTUREBOX" -#define FWL_CLASSHASH_PictureBox 2974721741 -#define FWL_STYLEEXT_PTB_Left 0L << 0 -#define FWL_STYLEEXT_PTB_Center 1L << 0 -#define FWL_STYLEEXT_PTB_Right 2L << 0 -#define FWL_STYLEEXT_PTB_Top 0L << 2 -#define FWL_STYLEEXT_PTB_Vcenter 1L << 2 -#define FWL_STYLEEXT_PTB_Bottom 2L << 2 -#define FWL_STYLEEXT_PTB_Normal 0L << 4 -#define FWL_STYLEEXT_PTB_AutoSize 1L << 4 -#define FWL_STYLEEXT_PTB_StretchImage 2L << 4 -#define FWL_STYLEEXT_PTB_StretchHImage 3L << 4 -#define FWL_STYLEEXT_PTB_StretchVImage 4L << 4 -#define FWL_STYLEEXT_PTB_HAlignMask 3L << 0 -#define FWL_STYLEEXT_PTB_VAlignMask 3L << 2 -#define FWL_STYLEEXT_PTB_StretchAlignMask 7L << 4 -#define FWL_PART_PTB_Border 1 -#define FWL_PART_PTB_Edge 2 -#define FWL_PART_PTB_Image 3 -#define FWL_PARTSTATE_PTB_Normal (0L << 0) -#define FWL_PARTSTATE_PTB_Disabled (1L << 0) - -class IFWL_PictureBoxDP : public IFWL_DataProvider { - public: - virtual CFX_DIBitmap* GetPicture(IFWL_Widget* pWidget) = 0; - virtual CFX_DIBitmap* GetErrorPicture(IFWL_Widget* pWidget) = 0; - virtual CFX_DIBitmap* GetInitialPicture(IFWL_Widget* pWidget) = 0; - virtual int32_t GetOpacity(IFWL_Widget* pWidget) = 0; - virtual int32_t GetFlipMode(IFWL_Widget* pWidget) = 0; - virtual FWL_ERR GetMatrix(IFWL_Widget* pWidget, CFX_Matrix& matrix) = 0; -}; - -class IFWL_PictureBox : public IFWL_Widget { - public: - static IFWL_PictureBox* Create(const CFWL_WidgetImpProperties& properties, - IFWL_Widget* pOuter); - - protected: - IFWL_PictureBox(); -}; - -#endif // XFA_INCLUDE_FWL_BASEWIDGET_FWL_PICTUREBOX_H_ diff --git a/xfa/include/fwl/basewidget/fwl_pushbutton.h b/xfa/include/fwl/basewidget/fwl_pushbutton.h deleted file mode 100644 index 28f9df4fa6..0000000000 --- a/xfa/include/fwl/basewidget/fwl_pushbutton.h +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright 2014 PDFium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com - -#ifndef XFA_INCLUDE_FWL_BASEWIDGET_FWL_PUSHBUTTON_H_ -#define XFA_INCLUDE_FWL_BASEWIDGET_FWL_PUSHBUTTON_H_ - -#include "xfa/fwl/core/fwl_widgetimp.h" -#include "xfa/include/fwl/core/fwl_theme.h" - -#define FWL_CLASS_PushButton L"FWL_PUSHBUTTON" -#define FWL_CLASSHASH_PushButton 3521614244 -#define FWL_STYLEEXT_PSB_Left (0L << 0) -#define FWL_STYLEEXT_PSB_Center (1L << 0) -#define FWL_STYLEEXT_PSB_Right (2L << 0) -#define FWL_STYLEEXT_PSB_Top (0L << 2) -#define FWL_STYLEEXT_PSB_VCenter (1L << 2) -#define FWL_STYLEEXT_PSB_Bottom (2L << 2) -#define FWL_STYLEEXT_PSB_TextOnly (0L << 4) -#define FWL_STYLEEXT_PSB_IconOnly (1L << 4) -#define FWL_STYLEEXT_PSB_TextIcon (2L << 4) -#define FWL_STYLEEXT_PSB_HLayoutMask (3L << 0) -#define FWL_STYLEEXT_PSB_VLayoutMask (3L << 2) -#define FWL_STYLEEXT_PSB_ModeMask (3L << 4) -#define FWL_STATE_PSB_Hovered (1 << FWL_WGTSTATE_MAX) -#define FWL_STATE_PSB_Pressed (1 << (FWL_WGTSTATE_MAX + 1)) -#define FWL_STATE_PSB_Default (1 << (FWL_WGTSTATE_MAX + 2)) -#define FWL_WGTCAPACITY_PSB_Margin (FWL_WGTCAPACITY_MAX + 1) -#define FWL_PART_PSB_Border 1 -#define FWL_PART_PSB_Edge 2 -#define FWL_PART_PSB_Background 3 -#define FWL_PART_PSB_Caption 4 -#define FWL_PARTSTATE_PSB_Normal (0L << 0) -#define FWL_PARTSTATE_PSB_Pressed (1L << 0) -#define FWL_PARTSTATE_PSB_Hovered (2L << 0) -#define FWL_PARTSTATE_PSB_Default (3L << 0) -#define FWL_PARTSTATE_PSB_Disabled (4L << 0) -#define FWL_PARTSTATE_PSB_Focused (1L << 3) -#define FWL_PARTSTATE_PSB_Mask (7L << 0) - -class IFWL_PushButtonDP : public IFWL_DataProvider { - public: - virtual CFX_DIBitmap* GetPicture(IFWL_Widget* pWidget) = 0; -}; -class IFWL_PushButton : public IFWL_Widget { - public: - static IFWL_PushButton* Create(const CFWL_WidgetImpProperties& properties, - IFWL_Widget* pOuter); - - protected: - IFWL_PushButton(); -}; - -#endif // XFA_INCLUDE_FWL_BASEWIDGET_FWL_PUSHBUTTON_H_ diff --git a/xfa/include/fwl/basewidget/fwl_scrollbar.h b/xfa/include/fwl/basewidget/fwl_scrollbar.h deleted file mode 100644 index 8cd69bcf1f..0000000000 --- a/xfa/include/fwl/basewidget/fwl_scrollbar.h +++ /dev/null @@ -1,72 +0,0 @@ -// Copyright 2014 PDFium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com - -#ifndef XFA_INCLUDE_FWL_BASEWIDGET_FWL_SCROLLBAR_H_ -#define XFA_INCLUDE_FWL_BASEWIDGET_FWL_SCROLLBAR_H_ - -#include "xfa/fwl/core/fwl_widgetimp.h" - -#define FWL_CLASS_ScrollBar L"FWL_SCROLLBAR" -#define FWL_CLASSHASH_ScrollBar 2826584844 -#define FWL_STYLEEXT_SCB_Horz (0L << 0) -#define FWL_STYLEEXT_SCB_Vert (1L << 0) -#define FWL_PART_SCB_Border 1 -#define FWL_PART_SCB_Edge 2 -#define FWL_PART_SCB_Background 3 -#define FWL_PART_SCB_ForeArrow 4 -#define FWL_PART_SCB_BackArrow 5 -#define FWL_PART_SCB_Thumb 6 -#define FWL_PART_SCB_LowerTrack 7 -#define FWL_PART_SCB_UpperTrack 8 -#define FWL_PARTSTATE_SCB_Normal (0L << 0) -#define FWL_PARTSTATE_SCB_Hovered (1L << 0) -#define FWL_PARTSTATE_SCB_Pressed (2L << 0) -#define FWL_PARTSTATE_SCB_Disabled (3L << 0) -#define FWL_WGTHITTEST_SCB_ForeArrow FWL_WGTHITTEST_MAX + 1 -#define FWL_WGTHITTEST_SCB_BackArrow FWL_WGTHITTEST_MAX + 2 -#define FWL_WGTHITTEST_SCB_LowerTrack FWL_WGTHITTEST_MAX + 3 -#define FWL_WGTHITTEST_SCB_UpperTrack FWL_WGTHITTEST_MAX + 4 -#define FWL_WGTHITTEST_SCB_Thumb FWL_WGTHITTEST_MAX + 5 -#define FWL_CAPACITY_SCB_Size FWL_WGTCAPACITY_MAX - -enum FWL_SCBCODE { - FWL_SCBCODE_None = 1, - FWL_SCBCODE_Min, - FWL_SCBCODE_Max, - FWL_SCBCODE_PageBackward, - FWL_SCBCODE_PageForward, - FWL_SCBCODE_StepBackward, - FWL_SCBCODE_StepForward, - FWL_SCBCODE_Pos, - FWL_SCBCODE_TrackPos, - FWL_SCBCODE_EndScroll, -}; - -class IFWL_ScrollBarDP : public IFWL_DataProvider {}; - -class IFWL_ScrollBar : public IFWL_Widget { - public: - static IFWL_ScrollBar* Create(const CFWL_WidgetImpProperties& properties, - IFWL_Widget* pOuter); - - FX_BOOL IsVertical(); - FWL_ERR GetRange(FX_FLOAT& fMin, FX_FLOAT& fMax); - FWL_ERR SetRange(FX_FLOAT fMin, FX_FLOAT fMax); - FX_FLOAT GetPageSize(); - FWL_ERR SetPageSize(FX_FLOAT fPageSize); - FX_FLOAT GetStepSize(); - FWL_ERR SetStepSize(FX_FLOAT fStepSize); - FX_FLOAT GetPos(); - FWL_ERR SetPos(FX_FLOAT fPos); - FX_FLOAT GetTrackPos(); - FWL_ERR SetTrackPos(FX_FLOAT fTrackPos); - FX_BOOL DoScroll(FX_DWORD dwCode, FX_FLOAT fPos = 0.0f); - - protected: - IFWL_ScrollBar(); -}; - -#endif // XFA_INCLUDE_FWL_BASEWIDGET_FWL_SCROLLBAR_H_ diff --git a/xfa/include/fwl/basewidget/fwl_spinbutton.h b/xfa/include/fwl/basewidget/fwl_spinbutton.h deleted file mode 100644 index fdd27c64a6..0000000000 --- a/xfa/include/fwl/basewidget/fwl_spinbutton.h +++ /dev/null @@ -1,43 +0,0 @@ -// Copyright 2014 PDFium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com - -#ifndef XFA_INCLUDE_FWL_BASEWIDGET_FWL_SPINBUTTON_H_ -#define XFA_INCLUDE_FWL_BASEWIDGET_FWL_SPINBUTTON_H_ - -#include "xfa/fwl/core/fwl_widgetimp.h" - -#define FWL_CLASS_SpinButton L"FWL_SPINBUTTON" -#define FWL_CLASSHASH_SpinButton 3793043646 -#define FWL_STYLEEXE_SPB_Vert (1L << 0) -#define FWL_PART_SPB_Border 1 -#define FWL_PART_SPB_Edge 2 -#define FWL_PART_SPB_UpButton 3 -#define FWL_PART_SPB_DownButton 4 -#define FWL_PARTSTATE_SPB_Normal (0L << 0) -#define FWL_PARTSTATE_SPB_Hovered (1L << 0) -#define FWL_PARTSTATE_SPB_Pressed (2L << 0) -#define FWL_PARTSTATE_SPB_Disabled (3L << 0) -#define FWL_WGTHITTEST_SPB_UpButton (FWL_WGTHITTEST_MAX + 1) -#define FWL_WGTHITTEST_SPB_DownButton (FWL_WGTHITTEST_MAX + 2) -#define FWL_EVT_SPB_Click L"FWL_EVENT_SPB_Click" -#define FWL_EVTHASH_SPB_Click 2927651187 -BEGIN_FWL_EVENT_DEF(CFWL_EvtSpbClick, FWL_EVTHASH_SPB_Click) -FX_BOOL m_bUp; -END_FWL_EVENT_DEF - -class IFWL_SpinButton : public IFWL_Widget { - public: - static IFWL_SpinButton* Create(const CFWL_WidgetImpProperties& properties, - IFWL_Widget* pOuter); - - FWL_ERR EnableButton(FX_BOOL bEnable, FX_BOOL bUp = TRUE); - FX_BOOL IsButtonEnable(FX_BOOL bUp = TRUE); - - protected: - IFWL_SpinButton(); -}; - -#endif // XFA_INCLUDE_FWL_BASEWIDGET_FWL_SPINBUTTON_H_ diff --git a/xfa/include/fwl/basewidget/fwl_tooltipctrl.h b/xfa/include/fwl/basewidget/fwl_tooltipctrl.h deleted file mode 100644 index 0a775dbd7c..0000000000 --- a/xfa/include/fwl/basewidget/fwl_tooltipctrl.h +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2014 PDFium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com - -#ifndef XFA_INCLUDE_FWL_BASEWIDGET_FWL_TOOLTIPCTRL_H_ -#define XFA_INCLUDE_FWL_BASEWIDGET_FWL_TOOLTIPCTRL_H_ - -#include "xfa/include/fwl/core/fwl_form.h" - -class CFWL_WidgetImpProperties; -class IFWL_ToolTip; - -#define FWL_CLASS_ToolTip L"FWL_TOOLTIP" -#define FWL_CLASSHASH_ToolTip 1111984755 -#define FWL_STYLEEXT_TTP_Rectangle (0L << 3) -#define FWL_STYLEEXT_TTP_RoundCorner (1L << 3) -#define FWL_STYLEEXT_TTP_Balloon (1L << 4) -#define FWL_STYLEEXT_TTP_Multiline (1L << 5) -#define FWL_STYLEEXT_TTP_NoAnchor (1L << 6) -#define FWL_PART_TTP_Border 1 -#define FWL_PART_TTP_Background 2 -#define FWL_PART_TTP_Caption 3 - -class IFWL_ToolTipDP : public IFWL_DataProvider { - public: - virtual FWL_ERR GetCaption(IFWL_Widget* pWidget, - CFX_WideString& wsCaption) = 0; - virtual int32_t GetInitialDelay(IFWL_Widget* pWidget) = 0; - virtual int32_t GetAutoPopDelay(IFWL_Widget* pWidget) = 0; - virtual CFX_DIBitmap* GetToolTipIcon(IFWL_Widget* pWidget) = 0; - virtual CFX_SizeF GetToolTipIconSize(IFWL_Widget* pWidget) = 0; -}; -class IFWL_ToolTip : public IFWL_Form { - public: - static IFWL_ToolTip* Create(const CFWL_WidgetImpProperties& properties, - IFWL_Widget* pOuter); - - FWL_ERR SetAnchor(const CFX_RectF& rtAnchor); - FWL_ERR Show(); - FWL_ERR Hide(); - - protected: - IFWL_ToolTip(); -}; - -#endif // XFA_INCLUDE_FWL_BASEWIDGET_FWL_TOOLTIPCTRL_H_ diff --git a/xfa/include/fwl/basewidget/fxmath_barcode.h b/xfa/include/fwl/basewidget/fxmath_barcode.h deleted file mode 100644 index 51fd242a7d..0000000000 --- a/xfa/include/fwl/basewidget/fxmath_barcode.h +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright 2014 PDFium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com - -#ifndef XFA_INCLUDE_FWL_BASEWIDGET_FXMATH_BARCODE_H_ -#define XFA_INCLUDE_FWL_BASEWIDGET_FXMATH_BARCODE_H_ - -#include "core/fxcrt/include/fx_string.h" -#include "core/fxcrt/include/fx_system.h" -#include "core/include/fxge/fx_dib.h" -#include "xfa/fxbarcode/include/BC_Library.h" - -class CFX_Font; -class CFX_Matrix; -class CFX_RenderDevice; - -class IFX_Barcode { - public: - virtual ~IFX_Barcode() {} - - virtual void Release() = 0; - - virtual BC_TYPE GetType() = 0; - virtual FX_BOOL Encode(const CFX_WideStringC& contents, - FX_BOOL isDevice, - int32_t& e) = 0; - virtual FX_BOOL RenderDevice(CFX_RenderDevice* device, - const CFX_Matrix* matirx, - int32_t& e) = 0; - virtual FX_BOOL RenderBitmap(CFX_DIBitmap*& pOutBitmap, int32_t& e) = 0; - virtual CFX_WideString Decode(uint8_t* buf, - int32_t width, - int32_t height, - int32_t& errorCode) = 0; - virtual CFX_WideString Decode(CFX_DIBitmap* pBitmap, int32_t& errorCode) = 0; - virtual FX_BOOL SetCharEncoding(BC_CHAR_ENCODING encoding) = 0; - virtual FX_BOOL SetModuleHeight(int32_t moduleHeight) = 0; - virtual FX_BOOL SetModuleWidth(int32_t moduleWidth) = 0; - virtual FX_BOOL SetHeight(int32_t height) = 0; - virtual FX_BOOL SetWidth(int32_t width) = 0; - virtual FX_BOOL CheckContentValidity(const CFX_WideStringC& contents) = 0; - virtual FX_BOOL SetPrintChecksum(FX_BOOL checksum) = 0; - virtual FX_BOOL SetDataLength(int32_t length) = 0; - virtual FX_BOOL SetCalChecksum(int32_t state) = 0; - virtual FX_BOOL SetFont(CFX_Font* pFont) = 0; - virtual FX_BOOL SetFontSize(FX_FLOAT size) = 0; - virtual FX_BOOL SetFontStyle(int32_t style) = 0; - virtual FX_BOOL SetFontColor(FX_ARGB color) = 0; - virtual FX_BOOL SetTextLocation(BC_TEXT_LOC location) = 0; - virtual FX_BOOL SetWideNarrowRatio(int32_t ratio) = 0; - virtual FX_BOOL SetStartChar(FX_CHAR start) = 0; - virtual FX_BOOL SetEndChar(FX_CHAR end) = 0; - virtual FX_BOOL SetVersion(int32_t version) = 0; - virtual FX_BOOL SetErrorCorrectionLevel(int32_t level) = 0; - virtual FX_BOOL SetTruncated(FX_BOOL truncated) = 0; -}; - -IFX_Barcode* FX_Barcode_Create(BC_TYPE type); - -#endif // XFA_INCLUDE_FWL_BASEWIDGET_FXMATH_BARCODE_H_ diff --git a/xfa/include/fwl/core/fwl_app.h b/xfa/include/fwl/core/fwl_app.h deleted file mode 100644 index 7904ee89f5..0000000000 --- a/xfa/include/fwl/core/fwl_app.h +++ /dev/null @@ -1,44 +0,0 @@ -// Copyright 2014 PDFium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com - -#ifndef XFA_INCLUDE_FWL_CORE_FWL_APP_H_ -#define XFA_INCLUDE_FWL_CORE_FWL_APP_H_ - -#include "core/fxcrt/include/fx_string.h" -#include "xfa/include/fwl/core/fwl_thread.h" - -class IFWL_AdapterNative; -class IFWL_Widget; -class IFWL_WidgetMgr; -class IFWL_ThemeProvider; -class IFWL_AdapterWidgetMgr; - -class IFWL_App : public IFWL_NoteThread { - public: - static IFWL_App* Create(IFWL_AdapterNative* pAdapter); - - FWL_ERR Initialize(); - FWL_ERR Finalize(); - IFWL_AdapterNative* GetAdapterNative(); - IFWL_WidgetMgr* GetWidgetMgr(); - IFWL_ThemeProvider* GetThemeProvider(); - FWL_ERR SetThemeProvider(IFWL_ThemeProvider* pThemeProvider); - FWL_ERR Exit(int32_t iExitCode); - - private: - IFWL_App() {} -}; -IFWL_App* FWL_GetApp(); -void FWL_SetApp(IFWL_App* pApp); -IFWL_AdapterNative* FWL_GetAdapterNative(); -IFWL_AdapterWidgetMgr* FWL_GetAdapterWidgetMgr(); -IFWL_ThemeProvider* FWL_GetThemeProvider(); -extern FWL_ERR FWL_Execute(const CFX_WideStringC& wsExecutable, - const CFX_WideStringC& wsParameters); -FWL_ERR FWL_SetFullScreen(IFWL_Widget* pWidget, FX_BOOL bFullScreen); -FX_BOOL FWL_AppIsActived(); - -#endif // XFA_INCLUDE_FWL_CORE_FWL_APP_H_ diff --git a/xfa/include/fwl/core/fwl_content.h b/xfa/include/fwl/core/fwl_content.h deleted file mode 100644 index 10d6c1e1ac..0000000000 --- a/xfa/include/fwl/core/fwl_content.h +++ /dev/null @@ -1,27 +0,0 @@ -// Copyright 2014 PDFium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com - -#ifndef XFA_INCLUDE_FWL_CORE_FWL_CONTENT_H_ -#define XFA_INCLUDE_FWL_CORE_FWL_CONTENT_H_ - -#include "xfa/fwl/core/fwl_widgetimp.h" - -class IFWL_Content : public IFWL_Widget { - public: - static IFWL_Content* Create(); - FWL_ERR InsertWidget(IFWL_Widget* pChild, int32_t nIndex = -1); - FWL_ERR RemoveWidget(IFWL_Widget* pWidget); - FWL_ERR RemoveAllWidgets(); - FWL_ERR GetMinSize(FX_FLOAT& fWidth, FX_FLOAT& fHeight); - FWL_ERR SetMinSize(FX_FLOAT fWidth, FX_FLOAT fHeight); - FWL_ERR GetMaxSize(FX_FLOAT& fWidth, FX_FLOAT& fHeight); - FWL_ERR SetMaxSize(FX_FLOAT fWidth, FX_FLOAT fHeight); - - protected: - IFWL_Content(); -}; - -#endif // XFA_INCLUDE_FWL_CORE_FWL_CONTENT_H_ diff --git a/xfa/include/fwl/core/fwl_error.h b/xfa/include/fwl/core/fwl_error.h deleted file mode 100644 index 8b4c8f4bc6..0000000000 --- a/xfa/include/fwl/core/fwl_error.h +++ /dev/null @@ -1,22 +0,0 @@ -// Copyright 2014 PDFium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com - -#ifndef XFA_INCLUDE_FWL_CORE_FWL_ERROR_H_ -#define XFA_INCLUDE_FWL_CORE_FWL_ERROR_H_ - -#include - -typedef int32_t FWL_ERR; - -#define FWL_ERR_Succeeded 0 -#define FWL_ERR_Indefinite -1 -#define FWL_ERR_Parameter_Invalid -100 -#define FWL_ERR_Property_Invalid -200 -#define FWL_ERR_Intermediate_Value__Invalid -300 -#define FWL_ERR_Method_Not_Supported -400 -#define FWL_ERR_Out_Of_Memory -500 - -#endif // XFA_INCLUDE_FWL_CORE_FWL_ERROR_H_ diff --git a/xfa/include/fwl/core/fwl_form.h b/xfa/include/fwl/core/fwl_form.h deleted file mode 100644 index 1fc39958f3..0000000000 --- a/xfa/include/fwl/core/fwl_form.h +++ /dev/null @@ -1,87 +0,0 @@ -// Copyright 2014 PDFium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com - -#ifndef XFA_INCLUDE_FWL_CORE_FWL_FORM_H_ -#define XFA_INCLUDE_FWL_CORE_FWL_FORM_H_ - -#include "xfa/include/fwl/core/fwl_panel.h" - -class IFWL_Widget; -class IFWL_Form; - -#define FWL_CLASS_Form L"FWL_FORM" -#define FWL_CLASSHASH_Form 881567292 -#define FWL_CLASS_FormProxy L"FWL_FORMPROXY" -#define FWL_CLASSHASH_FormProxy 881567291 -#define FWL_STYLEEXT_FRM_Resize (1L << 0) -#define FWL_STYLEEXT_FRM_NativeBorder (1L << 1) -#define FWL_STYLEEXT_FRM_RoundCorner (2L << 1) -#define FWL_STYLEEXT_FRM_RoundCorner4 (3L << 1) -#define FWL_STYLEEXT_FRM_NoDrawClient (1L << 3) -#define FWL_STYLEEXT_FRM_BorderCornerMask (3L << 1) -#define FWL_STYLEEXT_FRM_Max (3) -#if (_FX_OS_ == _FX_MACOSX_) -#define FWL_UseMacSystemBorder -#endif -#define FWL_WGTCAPACITY_FRM_CYCaption (FWL_WGTCAPACITY_MAX + 1) -#define FWL_WGTCAPACITY_FRM_CYNarrowCaption (FWL_WGTCAPACITY_MAX + 2) -#define FWL_WGTCAPACITY_FRM_BigIcon (FWL_WGTCAPACITY_MAX + 3) -#define FWL_WGTCAPACITY_FRM_SmallIcon (FWL_WGTCAPACITY_MAX + 4) -#define FWL_PART_FRM_Border 1 -#define FWL_PART_FRM_Edge 2 -#define FWL_PART_FRM_Background 3 -#define FWL_PART_FRM_Caption 4 -#define FWL_PART_FRM_NarrowCaption 5 -#define FWL_PART_FRM_CloseBox 6 -#define FWL_PART_FRM_MinimizeBox 7 -#define FWL_PART_FRM_MaximizeBox 8 -#define FWL_PART_FRM_HeadText 9 -#define FWL_PART_FRM_Icon 10 -#define FWL_PARTSTATE_FRM_Normal 1 -#define FWL_PARTSTATE_FRM_Hover 2 -#define FWL_PARTSTATE_FRM_Pressed 3 -#define FWL_PARTSTATE_FRM_Inactive 4 -#define FWL_PARTSTATE_FRM_Disabled 5 - -class IFWL_FormDP : public IFWL_DataProvider { - public: - virtual CFX_DIBitmap* GetIcon(IFWL_Widget* pWidget, FX_BOOL bBig) = 0; -}; -enum FWL_FORMSIZE { - FWL_FORMSIZE_Manual = 0, - FWL_FORMSIZE_Width, - FWL_FORMSIZE_Height, - FWL_FORMSIZE_All, -}; -enum FWL_COMMANDID { - FWL_COMMANDID_Close = 0, - FWL_COMMANDID_Ok, - FWL_COMMANDID_Cancel, - FWL_COMMANDID_Abort, - FWL_COMMANDID_Retry, - FWL_COMMANDID_Ignore, - FWL_COMMANDID_Yes, - FWL_COMMANDID_No, -}; - -class IFWL_Form : public IFWL_Panel { - public: - static IFWL_Form* CreateFormProxy(CFWL_WidgetImpProperties& properties, - CFX_WideString* classname, - IFWL_Widget* pOuter); - - FWL_FORMSIZE GetFormSize(); - FWL_ERR SetFormSize(FWL_FORMSIZE eFormSize); - IFWL_Widget* DoModal(); - IFWL_Widget* DoModal(FX_DWORD& dwCommandID); - FWL_ERR EndDoModal(); - FWL_ERR SetBorderRegion(CFX_Path* pPath); - - protected: - IFWL_Form(); -}; - -#endif // XFA_INCLUDE_FWL_CORE_FWL_FORM_H_ diff --git a/xfa/include/fwl/core/fwl_grid.h b/xfa/include/fwl/core/fwl_grid.h deleted file mode 100644 index c5b443b2b0..0000000000 --- a/xfa/include/fwl/core/fwl_grid.h +++ /dev/null @@ -1,89 +0,0 @@ -// Copyright 2014 PDFium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com - -#ifndef XFA_INCLUDE_FWL_CORE_FWL_GRID_H_ -#define XFA_INCLUDE_FWL_CORE_FWL_GRID_H_ - -#include "xfa/include/fwl/core/fwl_content.h" - -class IFWL_Widget; - -#define FWL_CLASS_Grid L"FWL_GRID" -#define FWL_CLASSHASH_Grid 3150298670 -#define FWL_GRIDSTYLEEXT_ShowGridLines (1L << 0) - -struct FWL_LAYOUTDATA { - FX_FLOAT fWidth; - FX_FLOAT fHeight; -}; -enum FWL_GRIDUNIT { - FWL_GRIDUNIT_Auto = 0, - FWL_GRIDUNIT_Fixed, - FWL_GRIDUNIT_Scaled, - FWL_GRIDUNIT_Infinity, -}; -enum FWL_GRIDMARGIN { - FWL_GRIDMARGIN_Left = 0, - FWL_GRIDMARGIN_Top, - FWL_GRIDMARGIN_Right, - FWL_GRIDMARGIN_Bottom, -}; -enum FWL_GRIDSIZE { - FWL_GRIDSIZE_Width = 0, - FWL_GRIDSIZE_Height, - FWL_GRIDSIZE_MinWidth, - FWL_GRIDSIZE_MinHeight, - FWL_GRIDSIZE_MaxWidth, - FWL_GRIDSIZE_MaxHeight, -}; - -typedef struct FWL_HGRIDCOLROW_ { void* pData; } * FWL_HGRIDCOLROW; -class IFWL_Grid : public IFWL_Content { - public: - static IFWL_Grid* Create(const CFWL_WidgetImpProperties& properties); - - FWL_HGRIDCOLROW InsertColRow(FX_BOOL bColumn, int32_t nIndex = -1); - int32_t CountColRows(FX_BOOL bColumn); - FWL_HGRIDCOLROW GetColRow(FX_BOOL bColumn, int32_t nIndex); - int32_t GetIndex(FWL_HGRIDCOLROW hColRow); - FX_FLOAT GetSize(FWL_HGRIDCOLROW hColRow, FWL_GRIDUNIT& eUnit); - FWL_ERR SetSize(FWL_HGRIDCOLROW hColRow, FX_FLOAT fSize, FWL_GRIDUNIT eUnit); - FX_FLOAT GetMinSize(FWL_HGRIDCOLROW hColRow, FWL_GRIDUNIT& eUnit); - FWL_ERR SetMinSize(FWL_HGRIDCOLROW hColRow, - FX_FLOAT fSize, - FWL_GRIDUNIT eUnit); - FX_FLOAT GetMaxSize(FWL_HGRIDCOLROW hColRow, FWL_GRIDUNIT& eUnit); - FWL_ERR SetMaxSize(FWL_HGRIDCOLROW hColRow, - FX_FLOAT fSize, - FWL_GRIDUNIT eUnit); - FX_BOOL DeleteColRow(FWL_HGRIDCOLROW hColRow); - FX_BOOL IsColumn(FWL_HGRIDCOLROW hColRow); - int32_t GetWidgetPos(IFWL_Widget* pWidget, FX_BOOL bColumn); - FWL_ERR SetWidgetPos(IFWL_Widget* pWidget, int32_t iPos, FX_BOOL bColumn); - int32_t GetWidgetSpan(IFWL_Widget* pWidget, FX_BOOL bColumn); - FWL_ERR SetWidgetSpan(IFWL_Widget* pWidget, int32_t iSpan, FX_BOOL bColumn); - FX_FLOAT GetWidgetSize(IFWL_Widget* pWidget, - FWL_GRIDSIZE eSize, - FWL_GRIDUNIT& eUnit); - FWL_ERR SetWidgetSize(IFWL_Widget* pWidget, - FWL_GRIDSIZE eSize, - FX_FLOAT fSize, - FWL_GRIDUNIT eUit); - FX_BOOL GetWidgetMargin(IFWL_Widget* pWidget, - FWL_GRIDMARGIN eMargin, - FX_FLOAT& fMargin); - FWL_ERR SetWidgetMargin(IFWL_Widget* pWidget, - FWL_GRIDMARGIN eMargin, - FX_FLOAT fMargin); - FWL_ERR RemoveWidgetMargin(IFWL_Widget* pWidget, FWL_GRIDMARGIN eMargin); - FX_FLOAT GetGridSize(FWL_GRIDSIZE eSize, FWL_GRIDUNIT& eUnit); - FWL_ERR SetGridSize(FWL_GRIDSIZE eSize, FX_FLOAT fSize, FWL_GRIDUNIT eUit); - - protected: - IFWL_Grid(); -}; - -#endif // XFA_INCLUDE_FWL_CORE_FWL_GRID_H_ diff --git a/xfa/include/fwl/core/fwl_note.h b/xfa/include/fwl/core/fwl_note.h deleted file mode 100644 index 170e4795ff..0000000000 --- a/xfa/include/fwl/core/fwl_note.h +++ /dev/null @@ -1,381 +0,0 @@ -// Copyright 2014 PDFium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com - -#ifndef XFA_INCLUDE_FWL_CORE_FWL_NOTE_H_ -#define XFA_INCLUDE_FWL_CORE_FWL_NOTE_H_ - -#include "core/fxcrt/include/fx_coordinates.h" -#include "xfa/fxgraphics/include/cfx_graphics.h" -#include "xfa/include/fwl/core/fwl_error.h" - -class IFWL_Widget; -class IFWL_NoteThread; -class CFWL_Note; -class CFWL_Message; -class CFWL_MsgActivate; -class CFWL_MsgDeactivate; -class CFWL_MsgMouse; -class CFWL_MsgMouseWheel; -class CFWL_MsgKey; -class CFWL_MsgSetFocus; -class CFWL_MsgKillFocus; -class CFWL_MsgCursor; -class CFWL_MsgSize; -class CFWL_MsgWindowMove; -class CFWL_MsgDropFiles; -class CFWL_MsgTaskClicked; -class CFWL_MsgClose; -class CFWL_MsgWindowWillMove; -class CFWL_Event; -class CFWL_EvtMouse; -class CFWL_EvtMouseWheel; -class CFWL_EvtKey; -class CFWL_EvtSetFocus; -class CFWL_EvtKillFocus; -class CFWL_EvtDraw; -class CFWL_EvtClick; -class CFWL_EvtScroll; -class CFWL_EvtClose; -class CFWL_EvtContextMenu; -class CFWL_EvtMenuCommand; -class CFWL_EvtSizeChanged; -class CFWL_EvtIdle; -class IFWL_NoteDriver; -class IFWL_NoteLoop; - -#define FWL_MSG_Activate L"FWL_MESSAGE_Activate" -#define FWL_MSG_Deactivate L"FWL_MESSAGE_Deactivate" -#define FWL_MSG_SetFocus L"FWL_MESSAGE_SetFocus" -#define FWL_MSG_KillFocus L"FWL_MESSAGE_KillFocus" -#define FWL_MSG_Mouse L"FWL_MESSAGE_Mouse" -#define FWL_MSG_MouseWheel L"FWL_MESSAGE_MouseWheel" -#define FWL_MSG_Key L"FWL_MESSAGE_Key" -#define FWL_MSG_Cursor L"FWL_MESSAGE_Cursor" -#define FWL_MSG_Size L"FWL_MESSAGE_Size" -#define FWL_MSG_WindowMove L"FWL_MESSAGE_WindowMove" -#define FWL_MSG_DropFiles L"FWL_MESSAGE_DropFiles" -#define FWL_MSG_TaskClicked L"FWL_MESSAGE_TaskClicked" -#define FWL_MSG_Close L"FWL_MESSAGE_Close" -#define FWL_MSG_Post L"FWL_MESSAGE_Post" -#define FWL_MSG_WindowWillMove L"FWL_MESSAGE_WindowWillMove" -#define FWL_MSGHASH_Activate 2410369469 -#define FWL_MSGHASH_Deactivate 1184214790 -#define FWL_MSGHASH_SetFocus 4174512504 -#define FWL_MSGHASH_KillFocus 1557903832 -#define FWL_MSGHASH_Mouse 706128309 -#define FWL_MSGHASH_MouseWheel 893703466 -#define FWL_MSGHASH_Key 3751372405 -#define FWL_MSGHASH_Cursor 3182626218 -#define FWL_MSGHASH_Size 160077735 -#define FWL_MSGHASH_WindowMove 1032269377 -#define FWL_MSGHASH_DropFiles 2004165236 -#define FWL_MSGHASH_TaskClicked 3128231086 -#define FWL_MSGHASH_Close 2977563906 -#define FWL_MSGHASH_Post 1969633074 -#define FWL_MSGHASH_WindowWillMove 2229175763 -#define FWL_EVT_Mouse L"FWL_EVENT_Mouse" -#define FWL_EVT_MouseWheel L"FWL_EVENT_MouseWheel" -#define FWL_EVT_Key L"FWL_EVENT_Key" -#define FWL_EVT_SetFocus L"FWL_EVENT_SetFocus" -#define FWL_EVT_KillFocus L"FWL_EVENT_KillFocus" -#define FWL_EVT_Click L"FWL_EVENT_Click" -#define FWL_EVT_Draw L"FWL_EVENT_Draw" -#define FWL_EVT_Scroll L"FWL_EVENT_Scroll" -#define FWL_EVT_Close L"FWL_EVENT_Close" -#define FWL_EVT_ContextMenu L"FWL_EVENT_ContextMenu" -#define FWL_EVT_MenuCommand L"FWL_EVENT_MenuCommand" -#define FWL_EVT_SizeChanged L"FWL_EVENT_SizeChanged" -#define FWL_EVTHASH_Mouse 1765258002 -#define FWL_EVTHASH_MouseWheel 3907114407 -#define FWL_EVTHASH_Key 2408354450 -#define FWL_EVTHASH_SetFocus 3909721269 -#define FWL_EVTHASH_KillFocus 1779363253 -#define FWL_EVTHASH_Draw 2430713303 -#define FWL_EVTHASH_Click 4026328783 -#define FWL_EVTHASH_Scroll 2965158968 -#define FWL_EVTHASH_Close 4036693599 -#define FWL_EVTHASH_ContextMenu 2717307715 -#define FWL_EVTHASH_MenuCommand 497763741 -#define FWL_EVTHASH_SizeChanged 3083958510 -#define FWL_EVTHASH_Idle 839546759 -#define FWL_MSGMOUSECMD_LButtonDown 1 -#define FWL_MSGMOUSECMD_LButtonUp 2 -#define FWL_MSGMOUSECMD_LButtonDblClk 3 -#define FWL_MSGMOUSECMD_RButtonDown 4 -#define FWL_MSGMOUSECMD_RButtonUp 5 -#define FWL_MSGMOUSECMD_RButtonDblClk 6 -#define FWL_MSGMOUSECMD_MButtonDown 7 -#define FWL_MSGMOUSECMD_MButtonUp 8 -#define FWL_MSGMOUSECMD_MButtonDblClk 9 -#define FWL_MSGMOUSECMD_MouseMove 10 -#define FWL_MSGMOUSECMD_MouseEnter 11 -#define FWL_MSGMOUSECMD_MouseLeave 12 -#define FWL_MSGMOUSECMD_MouseHover 13 -#define FWL_MSGKEYCMD_KeyDown 1 -#define FWL_MSGKEYCMD_KeyUp 2 -#define FWL_MSGKEYCMD_Char 3 -#define FWL_KEYFLAG_Ctrl (1 << 0) -#define FWL_KEYFLAG_Alt (1 << 1) -#define FWL_KEYFLAG_Shift (1 << 2) -#define FWL_KEYFLAG_Command (1 << 3) -#define FWL_KEYFLAG_LButton (1 << 4) -#define FWL_KEYFLAG_RButton (1 << 5) -#define FWL_KEYFLAG_MButton (1 << 6) - -// Separate hierarchy not related to IFWL_* hierarchy. These should not -// get cast to IFWL_* types. -class CFWL_Note { - public: - virtual FX_DWORD Release() { - m_dwRefCount--; - FX_DWORD dwRefCount = m_dwRefCount; - if (!m_dwRefCount) { - delete this; - } - return dwRefCount; - } - virtual CFWL_Note* Retain() { - m_dwRefCount++; - return this; - } - virtual FWL_ERR GetClassName(CFX_WideString& wsClass) const { - wsClass = L"CFWL_Note"; - return FWL_ERR_Succeeded; - } - virtual FX_DWORD GetClassID() const { return 0; } - virtual FX_BOOL IsInstance(const CFX_WideStringC& wsClass) const { - return TRUE; - } - virtual CFWL_Note* Clone() { return NULL; } - FX_BOOL IsEvent() const { return m_bIsEvent; } - IFWL_Widget* m_pSrcTarget; - IFWL_Widget* m_pDstTarget; - - protected: - CFWL_Note(FX_BOOL bIsEvent) - : m_pSrcTarget(NULL), - m_pDstTarget(NULL), - m_dwRefCount(1), - m_bIsEvent(bIsEvent), - m_dwExtend(0) {} - virtual ~CFWL_Note() {} - virtual FX_BOOL Initialize() { return TRUE; } - virtual int32_t Finalize() { return 0; } - FX_DWORD m_dwRefCount; - FX_BOOL m_bIsEvent; - - public: - FX_DWORD m_dwExtend; -}; -class CFWL_Message : public CFWL_Note { - public: - CFWL_Message() : CFWL_Note(FALSE) {} - virtual ~CFWL_Message() {} -}; -#define BEGIN_FWL_MESSAGE_DEF(classname, msghashcode) \ - class classname : public CFWL_Message { \ - public: \ - classname() : CFWL_Message() {} \ - virtual CFWL_Note* Clone() { return new classname(*this); } \ - virtual FWL_ERR GetClassName(CFX_WideString& wsClass) const { \ - wsClass = L## #classname; \ - return FWL_ERR_Succeeded; \ - } \ - virtual FX_DWORD GetClassID() const { return msghashcode; } -#define END_FWL_MESSAGE_DEF \ - } \ - ; // NOLINT -BEGIN_FWL_MESSAGE_DEF(CFWL_MsgActivate, FWL_MSGHASH_Activate) -END_FWL_MESSAGE_DEF -BEGIN_FWL_MESSAGE_DEF(CFWL_MsgDeactivate, FWL_MSGHASH_Deactivate) -END_FWL_MESSAGE_DEF -BEGIN_FWL_MESSAGE_DEF(CFWL_MsgMouse, FWL_MSGHASH_Mouse) -FX_FLOAT m_fx; -FX_FLOAT m_fy; -FX_DWORD m_dwFlags; -FX_DWORD m_dwCmd; -END_FWL_MESSAGE_DEF -BEGIN_FWL_MESSAGE_DEF(CFWL_MsgMouseWheel, FWL_MSGHASH_MouseWheel) -FX_FLOAT m_fx; -FX_FLOAT m_fy; -FX_FLOAT m_fDeltaX; -FX_FLOAT m_fDeltaY; -FX_DWORD m_dwFlags; -END_FWL_MESSAGE_DEF -BEGIN_FWL_MESSAGE_DEF(CFWL_MsgSetFocus, FWL_MSGHASH_SetFocus) -IFWL_Widget* m_pKillFocus; -END_FWL_MESSAGE_DEF -BEGIN_FWL_MESSAGE_DEF(CFWL_MsgKillFocus, FWL_MSGHASH_KillFocus) -IFWL_Widget* m_pSetFocus; -END_FWL_MESSAGE_DEF -BEGIN_FWL_MESSAGE_DEF(CFWL_MsgKey, FWL_MSGHASH_Key) -FX_DWORD m_dwKeyCode; -FX_DWORD m_dwFlags; -FX_DWORD m_dwCmd; -END_FWL_MESSAGE_DEF -BEGIN_FWL_MESSAGE_DEF(CFWL_MsgCursor, FWL_MSGHASH_Cursor) -END_FWL_MESSAGE_DEF -BEGIN_FWL_MESSAGE_DEF(CFWL_MsgSize, FWL_MSGHASH_Size) -int32_t m_iWidth; -int32_t m_iHeight; -END_FWL_MESSAGE_DEF -BEGIN_FWL_MESSAGE_DEF(CFWL_MsgWindowMove, FWL_MSGHASH_WindowMove) -FX_FLOAT m_fx; -FX_FLOAT m_fy; -END_FWL_MESSAGE_DEF -BEGIN_FWL_MESSAGE_DEF(CFWL_MsgDropFiles, FWL_MSGHASH_DropFiles) -CFWL_MsgDropFiles(const CFWL_MsgDropFiles& copy) { - m_pDstTarget = copy.m_pDstTarget; - m_pSrcTarget = copy.m_pSrcTarget; - m_fx = copy.m_fx; - m_fy = copy.m_fy; - m_files.Append(copy.m_files); -} -FX_FLOAT m_fx; -FX_FLOAT m_fy; -CFX_WideStringArray m_files; -END_FWL_MESSAGE_DEF -BEGIN_FWL_MESSAGE_DEF(CFWL_MsgTaskClicked, FWL_MSGHASH_TaskClicked) -FX_FLOAT m_fx; -FX_FLOAT m_fy; -END_FWL_MESSAGE_DEF -BEGIN_FWL_MESSAGE_DEF(CFWL_MsgClose, FWL_MSGHASH_Close) -END_FWL_MESSAGE_DEF -BEGIN_FWL_MESSAGE_DEF(CFWL_MsgWindowWillMove, FWL_MSGHASH_WindowWillMove) -END_FWL_MESSAGE_DEF -class CFWL_Event : public CFWL_Note { - public: - CFWL_Event() : CFWL_Note(TRUE) {} - virtual ~CFWL_Event() {} -}; -#define BEGIN_FWL_EVENT_DEF(classname, eventhashcode) \ - class classname : public CFWL_Event { \ - public: \ - classname() : CFWL_Event() {} \ - virtual FWL_ERR GetClassName(CFX_WideString& wsClass) const { \ - wsClass = L## #classname; \ - return FWL_ERR_Succeeded; \ - } \ - virtual FX_DWORD GetClassID() const { return eventhashcode; } -#define END_FWL_EVENT_DEF \ - } \ - ; // NOLINT -BEGIN_FWL_EVENT_DEF(CFWL_EvtMouse, FWL_EVTHASH_Mouse) -FX_FLOAT m_fx; -FX_FLOAT m_fy; -FX_DWORD m_dwFlags; -FX_DWORD m_dwCmd; -END_FWL_EVENT_DEF -BEGIN_FWL_EVENT_DEF(CFWL_EvtMouseWheel, FWL_EVTHASH_MouseWheel) -FX_FLOAT m_fx; -FX_FLOAT m_fy; -FX_FLOAT m_fDeltaX; -FX_FLOAT m_fDeltaY; -FX_DWORD m_dwFlags; -END_FWL_EVENT_DEF -BEGIN_FWL_EVENT_DEF(CFWL_EvtKey, FWL_EVTHASH_Key) -FX_DWORD m_dwKeyCode; -FX_DWORD m_dwFlags; -FX_DWORD m_dwCmd; -END_FWL_EVENT_DEF -BEGIN_FWL_EVENT_DEF(CFWL_EvtSetFocus, FWL_EVTHASH_SetFocus) -IFWL_Widget* m_pSetFocus; -END_FWL_EVENT_DEF -BEGIN_FWL_EVENT_DEF(CFWL_EvtKillFocus, FWL_EVTHASH_KillFocus) -IFWL_Widget* m_pKillFocus; -END_FWL_EVENT_DEF -BEGIN_FWL_EVENT_DEF(CFWL_EvtDraw, FWL_EVTHASH_Draw) -CFX_Graphics* m_pGraphics; -IFWL_Widget* m_pWidget; -END_FWL_EVENT_DEF -BEGIN_FWL_EVENT_DEF(CFWL_EvtClick, FWL_EVTHASH_Click) -END_FWL_EVENT_DEF -BEGIN_FWL_EVENT_DEF(CFWL_EvtScroll, FWL_EVTHASH_Scroll) -FX_DWORD m_iScrollCode; -FX_FLOAT m_fPos; -FX_BOOL* m_pRet; -END_FWL_EVENT_DEF -BEGIN_FWL_EVENT_DEF(CFWL_EvtClose, FWL_EVTHASH_Close) -END_FWL_EVENT_DEF -BEGIN_FWL_EVENT_DEF(CFWL_EvtContextMenu, FWL_EVTHASH_ContextMenu) -FX_FLOAT m_fPosX; -FX_FLOAT m_fPosY; -IFWL_Widget* m_pOwner; -END_FWL_EVENT_DEF -BEGIN_FWL_EVENT_DEF(CFWL_EvtMenuCommand, FWL_EVTHASH_MenuCommand) -int32_t m_iCommand; -void* m_pData; -END_FWL_EVENT_DEF -BEGIN_FWL_EVENT_DEF(CFWL_EvtSizeChanged, FWL_EVTHASH_SizeChanged) -IFWL_Widget* m_pWidget; -CFX_RectF m_rtOld; -CFX_RectF m_rtNew; -END_FWL_MESSAGE_DEF -BEGIN_FWL_EVENT_DEF(CFWL_EvtIdle, FWL_EVTHASH_Idle) -END_FWL_EVENT_DEF -typedef enum { - FWL_EVENT_MOUSE_MASK = 1 << 0, - FWL_EVENT_MOUSEWHEEL_MASK = 1 << 1, - FWL_EVENT_KEY_MASK = 1 << 2, - FWL_EVENT_FOCUSCHANGED_MASK = 1 << 3, - FWL_EVENT_DRAW_MASK = 1 << 4, - FWL_EVENT_CLOSE_MASK = 1 << 5, - FWL_EVENT_SIZECHANGED_MASK = 1 << 6, - FWL_EVENT_IDLE_MASK = 1 << 7, - FWL_EVENT_CONTROL_MASK = 1 << 8, - FWL_EVENT_ALL_MASK = 0xFF -} FWLEventMask; -class IFWL_NoteDriver { - public: - virtual ~IFWL_NoteDriver() {} - virtual FX_BOOL SendNote(CFWL_Note* pNote) = 0; - virtual FX_BOOL PostMessage(CFWL_Message* pMessage) = 0; - virtual FWL_ERR RegisterEventTarget( - IFWL_Widget* pListener, - IFWL_Widget* pEventSource = NULL, - FX_DWORD dwFilter = FWL_EVENT_ALL_MASK) = 0; - virtual FWL_ERR UnregisterEventTarget(IFWL_Widget* pListener) = 0; - virtual void ClearEventTargets(FX_BOOL bRemoveAll) = 0; - virtual int32_t GetQueueMaxSize() const = 0; - virtual FWL_ERR SetQueueMaxSize(const int32_t size) = 0; - virtual IFWL_NoteThread* GetOwnerThread() const = 0; - virtual FWL_ERR PushNoteLoop(IFWL_NoteLoop* pNoteLoop) = 0; - virtual IFWL_NoteLoop* PopNoteLoop() = 0; - virtual IFWL_Widget* GetFocus() = 0; - virtual FX_BOOL SetFocus(IFWL_Widget* pFocus, FX_BOOL bNotify = FALSE) = 0; - virtual void SetGrab(IFWL_Widget* pGrab, FX_BOOL bSet) = 0; - virtual FWL_ERR Run() = 0; -}; -IFWL_Widget* FWL_GetCurrentThreadModalWidget(IFWL_NoteThread* pNoteThread); -class IFWL_NoteLoop { - public: - virtual ~IFWL_NoteLoop() {} - virtual FX_BOOL PreProcessMessage(CFWL_Message* pMessage) = 0; - virtual FWL_ERR Idle(int32_t count) = 0; -}; -class IFWL_ToolTipTarget { - public: - virtual ~IFWL_ToolTipTarget() {} - virtual IFWL_Widget* GetWidget() = 0; - virtual FX_BOOL IsShowed() = 0; - virtual FWL_ERR DrawToolTip(CFX_Graphics* pGraphics, - const CFX_Matrix* pMatrix, - IFWL_Widget* pToolTip) = 0; - virtual FX_BOOL UseDefaultTheme() = 0; - virtual FWL_ERR GetCaption(CFX_WideString& wsCaption) = 0; - virtual FWL_ERR GetToolTipSize(CFX_SizeF& sz) = 0; - virtual FWL_ERR GetToolTipPos(CFX_PointF& pt) { return FWL_ERR_Indefinite; } -}; -FWL_ERR FWL_AddToolTipTarget(IFWL_ToolTipTarget* pTarget); -FWL_ERR FWL_RemoveToolTipTarget(IFWL_ToolTipTarget* pTarget); -FWL_ERR FWL_SetToolTipInitialDelay(int32_t iDelayTime); -FWL_ERR FWL_SetToolTipAutoPopDelay(int32_t iDelayTime); -typedef FX_BOOL (*FWLMessageHookCallback)(CFWL_Message* msg, void* info); -FWL_ERR FWL_SetHook(IFWL_NoteDriver* driver, - FWLMessageHookCallback callback, - void* info); - -#endif // XFA_INCLUDE_FWL_CORE_FWL_NOTE_H_ diff --git a/xfa/include/fwl/core/fwl_panel.h b/xfa/include/fwl/core/fwl_panel.h deleted file mode 100644 index 4e0b7a38a0..0000000000 --- a/xfa/include/fwl/core/fwl_panel.h +++ /dev/null @@ -1,42 +0,0 @@ -// Copyright 2014 PDFium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com - -#ifndef XFA_INCLUDE_FWL_CORE_FWL_PANEL_H_ -#define XFA_INCLUDE_FWL_CORE_FWL_PANEL_H_ - -#include "xfa/fwl/core/fwl_widgetimp.h" - -class IFWL_Content; - -#define FWL_CLASS_Panel L"FWL_Panel" -#define FWL_CLASSHASH_Panel 881567292 - -class IFWL_Panel : public IFWL_Widget { - public: - static IFWL_Panel* Create(CFWL_WidgetImpProperties& properties, - IFWL_Widget* pOuter); - - IFWL_Content* GetContent(); - FWL_ERR SetContent(IFWL_Content* pContent); - - protected: - IFWL_Panel(); -}; - -class IFWL_CustomPanel : public IFWL_Widget { - public: - static IFWL_CustomPanel* Create(CFWL_WidgetImpProperties& properties, - IFWL_Widget* pOuter); - - IFWL_Content* GetContent(); - FWL_ERR SetContent(IFWL_Content* pContent); - FWL_ERR SetProxy(IFWL_Proxy* pProxy); - - protected: - IFWL_CustomPanel(); -}; - -#endif // XFA_INCLUDE_FWL_CORE_FWL_PANEL_H_ diff --git a/xfa/include/fwl/core/fwl_target.h b/xfa/include/fwl/core/fwl_target.h deleted file mode 100644 index 9f010e91e4..0000000000 --- a/xfa/include/fwl/core/fwl_target.h +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2014 PDFium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com - -#ifndef XFA_INCLUDE_FWL_CORE_FWL_TARGET_H_ -#define XFA_INCLUDE_FWL_CORE_FWL_TARGET_H_ - -#include "core/fxcrt/include/fx_basic.h" -#include "xfa/include/fwl/core/fwl_error.h" - -// FWL contains three parallel inheritance hierarchies, which reference each -// other via pointers as follows: -// -// m_pImpl -// (nonesuch) IFWL_Target ----------> CFWL_TargetImp -// | | -// A A -// m_pIface | | -// CFWL_Widget ----------> IFWL_Widget CFWL_WidgetImp -// | | | -// A A A -// | | | -// CFWL_... IFWL_... CFWL_...Imp -// - -class CFWL_TargetImp; - -class IFWL_Target { - public: - IFWL_Target() : m_pImpl(nullptr) {} - virtual ~IFWL_Target(); - - // These call into equivalent polymorphic methods of m_pImpl. There - // should be no need to override these in subclasses. - FWL_ERR GetClassName(CFX_WideString& wsClass) const; - FX_DWORD GetClassID() const; - FX_BOOL IsInstance(const CFX_WideStringC& wsClass) const; - FWL_ERR Initialize(); - FWL_ERR Finalize(); - - CFWL_TargetImp* GetImpl() const { return m_pImpl; } - - protected: - void SetImpl(CFWL_TargetImp* pImpl) { m_pImpl = pImpl; } - - private: - CFWL_TargetImp* m_pImpl; -}; - -#endif // XFA_INCLUDE_FWL_CORE_FWL_TARGET_H_ diff --git a/xfa/include/fwl/core/fwl_theme.h b/xfa/include/fwl/core/fwl_theme.h deleted file mode 100644 index 7dd443e506..0000000000 --- a/xfa/include/fwl/core/fwl_theme.h +++ /dev/null @@ -1,88 +0,0 @@ -// Copyright 2014 PDFium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com - -#ifndef XFA_INCLUDE_FWL_CORE_FWL_THEME_H_ -#define XFA_INCLUDE_FWL_CORE_FWL_THEME_H_ - -#include "core/fxcrt/include/fx_coordinates.h" -#include "core/fxcrt/include/fx_system.h" -#include "xfa/include/fwl/core/fwl_error.h" - -class IFWL_Widget; -class CFX_Graphics; -class CFX_DIBitmap; -class CFX_Path; - -#define FWL_WGTCAPACITY_CXBorder 1 -#define FWL_WGTCAPACITY_CYBorder 2 -#define FWL_WGTCAPACITY_ScrollBarWidth 3 -#define FWL_WGTCAPACITY_EdgeFlat 4 -#define FWL_WGTCAPACITY_EdgeRaised 5 -#define FWL_WGTCAPACITY_EdgeSunken 6 -#define FWL_WGTCAPACITY_Font 7 -#define FWL_WGTCAPACITY_FontSize 8 -#define FWL_WGTCAPACITY_TextColor 9 -#define FWL_WGTCAPACITY_TextSelColor 10 -#define FWL_WGTCAPACITY_LineHeight 11 -#define FWL_WGTCAPACITY_UIMargin 12 -#define FWL_WGTCAPACITY_SpaceAboveBelow 13 -#define FWL_WGTCAPACITY_MAX 65535 - -class CFWL_ThemePart { - public: - CFWL_ThemePart() - : m_pWidget(NULL), m_iPart(0), m_dwStates(0), m_dwData(0), m_pData(NULL) { - m_rtPart.Reset(); - m_matrix.SetIdentity(); - } - CFX_Matrix m_matrix; - CFX_RectF m_rtPart; - IFWL_Widget* m_pWidget; - int32_t m_iPart; - FX_DWORD m_dwStates; - FX_DWORD m_dwData; - void* m_pData; -}; -class CFWL_ThemeBackground : public CFWL_ThemePart { - public: - CFWL_ThemeBackground() : m_pGraphics(NULL), m_pImage(NULL), m_pPath(NULL) {} - CFX_Graphics* m_pGraphics; - CFX_DIBitmap* m_pImage; - CFX_Path* m_pPath; -}; -class CFWL_ThemeText : public CFWL_ThemePart { - public: - CFWL_ThemeText() : m_pGraphics(NULL) {} - CFX_WideString m_wsText; - FX_DWORD m_dwTTOStyles; - int32_t m_iTTOAlign; - CFX_Graphics* m_pGraphics; -}; -class IFWL_ThemeProvider { - public: - virtual ~IFWL_ThemeProvider() {} - virtual FX_BOOL IsValidWidget(IFWL_Widget* pWidget) = 0; - virtual FX_DWORD GetThemeID(IFWL_Widget* pWidget) = 0; - virtual FX_DWORD SetThemeID(IFWL_Widget* pWidget, - FX_DWORD dwThemeID, - FX_BOOL bChildren = TRUE) = 0; - virtual FWL_ERR GetThemeMatrix(IFWL_Widget* pWidget, CFX_Matrix& matrix) = 0; - virtual FWL_ERR SetThemeMatrix(IFWL_Widget* pWidget, - const CFX_Matrix& matrix) = 0; - virtual FX_BOOL DrawBackground(CFWL_ThemeBackground* pParams) = 0; - virtual FX_BOOL DrawText(CFWL_ThemeText* pParams) = 0; - virtual void* GetCapacity(CFWL_ThemePart* pThemePart, - FX_DWORD dwCapacity) = 0; - virtual FX_BOOL IsCustomizedLayout(IFWL_Widget* pWidget) = 0; - virtual FWL_ERR GetPartRect(CFWL_ThemePart* pThemePart, - CFX_RectF& rtPart) = 0; - virtual FX_BOOL IsInPart(CFWL_ThemePart* pThemePart, - FX_FLOAT fx, - FX_FLOAT fy) = 0; - virtual FX_BOOL CalcTextRect(CFWL_ThemeText* pParams, CFX_RectF& rect) = 0; -}; - -#endif // XFA_INCLUDE_FWL_CORE_FWL_THEME_H_ diff --git a/xfa/include/fwl/core/fwl_thread.h b/xfa/include/fwl/core/fwl_thread.h deleted file mode 100644 index 5b41c9cf8a..0000000000 --- a/xfa/include/fwl/core/fwl_thread.h +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2014 PDFium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com - -#ifndef XFA_INCLUDE_FWL_CORE_FWL_THREAD_H_ -#define XFA_INCLUDE_FWL_CORE_FWL_THREAD_H_ - -// The FWL thread/app code contains three parallel inheritance hierarchies, -// which reference each other via pointers as follows: -// -// m_pImpl -// (nonesuch) IFWL_Thread ----------> CFWL_ThreadImp -// | <---------- | -// A m_pIface A -// | | -// (nonesuch) IFWL_NoteThread CFWL_NoteThreadImp -// | | -// A A -// m_pIface | | -// CFWL_App --------------> IFWL_App CFWL_AppImp -// - -#include "xfa/include/fwl/core/fwl_error.h" - -class CFWL_ThreadImp; -class IFWL_NoteDriver; - -typedef struct FWL_HTHREAD_ { void* pData; } * FWL_HTHREAD; - -class IFWL_Thread { - public: - // These call into polymorphic methods in the impl; no need to override. - void Release(); - FWL_ERR Run(FWL_HTHREAD hThread); - - CFWL_ThreadImp* GetImpl() const { return m_pImpl; } - void SetImpl(CFWL_ThreadImp* pImpl) { m_pImpl = pImpl; } - - protected: - virtual ~IFWL_Thread() {} - - private: - CFWL_ThreadImp* m_pImpl; -}; - -class IFWL_NoteThread : public IFWL_Thread { - public: - IFWL_NoteDriver* GetNoteDriver(); -}; - -#endif // XFA_INCLUDE_FWL_CORE_FWL_THREAD_H_ diff --git a/xfa/include/fwl/core/fwl_timer.h b/xfa/include/fwl/core/fwl_timer.h deleted file mode 100644 index 4e8feb0cfc..0000000000 --- a/xfa/include/fwl/core/fwl_timer.h +++ /dev/null @@ -1,24 +0,0 @@ -// Copyright 2014 PDFium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com - -#ifndef XFA_INCLUDE_FWL_CORE_FWL_TIMER_H_ -#define XFA_INCLUDE_FWL_CORE_FWL_TIMER_H_ - -#include "core/fxcrt/include/fx_system.h" - -typedef struct FWL_HTIMER_ { void* pData; } * FWL_HTIMER; - -class IFWL_Timer { - public: - virtual ~IFWL_Timer() {} - virtual int32_t Run(FWL_HTIMER hTimer) = 0; -}; -FWL_HTIMER FWL_StartTimer(IFWL_Timer* pTimer, - FX_DWORD dwElapse, - FX_BOOL bImmediately = TRUE); -int32_t FWL_StopTimer(FWL_HTIMER hTimer); - -#endif // XFA_INCLUDE_FWL_CORE_FWL_TIMER_H_ diff --git a/xfa/include/fwl/core/fwl_widget.h b/xfa/include/fwl/core/fwl_widget.h deleted file mode 100644 index 5588efe95e..0000000000 --- a/xfa/include/fwl/core/fwl_widget.h +++ /dev/null @@ -1,120 +0,0 @@ -// Copyright 2014 PDFium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com - -#ifndef XFA_INCLUDE_FWL_CORE_FWL_WIDGET_H_ -#define XFA_INCLUDE_FWL_CORE_FWL_WIDGET_H_ - -#include "xfa/include/fwl/core/fwl_note.h" -#include "xfa/include/fwl/core/fwl_target.h" -#include "xfa/include/fwl/core/fwl_widgetdef.h" - -class IFWL_ThemeProvider; -class CFWL_WidgetImpProperties; -class IFWL_DataProvider; -class IFWL_Widget; -class IFWL_WidgetDelegate; -class IFWL_Custom; -class IFWL_Proxy; -class IFWL_Form; - -class IFWL_DataProvider { - public: - virtual ~IFWL_DataProvider() {} - virtual FWL_ERR GetCaption(IFWL_Widget* pWidget, - CFX_WideString& wsCaption) = 0; -}; -class IFWL_Widget : public IFWL_Target { - public: - FWL_ERR GetWidgetRect(CFX_RectF& rect, FX_BOOL bAutoSize = FALSE); - FWL_ERR GetGlobalRect(CFX_RectF& rect); - FWL_ERR SetWidgetRect(const CFX_RectF& rect); - FWL_ERR GetClientRect(CFX_RectF& rect); - IFWL_Widget* GetParent(); - FWL_ERR SetParent(IFWL_Widget* pParent); - IFWL_Widget* GetOwner(); - FWL_ERR SetOwner(IFWL_Widget* pOwner); - IFWL_Widget* GetOuter(); - FX_DWORD GetStyles(); - FWL_ERR ModifyStyles(FX_DWORD dwStylesAdded, FX_DWORD dwStylesRemoved); - FX_DWORD GetStylesEx(); - FWL_ERR ModifyStylesEx(FX_DWORD dwStylesExAdded, FX_DWORD dwStylesExRemoved); - FX_DWORD GetStates(); - FWL_ERR SetStates(FX_DWORD dwStates, FX_BOOL bSet = TRUE); - FWL_ERR SetPrivateData(void* module_id, - void* pData, - PD_CALLBACK_FREEDATA callback); - void* GetPrivateData(void* module_id); - FWL_ERR Update(); - FWL_ERR LockUpdate(); - FWL_ERR UnlockUpdate(); - FX_DWORD HitTest(FX_FLOAT fx, FX_FLOAT fy); - FWL_ERR TransformTo(IFWL_Widget* pWidget, FX_FLOAT& fx, FX_FLOAT& fy); - FWL_ERR TransformTo(IFWL_Widget* pWidget, CFX_RectF& rt); - FWL_ERR GetMatrix(CFX_Matrix& matrix, FX_BOOL bGlobal = FALSE); - FWL_ERR SetMatrix(const CFX_Matrix& matrix); - FWL_ERR DrawWidget(CFX_Graphics* pGraphics, const CFX_Matrix* pMatrix = NULL); - IFWL_ThemeProvider* GetThemeProvider(); - FWL_ERR SetThemeProvider(IFWL_ThemeProvider* pThemeProvider); - FWL_ERR SetDataProvider(IFWL_DataProvider* pDataProvider); - IFWL_WidgetDelegate* SetDelegate(IFWL_WidgetDelegate* pDelegate); - IFWL_NoteThread* GetOwnerThread() const; - CFX_SizeF GetOffsetFromParent(IFWL_Widget* pParent); -}; -class IFWL_WidgetDelegate { - public: - virtual ~IFWL_WidgetDelegate() {} - virtual int32_t OnProcessMessage(CFWL_Message* pMessage) = 0; - virtual FWL_ERR OnProcessEvent(CFWL_Event* pEvent) = 0; - virtual FWL_ERR OnDrawWidget(CFX_Graphics* pGraphics, - const CFX_Matrix* pMatrix = NULL) = 0; -}; -class CFWL_WidgetImpProperties { - public: - CFWL_WidgetImpProperties() { - m_ctmOnParent.SetIdentity(); - m_rtWidget.Set(0, 0, 0, 0); - m_dwStyles = FWL_WGTSTYLE_Child; - m_dwStyleExes = 0; - m_dwStates = 0; - m_pThemeProvider = NULL; - m_pDataProvider = NULL; - m_pParent = NULL; - m_pOwner = NULL; - } - CFX_Matrix m_ctmOnParent; - CFX_RectF m_rtWidget; - FX_DWORD m_dwStyles; - FX_DWORD m_dwStyleExes; - FX_DWORD m_dwStates; - IFWL_ThemeProvider* m_pThemeProvider; - IFWL_DataProvider* m_pDataProvider; - IFWL_Widget* m_pParent; - IFWL_Widget* m_pOwner; -}; -class IFWL_Custom : public IFWL_Widget { - public: - static IFWL_Custom* Create(const CFWL_WidgetImpProperties& properties, - IFWL_Widget* pOuter); - - FWL_ERR SetProxy(IFWL_Proxy* pProxy); - - protected: - IFWL_Custom(); -}; -class IFWL_Proxy { - public: - virtual ~IFWL_Proxy() {} - virtual FWL_ERR GetWidgetRect(CFX_RectF& rect, FX_BOOL bAutoSize = FALSE) = 0; - virtual FWL_ERR Update() = 0; -}; -typedef CFX_MapPtrTemplate CFX_MapAccelerators; -FWL_ERR FWL_Accelerator_SetApp(CFX_MapAccelerators* pMapAccel); -FWL_ERR FWL_Accelerator_SetThread(CFX_MapAccelerators* pMapAccel); -FWL_ERR FWL_Accelerator_SetForm(IFWL_Form* pFrom, - CFX_MapAccelerators* pMapAccel); -FWL_ERR FWL_EnabelWidget(IFWL_Widget* widget, FX_BOOL bEnable); - -#endif // XFA_INCLUDE_FWL_CORE_FWL_WIDGET_H_ diff --git a/xfa/include/fwl/core/fwl_widgetdef.h b/xfa/include/fwl/core/fwl_widgetdef.h deleted file mode 100644 index 548fe92019..0000000000 --- a/xfa/include/fwl/core/fwl_widgetdef.h +++ /dev/null @@ -1,249 +0,0 @@ -// Copyright 2014 PDFium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com - -#ifndef XFA_INCLUDE_FWL_CORE_FWL_WIDGETDEF_H_ -#define XFA_INCLUDE_FWL_CORE_FWL_WIDGETDEF_H_ - -#define FWL_WGTSTYLE_OverLapper (0L << 0) -#define FWL_WGTSTYLE_Popup (1L << 0) -#define FWL_WGTSTYLE_Child (2L << 0) -#define FWL_WGTSTYLE_Border (1L << 2) -#define FWL_WGTSTYLE_Caption (1L << 3) -#define FWL_WGTSTYLE_NarrowCaption (1L << 4) -#define FWL_WGTSTYLE_Icon (1L << 5) -#define FWL_WGTSTYLE_MinimizeBox (1L << 6) -#define FWL_WGTSTYLE_MaximizeBox (1L << 7) -#define FWL_WGTSTYLE_CloseBox (1L << 8) -#define FWL_WGTSTYLE_HScroll (1L << 9) -#define FWL_WGTSTYLE_VScroll (1L << 11) -#define FWL_WGTSTYLE_LeftScrollbar (1L << 12) -#define FWL_WGTSTYLE_LeftAlignment (0L << 13) -#define FWL_WGTSTYLE_CenterAlignment (1L << 13) -#define FWL_WGTSTYLE_RightAlignment (2L << 13) -#define FWL_WGTSTYLE_TopAlignment (0L << 15) -#define FWL_WGTSTYLE_VCenterAlignment (1L << 15) -#define FWL_WGTSTYLE_BottomAlignment (2L << 15) -#define FWL_WGTSTYLE_RTLReading (1L << 17) -#define FWL_WGTSTYLE_RTLLayout (1L << 18) -#define FWL_WGTSTYLE_EdgeNone (0L << 19) -#define FWL_WGTSTYLE_EdgeFlat (1L << 19) -#define FWL_WGTSTYLE_EdgeRaised (2L << 19) -#define FWL_WGTSTYLE_EdgeSunken (3L << 19) -#define FWL_WGTSTYLE_EdgeMask (3L << 19) -#define FWL_WGTSTYLE_Shadow (3L << 21) -#define FWL_WGTSTYLE_Group (1L << 22) -#define FWL_WGTSTYLE_TabStop (1L << 23) -#define FWL_WGTSTYLE_Offscreen (1L << 24) -#define FWL_WGTSTYLE_DragAcceptFiles (1L << 25) -#define FWL_WGTSTYLE_TopMost (1L << 26) -#define FWL_WGTSTYLE_TransParent (1L << 27) -#define FWL_WGTSTYLE_NoBackground (1L << 28) -#define FWL_WGTSTYLE_WindowTypeMask (3L << 0) -#define FWL_WGTSTATE_Restored (0L << 0) -#define FWL_WGTSTATE_Minimized (1L << 0) -#define FWL_WGTSTATE_Maximized (2L << 0) -#define FWL_WGTSTATE_Disabled (1L << 2) -#define FWL_WGTSTATE_Deactivated (1L << 3) -#define FWL_WGTSTATE_Focused (1L << 4) -#define FWL_WGTSTATE_Invisible (1L << 5) -#define FWL_WGTSTATE_MAX (6) -#define FWL_WGTHITTEST_Unknown 0 -#define FWL_WGTHITTEST_Client 1 -#define FWL_WGTHITTEST_Left 2 -#define FWL_WGTHITTEST_Top 3 -#define FWL_WGTHITTEST_Right 4 -#define FWL_WGTHITTEST_Bottom 5 -#define FWL_WGTHITTEST_LeftTop 6 -#define FWL_WGTHITTEST_RightTop 7 -#define FWL_WGTHITTEST_LeftBottom 8 -#define FWL_WGTHITTEST_RightBottom 9 -#define FWL_WGTHITTEST_Icon 10 -#define FWL_WGTHITTEST_Titlebar 11 -#define FWL_WGTHITTEST_MinBox 12 -#define FWL_WGTHITTEST_MaxBox 13 -#define FWL_WGTHITTEST_CloseBox 14 -#define FWL_WGTHITTEST_HScrollBar 15 -#define FWL_WGTHITTEST_VScrollBar 16 -#define FWL_WGTHITTEST_Border 17 -#define FWL_WGTHITTEST_Edge 18 -#define FWL_WGTHITTEST_Edit 19 -#define FWL_WGTHITTEST_HyperLink 20 -#define FWL_WGTHITTEST_MAX 21 -#define FWL_VKEY_LButton 0x01 -#define FWL_VKEY_RButton 0x02 -#define FWL_VKEY_MButton 0x04 -#define FWL_VKEY_Back 0x08 -#define FWL_VKEY_Tab 0x09 -#define FWL_VKEY_Clear 0x0C -#define FWL_VKEY_Return 0x0D -#define FWL_VKEY_Shift 0x10 -#define FWL_VKEY_Control 0x11 -#define FWL_VKEY_Menu 0x12 -#define FWL_VKEY_Pause 0x13 -#define FWL_VKEY_Capital 0x14 -#define FWL_VKEY_Kana 0x15 -#define FWL_VKEY_Hangul 0x15 -#define FWL_VKEY_Junja 0x17 -#define FWL_VKEY_Final 0x18 -#define FWL_VKEY_Hanja 0x19 -#define FWL_VKEY_Kanji 0x19 -#define FWL_VKEY_Escape 0x1B -#define FWL_VKEY_Convert 0x1C -#define FWL_VKEY_NonConvert 0x1D -#define FWL_VKEY_Accept 0x1E -#define FWL_VKEY_ModeChange 0x1F -#define FWL_VKEY_Space 0x20 -#define FWL_VKEY_Prior 0x21 -#define FWL_VKEY_Next 0x22 -#define FWL_VKEY_End 0x23 -#define FWL_VKEY_Home 0x24 -#define FWL_VKEY_Left 0x25 -#define FWL_VKEY_Up 0x26 -#define FWL_VKEY_Right 0x27 -#define FWL_VKEY_Down 0x28 -#define FWL_VKEY_Select 0x29 -#define FWL_VKEY_Print 0x2A -#define FWL_VKEY_Execute 0x2B -#define FWL_VKEY_Snapshot 0x2C -#define FWL_VKEY_Insert 0x2D -#define FWL_VKEY_Delete 0x2E -#define FWL_VKEY_Help 0x2F -#define FWL_VKEY_0 0x30 -#define FWL_VKEY_1 0x31 -#define FWL_VKEY_2 0x32 -#define FWL_VKEY_3 0x33 -#define FWL_VKEY_4 0x34 -#define FWL_VKEY_5 0x35 -#define FWL_VKEY_6 0x36 -#define FWL_VKEY_7 0x37 -#define FWL_VKEY_8 0x38 -#define FWL_VKEY_9 0x39 -#define FWL_VKEY_A 0x41 -#define FWL_VKEY_B 0x42 -#define FWL_VKEY_C 0x43 -#define FWL_VKEY_D 0x44 -#define FWL_VKEY_E 0x45 -#define FWL_VKEY_F 0x46 -#define FWL_VKEY_G 0x47 -#define FWL_VKEY_H 0x48 -#define FWL_VKEY_I 0x49 -#define FWL_VKEY_J 0x4A -#define FWL_VKEY_K 0x4B -#define FWL_VKEY_L 0x4C -#define FWL_VKEY_M 0x4D -#define FWL_VKEY_N 0x4E -#define FWL_VKEY_O 0x4F -#define FWL_VKEY_P 0x50 -#define FWL_VKEY_Q 0x51 -#define FWL_VKEY_R 0x52 -#define FWL_VKEY_S 0x53 -#define FWL_VKEY_T 0x54 -#define FWL_VKEY_U 0x55 -#define FWL_VKEY_V 0x56 -#define FWL_VKEY_W 0x57 -#define FWL_VKEY_X 0x58 -#define FWL_VKEY_Y 0x59 -#define FWL_VKEY_Z 0x5A -#define FWL_VKEY_LWin 0x5B -#define FWL_VKEY_Command 0x5B -#define FWL_VKEY_RWin 0x5C -#define FWL_VKEY_Apps 0x5D -#define FWL_VKEY_Sleep 0x5F -#define FWL_VKEY_NumPad0 0x60 -#define FWL_VKEY_NumPad1 0x61 -#define FWL_VKEY_NumPad2 0x62 -#define FWL_VKEY_NumPad3 0x63 -#define FWL_VKEY_NumPad4 0x64 -#define FWL_VKEY_NumPad5 0x65 -#define FWL_VKEY_NumPad6 0x66 -#define FWL_VKEY_NumPad7 0x67 -#define FWL_VKEY_NumPad8 0x68 -#define FWL_VKEY_NumPad9 0x69 -#define FWL_VKEY_Multiply 0x6A -#define FWL_VKEY_Add 0x6B -#define FWL_VKEY_Separator 0x6C -#define FWL_VKEY_Subtract 0x6D -#define FWL_VKEY_Decimal 0x6E -#define FWL_VKEY_Divide 0x6F -#define FWL_VKEY_F1 0x70 -#define FWL_VKEY_F2 0x71 -#define FWL_VKEY_F3 0x72 -#define FWL_VKEY_F4 0x73 -#define FWL_VKEY_F5 0x74 -#define FWL_VKEY_F6 0x75 -#define FWL_VKEY_F7 0x76 -#define FWL_VKEY_F8 0x77 -#define FWL_VKEY_F9 0x78 -#define FWL_VKEY_F10 0x79 -#define FWL_VKEY_F11 0x7A -#define FWL_VKEY_F12 0x7B -#define FWL_VKEY_F13 0x7C -#define FWL_VKEY_F14 0x7D -#define FWL_VKEY_F15 0x7E -#define FWL_VKEY_F16 0x7F -#define FWL_VKEY_F17 0x80 -#define FWL_VKEY_F18 0x81 -#define FWL_VKEY_F19 0x82 -#define FWL_VKEY_F20 0x83 -#define FWL_VKEY_F21 0x84 -#define FWL_VKEY_F22 0x85 -#define FWL_VKEY_F23 0x86 -#define FWL_VKEY_F24 0x87 -#define FWL_VKEY_NunLock 0x90 -#define FWL_VKEY_Scroll 0x91 -#define FWL_VKEY_LShift 0xA0 -#define FWL_VKEY_RShift 0xA1 -#define FWL_VKEY_LControl 0xA2 -#define FWL_VKEY_RControl 0xA3 -#define FWL_VKEY_LMenu 0xA4 -#define FWL_VKEY_RMenu 0xA5 -#define FWL_VKEY_BROWSER_Back 0xA6 -#define FWL_VKEY_BROWSER_Forward 0xA7 -#define FWL_VKEY_BROWSER_Refresh 0xA8 -#define FWL_VKEY_BROWSER_Stop 0xA9 -#define FWL_VKEY_BROWSER_Search 0xAA -#define FWL_VKEY_BROWSER_Favorites 0xAB -#define FWL_VKEY_BROWSER_Home 0xAC -#define FWL_VKEY_VOLUME_Mute 0xAD -#define FWL_VKEY_VOLUME_Down 0xAE -#define FWL_VKEY_VOLUME_Up 0xAF -#define FWL_VKEY_MEDIA_NEXT_Track 0xB0 -#define FWL_VKEY_MEDIA_PREV_Track 0xB1 -#define FWL_VKEY_MEDIA_Stop 0xB2 -#define FWL_VKEY_MEDIA_PLAY_Pause 0xB3 -#define FWL_VKEY_MEDIA_LAUNCH_Mail 0xB4 -#define FWL_VKEY_MEDIA_LAUNCH_MEDIA_Select 0xB5 -#define FWL_VKEY_MEDIA_LAUNCH_APP1 0xB6 -#define FWL_VKEY_MEDIA_LAUNCH_APP2 0xB7 -#define FWL_VKEY_OEM_1 0xBA -#define FWL_VKEY_OEM_Plus 0xBB -#define FWL_VKEY_OEM_Comma 0xBC -#define FWL_VKEY_OEM_Minus 0xBD -#define FWL_VKEY_OEM_Period 0xBE -#define FWL_VKEY_OEM_2 0xBF -#define FWL_VKEY_OEM_3 0xC0 -#define FWL_VKEY_OEM_4 0xDB -#define FWL_VKEY_OEM_5 0xDC -#define FWL_VKEY_OEM_6 0xDD -#define FWL_VKEY_OEM_7 0xDE -#define FWL_VKEY_OEM_8 0xDF -#define FWL_VKEY_OEM_102 0xE2 -#define FWL_VKEY_ProcessKey 0xE5 -#define FWL_VKEY_Packet 0xE7 -#define FWL_VKEY_Attn 0xF6 -#define FWL_VKEY_Crsel 0xF7 -#define FWL_VKEY_Exsel 0xF8 -#define FWL_VKEY_Ereof 0xF9 -#define FWL_VKEY_Play 0xFA -#define FWL_VKEY_Zoom 0xFB -#define FWL_VKEY_NoName 0xFC -#define FWL_VKEY_PA1 0xFD -#define FWL_VKEY_OEM_Clear 0xFE -#define FWL_VKEY_Unknown 0 -#define FWL_VKEYSTATE_Toggled 0x0001 -#define FWL_VKEYSTATE_Down 0x0100 - -#endif // XFA_INCLUDE_FWL_CORE_FWL_WIDGETDEF_H_ diff --git a/xfa/include/fwl/core/fwl_widgetmgr.h b/xfa/include/fwl/core/fwl_widgetmgr.h deleted file mode 100644 index 9486af5ef7..0000000000 --- a/xfa/include/fwl/core/fwl_widgetmgr.h +++ /dev/null @@ -1,60 +0,0 @@ -// Copyright 2014 PDFium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com - -#ifndef XFA_INCLUDE_FWL_CORE_FWL_WIDGETMGR_H_ -#define XFA_INCLUDE_FWL_CORE_FWL_WIDGETMGR_H_ - -#include "xfa/include/fwl/core/fwl_note.h" - -class IFWL_Widget; - -#define FWL_WGTMGR_DisableThread 0x00000001 -#define FWL_WGTMGR_DisableForm 0x00000002 - -enum FWL_WGTRELATION { - FWL_WGTRELATION_Parent = 0, - FWL_WGTRELATION_Owner, - FWL_WGTRELATION_FirstSibling, - FWL_WGTRELATION_PriorSibling, - FWL_WGTRELATION_NextSibling, - FWL_WGTRELATION_LastSibling, - FWL_WGTRELATION_FirstChild, - FWL_WGTRELATION_LastChild, - FWL_WGTRELATION_SystemForm -}; - -class IFWL_WidgetMgr { - public: - virtual ~IFWL_WidgetMgr() {} - virtual int32_t CountWidgets(IFWL_Widget* pParent = NULL) = 0; - virtual IFWL_Widget* GetWidget(int32_t nIndex, - IFWL_Widget* pParent = NULL) = 0; - virtual IFWL_Widget* GetWidget(IFWL_Widget* pWidget, - FWL_WGTRELATION eRelation) = 0; - virtual int32_t GetWidgetIndex(IFWL_Widget* pWidget) = 0; - virtual FX_BOOL SetWidgetIndex(IFWL_Widget* pWidget, int32_t nIndex) = 0; - virtual FWL_ERR RepaintWidget(IFWL_Widget* pWidget, - const CFX_RectF* pRect = NULL) = 0; - virtual FX_DWORD GetCapability() = 0; -}; -IFWL_WidgetMgr* FWL_GetWidgetMgr(); -FX_BOOL FWL_WidgetIsChild(IFWL_Widget* parent, IFWL_Widget* find); - -class IFWL_WidgetMgrDelegate { - public: - virtual ~IFWL_WidgetMgrDelegate() {} - virtual FWL_ERR OnSetCapability( - FX_DWORD dwCapability = FWL_WGTMGR_DisableThread) = 0; - virtual int32_t OnProcessMessageToForm(CFWL_Message* pMessage) = 0; - virtual FWL_ERR OnDrawWidget(IFWL_Widget* pWidget, - CFX_Graphics* pGraphics, - const CFX_Matrix* pMatrix = NULL) = 0; -}; -FWL_ERR FWL_WidgetMgrSnapshot(IFWL_Widget* pWidget, - const CFX_WideString* saveFile, - const CFX_Matrix* pMatrix = NULL); - -#endif // XFA_INCLUDE_FWL_CORE_FWL_WIDGETMGR_H_ diff --git a/xfa/include/fwl/lightwidget/app.h b/xfa/include/fwl/lightwidget/app.h index ce0c0df287..dee8d04de3 100644 --- a/xfa/include/fwl/lightwidget/app.h +++ b/xfa/include/fwl/lightwidget/app.h @@ -7,7 +7,7 @@ #ifndef XFA_INCLUDE_FWL_LIGHTWIDGET_APP_H_ #define XFA_INCLUDE_FWL_LIGHTWIDGET_APP_H_ -#include "xfa/include/fwl/core/fwl_error.h" +#include "xfa/fwl/core/fwl_error.h" class CFWL_Theme; class IFWL_App; diff --git a/xfa/include/fwl/lightwidget/barcode.h b/xfa/include/fwl/lightwidget/barcode.h index 7056f3ac58..0483de0f4c 100644 --- a/xfa/include/fwl/lightwidget/barcode.h +++ b/xfa/include/fwl/lightwidget/barcode.h @@ -7,8 +7,8 @@ #ifndef XFA_INCLUDE_FWL_LIGHTWIDGET_BARCODE_H_ #define XFA_INCLUDE_FWL_LIGHTWIDGET_BARCODE_H_ -#include "xfa/include/fwl/basewidget/fwl_barcode.h" -#include "xfa/include/fwl/core/fwl_error.h" +#include "xfa/fwl/basewidget/ifwl_barcode.h" +#include "xfa/fwl/core/fwl_error.h" #include "xfa/include/fwl/lightwidget/edit.h" class CFWL_Widget; diff --git a/xfa/include/fwl/lightwidget/caret.h b/xfa/include/fwl/lightwidget/caret.h index be11be1cf5..9f84950412 100644 --- a/xfa/include/fwl/lightwidget/caret.h +++ b/xfa/include/fwl/lightwidget/caret.h @@ -7,7 +7,8 @@ #ifndef XFA_INCLUDE_FWL_LIGHTWIDGET_CARET_H_ #define XFA_INCLUDE_FWL_LIGHTWIDGET_CARET_H_ -#include "xfa/include/fwl/core/fwl_error.h" +#include "xfa/fwl/core/fwl_error.h" +#include "xfa/fxgraphics/cfx_color.h" #include "xfa/include/fwl/lightwidget/widget.h" class CFWL_Caret : public CFWL_Widget { diff --git a/xfa/include/fwl/lightwidget/checkbox.h b/xfa/include/fwl/lightwidget/checkbox.h index 3780badce2..a691c9664c 100644 --- a/xfa/include/fwl/lightwidget/checkbox.h +++ b/xfa/include/fwl/lightwidget/checkbox.h @@ -7,7 +7,7 @@ #ifndef XFA_INCLUDE_FWL_LIGHTWIDGET_CHECKBOX_H_ #define XFA_INCLUDE_FWL_LIGHTWIDGET_CHECKBOX_H_ -#include "xfa/include/fwl/basewidget/fwl_checkbox.h" +#include "xfa/fwl/basewidget/ifwl_checkbox.h" #include "xfa/include/fwl/lightwidget/widget.h" class CFWL_CheckBox : public CFWL_Widget { diff --git a/xfa/include/fwl/lightwidget/combobox.h b/xfa/include/fwl/lightwidget/combobox.h index db6db39d2f..4229cc9a6a 100644 --- a/xfa/include/fwl/lightwidget/combobox.h +++ b/xfa/include/fwl/lightwidget/combobox.h @@ -10,7 +10,7 @@ #include #include -#include "xfa/include/fwl/basewidget/fwl_combobox.h" +#include "xfa/fwl/basewidget/ifwl_combobox.h" #include "xfa/include/fwl/lightwidget/widget.h" class CFWL_WidgetProperties; diff --git a/xfa/include/fwl/lightwidget/datetimepicker.h b/xfa/include/fwl/lightwidget/datetimepicker.h index 22048f37f6..379883fb0b 100644 --- a/xfa/include/fwl/lightwidget/datetimepicker.h +++ b/xfa/include/fwl/lightwidget/datetimepicker.h @@ -7,7 +7,7 @@ #ifndef XFA_INCLUDE_FWL_LIGHTWIDGET_DATETIMEPICKER_H_ #define XFA_INCLUDE_FWL_LIGHTWIDGET_DATETIMEPICKER_H_ -#include "xfa/include/fwl/basewidget/fwl_datetimepicker.h" +#include "xfa/fwl/basewidget/ifwl_datetimepicker.h" #include "xfa/include/fwl/lightwidget/widget.h" class CFWL_DateTimePicker : public CFWL_Widget { diff --git a/xfa/include/fwl/lightwidget/listbox.h b/xfa/include/fwl/lightwidget/listbox.h index 008f17055f..69c7d208c6 100644 --- a/xfa/include/fwl/lightwidget/listbox.h +++ b/xfa/include/fwl/lightwidget/listbox.h @@ -10,9 +10,9 @@ #include #include -#include "xfa/include/fwl/basewidget/fwl_listbox.h" -#include "xfa/include/fwl/core/fwl_error.h" -#include "xfa/include/fwl/core/fwl_widget.h" +#include "xfa/fwl/basewidget/ifwl_listbox.h" +#include "xfa/fwl/core/fwl_error.h" +#include "xfa/fwl/core/ifwl_widget.h" #include "xfa/include/fwl/lightwidget/widget.h" class CFWL_ListItem; diff --git a/xfa/include/fwl/lightwidget/picturebox.h b/xfa/include/fwl/lightwidget/picturebox.h index 793eb16fb8..b5c8ae5192 100644 --- a/xfa/include/fwl/lightwidget/picturebox.h +++ b/xfa/include/fwl/lightwidget/picturebox.h @@ -7,8 +7,8 @@ #ifndef XFA_INCLUDE_FWL_LIGHTWIDGET_PICTUREBOX_H_ #define XFA_INCLUDE_FWL_LIGHTWIDGET_PICTUREBOX_H_ -#include "xfa/include/fwl/basewidget/fwl_picturebox.h" -#include "xfa/include/fwl/core/fwl_error.h" +#include "xfa/fwl/basewidget/ifwl_picturebox.h" +#include "xfa/fwl/core/fwl_error.h" #include "xfa/include/fwl/lightwidget/widget.h" class CFWL_PictureBox : public CFWL_Widget { diff --git a/xfa/include/fwl/lightwidget/pushbutton.h b/xfa/include/fwl/lightwidget/pushbutton.h index d8f5760911..abd76f50a5 100644 --- a/xfa/include/fwl/lightwidget/pushbutton.h +++ b/xfa/include/fwl/lightwidget/pushbutton.h @@ -7,7 +7,7 @@ #ifndef XFA_INCLUDE_FWL_LIGHTWIDGET_PUSHBUTTON_H_ #define XFA_INCLUDE_FWL_LIGHTWIDGET_PUSHBUTTON_H_ -#include "xfa/include/fwl/basewidget/fwl_pushbutton.h" +#include "xfa/fwl/basewidget/ifwl_pushbutton.h" #include "xfa/include/fwl/lightwidget/widget.h" class CFWL_PushButton : public CFWL_Widget { diff --git a/xfa/include/fwl/lightwidget/theme.h b/xfa/include/fwl/lightwidget/theme.h index f47725b8ae..c39b48e307 100644 --- a/xfa/include/fwl/lightwidget/theme.h +++ b/xfa/include/fwl/lightwidget/theme.h @@ -10,11 +10,15 @@ #include #include +#include "core/fxcrt/include/fx_coordinates.h" +#include "core/fxcrt/include/fx_system.h" #include "core/include/fxge/fx_dib.h" -#include "xfa/include/fwl/core/fwl_theme.h" +#include "xfa/fwl/core/ifwl_themeprovider.h" class CFWL_WidgetTP; class IFWL_Widget; +class CFWL_ThemePart; +class CFWL_ThemeText; class CFWL_Theme : public IFWL_ThemeProvider { public: diff --git a/xfa/include/fwl/lightwidget/tooltipctrl.h b/xfa/include/fwl/lightwidget/tooltipctrl.h index c446fe47aa..6a487f27e7 100644 --- a/xfa/include/fwl/lightwidget/tooltipctrl.h +++ b/xfa/include/fwl/lightwidget/tooltipctrl.h @@ -7,7 +7,7 @@ #ifndef XFA_INCLUDE_FWL_LIGHTWIDGET_TOOLTIPCTRL_H_ #define XFA_INCLUDE_FWL_LIGHTWIDGET_TOOLTIPCTRL_H_ -#include "xfa/include/fwl/basewidget/fwl_tooltipctrl.h" +#include "xfa/fwl/basewidget/ifwl_tooltip.h" #include "xfa/include/fwl/lightwidget/widget.h" class CFWL_ToolTip : public CFWL_Widget { diff --git a/xfa/include/fwl/lightwidget/widget.h b/xfa/include/fwl/lightwidget/widget.h index c10428e505..2f7ea641e9 100644 --- a/xfa/include/fwl/lightwidget/widget.h +++ b/xfa/include/fwl/lightwidget/widget.h @@ -7,7 +7,9 @@ #ifndef XFA_INCLUDE_FWL_LIGHTWIDGET_WIDGET_H_ #define XFA_INCLUDE_FWL_LIGHTWIDGET_WIDGET_H_ -#include "xfa/include/fwl/core/fwl_widget.h" +#include "xfa/fwl/core/cfwl_event.h" +#include "xfa/fwl/core/cfwl_widgetimpproperties.h" +#include "xfa/fwl/core/ifwl_widget.h" class CFWL_Event; class CFWL_Message; diff --git a/xfa/include/fwl/theme/widgettp.h b/xfa/include/fwl/theme/widgettp.h index 84cf82a868..8d3f9ee79a 100644 --- a/xfa/include/fwl/theme/widgettp.h +++ b/xfa/include/fwl/theme/widgettp.h @@ -12,9 +12,8 @@ #include "core/fxcrt/include/fx_coordinates.h" #include "core/fxcrt/include/fx_system.h" -#include "xfa/include/fwl/core/fwl_error.h" -#include "xfa/include/fwl/core/fwl_theme.h" -#include "xfa/include/fwl/core/fwl_widget.h" +#include "xfa/fwl/core/fwl_error.h" +#include "xfa/fxgraphics/include/cfx_graphics.h" #include "xfa/include/fwl/theme/utils.h" class IFWL_Widget; @@ -22,6 +21,9 @@ class IFDE_TextOut; class IFX_Font; class IFX_FontMgr; class CFWL_ArrowData; +class CFWL_ThemeBackground; +class CFWL_ThemePart; +class CFWL_ThemeText; #if _FXM_PLATFORM_ != _FXM_PLATFORM_WINDOWS_ class IFX_FontSourceEnum; -- cgit v1.2.3