toaruos/lib
K. Lange 2f67ed17ae yutani: Don't use __new__ to build wrapper types, it's a pain to subclass with 2023-02-14 22:03:37 +09:00
..
kuroko yutani: Don't use __new__ to build wrapper types, it's a pain to subclass with 2023-02-14 22:03:37 +09:00
README.md lib: update docs 2021-07-07 17:17:55 +09:00
auth.c meta: purge most instances of vim hints 2021-11-26 12:59:02 +09:00
button.c meta: purge most instances of vim hints 2021-11-26 12:59:02 +09:00
confreader.c aarch64: begin work on new target 2022-01-30 21:25:27 +09:00
decor-fancy.c decorations: try to be a bit smarter about drawing titlebar elements 2021-09-13 19:39:04 +09:00
decorations.c meta: purge most instances of vim hints 2021-11-26 12:59:02 +09:00
graphics.c graphics: fix bad bounds checks in draw_sprite_alpha* 2022-08-22 21:12:54 +09:00
hashmap.c meta: purge most instances of vim hints 2021-11-26 12:59:02 +09:00
icon_cache.c meta: purge most instances of vim hints 2021-11-26 12:59:02 +09:00
inflate.c meta: purge most instances of vim hints 2021-11-26 12:59:02 +09:00
jpeg.c aarch64: begin work on new target 2022-01-30 21:25:27 +09:00
json.c meta: purge most instances of vim hints 2021-11-26 12:59:02 +09:00
kbd.c meta: purge most instances of vim hints 2021-11-26 12:59:02 +09:00
list.c meta: purge most instances of vim hints 2021-11-26 12:59:02 +09:00
markup.c meta: purge most instances of vim hints 2021-11-26 12:59:02 +09:00
markup_text.c text: Allow x-adjusted glyph rendering, for better kerning in caches 2022-08-22 13:36:30 +09:00
menu.c menu: Better tail alignment for bubble windows 2021-11-29 15:58:53 +09:00
panel_appmenu.c panel: Restore Alt-F1 and Alt-F3 key binds 2021-12-08 15:35:20 +09:00
panel_clock.c panel: Adjust clockface, add counterweight to second hand 2022-11-30 22:25:04 +09:00
panel_date.c panel: Allow widgets to request faster update rate for animations 2022-11-29 23:18:19 +09:00
panel_logout.c panel: always prefer center alignment for popups 2021-11-29 15:04:17 +09:00
panel_network.c panel: Allow widgets to request faster update rate for animations 2022-11-29 23:18:19 +09:00
panel_volume.c panel: Apply smarter alignment to popup menus 2021-11-29 14:32:29 +09:00
panel_weather.c panel: Allow widgets to request faster update rate for animations 2022-11-29 23:18:19 +09:00
panel_windowlist.c panel: fixup inefficient window list redrawing 2022-09-05 21:03:02 +09:00
pex.c meta: purge most instances of vim hints 2021-11-26 12:59:02 +09:00
png.c meta: purge most instances of vim hints 2021-11-26 12:59:02 +09:00
rline.c rline: Merge fixes from Kuroko 2022-08-14 20:43:01 +09:00
rline_exp.c meta: purge most instances of vim hints 2021-11-26 12:59:02 +09:00
termemu.c meta: purge most instances of vim hints 2021-11-26 12:59:02 +09:00
text.c text: Allow x-adjusted glyph rendering, for better kerning in caches 2022-08-22 13:36:30 +09:00
tree.c meta: purge most instances of vim hints 2021-11-26 12:59:02 +09:00
yutani.c yutani: pex read() can return error code 2022-08-21 19:01:05 +09:00

README.md

ToaruOS System Libraries

These are the core system libraries of ToaruOS. Where functionality isn't expected in the C standard library, these provide additional features that are shared by multiple ToaruOS applications.

toaru_auth

Provides password validation and login helper methods. Exists primarily because libc doesn't have these things and there are multiple places where logins are checked (login, glogin, sudo, gsudo...).

toaru_button

Renderer for button widgets. Not really a widget library at the moment.

toaru_confreader

Implements a basic INI parser for use with configuration files.

toaru_decorations

Client-side decoration library for the compositor. Supports pluggable decoration themes through additional libraries, which are named as libtoaru_decor-....

toaru_graphics

General-purpose 2D drawing and pixel-pushing library. Provides sprite blitting, rotation, scaling, etc.

toaru_hashmap

Generic hashmap implementation. Also used by the kernel.

toaru_iconcache

Convenience library for loading icons at specific sizes.

toaru_inflate

Decompression library for DEFLATE payloads.

toaru_jpeg

Minimal, incomplete JPEG decoder. Mostly used for providing wallpapers. Doesn't support most JPEG features.

toaru_kbd

Keyboard scancode parser.

toaru_list

Generic expandable linked list implementation.

toaru_markup

XML-like syntax parser.

toaru_menu

Menu widget library. Used for the "Applications" menu, context menus, etc.

toaru_pex

Userspace library for using the ToaruOS "packetfs" subsystem, which provides packet-based IPC.

toaru_png

Decoder for Portable Network Graphics images.

toaru_rline

Rich line editor for terminal applications, with support for tab completion and syntax highlighting.

toaru_termemu

Terminal ANSI escape processor.

toaru_text

TrueType font parser and text renderer.

toaru_tree

Generic tree implementation. Also used by the kernel.

toaru_yutani

Compositor client library, used to build GUI applications.