Move python stuffs to a different subdirectory.
authorNalin Dahyabhai <nalin@src.gnome.org>
Wed, 12 Jun 2002 21:08:42 +0000 (21:08 +0000)
committerNalin Dahyabhai <nalin@src.gnome.org>
Wed, 12 Jun 2002 21:08:42 +0000 (21:08 +0000)
* Makefile.am, src/Makefile.am: Move python stuffs to a different subdirectory.

Makefile.am
configure.in
python/Makefile.am [new file with mode: 0644]
python/vte.defs [new file with mode: 0644]
python/vte.override [new file with mode: 0644]
python/vtemodule.c [new file with mode: 0644]
src/Makefile.am
src/vte.defs [deleted file]
src/vte.override [deleted file]

index 6ba5356..4026235 100644 (file)
@@ -1,4 +1,4 @@
-SUBDIRS = src termcaps po
+SUBDIRS = src python termcaps po
 EXTRA_DIST = HACKING vte.spec vte.pc.in
 
 pkgconfigdir = $(libdir)/pkgconfig
index b41bfe5..85294fc 100644 (file)
@@ -74,7 +74,7 @@ if pkg-config --exists pygtk-2.0 ; then
        AC_MSG_CHECKING([python version])
        [PYTHONREV=`python -c 'import sys;print "%s.%s" % (sys.version_info[0], sys.version_info[1])'`]
        AC_MSG_RESULT($PYTHONREV)
-       PYTHON_MODULES="vtemodule.so"
+       PYTHONMODULES="vtemodule.so"
 else
        AC_MSG_RESULT([not found])
 fi
@@ -94,4 +94,11 @@ GETTEXT_PACKAGE="$PACKAGE"
 AC_SUBST(GETTEXT_PACKAGE)
 
 AM_CONFIG_HEADER(config.h)
-AC_OUTPUT([Makefile src/Makefile termcaps/Makefile po/Makefile.in vte.pc])
+AC_OUTPUT([
+Makefile
+src/Makefile
+termcaps/Makefile
+python/Makefile
+po/Makefile.in
+vte.pc
+])
diff --git a/python/Makefile.am b/python/Makefile.am
new file mode 100644 (file)
index 0000000..6c514d7
--- /dev/null
@@ -0,0 +1,16 @@
+EXTRA_PROGRAMS = vtemodule.so
+EXTRA_DIST = vte.defs vte.override
+pythonsiteexecdir = $(libdir)/python@PYTHONREV@/site-packages
+pythonsiteexec_PROGRAMS = @PYTHONMODULES@
+
+CFLAGS = @CFLAGS@ @XFT_CFLAGS@ @GTK_CFLAGS@ @X_CFLAGS@
+
+CLEANFILES = vte.c
+
+vtemodule_so_SOURCES = vtemodule.c vte.c
+vtemodule_so_CFLAGS = @CFLAGS@ @GLIB_CFLAGS@ @PYGTK_CFLAGS@ -I$(includedir)/python@PYTHONREV@
+vtemodule_so_LDFLAGS = -shared
+vtemodule_so_LDADD = $(top_builddir)/src/libvte.la @LIBS@ @PYGTK_LIBS@ @XFT_LIBS@ @GTK_LIBS@ @X_LIBS@
+
+vte.c: vte.defs vte.override
+       pygtk-codegen-2.0 -p py$(PACKAGE) -o vte.override --register $(datadir)/pygtk/2.0/defs/gtk-types.defs --register $(datadir)/pygtk/2.0/defs/gdk-types.defs --register $(datadir)/pygtk/2.0/defs/pango-types.defs $< > $@
diff --git a/python/vte.defs b/python/vte.defs
new file mode 100644 (file)
index 0000000..a5c750d
--- /dev/null
@@ -0,0 +1,369 @@
+;; -*- scheme -*-
+; object definitions ...
+
+(define-object Terminal
+  (in-module "Vte")
+  (parent "GtkWidget")
+  (c-name "VteTerminal")
+  (gtype-id "VTE_TYPE_TERMINAL")
+)
+
+;; Enumerations and flags ...
+
+(define-enum TerminalEraseBinding
+  (in-module "Vte")
+  (c-name "VteTerminalEraseBinding")
+  (values
+    '("auto" "VTE_ERASE_AUTO")
+    '("ascii-backspace" "VTE_ERASE_ASCII_BACKSPACE")
+    '("ascii-delete" "VTE_ERASE_ASCII_DELETE")
+    '("delete-sequence" "VTE_ERASE_DELETE_SEQUENCE")
+  )
+)
+
+
+;; From vte.h
+
+(define-function vte_terminal_get_type
+  (c-name "vte_terminal_get_type")
+  (return-type "GtkType")
+)
+
+(define-function vte_terminal_new
+  (c-name "vte_terminal_new")
+  (is-constructor-of VteTerminal)
+  (return-type "VteTerminal*")
+)
+
+(define-method fork_command
+  (of-object "VteTerminal")
+  (c-name "vte_terminal_fork_command")
+  (return-type "pid_t")
+  (parameters
+    '("const-char*" "command")
+    '("const-char**" "argv")
+  )
+)
+
+(define-method feed
+  (of-object "VteTerminal")
+  (c-name "vte_terminal_feed")
+  (return-type "none")
+  (parameters
+    '("const-char*" "data")
+    '("size_t" "length")
+  )
+)
+
+(define-method feed_child
+  (of-object "VteTerminal")
+  (c-name "vte_terminal_feed_child")
+  (return-type "none")
+  (parameters
+    '("const-char*" "data")
+    '("size_t" "length")
+  )
+)
+
+(define-method copy_clipboard
+  (of-object "VteTerminal")
+  (c-name "vte_terminal_copy_clipboard")
+  (return-type "none")
+)
+
+(define-method paste_clipboard
+  (of-object "VteTerminal")
+  (c-name "vte_terminal_paste_clipboard")
+  (return-type "none")
+)
+
+(define-method set_size
+  (of-object "VteTerminal")
+  (c-name "vte_terminal_set_size")
+  (return-type "none")
+  (parameters
+    '("long" "columns")
+    '("long" "rows")
+  )
+)
+
+(define-method set_audible_bell
+  (of-object "VteTerminal")
+  (c-name "vte_terminal_set_audible_bell")
+  (return-type "none")
+  (parameters
+    '("gboolean" "is_audible")
+  )
+)
+
+(define-method set_scroll_on_output
+  (of-object "VteTerminal")
+  (c-name "vte_terminal_set_scroll_on_output")
+  (return-type "none")
+  (parameters
+    '("gboolean" "scroll")
+  )
+)
+
+(define-method set_scroll_on_keystroke
+  (of-object "VteTerminal")
+  (c-name "vte_terminal_set_scroll_on_keystroke")
+  (return-type "none")
+  (parameters
+    '("gboolean" "scroll")
+  )
+)
+
+(define-method set_colors
+  (of-object "VteTerminal")
+  (c-name "vte_terminal_set_colors")
+  (return-type "none")
+  (parameters
+    '("const-GdkColor*" "foreground")
+    '("const-GdkColor*" "background")
+    '("const-GdkColor*" "palette")
+    '("size_t" "palette_size")
+  )
+)
+
+(define-method set_default_colors
+  (of-object "VteTerminal")
+  (c-name "vte_terminal_set_default_colors")
+  (return-type "none")
+)
+
+(define-method set_background_image
+  (of-object "VteTerminal")
+  (c-name "vte_terminal_set_background_image")
+  (return-type "none")
+  (parameters
+    '("GdkPixbuf*" "image")
+  )
+)
+
+(define-method set_background_image_file
+  (of-object "VteTerminal")
+  (c-name "vte_terminal_set_background_image_file")
+  (return-type "none")
+  (parameters
+    '("const-char*" "path")
+  )
+)
+
+(define-method set_background_saturation
+  (of-object "VteTerminal")
+  (c-name "vte_terminal_set_background_saturation")
+  (return-type "none")
+  (parameters
+    '("double" "saturation")
+  )
+)
+
+(define-method set_background_transparent
+  (of-object "VteTerminal")
+  (c-name "vte_terminal_set_background_transparent")
+  (return-type "none")
+  (parameters
+    '("gboolean" "transparent")
+  )
+)
+
+(define-method set_cursor_blinks
+  (of-object "VteTerminal")
+  (c-name "vte_terminal_set_cursor_blinks")
+  (return-type "none")
+  (parameters
+    '("gboolean" "blink")
+  )
+)
+
+(define-method set_scrollback_lines
+  (of-object "VteTerminal")
+  (c-name "vte_terminal_set_scrollback_lines")
+  (return-type "none")
+  (parameters
+    '("long" "lines")
+  )
+)
+
+(define-method im_append_menuitems
+  (of-object "VteTerminal")
+  (c-name "vte_terminal_im_append_menuitems")
+  (return-type "none")
+  (parameters
+    '("GtkMenuShell*" "menushell")
+  )
+)
+
+(define-method set_font
+  (of-object "VteTerminal")
+  (c-name "vte_terminal_set_font")
+  (return-type "none")
+  (parameters
+    '("const-PangoFontDescription*" "font_desc")
+  )
+)
+
+(define-method set_font_from_string
+  (of-object "VteTerminal")
+  (c-name "vte_terminal_set_font_from_string")
+  (return-type "none")
+  (parameters
+    '("const-char*" "name")
+  )
+)
+
+(define-method get_font
+  (of-object "VteTerminal")
+  (c-name "vte_terminal_get_font")
+  (return-type "const-PangoFontDescription*")
+)
+
+(define-method get_using_xft
+  (of-object "VteTerminal")
+  (c-name "vte_terminal_get_using_xft")
+  (return-type "gboolean")
+)
+
+(define-method get_has_selection
+  (of-object "VteTerminal")
+  (c-name "vte_terminal_get_has_selection")
+  (return-type "gboolean")
+)
+
+(define-method set_word_chars
+  (of-object "VteTerminal")
+  (c-name "vte_terminal_set_word_chars")
+  (return-type "none")
+  (parameters
+    '("const-char*" "spec")
+  )
+)
+
+(define-method is_word_char
+  (of-object "VteTerminal")
+  (c-name "vte_terminal_is_word_char")
+  (return-type "gboolean")
+  (parameters
+    '("gunichar" "c")
+  )
+)
+
+(define-method set_backspace_binding
+  (of-object "VteTerminal")
+  (c-name "vte_terminal_set_backspace_binding")
+  (return-type "none")
+  (parameters
+    '("VteTerminalEraseBinding" "binding")
+  )
+)
+
+(define-method set_delete_binding
+  (of-object "VteTerminal")
+  (c-name "vte_terminal_set_delete_binding")
+  (return-type "none")
+  (parameters
+    '("VteTerminalEraseBinding" "binding")
+  )
+)
+
+(define-method set_mouse_autohide
+  (of-object "VteTerminal")
+  (c-name "vte_terminal_set_mouse_autohide")
+  (return-type "none")
+  (parameters
+    '("gboolean" "setting")
+  )
+)
+
+(define-method get_mouse_autohide
+  (of-object "VteTerminal")
+  (c-name "vte_terminal_get_mouse_autohide")
+  (return-type "gboolean")
+)
+
+(define-method reset
+  (of-object "VteTerminal")
+  (c-name "vte_terminal_reset")
+  (return-type "none")
+  (parameters
+    '("gboolean" "full")
+    '("gboolean" "clear_history")
+  )
+)
+
+(define-method get_text
+  (of-object "VteTerminal")
+  (c-name "vte_terminal_get_text")
+  (return-type "char*")
+  (parameters
+  )
+)
+
+(define-method get_cursor_position
+  (of-object "VteTerminal")
+  (c-name "vte_terminal_get_cursor_position")
+  (return-type "none")
+  (parameters
+    '("long*" "column")
+    '("long*" "row")
+  )
+)
+
+(define-method match_clear_all
+  (of-object "VteTerminal")
+  (c-name "vte_terminal_match_clear_all")
+  (return-type "none")
+)
+
+(define-method match_add
+  (of-object "VteTerminal")
+  (c-name "vte_terminal_match_add")
+  (return-type "int")
+  (parameters
+    '("const-char*" "match")
+  )
+)
+
+(define-method match_check
+  (of-object "VteTerminal")
+  (c-name "vte_terminal_match_check")
+  (return-type "char*")
+  (parameters
+    '("long" "column")
+    '("long" "row")
+    '("int*" "tag")
+  )
+)
+
+(define-method set_emulation
+  (of-object "VteTerminal")
+  (c-name "vte_terminal_set_emulation")
+  (return-type "none")
+  (parameters
+    '("const-char*" "emulation")
+  )
+)
+
+(define-method get_emulation
+  (of-object "VteTerminal")
+  (c-name "vte_terminal_get_emulation")
+  (return-type "const-char*")
+)
+
+(define-method set_encoding
+  (of-object "VteTerminal")
+  (c-name "vte_terminal_set_encoding")
+  (return-type "none")
+  (parameters
+    '("const-char*" "encoding")
+  )
+)
+
+(define-method get_encoding
+  (of-object "VteTerminal")
+  (c-name "vte_terminal_get_encoding")
+  (return-type "const-char*")
+)
+
+
diff --git a/python/vte.override b/python/vte.override
new file mode 100644 (file)
index 0000000..7a92c15
--- /dev/null
@@ -0,0 +1,12 @@
+%%
+headers
+#include <Python.h>
+#include <pygtk/pygtk.h>
+#include <gtk/gtk.h>
+#include "../src/vte.h"
+%%
+import gtk.gdk.Pixbuf as PyGdkPixbuf_Type
+import gtk.MenuShell as PyGtkMenuShell_Type
+import gtk.Widget as PyGtkWidget_Type
+%%
+ignore vte_terminal_get_text
diff --git a/python/vtemodule.c b/python/vtemodule.c
new file mode 100644 (file)
index 0000000..a58c8ed
--- /dev/null
@@ -0,0 +1,49 @@
+/*
+ * Copyright (C) 2002 Red Hat, Inc.
+ *
+ * This is free software; you can redistribute it and/or modify it under
+ * the terms of the GNU Library General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program 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
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this program; if not, write to the Free Software
+ * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ */
+
+#ident "$Id$"
+
+#ifdef HAVE_CONFIG_H
+#include "../config.h"
+#endif
+#include <Python.h>
+#include <pygobject.h>
+#include <pygtk/pygtk.h>
+#include "../src/vte.h"
+
+extern void pyvte_register_classes(PyObject * d);
+extern PyMethodDef pyvte_functions[];
+extern DL_EXPORT(void) initvte(void);
+
+DL_EXPORT(void)
+initvte(void)
+{
+       PyObject *m, *d;
+
+       init_pygobject();
+       init_pygtk();
+
+       m = Py_InitModule("vte", pyvte_functions);
+       d = PyModule_GetDict(m);
+
+       pyvte_register_classes(d);
+
+       if (PyErr_Occurred()) {
+               Py_FatalError("can't initialise module vte");
+       }
+}
index f5dd705..9007af9 100644 (file)
@@ -2,10 +2,8 @@ bin_PROGRAMS = vte
 pkginclude_HEADERS = caps.h pty.h ring.h termcap.h trie.h vte.h vteaccess.h
 lib_LTLIBRARIES = libvte.la
 noinst_PROGRAMS = interpret utf8echo utf8mode iso8859mode
-EXTRA_PROGRAMS = pty reaper ring termcap trie vtemodule.so
-EXTRA_DIST = marshal.list vte.defs
-pythonsitedir = $(libdir)/python@PYTHONREV/site-packages
-pythonsite_BINARIES = @PYTHONMODULES@
+EXTRA_PROGRAMS = pty reaper ring termcap trie
+EXTRA_DIST = marshal.list
 
 CFLAGS = @CFLAGS@ @XFT_CFLAGS@ @GTK_CFLAGS@ @X_CFLAGS@
 
@@ -99,12 +97,3 @@ reaper_SOURCES = \
        reaper.c \
        reaper.h
 reaper_LDADD = @LIBS@ @GLIB_LIBS@
-
-vtemodule_so_SOURCES = \
-       vtemodule.c
-vtemodule_so_CFLAGS = @CFLAGS@ @GLIB_CFLAGS@ @PYGTK_CFLAGS@ -I$(includedir)/python@PYTHONREV@
-vtemodule_so_LDFLAGS = -shared
-vtemodule_so_LDADD = libvte.la @LIBS@ @PYGTK_LIBS@ @XFT_LIBS@ @GTK_LIBS@ @X_LIBS@
-
-vtemodule.c: vte.defs vte.override
-       pygtk-codegen-2.0 -p $(PACKAGE) -o vte.override $< > $@
diff --git a/src/vte.defs b/src/vte.defs
deleted file mode 100644 (file)
index 8b26a10..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-;; -*- scheme -*-
-
-; object definitions ...
-
-(module "Vte"
-
-(define-object Terminal
-  (in-module "Vte")
-  (parent "Gtk.Widget")
-  (c-name "VteTerminal")
-  (gtype-id "VTE_TYPE_TERMINAL")
-  (fields
-    '("glong" "char_width")
-    '("glong" "char_height")
-    '("glong" "char_ascent")
-    '("glong" "char_descent")
-    '("glong" "row_count")
-    '("glong" "column_count")
-    '("gchar*" "window_title")
-    '("gchar*" "icon_title")
-  )
-)
-
-(define-method fork_command
-  (of-object "VteTerminal")
-  (c-name "vte_terminal_fork_command")
-  (return-type "pid_t")
-  (parameters
-    '("const-gchar*" "command")
-    '("gchar**" "env_add")
-  )
-)
-
-(define-method set_emulation
-  (of-object "VteTerminal")
-  (c-name "vte_terminal_set_emulation")
-  (parameters
-    '("const-gchar*" "emulation")
-  )
-)
-
-)
diff --git a/src/vte.override b/src/vte.override
deleted file mode 100644 (file)
index 4f168ee..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-%%
-headers
-#include <Python.h>
-#include <pygtk/pygtk.h>
-#include <gtk/gtk.h>
-#include "vte.h"