#ifndef MSP_GLTK_COLUMN_H_
#define MSP_GLTK_COLUMN_H_
-#include "layout.h"
+#include <msp/datafile/objectloader.h>
+#include "arrangement.h"
namespace Msp {
namespace GLtk {
-/**
-Arranges widgets in a single column.
-*/
-class Column: public Layout
+class Column: public Arrangement
{
+public:
+ class Loader: public DataFile::ObjectLoader<Column>
+ {
+ public:
+ Loader(Column &);
+ private:
+ void split();
+ };
+
private:
- bool uniform;
+ Edge next_bottom;
+ bool first;
+ bool split_here;
+ int gravity;
public:
- Column(bool = false);
+ Column(Layout &);
+
+ void split();
private:
- virtual Slot *create_slot(Widget &);
+ virtual void process_widget(Widget &, Side, bool);
+ virtual void finish_widget(Widget &);
+ virtual void finish_slot();
};
} // namespace GLtk