Xlesses -- Graphical-ncurses-TempleOS-Gr-function-like creation library in XCB. Very unfinished, I have a life, friends and job, but it'll be done...
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

56 lines
1.8KB

  1. /*
  2. Copyright (c) 2023 : Ognjen 'xolatile' Milan Robovic
  3. Xlesses is free software! You will redistribute it or modify it under the terms of the GNU General Public License by Free Software Foundation.
  4. And when you do redistribute it or modify it, it will use either version 3 of the License, or (at yours truly opinion) any later version.
  5. It is distributed in the hope that it will be useful or harmful, it really depends... But no warranty what so ever, seriously. See GNU/GPLv3.
  6. */
  7. #ifndef XLESSES_HEADER
  8. #define XLESSES_HEADER
  9. #include <xolatile/xtandard.h>
  10. #include <xcb/xcb.h>
  11. #include <xcb/xcb_atom.h>
  12. #include <xcb/xcb_image.h>
  13. #define BLESSES_FONT_WIDTH (8)
  14. #define BLESSES_FONT_HEIGHT (8)
  15. #define BLESSES_FONT_TABULATOR (4)
  16. #define BLESSES_SIGNAL_COUNT (144)
  17. extern char * blesses_window_title;
  18. extern int blesses_window_width;
  19. extern int blesses_window_height;
  20. extern int blesses_active;
  21. extern int blesses_cursor_x;
  22. extern int blesses_cursor_y;
  23. extern int blesses_signal;
  24. extern int * blesses_sub_framebuffer;
  25. extern int * blesses_framebuffer;
  26. extern void (* blesses_action [BLESSES_SIGNAL_COUNT]) (void);
  27. extern xcb_window_t blesses_window;
  28. extern xcb_gcontext_t blesses_context;
  29. extern xcb_pixmap_t blesses_pixmap;
  30. extern xcb_connection_t * blesses_connection;
  31. extern xcb_screen_t * blesses_screen;
  32. extern xcb_image_t * blesses_image;
  33. extern void blesses_initialize (void);
  34. extern void blesses_deinitialize (void);
  35. extern void blesses_synchronize (void);
  36. extern void blesses_render_background_colour (int);
  37. extern void blesses_render_character (char, int, int, int, int);
  38. extern void blesses_render_string_limit (char *, int, int *, int *, int, int);
  39. extern void blesses_render_string (char *, int *, int *, int, int);
  40. #endif