polybar/include/x11/window.hpp

35 lines
818 B
C++
Raw Normal View History

2016-06-15 03:32:35 +00:00
#pragma once
#include <xcb/xcb.h>
2016-11-26 05:13:20 +00:00
#include <xcb/xcb_aux.h>
2016-12-26 08:40:15 +00:00
#include <xpp/window.hpp>
2016-11-26 05:13:20 +00:00
2016-06-15 03:32:35 +00:00
#include "common.hpp"
2016-11-19 05:22:44 +00:00
POLYBAR_NS
2016-06-15 03:32:35 +00:00
2016-12-26 08:40:15 +00:00
class connection;
2016-06-15 03:32:35 +00:00
2016-12-26 08:40:15 +00:00
class window : public xpp::window<connection&> {
2016-06-15 03:32:35 +00:00
public:
2016-12-26 08:40:15 +00:00
using xpp::window<class connection&>::window;
2016-06-15 03:32:35 +00:00
2016-12-26 08:40:15 +00:00
window& operator=(const xcb_window_t win);
2016-06-15 03:32:35 +00:00
2016-11-13 20:50:21 +00:00
window create_checked(
int16_t x, int16_t y, uint16_t w, uint16_t h, uint32_t mask = 0, const xcb_params_cw_t* p = nullptr);
2016-11-02 19:22:45 +00:00
window change_event_mask(uint32_t mask);
window ensure_event_mask(uint32_t event);
window reconfigure_geom(uint16_t w, uint16_t h, int16_t x = 0, int16_t y = 0);
window reconfigure_pos(int16_t x, int16_t y);
2016-11-13 20:50:21 +00:00
window reconfigure_struts(uint16_t w, uint16_t h, int16_t x, bool bottom = false);
2016-11-04 17:54:33 +00:00
void redraw();
void visibility_notify(xcb_visibility_t state);
2016-06-15 03:32:35 +00:00
};
2016-11-19 05:22:44 +00:00
POLYBAR_NS_END