Commit graph

64 commits

Author SHA1 Message Date
Lephenixnoir
7b8070f02c
jevent: conveniences for testing for keys 2024-09-04 14:45:27 +02:00
Lephenixnoir
f32dcc69ce
jwidget: use dclear() fror background when widget is full screen 2024-09-04 08:57:58 +02:00
Lephenixnoir
e12a58c1f0
jfkeys: parameterize width to better fit on fx-CP display 2024-09-04 08:56:04 +02:00
Lephenixnoir
7f2131d6a0
jscene: add autopaint option
This handles JSCENE_PAINT events in the usual manner. This requires that
no painting other than the scene is desired, which is generally the
case.
2024-09-04 08:55:56 +02:00
Lephenixnoir
7587dfa17c
jlist: add user data pointer
This allows the info and paint functions to access user data associated
with the list without going through globals.
2024-09-04 08:51:41 +02:00
Lephenixnoir
12b29f8223
jlist: autofill info structure to 0 before calling info function
This avoids having to specify all fields in the info function.
2024-09-04 08:50:38 +02:00
Lephenixnoir
ba7b0a02d0
jlist, jscrolledlist: make parent the last constructor argument
To stay in line with constructors for other widgets.
2024-09-04 08:49:52 +02:00
Lephenixnoir
3488c6515a
jlist: add background/inversion selection feature 2024-09-04 08:46:26 +02:00
Lephenixnoir
0c8371edce
jscene: add missing jscene_set_poweroff function 2024-09-03 17:00:53 +02:00
Lephenixnoir
aa736bd12a
juic: intended implementation of record ctors, working for now 2024-08-28 19:55:38 +02:00
Lephenixnoir
5f198ff6b0
juic: small improvements to record ctors, not working yet 2024-08-28 15:38:52 +02:00
Lephenixnoir
ce39929bb4
juic: fix all errors raised by mypy 2024-08-28 14:59:55 +02:00
Lephenixnoir
4579acc0f4
juic: add some record processing, start checking with mypy 2024-08-28 14:59:55 +02:00
Lephenixnoir
e79ba0056b
juic: add basic unit tests to consolidate
This way when I get the record constructors right (which I think I have
in my mind now) I can keep around non-regression tests.
2024-08-28 10:43:23 +02:00
Lephenixnoir
24f3e14061
juic: WIP 2024-08-28 08:52:07 +02:00
Lephenixnoir
550c08e200
jscene: atomic queue access for interrupt-safety 2024-08-28 08:39:09 +02:00
Lephenixnoir
5e2488cdf4
jframe: add missing child check in poly_render 2024-08-17 17:43:17 +02:00
Lephenixnoir
5a885b541f
enable LTO 2024-05-26 18:18:39 +02:00
Lephenixnoir
5b092a5a4e
enable the fx-CP build 2024-05-26 18:18:31 +02:00
Lephenixnoir
e324f9a3a2
don't use FX9860G/FXCG50 and slightly more unified APIs
We still have a few platform-specific occurrences that I'll want to get
rid of in the future. This should ultimately leave me with only one
version of the library (but this also precludes the use of macros like
DWIDTH/DHEIGHT which will require further changes).
2024-03-24 11:05:43 +01:00
Lephenixnoir
0e5ccf4cc3
jinput: add keymap customization function 2024-03-17 19:09:20 +01:00
Lephenixnoir
bea113f09e
jfileselect: visualize errors 2024-02-04 19:59:45 +01:00
Lephenixnoir
ef71bc11c0
jscene: poweroff upon SHIFT+AC/ON 2024-01-16 11:43:23 +01:00
Lephenixnoir
4c44b3e413
jfileselect: improve behavior for empty listings 2024-01-04 19:22:45 +01:00
Lephenixnoir
d9c18117c5
bump version to 1.3.0 2023-04-10 14:19:54 +02:00
Lephenixnoir
a84b0adb3a
jlist: fix jlist_clear() 2022-12-02 09:56:33 +01:00
Lephenixnoir
f5d6fb2e87
jscrolledlist: hack to allow scroll before re-layout 2022-12-01 23:59:31 +01:00
Lephenixnoir
40ffe54250
jfkeys: fix key levels not working at all 2022-12-01 11:00:41 +01:00
Lephenixnoir
beeb0c0724
jlist, jscrolledlist: add versatile paintable list widgets 2022-12-01 11:00:27 +01:00
Lephenixnoir
51fbf2f582
jframe: new widget that adds scrolling to a large child (basics) 2022-11-20 14:56:42 +01:00
Lephenixnoir
950c5b7152
jwidget: add a per-widget clipping setting 2022-11-19 23:42:38 +01:00
Lephenixnoir
67219834be
jscene: honor the getkey feature function in jscene_run() 2022-11-19 18:58:19 +01:00
Lephenixnoir
2e15bb8c96
jscene: fix delivery of focus change events 2022-11-19 18:57:36 +01:00
Lephenixnoir
5b591a6fb4
jinput: fix out-of-bounds bug in weird cursor positions 2022-11-19 18:53:58 +01:00
Lephenixnoir
7c0e8257f7
jevent: add generic integer data option in events 2022-11-06 19:51:28 +01:00
Lephenixnoir
cfeba2695c
jfileselect: add a scrollbar option (enabled by default) 2022-11-05 20:58:34 +01:00
Lephenixnoir
fd9191cc43
jfileselect: friendlier fx-9860G defaults 2022-11-05 19:06:33 +01:00
Lephenixnoir
a588c24f59
jfileselect: add a programmable filter 2022-11-05 18:50:40 +01:00
Lephenixnoir
34ee43d67f
jscene: update for extra parameters in keydev_read() 2022-11-04 11:10:21 +01:00
Lephenixnoir
b0195af198
jfkeys: add color and font parameters 2022-08-29 14:57:18 +02:00
Lephenixnoir
577e9ae20c
cmake: install the fxSDK sysroot 2022-08-21 17:37:45 +02:00
Lephenixnoir
43ca998a14
bump version to 1.2.0 2022-06-25 00:10:56 +01:00
Lephenixnoir
6464074c12
jscene: add an option to control main menu manually 2022-06-24 19:28:44 +01:00
Lephenixnoir
32ef1536d7
jfileselect: add a "save as" option 2022-06-24 00:38:05 +01:00
Lephenixnoir
699576eb33
jwidget: add a jwidget_set_borders() function 2022-06-23 19:42:37 +01:00
Lephenixnoir
ee98be1cc1
jwidget: fix bad display of border of size 0
This is caused by drect() flipping arguments in the order is incorrect,
so x2 < x1 gives you a rectangle instead of nothing.
2022-06-21 09:22:49 +01:00
Lephenixnoir
7ebc3b802c
jfkeys: fix fkeys not updating after changing text/image 2022-06-21 09:19:10 +01:00
Lephenixnoir
11868d85ee
jwidget: fix floating widgets not laying themselves out 2022-06-20 01:30:44 +01:00
Lephenixnoir
c90b3f1fb2
jwidget: fix background overwriting 1 pixel in each direction 2022-06-20 01:17:31 +01:00
Lephenixnoir
9a70a6398e
jfileselect: show file size + sort folders first 2022-06-20 00:07:18 +01:00