diff options
author | Jack Sangdahl <[email protected]> | 2024-04-23 15:29:58 -0600 |
---|---|---|
committer | Jack Sangdahl <[email protected]> | 2024-04-23 15:29:58 -0600 |
commit | 93b045609bd7b078da1db87712a088190137add6 (patch) | |
tree | a2b3acec0cd47941a68c50b813881e520988a9e2 /st.h | |
parent | a9c2d5b0084857f572e08ba1413cb7916cf2409f (diff) | |
download | st-93b045609bd7b078da1db87712a088190137add6.tar.gz st-93b045609bd7b078da1db87712a088190137add6.zip |
initial wayland
Diffstat (limited to 'st.h')
-rw-r--r-- | st.h | 54 |
1 files changed, 10 insertions, 44 deletions
@@ -3,19 +3,20 @@ #include <stdint.h> #include <sys/types.h> -// #include <gd.h> -#include <glib.h> +/* Arbitrary sizes */ +#define UTF_SIZ 4 +#define ESC_BUF_SIZ (128 * UTF_SIZ) /* macros */ +#define MIN(a, b) ((a) < (b) ? (a) : (b)) +#define MAX(a, b) ((a) < (b) ? (b) : (a)) #define LEN(a) (sizeof(a) / sizeof(a)[0]) #define BETWEEN(x, a, b) ((a) <= (x) && (x) <= (b)) -#define DIVCEIL(n, d) (((n) + ((d)-1)) / (d)) +#define DIVCEIL(n, d) (((n) + ((d) - 1)) / (d)) #define DEFAULT(a, b) (a) = (a) ? (a) : (b) #define LIMIT(x, a, b) (x) = (x) < (a) ? (a) : (x) > (b) ? (b) : (x) #define ATTRCMP(a, b) \ - (((a).mode & (~ATTR_WRAP) & (~ATTR_LIGA)) != \ - ((b).mode & (~ATTR_WRAP) & (~ATTR_LIGA)) || \ - (a).fg != (b).fg || (a).bg != (b).bg) + ((a).mode != (b).mode || (a).fg != (b).fg || (a).bg != (b).bg) #define TIMEDIFF(t1, t2) \ ((t1.tv_sec - t2.tv_sec) * 1000 + (t1.tv_nsec - t2.tv_nsec) / 1E6) #define MODBIT(x, set, bit) ((set) ? ((x) |= (bit)) : ((x) &= ~(bit))) @@ -36,17 +37,9 @@ enum glyph_attribute { ATTR_WRAP = 1 << 8, ATTR_WIDE = 1 << 9, ATTR_WDUMMY = 1 << 10, - ATTR_BOXDRAW = 1 << 11, - ATTR_LIGA = 1 << 12, ATTR_BOLD_FAINT = ATTR_BOLD | ATTR_FAINT, }; -enum drawing_mode { - DRAW_NONE = 0, - DRAW_BG = 1 << 0, - DRAW_FG = 1 << 1, -}; - enum selection_mode { SEL_IDLE = 0, SEL_EMPTY = 1, SEL_READY = 2 }; enum selection_type { SEL_REGULAR = 1, SEL_RECTANGULAR = 2 }; @@ -60,7 +53,6 @@ typedef unsigned short ushort; typedef uint_least32_t Rune; -#define Glyph Glyph_ typedef struct { Rune u; /* character code */ ushort mode; /* attribute flags */ @@ -77,34 +69,21 @@ typedef union { const void *v; } Arg; -typedef struct { - uint b; - uint mask; - void (*func)(const Arg *); - const Arg arg; -} MouseKey; - void die(const char *, ...); void redraw(void); void draw(void); -void externalpipe(const Arg *); -void iso14755(const Arg *); -void kscrolldown(const Arg *); -void kscrollup(const Arg *); -void newterm(const Arg *); void printscreen(const Arg *); void printsel(const Arg *); void sendbreak(const Arg *); void toggleprinter(const Arg *); int tattrset(int); -int tisaltscr(void); void tnew(int, int); void tresize(int, int); void tsetdirtattr(int); void ttyhangup(void); -int ttynew(const char *, char *, const char *, char **); +int ttynew(char *, char *, char *, char **); size_t ttyread(void); void ttyresize(int, int); void ttywrite(const char *, size_t, int); @@ -118,20 +97,12 @@ void selextend(int, int, int, int); int selected(int, int); char *getsel(void); +size_t utf8decode(const char *, Rune *, size_t); size_t utf8encode(Rune, char *); void *xmalloc(size_t); void *xrealloc(void *, size_t); -char *xstrdup(const char *); - -int isboxdraw(Rune); -ushort boxdrawindex(const Glyph *); -#ifdef XFT_VERSION -/* only exposed to x.c, otherwise we'll need Xft.h for the types */ -void boxdraw_xinit(Display *, Colormap, XftDraw *, Visual *); -void drawboxes(int, int, int, int, XftColor *, XftColor *, - const XftGlyphFontSpec *, int); -#endif +char *xstrdup(char *); /* config.h globals */ extern char *utmp; @@ -143,8 +114,3 @@ extern char *termname; extern unsigned int tabspaces; extern unsigned int defaultfg; extern unsigned int defaultbg; -extern unsigned int defaultcs; -extern const int boxdraw, boxdraw_bold, boxdraw_braille; -extern float alpha; -extern MouseKey mkeys[]; -extern int ximspot_update_interval; |