/usr/share/help/fr/gnome-devel-demos/gmenu.js.page is in gnome-devel-docs 3.18.1-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
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 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 | <?xml version="1.0" encoding="utf-8"?>
<page xmlns="http://projectmallard.org/1.0/" xmlns:its="http://www.w3.org/2005/11/its" xmlns:xi="http://www.w3.org/2001/XInclude" type="guide" style="task" id="gmenu.js" xml:lang="fr">
<info>
<title type="text">GMenu (JavaScript)</title>
<link type="guide" xref="beginner.js#menu-combo-toolbar"/>
<revision version="0.1" date="2012-04-07" status="draft"/>
<credit type="author copyright">
<name>Tiffany Antopolski</name>
<email its:translate="no">tiffany.antopolski@gmail.com</email>
<years>2012</years>
</credit>
<desc>Une implémentation simple de GMenuModel</desc>
<mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
<mal:name>Luc Rebert,</mal:name>
<mal:email>traduc@rebert.name</mal:email>
<mal:years>2011</mal:years>
</mal:credit>
<mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
<mal:name>Alain Lojewski,</mal:name>
<mal:email>allomervan@gmail.com</mal:email>
<mal:years>2011-2012</mal:years>
</mal:credit>
<mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
<mal:name>Luc Pionchon</mal:name>
<mal:email>pionchon.luc@gmail.com</mal:email>
<mal:years>2011</mal:years>
</mal:credit>
<mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
<mal:name>Bruno Brouard</mal:name>
<mal:email>annoa.b@gmail.com</mal:email>
<mal:years>2011-12</mal:years>
</mal:credit>
<mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
<mal:name>Luis Menina</mal:name>
<mal:email>liberforce@freeside.fr</mal:email>
<mal:years>2014</mal:years>
</mal:credit>
</info>
<title>GMenu</title>
<media type="image" mime="image/png" src="media/gmenu.js.png"/>
<p>Une application Gtk avec un GMenu de base et des SimpleActions</p>
<code mime="application/javascript" style="numbered">#!/usr/bin/gjs
const Gio = imports.gi.Gio;
const GLib = imports.gi.GLib;
const Gtk = imports.gi.Gtk;
const Lang = imports.lang;
const Application = new Lang.Class ({
Name: 'Application',
//create the application
_init: function () {
this.application = new Gtk.Application ({
application_id: 'org.example.myapp',
flags: Gio.ApplicationFlags.FLAGS_NONE
});
//connect to 'activate' and 'startup' signals to the callback functions
this.application.connect('activate', Lang.bind(this, this._onActivate));
this.application.connect('startup', Lang.bind(this, this._onStartup));
},
//create the UI (in this case it's just the ApplicationWindow
_buildUI: function() {
this._window = new Gtk.ApplicationWindow ({ application: this.application,
window_position: Gtk.WindowPosition.CENTER,
title: "Welcome to GNOME" });
//uncommenting the line below will change the window size
//this._window.set_default_size(600, 400);
//show the window and all child widgets (none in this case)
this._window.show_all();
},
_showNew: function() {
print ("This doesn't do anything. It is only a demonstration.");
},
_showAbout: function() {
print ("No AboutDialog here. This is only a demonstration.");
},
//create the menu items and connect the signals to the callback functions.
_initMenus: function() {
let menu = new Gio.Menu();
menu.append("New",'app.new');
menu.append("About", 'app.about');
menu.append("Quit",'app.quit');
this.application.set_app_menu(menu);
let newAction = new Gio.SimpleAction ({ name: 'new' });
newAction.connect('activate', Lang.bind(this,
function() {
this._showNew();
}));
this.application.add_action(newAction);
let aboutAction = new Gio.SimpleAction ({ name: 'about' });
aboutAction.connect('activate', Lang.bind(this,
function() {
this._showAbout();
}));
this.application.add_action(aboutAction);
let quitAction = new Gio.SimpleAction ({ name: 'quit' });
quitAction.connect('activate', Lang.bind(this,
function() {
this._window.destroy();
}));
this.application.add_action(quitAction);
},
//callback function for 'activate' signal
_onActivate: function() {
this._window.present();
},
//callback function for 'startup' signal
_onStartup: function() {
//You must call _initMenus() before calling _buildUI().
this._initMenus();
this._buildUI();
}
});
//run the application
let app = new Application ();
app.application.run (ARGV);
</code>
<p>Dans cet exemple, les éléments suivants sont utilisés :</p>
<list>
<item><p><link href="http://developer.gnome.org/gio/unstable/GMenu.html">GMenu</link></p></item>
<item><p><link href="http://developer.gnome.org/gio/stable/GSimpleAction.html">GSimpleAction</link></p></item>
</list>
</page>
|