X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;ds=sidebyside;f=source%2Flayout.h;h=2e58505881c351856c0bc0aedc015da5a984f439;hb=aa9b8db38efb9e97460c76e27cecc4d1591b23e5;hp=7986686c86e440757cbe6d2172526fa8844b275e;hpb=56c41b294aa47a38ac3e1be70d4868f260cb4274;p=libs%2Fgltk.git diff --git a/source/layout.h b/source/layout.h index 7986686..2e58505 100644 --- a/source/layout.h +++ b/source/layout.h @@ -1,8 +1,8 @@ #ifndef MSP_GLTK_LAYOUT_H_ #define MSP_GLTK_LAYOUT_H_ -#include #include +#include #include #include #include "geometry.h" @@ -132,32 +132,30 @@ private: struct Constraint { ConstraintType type; - Slot ⌖ - int spacing; + Slot *target = nullptr; + int spacing = -1; Constraint(ConstraintType, Slot &); }; struct Packing { - int gravity; - bool expand; - - Packing(); + int gravity = -1; + bool expand = false; }; struct Slot: public sigc::trackable { Layout &layout; - int index; + int index = 0; Widget &widget; Geometry autosize_geom; Geometry geom; - std::list constraints; + std::vector constraints; Packing horiz_pack; Packing vert_pack; - bool ghost; - bool floating; + bool ghost = false; + bool floating = false; Slot(Layout &, Widget &); @@ -174,20 +172,19 @@ private: class LinearProgram; struct Pointers; - Container *container; - std::list slots; - unsigned n_active_slots; - unsigned n_slack_vars[2]; - Sides margin; - unsigned row_spacing; - unsigned col_spacing; + Container *container = nullptr; + std::vector slots; + std::size_t n_active_slots = 0; + std::size_t n_slack_vars[2] = { 0, 0 }; + Sides margin{ 8 }; + unsigned row_spacing = 5; + unsigned col_spacing = 4; Geometry autosize_geom; - std::list arrangement_stack; + std::vector arrangement_stack; static Pointers pointers[2]; public: - Layout(); ~Layout(); void set_container(Container &);