Mercurial > hg > xemacs-beta
diff src/console.h @ 440:8de8e3f6228a r21-2-28
Import from CVS: tag r21-2-28
author | cvs |
---|---|
date | Mon, 13 Aug 2007 11:33:38 +0200 |
parents | 3ecd8885ac67 |
children | abe6d1db359e |
line wrap: on
line diff
--- a/src/console.h Mon Aug 13 11:32:27 2007 +0200 +++ b/src/console.h Mon Aug 13 11:33:38 2007 +0200 @@ -22,8 +22,8 @@ /* Written by Ben Wing. */ -#ifndef _XEMACS_CONSOLE_H_ -#define _XEMACS_CONSOLE_H_ +#ifndef INCLUDED_console_h_ +#define INCLUDED_console_h_ /* Devices and consoles are similar entities. The idea is that a console represents a physical keyboard/mouse/other-input-source @@ -55,9 +55,9 @@ DM_font_menubar, DM_font_dialog, DM_size_cursor, DM_size_scrollbar, DM_size_menu, DM_size_toolbar, DM_size_toolbar_button, DM_size_toolbar_border, DM_size_icon, DM_size_icon_small, DM_size_device, - DM_size_workspace, DM_size_device_mm, DM_device_dpi, DM_num_bit_planes, - DM_num_color_cells, DM_mouse_buttons, DM_swap_buttons, DM_show_sounds, - DM_slow_device, DM_security + DM_size_workspace, DM_offset_workspace, DM_size_device_mm, DM_device_dpi, + DM_num_bit_planes, DM_num_color_cells, DM_mouse_buttons, DM_swap_buttons, + DM_show_sounds, DM_slow_device, DM_security }; extern const struct struct_description cted_description; @@ -170,37 +170,36 @@ int cursor, int cursor_start, int cursor_width, int cursor_height); /* color methods */ - int (*initialize_color_instance_method) (struct Lisp_Color_Instance *, + int (*initialize_color_instance_method) (Lisp_Color_Instance *, Lisp_Object name, Lisp_Object device, Error_behavior errb); - void (*mark_color_instance_method) (struct Lisp_Color_Instance *); - void (*print_color_instance_method) (struct Lisp_Color_Instance *, + void (*mark_color_instance_method) (Lisp_Color_Instance *); + void (*print_color_instance_method) (Lisp_Color_Instance *, Lisp_Object printcharfun, int escapeflag); - void (*finalize_color_instance_method) (struct Lisp_Color_Instance *); - int (*color_instance_equal_method) (struct Lisp_Color_Instance *, - struct Lisp_Color_Instance *, + void (*finalize_color_instance_method) (Lisp_Color_Instance *); + int (*color_instance_equal_method) (Lisp_Color_Instance *, + Lisp_Color_Instance *, int depth); - unsigned long (*color_instance_hash_method) (struct Lisp_Color_Instance *, + unsigned long (*color_instance_hash_method) (Lisp_Color_Instance *, int depth); - Lisp_Object (*color_instance_rgb_components_method) - (struct Lisp_Color_Instance *); + Lisp_Object (*color_instance_rgb_components_method) (Lisp_Color_Instance *); int (*valid_color_name_p_method) (struct device *, Lisp_Object color); /* font methods */ - int (*initialize_font_instance_method) (struct Lisp_Font_Instance *, + int (*initialize_font_instance_method) (Lisp_Font_Instance *, Lisp_Object name, Lisp_Object device, Error_behavior errb); - void (*mark_font_instance_method) (struct Lisp_Font_Instance *); - void (*print_font_instance_method) (struct Lisp_Font_Instance *, + void (*mark_font_instance_method) (Lisp_Font_Instance *); + void (*print_font_instance_method) (Lisp_Font_Instance *, Lisp_Object printcharfun, int escapeflag); - void (*finalize_font_instance_method) (struct Lisp_Font_Instance *); - Lisp_Object (*font_instance_truename_method) (struct Lisp_Font_Instance *, + void (*finalize_font_instance_method) (Lisp_Font_Instance *); + Lisp_Object (*font_instance_truename_method) (Lisp_Font_Instance *, Error_behavior errb); - Lisp_Object (*font_instance_properties_method) (struct Lisp_Font_Instance *); + Lisp_Object (*font_instance_properties_method) (Lisp_Font_Instance *); Lisp_Object (*list_fonts_method) (Lisp_Object pattern, Lisp_Object device); Lisp_Object (*find_charset_font_method) (Lisp_Object device, @@ -214,22 +213,22 @@ Bytecount length); /* image methods */ - void (*mark_image_instance_method) (struct Lisp_Image_Instance *); - void (*print_image_instance_method) (struct Lisp_Image_Instance *, + void (*mark_image_instance_method) (Lisp_Image_Instance *); + void (*print_image_instance_method) (Lisp_Image_Instance *, 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 (*finalize_image_instance_method) (Lisp_Image_Instance *); + void (*unmap_subwindow_method) (Lisp_Image_Instance *); + void (*map_subwindow_method) (Lisp_Image_Instance *, int x, int y, struct display_glyph_area* dga); - 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 *, + void (*resize_subwindow_method) (Lisp_Image_Instance *, int w, int h); + void (*update_subwindow_method) (Lisp_Image_Instance *); + int (*image_instance_equal_method) (Lisp_Image_Instance *, + Lisp_Image_Instance *, int depth); - unsigned long (*image_instance_hash_method) (struct Lisp_Image_Instance *, + unsigned long (*image_instance_hash_method) (Lisp_Image_Instance *, int depth); - void (*init_image_instance_from_eimage_method) (struct Lisp_Image_Instance *ii, + void (*init_image_instance_from_eimage_method) (Lisp_Image_Instance *ii, int width, int height, int slices, unsigned char *eimage, @@ -289,8 +288,18 @@ /* * Constants returned by device_implementation_flags_method */ + /* Set when device uses pixel-based geometry */ -#define XDEVIMPF_PIXEL_GEOMETRY 0x00000001L +#define XDEVIMPF_PIXEL_GEOMETRY 0x00000001L + +/* Indicates that the device is a printer */ +#define XDEVIMPF_IS_A_PRINTER 0x00000002L + +/* Do not automatically redisplay this device */ +#define XDEVIMPF_NO_AUTO_REDISPLAY 0x00000004L + +/* Do not delete the device when last frame's gone */ +#define XDEVIMPF_FRAMELESS_OK 0x00000008L #define CONSOLE_TYPE_NAME(c) ((c)->conmeths->name) @@ -375,6 +384,11 @@ #define CONSOLE_HAS_METHOD(type, m) \ (type##_console_methods->m##_method = type##_##m) +/* Declare that console-type TYPE inherits method M + implementation from console-type FROMTYPE */ +#define CONSOLE_INHERITS_METHOD(type, fromtype, m) \ + (type##_console_methods->m##_method = fromtype##_##m) + struct console { struct lcrecord_header header; @@ -576,4 +590,4 @@ void set_console_last_nonminibuf_frame (struct console *con, Lisp_Object frame); -#endif /* _XEMACS_CONSOLE_H_ */ +#endif /* INCLUDED_console_h_ */