Mercurial > emacs
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)) |