[Terminal] Add string properties
[tilda-gobject.git] / tilda-terminal.h
1 #ifndef TILDA_TERMINAL_H
2 #define TILDA_TERMINAL_H
3
4 #include <glib-object.h>
5
6 #define TILDA_TYPE_TERMINAL                             (tilda_terminal_get_type())
7 #define TILDA_TERMINAL(obj)                             (G_TYPE_CHECK_INSTANCE_CAST ((obj), TILDA_TYPE_TERMINAL))
8 #define TILDA_TERMINAL_CLASS(klass)             (G_TYPE_CHECK_CLASS_CAST ((klass), TILDA_TYPE_TERMINAL, TildaTerminalClass))
9 #define TILDA_IS_TERMINAL(obj)                  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TILDA_TYPE_TERMINAL))
10 #define TILDA_IS_TERMINAL_CLASS(klass)  (G_TYPE_CHECK_CLASS_TYPE ((klass), TILDA_TYPE_TERMINAL))
11 #define TILDA_TERMINAL_GET_CLASS(obj)   (G_TYPE_INSTANCE_GET_CLASS ((obj), TILDA_TYPE_TERMINAL, TildaTerminalClass))
12
13 typedef struct _TildaTerminal TildaTerminal;
14 typedef struct _TildaTerminalClass TildaTerminalClass;
15
16 struct _TildaTerminal {
17         GObject parent;
18         gboolean dispose_has_run;
19
20         /* Instance Members */
21         // FIXME: ADD THESE BACK
22         // TildaWindow *tw;
23         // VteTerminal *vte_term;
24         gint number;
25
26         gchar *background_image;
27         gchar *shell;
28         gchar *font;
29         gchar *title;
30         gchar *working_directory;
31
32         gint scrollback_lines;
33         gint transparency_percent;
34         // TODO: opacity, tint, etc
35
36         // TODO: these really are enums. Maybe the config system
37         // TODO: can be made to handle top, bottom, left, right.
38         // TODO: (similar to the true/false handling)
39         // TODO:
40         // TODO: or, maybe ints would just be better
41         // TODO: REMEMBER THOUGH: make the computer do what it's good at ;)
42         gint backspace_key;
43         gint delete_key;
44         gint dynamic_title;
45         gint exit_action;
46         gint colorscheme;
47         // FIXME: ADD THESE BACK
48         //GdkColor background_color;
49         //GdkColor foreground_color;
50         // TODO: all other colors supported by VTE
51
52         gboolean scroll_background;
53         gboolean scroll_on_output;
54         gboolean scroll_on_keystroke;
55         gboolean antialiased;
56         gboolean allow_bold_text;
57         gboolean cursor_blinks;
58         gboolean audible_bell;
59         gboolean visible_bell;
60         gboolean double_buffered;
61 };
62
63 struct _TildaTerminalClass {
64         GObjectClass parent;
65
66         /* Class Members */
67 };
68
69 /* Used by TILDA_TYPE_TERMINAL */
70 GType tilda_terminal_get_type (void);
71
72 /* API */
73
74 #endif /* TILDA_TERMINAL_H */
75
76 /* vim: set ts=4 sts=4 sw=4 noet tw=112: */
77