polybar/include/cairo/types.hpp

70 lines
1005 B
C++
Raw Normal View History

2017-01-19 04:38:42 +00:00
#pragma once
2017-01-25 22:30:41 +00:00
#include <cairo/cairo.h>
2017-01-19 04:38:42 +00:00
#include "common.hpp"
#include "components/types.hpp"
2017-01-19 04:38:42 +00:00
POLYBAR_NS
2017-01-19 14:05:26 +00:00
enum class alignment;
2017-01-19 04:38:42 +00:00
namespace cairo {
2017-01-24 05:59:58 +00:00
struct point {
double x;
double y;
};
2017-01-19 04:38:42 +00:00
struct abspos {
double x;
double y;
2017-01-19 14:05:26 +00:00
bool clear{true};
2017-01-19 04:38:42 +00:00
};
struct relpos {
double x;
double y;
};
struct rect {
double x;
double y;
double w;
double h;
};
struct line {
double x1;
double y1;
double x2;
double y2;
double w;
};
struct translate {
double x;
double y;
};
2017-01-19 04:38:42 +00:00
struct linear_gradient {
double x1;
double y1;
2017-01-24 05:59:58 +00:00
double x2;
double y2;
2017-01-19 10:11:28 +00:00
vector<unsigned int> steps;
2017-01-19 04:38:42 +00:00
};
2017-01-19 14:05:26 +00:00
struct rounded_corners {
double x;
double y;
double w;
double h;
struct radius radius;
2017-01-19 14:05:26 +00:00
};
2017-01-19 04:38:42 +00:00
struct textblock {
2017-01-19 14:05:26 +00:00
alignment align;
2017-01-19 04:38:42 +00:00
string contents;
int font;
2017-01-24 05:59:58 +00:00
unsigned int bg;
2017-01-25 22:30:41 +00:00
cairo_operator_t bg_operator;
2017-01-24 05:59:58 +00:00
rect bg_rect;
double *x_advance;
double *y_advance;
2017-01-19 04:38:42 +00:00
};
}
POLYBAR_NS_END