X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;ds=sidebyside;f=source%2Fpart.h;h=58386ca8f611560ad5fa21ba9cf28b8259dea365;hb=be8ea35fe6eabe4c68d2d337634f21c63c964265;hp=b8761e6a8436e9cd9b5ab830cba49129c98c9228;hpb=c1f038acb91eb3bfaa34dfd4729d19ed3f871a42;p=libs%2Fgltk.git diff --git a/source/part.h b/source/part.h index b8761e6..58386ca 100644 --- a/source/part.h +++ b/source/part.h @@ -3,7 +3,7 @@ #include #include -#include +#include #include "alignment.h" #include "state.h" @@ -16,29 +16,35 @@ class Resources; class Part { public: - class Loader: public Parser::Loader + class Loader: public DataFile::Loader { - public: - Loader(Part &); private: Part ∂ + Resources &res; + public: + Loader(Part &, Resources &); + ~Loader(); + private: void graphic(State, const std::string &); void align(int, int); void fill(bool, bool); }; - Part(const Resources &, const std::string &); + Part(const std::string &); const std::string &get_name() const { return name; } const Graphic *get_graphic(State) const; + unsigned get_width() const { return width; } + unsigned get_height() const { return height; } const Alignment &get_alignment() const { return align; } bool get_fill_x() const { return fill_x; } bool get_fill_y() const { return fill_y; } void render(const Geometry &, State) const; private: - const Resources &res; std::string name; const Graphic *graphic[N_STATES_]; + unsigned width; + unsigned height; Alignment align; bool fill_x; bool fill_y;