5 {
6
7 var header = new Gtk.HeaderBar();
8 header.set_show_title_buttons(false);
9 header.set_decoration_layout("");
10 header.get_style_context().add_class("custom-headerbar");
11
12 var root = new Gtk.Box(Gtk.Orientation.HORIZONTAL, 0);
13 root.hexpand = true;
14
15 var header_left = new Gtk.Box(Gtk.Orientation.HORIZONTAL, 0);
16 header_left.set_size_request(left_width, -1);
17 header_left.get_style_context().add_class("header-left");
18 root.append(header_left);
19
20 var header_mid = new Gtk.Box(Gtk.Orientation.HORIZONTAL, 0);
21 header_mid.hexpand = true;
22 header_mid.get_style_context().add_class("header-right");
23 root.append(header_mid);
24
25 var header_right = new Gtk.Box(Gtk.Orientation.HORIZONTAL, 0);
26 header_right.get_style_context().add_class("header-right");
27 header_right.valign = Gtk.Align.CENTER;
28 header_right.margin_end = 6;
29
30 var btn_min = new Gtk.Button();
31 btn_min.set_child(IconManager.lookup_image("window-minimize-symbolic", 16));
32 btn_min.get_style_context().add_class("header-button");
33 btn_min.clicked.connect(() => { win.minimize(); });
34 header_right.append(btn_min);
35
36 var btn_close = new Gtk.Button();
37 btn_close.set_child(IconManager.lookup_image("window-close-symbolic", 16));
38 btn_close.get_style_context().add_class("header-button");
39 btn_close.clicked.connect(() => { win.close(); });
40 header_right.append(btn_close);
41
42 root.append(header_right);
43 header.set_title_widget(root);
44
45 return header;
46 }