rofi  1.7.3
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 {
66  ROFI_HL_COLOR = 8
68 
70 typedef enum {
76 
80 typedef enum {
92 
96 typedef enum {
110 
111 typedef struct RofiDistanceUnit {
113  double distance;
116 
119 
122 
126 
127 typedef struct {
132 } RofiDistance;
133 
137 typedef enum {
141 
145 typedef enum {
150 
154 typedef struct {
156  double red;
158  double green;
160  double blue;
162  double alpha;
163 } ThemeColor;
164 
169 
170 typedef enum {
176 } RofiDirection;
177 
178 typedef enum {
183 } RofiScaleType;
184 
185 typedef struct {
187  char *url;
189  int wsize;
190  int hsize;
191 
193  double angle;
195  GList *colors;
196 
198  uint32_t surface_id;
199 
200 } RofiImage;
201 
205 typedef struct {
210 } RofiPadding;
211 
215 typedef struct {
221 
231 typedef enum {
235  WL_NORTH = 1,
237  WL_EAST = 2,
239  WL_SOUTH = 4,
241  WL_WEST = 8,
251 
252 typedef union _PropertyValue {
254  int i;
256  double f;
258  char *s;
260  char c;
262  gboolean b;
268  struct {
270  char *name;
272  struct Property *ref;
275  } link;
281  GList *list;
283 
287 typedef struct Property {
289  char *name;
295 
299 typedef struct rofi_range_pair {
300  int start;
301  int stop;
303 
307 typedef struct rofi_int_matcher_t {
308  GRegex *regex;
309  gboolean invert;
311 
316 typedef struct _thread_state {
317  void (*callback)(struct _thread_state *t, gpointer data);
319 
320 extern GThreadPool *tpool;
321 
322 G_END_DECLS
323 #endif // INCLUDE_ROFI_TYPES_H
WindowLocation
Definition: rofi-types.h:231
@ WL_SOUTH_EAST
Definition: rofi-types.h:247
@ WL_CENTER
Definition: rofi-types.h:233
@ WL_NORTH_WEST
Definition: rofi-types.h:243
@ WL_SOUTH
Definition: rofi-types.h:239
@ WL_NORTH_EAST
Definition: rofi-types.h:245
@ WL_WEST
Definition: rofi-types.h:241
@ WL_NORTH
Definition: rofi-types.h:235
@ WL_EAST
Definition: rofi-types.h:237
@ WL_SOUTH_WEST
Definition: rofi-types.h:249
struct rofi_range_pair rofi_range_pair
struct Property Property
RofiImageType
Definition: rofi-types.h:168
@ ROFI_IMAGE_URL
Definition: rofi-types.h:168
@ ROFI_IMAGE_LINEAR_GRADIENT
Definition: rofi-types.h:168
RofiDirection
Definition: rofi-types.h:170
@ ROFI_DIRECTION_LEFT
Definition: rofi-types.h:171
@ ROFI_DIRECTION_RIGHT
Definition: rofi-types.h:172
@ ROFI_DIRECTION_BOTTOM
Definition: rofi-types.h:174
@ ROFI_DIRECTION_TOP
Definition: rofi-types.h:173
@ ROFI_DIRECTION_ANGLE
Definition: rofi-types.h:175
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:80
@ ROFI_PU_EM
Definition: rofi-types.h:86
@ ROFI_PU_CH
Definition: rofi-types.h:90
@ ROFI_PU_PX
Definition: rofi-types.h:82
@ ROFI_PU_MM
Definition: rofi-types.h:84
@ ROFI_PU_PERCENT
Definition: rofi-types.h:88
struct rofi_int_matcher_t rofi_int_matcher
struct RofiDistanceUnit RofiDistanceUnit
RofiOrientation
Definition: rofi-types.h:137
@ ROFI_ORIENTATION_HORIZONTAL
Definition: rofi-types.h:139
@ ROFI_ORIENTATION_VERTICAL
Definition: rofi-types.h:138
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:96
@ ROFI_DISTANCE_MODIFIER_GROUP
Definition: rofi-types.h:103
@ ROFI_DISTANCE_MODIFIER_CEIL
Definition: rofi-types.h:108
@ ROFI_DISTANCE_MODIFIER_SUBTRACT
Definition: rofi-types.h:99
@ ROFI_DISTANCE_MODIFIER_MODULO
Definition: rofi-types.h:102
@ ROFI_DISTANCE_MODIFIER_FLOOR
Definition: rofi-types.h:107
@ ROFI_DISTANCE_MODIFIER_ROUND
Definition: rofi-types.h:106
@ ROFI_DISTANCE_MODIFIER_MULTIPLY
Definition: rofi-types.h:101
@ ROFI_DISTANCE_MODIFIER_MAX
Definition: rofi-types.h:105
@ ROFI_DISTANCE_MODIFIER_MIN
Definition: rofi-types.h:104
@ ROFI_DISTANCE_MODIFIER_DIVIDE
Definition: rofi-types.h:100
@ ROFI_DISTANCE_MODIFIER_ADD
Definition: rofi-types.h:98
@ ROFI_DISTANCE_MODIFIER_NONE
Definition: rofi-types.h:97
RofiLineStyle
Definition: rofi-types.h:70
@ ROFI_HL_SOLID
Definition: rofi-types.h:72
@ ROFI_HL_DASH
Definition: rofi-types.h:74
RofiScaleType
Definition: rofi-types.h:178
@ ROFI_SCALE_HEIGHT
Definition: rofi-types.h:181
@ ROFI_SCALE_NONE
Definition: rofi-types.h:179
@ ROFI_SCALE_BOTH
Definition: rofi-types.h:180
@ ROFI_SCALE_WIDTH
Definition: rofi-types.h:182
RofiCursorType
Definition: rofi-types.h:145
@ ROFI_CURSOR_POINTER
Definition: rofi-types.h:147
@ ROFI_CURSOR_TEXT
Definition: rofi-types.h:148
@ ROFI_CURSOR_DEFAULT
Definition: rofi-types.h:146
struct _thread_state thread_state
RofiHighlightStyle
Definition: rofi-types.h:52
@ ROFI_HL_STRIKETHROUGH
Definition: rofi-types.h:60
@ ROFI_HL_SMALL_CAPS
Definition: rofi-types.h:62
@ ROFI_HL_NONE
Definition: rofi-types.h:54
@ ROFI_HL_ITALIC
Definition: rofi-types.h:64
@ ROFI_HL_UNDERLINE
Definition: rofi-types.h:58
@ ROFI_HL_BOLD
Definition: rofi-types.h:56
@ ROFI_HL_COLOR
Definition: rofi-types.h:66
PropertyValue value
Definition: rofi-types.h:293
PropertyType type
Definition: rofi-types.h:291
char * name
Definition: rofi-types.h:289
RofiDistanceModifier modtype
Definition: rofi-types.h:118
RofiPixelUnit type
Definition: rofi-types.h:115
struct RofiDistanceUnit * right
Definition: rofi-types.h:124
struct RofiDistanceUnit * left
Definition: rofi-types.h:121
RofiDistanceUnit base
Definition: rofi-types.h:129
RofiLineStyle style
Definition: rofi-types.h:131
RofiHighlightStyle style
Definition: rofi-types.h:217
RofiDirection dir
Definition: rofi-types.h:192
RofiImageType type
Definition: rofi-types.h:186
double angle
Definition: rofi-types.h:193
uint32_t surface_id
Definition: rofi-types.h:198
char * url
Definition: rofi-types.h:187
RofiScaleType scaling
Definition: rofi-types.h:188
GList * colors
Definition: rofi-types.h:195
RofiDistance bottom
Definition: rofi-types.h:208
RofiDistance top
Definition: rofi-types.h:206
RofiDistance right
Definition: rofi-types.h:207
RofiDistance left
Definition: rofi-types.h:209
double blue
Definition: rofi-types.h:160
double green
Definition: rofi-types.h:158
double red
Definition: rofi-types.h:156
double alpha
Definition: rofi-types.h:162
void(* callback)(struct _thread_state *t, gpointer data)
Definition: rofi-types.h:317
struct _PropertyValue::@6 link
ThemeColor color
Definition: rofi-types.h:264
struct Property * ref
Definition: rofi-types.h:272
RofiHighlightColorStyle highlight
Definition: rofi-types.h:277
struct Property * def_value
Definition: rofi-types.h:274
GList * list
Definition: rofi-types.h:281
RofiImage image
Definition: rofi-types.h:279
gboolean b
Definition: rofi-types.h:262
RofiPadding padding
Definition: rofi-types.h:266