1 /*
2  * Nautilus-Actions
3  * A Nautilus extension which offers configurable context menu actions.
4  *
5  * Copyright (C) 2005 The GNOME Foundation
6  * Copyright (C) 2006-2008 Frederic Ruaudel and others (see AUTHORS)
7  * Copyright (C) 2009-2014 Pierre Wieser and others (see AUTHORS)
8  *
9  * Nautilus-Actions is free software; you can redistribute it and/or
10  * modify it under the terms of the GNU General Public License as
11  * published by the Free Software Foundation; either version 2 of
12  * the License, or (at your option) any later version.
13  *
14  * Nautilus-Actions is distributed in the hope that it will be useful,
15  * but WITHOUT ANY WARRANTY; without even the implied warranty of
16  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17  * General Public License for more details.
18  *
19  * You should have received a copy of the GNU General Public License
20  * along with Nautilus-Actions; see the file COPYING. If not, see
21  * <http://www.gnu.org/licenses/>.
22  *
23  * Authors:
24  *   Frederic Ruaudel <grumz@grumz.net>
25  *   Rodrigo Moya <rodrigo@gnome-db.org>
26  *   Pierre Wieser <pwieser@trychlos.org>
27  *   ... and many others (see AUTHORS)
28  */
29 
30 #ifdef HAVE_CONFIG_H
31 #include <config.h>
32 #endif
33 
34 #include "nact-assistant-export.h"
35 #include "nact-assistant-import.h"
36 #include "nact-menubar-priv.h"
37 
38 /**
39  * nact_menubar_tools_on_update_sensitivities:
40  * @bar: this #NactMenubar object.
41  *
42  * Update sensitivities on the Tools menu.
43  */
44 void
nact_menubar_tools_on_update_sensitivities(const NactMenubar * bar)45 nact_menubar_tools_on_update_sensitivities( const NactMenubar *bar )
46 {
47 	/* import item enabled if at least one writable provider */
48 	nact_menubar_enable_item( bar, "ImportItem", bar->private->has_writable_providers );
49 
50 	/* export item enabled if IActionsList store contains actions */
51 	nact_menubar_enable_item( bar, "ExportItem", bar->private->have_exportables );
52 }
53 
54 /**
55  * nact_menubar_tools_on_import:
56  * @action: the #GtkAction of the item.
57  * @window: the #BaseWindow main application window.
58  *
59  * Triggers the "Tools/Import assitant" item.
60  */
61 void
nact_menubar_tools_on_import(GtkAction * action,BaseWindow * window)62 nact_menubar_tools_on_import( GtkAction *action, BaseWindow *window )
63 {
64 	nact_assistant_import_run( BASE_WINDOW( window ));
65 }
66 
67 /**
68  * nact_menubar_tools_on_export:
69  * @action: the #GtkAction of the item.
70  * @window: the #BaseWindow main application window.
71  *
72  * Triggers the "Tools/Export assistant" item.
73  */
74 void
nact_menubar_tools_on_export(GtkAction * action,BaseWindow * window)75 nact_menubar_tools_on_export( GtkAction *action, BaseWindow *window )
76 {
77 	nact_assistant_export_run( BASE_WINDOW( window ));
78 }
79