PatchworkOS  966e257
A non-POSIX operating system.
Loading...
Searching...
No Matches
theme.h
Go to the documentation of this file.
1#ifndef PATCHWORK_THEME_H
2#define PATCHWORK_THEME_H 1
3
4#include "pixel.h"
5#include "window.h"
6
7#include <stdint.h>
8
9#if defined(__cplusplus)
10extern "C"
11{
12#endif
13
14/**
15 * @brief Theme
16 * @defgroup libpatchwork_theme Theme
17 * @ingroup libpatchwork
18 *
19 * @{
20 */
21
22/**
23 * @brief Invalid color constant.
24 */
25#define THEME_COLOR_INVALID 0xFFFF00FF
26
27/**
28 * @brief Color sets.
29 * @enum theme_color_set_t
30 *
31 * Color sets are used to allow different types of elements to have diferent color schemes.
32 */
48
49/**
50 * @brief Number of ANSI colors.
51 */
52#define THEME_ANSI_COLOR_COUNT 8
53
54/**
55 * @brief ANSI colors.
56 * @struct theme_ansi_t
57 */
64
65/**
66 * @brief Theme structure
67 *
68 * This structure holds all theme related information.
69 */
93
94/**
95 * @brief Get the global theme.
96 *
97 * Will potentially load the theme if it is not already loaded.
98 *
99 * @return The global theme.
100 */
102
103/** @} */
104
105#if defined(__cplusplus)
106}
107#endif
108
109#endif
#define MAX_PATH
Maximum length of filepaths.
Definition MAX_PATH.h:11
#define THEME_ANSI_COLOR_COUNT
Number of ANSI colors.
Definition theme.h:52
theme_t * theme_global_get(void)
Get the global theme.
Definition theme.c:97
uint32_t pixel_t
Definition pixel.h:11
__UINT8_TYPE__ uint8_t
Definition stdint.h:11
__INT64_TYPE__ int64_t
Definition stdint.h:16
ANSI colors.
Definition theme.h:59
pixel_t backgroundNormal
Definition theme.h:35
pixel_t foregroundInactive
Definition theme.h:41
pixel_t foregroundLink
Definition theme.h:42
pixel_t backgroundSelectedEnd
Definition theme.h:37
pixel_t highlight
Definition theme.h:45
pixel_t backgroundUnselectedEnd
Definition theme.h:39
pixel_t backgroundUnselectedStart
Definition theme.h:38
pixel_t foregroundSelected
Definition theme.h:43
pixel_t foregroundNormal
Definition theme.h:40
pixel_t bezel
Definition theme.h:44
pixel_t shadow
Definition theme.h:46
pixel_t backgroundSelectedStart
Definition theme.h:36
Theme structure.
Definition theme.h:71
theme_color_set_t element
Definition theme.h:74
int64_t bezelSize
Definition theme.h:84
int64_t smallPadding
Definition theme.h:88
theme_ansi_t ansi
Definition theme.h:90
theme_color_set_t panel
Definition theme.h:75
theme_color_set_t deco
Definition theme.h:76
theme_color_set_t view
Definition theme.h:73
theme_color_set_t button
Definition theme.h:72
int64_t panelSize
Definition theme.h:86
int64_t titlebarSize
Definition theme.h:85
int64_t frameSize
Definition theme.h:83
int64_t bigPadding
Definition theme.h:87
int64_t separatorSize
Definition theme.h:89