1 #ifndef TILDA_TERMINAL_H
2 #define TILDA_TERMINAL_H
8 #include "tilda-window.h"
9 #include "tilda-types.h"
12 #define TILDA_TYPE_TERMINAL (tilda_terminal_get_type())
13 #define TILDA_TERMINAL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TILDA_TYPE_TERMINAL, TildaTerminal))
14 #define TILDA_TERMINAL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TILDA_TYPE_TERMINAL, TildaTerminalClass))
15 #define TILDA_IS_TERMINAL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TILDA_TYPE_TERMINAL))
16 #define TILDA_IS_TERMINAL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TILDA_TYPE_TERMINAL))
17 #define TILDA_TERMINAL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TILDA_TYPE_TERMINAL, TildaTerminalClass))
19 typedef struct _TildaTerminal TildaTerminal;
20 typedef struct _TildaTerminalClass TildaTerminalClass;
22 struct _TildaTerminal {
24 gboolean dispose_has_run;
26 /* Instance Members */
27 GObject *parent_window;
33 gchar *background_image;
37 gchar *working_directory;
40 gint scrollback_lines;
41 gint transparency_percent;
43 VteTerminalEraseBinding backspace_binding;
44 VteTerminalEraseBinding delete_binding;
45 TildaDynamicTitle dynamic_title;
46 TildaChildExitAction exit_action;
47 TildaScrollbarPosition scrollbar_position;
49 // TODO: gint colorscheme; the code can work around the need for
50 // TODO: this value. Just check if the back and fore colors match
51 // TODO: any pre-defined colorschemes exactly in the GUI.
52 // TODO: opacity, tint, etc
53 GdkColor background_color;
54 GdkColor foreground_color;
55 // TODO: all other colors supported by VTE
57 gboolean scroll_background;
58 gboolean scroll_on_output;
59 gboolean scroll_on_keystroke;
61 gboolean allow_bold_text;
62 gboolean cursor_blinks;
63 gboolean audible_bell;
64 gboolean visible_bell;
65 gboolean double_buffered;
66 gboolean mouse_autohide;
69 struct _TildaTerminalClass {
75 /* Used by TILDA_TYPE_TERMINAL */
76 GType tilda_terminal_get_type (void);
79 gboolean tilda_terminal_run_command (TildaTerminal *self, gchar *command, GError **error);
80 gboolean tilda_terminal_close (TildaTerminal *self, GError **error);
82 #endif /* TILDA_TERMINAL_H */
84 /* vim: set ts=4 sts=4 sw=4 noet tw=112: */