Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
638 commits
Select commit Hold shift + click to select a range
2e8c317
Fix typos, mistakes, and bugs in the html widget.
Lightning11wins Aug 5, 2026
5c6ae11
Improve chart.js responsiveness.
Lightning11wins Aug 5, 2026
85a6b07
Fix multiscroll regression.
Lightning11wins Aug 5, 2026
466b5aa
Fix regressions in the formstatus widget.
Lightning11wins Aug 5, 2026
e9fcf15
Add suite of test apps.
Lightning11wins Aug 6, 2026
b6ee63a
Remove unnecessary README.md.
Lightning11wins Aug 6, 2026
1794605
Improve index code maintainability.
Lightning11wins Aug 6, 2026
3694367
Reorder links on index app.
Lightning11wins Aug 6, 2026
fba392a
Reorder child windows to make testing them easier.
Lightning11wins Aug 6, 2026
e33d6b6
Fix widgets that default to being inflexible causing the entire misc.…
Lightning11wins Aug 6, 2026
6204e32
Fix general typos.
Lightning11wins Aug 6, 2026
60e6807
Fix bugs in the calendar widget.
Lightning11wins Aug 6, 2026
0c1b4a7
Make test data more interesting.
Lightning11wins Aug 6, 2026
d110bf9
Make test data even more interesting.
Lightning11wins Aug 6, 2026
88e53af
Fix line charts with string data values failing to render.
Lightning11wins Aug 6, 2026
2237b4d
Remove dead code and legacy code.
Lightning11wins Aug 6, 2026
b6ec718
Remove dead code.
Lightning11wins Aug 7, 2026
3792aaf
Update htrGetBackground() to return 1 on a missing value instead of c…
Lightning11wins Aug 7, 2026
1f83155
Fix bugs in radio button widget and improve the app I used to test it.
Lightning11wins Aug 7, 2026
e3eed18
Fix bugs in the page widget.
Lightning11wins Aug 7, 2026
4d043fe
Fix a bug when focus moves from a focusable area to an unfocusable one.
Lightning11wins Aug 7, 2026
cb9691d
Fix formstatus allowing specified flexibilities when it cannot flex.
Lightning11wins Aug 7, 2026
e691532
Optimize setRelative() to skip rereading (forces a layout flush) when…
Lightning11wins Aug 7, 2026
46ac130
Optimize tables to cache expensive jQuery width results.
Lightning11wins Aug 7, 2026
d8bc811
Optimize tables by refactoring some logic.
Lightning11wins Aug 7, 2026
06f55cb
Add draggable columns to the test app.
Lightning11wins Aug 7, 2026
39c9810
Fix typos in textarea widget.
Lightning11wins Aug 10, 2026
697f408
Update testing nav to show the current page more clearly.
Lightning11wins Aug 10, 2026
3eb0e05
Remove outdated fudge logic.
Lightning11wins Aug 10, 2026
76613d2
Fix bugs in checkbox widget.
Lightning11wins Aug 10, 2026
850fb76
Fix bugs and mistakes in component-decl widget.
Lightning11wins Aug 10, 2026
6da1584
Fix declaration order issues in component-decl widget.
Lightning11wins Aug 10, 2026
211d17e
Fix formbar hardcoding invalid values for its formstatus widget.
Lightning11wins Aug 10, 2026
e926a05
Fix skill issue.
Lightning11wins Aug 10, 2026
09783a1
Improve error handling for dropdown widget c generation.
Lightning11wins Aug 11, 2026
0d4e224
Fix bugs and overlooked edge cases in dropdown widget.
Lightning11wins Aug 11, 2026
dcf0fa9
Update html type confusion caused by previous bad naming design choices.
Lightning11wins Aug 11, 2026
3dbd678
Fix DOM node leak in dropdown widget.
Lightning11wins Aug 11, 2026
03a56af
Update test apps to flex instead of being rigid for more comprehensiv…
Lightning11wins Aug 11, 2026
6bc2f4d
Fix flex clobbering in apos.c.
Lightning11wins Aug 11, 2026
7f2977a
Fix flex cap caused by assuming 100 was the max flex value.
Lightning11wins Aug 11, 2026
0bd33f9
Improve flex values in containers.app.
Lightning11wins Aug 11, 2026
4c90c85
Remove fl_x and fl_y because they don't have any meaning in the curre…
Lightning11wins Aug 11, 2026
ddaf470
Fix bad flex values that prevented widgets in layout.app from flexing…
Lightning11wins Aug 11, 2026
6f34c04
Fix bugs in layout testing app.
Lightning11wins Aug 11, 2026
526afb6
Depricate the hilight property in favor of highlight.
Lightning11wins Aug 11, 2026
786f673
Fix missing values in checkbox widget.
Lightning11wins Aug 11, 2026
8da9256
Fix dropdown text overflowing the widget due to previous clipping cha…
Lightning11wins Aug 11, 2026
ec91a47
Update dropdown widget to draw the pane border with CSS instead of HT…
Lightning11wins Aug 11, 2026
4f2cf99
Optimize dropdown widget to resize the pane in place instead of rebui…
Lightning11wins Aug 11, 2026
7d1aa61
Improve dropdown widget error messages.
Lightning11wins Aug 11, 2026
3e10f5a
Add helpful comments to areas where Seth's comments sound confused.
Lightning11wins Aug 12, 2026
86b0de0
Clean up variable naming in the widow widget.
Lightning11wins Aug 12, 2026
3a400df
Fix typos and bugs for the childwindow widget.
Lightning11wins Aug 12, 2026
61cc818
Fix childwindow titlebar not clipping long titles (with testing).
Lightning11wins Aug 12, 2026
a7c8ead
Improve clarity for osrc widget.
Lightning11wins Aug 12, 2026
dbec136
Fix outdated info in driver authoring docs.
Lightning11wins Aug 13, 2026
7b6f4ed
Remove htrAddEvent(), htrAddAction(), and htrAddParam().
Lightning11wins Aug 14, 2026
cb4eeb8
Remove htrAddEventHandler() dead code/docs left over from a previous …
Lightning11wins Aug 14, 2026
55c0ee2
Remove dead data structures.
Lightning11wins Aug 14, 2026
d62ae71
Remove formbar widget.
Lightning11wins Aug 14, 2026
8316836
Remove dead sanity check in `apos.c`.
Lightning11wins Aug 14, 2026
219794e
Remove documentation of "Future Functionality" that is now implemente…
Lightning11wins Aug 14, 2026
1ad666f
Rewrite the description of resizeable windows.
Lightning11wins Aug 14, 2026
5c8639f
Add organization to the Future Functionality section of Auto-Position…
Lightning11wins Aug 14, 2026
826536c
Add proposal for positional flex attributes (fl_x and fl_y) as reques…
Lightning11wins Aug 14, 2026
268bc15
Merge branch 'master' into apos_autoscale9-slim5
Lightning11wins Aug 17, 2026
828d7f5
Fix top-level centered window detection only working at the design re…
Lightning11wins Aug 17, 2026
c36105d
Update page x/y setters/getters.
Lightning11wins Aug 17, 2026
2aea701
Add a flag storing when apos.c detects a centered window.
Lightning11wins Aug 17, 2026
892c12a
Optimize wgtrGetGeom().
Lightning11wins Aug 17, 2026
8d36013
Improve modal mask-layer resize performance (JS was too slow).
Lightning11wins Aug 17, 2026
c88e871
Overhaul popup resize logic.
Lightning11wins Aug 17, 2026
c1fed1d
Fix window titlebar stealing pointer events.
Lightning11wins Aug 17, 2026
4778ddc
Fix popup window menus being pushed outside the viewport.
Lightning11wins Aug 17, 2026
7f63ab2
Fix mistakes in the window widget.
Lightning11wins Aug 17, 2026
6bb56d7
Fix widget borders overflowing their allocated space.
Lightning11wins Aug 17, 2026
d309df1
Remove server placement mode and use center or absolute instead.
Lightning11wins Aug 17, 2026
37da71f
Modify errors to ignore error code -1.
Lightning11wins Aug 17, 2026
8ec0353
Rename library functions to use camelCase instead of snake_case.
Lightning11wins Aug 17, 2026
836fefc
Rewrite printErrInternal() error message generation to support combin…
Lightning11wins Aug 18, 2026
7a12147
Remove dead code.
Lightning11wins Aug 18, 2026
cf33447
Add an error when a childwindow widget is specified too small to be r…
Lightning11wins Aug 18, 2026
1b396cb
Fix typos in the childwindow widget.
Lightning11wins Aug 18, 2026
b014c8b
Fix windows affected by the point action stranding their points.
Lightning11wins Aug 18, 2026
e7627be
Fix open event firing while the open is still happening.
Lightning11wins Aug 18, 2026
2d75c7e
Fix clipping issues.
Lightning11wins Aug 18, 2026
6dd7d14
Improve confusing code.
Lightning11wins Aug 18, 2026
74e95cd
Fix a 17-year-old typo.
Lightning11wins Aug 18, 2026
1ee556b
Add warning when using the point acton on a window that was opened po…
Lightning11wins Aug 18, 2026
2eaf347
Reformat flag macros to use better code style.
Lightning11wins Aug 19, 2026
797f455
Fix textarea widget rendering child HTML inside a <textarea> tag, bre…
Lightning11wins Aug 20, 2026
630436d
Add WGTR_F_HTML_CONTAINER widget flag.
Lightning11wins Aug 20, 2026
b974fdf
Remove dead macors.
Lightning11wins Aug 20, 2026
c8600fc
Clean up macro definitions.
Lightning11wins Aug 20, 2026
0922662
Remove duplicate container size getters.
Lightning11wins Aug 20, 2026
cabf547
Fix error handling in htdrv_component.c.
Lightning11wins Aug 20, 2026
ea710e8
Reflow macro spacing to provide more space for macro names.
Lightning11wins Aug 20, 2026
376cde8
Rename WGTR_F_HTML_CONTAINER to WGTR_F_VISUAL_CONTAINER.
Lightning11wins Aug 20, 2026
1d1497f
Fix nav bar breaking in autoscale test apps if index.app was not expl…
Lightning11wins Aug 20, 2026
7bbf061
Fix broken adjacent widget spacer test.
Lightning11wins Aug 20, 2026
31f0622
Rewrite aposIsSpacer() to be more readable.
Lightning11wins Aug 20, 2026
95c20c6
Fix an off-by-two error.
Lightning11wins Aug 20, 2026
b6b5acf
Trim test app comments to improve clarity.
Lightning11wins Aug 20, 2026
c4c99ef
Rewrite htrGetBoolean() to be more readable and to warn when unrecogn…
Lightning11wins Aug 20, 2026
8897bf5
Replace widget code to manually parse booleans with calls to htrGetBo…
Lightning11wins Aug 20, 2026
63688d4
Fix component param writing edge cases.
Lightning11wins Aug 20, 2026
67ae962
Clean up confusing and buggy error handling in htrAddWgtrCtrLinkage_v…
Lightning11wins Aug 20, 2026
037d02e
Fix mistakes and clean up dead code in the component and componentdec…
Lightning11wins Aug 20, 2026
78978d0
Clean up dead wgtrMoveChildren() function.
Lightning11wins Aug 20, 2026
50b18fa
Remove incorrect htrAddWgtrCtrLinkage() calls in component widget.
Lightning11wins Aug 20, 2026
21e51bc
Fix the component container div forcing a z-index on children even if…
Lightning11wins Aug 20, 2026
ab9cb6a
Revert "Merge branch 'dups' into apos_autoscale9-slim5"
Lightning11wins Aug 21, 2026
a02c834
Revert "Merge remote-tracking branch 'refs/remotes/origin/dups' into …
Lightning11wins Aug 21, 2026
4c46363
Clean up leftover code.
Lightning11wins Aug 21, 2026
7a9cb9f
Improve comment clarity.
Lightning11wins Aug 21, 2026
22df3d4
Merge branch 'add-utils' into apos_autoscale9-slim5
Lightning11wins Aug 21, 2026
84b6e1f
Guard clamp.
Lightning11wins Aug 21, 2026
0ef0041
Merge branch 'add-utils' into apos_autoscale9-slim5
Lightning11wins Aug 21, 2026
5e2e3cd
Update util usage: checkPtr().
Lightning11wins Aug 21, 2026
c555828
Update util usage: checkNeg().
Lightning11wins Aug 21, 2026
310f5e6
Update util usage: include range.h.
Lightning11wins Aug 21, 2026
e0543d4
Update util usage: include check.h.
Lightning11wins Aug 21, 2026
9bdd14a
Fix math library not being included at compile time.
Lightning11wins Aug 21, 2026
85d55db
Update generated files.
Lightning11wins Aug 21, 2026
ab51c13
Merge branch 'add-utils' into apos_autoscale9-slim5
Lightning11wins Aug 21, 2026
48b07d7
Update generated files from rebuild.
Lightning11wins Aug 21, 2026
15dbc23
Remove dead code and fix typos in the menu widget.
Lightning11wins Aug 21, 2026
7c7d053
Add a ton of error handling to the menu widget.
Lightning11wins Aug 21, 2026
f106cb5
Update menu widget to use box-sizing.
Lightning11wins Aug 21, 2026
0db6ca3
Fix duplicate-id problem caused by replacing names with ids.
Lightning11wins Aug 21, 2026
64a5f3a
Estimate menu auto-height from its rows.
Lightning11wins Aug 21, 2026
5d09141
Make general improvements to the menu widget.
Lightning11wins Aug 21, 2026
e138d62
Fix menu widget highlights not resizing.
Lightning11wins Aug 21, 2026
f3382dd
Document dependencies.
Lightning11wins Aug 21, 2026
b6b946f
Add strtcatf() for formatted truncating writes to a buffer.
Lightning11wins Aug 21, 2026
bfe1ccd
Add strtcatf_va() variation of strtcatf().
Lightning11wins Aug 21, 2026
9edbd60
Rewrite printErrInternal() using strtcatf(), fixing multiple known is…
Lightning11wins Aug 21, 2026
a44a923
Merge branch 'master' into add-utils
Lightning11wins Aug 21, 2026
84f7d99
Merge branch 'master' into add-utils
Lightning11wins Aug 21, 2026
a492cc2
Reduce error buffer size.
Lightning11wins Aug 21, 2026
3c71698
Update generated files after rebuild.
Lightning11wins Aug 21, 2026
04cb855
Improve comments and code clarity around the strtcatf function family.
Lightning11wins Aug 21, 2026
eb61ac8
Fix out-of-bounds write.
Lightning11wins Aug 21, 2026
a441552
Add tests for the strtcatf function family.
Lightning11wins Aug 21, 2026
527c4a9
Improve testcase variability.
Lightning11wins Aug 21, 2026
20af5c0
Merge branch 'master' into add-utils
Lightning11wins Aug 24, 2026
8902803
Merge branch 'master' into apos_autoscale9-slim5
Lightning11wins Aug 24, 2026
1b084f7
Fix getTime() failure poisoning total.
Lightning11wins Aug 24, 2026
d2f3269
Merge branch 'master' into qprintf-rewrite2
Lightning11wins Aug 24, 2026
166bb3c
Clarify docs for soft and hard limits.
Lightning11wins Aug 24, 2026
924a10d
Clarify comment.
Lightning11wins Aug 24, 2026
aaa7a43
Add a warning when an invalid specifier is encountered.
Lightning11wins Aug 24, 2026
d0010c2
Fix a noisy test that failed by lockup due to triggering this warning…
Lightning11wins Aug 24, 2026
ed5a3a7
Fix the only instance of the invalid specifier warning I that found i…
Lightning11wins Aug 24, 2026
11dc82f
Simplify scope.
Lightning11wins Aug 25, 2026
90c132d
Refactor non-error goto.
Lightning11wins Aug 25, 2026
9b32806
Add error handling to snprintf() calls.
Lightning11wins Aug 25, 2026
85df4c8
Fix docs for qpf_internal_itoa().
Lightning11wins Aug 25, 2026
f2f5283
Improve comments.
Lightning11wins Aug 25, 2026
24ce080
Fix a failed grow detection.
Lightning11wins Aug 25, 2026
12ae62f
Add a new test case for writing large numbers with qprintf.
Lightning11wins Aug 25, 2026
687eeeb
Improve style.
Lightning11wins Aug 25, 2026
7f72b23
Fix space needed logic.
Lightning11wins Aug 25, 2026
01fe346
Fix typo.
Lightning11wins Aug 25, 2026
7e0ceae
Fix qprintf() seg fault on null grow_fn.
Lightning11wins Aug 25, 2026
1becf81
Fix closing quote overwriting previous output data.
Lightning11wins Aug 25, 2026
ace36b3
Fix %% and %& not being counted when they didn't fit into the array.
Lightning11wins Aug 25, 2026
d52c300
Fix incorrect doc comments.
Lightning11wins Aug 25, 2026
eec415a
Improve parameter names.
Lightning11wins Aug 25, 2026
862dc19
Fix base64 encode/decode mistakes.
Lightning11wins Aug 25, 2026
cbce757
Fix comments.
Lightning11wins Aug 25, 2026
7a4ca88
Add regression tests for fixed bugs.
Lightning11wins Aug 25, 2026
baa1177
Merge remote-tracking branch 'origin/fix-widget-docs' into apos_autos…
Lightning11wins Aug 26, 2026
60982a6
Add info to widgets.xml.
Lightning11wins Aug 26, 2026
c520538
Document that the ni tag means not implemented.
Lightning11wins Aug 26, 2026
fe656a4
Allow HTML elements in descriptions.
Lightning11wins Aug 26, 2026
d68b138
Use HTML elements to improve the description of the style property.
Lightning11wins Aug 26, 2026
256862a
Add widget docs for the terminal widget.
Lightning11wins Aug 26, 2026
7e0facf
Fix spelling and grammar errors in widgets.xml.
Lightning11wins Aug 27, 2026
b6cc1cd
Fix incorrect docs for DiscardClients.
Lightning11wins Aug 27, 2026
443c779
Add not implemented tags to documented features that have not yet bee…
Lightning11wins Aug 27, 2026
70ed7c9
Add docs for component decl widget events and actions.
Lightning11wins Aug 27, 2026
0e3590f
Add docs for table widget events.
Lightning11wins Aug 27, 2026
198f3ff
Add docs for osrc widget events and actions.
Lightning11wins Aug 27, 2026
d7a5c29
Fix incorrect or missing action param docs.
Lightning11wins Aug 27, 2026
db06353
Trim docs.
Lightning11wins Aug 27, 2026
5ebb29e
Fix mistakes in docs.
Lightning11wins Aug 27, 2026
817d707
Fix mistakes button widget.
Lightning11wins Aug 27, 2026
4bc11dc
Remove dead code.
Lightning11wins Aug 27, 2026
861c46c
Fix spacing.
Lightning11wins Aug 27, 2026
1718111
Fix missing layout.
Lightning11wins Aug 27, 2026
606b798
Fix button content not centering correctly.
Lightning11wins Aug 27, 2026
b6736a4
Emit click CSS for all button types.
Lightning11wins Aug 27, 2026
7aff173
Remove dead code, left over from the JS button annimations.
Lightning11wins Aug 27, 2026
d796364
Remove dead JS button state.
Lightning11wins Aug 27, 2026
fa90d43
Remove dead legacy JS button code.
Lightning11wins Aug 27, 2026
d98ef99
Remove dead button params passed from C to JS.
Lightning11wins Aug 27, 2026
884096b
Remove dead JS button function.
Lightning11wins Aug 27, 2026
80b9f79
Fix flex calculations for buttons.
Lightning11wins Aug 27, 2026
abd255f
Fix button widgets with images shifting 1px on hover.
Lightning11wins Aug 27, 2026
af68ff0
Fix button layout CSS.
Lightning11wins Aug 27, 2026
a70bc05
Fix button image alt text.
Lightning11wins Aug 27, 2026
6d2ae99
Fix uninitialized strings caused by default values.
Lightning11wins Aug 27, 2026
8562a9e
Revert changes that were commited by Claude when they should not have…
Lightning11wins Aug 27, 2026
237d959
Fix CSS breaking when buttons are dynamically enabled or disabled.
Lightning11wins Aug 27, 2026
bced8e5
Fix missing cursor styles for some types of button widget.
Lightning11wins Aug 27, 2026
40c1b16
Fix enabled/disabled issues for all button types.
Lightning11wins Aug 27, 2026
9af4b6b
Fix tristate image/textoverimage buttons.
Lightning11wins Aug 27, 2026
998286a
Simplify button code.
Lightning11wins Aug 27, 2026
4e25d6b
Improve readability.
Lightning11wins Aug 27, 2026
c730c59
Rewrite button widget to replace textbutton and imagebutton.
Lightning11wins Aug 27, 2026
c60256b
Reformat includes for all widget and html drivers, and related files.
Lightning11wins Aug 28, 2026
99f6bf6
Fix missing copyright info for the button widget.
Lightning11wins Aug 28, 2026
a13001a
Improve error handling logic and fix a memory leak.
Lightning11wins Aug 28, 2026
1390006
Fix mistakes across the project.
Lightning11wins Aug 28, 2026
1b15388
Add missing insets to table widget.
Lightning11wins Aug 28, 2026
0cf9e66
Modify treeview widgets to write their rows within their HTML container.
Lightning11wins Aug 28, 2026
610011e
Fix missing css issue.
Lightning11wins Aug 28, 2026
f5af41d
Fix the client-side tab location calculation stacking the offset for …
Lightning11wins Aug 28, 2026
6fd482b
Fix tab background image alignment a test app.
Lightning11wins Aug 28, 2026
7e4fe4a
Fix scrollpane press-and-hold auto-repeat functionality.
Lightning11wins Aug 28, 2026
5648016
Fix bug where image preserve aspect ratio crops images.
Lightning11wins Aug 28, 2026
04a2a65
Fix and simplify table flex heights.
Lightning11wins Aug 28, 2026
975efad
Fix tool tip autoscaling.
Lightning11wins Aug 28, 2026
e652988
Add guard clauses for rare edge cases in the tab widget.
Lightning11wins Aug 28, 2026
68e1795
Fix mistakes in mssError() calls.
Lightning11wins Aug 28, 2026
1685af2
Fix style.
Lightning11wins Aug 28, 2026
c90935d
Merge branch 'master' into apos_autoscale9-slim5
Lightning11wins Aug 28, 2026
75bbc93
Update nht_i_ErrorHandler() to emit the new styled error page.
Lightning11wins Aug 28, 2026
d3cad33
Merge branch 'master' into apos_autoscale9-slim5
Lightning11wins Aug 28, 2026
5392469
Clean up after merge conflict.
Lightning11wins Aug 28, 2026
2ef1fd5
Make the imagebutton and textbuton deprecations more explicit.
Lightning11wins Aug 31, 2026
ce035ee
Add docs for the table widget's open and close events.
Lightning11wins Aug 31, 2026
9dc10dc
Merge branch 'master' into apos_autoscale9-slim5
Lightning11wins Aug 31, 2026
3d8087b
Fix tab widget docs referring to widget/tabpage as any.
Lightning11wins Aug 31, 2026
b049ee8
Document widget/autolayoutspacer.
Lightning11wins Aug 31, 2026
2250100
Fix spacing in widget docs.
Lightning11wins Aug 31, 2026
556b55e
Reduce osrc doc errors.
Lightning11wins Aug 31, 2026
0987cf3
Add comment about doc reports.
Lightning11wins Aug 31, 2026
b9c9f6d
Merge branch 'master' into add-utils
Lightning11wins Aug 31, 2026
8fdf54a
Trim redundant docs.
Lightning11wins Sep 2, 2026
5522e0e
Merge remote-tracking branch 'origin/add-utils' into apos_autoscale9-…
Lightning11wins Sep 2, 2026
ad3924b
Index qprintf() specifier names explicitly and renumber the filters.
Lightning11wins Sep 3, 2026
1c837b4
Add %ULL to qprintf().
Lightning11wins Sep 3, 2026
3ee2b6f
Add %BOOL to qprintf().
Lightning11wins Sep 3, 2026
38e998b
Merge branch 'qprintf-rewrite2' into apos_autoscale9-slim5
Lightning11wins Sep 3, 2026
7b351e4
Update code to use %BOOL.
Lightning11wins Sep 3, 2026
b33c9c7
Merge branch 'master' into apos_autoscale9-slim5
Lightning11wins Sep 3, 2026
ebbfebd
Merge branch 'master' into apos_autoscale9-slim5
Lightning11wins Sep 4, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion centrallix-dev-tools/cx.vim
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ syn keyword cxKeywords show_branches show_diagnostics show_root show_root_branch
syn keyword cxKeywords tab_revealed_only tab_width target target_key_1 target_key_2 target_key_3 target_key_4 target_key_5 text textcolor textcolorhighlight
syn keyword cxKeywords textcolornew title titlebar titlecolor tooltip toplevel tristate type use_having_clause use_3d_lines valign value visible widget_template
syn keyword cxKeywords widget_class width windowsize x y
syn keyword cxKeywords param_name fl_height fl_y fl_x display_for min_rowheight max_rowheight initial_selection demand_scrollbar overlap_scrollbar
syn keyword cxKeywords param_name fl_height display_for min_rowheight max_rowheight initial_selection demand_scrollbar overlap_scrollbar
syn keyword cxKeywords row_border_radius border_radius


Expand Down
2,634 changes: 1,451 additions & 1,183 deletions centrallix-doc/Widgets/widgets.xml

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions centrallix-lib/Makefile.in
Original file line number Diff line number Diff line change
Expand Up @@ -63,10 +63,10 @@ CFLAGS=@CFLAGS@ @DEFS@ -Iinclude -DCXLIB_INTERNAL -DNM_USE_SYSMALLOC -Wall $(PRO
MTCFLAGS=@CFLAGS@ @DEFS@ -Iinclude -DCXLIB_INTERNAL -DNM_USE_SYSMALLOC -Wall $(PROFILE) $(COVERAGE) -g -O0
TCFLAGS=$(patsubst -DNDEBUG,,$(CFLAGS))

XSTATICFILES=mtask.o mtlexer.o memstr.o xarray.o xhash.o xstring.o mtsession.o newmalloc.o xhashqueue.o bdqs_transport.o xhandle.o xringqueue.o cxsec.o smmalloc.o qprintf.o strtcpy.o util.o
XSTATICFILES=mtask.o mtlexer.o memstr.o xarray.o xhash.o xstring.o mtsession.o newmalloc.o xhashqueue.o bdqs_transport.o xhandle.o xringqueue.o cxsec.o smmalloc.o qprintf.o strtcpy.o util.o timer.o check.o range.o
STATICFILES=$(patsubst %,src/%,$(XSTATICFILES))

XDYNAMICFILES=mtask.lo mtlexer.lo memstr.lo xarray.lo xhash.lo xstring.lo mtsession.lo newmalloc.lo xhashqueue.lo bdqs_transport.lo xhandle.lo xringqueue.lo cxsec.lo smmalloc.lo qprintf.lo strtcpy.lo util.lo
XDYNAMICFILES=mtask.lo mtlexer.lo memstr.lo xarray.lo xhash.lo xstring.lo mtsession.lo newmalloc.lo xhashqueue.lo bdqs_transport.lo xhandle.lo xringqueue.lo cxsec.lo smmalloc.lo qprintf.lo strtcpy.lo util.lo timer.lo check.lo range.lo
DYNAMICFILES=$(patsubst %,src/%,$(XDYNAMICFILES))

INCLUDEFILES:=$(wildcard include/*.h)
Expand Down
2 changes: 1 addition & 1 deletion centrallix-lib/aclocal.m4
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ AC_DEFUN(CHECK_BUILTIN_EXPECT,
AC_DEFINE([HAVE_BUILTIN_EXPECT], [1], [Define if __builtin_expect is available])
AC_MSG_RESULT([yes])
],
[AC_MSG_RESULT([no])]
[AC_MSG_RESULT([no])],
)
]
)
Expand Down
40 changes: 39 additions & 1 deletion centrallix-lib/configure
Original file line number Diff line number Diff line change
Expand Up @@ -3355,6 +3355,45 @@ _ACEOF

fi

{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -lm" >&5
$as_echo_n "checking for main in -lm... " >&6; }
if ${ac_cv_lib_m_main+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lm $LIBS"
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */


int
main ()
{
return main ();
;
return 0;
}
_ACEOF
if ac_fn_c_try_link "$LINENO"; then :
ac_cv_lib_m_main=yes
else
ac_cv_lib_m_main=no
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext conftest.$ac_ext
LIBS=$ac_check_lib_save_LIBS
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_m_main" >&5
$as_echo "$ac_cv_lib_m_main" >&6; }
if test "x$ac_cv_lib_m_main" = xyes; then :
cat >>confdefs.h <<_ACEOF
#define HAVE_LIBM 1
_ACEOF

LIBS="-lm $LIBS"

fi


ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
Expand Down Expand Up @@ -4108,7 +4147,6 @@ $as_echo "yes" >&6; }
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }

fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext

Expand Down
1 change: 1 addition & 0 deletions centrallix-lib/configure.ac
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ dnl Checks for libraries.
dnl Replace `main' with a function in -lz:
AC_CHECK_LIB(z, main)
AC_CHECK_LIB(crypt, main)
AC_CHECK_LIB(m, main)

dnl Checks for header files.
AC_HEADER_STDC
Expand Down
100 changes: 100 additions & 0 deletions centrallix-lib/include/check.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,100 @@
#ifndef CHECK_H
#define CHECK_H

/************************************************************************/
/* Centrallix Application Server System */
/* Centrallix Base Library */
/* */
/* Copyright (C) 1998-2026 LightSys Technology Services, Inc. */
/* */
/* You may use these files and this library under the terms of the */
/* GNU Lesser General Public License, Version 2.1, contained in the */
/* included file "COPYING". */
/* */
/* Module: check.c, check.h */
/* Author: Israel Fuller */
/* Date: October 13, 2025 */
/* Description: A utility to help with error checking on function */
/* return values, especially for library functions. */
/************************************************************************/

#include <errno.h>
#include <math.h>
#include <string.h>

#include "expect.h"

/** File name macro, expanding functionality like __FILE__ and __LINE__. **/
#define __FILENAME__ \
({ \
const char* last_directory = strrchr(__FILE__, '/'); \
((last_directory != NULL) ? last_directory + 1 : __FILE__); \
})

/** Internal error printer (forward declaration). **/
void printErrInternal(const int error_code, const char* c_str, const char* file_name, const int line_number);

#define printErr(error_code, c_str) printErrInternal(error_code, (c_str), __FILE__, __LINE__)
#define printFail(c_str) { errno = 0; printErr(-1, (c_str)); }

/*** Ensures that developer diagnostics are printed if the result of the
*** passed function call is not zero. Not intended for user errors.
***
*** @param result The expression to check. The text of this expression is
*** included in the error message if an error occurs.
*** @returns The result of the checked expression.
***/
#define check(result) \
({ \
errno = 0; /* Reset errno to prevent confusion. */ \
int _r = (result); \
if (UNLIKELY(_r != 0)) printErr(_r, #result" failed"); \
_r; \
})

/*** Ensures that developer diagnostics are printed if the result of the
*** passed function call is negative. Not intended for user errors.
***
*** @param result The expression to check. The text of this expression is
*** included in the error message if an error occurs.
*** @returns The result of the checked expression.
***/
#define checkNeg(result) \
({ \
errno = 0; /* Reset errno to prevent confusion. */ \
int _r = (result); \
if (UNLIKELY(_r < 0)) printErr(_r, #result" failed"); \
_r; \
})

/*** Ensures that developer diagnostics are printed if the result of the
*** passed function call is a NAN double. Not intended for user errors.
***
*** @param result The expression to check. The text of this expression is
*** included in the error message if an error occurs.
*** @returns The result of the checked expression.
***/
#define checkDouble(result) \
({ \
errno = 0; /* Reset errno to prevent confusion. */ \
double _r = (result); \
if (UNLIKELY(isnan(_r))) printErr(-1, #result" failed"); \
_r; \
})

/*** Ensures that developer diagnostics are printed if the result of the
*** passed function call is a NULL pointer. Not intended for user errors.
***
*** @param result The expression to check. The text of this expression is
*** included in the error message if an error occurs.
*** @returns The result of the checked expression.
***/
#define checkPtr(result) \
({ \
errno = 0; /* Reset errno to prevent confusion. */ \
void* _r = (result); \
if (UNLIKELY(_r == NULL)) printErr(-1, #result" failed"); \
_r; \
})

#endif /* CHECK_H */
3 changes: 3 additions & 0 deletions centrallix-lib/include/cxlibconfig-all.h.in
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,9 @@
/* Define to 1 if you have the `crypt' library (-lcrypt). */
#undef HAVE_LIBCRYPT

/* Define to 1 if you have the `m' library (-lm). */
#undef HAVE_LIBM

/* Define to 1 if you have the `z' library (-lz). */
#undef HAVE_LIBZ

Expand Down
5 changes: 0 additions & 5 deletions centrallix-lib/include/cxlibconfig-internal.h.in
Original file line number Diff line number Diff line change
@@ -1,10 +1,5 @@
/* include/cxlibconfig-internal.h.in. Generated from configure.ac by autoheader. */

/*** cxlibconfig-internal.h.in lists defines that are used by centrallix-lib
*** internally and will not be needed in other modules. For external
*** usecases, see cxlibconfig.h.in.
***/

/* Define to the address where bug reports for this package should be sent. */
#undef PACKAGE_BUGREPORT

Expand Down
9 changes: 0 additions & 9 deletions centrallix-lib/include/cxlibconfig.h.in
Original file line number Diff line number Diff line change
@@ -1,11 +1,5 @@
/* include/cxlibconfig.h.in. Generated from configure.ac by autoheader. */

/*** cxlibconfig-h.in lists defines that should be availabe to anyone
*** using centrallix-lib. For example, a define used in an external .h
*** file should be written here so that the .h file can include it even
*** if it is used in another project.
***/

/* Define to 1 if you have the `endservent' function. */
#undef HAVE_ENDSERVENT

Expand Down Expand Up @@ -39,9 +33,6 @@
/* Define to 1 if you have the <stdlib.h> header file. */
#undef HAVE_STDLIB_H

/* Define to 1 if you have the `__builtin_expect' function. */
#undef HAVE_BUILTIN_EXPECT

/* Define to 1 if you have the `strdup' function. */
#undef HAVE_STRDUP

Expand Down
27 changes: 10 additions & 17 deletions centrallix-lib/include/expect.h
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
/* GNU Lesser General Public License, Version 2.1, contained in the */
/* included file "COPYING". */
/* */
/* Module: Expect Branch Optimization Module (expect.h) */
/* Module: Expect Branch Optimization Module (mtask.c, mtask.h) */
/* Author: Israel Fuller */
/* Date: February 27th, 2026 */
/* */
Expand All @@ -23,26 +23,19 @@
/* true, UNLIKELY() indicates it is likely to be false. */
/************************************************************************/

#ifdef HAVE_CONFIG_H
#ifdef CXLIB_INTERNAL
#include "cxlibconfig.h"
#else
#include "cxlib/cxlibconfig.h"
#endif
#endif

/** Define macros for signalling the more likely branch to the compiler. **/
#ifdef HAVE_BUILTIN_EXPECT
/** Use the GCC __builtin_expect() function for optimization. **/
/** Note: We use !!(x) which normalizes to 0 or 1 to help the compiler. **/
#define LIKELY(x) (__builtin_expect(!!(x), 1))
#define UNLIKELY(x) (__builtin_expect(!!(x), 0))
/** Use the GCC __builtin_expect() function for optimization. **/
/** Note: We use !!(x) which normalizes to 0 or 1 to help the compiler. **/
#define LIKELY(x) (__builtin_expect(!!(x), 1))
#define UNLIKELY(x) (__builtin_expect(!!(x), 0))
#else
/*** Fallback: Define pass through functions to support compilers that don't
*** have this feature.
***/
#define LIKELY(x) (!!(x))
#define UNLIKELY(x) (!!(x))
/*** Fallback: Define pass through functions to support compilers that don't
*** have this feature.
***/
#define LIKELY(x) (!!(x))
#define UNLIKELY(x) (!!(x))
#endif

#endif
Loading