rofi  1.7.5
rofi-types.h
Go to the documentation of this file.
1 #ifndef INCLUDE_ROFI_TYPES_H
2 #define INCLUDE_ROFI_TYPES_H
3 #include <glib.h>
4 #include <stdint.h>
5 G_BEGIN_DECLS
6 
10 typedef enum {
43 } PropertyType;
44 
49 extern const char *const PropertyTypeName[P_NUM_TYPES];
50 
52 typedef enum {
70  ROFI_HL_CAPITALIZE = 128
72 
74 typedef enum {
80 
84 typedef enum {
96 
100 typedef enum {
114 
115 typedef struct RofiDistanceUnit {
117  double distance;
120 
123 
126 
130 
131 typedef struct {
136 } RofiDistance;
137 
141 typedef enum {
145 
149 typedef enum {
154 
158 typedef struct {
160  double red;
162  double green;
164  double blue;
166  double alpha;
167 } ThemeColor;
168 
173 
174 typedef enum {
180 } RofiDirection;
181 
182 typedef enum {
187 } RofiScaleType;
188 
189 typedef struct {
191  char *url;
193  int wsize;
194  int hsize;
195 
197  double angle;
199  GList *colors;
200 
202  uint32_t surface_id;
203 
204 } RofiImage;
205 
209 typedef struct {
214 } RofiPadding;
215 
219 typedef struct {
225 
235 typedef enum {
239  WL_NORTH = 1,
241  WL_EAST = 2,
243  WL_SOUTH = 4,
245  WL_WEST = 8,
255 
256 typedef union _PropertyValue {
258  int i;
260  double f;
262  char *s;
264  char c;
266  gboolean b;
272  struct {
274  char *name;
276  struct Property *ref;
279  } link;
285  GList *list;
287 
291 typedef struct Property {
293  char *name;
299 
303 typedef struct rofi_range_pair {
304  int start;
305  int stop;
307 
311 typedef struct rofi_int_matcher_t {
312  GRegex *regex;
313  gboolean invert;
315 
320 typedef struct _thread_state {
321  void (*callback)(struct _thread_state *t, gpointer data);
323 
324 extern GThreadPool *tpool;
325 
326 G_END_DECLS
327 #endif // INCLUDE_ROFI_TYPES_H
WindowLocation
Definition: rofi-types.h:235
@ WL_SOUTH_EAST
Definition: rofi-types.h:251
@ WL_CENTER
Definition: rofi-types.h:237
@ WL_NORTH_WEST
Definition: rofi-types.h:247
@ WL_SOUTH
Definition: rofi-types.h:243
@ WL_NORTH_EAST
Definition: rofi-types.h:249
@ WL_WEST
Definition: rofi-types.h:245
@ WL_NORTH
Definition: rofi-types.h:239
@ WL_EAST
Definition: rofi-types.h:241
@ WL_SOUTH_WEST
Definition: rofi-types.h:253
struct rofi_range_pair rofi_range_pair
struct Property Property
RofiImageType
Definition: rofi-types.h:172
@ ROFI_IMAGE_URL
Definition: rofi-types.h:172
@ ROFI_IMAGE_LINEAR_GRADIENT
Definition: rofi-types.h:172
RofiDirection
Definition: rofi-types.h:174
@ ROFI_DIRECTION_LEFT
Definition: rofi-types.h:175
@ ROFI_DIRECTION_RIGHT
Definition: rofi-types.h:176
@ ROFI_DIRECTION_BOTTOM
Definition: rofi-types.h:178
@ ROFI_DIRECTION_TOP
Definition: rofi-types.h:177
@ ROFI_DIRECTION_ANGLE
Definition: rofi-types.h:179
PropertyType
Definition: rofi-types.h:10
@ P_INTEGER
Definition: rofi-types.h:12
@ P_NUM_TYPES
Definition: rofi-types.h:42
@ P_INHERIT
Definition: rofi-types.h:40
@ P_HIGHLIGHT
Definition: rofi-types.h:32
@ P_LINK
Definition: rofi-types.h:28
@ P_CHAR
Definition: rofi-types.h:18
@ P_IMAGE
Definition: rofi-types.h:24
@ P_PADDING
Definition: rofi-types.h:26
@ P_LIST
Definition: rofi-types.h:34
@ P_BOOLEAN
Definition: rofi-types.h:20
@ P_COLOR
Definition: rofi-types.h:22
@ P_CURSOR
Definition: rofi-types.h:38
@ P_DOUBLE
Definition: rofi-types.h:14
@ P_ORIENTATION
Definition: rofi-types.h:36
@ P_STRING
Definition: rofi-types.h:16
@ P_POSITION
Definition: rofi-types.h:30
RofiPixelUnit
Definition: rofi-types.h:84
@ ROFI_PU_EM
Definition: rofi-types.h:90
@ ROFI_PU_CH
Definition: rofi-types.h:94
@ ROFI_PU_PX
Definition: rofi-types.h:86
@ ROFI_PU_MM
Definition: rofi-types.h:88
@ ROFI_PU_PERCENT
Definition: rofi-types.h:92
struct rofi_int_matcher_t rofi_int_matcher
struct RofiDistanceUnit RofiDistanceUnit
RofiOrientation
Definition: rofi-types.h:141
@ ROFI_ORIENTATION_HORIZONTAL
Definition: rofi-types.h:143
@ ROFI_ORIENTATION_VERTICAL
Definition: rofi-types.h:142
const char *const PropertyTypeName[P_NUM_TYPES]
Definition: rofi-types.c:6
union _PropertyValue PropertyValue
GThreadPool * tpool
Definition: view.c:83
RofiDistanceModifier
Definition: rofi-types.h:100
@ ROFI_DISTANCE_MODIFIER_GROUP
Definition: rofi-types.h:107
@ ROFI_DISTANCE_MODIFIER_CEIL
Definition: rofi-types.h:112
@ ROFI_DISTANCE_MODIFIER_SUBTRACT
Definition: rofi-types.h:103
@ ROFI_DISTANCE_MODIFIER_MODULO
Definition: rofi-types.h:106
@ ROFI_DISTANCE_MODIFIER_FLOOR
Definition: rofi-types.h:111
@ ROFI_DISTANCE_MODIFIER_ROUND
Definition: rofi-types.h:110
@ ROFI_DISTANCE_MODIFIER_MULTIPLY
Definition: rofi-types.h:105
@ ROFI_DISTANCE_MODIFIER_MAX
Definition: rofi-types.h:109
@ ROFI_DISTANCE_MODIFIER_MIN
Definition: rofi-types.h:108
@ ROFI_DISTANCE_MODIFIER_DIVIDE
Definition: rofi-types.h:104
@ ROFI_DISTANCE_MODIFIER_ADD
Definition: rofi-types.h:102
@ ROFI_DISTANCE_MODIFIER_NONE
Definition: rofi-types.h:101
RofiLineStyle
Definition: rofi-types.h:74
@ ROFI_HL_SOLID
Definition: rofi-types.h:76
@ ROFI_HL_DASH
Definition: rofi-types.h:78
RofiScaleType
Definition: rofi-types.h:182
@ ROFI_SCALE_HEIGHT
Definition: rofi-types.h:185
@ ROFI_SCALE_NONE
Definition: rofi-types.h:183
@ ROFI_SCALE_BOTH
Definition: rofi-types.h:184
@ ROFI_SCALE_WIDTH
Definition: rofi-types.h:186
RofiCursorType
Definition: rofi-types.h:149
@ ROFI_CURSOR_POINTER
Definition: rofi-types.h:151
@ ROFI_CURSOR_TEXT
Definition: rofi-types.h:152
@ ROFI_CURSOR_DEFAULT
Definition: rofi-types.h:150
struct _thread_state thread_state
RofiHighlightStyle
Definition: rofi-types.h:52
@ ROFI_HL_UPPERCASE
Definition: rofi-types.h:66
@ ROFI_HL_STRIKETHROUGH
Definition: rofi-types.h:60
@ ROFI_HL_NONE
Definition: rofi-types.h:54
@ ROFI_HL_ITALIC
Definition: rofi-types.h:62
@ ROFI_HL_UNDERLINE
Definition: rofi-types.h:58
@ ROFI_HL_CAPITALIZE
Definition: rofi-types.h:70
@ ROFI_HL_BOLD
Definition: rofi-types.h:56
@ ROFI_HL_LOWERCASE
Definition: rofi-types.h:68
@ ROFI_HL_COLOR
Definition: rofi-types.h:64
PropertyValue value
Definition: rofi-types.h:297
PropertyType type
Definition: rofi-types.h:295
char * name
Definition: rofi-types.h:293
RofiDistanceModifier modtype
Definition: rofi-types.h:122
RofiPixelUnit type
Definition: rofi-types.h:119
struct RofiDistanceUnit * right
Definition: rofi-types.h:128
struct RofiDistanceUnit * left
Definition: rofi-types.h:125
RofiDistanceUnit base
Definition: rofi-types.h:133
RofiLineStyle style
Definition: rofi-types.h:135
RofiHighlightStyle style
Definition: rofi-types.h:221
RofiDirection dir
Definition: rofi-types.h:196
RofiImageType type
Definition: rofi-types.h:190
double angle
Definition: rofi-types.h:197
uint32_t surface_id
Definition: rofi-types.h:202
char * url
Definition: rofi-types.h:191
RofiScaleType scaling
Definition: rofi-types.h:192
GList * colors
Definition: rofi-types.h:199
RofiDistance bottom
Definition: rofi-types.h:212
RofiDistance top
Definition: rofi-types.h:210
RofiDistance right
Definition: rofi-types.h:211
RofiDistance left
Definition: rofi-types.h:213
double blue
Definition: rofi-types.h:164
double green
Definition: rofi-types.h:162
double red
Definition: rofi-types.h:160
double alpha
Definition: rofi-types.h:166
void(* callback)(struct _thread_state *t, gpointer data)
Definition: rofi-types.h:321
struct _PropertyValue::@6 link
ThemeColor color
Definition: rofi-types.h:268
struct Property * ref
Definition: rofi-types.h:276
RofiHighlightColorStyle highlight
Definition: rofi-types.h:281
struct Property * def_value
Definition: rofi-types.h:278
GList * list
Definition: rofi-types.h:285
RofiImage image
Definition: rofi-types.h:283
gboolean b
Definition: rofi-types.h:266
RofiPadding padding
Definition: rofi-types.h:270