diff src/console-gtk.c @ 462:0784d089fdc9 r21-2-46

Import from CVS: tag r21-2-46
author cvs
date Mon, 13 Aug 2007 11:44:37 +0200
parents
children 190b164ddcac
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/console-gtk.c	Mon Aug 13 11:44:37 2007 +0200
@@ -0,0 +1,129 @@
+/* Console functions for X windows.
+   Copyright (C) 1996 Ben Wing.
+
+This file is part of XEmacs.
+
+XEmacs is free software; you can redistribute it and/or modify it
+under the terms of the GNU General Public License as published by the
+Free Software Foundation; either version 2, or (at your option) any
+later version.
+
+XEmacs 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 General Public License
+along with XEmacs; see the file COPYING.  If not, write to
+the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+Boston, MA 02111-1307, USA.  */
+
+/* Synched up with: Not in FSF. */
+
+/* Authorship:
+
+   Ben Wing: January 1996, for 19.14.
+   William Perry: April 2000, for 21.1 (Gtk version)
+ */
+
+#include <config.h>
+#include "lisp.h"
+
+#include "console-gtk.h"
+#include "process.h" /* canonicalize_host_name */
+#include "redisplay.h" /* for display_arg */
+
+DEFINE_CONSOLE_TYPE (gtk);
+
+static int
+gtk_initially_selected_for_input (struct console *con)
+{
+  return 1;
+}
+
+/* Remember, in all of the following functions, we have to verify
+   the integrity of our input, because the generic functions don't. */
+
+static Lisp_Object
+gtk_device_to_console_connection (Lisp_Object connection, Error_behavior errb)
+{
+  /* Strip the trailing .# off of the connection, if it's there. */
+
+  if (NILP (connection))
+    return Qnil;
+  else
+    {
+	connection = build_string ("gtk");
+    }
+  return connection;
+}
+
+static Lisp_Object
+gtk_semi_canonicalize_console_connection (Lisp_Object connection,
+					  Error_behavior errb)
+{
+  struct gcpro gcpro1;
+
+  GCPRO1 (connection);
+
+  connection = build_string ("gtk");
+
+  RETURN_UNGCPRO (connection);
+}
+
+static Lisp_Object
+gtk_canonicalize_console_connection (Lisp_Object connection, Error_behavior errb)
+{
+  Lisp_Object hostname = Qnil;
+  struct gcpro gcpro1, gcpro2;
+
+  GCPRO2 (connection, hostname);
+
+  connection = build_string ("gtk");
+
+  RETURN_UNGCPRO (connection);
+}
+
+static Lisp_Object
+gtk_semi_canonicalize_device_connection (Lisp_Object connection,
+				         Error_behavior errb)
+{
+  struct gcpro gcpro1;
+
+  GCPRO1 (connection);
+
+  connection = build_string("gtk");
+
+  RETURN_UNGCPRO (connection);
+}
+
+static Lisp_Object
+gtk_canonicalize_device_connection (Lisp_Object connection, Error_behavior errb)
+{
+  struct gcpro gcpro1;
+
+  GCPRO1 (connection);
+  connection = build_string("gtk");
+
+  RETURN_UNGCPRO (connection);
+}
+
+void
+console_type_create_gtk (void)
+{
+  INITIALIZE_CONSOLE_TYPE (gtk, "gtk", "console-gtk-p");
+
+  CONSOLE_HAS_METHOD (gtk, semi_canonicalize_console_connection);
+  CONSOLE_HAS_METHOD (gtk, canonicalize_console_connection);
+  CONSOLE_HAS_METHOD (gtk, semi_canonicalize_device_connection);
+  CONSOLE_HAS_METHOD (gtk, canonicalize_device_connection);
+  CONSOLE_HAS_METHOD (gtk, device_to_console_connection);
+  CONSOLE_HAS_METHOD (gtk, initially_selected_for_input);
+  /* CONSOLE_HAS_METHOD (gtk, delete_console); */
+}
+
+void
+reinit_console_type_create_gtk (void)
+{
+  REINITIALIZE_CONSOLE_TYPE (gtk);
+}