nageyqma·git
HTTPS https://git.nageyqma.icu/nageyqma/st.git SSH git@git.nageyqma.icu:nageyqma/st.git

HTTPS 链接可直接 git clone;推送代码请使用 SSH。

2.4 KB · 91 行raw
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
/* See LICENSE for license details. */

enum win_mode {
	MODE_VISIBLE     = 1 << 0,
	MODE_FOCUSED     = 1 << 1,
	MODE_APPKEYPAD   = 1 << 2,
	MODE_MOUSEBTN    = 1 << 3,
	MODE_MOUSEMOTION = 1 << 4,
	MODE_REVERSE     = 1 << 5,
	MODE_KBDLOCK     = 1 << 6,
	MODE_HIDE        = 1 << 7,
	MODE_APPCURSOR   = 1 << 8,
	MODE_MOUSESGR    = 1 << 9,
	MODE_8BIT        = 1 << 10,
	MODE_BLINK       = 1 << 11,
	MODE_FBLINK      = 1 << 12,
	MODE_FOCUS       = 1 << 13,
	MODE_MOUSEX10    = 1 << 14,
	MODE_MOUSEMANY   = 1 << 15,
	MODE_BRCKTPASTE  = 1 << 16,
	MODE_NUMLOCK     = 1 << 17,
	MODE_MOUSE       = MODE_MOUSEBTN|MODE_MOUSEMOTION|MODE_MOUSEX10\
	                  |MODE_MOUSEMANY,
	MODE_KBDSELECT   = 1 << 18,
};

/* Modifier and button bits.  Wayland has no X11 masks; these are the
 * backend's stable translation of xkbcommon modifier state. */
#define ShiftMask	(1 << 0)
#define LockMask	(1 << 1)
#define ControlMask	(1 << 2)
#define Mod1Mask	(1 << 3)
#define Mod2Mask	(1 << 4)
#define Mod3Mask	(1 << 5)
#define Mod4Mask	(1 << 6)
#define Mod5Mask	(1 << 7)

#define Button1Mask	(1 << 8)
#define Button2Mask	(1 << 9)
#define Button3Mask	(1 << 10)
#define Button4Mask	(1 << 11)
#define Button5Mask	(1 << 12)

enum {
	Button1 = 1,
	Button2,
	Button3,
	Button4,
	Button5,
	Button6,
	Button7,
};

/* Shortcut matching. */
#define MOD_ANY		UINT_MAX
#define MOD_NONE	0
#define MOD_SWITCH	(1 << 13)	/* no longer used, kept for config.h */

/* Wayland cursor names for config.h's mouseshape. */
#define XC_left_ptr		"default"
#define XC_xterm		"text"
#define XC_hand1		"pointer"
#define XC_hand2		"pointer"
#define XC_crosshair		"crosshair"
#define XC_watch		"wait"
#define XC_progress		"progress"
#define XC_fleur		"move"
#define XC_sb_h_double_arrow	"ew-resize"
#define XC_sb_v_double_arrow	"ns-resize"
#define XC_top_left_corner	"nw-resize"
#define XC_top_right_corner	"ne-resize"
#define XC_bottom_left_corner	"sw-resize"
#define XC_bottom_right_corner	"se-resize"

void bell(void);
void clipcopy(const Arg *);
void drawcursor(int, int, Glyph, int, int, Glyph, Line, int);
void drawline(Line, int, int, int);
void finishdraw(void);
void loadcols(void);
int setcolorname(int, const char *);
void settitle(char *);
int setcursor(int);
void setmode(int, unsigned int);
void setpointermotion(int);
void setsel(char *);
int startdraw(void);
void toggle_winmode(int);
void keyboard_select(const Arg *);
void imespot(int, int);