Contents in 1999-06-04-13 of release-21-2.
[chise/xemacs-chise.git.1] / src / console.h
index 2ba1b15..d551141 100644 (file)
@@ -37,7 +37,7 @@ Boston, MA 02111-1307, USA.  */
    always tagged to a particular X window (i.e. frame),
    which exists on only one screen; therefore the event won't be
    reported multiple times even if there are multiple devices on
-   the same physical display.  This is an implementational detail
+   the same physical display.  This is an implementation detail
    specific to X consoles (e.g. under NeXTstep or Windows, this
    could be different, and input would come directly from the console).
 */
@@ -89,7 +89,12 @@ struct console_methods
   void (*mark_device_method) (struct device *, void (*)(Lisp_Object));
   void (*asynch_device_change_method) (void);
   Lisp_Object (*device_system_metrics_method) (struct device *, enum device_metrics);
-  unsigned int (*device_implementation_flags_method) ();
+  unsigned int (*device_implementation_flags_method) (void);
+  Lisp_Object (*own_selection_method)(Lisp_Object selection_name, Lisp_Object selection_value);
+  void (*disown_selection_method)(Lisp_Object selection_name, Lisp_Object timeval);
+    Lisp_Object (*get_foreign_selection_method) (Lisp_Object selection_symbol,
+                                                Lisp_Object target_type);
+  Lisp_Object (*selection_exists_p_method)(Lisp_Object selection_name);
 
   /* frame methods */
   Lisp_Object *device_specific_frame_props;
@@ -139,7 +144,9 @@ struct console_methods
   int (*eol_cursor_width_method) (void);
   void (*output_vertical_divider_method) (struct window *, int);
   void (*clear_to_window_end_method) (struct window *, int, int);
-  void (*clear_region_method) (Lisp_Object, face_index, int, int, int, int);
+  void (*clear_region_method) (Lisp_Object, struct device*, struct frame*, face_index,
+                              int, int, int, int,
+                              Lisp_Object, Lisp_Object, Lisp_Object);
   void (*clear_frame_method) (struct frame *);
   void (*output_begin_method) (struct device *);
   void (*output_end_method) (struct device *);
@@ -202,6 +209,10 @@ struct console_methods
                                       Lisp_Object printcharfun,
                                       int escapeflag);
   void (*finalize_image_instance_method) (struct Lisp_Image_Instance *);
+  void (*unmap_subwindow_method) (struct Lisp_Image_Instance *);
+  void (*map_subwindow_method) (struct Lisp_Image_Instance *, int x, int y);
+  void (*resize_subwindow_method) (struct Lisp_Image_Instance *, int w, int h);
+  void (*update_subwindow_method) (struct Lisp_Image_Instance *);
   int (*image_instance_equal_method) (struct Lisp_Image_Instance *,
                                      struct Lisp_Image_Instance *,
                                      int depth);
@@ -209,29 +220,13 @@ struct console_methods
                                               int depth);
   void (*init_image_instance_from_eimage_method) (struct Lisp_Image_Instance *ii,
                                                  int width, int height,
-                                                 unsigned char *eimage, 
+                                                 unsigned char *eimage,
                                                  int dest_mask,
                                                  Lisp_Object instantiator,
                                                  Lisp_Object domain);
   Lisp_Object (*locate_pixmap_file_method) (Lisp_Object file_method);
   int (*colorize_image_instance_method) (Lisp_Object image_instance,
                                         Lisp_Object fg, Lisp_Object bg);
-#ifdef HAVE_XPM
-    /* which is more tacky - this or #defines in glyphs.c? */
-  void (*xpm_instantiate_method)(Lisp_Object image_instance, 
-                                Lisp_Object instantiator,
-                                Lisp_Object pointer_fg, 
-                                Lisp_Object pointer_bg,
-                                int dest_mask, Lisp_Object domain);
-#endif
-#ifdef HAVE_WINDOW_SYSTEM
-    /* which is more tacky - this or #defines in glyphs.c? */
-  void (*xbm_instantiate_method)(Lisp_Object image_instance, 
-                                Lisp_Object instantiator,
-                                Lisp_Object pointer_fg, 
-                                Lisp_Object pointer_bg,
-                                int dest_mask, Lisp_Object domain);
-#endif
   Lisp_Object image_conversion_list;
 
 #ifdef HAVE_TOOLBARS
@@ -297,9 +292,9 @@ struct console_methods
 
 /* Call a void-returning console method, if it exists */
 #define MAYBE_CONTYPE_METH(meth, m, args) do {                 \
-  struct console_methods *_maybe_contype_meth_meth = (meth);   \
-  if (HAS_CONTYPE_METH_P (_maybe_contype_meth_meth, m))                \
-    CONTYPE_METH (_maybe_contype_meth_meth, m, args);          \
+  struct console_methods *maybe_contype_meth_meth = (meth);    \
+  if (HAS_CONTYPE_METH_P (maybe_contype_meth_meth, m))         \
+    CONTYPE_METH (maybe_contype_meth_meth, m, args);           \
 } while (0)
 
 /* Call a console method, if it exists; otherwise return
@@ -531,7 +526,7 @@ int valid_console_type_p (Lisp_Object type);
 #define CONSOLE_SELECTED_DEVICE(con) ((con)->selected_device)
 #define CONSOLE_SELECTED_FRAME(con) \
   DEVICE_SELECTED_FRAME (XDEVICE ((con)->selected_device))
-#define CONSOLE_LAST_NONMINIBUF_FRAME(con) NON_LVALUE ((con)->_last_nonminibuf_frame)
+#define CONSOLE_LAST_NONMINIBUF_FRAME(con) NON_LVALUE ((con)->last_nonminibuf_frame)
 #define CONSOLE_QUIT_CHAR(con) ((con)->quit_char)
 
 #define CDFW_CONSOLE(obj)                              \