android13/external/pdfium/xfa/fwl
liiir1985 7f62dcda9f initial 2024-06-22 20:45:49 +08:00
..
theme initial 2024-06-22 20:45:49 +08:00
BUILD.gn initial 2024-06-22 20:45:49 +08:00
README.md initial 2024-06-22 20:45:49 +08:00
cfwl_app.cpp initial 2024-06-22 20:45:49 +08:00
cfwl_app.h initial 2024-06-22 20:45:49 +08:00
cfwl_barcode.cpp initial 2024-06-22 20:45:49 +08:00
cfwl_barcode.h initial 2024-06-22 20:45:49 +08:00
cfwl_caret.cpp initial 2024-06-22 20:45:49 +08:00
cfwl_caret.h initial 2024-06-22 20:45:49 +08:00
cfwl_checkbox.cpp initial 2024-06-22 20:45:49 +08:00
cfwl_checkbox.h initial 2024-06-22 20:45:49 +08:00
cfwl_combobox.cpp initial 2024-06-22 20:45:49 +08:00
cfwl_combobox.h initial 2024-06-22 20:45:49 +08:00
cfwl_comboedit.cpp initial 2024-06-22 20:45:49 +08:00
cfwl_comboedit.h initial 2024-06-22 20:45:49 +08:00
cfwl_combolist.cpp initial 2024-06-22 20:45:49 +08:00
cfwl_combolist.h initial 2024-06-22 20:45:49 +08:00
cfwl_datetimeedit.cpp initial 2024-06-22 20:45:49 +08:00
cfwl_datetimeedit.h initial 2024-06-22 20:45:49 +08:00
cfwl_datetimepicker.cpp initial 2024-06-22 20:45:49 +08:00
cfwl_datetimepicker.h initial 2024-06-22 20:45:49 +08:00
cfwl_edit.cpp initial 2024-06-22 20:45:49 +08:00
cfwl_edit.h initial 2024-06-22 20:45:49 +08:00
cfwl_edit_embeddertest.cpp initial 2024-06-22 20:45:49 +08:00
cfwl_event.cpp initial 2024-06-22 20:45:49 +08:00
cfwl_event.h initial 2024-06-22 20:45:49 +08:00
cfwl_eventmouse.cpp initial 2024-06-22 20:45:49 +08:00
cfwl_eventmouse.h initial 2024-06-22 20:45:49 +08:00
cfwl_eventscroll.cpp initial 2024-06-22 20:45:49 +08:00
cfwl_eventscroll.h initial 2024-06-22 20:45:49 +08:00
cfwl_eventselectchanged.cpp initial 2024-06-22 20:45:49 +08:00
cfwl_eventselectchanged.h initial 2024-06-22 20:45:49 +08:00
cfwl_eventtarget.cpp initial 2024-06-22 20:45:49 +08:00
cfwl_eventtarget.h initial 2024-06-22 20:45:49 +08:00
cfwl_eventtextwillchange.cpp initial 2024-06-22 20:45:49 +08:00
cfwl_eventtextwillchange.h initial 2024-06-22 20:45:49 +08:00
cfwl_eventvalidate.cpp initial 2024-06-22 20:45:49 +08:00
cfwl_eventvalidate.h initial 2024-06-22 20:45:49 +08:00
cfwl_listbox.cpp initial 2024-06-22 20:45:49 +08:00
cfwl_listbox.h initial 2024-06-22 20:45:49 +08:00
cfwl_listitem.cpp initial 2024-06-22 20:45:49 +08:00
cfwl_listitem.h initial 2024-06-22 20:45:49 +08:00
cfwl_message.cpp initial 2024-06-22 20:45:49 +08:00
cfwl_message.h initial 2024-06-22 20:45:49 +08:00
cfwl_messagekey.cpp initial 2024-06-22 20:45:49 +08:00
cfwl_messagekey.h initial 2024-06-22 20:45:49 +08:00
cfwl_messagekillfocus.cpp initial 2024-06-22 20:45:49 +08:00
cfwl_messagekillfocus.h initial 2024-06-22 20:45:49 +08:00
cfwl_messagemouse.cpp initial 2024-06-22 20:45:49 +08:00
cfwl_messagemouse.h initial 2024-06-22 20:45:49 +08:00
cfwl_messagemousewheel.cpp initial 2024-06-22 20:45:49 +08:00
cfwl_messagemousewheel.h initial 2024-06-22 20:45:49 +08:00
cfwl_messagesetfocus.cpp initial 2024-06-22 20:45:49 +08:00
cfwl_messagesetfocus.h initial 2024-06-22 20:45:49 +08:00
cfwl_monthcalendar.cpp initial 2024-06-22 20:45:49 +08:00
cfwl_monthcalendar.h initial 2024-06-22 20:45:49 +08:00
cfwl_notedriver.cpp initial 2024-06-22 20:45:49 +08:00
cfwl_notedriver.h initial 2024-06-22 20:45:49 +08:00
cfwl_picturebox.cpp initial 2024-06-22 20:45:49 +08:00
cfwl_picturebox.h initial 2024-06-22 20:45:49 +08:00
cfwl_pushbutton.cpp initial 2024-06-22 20:45:49 +08:00
cfwl_pushbutton.h initial 2024-06-22 20:45:49 +08:00
cfwl_scrollbar.cpp initial 2024-06-22 20:45:49 +08:00
cfwl_scrollbar.h initial 2024-06-22 20:45:49 +08:00
cfwl_themebackground.h initial 2024-06-22 20:45:49 +08:00
cfwl_themepart.cpp initial 2024-06-22 20:45:49 +08:00
cfwl_themepart.h initial 2024-06-22 20:45:49 +08:00
cfwl_themetext.h initial 2024-06-22 20:45:49 +08:00
cfwl_widget.cpp initial 2024-06-22 20:45:49 +08:00
cfwl_widget.h initial 2024-06-22 20:45:49 +08:00
cfwl_widgetmgr.cpp initial 2024-06-22 20:45:49 +08:00
cfwl_widgetmgr.h initial 2024-06-22 20:45:49 +08:00
cfwl_widgetproperties.cpp initial 2024-06-22 20:45:49 +08:00
cfwl_widgetproperties.h initial 2024-06-22 20:45:49 +08:00
fwl_widgetdef.h initial 2024-06-22 20:45:49 +08:00
fwl_widgethit.h initial 2024-06-22 20:45:49 +08:00
ifwl_themeprovider.h initial 2024-06-22 20:45:49 +08:00
ifwl_widgetdelegate.h initial 2024-06-22 20:45:49 +08:00

README.md

xfa/fwl is a Widget Library for XFA Forms.

CFWL_Widget is the base class that widget classes extend. The derived widget classes are both controllers and renderers for each widget. The hierarchy is:

  • CFWL_Widget
    • CFWL_Form
    • CFWL_Caret
    • CFWL_CheckBox
    • CFWL_ComboBox
    • CFWL_DateTimePicker
    • CFWL_Edit
      • CFWL_Barcode
      • CFWL_ComboEdit
      • CFWL_DateTimeEdit
    • CFWL_ListBox
      • CFWL_ComboList
    • CFWL_MonthCalendar
    • CFWL_PictureBox
    • CFWL_PushButton
    • CFWL_ScrollBar
    • CFWL_SpinButton

These CFWL widgets are instantiated by and closely related to the CXFA classes in the xfa/fxfa directory. See xfa/fxfa/README.md.

CFWL_Widget implements IFWL_WidgetDelegate through which it receives messages, events and draw calls.

Messages consist of user input for a widget to handle. Each type of message is identified by an enum value in Message::Type and has its own class derived from the base CFWL_Message.

  • CFWL_Message
    • CFWL_MessageKey
    • CFWL_MessageKillFocus
    • CFWL_MessageMouse
    • CFWL_MessageMouseWheel
    • CFWL_MessageSetFocus

Events are originated in the widgets and are then handled by other CFWL_Widget and CXFA classes.

  • CFWL_Event
    • CFWL_EventCheckWord
    • CFWL_EventMouse
    • CFWL_EventScroll
    • CFWL_EventSelectChanged
    • CFWL_EventTextWillChange
    • CFWL_EventValidate

The widgets use IFWL_ThemeProvider for rendering everything, calling DrawBackground() and DrawText() and passing many options in their parameters, respectively of types CFWL_ThemeBackground and CFWL_ThemeText. See xfa/fwl/theme/README.md.