X-Git-Url: http://git.chise.org/gitweb/?a=blobdiff_plain;f=src%2Fconsole-x.h;h=1850c216bff3440f4e94de5b0b96b1fb272ebae5;hb=8b6b965da075da197b3d654db3405aa6846bd3d8;hp=cbf0161727d15ed87dcc6fcc588a47f012b2c011;hpb=ea1ea793fe6e244ef5555ed983423a204101af13;p=chise%2Fxemacs-chise.git.1 diff --git a/src/console-x.h b/src/console-x.h index cbf0161..1850c21 100644 --- a/src/console-x.h +++ b/src/console-x.h @@ -29,28 +29,20 @@ Boston, MA 02111-1307, USA. */ multi-device work by Chuck Thompson). */ -#ifndef _XEMACS_CONSOLE_X_H_ -#define _XEMACS_CONSOLE_X_H_ +#ifndef INCLUDED_console_x_h_ +#define INCLUDED_console_x_h_ #ifdef HAVE_X_WINDOWS #include "console.h" +/* must come before Xutil.h, which is included indirectly from xintrinsic.h, + to avoid breakage in keysym-parsing macros from X11R6, at least X.org as + of 2005-01-17, and probably XFree86 too from reports on c.e.x */ +#include #include "xintrinsic.h" #include -#include #include - -#if 0 /* mrb - Xos sux. */ -#ifdef USG -#undef USG /* ####KLUDGE for Solaris 2.2 and up */ -#include -#define USG -#else -#include -#endif -#endif /* 0 */ - #include #ifdef HAVE_XPM @@ -76,7 +68,7 @@ struct x_device /* Xt application info. */ Widget Xt_app_shell; - /* Cache of GC's for frame's on this device. */ + /* Cache of GC's for frames on this device. */ struct gc_cache *gc_cache; /* Selected visual, depth and colormap for this device */ @@ -88,14 +80,14 @@ struct x_device Pixmap gray_pixmap; /* Atoms associated with this device. */ - /* allocated in Xatoms_of_xfns in xfns.c */ + /* allocated in Xatoms_of_device_x */ Atom Xatom_WM_PROTOCOLS; Atom Xatom_WM_DELETE_WINDOW; Atom Xatom_WM_SAVE_YOURSELF; Atom Xatom_WM_TAKE_FOCUS; Atom Xatom_WM_STATE; - /* allocated in Xatoms_of_xselect in xselect.c */ + /* allocated in Xatoms_of_select_x */ Atom Xatom_CLIPBOARD; Atom Xatom_TIMESTAMP; Atom Xatom_TEXT; @@ -108,7 +100,7 @@ struct x_device Atom Xatom_ATOM_PAIR; Atom Xatom_COMPOUND_TEXT; - /* allocated in Xatoms_of_objects_x in objects-x.c */ + /* allocated in Xatoms_of_objects_x */ Atom Xatom_FOUNDRY; Atom Xatom_FAMILY_NAME; Atom Xatom_WEIGHT_NAME; @@ -181,6 +173,7 @@ struct x_device unsigned int need_to_add_mask, down_mask; KeyCode last_downkey; Time release_time; + Time modifier_release_time; }; #define DEVICE_X_DATA(d) DEVICE_TYPE_DATA (d, x) @@ -206,14 +199,14 @@ struct x_device #define DEVICE_X_FONTSET(d) (DEVICE_X_DATA (d)->fontset) #endif /* HAVE_XIM */ -/* allocated in Xatoms_of_xfns in xfns.c */ +/* allocated in Xatoms_of_device_x */ #define DEVICE_XATOM_WM_PROTOCOLS(d) (DEVICE_X_DATA (d)->Xatom_WM_PROTOCOLS) #define DEVICE_XATOM_WM_DELETE_WINDOW(d) (DEVICE_X_DATA (d)->Xatom_WM_DELETE_WINDOW) #define DEVICE_XATOM_WM_SAVE_YOURSELF(d) (DEVICE_X_DATA (d)->Xatom_WM_SAVE_YOURSELF) #define DEVICE_XATOM_WM_TAKE_FOCUS(d) (DEVICE_X_DATA (d)->Xatom_WM_TAKE_FOCUS) #define DEVICE_XATOM_WM_STATE(d) (DEVICE_X_DATA (d)->Xatom_WM_STATE) -/* allocated in Xatoms_of_xselect in xselect.c */ +/* allocated in Xatoms_of_select_x */ #define DEVICE_XATOM_CLIPBOARD(d) (DEVICE_X_DATA (d)->Xatom_CLIPBOARD) #define DEVICE_XATOM_TIMESTAMP(d) (DEVICE_X_DATA (d)->Xatom_TIMESTAMP) #define DEVICE_XATOM_TEXT(d) (DEVICE_X_DATA (d)->Xatom_TEXT) @@ -226,7 +219,7 @@ struct x_device #define DEVICE_XATOM_ATOM_PAIR(d) (DEVICE_X_DATA (d)->Xatom_ATOM_PAIR) #define DEVICE_XATOM_COMPOUND_TEXT(d) (DEVICE_X_DATA (d)->Xatom_COMPOUND_TEXT) -/* allocated in Xatoms_of_objects_x in objects-x.c */ +/* allocated in Xatoms_of_objects_x */ #define DEVICE_XATOM_FOUNDRY(d) (DEVICE_X_DATA (d)->Xatom_FOUNDRY) #define DEVICE_XATOM_FAMILY_NAME(d) (DEVICE_X_DATA (d)->Xatom_FAMILY_NAME) #define DEVICE_XATOM_WEIGHT_NAME(d) (DEVICE_X_DATA (d)->Xatom_WEIGHT_NAME) @@ -383,7 +376,7 @@ extern Lisp_Object Vdefault_x_device; /* Number of pixels below each line. */ extern int x_interline_space; /* #### implement me */ -extern int x_selection_timeout; +extern Fixnum x_selection_timeout; struct frame *x_any_window_to_frame (struct device *d, Window); struct frame *x_any_widget_or_parent_to_frame (struct device *d, @@ -398,14 +391,14 @@ void x_handle_selection_request (XSelectionRequestEvent *event); void x_handle_selection_clear (XSelectionClearEvent *event); void x_handle_property_notify (XPropertyEvent *event); -void Xatoms_of_xselect (struct device *d); +void Xatoms_of_select_x (struct device *d); void Xatoms_of_objects_x (struct device *d); void x_wm_set_shell_iconic_p (Widget shell, int iconic_p); void x_wm_set_cell_size (Widget wmshell, int cw, int ch); void x_wm_set_variable_size (Widget wmshell, int width, int height); -CONST char *x_event_name (int event_type); +const char *x_event_name (int event_type); int x_error_handler (Display *disp, XErrorEvent *event); void expect_x_error (Display *dpy); int x_error_occurred_p (Display *dpy); @@ -415,11 +408,11 @@ int x_IO_error_handler (Display *disp); void x_redraw_exposed_area (struct frame *f, int x, int y, int width, int height); void x_output_string (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); -void x_output_x_pixmap (struct frame *f, struct Lisp_Image_Instance *p, +void x_output_x_pixmap (struct frame *f, Lisp_Image_Instance *p, int x, int y, int xoffset, int yoffset, int width, int height, unsigned long fg, unsigned long bg, @@ -491,5 +484,23 @@ extern int in_specifier_change_function; extern Lisp_Object Vx_initial_argv_list; /* #### ugh! */ +/* Standins for various X encodings, until we know them better */ + +/* !!#### Need to verify the encoding used in lwlib -- Qnative or Qctext? + Almost certainly the former. Use a standin for now. */ +#define Qlwlib_encoding Qnative + +#define Qx_atom_name_encoding Qctext +/* font names are often stored in atoms, so it gets sticky if we set this + to something different from atom-name encoding */ +#define Qx_font_name_encoding Qctext + +#define Qx_color_name_encoding Qctext + +/* the following probably must agree with Qcommand_argument_encoding and + Qenvironment_variable_encoding */ +#define Qx_display_name_encoding Qnative + #endif /* HAVE_X_WINDOWS */ -#endif /* _XEMACS_DEVICE_X_H_ */ + +#endif /* INCLUDED_console_x_h_ */