Sisyphus repositório
Última atualização: 1 outubro 2023 | SRPMs: 18631 | Visitas: 37909233
en ru br
ALT Linux repositórios
S:1.26.1-alt2

Group :: Graphical desktop/MATE
RPM: mate-control-center

 Main   Changelog   Spec   Patches   Sources   Download   Gear   Bugs e FR  Repocop 

Patch: mate-control-center_fv-add-an-application-menu.patch
Download


diff -uprN mate-control-center/font-viewer/font-view.c mate-control-center-test/font-viewer/font-view.c
--- mate-control-center/font-viewer/font-view.c	2015-08-23 21:12:05.098962705 +0200
+++ mate-control-center-test/font-viewer/font-view.c	2015-08-23 21:30:01.655132639 +0200
@@ -73,6 +73,22 @@ G_DEFINE_TYPE (FontViewApplication, font
 
 static void font_view_application_do_overview (FontViewApplication *self);
 
+static const gchar *app_menu =
+    "<interface>"
+    "  <menu id=\"app-menu\">"
+    "    <section>"
+    "      <item>"
+    "        <attribute name=\"action\">app.about</attribute>"
+    "	     <attribute name=\"label\" translatable=\"yes\">About Font Viewer</attribute>"
+    "      </item>"
+    "      <item>"
+    "       <attribute name=\"action\">app.quit</attribute>"
+    "	    <attribute name=\"label\" translatable=\"yes\">Quit</attribute>"
+    "      </item>"
+    "    </section>"
+    "  <menu>"
+    "</interface>";
+
 #define VIEW_ITEM_WIDTH 140
 #define VIEW_ITEM_WRAP_WIDTH 128
 #define VIEW_COLUMN_SPACING 36
@@ -531,13 +547,65 @@ font_view_application_open (GApplication
 }
 
 static void
+action_quit (GSimpleAction *action,
+             GVariant *parameter,
+             gpointer user_data)
+{
+    FontViewApplication *self = user_data;
+    gtk_widget_destroy (self->main_window);
+}
+
+static void
+action_about (GSimpleAction *action,
+              GVariant *parameter,
+              gpointer user_data)
+{
+    FontViewApplication *self = user_data;
+    const gchar *authors[] = {
+        "Mate Developer",
+        "Cosimo Cecchi",
+        "James Henstridge",
+        NULL
+    };
+
+    gtk_show_about_dialog (GTK_WINDOW (self->main_window),
+                           "version", VERSION,
+                           "authors", authors,
+                           "program-name", _("Font Viewer"),
+                           "comments", _("View fonts on your system"),
+                           "logo-icon-name", "preferences-desktop-font",
+                           "translator-credits", _("translator-credits"),
+                           "license-type", GTK_LICENSE_GPL_2_0,
+                           "wrap-license", TRUE,
+                           NULL);
+                           
+}
+
+static GActionEntry action_entries[] = {
+    { "about", action_about, NULL, NULL, NULL },
+    { "quit", action_quit, NULL, NULL, NULL }
+};
+
+static void
 font_view_application_startup (GApplication *application)
 {
     FontViewApplication *self = FONT_VIEW_APPLICATION (application);
     GtkWidget *window, *swin;
+    GtkBuilder *builder;
+    GMenuModel *menu;
 
     G_APPLICATION_CLASS (font_view_application_parent_class)->startup (application);
 
+    g_action_map_add_action_entries (G_ACTION_MAP (self), action_entries, 
+                                     G_N_ELEMENTS (action_entries), self);
+    builder = gtk_builder_new ();
+    gtk_builder_add_from_string (builder, app_menu, -1, NULL);
+    menu = G_MENU_MODEL (gtk_builder_get_object (builder, "app-menu"));
+    gtk_application_set_app_menu (GTK_APPLICATION (self), menu);
+
+    g_object_unref (builder);
+    g_object_unref (menu);
+
     self->model = font_view_model_new ();
 
     self->main_window = window = gtk_application_window_new (GTK_APPLICATION (application));
 
projeto & código: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
mantenedor atual: Michael Shigorin
mantenedor da tradução: Fernando Martini aka fmartini © 2009