polybar/include/x11/xresources.hpp

28 lines
563 B
C++
Raw Normal View History

2016-11-02 19:22:45 +00:00
#pragma once
#include <X11/Xresource.h>
#include "common.hpp"
2016-11-19 05:22:44 +00:00
POLYBAR_NS
2016-11-02 19:22:45 +00:00
class xresource_manager {
public:
explicit xresource_manager();
string get_string(string name, string fallback = "") const;
float get_float(string name, float fallback = 0.0f) const;
int get_int(string name, int fallback = 0) const;
2016-11-02 19:22:45 +00:00
protected:
2016-11-25 12:55:15 +00:00
string load_value(const string& key, const string& res_type, size_t n) const;
2016-11-02 19:22:45 +00:00
private:
char* m_manager = nullptr;
XrmDatabase m_db;
};
2016-11-20 22:04:31 +00:00
di::injector<const xresource_manager&> configure_xresource_manager();
2016-11-02 19:22:45 +00:00
2016-11-19 05:22:44 +00:00
POLYBAR_NS_END