~elementary-apps/pantheon-files/trunk

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
/***
    Copyright (c) 2015-2017 elementary LLC (http://launchpad.net/elementary)

    Marlin is free software; you can redistribute it and/or
    modify it under the terms of the GNU General Public License as
    published by the Free Software Foundation; either version 2 of the
    License, or (at your option) any later version.

    Marlin is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
    General Public License for more details.

    You should have received a copy of the GNU General Public
    License along with this program; see the file COPYING.  If not,
    write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
    Boston, MA 02111-1307, USA.

    Author(s):  Jeremy Wootten <jeremy@elementaryos.org>

***/

namespace Marlin.View
{

    public static int show_dialog (string message, Gtk.MessageType type, Gtk.ButtonsType buttons) {
        var dialog = new Gtk.MessageDialog (null, Gtk.DialogFlags.MODAL,
                                            type, buttons, "%s", message);

        dialog.set_position (Gtk.WindowPosition.MOUSE);
        var response = dialog.run ();
        dialog.destroy ();
        return response;
    }

    public class Welcome : Granite.Widgets.Welcome {

        public Welcome (string primary, string secondary) {
            base (primary, secondary);
            this.button_press_event.connect (on_button_press_event);
            show_all ();
        }

        public bool on_button_press_event (Gdk.EventButton event) {
            /* Pass Back and Forward button events to toplevel window */
            switch (event.button) {
                case 6:
                case 7:
                case 8:
                case 9:
                    return get_toplevel ().button_press_event (event);
                default:
                    return base.button_press_event (event);
            }
        }
    }
}