~ubuntu-branches/debian/sid/gnome-terminal/sid

« back to all changes in this revision

Viewing changes to src/terminal-profile.h

  • Committer: Package Import Robot
  • Author(s): Michael Biebl, Emilio Pozuelo Monfort, Michael Biebl
  • Date: 2013-06-05 22:23:26 UTC
  • mfrom: (1.6.15) (10.1.9 experimental)
  • Revision ID: package-import@ubuntu.com-20130605222326-ymxsw4ia0vri1zwh
Tags: 3.8.2-1
[ Emilio Pozuelo Monfort ]
* Remove obsolete build dependency on scrollkeeper.

[ Michael Biebl ]
* Upload to unstable.
* New upstream release.
* Bump Standards-Version to 3.9.4. No further changes.
* Add Build-Depends on autotools-dev as lintian was complaining about
  outdated config.{guess,sub}.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/*
2
 
 * Copyright © 2001 Havoc Pennington
3
 
 * Copyright © 2002 Mathias Hasselmann
4
 
 * Copyright © 2008 Christian Persch
5
 
 *
6
 
 * This library is free software; you can redistribute it and/or
7
 
 * modify it under the terms of the GNU Library General Public
8
 
 * License as published by the Free Software Foundation; either
9
 
 * version 3 of the License, or (at your option) any later version.
10
 
 *
11
 
 * This library is distributed in the hope that it will be useful,
12
 
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
 
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
14
 
 * Library General Public License for more details.
15
 
 *
16
 
 * You should have received a copy of the GNU Library General Public
17
 
 * License along with this library; if not, write to the
18
 
 * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
19
 
 * Boston, MA 02111-1307, USA.
20
 
 */
21
 
 
22
 
#ifndef TERMINAL_PROFILE_H
23
 
#define TERMINAL_PROFILE_H
24
 
 
25
 
#include <gtk/gtk.h>
26
 
 
27
 
G_BEGIN_DECLS
28
 
 
29
 
typedef enum
30
 
{
31
 
  /* this has to be kept in sync with the option menu in the profile editor UI file */
32
 
  TERMINAL_TITLE_REPLACE,
33
 
  TERMINAL_TITLE_BEFORE,
34
 
  TERMINAL_TITLE_AFTER,
35
 
  TERMINAL_TITLE_IGNORE
36
 
} TerminalTitleMode;
37
 
 
38
 
typedef enum
39
 
{
40
 
  TERMINAL_SCROLLBAR_LEFT,
41
 
  TERMINAL_SCROLLBAR_RIGHT,
42
 
  TERMINAL_SCROLLBAR_HIDDEN
43
 
} TerminalScrollbarPosition;
44
 
 
45
 
typedef enum 
46
 
{
47
 
  TERMINAL_EXIT_CLOSE,
48
 
  TERMINAL_EXIT_RESTART,
49
 
  TERMINAL_EXIT_HOLD
50
 
} TerminalExitAction;
51
 
 
52
 
typedef enum
53
 
{
54
 
  TERMINAL_BACKGROUND_SOLID,
55
 
  TERMINAL_BACKGROUND_IMAGE,
56
 
  TERMINAL_BACKGROUND_TRANSPARENT
57
 
} TerminalBackgroundType;
58
 
 
59
 
#define TERMINAL_PALETTE_SIZE 16
60
 
 
61
 
#define TERMINAL_PALETTE_TANGO 0
62
 
#define TERMINAL_PALETTE_LINUX 1
63
 
#define TERMINAL_PALETTE_XTERM 2
64
 
#define TERMINAL_PALETTE_RXVT 3
65
 
#define TERMINAL_PALETTE_N_BUILTINS 4
66
 
 
67
 
/* Property names */
68
 
#define TERMINAL_PROFILE_ALLOW_BOLD             "allow-bold"
69
 
#define TERMINAL_PROFILE_BACKGROUND_COLOR       "background-color"
70
 
#define TERMINAL_PROFILE_BACKGROUND_DARKNESS    "background-darkness"
71
 
#define TERMINAL_PROFILE_BACKGROUND_IMAGE       "background-image"
72
 
#define TERMINAL_PROFILE_BACKGROUND_IMAGE_FILE  "background-image-file"
73
 
#define TERMINAL_PROFILE_BACKGROUND_TYPE        "background-type"
74
 
#define TERMINAL_PROFILE_BACKSPACE_BINDING      "backspace-binding"
75
 
#define TERMINAL_PROFILE_BOLD_COLOR             "bold-color"
76
 
#define TERMINAL_PROFILE_BOLD_COLOR_SAME_AS_FG  "bold-color-same-as-fg"
77
 
#define TERMINAL_PROFILE_CURSOR_BLINK_MODE      "cursor-blink-mode"
78
 
#define TERMINAL_PROFILE_CURSOR_SHAPE           "cursor-shape"
79
 
#define TERMINAL_PROFILE_CUSTOM_COMMAND         "custom-command"
80
 
#define TERMINAL_PROFILE_DEFAULT_SHOW_MENUBAR   "default-show-menubar"
81
 
#define TERMINAL_PROFILE_DEFAULT_SIZE_COLUMNS   "default-size-columns"
82
 
#define TERMINAL_PROFILE_DEFAULT_SIZE_ROWS      "default-size-rows"
83
 
#define TERMINAL_PROFILE_DELETE_BINDING         "delete-binding"
84
 
#define TERMINAL_PROFILE_ENCODING               "encoding"
85
 
#define TERMINAL_PROFILE_EXIT_ACTION            "exit-action"
86
 
#define TERMINAL_PROFILE_FONT                   "font"
87
 
#define TERMINAL_PROFILE_FOREGROUND_COLOR       "foreground-color"
88
 
#define TERMINAL_PROFILE_LOGIN_SHELL            "login-shell"
89
 
#define TERMINAL_PROFILE_NAME                   "name"
90
 
#define TERMINAL_PROFILE_PALETTE                "palette"
91
 
#define TERMINAL_PROFILE_SCROLL_BACKGROUND      "scroll-background"
92
 
#define TERMINAL_PROFILE_SCROLLBACK_LINES       "scrollback-lines"
93
 
#define TERMINAL_PROFILE_SCROLLBACK_UNLIMITED   "scrollback-unlimited"
94
 
#define TERMINAL_PROFILE_SCROLLBAR_POSITION     "scrollbar-position"
95
 
#define TERMINAL_PROFILE_SCROLL_ON_KEYSTROKE    "scroll-on-keystroke"
96
 
#define TERMINAL_PROFILE_SCROLL_ON_OUTPUT       "scroll-on-output"
97
 
#define TERMINAL_PROFILE_SILENT_BELL            "silent-bell"
98
 
#define TERMINAL_PROFILE_TITLE_MODE             "title-mode"
99
 
#define TERMINAL_PROFILE_TITLE                  "title"
100
 
#define TERMINAL_PROFILE_UPDATE_RECORDS         "update-records"
101
 
#define TERMINAL_PROFILE_USE_CUSTOM_COMMAND     "use-custom-command"
102
 
#define TERMINAL_PROFILE_USE_CUSTOM_DEFAULT_SIZE "use-custom-default-size"
103
 
#define TERMINAL_PROFILE_USE_SYSTEM_FONT        "use-system-font"
104
 
#define TERMINAL_PROFILE_USE_THEME_COLORS       "use-theme-colors"
105
 
#define TERMINAL_PROFILE_VISIBLE_NAME           "visible-name"
106
 
#define TERMINAL_PROFILE_WORD_CHARS             "word-chars"
107
 
 
108
 
/* TerminalProfile object */
109
 
 
110
 
#define TERMINAL_TYPE_PROFILE              (terminal_profile_get_type ())
111
 
#define TERMINAL_PROFILE(object)           (G_TYPE_CHECK_INSTANCE_CAST ((object), TERMINAL_TYPE_PROFILE, TerminalProfile))
112
 
#define TERMINAL_PROFILE_CLASS(klass)      (G_TYPE_CHECK_CLASS_CAST ((klass), TERMINAL_TYPE_PROFILE, TerminalProfileClass))
113
 
#define TERMINAL_IS_PROFILE(object)        (G_TYPE_CHECK_INSTANCE_TYPE ((object), TERMINAL_TYPE_PROFILE))
114
 
#define TERMINAL_IS_PROFILE_CLASS(klass)   (G_TYPE_CHECK_CLASS_TYPE ((klass), TERMINAL_TYPE_PROFILE))
115
 
#define TERMINAL_PROFILE_GET_CLASS(obj)    (G_TYPE_INSTANCE_GET_CLASS ((obj), TERMINAL_TYPE_PROFILE, TerminalProfileClass))
116
 
 
117
 
typedef struct _TerminalProfile        TerminalProfile;
118
 
typedef struct _TerminalProfileClass   TerminalProfileClass;
119
 
typedef struct _TerminalProfilePrivate TerminalProfilePrivate;
120
 
 
121
 
struct _TerminalProfile
122
 
{
123
 
  GObject parent_instance;
124
 
 
125
 
  TerminalProfilePrivate *priv;
126
 
};
127
 
 
128
 
struct _TerminalProfileClass
129
 
{
130
 
  GObjectClass parent_class;
131
 
 
132
 
  void (* forgotten) (TerminalProfile           *profile);
133
 
 
134
 
  GHashTable *gconf_keys;
135
 
};
136
 
 
137
 
GType             terminal_profile_get_type               (void);
138
 
 
139
 
TerminalProfile* _terminal_profile_new                    (const char *name);
140
 
 
141
 
void             _terminal_profile_forget                 (TerminalProfile *profile);
142
 
 
143
 
gboolean         _terminal_profile_get_forgotten          (TerminalProfile *profile);
144
 
 
145
 
TerminalProfile* _terminal_profile_clone                  (TerminalProfile *base_profile,
146
 
                                                           const char *visible_name);
147
 
 
148
 
gboolean          terminal_profile_property_locked        (TerminalProfile *profile,
149
 
                                                           const char *prop_name);
150
 
 
151
 
void              terminal_profile_reset_property         (TerminalProfile *profile,
152
 
                                                           const char *prop_name);
153
 
 
154
 
gboolean          terminal_profile_get_property_boolean   (TerminalProfile *profile,
155
 
                                                           const char *prop_name);
156
 
 
157
 
gconstpointer     terminal_profile_get_property_boxed     (TerminalProfile *profile,
158
 
                                                           const char *prop_name);
159
 
 
160
 
double            terminal_profile_get_property_double    (TerminalProfile *profile,
161
 
                                                           const char *prop_name);
162
 
 
163
 
int               terminal_profile_get_property_enum      (TerminalProfile *profile,
164
 
                                                           const char *prop_name);
165
 
 
166
 
int               terminal_profile_get_property_int       (TerminalProfile *profile,
167
 
                                                           const char *prop_name);
168
 
 
169
 
gpointer          terminal_profile_get_property_object    (TerminalProfile *profile,
170
 
                                                           const char *prop_name);
171
 
 
172
 
const char*       terminal_profile_get_property_string    (TerminalProfile *profile,
173
 
                                                           const char *prop_name);
174
 
 
175
 
gboolean          terminal_profile_get_palette            (TerminalProfile *profile,
176
 
                                                           GdkColor *colors,
177
 
                                                           guint *n_colors);
178
 
 
179
 
gboolean          terminal_profile_get_palette_is_builtin (TerminalProfile *profile,
180
 
                                                           guint *n);
181
 
 
182
 
void              terminal_profile_set_palette_builtin    (TerminalProfile *profile,
183
 
                                                           guint n);
184
 
 
185
 
gboolean          terminal_profile_modify_palette_entry   (TerminalProfile *profile,
186
 
                                                           guint            i,
187
 
                                                           const GdkColor  *color);
188
 
 
189
 
G_END_DECLS
190
 
 
191
 
#endif /* TERMINAL_PROFILE_H */