polybar/include/x11/color.hpp

37 lines
600 B
C++

#pragma once
#include <map>
#include <X11/Xft/Xft.h>
#include "common.hpp"
#include "utils/color.hpp"
POLYBAR_NS
class color {
public:
explicit color(string hex);
string source() const;
operator XRenderColor() const;
operator string() const;
operator uint32_t() const;
static color parse(string input, color fallback);
static color parse(string input);
protected:
uint32_t m_value;
uint32_t m_color;
string m_source;
};
extern std::map<string, class color> g_colorstore;
extern color g_colorempty;
extern color g_colorblack;
extern color g_colorwhite;
POLYBAR_NS_END