8 #define WANT_WIDGETS /* bleah */
12 #include "layout.h" /* get_panel_widget */
13 #include "ext.h" /* regex_command */
14 #include "cmd.h" /* copy_cmd, ren_cmd, delete_cmd, ... */
18 #include "../vfs/vfs.h"
21 gmc_execute (char *fname
, char *buf
)
23 exec_extension (fname
, buf
, NULL
, NULL
, 0);
27 gmc_open_filename (char *fname
, GList
*args
)
29 char *mime_type
, *cmd
;
33 if (gnome_metadata_get (fname
, "fm-open", &size
, &buf
) == 0){
34 gmc_execute (fname
, buf
);
39 if (gnome_metadata_get (fname
, "open", &size
, &buf
) == 0){
40 gmc_execute (fname
, buf
);
45 mime_type
= gnome_mime_type_or_default (fname
, NULL
);
50 cmd
= gnome_mime_get_value (mime_type
, "fm-open");
53 gmc_execute (fname
, cmd
);
57 cmd
= gnome_mime_get_value (mime_type
, "open");
59 gmc_execute (fname
, cmd
);
66 gmc_open (file_entry
*fe
)
68 return gmc_open_filename (fe
->fname
, NULL
);
72 gmc_run_view (char *filename
, char *buf
)
74 exec_extension (filename
, buf
, NULL
, NULL
, 0);
78 gmc_view (char *filename
, int start_line
)
80 char *mime_type
, *cmd
;
84 if (gnome_metadata_get (filename
, "fm-view", &size
, &buf
) == 0){
85 gmc_run_view (filename
, buf
);
90 if (gnome_metadata_get (filename
, "view", &size
, &buf
) == 0){
91 gmc_run_view (filename
, buf
);
96 mime_type
= gnome_mime_type_or_default (filename
, NULL
);
101 cmd
= gnome_mime_get_value (mime_type
, "fm-view");
104 gmc_run_view (filename
, cmd
);
108 cmd
= gnome_mime_get_value (mime_type
, "view");
110 gmc_run_view (filename
, cmd
);