]> git.tdb.fi Git - libs/gltk.git/blob - source/row.h
58480db013c16da4e5924f10f57d11beef8b5c74
[libs/gltk.git] / source / row.h
1 #ifndef MSP_GLTK_ROW_H_
2 #define MSP_GLTK_ROW_H_
3
4 #include <msp/datafile/objectloader.h>
5 #include "arrangement.h"
6
7 namespace Msp {
8 namespace GLtk {
9
10 class Row: public Arrangement
11 {
12 public:
13         class Loader: public DataFile::ObjectLoader<Row>
14         {
15         public:
16                 Loader(Row &);
17         private:
18                 void split();
19         };
20
21 private:
22         Edge next_right;
23         bool first;
24         bool split_here;
25         int gravity;
26
27 public:
28         Row(Layout &);
29
30         void split();
31
32 private:
33         virtual void process_widget(Widget &, Side, bool);
34         virtual void finish_widget(Widget &);
35         virtual void finish_slot();
36 };
37
38 } // namespace GLtk
39 } // namespace Msp
40
41 #endif