2
* Authors: Luca Cavalli <loopback@slackit.org>
4
* Copyright 2005-2006 Luca Cavalli
6
* This program is free software; you can redistribute it and/or modify
7
* it under the terms of version 2 of the GNU General Public License
8
* as published by the Free Software Foundation
10
* This program is distributed in the hope that it will be useful,
11
* but WITHOUT ANY WARRANTY; without even the implied warranty of
12
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
* GNU General Public License for more details.
15
* You should have received a copy of the GNU General Public License
16
* along with this program; if not, write to the Free Software
17
* Foundation, Inc., 59 Temple Street #330, Boston, MA 02111-1307, USA.
21
#ifndef _GNOME_DA_CAPPLET_H_
22
#define _GNOME_DA_CAPPLET_H_
25
#include <gconf/gconf-client.h>
27
// Set http, https, about, and unknown keys to the chosen web browser.
28
#define DEFAULT_APPS_KEY_HTTP_PATH "/desktop/gnome/url-handlers/http"
29
#define DEFAULT_APPS_KEY_HTTP_NEEDS_TERM DEFAULT_APPS_KEY_HTTP_PATH"/needs_terminal"
30
#define DEFAULT_APPS_KEY_HTTP_EXEC DEFAULT_APPS_KEY_HTTP_PATH"/command"
32
#define DEFAULT_APPS_KEY_HTTPS_PATH "/desktop/gnome/url-handlers/https"
33
#define DEFAULT_APPS_KEY_HTTPS_NEEDS_TERM DEFAULT_APPS_KEY_HTTPS_PATH"/needs_terminal"
34
#define DEFAULT_APPS_KEY_HTTPS_EXEC DEFAULT_APPS_KEY_HTTPS_PATH"/command"
36
// While gnome-vfs2 does not use the "unknown" key, several widespread apps like htmlview
37
// have read it for the past few years. Setting it should not hurt.
38
#define DEFAULT_APPS_KEY_UNKNOWN_PATH "/desktop/gnome/url-handlers/unknown"
39
#define DEFAULT_APPS_KEY_UNKNOWN_NEEDS_TERM DEFAULT_APPS_KEY_UNKNOWN_PATH"/needs_terminal"
40
#define DEFAULT_APPS_KEY_UNKNOWN_EXEC DEFAULT_APPS_KEY_UNKNOWN_PATH"/command"
42
// about:blank and other about: URI's are commonly used by browsers too
43
#define DEFAULT_APPS_KEY_ABOUT_PATH "/desktop/gnome/url-handlers/about"
44
#define DEFAULT_APPS_KEY_ABOUT_NEEDS_TERM DEFAULT_APPS_KEY_ABOUT_PATH"/needs_terminal"
45
#define DEFAULT_APPS_KEY_ABOUT_EXEC DEFAULT_APPS_KEY_ABOUT_PATH"/command"
47
#define DEFAULT_APPS_KEY_MAILER_PATH "/desktop/gnome/url-handlers/mailto"
48
#define DEFAULT_APPS_KEY_MAILER_NEEDS_TERM DEFAULT_APPS_KEY_MAILER_PATH"/needs_terminal"
49
#define DEFAULT_APPS_KEY_MAILER_EXEC DEFAULT_APPS_KEY_MAILER_PATH"/command"
51
#define DEFAULT_APPS_KEY_BROWSER_PATH "/desktop/gnome/applications/browser"
52
#define DEFAULT_APPS_KEY_BROWSER_EXEC DEFAULT_APPS_KEY_BROWSER_PATH"/exec"
53
#define DEFAULT_APPS_KEY_BROWSER_NEEDS_TERM DEFAULT_APPS_KEY_BROWSER_PATH"/needs_term"
54
#define DEFAULT_APPS_KEY_BROWSER_NREMOTE DEFAULT_APPS_KEY_BROWSER_PATH"/nremote"
56
#define DEFAULT_APPS_KEY_TERMINAL_PATH "/desktop/gnome/applications/terminal"
57
#define DEFAULT_APPS_KEY_TERMINAL_EXEC_ARG DEFAULT_APPS_KEY_TERMINAL_PATH"/exec_arg"
58
#define DEFAULT_APPS_KEY_TERMINAL_EXEC DEFAULT_APPS_KEY_TERMINAL_PATH"/exec"
60
#define DEFAULT_APPS_KEY_MEDIA_PATH "/desktop/gnome/applications/media"
61
#define DEFAULT_APPS_KEY_MEDIA_EXEC DEFAULT_APPS_KEY_MEDIA_PATH"/exec"
62
#define DEFAULT_APPS_KEY_MEDIA_NEEDS_TERM DEFAULT_APPS_KEY_MEDIA_PATH"/needs_term"
64
#define DEFAULT_APPS_KEY_VISUAL_PATH "/desktop/gnome/applications/at/visual"
65
#define DEFAULT_APPS_KEY_VISUAL_EXEC DEFAULT_APPS_KEY_VISUAL_PATH"/exec"
66
#define DEFAULT_APPS_KEY_VISUAL_STARTUP DEFAULT_APPS_KEY_VISUAL_PATH"/startup"
68
#define DEFAULT_APPS_KEY_MOBILITY_PATH "/desktop/gnome/applications/at/mobility"
69
#define DEFAULT_APPS_KEY_MOBILITY_EXEC DEFAULT_APPS_KEY_MOBILITY_PATH"/exec"
70
#define DEFAULT_APPS_KEY_MOBILITY_STARTUP DEFAULT_APPS_KEY_MOBILITY_PATH"/startup"
72
typedef struct _GnomeDACapplet GnomeDACapplet;
74
struct _GnomeDACapplet {
77
GtkIconTheme *icon_theme;
81
GtkWidget *web_combo_box;
82
GtkWidget *mail_combo_box;
83
GtkWidget *term_combo_box;
84
GtkWidget *media_combo_box;
85
GtkWidget *visual_combo_box;
86
GtkWidget *mobility_combo_box;
88
GtkWidget *web_browser_command_entry;
89
GtkWidget *web_browser_command_label;
90
GtkWidget *web_browser_terminal_checkbutton;
91
GtkWidget *default_radiobutton;
92
GtkWidget *new_win_radiobutton;
93
GtkWidget *new_tab_radiobutton;
95
GtkWidget *mail_reader_command_entry;
96
GtkWidget *mail_reader_command_label;
97
GtkWidget *mail_reader_terminal_checkbutton;
99
GtkWidget *terminal_command_entry;
100
GtkWidget *terminal_command_label;
101
GtkWidget *terminal_exec_flag_entry;
102
GtkWidget *terminal_exec_flag_label;
104
GtkWidget *media_player_command_entry;
105
GtkWidget *media_player_command_label;
106
GtkWidget *media_player_terminal_checkbutton;
108
GtkWidget *visual_command_entry;
109
GtkWidget *visual_command_label;
110
GtkWidget *visual_startup_checkbutton;
112
GtkWidget *mobility_command_entry;
113
GtkWidget *mobility_command_label;
114
GtkWidget *mobility_startup_checkbutton;
121
GList *media_players;