comparison src/console.h @ 442:abe6d1db359e r21-2-36

Import from CVS: tag r21-2-36
author cvs
date Mon, 13 Aug 2007 11:35:02 +0200
parents 8de8e3f6228a
children 3d3049ae1304
comparison
equal deleted inserted replaced
441:72a7cfa4a488 442:abe6d1db359e
63 extern const struct struct_description cted_description; 63 extern const struct struct_description cted_description;
64 extern const struct struct_description console_methods_description; 64 extern const struct struct_description console_methods_description;
65 65
66 struct console_methods 66 struct console_methods
67 { 67 {
68 CONST char *name; /* Used by print_console, print_device, print_frame */ 68 const char *name; /* Used by print_console, print_device, print_frame */
69 Lisp_Object symbol; 69 Lisp_Object symbol;
70 Lisp_Object predicate_symbol; 70 Lisp_Object predicate_symbol;
71 71
72 /* console methods */ 72 /* console methods */
73 void (*init_console_method) (struct console *, Lisp_Object props); 73 void (*init_console_method) (struct console *, Lisp_Object props);
89 void (*init_device_method) (struct device *, Lisp_Object props); 89 void (*init_device_method) (struct device *, Lisp_Object props);
90 void (*finish_init_device_method) (struct device *, Lisp_Object props); 90 void (*finish_init_device_method) (struct device *, Lisp_Object props);
91 void (*delete_device_method) (struct device *); 91 void (*delete_device_method) (struct device *);
92 void (*mark_device_method) (struct device *); 92 void (*mark_device_method) (struct device *);
93 void (*asynch_device_change_method) (void); 93 void (*asynch_device_change_method) (void);
94 Lisp_Object (*device_system_metrics_method) (struct device *, enum device_metrics); 94 Lisp_Object (*device_system_metrics_method) (struct device *,
95 enum device_metrics);
95 unsigned int (*device_implementation_flags_method) (void); 96 unsigned int (*device_implementation_flags_method) (void);
96 Lisp_Object (*own_selection_method)(Lisp_Object selection_name, Lisp_Object selection_value); 97 Lisp_Object (*own_selection_method)(Lisp_Object selection_name,
97 void (*disown_selection_method)(Lisp_Object selection_name, Lisp_Object timeval); 98 Lisp_Object selection_value,
98 Lisp_Object (*get_foreign_selection_method) (Lisp_Object selection_symbol, 99 Lisp_Object how_to_add,
99 Lisp_Object target_type); 100 Lisp_Object selection_type);
100 Lisp_Object (*selection_exists_p_method)(Lisp_Object selection_name); 101 void (*disown_selection_method)(Lisp_Object selection_name,
102 Lisp_Object timeval);
103 Lisp_Object (*get_foreign_selection_method) (Lisp_Object selection_symbol,
104 Lisp_Object target_type);
105 Lisp_Object (*selection_exists_p_method)(Lisp_Object selection_name,
106 Lisp_Object selection_type);
107 Lisp_Object (*available_selection_types_method)(Lisp_Object selection_name);
108 Lisp_Object (*register_selection_data_type_method)(Lisp_Object type_name);
109 Lisp_Object (*selection_data_type_name_method)(Lisp_Object type);
101 110
102 /* frame methods */ 111 /* frame methods */
103 Lisp_Object *device_specific_frame_props; 112 Lisp_Object *device_specific_frame_props;
104 void (*init_frame_1_method) (struct frame *, Lisp_Object properties); 113 void (*init_frame_1_method) (struct frame *, Lisp_Object properties);
105 void (*init_frame_2_method) (struct frame *, Lisp_Object properties); 114 void (*init_frame_2_method) (struct frame *, Lisp_Object properties);
109 void (*mark_frame_method) (struct frame *); 118 void (*mark_frame_method) (struct frame *);
110 void (*delete_frame_method) (struct frame *); 119 void (*delete_frame_method) (struct frame *);
111 void (*focus_on_frame_method) (struct frame *); 120 void (*focus_on_frame_method) (struct frame *);
112 void (*raise_frame_method) (struct frame *); 121 void (*raise_frame_method) (struct frame *);
113 void (*lower_frame_method) (struct frame *); 122 void (*lower_frame_method) (struct frame *);
123 void (*enable_frame_method) (struct frame *);
124 void (*disable_frame_method) (struct frame *);
114 int (*get_mouse_position_method) (struct device *d, Lisp_Object *frame, 125 int (*get_mouse_position_method) (struct device *d, Lisp_Object *frame,
115 int *x, int *y); 126 int *x, int *y);
116 void (*set_mouse_position_method) (struct window *w, int x, int y); 127 void (*set_mouse_position_method) (struct window *w, int x, int y);
117 void (*make_frame_visible_method) (struct frame *f); 128 void (*make_frame_visible_method) (struct frame *f);
118 void (*make_frame_invisible_method) (struct frame *f); 129 void (*make_frame_invisible_method) (struct frame *f);
133 void (*set_frame_icon_method) (struct frame *f); 144 void (*set_frame_icon_method) (struct frame *f);
134 void (*popup_menu_method) (Lisp_Object menu, Lisp_Object event); 145 void (*popup_menu_method) (Lisp_Object menu, Lisp_Object event);
135 Lisp_Object (*get_frame_parent_method) (struct frame *f); 146 Lisp_Object (*get_frame_parent_method) (struct frame *f);
136 void (*update_frame_external_traits_method) (struct frame *f, Lisp_Object name); 147 void (*update_frame_external_traits_method) (struct frame *f, Lisp_Object name);
137 int (*frame_size_fixed_p_method) (struct frame *f); 148 int (*frame_size_fixed_p_method) (struct frame *f);
149 void (*eject_page_method) (struct frame *f);
138 150
139 /* redisplay methods */ 151 /* redisplay methods */
140 int (*left_margin_width_method) (struct window *); 152 int (*left_margin_width_method) (struct window *);
141 int (*right_margin_width_method) (struct window *); 153 int (*right_margin_width_method) (struct window *);
142 int (*text_width_method) (struct frame *f, struct face_cachel *cachel, 154 int (*text_width_method) (struct frame *f, struct face_cachel *cachel,
143 CONST Emchar *str, Charcount len); 155 const Emchar *str, Charcount len);
144 void (*output_display_block_method) (struct window *, struct display_line *, 156 void (*output_display_block_method) (struct window *, struct display_line *,
145 int, int, int, int, int, int, int); 157 int, int, int, int, int, int, int);
146 int (*divider_height_method) (void); 158 int (*divider_height_method) (void);
147 int (*eol_cursor_width_method) (void); 159 int (*eol_cursor_width_method) (void);
148 void (*output_vertical_divider_method) (struct window *, int); 160 void (*output_vertical_divider_method) (struct window *, int);
149 void (*clear_to_window_end_method) (struct window *, int, int); 161 void (*clear_to_window_end_method) (struct window *, int, int);
150 void (*clear_region_method) (Lisp_Object, struct device*, struct frame*, face_index, 162 void (*clear_region_method) (Lisp_Object, struct device*, struct frame*, face_index,
151 int, int, int, int, 163 int, int, int, int,
152 Lisp_Object, Lisp_Object, Lisp_Object); 164 Lisp_Object, Lisp_Object, Lisp_Object);
153 void (*clear_frame_method) (struct frame *); 165 void (*clear_frame_method) (struct frame *);
154 void (*output_begin_method) (struct device *); 166 void (*window_output_begin_method) (struct window *);
155 void (*output_end_method) (struct device *); 167 void (*frame_output_begin_method) (struct frame *);
168 void (*window_output_end_method) (struct window *);
169 void (*frame_output_end_method) (struct frame *);
156 int (*flash_method) (struct device *); 170 int (*flash_method) (struct device *);
157 void (*ring_bell_method) (struct device *, int volume, int pitch, 171 void (*ring_bell_method) (struct device *, int volume, int pitch,
158 int duration); 172 int duration);
159 void (*frame_redraw_cursor_method) (struct frame *f); 173 void (*frame_redraw_cursor_method) (struct frame *f);
160 void (*set_final_cursor_coords_method) (struct frame *, int, int); 174 void (*set_final_cursor_coords_method) (struct frame *, int, int);
205 Lisp_Object (*find_charset_font_method) (Lisp_Object device, 219 Lisp_Object (*find_charset_font_method) (Lisp_Object device,
206 Lisp_Object font, 220 Lisp_Object font,
207 Lisp_Object charset); 221 Lisp_Object charset);
208 int (*font_spec_matches_charset_method) (struct device *d, 222 int (*font_spec_matches_charset_method) (struct device *d,
209 Lisp_Object charset, 223 Lisp_Object charset,
210 CONST Bufbyte *nonreloc, 224 const Bufbyte *nonreloc,
211 Lisp_Object reloc, 225 Lisp_Object reloc,
212 Bytecount offset, 226 Bytecount offset,
213 Bytecount length); 227 Bytecount length);
214 228
215 /* image methods */ 229 /* image methods */
220 void (*finalize_image_instance_method) (Lisp_Image_Instance *); 234 void (*finalize_image_instance_method) (Lisp_Image_Instance *);
221 void (*unmap_subwindow_method) (Lisp_Image_Instance *); 235 void (*unmap_subwindow_method) (Lisp_Image_Instance *);
222 void (*map_subwindow_method) (Lisp_Image_Instance *, int x, int y, 236 void (*map_subwindow_method) (Lisp_Image_Instance *, int x, int y,
223 struct display_glyph_area* dga); 237 struct display_glyph_area* dga);
224 void (*resize_subwindow_method) (Lisp_Image_Instance *, int w, int h); 238 void (*resize_subwindow_method) (Lisp_Image_Instance *, int w, int h);
225 void (*update_subwindow_method) (Lisp_Image_Instance *); 239 void (*redisplay_subwindow_method) (Lisp_Image_Instance *);
240 void (*redisplay_widget_method) (Lisp_Image_Instance *);
226 int (*image_instance_equal_method) (Lisp_Image_Instance *, 241 int (*image_instance_equal_method) (Lisp_Image_Instance *,
227 Lisp_Image_Instance *, 242 Lisp_Image_Instance *,
228 int depth); 243 int depth);
229 unsigned long (*image_instance_hash_method) (Lisp_Image_Instance *, 244 unsigned long (*image_instance_hash_method) (Lisp_Image_Instance *,
230 int depth); 245 int depth);
279 void (*free_frame_menubars_method) (struct frame *); 294 void (*free_frame_menubars_method) (struct frame *);
280 #endif 295 #endif
281 296
282 #ifdef HAVE_DIALOGS 297 #ifdef HAVE_DIALOGS
283 /* dialog methods */ 298 /* dialog methods */
284 void (*popup_dialog_box_method) (struct frame *, Lisp_Object dbox_desc); 299 Lisp_Object (*make_dialog_box_internal_method) (struct frame *,
300 Lisp_Object type,
301 Lisp_Object keys);
285 #endif 302 #endif
286 }; 303 };
287 304
288 /* 305 /*
289 * Constants returned by device_implementation_flags_method 306 * Constants returned by device_implementation_flags_method
449 } while (0) 466 } while (0)
450 467
451 #define CONSOLE_TYPE_P(con, type) EQ (CONSOLE_TYPE (con), Q##type) 468 #define CONSOLE_TYPE_P(con, type) EQ (CONSOLE_TYPE (con), Q##type)
452 469
453 #ifdef ERROR_CHECK_TYPECHECK 470 #ifdef ERROR_CHECK_TYPECHECK
454 INLINE struct console * 471 INLINE_HEADER struct console *
455 error_check_console_type (struct console *con, Lisp_Object sym); 472 error_check_console_type (struct console *con, Lisp_Object sym);
456 INLINE struct console * 473 INLINE_HEADER struct console *
457 error_check_console_type (struct console *con, Lisp_Object sym) 474 error_check_console_type (struct console *con, Lisp_Object sym)
458 { 475 {
459 assert (EQ (CONSOLE_TYPE (con), sym)); 476 assert (EQ (CONSOLE_TYPE (con), sym));
460 return con; 477 return con;
461 } 478 }