X-Git-Url: http://git.hcoop.net/bpt/emacs.git/blobdiff_plain/a9989764a4d54bf58381d5c3902e575bdf314245..6b8aa22a8ac19a46416737a6579cfcb77f647f18:/src/xterm.h diff --git a/src/xterm.h b/src/xterm.h index 2cc4b9eaff..6bb68cf915 100644 --- a/src/xterm.h +++ b/src/xterm.h @@ -176,6 +176,11 @@ struct x_display_info /* The current capacity of x_font_table. */ int font_table_size; +#ifdef USE_FONT_BACKEND + /* This provides a commonly used Font ID on this display. */ + XFontStruct *font; +#endif + /* Minimum width over all characters in all fonts in font_table. */ int smallest_char_width; @@ -293,6 +298,9 @@ struct x_display_info /* Atom used in toolkit scroll bar client messages. */ Atom Xatom_Scrollbar; + /* Atom used in XEmbed client messages. */ + Atom Xatom_XEMBED; + int cut_buffers_initialized; /* Whether we're sure they all exist */ /* The frame (if any) which has the X window that has keyboard focus. @@ -322,9 +330,6 @@ struct x_display_info /* The gray pixmap. */ Pixmap gray; - /* Cache of images. */ - struct image_cache *image_cache; - #ifdef HAVE_X_I18N /* XIM (X Input method). */ XIM xim; @@ -729,11 +734,6 @@ enum #define FRAME_SMALLEST_FONT_HEIGHT(F) \ FRAME_X_DISPLAY_INFO(F)->smallest_font_height - -/* Return a pointer to the image cache of frame F. */ - -#define FRAME_X_IMAGE_CACHE(F) FRAME_X_DISPLAY_INFO ((F))->image_cache - /* X-specific scroll bar stuff. */ @@ -1066,6 +1066,66 @@ extern int x_session_have_connection P_ ((void)); extern void x_session_close P_ ((void)); #endif +/* XEmbed implementation. */ + +#define XEMBED_VERSION 0 + +enum xembed_info + { + XEMBED_MAPPED = 1 << 0 + }; + +enum xembed_message + { + XEMBED_EMBEDDED_NOTIFY = 0, + XEMBED_WINDOW_ACTIVATE = 1, + XEMBED_WINDOW_DEACTIVATE = 2, + XEMBED_REQUEST_FOCUS = 3, + XEMBED_FOCUS_IN = 4, + XEMBED_FOCUS_OUT = 5, + XEMBED_FOCUS_NEXT = 6, + XEMBED_FOCUS_PREV = 7, + + XEMBED_MODALITY_ON = 10, + XEMBED_MODALITY_OFF = 11, + XEMBED_REGISTER_ACCELERATOR = 12, + XEMBED_UNREGISTER_ACCELERATOR = 13, + XEMBED_ACTIVATE_ACCELERATOR = 14 + }; + +enum xembed_focus + { + XEMBED_FOCUS_CURRENT = 0, + XEMBED_FOCUS_FIRST = 1, + XEMBED_FOCUS_LAST = 2 + }; + +enum xembed_modifier + { + XEMBED_MODIFIER_SHIFT = 1 << 0, + XEMBED_MODIFIER_CONTROL = 1 << 1, + XEMBED_MODIFIER_ALT = 1 << 2, + XEMBED_MODIFIER_SUPER = 1 << 3, + XEMBED_MODIFIER_HYPER = 1 << 4 + }; + +enum xembed_accelerator + { + XEMBED_ACCELERATOR_OVERLOADED = 1 << 0 + }; + +/* Defined in xterm.c */ + +extern void xembed_set_info P_ ((struct frame *f, enum xembed_info flags)); +extern void xembed_send_message P_ ((struct frame *f, Time time, + enum xembed_message message, + long detail, long data1, long data2)); + +/* Is the frame embedded into another application? */ + +#define FRAME_X_EMBEDDED_P(f) (FRAME_X_OUTPUT(f)->explicit_parent != 0) + + #define FONT_TYPE_FOR_UNIBYTE(font, ch) 0 #define FONT_TYPE_FOR_MULTIBYTE(font, ch) 0