comparison src/xterm.h @ 91631:bcad1e8fbfa2

(struct x_display_info): Add AtomXatom_XEMBED. (enum xembed_info, enum xerm srmbed_message, enum xembed_focus) (enum xembed_modifier, enum xembed_accelerator): New. (xembed_set_info, xembed_send_message): Declare. (FRAME_X_EMBEDDED_P): New.
author Jan Djärv <jan.h.d@swipnet.se>
date Thu, 07 Feb 2008 14:07:45 +0000
parents 606f2d163a64
children 8dadab0712f6
comparison
equal deleted inserted replaced
91630:f3b50ee54418 91631:bcad1e8fbfa2
291 Atom Xatom_DONE, Xatom_PAGE; 291 Atom Xatom_DONE, Xatom_PAGE;
292 292
293 /* Atom used in toolkit scroll bar client messages. */ 293 /* Atom used in toolkit scroll bar client messages. */
294 Atom Xatom_Scrollbar; 294 Atom Xatom_Scrollbar;
295 295
296 /* Atom used in XEmbed client messages. */
297 Atom Xatom_XEMBED;
298
296 int cut_buffers_initialized; /* Whether we're sure they all exist */ 299 int cut_buffers_initialized; /* Whether we're sure they all exist */
297 300
298 /* The frame (if any) which has the X window that has keyboard focus. 301 /* The frame (if any) which has the X window that has keyboard focus.
299 Zero if none. This is examined by Ffocus_frame in xfns.c. Note 302 Zero if none. This is examined by Ffocus_frame in xfns.c. Note
300 that a mere EnterNotify event can set this; if you need to know the 303 that a mere EnterNotify event can set this; if you need to know the
1064 extern int x_session_check_input P_ ((struct input_event *bufp)); 1067 extern int x_session_check_input P_ ((struct input_event *bufp));
1065 extern int x_session_have_connection P_ ((void)); 1068 extern int x_session_have_connection P_ ((void));
1066 extern void x_session_close P_ ((void)); 1069 extern void x_session_close P_ ((void));
1067 #endif 1070 #endif
1068 1071
1072 /* XEmbed implementation. */
1073
1074 #define XEMBED_VERSION 0
1075
1076 enum xembed_info
1077 {
1078 XEMBED_MAPPED = 1 << 0
1079 };
1080
1081 enum xembed_message
1082 {
1083 XEMBED_EMBEDDED_NOTIFY = 0,
1084 XEMBED_WINDOW_ACTIVATE = 1,
1085 XEMBED_WINDOW_DEACTIVATE = 2,
1086 XEMBED_REQUEST_FOCUS = 3,
1087 XEMBED_FOCUS_IN = 4,
1088 XEMBED_FOCUS_OUT = 5,
1089 XEMBED_FOCUS_NEXT = 6,
1090 XEMBED_FOCUS_PREV = 7,
1091
1092 XEMBED_MODALITY_ON = 10,
1093 XEMBED_MODALITY_OFF = 11,
1094 XEMBED_REGISTER_ACCELERATOR = 12,
1095 XEMBED_UNREGISTER_ACCELERATOR = 13,
1096 XEMBED_ACTIVATE_ACCELERATOR = 14
1097 };
1098
1099 enum xembed_focus
1100 {
1101 XEMBED_FOCUS_CURRENT = 0,
1102 XEMBED_FOCUS_FIRST = 1,
1103 XEMBED_FOCUS_LAST = 2
1104 };
1105
1106 enum xembed_modifier
1107 {
1108 XEMBED_MODIFIER_SHIFT = 1 << 0,
1109 XEMBED_MODIFIER_CONTROL = 1 << 1,
1110 XEMBED_MODIFIER_ALT = 1 << 2,
1111 XEMBED_MODIFIER_SUPER = 1 << 3,
1112 XEMBED_MODIFIER_HYPER = 1 << 4
1113 };
1114
1115 enum xembed_accelerator
1116 {
1117 XEMBED_ACCELERATOR_OVERLOADED = 1 << 0
1118 };
1119
1120 /* Defined in xterm.c */
1121
1122 extern void xembed_set_info P_ ((struct frame *f, enum xembed_info flags));
1123 extern void xembed_send_message P_ ((struct frame *f, Time time,
1124 enum xembed_message message,
1125 long detail, long data1, long data2));
1126
1127 /* Is the frame embedded into another application? */
1128
1129 #define FRAME_X_EMBEDDED_P(f) (FRAME_X_OUTPUT(f)->explicit_parent != 0)
1130
1131
1069 #define FONT_TYPE_FOR_UNIBYTE(font, ch) 0 1132 #define FONT_TYPE_FOR_UNIBYTE(font, ch) 0
1070 #define FONT_TYPE_FOR_MULTIBYTE(font, ch) 0 1133 #define FONT_TYPE_FOR_MULTIBYTE(font, ch) 0
1071 1134
1072 #define STORE_XCHAR2B(chp, b1, b2) \ 1135 #define STORE_XCHAR2B(chp, b1, b2) \
1073 ((chp)->byte1 = (b1), (chp)->byte2 = (b2)) 1136 ((chp)->byte1 = (b1), (chp)->byte2 = (b2))