1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
|
#include <config.h>
#include "attribute.h"
#include <disfluid-adwaita.h>
#define STREQ(a, b) (strcmp ((a), (b)) == 0)
#define STRNEQ(a, b) (! (STREQ (a, b)))
#include <locale.h>
#include <stdio.h>
#include <unistd.h>
#include "gettext.h"
#include "relocatable.h"
#define _(String) dgettext (PACKAGE, (String))
#define N_(String) (String)
#include <disfluid.h>
#include <glib-object.h>
#include <adwaita.h>
#include <gtk/gtk.h>
struct _DisfluidAdwWindow
{
AdwApplicationWindow parent_instance;
};
struct _DisfluidAdwWindowClass
{
AdwApplicationWindowClass parent_instance;
};
/* *INDENT-OFF* */
G_DEFINE_TYPE (DisfluidAdwWindow, disfluid_adw_window, ADW_TYPE_APPLICATION_WINDOW)
/* *INDENT-ON* */
static void
disfluid_adw_window_class_init (DisfluidAdwWindowClass * klass)
{
(void) klass;
}
static void
disfluid_adw_window_init (DisfluidAdwWindow * self)
{
(void) self;
/* Perform default initialization of self. */
GMenu *main_menu = disfluid_adw_main_menu ();
GtkWidget *menu_button = gtk_menu_button_new ();
GtkWidget *header_bar = adw_header_bar_new ();
gtk_menu_button_set_icon_name (GTK_MENU_BUTTON (menu_button), "open-menu");
gtk_menu_button_set_menu_model (GTK_MENU_BUTTON (menu_button),
G_MENU_MODEL (main_menu));
g_object_unref (main_menu);
adw_header_bar_pack_end (ADW_HEADER_BAR (header_bar), menu_button);
GtkWidget *main_page = adw_status_page_new ();
adw_status_page_set_icon_name (ADW_STATUS_PAGE (main_page), "face-smile");
adw_status_page_set_title (ADW_STATUS_PAGE (main_page), _("Hello, world!"));
adw_status_page_set_description (ADW_STATUS_PAGE (main_page), _("\
There is nothing here yet, please come back later."));
GtkWidget *content = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0);
gtk_box_append (GTK_BOX (content), header_bar);
gtk_box_append (GTK_BOX (content), main_page);
adw_application_window_set_content (ADW_APPLICATION_WINDOW (self), content);
}
GtkWidget *
disfluid_adw_window_new (GtkApplication * app)
{
GtkWidget *self = NULL;
self =
(GtkWidget *) g_object_new (DISFLUID_ADW_TYPE_WINDOW,
"application", app, NULL);
return self;
}
|