1 /* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 8; tab-width: 8 -*- */
2 
3 /* caja-program-choosing.h - functions for selecting and activating
4  				 programs for opening/viewing particular files.
5 
6    Copyright (C) 2000 Eazel, Inc.
7 
8    The Mate Library is free software; you can redistribute it and/or
9    modify it under the terms of the GNU Library General Public License as
10    published by the Free Software Foundation; either version 2 of the
11    License, or (at your option) any later version.
12 
13    The Mate Library is distributed in the hope that it will be useful,
14    but WITHOUT ANY WARRANTY; without even the implied warranty of
15    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
16    Library General Public License for more details.
17 
18    You should have received a copy of the GNU Library General Public
19    License along with the Mate Library; see the file COPYING.LIB.  If not,
20    write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
21    Boston, MA 02110-1301, USA.
22 
23    Author: John Sullivan <sullivan@eazel.com>
24 */
25 
26 #ifndef CAJA_PROGRAM_CHOOSING_H
27 #define CAJA_PROGRAM_CHOOSING_H
28 
29 #include <gtk/gtk.h>
30 #include <gio/gio.h>
31 
32 #include "caja-file.h"
33 
34 typedef void (*CajaApplicationChoiceCallback) (GAppInfo                      *application,
35         gpointer			  callback_data);
36 
37 void caja_launch_application                 (GAppInfo                          *application,
38         GList                             *files,
39         GtkWindow                         *parent_window);
40 void caja_launch_application_by_uri          (GAppInfo                          *application,
41         GList                             *uris,
42         GtkWindow                         *parent_window);
43 void caja_launch_application_from_command    (GdkScreen                         *screen,
44         const char                        *name,
45         const char                        *command_string,
46         gboolean                           use_terminal,
47         ...) G_GNUC_NULL_TERMINATED;
48 void caja_launch_application_from_command_array (GdkScreen                         *screen,
49         const char                        *name,
50         const char                        *command_string,
51         gboolean                           use_terminal,
52         const char * const *               parameters);
53 void caja_launch_desktop_file		 (GdkScreen                         *screen,
54                                       const char                        *desktop_file_uri,
55                                       const GList                       *parameter_uris,
56                                       GtkWindow                         *parent_window);
57 
58 #endif /* CAJA_PROGRAM_CHOOSING_H */
59