[vte] all: Reorganise headers



commit 97f610ba1b9a0fac1382636e4ed9baad20209d24
Author: Christian Persch <chpe gnome org>
Date:   Sun Apr 27 16:15:04 2014 +0200

    all: Reorganise headers

 src/Makefile.am                |   21 ++-
 src/pty.c                      |    2 +
 src/vte.h                      |  393 +---------------------------------------
 src/vteenums.h                 |  128 +++++++++++++
 src/vteglobals.h               |   32 ++++
 src/vtepty.h                   |   44 +----
 src/vteterminal.h              |  356 ++++++++++++++++++++++++++++++++++++
 src/vtetypebuiltins.h.template |    6 +-
 src/vteversion.h.in            |    8 +-
 9 files changed, 554 insertions(+), 436 deletions(-)
---
diff --git a/src/Makefile.am b/src/Makefile.am
index b119dde..9854e61 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -7,7 +7,15 @@ noinst_PROGRAMS =
 # The library
 
 headerdir = $(includedir)/vte-$(VTE_API_VERSION)/vte
-header_HEADERS = vte.h vtepty.h vtetypebuiltins.h vteversion.h
+header_HEADERS = \
+       vte.h \
+       vteenums.h \
+       vteglobals.h \
+       vtepty.h \
+       vteterminal.h \
+       vtetypebuiltins.h \
+       vteversion.h \
+       $(NULL)
 
 lib_LTLIBRARIES = libvte- VTE_API_MAJOR_VERSION@  VTE_API_MINOR_VERSION@.la
 
@@ -124,13 +132,13 @@ marshal.h: marshal.list
 
 vtetypebuiltins.h: stamp-vtetypebuiltins.h
        @true
-stamp-vtetypebuiltins.h: vtetypebuiltins.h.template vte.h vtepty.h
+stamp-vtetypebuiltins.h: vtetypebuiltins.h.template vteenums.h
        $(AM_V_GEN) $(GLIB_MKENUMS) --template $< $(filter %.h,$^) > xgen-vtbh \
        && (cmp -s xgen-vtbh vtetypebuiltins.h || cp xgen-vtbh vtetypebuiltins.h ) \
        && rm -f xgen-vtbh \
        && echo timestamp > $(@F)
 
-vtetypebuiltins.c: vtetypebuiltins.c.template vte.h vtepty.h
+vtetypebuiltins.c: vtetypebuiltins.c.template vteenums.h
        $(AM_V_GEN) $(GLIB_MKENUMS) --template $< $(filter %.h,$^) > xgen-vtbc \
        && (cmp -s xgen-vtbc vtetypebuiltins.c || cp xgen-vtbc vtetypebuiltins.c ) \
        && rm -f xgen-vtbc
@@ -169,10 +177,13 @@ Vte_ VTE_API_VERSION_U@_gir_SCANNERFLAGS = --c-include "vte/vte.h"
 Vte_ VTE_API_VERSION_U@_gir_FILES = \
        vte.c \
        vte.h \
+       vteenums.h \
        vtepty.h \
-       pty.c \
+       vteterminal.h \
        vtetypebuiltins.c \
        vtetypebuiltins.h \
+       vteversion.h \
+       pty.c \
        $(NULL)
 
 INTROSPECTION_GIRS += Vte-$(VTE_API_VERSION).gir
@@ -396,6 +407,8 @@ trie_LDADD = $(VTE_LIBS)
 
 vtetc_SOURCES = vtetc.c vtetc.h debug.c debug.h
 vtetc_CPPFLAGS = -DTERMCAP_MAIN
+vtetc_CFLAGS = $(VTE_CFLAGS)
+vtetc_LDADD = $(VTE_LIBS)
 
 vteconv_SOURCES = buffer.h debug.c debug.h vteconv.c vteconv.h
 vteconv_CPPFLAGS = -DVTECONV_MAIN
diff --git a/src/pty.c b/src/pty.c
index 8b751d3..86d4c8f 100644
--- a/src/pty.c
+++ b/src/pty.c
@@ -33,6 +33,8 @@
 #include "vtepty.h"
 #include "vtepty-private.h"
 #include "vte.h"
+#include "vteenums.h"
+#include "vtetypebuiltins.h"
 #include "vteversion.h"
 
 #include <sys/types.h>
diff --git a/src/vte.h b/src/vte.h
index 121aa5e..afb6414 100644
--- a/src/vte.h
+++ b/src/vte.h
@@ -16,17 +16,17 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
  */
 
-#ifndef vte_vte_h_included
-#define vte_vte_h_included
+#ifndef __VTE_VTE_H__
+#define __VTE_VTE_H__
 
 #include <glib.h>
-#include <gio/gio.h>
-#include <pango/pango.h>
-#include <gtk/gtk.h>
 
 #define __VTE_VTE_H_INSIDE__ 1
 
+#include "vteenums.h"
+#include "vteglobals.h"
 #include "vtepty.h"
+#include "vteterminal.h"
 #include "vtetypebuiltins.h"
 #include "vteversion.h"
 
@@ -34,391 +34,10 @@
 
 G_BEGIN_DECLS
 
-#define VTE_TYPE_TERMINAL            (vte_terminal_get_type())
-#define VTE_TERMINAL(obj)            (G_TYPE_CHECK_INSTANCE_CAST ((obj), VTE_TYPE_TERMINAL, VteTerminal))
-#define VTE_TERMINAL_CLASS(klass)    (G_TYPE_CHECK_CLASS_CAST ((klass),  VTE_TYPE_TERMINAL, 
VteTerminalClass))
-#define VTE_IS_TERMINAL(obj)         (G_TYPE_CHECK_INSTANCE_TYPE ((obj), VTE_TYPE_TERMINAL))
-#define VTE_IS_TERMINAL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass),  VTE_TYPE_TERMINAL))
-#define VTE_TERMINAL_GET_CLASS(obj)  (G_TYPE_INSTANCE_GET_CLASS ((obj),  VTE_TYPE_TERMINAL, 
VteTerminalClass))
-
-typedef struct _VteTerminal             VteTerminal;
-typedef struct _VteTerminalPrivate      VteTerminalPrivate;
-typedef struct _VteTerminalClass        VteTerminalClass;
-typedef struct _VteTerminalClassPrivate VteTerminalClassPrivate;
-typedef struct _VteCharAttributes       VteCharAttributes;
-
-/**
- * VteTerminal:
- */
-struct _VteTerminal {
-       GtkWidget widget;
-        /*< private >*/
-       VteTerminalPrivate *pvt;
-};
-
-/**
- * VteTerminalClass:
- *
- * All of these fields should be considered read-only, except for derived classes.
- */
-struct _VteTerminalClass {
-       /*< public > */
-       /* Inherited parent class. */
-       GtkWidgetClass parent_class;
-
-       /*< protected > */
-       /* Default signal handlers. */
-       void (*eof)(VteTerminal* terminal);
-       void (*child_exited)(VteTerminal* terminal, int status);
-       void (*emulation_changed)(VteTerminal* terminal);
-       void (*encoding_changed)(VteTerminal* terminal);
-       void (*char_size_changed)(VteTerminal* terminal, guint char_width, guint char_height);
-       void (*window_title_changed)(VteTerminal* terminal);
-       void (*icon_title_changed)(VteTerminal* terminal);
-       void (*selection_changed)(VteTerminal* terminal);
-       void (*contents_changed)(VteTerminal* terminal);
-       void (*cursor_moved)(VteTerminal* terminal);
-       void (*status_line_changed)(VteTerminal* terminal);
-       void (*commit)(VteTerminal* terminal, const gchar *text, guint size);
-
-       void (*deiconify_window)(VteTerminal* terminal);
-       void (*iconify_window)(VteTerminal* terminal);
-       void (*raise_window)(VteTerminal* terminal);
-       void (*lower_window)(VteTerminal* terminal);
-       void (*refresh_window)(VteTerminal* terminal);
-       void (*restore_window)(VteTerminal* terminal);
-       void (*maximize_window)(VteTerminal* terminal);
-       void (*resize_window)(VteTerminal* terminal, guint width, guint height);
-       void (*move_window)(VteTerminal* terminal, guint x, guint y);
-
-        /* FIXMEchpe: should these return gboolean and have defaul thandlers
-         * settings the "scale" property?
-         */
-       void (*increase_font_size)(VteTerminal* terminal);
-       void (*decrease_font_size)(VteTerminal* terminal);
-
-       void (*text_modified)(VteTerminal* terminal);
-       void (*text_inserted)(VteTerminal* terminal);
-       void (*text_deleted)(VteTerminal* terminal);
-       void (*text_scrolled)(VteTerminal* terminal, gint delta);
-       void (*copy_clipboard)(VteTerminal* terminal);
-       void (*paste_clipboard)(VteTerminal* terminal);
-
-       void (*beep)(VteTerminal* terminal);
-
-        /* Padding for future expansion. */
-        gpointer padding[16];
-
-        VteTerminalClassPrivate *priv;
-};
-
-/**
- * VteEraseBinding:
- * @VTE_ERASE_AUTO: For backspace, attempt to determine the right value from the terminal's IO settings.  
For delete, use the control sequence.
- * @VTE_ERASE_ASCII_BACKSPACE: Send an ASCII backspace character (0x08).
- * @VTE_ERASE_ASCII_DELETE: Send an ASCII delete character (0x7F).
- * @VTE_ERASE_DELETE_SEQUENCE: Send the "@@7" control sequence.
- * @VTE_ERASE_TTY: Send terminal's "erase" setting.
- *
- * An enumerated type which can be used to indicate which string the terminal
- * should send to an application when the user presses the Delete or Backspace
- * keys.
- */
-typedef enum {
-       VTE_ERASE_AUTO,
-       VTE_ERASE_ASCII_BACKSPACE,
-       VTE_ERASE_ASCII_DELETE,
-       VTE_ERASE_DELETE_SEQUENCE,
-       VTE_ERASE_TTY
-} VteEraseBinding;
-
-/**
- * VteCursorBlinkMode:
- * @VTE_CURSOR_BLINK_SYSTEM: Follow GTK+ settings for cursor blinking.
- * @VTE_CURSOR_BLINK_ON: Cursor blinks.
- * @VTE_CURSOR_BLINK_OFF: Cursor does not blink.
- *
- * An enumerated type which can be used to indicate the cursor blink mode
- * for the terminal.
- */
-typedef enum {
-        VTE_CURSOR_BLINK_SYSTEM,
-        VTE_CURSOR_BLINK_ON,
-        VTE_CURSOR_BLINK_OFF
-} VteCursorBlinkMode;
-
-/**
- * VteCursorShape:
- * @VTE_CURSOR_SHAPE_BLOCK: Draw a block cursor.  This is the default.
- * @VTE_CURSOR_SHAPE_IBEAM: Draw a vertical bar on the left side of character.
- * This is similar to the default cursor for other GTK+ widgets.
- * @VTE_CURSOR_SHAPE_UNDERLINE: Draw a horizontal bar below the character.
- *
- * An enumerated type which can be used to indicate what should the terminal
- * draw at the cursor position.
- */
-typedef enum {
-        VTE_CURSOR_SHAPE_BLOCK,
-        VTE_CURSOR_SHAPE_IBEAM,
-        VTE_CURSOR_SHAPE_UNDERLINE
-} VteCursorShape;
-
-/* The structure we return as the supplemental attributes for strings. */
-typedef struct _VteCharAttributes VteCharAttributes;
-struct _VteCharAttributes {
-        /*< private >*/
-       long row, column;
-       PangoColor fore, back;
-       guint underline:1, strikethrough:1;
-};
-
-typedef gboolean (*VteSelectionFunc)(VteTerminal *terminal,
-                                     glong column,
-                                     glong row,
-                                     gpointer data);
-
-/* The widget's type. */
-GType vte_terminal_get_type(void);
-
-GtkWidget *vte_terminal_new(void);
-
-VtePty *vte_terminal_pty_new_sync (VteTerminal *terminal,
-                                   VtePtyFlags flags,
-                                   GCancellable *cancellable,
-                                   GError **error);
-
-void vte_terminal_watch_child (VteTerminal *terminal,
-                               GPid child_pid);
-
-gboolean vte_terminal_spawn_sync(VteTerminal *terminal,
-                                 VtePtyFlags pty_flags,
-                                 const char *working_directory,
-                                 char **argv,
-                                 char **envv,
-                                 GSpawnFlags spawn_flags,
-                                 GSpawnChildSetupFunc child_setup,
-                                 gpointer child_setup_data,
-                                 GPid *child_pid /* out */,
-                                 GCancellable *cancellable,
-                                 GError **error);
-
-/* Send data to the terminal to display, or to the terminal's forked command
- * to handle in some way.  If it's 'cat', they should be the same. */
-void vte_terminal_feed(VteTerminal *terminal, const char *data, gssize length);
-void vte_terminal_feed_child(VteTerminal *terminal, const char *text, gssize length);
-void vte_terminal_feed_child_binary(VteTerminal *terminal, const guint8 *data, gsize length);
-
-/* Copy currently-selected text to the clipboard, or from the clipboard to
- * the terminal. */
-void vte_terminal_copy_clipboard(VteTerminal *terminal);
-void vte_terminal_paste_clipboard(VteTerminal *terminal);
-void vte_terminal_copy_primary(VteTerminal *terminal);
-void vte_terminal_paste_primary(VteTerminal *terminal);
-
-void vte_terminal_select_all(VteTerminal *terminal);
-void vte_terminal_unselect_all(VteTerminal *terminal);
-
-/* Set the terminal's size. */
-void vte_terminal_set_size(VteTerminal *terminal,
-                          glong columns, glong rows);
-
-void vte_terminal_set_font_scale(VteTerminal *terminal,
-                                 gdouble scale);
-gdouble vte_terminal_get_font_scale(VteTerminal *terminal);
-
-/* Set various on-off settings. */
-void vte_terminal_set_audible_bell(VteTerminal *terminal, gboolean is_audible);
-gboolean vte_terminal_get_audible_bell(VteTerminal *terminal);
-void vte_terminal_set_visible_bell(VteTerminal *terminal, gboolean is_visible);
-gboolean vte_terminal_get_visible_bell(VteTerminal *terminal);
-void vte_terminal_set_scroll_on_output(VteTerminal *terminal, gboolean scroll);
-void vte_terminal_set_scroll_on_keystroke(VteTerminal *terminal,
-                                         gboolean scroll);
-void vte_terminal_set_rewrap_on_resize(VteTerminal *terminal, gboolean rewrap);
-gboolean vte_terminal_get_rewrap_on_resize(VteTerminal *terminal);
-
-/* Set the color scheme. */
-void vte_terminal_set_color_bold(VteTerminal *terminal,
-                                 const GdkRGBA *bold);
-void vte_terminal_set_color_dim(VteTerminal *terminal,
-                                const GdkRGBA *dim);
-void vte_terminal_set_color_foreground(VteTerminal *terminal,
-                                       const GdkRGBA *foreground);
-void vte_terminal_set_color_background(VteTerminal *terminal,
-                                       const GdkRGBA *background);
-void vte_terminal_set_color_cursor(VteTerminal *terminal,
-                                   const GdkRGBA *cursor_background);
-void vte_terminal_set_color_highlight(VteTerminal *terminal,
-                                      const GdkRGBA *highlight_background);
-void vte_terminal_set_color_highlight_foreground(VteTerminal *terminal,
-                                                 const GdkRGBA *highlight_foreground);
-void vte_terminal_set_colors(VteTerminal *terminal,
-                             const GdkRGBA *foreground,
-                             const GdkRGBA *background,
-                             const GdkRGBA *palette,
-                             gsize palette_size);
-
-void vte_terminal_set_default_colors(VteTerminal *terminal);
-
-/* Set whether or not the cursor blinks. */
-void vte_terminal_set_cursor_blink_mode(VteTerminal *terminal,
-                                       VteCursorBlinkMode mode);
-VteCursorBlinkMode vte_terminal_get_cursor_blink_mode(VteTerminal *terminal);
-
-/* Set cursor shape */
-void vte_terminal_set_cursor_shape(VteTerminal *terminal,
-                                  VteCursorShape shape);
-VteCursorShape vte_terminal_get_cursor_shape(VteTerminal *terminal);
-
-/* Set the number of scrollback lines, above or at an internal minimum. */
-void vte_terminal_set_scrollback_lines(VteTerminal *terminal, glong lines);
-
-/* Set or retrieve the current font. */
-void vte_terminal_set_font(VteTerminal *terminal,
-                          const PangoFontDescription *font_desc);
-const PangoFontDescription *vte_terminal_get_font(VteTerminal *terminal);
-void vte_terminal_set_allow_bold(VteTerminal *terminal, gboolean allow_bold);
-gboolean vte_terminal_get_allow_bold(VteTerminal *terminal);
-
-/* Check if the terminal is the current selection owner. */
-gboolean vte_terminal_get_has_selection(VteTerminal *terminal);
-
-/* Set what happens when the user strikes backspace or delete. */
-void vte_terminal_set_backspace_binding(VteTerminal *terminal,
-                                       VteEraseBinding binding);
-void vte_terminal_set_delete_binding(VteTerminal *terminal,
-                                    VteEraseBinding binding);
-
-/* Manipulate the autohide setting. */
-void vte_terminal_set_mouse_autohide(VteTerminal *terminal, gboolean setting);
-gboolean vte_terminal_get_mouse_autohide(VteTerminal *terminal);
-
-/* Reset the terminal, optionally clearing the tab stops and line history. */
-void vte_terminal_reset(VteTerminal *terminal,
-                        gboolean clear_tabstops,
-                       gboolean clear_history);
-
-/* Read the contents of the terminal, using a callback function to determine
- * if a particular location on the screen (0-based) is interesting enough to
- * include.  Each byte in the returned string will have a corresponding
- * VteCharAttributes structure in the passed GArray, if the array was not %NULL.
- * Note that it will have one entry per byte, not per character, so indexes
- * should match up exactly. */
-char *vte_terminal_get_text(VteTerminal *terminal,
-                           VteSelectionFunc is_selected,
-                           gpointer user_data,
-                           GArray *attributes);
-char *vte_terminal_get_text_include_trailing_spaces(VteTerminal *terminal,
-                                                   VteSelectionFunc is_selected,
-                                                   gpointer user_data,
-                                                   GArray *attributes);
-char *vte_terminal_get_text_range(VteTerminal *terminal,
-                                 glong start_row, glong start_col,
-                                 glong end_row, glong end_col,
-                                 VteSelectionFunc is_selected,
-                                 gpointer user_data,
-                                 GArray *attributes);
-void vte_terminal_get_cursor_position(VteTerminal *terminal,
-                                     glong *column, glong *row);
-
-/* Add a matching expression, returning the tag the widget assigns to that
- * expression. */
-int vte_terminal_match_add_gregex(VteTerminal *terminal, GRegex *regex, GRegexMatchFlags flags);
-/* Set the cursor to be used when the pointer is over a given match. */
-void vte_terminal_match_set_cursor(VteTerminal *terminal, int tag,
-                                  GdkCursor *cursor);
-void vte_terminal_match_set_cursor_type(VteTerminal *terminal,
-                                       int tag, GdkCursorType cursor_type);
-void vte_terminal_match_set_cursor_name(VteTerminal *terminal,
-                                       int tag, const char *cursor_name);
-void vte_terminal_match_remove(VteTerminal *terminal, int tag);
-void vte_terminal_match_remove_all(VteTerminal *terminal);
-
-/* Check if a given cell on the screen contains part of a matched string.  If
- * it does, return the string, and store the match tag in the optional tag
- * argument. */
-char *vte_terminal_match_check(VteTerminal *terminal,
-                              glong column, glong row,
-                              int *tag);
-char *vte_terminal_match_check_event(VteTerminal *terminal,
-                                     GdkEvent *event,
-                                     int *tag);
-
-void      vte_terminal_search_set_gregex      (VteTerminal *terminal,
-                                              GRegex      *regex,
-                                               GRegexMatchFlags flags);
-GRegex   *vte_terminal_search_get_gregex      (VteTerminal *terminal);
-void      vte_terminal_search_set_wrap_around (VteTerminal *terminal,
-                                              gboolean     wrap_around);
-gboolean  vte_terminal_search_get_wrap_around (VteTerminal *terminal);
-gboolean  vte_terminal_search_find_previous   (VteTerminal *terminal);
-gboolean  vte_terminal_search_find_next       (VteTerminal *terminal);
-
-
-/* Set the emulation type.  Most of the time you won't need this. */
-void vte_terminal_set_emulation(VteTerminal *terminal, const char *emulation);
-const char *vte_terminal_get_emulation(VteTerminal *terminal);
-
 const char *vte_get_default_emulation(void);
 
-/* Set the character encoding.  Most of the time you won't need this. */
-void vte_terminal_set_encoding(VteTerminal *terminal, const char *codeset);
-const char *vte_terminal_get_encoding(VteTerminal *terminal);
-
-/* CJK compatibility setting */
-void vte_terminal_set_cjk_ambiguous_width(VteTerminal *terminal, int width);
-int vte_terminal_get_cjk_ambiguous_width(VteTerminal *terminal);
-
-/* Get the contents of the status line. */
-const char *vte_terminal_get_status_line(VteTerminal *terminal);
-
-void vte_terminal_set_pty(VteTerminal *terminal, VtePty *pty);
-VtePty *vte_terminal_get_pty(VteTerminal *terminal);
-
 char *vte_get_user_shell (void);
 
-/* Accessors for bindings. */
-glong vte_terminal_get_char_width(VteTerminal *terminal);
-glong vte_terminal_get_char_height(VteTerminal *terminal);
-glong vte_terminal_get_row_count(VteTerminal *terminal);
-glong vte_terminal_get_column_count(VteTerminal *terminal);
-const char *vte_terminal_get_window_title(VteTerminal *terminal);
-const char *vte_terminal_get_icon_title(VteTerminal *terminal);
-const char *vte_terminal_get_current_directory_uri(VteTerminal *terminal);
-const char *vte_terminal_get_current_file_uri(VteTerminal *terminal);
-
-/* misc */
-void vte_terminal_set_input_enabled (VteTerminal *terminal,
-                                     gboolean enabled);
-gboolean vte_terminal_get_input_enabled (VteTerminal *terminal);
-
-/* Window geometry helpers */
-void vte_terminal_get_geometry_hints(VteTerminal *terminal,
-                                     GdkGeometry *hints,
-                                     int min_rows,
-                                     int min_columns);
-void vte_terminal_set_geometry_hints_for_window(VteTerminal *terminal,
-                                                GtkWindow *window);
-
-/* Writing contents out */
-
-/**
- * VteWriteFlags:
- * @VTE_WRITE_DEFAULT: Write contents as UTF-8 text.  This is the default.
- *
- * A flag type to determine how terminal contents should be written
- * to an output stream.
- */
-typedef enum {
-  VTE_WRITE_DEFAULT = 0
-} VteWriteFlags;
-
-gboolean vte_terminal_write_contents (VteTerminal *terminal,
-                                     GOutputStream *stream,
-                                     VteWriteFlags flags,
-                                     GCancellable *cancellable,
-                                     GError **error);
-
 G_END_DECLS
 
-#endif
+#endif /* __VTE_VTE_H__ */
diff --git a/src/vteenums.h b/src/vteenums.h
new file mode 100644
index 0000000..c527517
--- /dev/null
+++ b/src/vteenums.h
@@ -0,0 +1,128 @@
+/*
+ * Copyright (C) 2001,2002,2003,2009,2010 Red Hat, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+ */
+
+#ifndef __VTE_VTE_ENUMS_H__
+#define __VTE_VTE_ENUMS_H__
+
+#if !defined (__VTE_VTE_H_INSIDE__) && !defined (VTE_COMPILATION)
+#error "Only <vte/vte.h> can be included directly."
+#endif
+
+#include <glib.h>
+
+G_BEGIN_DECLS
+
+/**
+ * VteCursorBlinkMode:
+ * @VTE_CURSOR_BLINK_SYSTEM: Follow GTK+ settings for cursor blinking.
+ * @VTE_CURSOR_BLINK_ON: Cursor blinks.
+ * @VTE_CURSOR_BLINK_OFF: Cursor does not blink.
+ *
+ * An enumerated type which can be used to indicate the cursor blink mode
+ * for the terminal.
+ */
+typedef enum {
+        VTE_CURSOR_BLINK_SYSTEM,
+        VTE_CURSOR_BLINK_ON,
+        VTE_CURSOR_BLINK_OFF
+} VteCursorBlinkMode;
+
+/**
+ * VteCursorShape:
+ * @VTE_CURSOR_SHAPE_BLOCK: Draw a block cursor.  This is the default.
+ * @VTE_CURSOR_SHAPE_IBEAM: Draw a vertical bar on the left side of character.
+ * This is similar to the default cursor for other GTK+ widgets.
+ * @VTE_CURSOR_SHAPE_UNDERLINE: Draw a horizontal bar below the character.
+ *
+ * An enumerated type which can be used to indicate what should the terminal
+ * draw at the cursor position.
+ */
+typedef enum {
+        VTE_CURSOR_SHAPE_BLOCK,
+        VTE_CURSOR_SHAPE_IBEAM,
+        VTE_CURSOR_SHAPE_UNDERLINE
+} VteCursorShape;
+
+/**
+ * VteEraseBinding:
+ * @VTE_ERASE_AUTO: For backspace, attempt to determine the right value from the terminal's IO settings.  
For delete, use the control sequence.
+ * @VTE_ERASE_ASCII_BACKSPACE: Send an ASCII backspace character (0x08).
+ * @VTE_ERASE_ASCII_DELETE: Send an ASCII delete character (0x7F).
+ * @VTE_ERASE_DELETE_SEQUENCE: Send the "@@7" control sequence.
+ * @VTE_ERASE_TTY: Send terminal's "erase" setting.
+ *
+ * An enumerated type which can be used to indicate which string the terminal
+ * should send to an application when the user presses the Delete or Backspace
+ * keys.
+ */
+typedef enum {
+       VTE_ERASE_AUTO,
+       VTE_ERASE_ASCII_BACKSPACE,
+       VTE_ERASE_ASCII_DELETE,
+       VTE_ERASE_DELETE_SEQUENCE,
+       VTE_ERASE_TTY
+} VteEraseBinding;
+
+/**
+ * VtePtyError:
+ * @VTE_PTY_ERROR_PTY_HELPER_FAILED: failure when using the GNOME PTY helper to
+ *   allocate the PTY
+ * @VTE_PTY_ERROR_PTY98_FAILED: failure when using PTY98 to allocate the PTY
+ *
+ * Since: 0.26
+ */
+typedef enum {
+  VTE_PTY_ERROR_PTY_HELPER_FAILED = 0,
+  VTE_PTY_ERROR_PTY98_FAILED
+} VtePtyError;
+
+/**
+ * VtePtyFlags:
+ * @VTE_PTY_NO_LASTLOG: don't record the session in lastlog
+ * @VTE_PTY_NO_UTMP: don't record the session in utmp
+ * @VTE_PTY_NO_WTMP: don't record the session in wtmp
+ * @VTE_PTY_NO_HELPER: don't use the GNOME PTY helper to allocate the PTY
+ * @VTE_PTY_NO_FALLBACK: when allocating the PTY with the PTY helper fails,
+ *   don't fall back to try using PTY98
+ * @VTE_PTY_DEFAULT: the default flags
+ *
+ * Since: 0.26
+ */
+typedef enum {
+  VTE_PTY_NO_LASTLOG  = 1 << 0,
+  VTE_PTY_NO_UTMP     = 1 << 1,
+  VTE_PTY_NO_WTMP     = 1 << 2,
+  VTE_PTY_NO_HELPER   = 1 << 3,
+  VTE_PTY_NO_FALLBACK = 1 << 4,
+  VTE_PTY_DEFAULT     = 0
+} VtePtyFlags;
+
+/**
+ * VteWriteFlags:
+ * @VTE_WRITE_DEFAULT: Write contents as UTF-8 text.  This is the default.
+ *
+ * A flag type to determine how terminal contents should be written
+ * to an output stream.
+ */
+typedef enum {
+  VTE_WRITE_DEFAULT = 0
+} VteWriteFlags;
+
+G_END_DECLS
+
+#endif /* __VTE_VTE_ENUMS_H__ */
diff --git a/src/vteglobals.h b/src/vteglobals.h
new file mode 100644
index 0000000..9eb5e92
--- /dev/null
+++ b/src/vteglobals.h
@@ -0,0 +1,32 @@
+/*
+ * Copyright (C) 2001,2002,2003,2009,2010 Red Hat, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+ */
+
+#ifndef __VTE_VTE_GLOBALS_H__
+#define __VTE_VTE_GLOBALS_H__
+
+#include <glib.h>
+
+G_BEGIN_DECLS
+
+const char *vte_get_default_emulation(void);
+
+char *vte_get_user_shell(void);
+
+G_END_DECLS
+
+#endif /* __VTE_VTE_GLOBALS_H__ */
diff --git a/src/vtepty.h b/src/vtepty.h
index 2cda0f7..8cb5633 100644
--- a/src/vtepty.h
+++ b/src/vtepty.h
@@ -16,50 +16,18 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
  */
 
+#ifndef __VTE_VTE_PTY_H__
+#define __VTE_VTE_PTY_H__
+
 #if !defined (__VTE_VTE_H_INSIDE__) && !defined (VTE_COMPILATION)
 #error "Only <vte/vte.h> can be included directly."
 #endif
 
-#ifndef VTE_PTY_H
-#define VTE_PTY_H
-
 #include <gio/gio.h>
 
-G_BEGIN_DECLS
+#include "vteenums.h"
 
-/**
- * VtePtyFlags:
- * @VTE_PTY_NO_LASTLOG: don't record the session in lastlog
- * @VTE_PTY_NO_UTMP: don't record the session in utmp
- * @VTE_PTY_NO_WTMP: don't record the session in wtmp
- * @VTE_PTY_NO_HELPER: don't use the GNOME PTY helper to allocate the PTY
- * @VTE_PTY_NO_FALLBACK: when allocating the PTY with the PTY helper fails,
- *   don't fall back to try using PTY98
- * @VTE_PTY_DEFAULT: the default flags
- *
- * Since: 0.26
- */
-typedef enum {
-  VTE_PTY_NO_LASTLOG  = 1 << 0,
-  VTE_PTY_NO_UTMP     = 1 << 1,
-  VTE_PTY_NO_WTMP     = 1 << 2,
-  VTE_PTY_NO_HELPER   = 1 << 3,
-  VTE_PTY_NO_FALLBACK = 1 << 4,
-  VTE_PTY_DEFAULT     = 0
-} VtePtyFlags;
-
-/**
- * VtePtyError:
- * @VTE_PTY_ERROR_PTY_HELPER_FAILED: failure when using the GNOME PTY helper to
- *   allocate the PTY
- * @VTE_PTY_ERROR_PTY98_FAILED: failure when using PTY98 to allocate the PTY
- *
- * Since: 0.26
- */
-typedef enum {
-  VTE_PTY_ERROR_PTY_HELPER_FAILED = 0,
-  VTE_PTY_ERROR_PTY98_FAILED
-} VtePtyError;
+G_BEGIN_DECLS
 
 #define VTE_SPAWN_NO_PARENT_ENVV (1 << 25)
 
@@ -122,4 +90,4 @@ void vte_pty_set_term (VtePty *pty,
 
 G_END_DECLS
 
-#endif /* VTE_PTY_H */
+#endif /* __VTE_VTE_PTY_H__ */
diff --git a/src/vteterminal.h b/src/vteterminal.h
new file mode 100644
index 0000000..0e37de7
--- /dev/null
+++ b/src/vteterminal.h
@@ -0,0 +1,356 @@
+/*
+ * Copyright (C) 2001,2002,2003,2009,2010 Red Hat, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+ */
+
+#ifndef __VTE_VTE_TERMINAL_H__
+#define __VTE_VTE_TERMINAL_H__
+
+#if !defined (__VTE_VTE_H_INSIDE__) && !defined (VTE_COMPILATION)
+#error "Only <vte/vte.h> can be included directly."
+#endif
+
+#include <glib.h>
+#include <gio/gio.h>
+#include <pango/pango.h>
+#include <gtk/gtk.h>
+
+#include "vteenums.h"
+#include "vtepty.h"
+
+G_BEGIN_DECLS
+
+#define VTE_TYPE_TERMINAL            (vte_terminal_get_type())
+#define VTE_TERMINAL(obj)            (G_TYPE_CHECK_INSTANCE_CAST ((obj), VTE_TYPE_TERMINAL, VteTerminal))
+#define VTE_TERMINAL_CLASS(klass)    (G_TYPE_CHECK_CLASS_CAST ((klass),  VTE_TYPE_TERMINAL, 
VteTerminalClass))
+#define VTE_IS_TERMINAL(obj)         (G_TYPE_CHECK_INSTANCE_TYPE ((obj), VTE_TYPE_TERMINAL))
+#define VTE_IS_TERMINAL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass),  VTE_TYPE_TERMINAL))
+#define VTE_TERMINAL_GET_CLASS(obj)  (G_TYPE_INSTANCE_GET_CLASS ((obj),  VTE_TYPE_TERMINAL, 
VteTerminalClass))
+
+typedef struct _VteTerminal             VteTerminal;
+typedef struct _VteTerminalPrivate      VteTerminalPrivate;
+typedef struct _VteTerminalClass        VteTerminalClass;
+typedef struct _VteTerminalClassPrivate VteTerminalClassPrivate;
+typedef struct _VteCharAttributes       VteCharAttributes;
+
+/**
+ * VteTerminal:
+ */
+struct _VteTerminal {
+       GtkWidget widget;
+        /*< private >*/
+       VteTerminalPrivate *pvt;
+};
+
+/**
+ * VteTerminalClass:
+ *
+ * All of these fields should be considered read-only, except for derived classes.
+ */
+struct _VteTerminalClass {
+       /*< public > */
+       /* Inherited parent class. */
+       GtkWidgetClass parent_class;
+
+       /*< protected > */
+       /* Default signal handlers. */
+       void (*eof)(VteTerminal* terminal);
+       void (*child_exited)(VteTerminal* terminal, int status);
+       void (*emulation_changed)(VteTerminal* terminal);
+       void (*encoding_changed)(VteTerminal* terminal);
+       void (*char_size_changed)(VteTerminal* terminal, guint char_width, guint char_height);
+       void (*window_title_changed)(VteTerminal* terminal);
+       void (*icon_title_changed)(VteTerminal* terminal);
+       void (*selection_changed)(VteTerminal* terminal);
+       void (*contents_changed)(VteTerminal* terminal);
+       void (*cursor_moved)(VteTerminal* terminal);
+       void (*status_line_changed)(VteTerminal* terminal);
+       void (*commit)(VteTerminal* terminal, const gchar *text, guint size);
+
+       void (*deiconify_window)(VteTerminal* terminal);
+       void (*iconify_window)(VteTerminal* terminal);
+       void (*raise_window)(VteTerminal* terminal);
+       void (*lower_window)(VteTerminal* terminal);
+       void (*refresh_window)(VteTerminal* terminal);
+       void (*restore_window)(VteTerminal* terminal);
+       void (*maximize_window)(VteTerminal* terminal);
+       void (*resize_window)(VteTerminal* terminal, guint width, guint height);
+       void (*move_window)(VteTerminal* terminal, guint x, guint y);
+
+        /* FIXMEchpe: should these return gboolean and have defaul thandlers
+         * settings the "scale" property?
+         */
+       void (*increase_font_size)(VteTerminal* terminal);
+       void (*decrease_font_size)(VteTerminal* terminal);
+
+       void (*text_modified)(VteTerminal* terminal);
+       void (*text_inserted)(VteTerminal* terminal);
+       void (*text_deleted)(VteTerminal* terminal);
+       void (*text_scrolled)(VteTerminal* terminal, gint delta);
+       void (*copy_clipboard)(VteTerminal* terminal);
+       void (*paste_clipboard)(VteTerminal* terminal);
+
+       void (*beep)(VteTerminal* terminal);
+
+        /* Padding for future expansion. */
+        gpointer padding[16];
+
+        VteTerminalClassPrivate *priv;
+};
+
+/* The structure we return as the supplemental attributes for strings. */
+typedef struct _VteCharAttributes VteCharAttributes;
+struct _VteCharAttributes {
+        /*< private >*/
+       long row, column;
+       PangoColor fore, back;
+       guint underline:1, strikethrough:1;
+};
+
+typedef gboolean (*VteSelectionFunc)(VteTerminal *terminal,
+                                     glong column,
+                                     glong row,
+                                     gpointer data);
+
+/* The widget's type. */
+GType vte_terminal_get_type(void);
+
+GtkWidget *vte_terminal_new(void);
+
+VtePty *vte_terminal_pty_new_sync (VteTerminal *terminal,
+                                   VtePtyFlags flags,
+                                   GCancellable *cancellable,
+                                   GError **error);
+
+void vte_terminal_watch_child (VteTerminal *terminal,
+                               GPid child_pid);
+
+gboolean vte_terminal_spawn_sync(VteTerminal *terminal,
+                                 VtePtyFlags pty_flags,
+                                 const char *working_directory,
+                                 char **argv,
+                                 char **envv,
+                                 GSpawnFlags spawn_flags,
+                                 GSpawnChildSetupFunc child_setup,
+                                 gpointer child_setup_data,
+                                 GPid *child_pid /* out */,
+                                 GCancellable *cancellable,
+                                 GError **error);
+
+/* Send data to the terminal to display, or to the terminal's forked command
+ * to handle in some way.  If it's 'cat', they should be the same. */
+void vte_terminal_feed(VteTerminal *terminal, const char *data, gssize length);
+void vte_terminal_feed_child(VteTerminal *terminal, const char *text, gssize length);
+void vte_terminal_feed_child_binary(VteTerminal *terminal, const guint8 *data, gsize length);
+
+/* Copy currently-selected text to the clipboard, or from the clipboard to
+ * the terminal. */
+void vte_terminal_copy_clipboard(VteTerminal *terminal);
+void vte_terminal_paste_clipboard(VteTerminal *terminal);
+void vte_terminal_copy_primary(VteTerminal *terminal);
+void vte_terminal_paste_primary(VteTerminal *terminal);
+
+void vte_terminal_select_all(VteTerminal *terminal);
+void vte_terminal_unselect_all(VteTerminal *terminal);
+
+/* Set the terminal's size. */
+void vte_terminal_set_size(VteTerminal *terminal,
+                          glong columns, glong rows);
+
+void vte_terminal_set_font_scale(VteTerminal *terminal,
+                                 gdouble scale);
+gdouble vte_terminal_get_font_scale(VteTerminal *terminal);
+
+/* Set various on-off settings. */
+void vte_terminal_set_audible_bell(VteTerminal *terminal, gboolean is_audible);
+gboolean vte_terminal_get_audible_bell(VteTerminal *terminal);
+void vte_terminal_set_visible_bell(VteTerminal *terminal, gboolean is_visible);
+gboolean vte_terminal_get_visible_bell(VteTerminal *terminal);
+void vte_terminal_set_scroll_on_output(VteTerminal *terminal, gboolean scroll);
+void vte_terminal_set_scroll_on_keystroke(VteTerminal *terminal,
+                                         gboolean scroll);
+void vte_terminal_set_rewrap_on_resize(VteTerminal *terminal, gboolean rewrap);
+gboolean vte_terminal_get_rewrap_on_resize(VteTerminal *terminal);
+
+/* Set the color scheme. */
+void vte_terminal_set_color_bold(VteTerminal *terminal,
+                                 const GdkRGBA *bold);
+void vte_terminal_set_color_dim(VteTerminal *terminal,
+                                const GdkRGBA *dim);
+void vte_terminal_set_color_foreground(VteTerminal *terminal,
+                                       const GdkRGBA *foreground);
+void vte_terminal_set_color_background(VteTerminal *terminal,
+                                       const GdkRGBA *background);
+void vte_terminal_set_color_cursor(VteTerminal *terminal,
+                                   const GdkRGBA *cursor_background);
+void vte_terminal_set_color_highlight(VteTerminal *terminal,
+                                      const GdkRGBA *highlight_background);
+void vte_terminal_set_color_highlight_foreground(VteTerminal *terminal,
+                                                 const GdkRGBA *highlight_foreground);
+void vte_terminal_set_colors(VteTerminal *terminal,
+                             const GdkRGBA *foreground,
+                             const GdkRGBA *background,
+                             const GdkRGBA *palette,
+                             gsize palette_size);
+
+void vte_terminal_set_default_colors(VteTerminal *terminal);
+
+/* Set whether or not the cursor blinks. */
+void vte_terminal_set_cursor_blink_mode(VteTerminal *terminal,
+                                       VteCursorBlinkMode mode);
+VteCursorBlinkMode vte_terminal_get_cursor_blink_mode(VteTerminal *terminal);
+
+/* Set cursor shape */
+void vte_terminal_set_cursor_shape(VteTerminal *terminal,
+                                  VteCursorShape shape);
+VteCursorShape vte_terminal_get_cursor_shape(VteTerminal *terminal);
+
+/* Set the number of scrollback lines, above or at an internal minimum. */
+void vte_terminal_set_scrollback_lines(VteTerminal *terminal, glong lines);
+
+/* Set or retrieve the current font. */
+void vte_terminal_set_font(VteTerminal *terminal,
+                          const PangoFontDescription *font_desc);
+const PangoFontDescription *vte_terminal_get_font(VteTerminal *terminal);
+void vte_terminal_set_allow_bold(VteTerminal *terminal, gboolean allow_bold);
+gboolean vte_terminal_get_allow_bold(VteTerminal *terminal);
+
+/* Check if the terminal is the current selection owner. */
+gboolean vte_terminal_get_has_selection(VteTerminal *terminal);
+
+/* Set what happens when the user strikes backspace or delete. */
+void vte_terminal_set_backspace_binding(VteTerminal *terminal,
+                                       VteEraseBinding binding);
+void vte_terminal_set_delete_binding(VteTerminal *terminal,
+                                    VteEraseBinding binding);
+
+/* Manipulate the autohide setting. */
+void vte_terminal_set_mouse_autohide(VteTerminal *terminal, gboolean setting);
+gboolean vte_terminal_get_mouse_autohide(VteTerminal *terminal);
+
+/* Reset the terminal, optionally clearing the tab stops and line history. */
+void vte_terminal_reset(VteTerminal *terminal,
+                        gboolean clear_tabstops,
+                       gboolean clear_history);
+
+/* Read the contents of the terminal, using a callback function to determine
+ * if a particular location on the screen (0-based) is interesting enough to
+ * include.  Each byte in the returned string will have a corresponding
+ * VteCharAttributes structure in the passed GArray, if the array was not %NULL.
+ * Note that it will have one entry per byte, not per character, so indexes
+ * should match up exactly. */
+char *vte_terminal_get_text(VteTerminal *terminal,
+                           VteSelectionFunc is_selected,
+                           gpointer user_data,
+                           GArray *attributes);
+char *vte_terminal_get_text_include_trailing_spaces(VteTerminal *terminal,
+                                                   VteSelectionFunc is_selected,
+                                                   gpointer user_data,
+                                                   GArray *attributes);
+char *vte_terminal_get_text_range(VteTerminal *terminal,
+                                 glong start_row, glong start_col,
+                                 glong end_row, glong end_col,
+                                 VteSelectionFunc is_selected,
+                                 gpointer user_data,
+                                 GArray *attributes);
+void vte_terminal_get_cursor_position(VteTerminal *terminal,
+                                     glong *column, glong *row);
+
+/* Add a matching expression, returning the tag the widget assigns to that
+ * expression. */
+int vte_terminal_match_add_gregex(VteTerminal *terminal, GRegex *regex, GRegexMatchFlags flags);
+/* Set the cursor to be used when the pointer is over a given match. */
+void vte_terminal_match_set_cursor(VteTerminal *terminal, int tag,
+                                  GdkCursor *cursor);
+void vte_terminal_match_set_cursor_type(VteTerminal *terminal,
+                                       int tag, GdkCursorType cursor_type);
+void vte_terminal_match_set_cursor_name(VteTerminal *terminal,
+                                       int tag, const char *cursor_name);
+void vte_terminal_match_remove(VteTerminal *terminal, int tag);
+void vte_terminal_match_remove_all(VteTerminal *terminal);
+
+/* Check if a given cell on the screen contains part of a matched string.  If
+ * it does, return the string, and store the match tag in the optional tag
+ * argument. */
+char *vte_terminal_match_check(VteTerminal *terminal,
+                              glong column, glong row,
+                              int *tag);
+char *vte_terminal_match_check_event(VteTerminal *terminal,
+                                     GdkEvent *event,
+                                     int *tag);
+
+void      vte_terminal_search_set_gregex      (VteTerminal *terminal,
+                                              GRegex      *regex,
+                                               GRegexMatchFlags flags);
+GRegex   *vte_terminal_search_get_gregex      (VteTerminal *terminal);
+void      vte_terminal_search_set_wrap_around (VteTerminal *terminal,
+                                              gboolean     wrap_around);
+gboolean  vte_terminal_search_get_wrap_around (VteTerminal *terminal);
+gboolean  vte_terminal_search_find_previous   (VteTerminal *terminal);
+gboolean  vte_terminal_search_find_next       (VteTerminal *terminal);
+
+
+/* Set the emulation type.  Most of the time you won't need this. */
+void vte_terminal_set_emulation(VteTerminal *terminal, const char *emulation);
+const char *vte_terminal_get_emulation(VteTerminal *terminal);
+
+/* Set the character encoding.  Most of the time you won't need this. */
+void vte_terminal_set_encoding(VteTerminal *terminal, const char *codeset);
+const char *vte_terminal_get_encoding(VteTerminal *terminal);
+
+/* CJK compatibility setting */
+void vte_terminal_set_cjk_ambiguous_width(VteTerminal *terminal, int width);
+int vte_terminal_get_cjk_ambiguous_width(VteTerminal *terminal);
+
+/* Get the contents of the status line. */
+const char *vte_terminal_get_status_line(VteTerminal *terminal);
+
+void vte_terminal_set_pty(VteTerminal *terminal, VtePty *pty);
+VtePty *vte_terminal_get_pty(VteTerminal *terminal);
+
+/* Accessors for bindings. */
+glong vte_terminal_get_char_width(VteTerminal *terminal);
+glong vte_terminal_get_char_height(VteTerminal *terminal);
+glong vte_terminal_get_row_count(VteTerminal *terminal);
+glong vte_terminal_get_column_count(VteTerminal *terminal);
+const char *vte_terminal_get_window_title(VteTerminal *terminal);
+const char *vte_terminal_get_icon_title(VteTerminal *terminal);
+const char *vte_terminal_get_current_directory_uri(VteTerminal *terminal);
+const char *vte_terminal_get_current_file_uri(VteTerminal *terminal);
+
+/* misc */
+void vte_terminal_set_input_enabled (VteTerminal *terminal,
+                                     gboolean enabled);
+gboolean vte_terminal_get_input_enabled (VteTerminal *terminal);
+
+/* Window geometry helpers */
+void vte_terminal_get_geometry_hints(VteTerminal *terminal,
+                                     GdkGeometry *hints,
+                                     int min_rows,
+                                     int min_columns);
+void vte_terminal_set_geometry_hints_for_window(VteTerminal *terminal,
+                                                GtkWindow *window);
+
+/* Writing contents out */
+gboolean vte_terminal_write_contents (VteTerminal *terminal,
+                                     GOutputStream *stream,
+                                     VteWriteFlags flags,
+                                     GCancellable *cancellable,
+                                     GError **error);
+
+G_END_DECLS
+
+#endif /* __VTE_VTE_TERMINAL_H__ */
diff --git a/src/vtetypebuiltins.h.template b/src/vtetypebuiltins.h.template
index 255b6c2..b608350 100644
--- a/src/vtetypebuiltins.h.template
+++ b/src/vtetypebuiltins.h.template
@@ -3,8 +3,8 @@
 #error "Only <vte/vte.h> can be included directly."
 #endif
 
-#ifndef VTE_TYPE_BUILTINS_H
-#define VTE_TYPE_BUILTINS_H
+#ifndef __VTE_VTE_TYPE_BUILTINS_H__
+#define __VTE_VTE_TYPE_BUILTINS_H__
 
 #include <glib-object.h>
 
@@ -24,5 +24,5 @@ GType @enum_name _get_type (void);
 /*** BEGIN file-tail ***/
 G_END_DECLS
 
-#endif /* !VTE_TYPE_BUILTINS_H */
+#endif /* __VTE_VTE_TYPE_BUILTINS_H__ */
 /*** END file-tail ***/
diff --git a/src/vteversion.h.in b/src/vteversion.h.in
index 65d8fcd..dcd720e 100644
--- a/src/vteversion.h.in
+++ b/src/vteversion.h.in
@@ -16,13 +16,13 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
  */
 
+#ifndef __VTE_VTE_VERSION_H__
+#define __VTE_VTE_VERSION_H__
+
 #if !defined (__VTE_VTE_H_INSIDE__) && !defined (VTE_COMPILATION)
 #error "Only <vte/vte.h> can be included directly."
 #endif
 
-#ifndef vte_vteversion_h_included
-#define vte_vteversion_h_included
-
 /**
  * SECTION:vte-version
  * @short_description: Library version checks
@@ -79,4 +79,4 @@
    (VTE_MAJOR_VERSION == (major) && VTE_MINOR_VERSION > (minor)) || \
    (VTE_MAJOR_VERSION == (major) && VTE_MINOR_VERSION == (minor) && VTE_MICRO_VERSION >= (micro)))
 
-#endif /* !vte_vteversion_h_included */
+#endif /* __VTE_VTE_VERSION_H__ */



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]