#ifndef TILDA_TERMINAL_H
#define TILDA_TERMINAL_H
-#include <glib-object.h>
+#include <glib.h>
+#include <gtk/gtk.h>
+#include <vte/vte.h>
+
+#include "tilda-window.h"
+
#define TILDA_TYPE_TERMINAL (tilda_terminal_get_type())
-#define TILDA_TERMINAL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TILDA_TYPE_TERMINAL))
+#define TILDA_TERMINAL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TILDA_TYPE_TERMINAL, TildaTerminal))
#define TILDA_TERMINAL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TILDA_TYPE_TERMINAL, TildaTerminalClass))
#define TILDA_IS_TERMINAL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TILDA_TYPE_TERMINAL))
#define TILDA_IS_TERMINAL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TILDA_TYPE_TERMINAL))
gboolean dispose_has_run;
/* Instance Members */
+ GObject *parent_window;
+ GtkWidget *vte_term;
+ GtkWidget *scrollbar;
+ GtkWidget *hbox;
gint number;
+
+ gchar *background_image;
+ gchar *shell;
+ gchar *font;
+ gchar *title;
+ gchar *working_directory;
+ gchar *web_browser;
+
+ gint scrollback_lines;
+ gint transparency_percent;
+ // TODO: opacity, tint, etc
+
+ // TODO: these really are enums. Maybe the config system
+ // TODO: can be made to handle top, bottom, left, right.
+ // TODO: (similar to the true/false handling)
+ // TODO:
+ // TODO: or, maybe ints would just be better
+ // TODO: REMEMBER THOUGH: make the computer do what it's good at ;)
+ gint backspace_binding;
+ gint delete_binding;
+ gint dynamic_title;
+ gint exit_action;
+ gint scrollbar_position;
+ // TODO: gint colorscheme; the code can work around the need for
+ // TODO: this value. Just check if the back and fore colors match
+ // TODO: any pre-defined colorschemes exactly in the GUI.
+ GdkColor background_color;
+ GdkColor foreground_color;
+ // TODO: all other colors supported by VTE
+
+ gboolean scroll_background;
+ gboolean scroll_on_output;
+ gboolean scroll_on_keystroke;
+ gboolean antialiased;
+ gboolean allow_bold_text;
+ gboolean cursor_blinks;
+ gboolean audible_bell;
+ gboolean visible_bell;
+ gboolean double_buffered;
+ gboolean mouse_autohide;
};
struct _TildaTerminalClass {
GType tilda_terminal_get_type (void);
/* API */
+gboolean tilda_terminal_run_command (TildaTerminal *self, gchar *command, GError **error);
+gboolean tilda_terminal_close (TildaTerminal *self, GError **error);
#endif /* TILDA_TERMINAL_H */
/* vim: set ts=4 sts=4 sw=4 noet tw=112: */
-