#ifndef INCLUDED_console_h_
#define INCLUDED_console_h_
+#include "character.h"
+
/* Devices and consoles are similar entities. The idea is that
a console represents a physical keyboard/mouse/other-input-source
while a device represents a display where frames appear on.
struct console_methods
{
- CONST char *name; /* Used by print_console, print_device, print_frame */
+ const char *name; /* Used by print_console, print_device, print_frame */
Lisp_Object symbol;
Lisp_Object predicate_symbol;
Lisp_Object (*get_frame_parent_method) (struct frame *f);
void (*update_frame_external_traits_method) (struct frame *f, Lisp_Object name);
int (*frame_size_fixed_p_method) (struct frame *f);
+ void (*eject_page_method) (struct frame *f);
/* redisplay methods */
int (*left_margin_width_method) (struct window *);
int (*right_margin_width_method) (struct window *);
int (*text_width_method) (struct frame *f, struct face_cachel *cachel,
- CONST Emchar *str, Charcount len);
+ const Charc *str, Charcount len);
void (*output_display_block_method) (struct window *, struct display_line *,
int, int, int, int, int, int, int);
int (*divider_height_method) (void);
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 *);
+ void (*window_output_begin_method) (struct window *);
+ void (*frame_output_begin_method) (struct frame *);
+ void (*window_output_end_method) (struct window *);
+ void (*frame_output_end_method) (struct frame *);
int (*flash_method) (struct device *);
void (*ring_bell_method) (struct device *, int volume, int pitch,
int duration);
face_index findex, int cursor_start, int cursor_width,
int cursor_height, int offset_bitmap);
void (*output_string_method) (struct window *w, struct display_line *dl,
- Emchar_dynarr *buf, int xpos, int xoffset,
+ Charc_dynarr *buf, int xpos, int xoffset,
int start_pixpos, int width, face_index findex,
int cursor, int cursor_start, int cursor_width,
int cursor_height);
Lisp_Object charset);
int (*font_spec_matches_charset_method) (struct device *d,
Lisp_Object charset,
- CONST Bufbyte *nonreloc,
+ const Bufbyte *nonreloc,
Lisp_Object reloc,
Bytecount offset,
Bytecount length);
struct display_glyph_area* dga);
void (*resize_subwindow_method) (Lisp_Image_Instance *, int w, int h);
void (*update_subwindow_method) (Lisp_Image_Instance *);
+ void (*update_widget_method) (Lisp_Image_Instance *);
int (*image_instance_equal_method) (Lisp_Image_Instance *,
Lisp_Image_Instance *,
int depth);
#define CONSOLE_TYPE_P(con, type) EQ (CONSOLE_TYPE (con), Q##type)
#ifdef ERROR_CHECK_TYPECHECK
-INLINE struct console *
+INLINE_HEADER struct console *
error_check_console_type (struct console *con, Lisp_Object sym);
-INLINE struct console *
+INLINE_HEADER struct console *
error_check_console_type (struct console *con, Lisp_Object sym)
{
assert (EQ (CONSOLE_TYPE (con), sym));