• Home
Name Date Size #Lines LOC

..--

theme/06-Sep-2024-1,8831,443

BUILD.gnD06-Sep-20243.4 KiB135130

DEPSD06-Sep-2024102 54

README.mdD06-Sep-20241.6 KiB5746

cfwl_app.cppD06-Sep-2024979 3120

cfwl_app.hD06-Sep-20241.8 KiB5842

cfwl_barcode.cppD06-Sep-20245.3 KiB191149

cfwl_barcode.hD06-Sep-20242.3 KiB8057

cfwl_caret.cppD06-Sep-20242.3 KiB8861

cfwl_caret.hD06-Sep-20241.2 KiB4526

cfwl_checkbox.cppD06-Sep-20249.6 KiB321274

cfwl_checkbox.hD06-Sep-20242.4 KiB7657

cfwl_combobox.cppD06-Sep-202415.4 KiB530460

cfwl_combobox.hD06-Sep-20244.5 KiB126103

cfwl_comboedit.cppD06-Sep-20241.6 KiB5744

cfwl_comboedit.hD06-Sep-2024777 3117

cfwl_combolist.cppD06-Sep-20246.8 KiB230199

cfwl_combolist.hD06-Sep-20241.2 KiB4125

cfwl_datetimeedit.cppD06-Sep-20241.6 KiB4330

cfwl_datetimeedit.hD06-Sep-2024754 2815

cfwl_datetimepicker.cppD06-Sep-202413.3 KiB466391

cfwl_datetimepicker.hD06-Sep-20243.8 KiB11490

cfwl_edit.cppD06-Sep-202432.5 KiB1,118954

cfwl_edit.hD06-Sep-20245.5 KiB167139

cfwl_edit_embeddertest.cppD06-Sep-202410.8 KiB314214

cfwl_event.cppD06-Sep-2024672 209

cfwl_event.hD06-Sep-20241.2 KiB5035

cfwl_eventmouse.cppD06-Sep-2024585 167

cfwl_eventmouse.hD06-Sep-2024775 2715

cfwl_eventscroll.cppD06-Sep-2024569 178

cfwl_eventscroll.hD06-Sep-2024857 3926

cfwl_eventselectchanged.cppD06-Sep-20241 KiB2818

cfwl_eventselectchanged.hD06-Sep-20241.1 KiB3923

cfwl_eventtextwillchange.cppD06-Sep-2024758 2213

cfwl_eventtextwillchange.hD06-Sep-20241.6 KiB4936

cfwl_eventvalidate.cppD06-Sep-2024538 156

cfwl_eventvalidate.hD06-Sep-2024826 2816

cfwl_listbox.cppD06-Sep-202424.5 KiB865750

cfwl_listbox.hD06-Sep-20244.8 KiB145121

cfwl_message.cppD06-Sep-2024412 134

cfwl_message.hD06-Sep-20241 KiB3923

cfwl_messagekey.cppD06-Sep-2024684 1910

cfwl_messagekey.hD06-Sep-2024863 3018

cfwl_messagekillfocus.cppD06-Sep-2024464 134

cfwl_messagekillfocus.hD06-Sep-2024760 2715

cfwl_messagemouse.cppD06-Sep-2024676 1910

cfwl_messagemouse.hD06-Sep-20241 KiB4230

cfwl_messagemousewheel.cppD06-Sep-2024652 178

cfwl_messagemousewheel.hD06-Sep-2024903 3118

cfwl_messagesetfocus.cppD06-Sep-2024458 134

cfwl_messagesetfocus.hD06-Sep-2024547 199

cfwl_monthcalendar.cppD06-Sep-202423.4 KiB739645

cfwl_monthcalendar.hD06-Sep-20244.9 KiB161135

cfwl_notedriver.cppD06-Sep-20248 KiB277231

cfwl_notedriver.hD06-Sep-20242.4 KiB7555

cfwl_picturebox.cppD06-Sep-20241,007 3823

cfwl_picturebox.hD06-Sep-2024922 3420

cfwl_pushbutton.cppD06-Sep-20246.5 KiB218186

cfwl_pushbutton.hD06-Sep-20241.6 KiB5437

cfwl_scrollbar.cppD06-Sep-202414.9 KiB468398

cfwl_scrollbar.hD06-Sep-20244.6 KiB131109

cfwl_themebackground.cppD06-Sep-2024581 156

cfwl_themebackground.hD06-Sep-20241 KiB3622

cfwl_themepart.cppD06-Sep-2024753 2313

cfwl_themepart.hD06-Sep-20242.1 KiB10788

cfwl_themetext.cppD06-Sep-2024527 156

cfwl_themetext.hD06-Sep-2024965 3621

cfwl_widget.cppD06-Sep-202410.1 KiB354290

cfwl_widget.hD06-Sep-20246.5 KiB207167

cfwl_widgetmgr.cppD06-Sep-20247.3 KiB244195

cfwl_widgetmgr.hD06-Sep-20243.2 KiB10272

fwl_widgetdef.hD06-Sep-20245.6 KiB199184

fwl_widgethit.hD06-Sep-2024605 3627

ifwl_themeprovider.cppD06-Sep-20243.2 KiB9078

ifwl_themeprovider.hD06-Sep-20242.4 KiB6750

ifwl_widgetdelegate.hD06-Sep-2024831 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