hints.hh (982B)
1 #ifndef __WINSYS_HINTS_H_GUARD__ 2 #define __WINSYS_HINTS_H_GUARD__ 3 4 #include "geometry.hh" 5 #include "window.hh" 6 7 #include <optional> 8 9 namespace winsys 10 { 11 12 struct SizeHints final 13 { 14 bool by_user; 15 std::optional<Pos> pos; 16 std::optional<int> min_width; 17 std::optional<int> min_height; 18 std::optional<int> max_width; 19 std::optional<int> max_height; 20 std::optional<int> base_width; 21 std::optional<int> base_height; 22 std::optional<int> inc_width; 23 std::optional<int> inc_height; 24 std::optional<double> min_ratio; 25 std::optional<double> max_ratio; 26 std::optional<Ratio> min_ratio_vulgar; 27 std::optional<Ratio> max_ratio_vulgar; 28 29 void apply(Dim&); 30 }; 31 32 struct Hints final 33 { 34 bool urgent; 35 std::optional<bool> input; 36 std::optional<IcccmWindowState> initial_state; 37 std::optional<Window> group; 38 }; 39 40 } 41 42 #endif//__WINSYS_HINTS_H_GUARD__