2021-03-21 20:54:55 +00:00
|
|
|
#ifndef __LABWC_SSD_H
|
|
|
|
|
#define __LABWC_SSD_H
|
|
|
|
|
|
2021-03-21 21:46:16 +00:00
|
|
|
enum ssd_part_type {
|
2021-03-21 20:54:55 +00:00
|
|
|
LAB_SSD_NONE = 0,
|
|
|
|
|
LAB_SSD_BUTTON_CLOSE,
|
|
|
|
|
LAB_SSD_BUTTON_MAXIMIZE,
|
|
|
|
|
LAB_SSD_BUTTON_ICONIFY,
|
|
|
|
|
LAB_SSD_PART_TITLE,
|
|
|
|
|
LAB_SSD_PART_TOP,
|
|
|
|
|
LAB_SSD_PART_RIGHT,
|
|
|
|
|
LAB_SSD_PART_BOTTOM,
|
|
|
|
|
LAB_SSD_PART_LEFT,
|
|
|
|
|
LAB_SSD_END_MARKER
|
|
|
|
|
};
|
|
|
|
|
|
2021-03-21 21:46:16 +00:00
|
|
|
struct ssd_part {
|
|
|
|
|
struct wlr_box box;
|
|
|
|
|
enum ssd_part_type type;
|
|
|
|
|
struct wlr_texture *texture;
|
|
|
|
|
float *color;
|
|
|
|
|
struct wl_list link;
|
|
|
|
|
};
|
|
|
|
|
|
2021-03-21 20:54:55 +00:00
|
|
|
struct view;
|
|
|
|
|
|
|
|
|
|
struct border ssd_thickness(struct view *view);
|
|
|
|
|
struct wlr_box ssd_max_extents(struct view *view);
|
2021-03-21 21:46:16 +00:00
|
|
|
struct wlr_box ssd_box(struct view *view, enum ssd_part_type type);
|
|
|
|
|
enum ssd_part_type ssd_at(struct view *view, double lx, double ly);
|
|
|
|
|
void ssd_create(struct view *view);
|
|
|
|
|
void ssd_destroy(struct view *view);
|
|
|
|
|
void ssd_update_geometry(struct view *view);
|
2021-03-21 20:54:55 +00:00
|
|
|
|
|
|
|
|
#endif /* __LABWC_SSD_H */
|