]> git.tdb.fi Git - poefilter.git/blobdiff - source/category.h
Revamp appearance definitions
[poefilter.git] / source / category.h
index 53b1beb342fd09c5828d6e660f00f94053748bb5..0c549fa9811e54a72a8bcc4a9ad7c2be11033ddb 100644 (file)
@@ -4,10 +4,12 @@
 #include <list>
 #include <string>
 #include <msp/datafile/objectloader.h>
+#include "appearance.h"
 #include "condition.h"
 #include "rarity.h"
 
 class FilterStatement;
+class PoeFilter;
 class Theme;
 
 class Category
@@ -16,10 +18,12 @@ public:
        class Loader: public Msp::DataFile::ObjectLoader<Category>
        {
        private:
+               const PoeFilter &poe;
                CompoundCondition *compound;
+               Appearance::Loader app_loader;
 
        public:
-               Loader(Category &, CompoundCondition * = 0);
+               Loader(Category &, const PoeFilter &, CompoundCondition * = 0);
 
        protected:
                template<typename T>
@@ -29,6 +33,7 @@ public:
 
        private:
                void and_();
+               void appearance(const std::string &);
 
                template<typename T>
                void condition(typename T::Type);
@@ -48,11 +53,8 @@ public:
 
 private:
        Condition *condition;
-       float font_size;
-       std::string border_color;
        unsigned order;
-       unsigned sound_type;
-       unsigned sound_volume;
+       Appearance appearance;
 
 public:
        Category();
@@ -61,7 +63,7 @@ public:
        ~Category();
 
        unsigned get_order() const { return order; }
-       void create_statements(std::list<FilterStatement> &, const Theme &) const;
+       void create_statements(std::list<FilterStatement> &) const;
 };
 
 #endif