Simple Cross-Platform Helper Functions.
Rewritten in C style C++. Still a work in progress
ASSERT(Expression)
* Triggers debugger on failure*
NULLIFY(Variable)
* If Variable is not null, delete and set to null*
elix_colour - 32bit colour value as hex or r,b,g,a values
elix_graphic_data - Used to describe an 2D graphic surface
Helper functions to deal with C-Strings
- bool elix_cstring_has_suffix( const char * str, const char * suffix);
- size_t elix_cstring_find_not_of( char * str, char * search, size_t offset = 0);
- void elix_cstring_sanitise( char * string );
- char * elix_cstring_substr( const char * source, ssize_t pos = 0, ssize_t len = SSIZE_MAX );
Switch integers between Network Endianness and Host Endianness.
Reads a HTML and create a tree node structure.
Canvas interface for elix_graphic_data. Borrows from the HTML's Canvas.
Access file content and details about file.
- Name [string]
- Version [string]
- Major Version [string] Used for Directory
- Executable Path [string]
- Base Path [string]
Gets:
- Private or Public Document directory
- User's Data directory AKA XDG_DATA_HOME/[ProgramName]-[ProgramMajorVersion] or CSIDL_Local_APPDATA/[ProgramName]-[ProgramMajorVersion]
- User's Cache directory
- Program's Resources directory aka /usr/share/[ProgramName]-[ProgramMajorVersion]
Simple windows creation and event handling. Currently Windows and Wayland
I recommend using SDL2 instead of this
- HTTP Client
- HTTP Server
- Tree Node Render
- OS Integration/File Association
- SSL
Force the use of SDL2 instead of the native platform code.
Built-ins LOG_+ functions do not print anything.
##Platform Notes
wayland-scanner private-code /usr/share/wayland-protocols/stable/xdg-shell/xdg-shell.xml include/wayland/xdg-shell-protocol.c wayland-scanner client-header /usr/share/wayland-protocols/stable/xdg-shell/xdg-shell.xml include/xdg-shell-client-protocol.h
wayland-scanner private-code /usr/share/wayland-protocols/unstable/primary-selection/primary-selection-unstable-v1.xml include/wayland/primary-selection-protocol.c wayland-scanner client-header /usr/share/wayland-protocols/unstable/primary-selection/primary-selection-unstable-v1.xml include/primary-selection-client-protocol.h