polybar/include/components/parser.hpp

30 lines
600 B
C++
Raw Normal View History

2016-06-15 03:32:35 +00:00
#pragma once
#include "common.hpp"
#include "components/signals.hpp"
2016-06-15 03:32:35 +00:00
2016-11-19 05:22:44 +00:00
POLYBAR_NS
2016-06-15 03:32:35 +00:00
DEFINE_ERROR(unrecognized_token);
class parser {
public:
explicit parser(const bar_settings& bar) : m_bar(bar) {}
2016-11-02 19:22:45 +00:00
void operator()(string data);
void codeblock(string data);
size_t text(string data);
2016-06-15 03:32:35 +00:00
protected:
2016-11-02 19:22:45 +00:00
color parse_color(string s, color fallback = color{0});
int parse_fontindex(string s);
attribute parse_attr(const char s);
mousebtn parse_action_btn(string data);
string parse_action_cmd(string data);
2016-06-15 03:32:35 +00:00
private:
const bar_settings& m_bar;
vector<int> m_actions;
};
2016-11-19 05:22:44 +00:00
POLYBAR_NS_END