#ifndef APPEARANCE_H_
#define APPEARANCE_H_
+#include <list>
#include <msp/datafile/objectloader.h>
#include "color.h"
+#include "effectcolor.h"
+#include "iconshape.h"
+class FilterStatement;
class Theme;
class Appearance
class Loader: public Msp::DataFile::ObjectLoader<Appearance>
{
private:
- const Theme &theme;
+ const Theme *theme;
public:
- Loader(Appearance &, const Theme &);
+ Loader(Appearance &, const Theme * = 0);
void background_color(unsigned, unsigned, unsigned);
+ void background_color_alpha(unsigned, unsigned, unsigned, unsigned);
void background_color_named(const std::string &);
void border_color(unsigned, unsigned, unsigned);
+ void border_color_alpha(unsigned, unsigned, unsigned, unsigned);
void border_color_named(const std::string &);
void font_size(float);
+ void inherit(const std::string &);
+ void light_beam(EffectColor);
+ void minimap_icon(EffectColor, IconShape);
+ void minimap_icon_size(EffectColor, IconShape, unsigned);
void text_color(unsigned, unsigned, unsigned);
+ void text_color_alpha(unsigned, unsigned, unsigned, unsigned);
void text_color_named(const std::string &);
};
Color text_color;
unsigned sound_type;
unsigned sound_volume;
+ bool show_icon;
+ IconShape icon_shape;
+ EffectColor icon_color;
+ unsigned icon_size;
+ bool show_beam;
+ EffectColor beam_color;
public:
Appearance();
+ void merge_from(const Appearance &);
+
unsigned get_font_size() const { return font_size; }
const Color &get_border_color() const { return border_color; }
const Color &get_background_color() const { return background_color; }
const Color &get_text_color() const { return text_color; }
unsigned get_sound_type() const { return sound_type; }
unsigned get_sound_volume() const { return sound_volume; }
+
+ void add_lines(FilterStatement &) const;
};
#endif