Name Date Size #Lines LOC

..--

theme/H25-Apr-2025-1,8831,443

BUILD.gnH A D25-Apr-20253.4 KiB135130

DEPSH A D25-Apr-2025102 54

README.mdH A D25-Apr-20251.6 KiB5746

cfwl_app.cppH A D25-Apr-2025979 3120

cfwl_app.hH A D25-Apr-20251.8 KiB5842

cfwl_barcode.cppH A D25-Apr-20255.3 KiB191149

cfwl_barcode.hH A D25-Apr-20252.3 KiB8057

cfwl_caret.cppH A D25-Apr-20252.3 KiB8861

cfwl_caret.hH A D25-Apr-20251.2 KiB4526

cfwl_checkbox.cppH A D25-Apr-20259.6 KiB321274

cfwl_checkbox.hH A D25-Apr-20252.4 KiB7657

cfwl_combobox.cppH A D25-Apr-202515.4 KiB530460

cfwl_combobox.hH A D25-Apr-20254.5 KiB126103

cfwl_comboedit.cppH A D25-Apr-20251.6 KiB5744

cfwl_comboedit.hH A D25-Apr-2025777 3117

cfwl_combolist.cppH A D25-Apr-20256.8 KiB230199

cfwl_combolist.hH A D25-Apr-20251.2 KiB4125

cfwl_datetimeedit.cppH A D25-Apr-20251.6 KiB4330

cfwl_datetimeedit.hH A D25-Apr-2025754 2815

cfwl_datetimepicker.cppH A D25-Apr-202513.3 KiB466391

cfwl_datetimepicker.hH A D25-Apr-20253.8 KiB11490

cfwl_edit.cppH A D25-Apr-202532.5 KiB1,118954

cfwl_edit.hH A D25-Apr-20255.5 KiB167139

cfwl_edit_embeddertest.cppH A D25-Apr-202510.8 KiB314214

cfwl_event.cppH A D25-Apr-2025672 209

cfwl_event.hH A D25-Apr-20251.2 KiB5035

cfwl_eventmouse.cppH A D25-Apr-2025585 167

cfwl_eventmouse.hH A D25-Apr-2025775 2715

cfwl_eventscroll.cppH A D25-Apr-2025569 178

cfwl_eventscroll.hH A D25-Apr-2025857 3926

cfwl_eventselectchanged.cppH A D25-Apr-20251 KiB2818

cfwl_eventselectchanged.hH A D25-Apr-20251.1 KiB3923

cfwl_eventtextwillchange.cppH A D25-Apr-2025758 2213

cfwl_eventtextwillchange.hH A D25-Apr-20251.6 KiB4936

cfwl_eventvalidate.cppH A D25-Apr-2025538 156

cfwl_eventvalidate.hH A D25-Apr-2025826 2816

cfwl_listbox.cppH A D25-Apr-202524.5 KiB865750

cfwl_listbox.hH A D25-Apr-20254.8 KiB145121

cfwl_message.cppH A D25-Apr-2025412 134

cfwl_message.hH A D25-Apr-20251 KiB3923

cfwl_messagekey.cppH A D25-Apr-2025684 1910

cfwl_messagekey.hH A D25-Apr-2025863 3018

cfwl_messagekillfocus.cppH A D25-Apr-2025464 134

cfwl_messagekillfocus.hH A D25-Apr-2025760 2715

cfwl_messagemouse.cppH A D25-Apr-2025676 1910

cfwl_messagemouse.hH A D25-Apr-20251 KiB4230

cfwl_messagemousewheel.cppH A D25-Apr-2025652 178

cfwl_messagemousewheel.hH A D25-Apr-2025903 3118

cfwl_messagesetfocus.cppH A D25-Apr-2025458 134

cfwl_messagesetfocus.hH A D25-Apr-2025547 199

cfwl_monthcalendar.cppH A D25-Apr-202523.4 KiB739645

cfwl_monthcalendar.hH A D25-Apr-20254.9 KiB161135

cfwl_notedriver.cppH A D25-Apr-20258 KiB277231

cfwl_notedriver.hH A D25-Apr-20252.4 KiB7555

cfwl_picturebox.cppH A D25-Apr-20251,007 3823

cfwl_picturebox.hH A D25-Apr-2025922 3420

cfwl_pushbutton.cppH A D25-Apr-20256.5 KiB218186

cfwl_pushbutton.hH A D25-Apr-20251.6 KiB5437

cfwl_scrollbar.cppH A D25-Apr-202514.9 KiB468398

cfwl_scrollbar.hH A D25-Apr-20254.6 KiB131109

cfwl_themebackground.cppH A D25-Apr-2025581 156

cfwl_themebackground.hH A D25-Apr-20251 KiB3622

cfwl_themepart.cppH A D25-Apr-2025753 2313

cfwl_themepart.hH A D25-Apr-20252.1 KiB10788

cfwl_themetext.cppH A D25-Apr-2025527 156

cfwl_themetext.hH A D25-Apr-2025965 3621

cfwl_widget.cppH A D25-Apr-202510.1 KiB354290

cfwl_widget.hH A D25-Apr-20256.5 KiB207167

cfwl_widgetmgr.cppH A D25-Apr-20257.3 KiB244195

cfwl_widgetmgr.hH A D25-Apr-20253.2 KiB10272

fwl_widgetdef.hH A D25-Apr-20255.6 KiB199184

fwl_widgethit.hH A D25-Apr-2025605 3627

ifwl_themeprovider.cppH A D25-Apr-20253.2 KiB9078

ifwl_themeprovider.hH A D25-Apr-20252.4 KiB6750

ifwl_widgetdelegate.hH A D25-Apr-2025831 2816

README.md

1xfa/fwl is a Widget Library for XFA Forms.
2
3CFWL_Widget is the base class that widget classes extend. The derived widget
4classes are both controllers and renderers for each widget. The hierarchy is:
5
6* CFWL_Widget
7    * CFWL_Form
8    * CFWL_Caret
9    * CFWL_CheckBox
10    * CFWL_ComboBox
11    * CFWL_DateTimePicker
12    * CFWL_Edit
13        * CFWL_Barcode
14        * CFWL_ComboEdit
15        * CFWL_DateTimeEdit
16    * CFWL_ListBox
17        * CFWL_ComboList
18    * CFWL_MonthCalendar
19    * CFWL_PictureBox
20    * CFWL_PushButton
21    * CFWL_ScrollBar
22    * CFWL_SpinButton
23
24These CFWL widgets are instantiated by and closely related to the CXFA classes
25in the xfa/fxfa directory. See xfa/fxfa/README.md.
26
27CFWL_Widget implements IFWL_WidgetDelegate through which it receives messages,
28events and draw calls.
29
30Messages consist of user input for a widget to handle. Each type of message is
31identified by an enum value in Message::Type and has its own class derived from
32the base CFWL_Message.
33
34* CFWL_Message
35    * CFWL_MessageKey
36    * CFWL_MessageKillFocus
37    * CFWL_MessageMouse
38    * CFWL_MessageMouseWheel
39    * CFWL_MessageSetFocus
40
41Events are originated in the widgets and are then handled by other CFWL_Widget
42and CXFA classes.
43
44* CFWL_Event
45    * CFWL_EventCheckWord
46    * CFWL_EventMouse
47    * CFWL_EventScroll
48    * CFWL_EventSelectChanged
49    * CFWL_EventTextWillChange
50    * CFWL_EventValidate
51
52The widgets use IFWL_ThemeProvider for rendering everything, calling
53DrawBackground() and DrawText() and passing many options in their parameters,
54respectively of types CFWL_ThemeBackground and CFWL_ThemeText. See
55xfa/fwl/theme/README.md.
56
57