Mercurial > hg > xemacs-beta
annotate src/console-x.h @ 5518:3cc7470ea71c
gnuclient: if TMPDIR was set and connect failed, try again with /tmp
2011-06-03 Aidan Kehoe <kehoea@parhasard.net>
* gnuslib.c (connect_to_unix_server):
Retry with /tmp as a directory in which to search for Unix sockets
if an attempt to connect with some other directory failed (which
may be because gnuclient and gnuserv don't share an environment
value for TMPDIR, or because gnuserv was compiled with USE_TMPDIR
turned off).
author | Aidan Kehoe <kehoea@parhasard.net> |
---|---|
date | Fri, 03 Jun 2011 18:40:57 +0100 |
parents | 308d34e9f07d |
children |
rev | line source |
---|---|
428 | 1 /* Define X specific console, device, and frame object for XEmacs. |
2 Copyright (C) 1989, 1992, 1993, 1994, 1995 Free Software Foundation, Inc. | |
3 Copyright (C) 1994, 1995 Board of Trustees, University of Illinois. | |
1318 | 4 Copyright (C) 1996, 2002, 2003 Ben Wing. |
428 | 5 |
6 This file is part of XEmacs. | |
7 | |
5402
308d34e9f07d
Changed bulk of GPLv2 or later files identified by script
Mats Lidell <matsl@xemacs.org>
parents:
5176
diff
changeset
|
8 XEmacs is free software: you can redistribute it and/or modify it |
428 | 9 under the terms of the GNU General Public License as published by the |
5402
308d34e9f07d
Changed bulk of GPLv2 or later files identified by script
Mats Lidell <matsl@xemacs.org>
parents:
5176
diff
changeset
|
10 Free Software Foundation, either version 3 of the License, or (at your |
308d34e9f07d
Changed bulk of GPLv2 or later files identified by script
Mats Lidell <matsl@xemacs.org>
parents:
5176
diff
changeset
|
11 option) any later version. |
428 | 12 |
13 XEmacs is distributed in the hope that it will be useful, but WITHOUT | |
14 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | |
15 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | |
16 for more details. | |
17 | |
18 You should have received a copy of the GNU General Public License | |
5402
308d34e9f07d
Changed bulk of GPLv2 or later files identified by script
Mats Lidell <matsl@xemacs.org>
parents:
5176
diff
changeset
|
19 along with XEmacs. If not, see <http://www.gnu.org/licenses/>. */ |
428 | 20 |
21 /* Synched up with: Not in FSF. */ | |
22 | |
23 | |
24 /* Authorship: | |
25 | |
26 Ultimately based on FSF, then later on JWZ work for Lemacs. | |
27 Rewritten over time by Ben Wing and Chuck Thompson (original | |
28 multi-device work by Chuck Thompson). | |
29 */ | |
30 | |
440 | 31 #ifndef INCLUDED_console_x_h_ |
32 #define INCLUDED_console_x_h_ | |
428 | 33 |
34 #ifdef HAVE_X_WINDOWS | |
35 | |
36 #include "console.h" | |
2484 | 37 /* must come before Xutil.h, which is included indirectly from xintrinsic.h, |
38 to avoid breakage in keysym-parsing macros from X11R6, at least X.org as | |
39 of 2005-01-17, and probably XFree86 too from reports on c.e.x */ | |
40 #include <X11/keysym.h> | |
428 | 41 #include "xintrinsic.h" |
1346 | 42 #include "../lwlib/lwlib.h" |
428 | 43 |
44 #include <X11/cursorfont.h> | |
45 #include <X11/Xatom.h> | |
46 #include <X11/StringDefs.h> | |
47 | |
48 #ifdef HAVE_XPM | |
49 #include <X11/xpm.h> | |
50 #endif | |
51 | |
4916
a6c778975d7d
split USE_XFT into HAVE_XFT/USE_XFT
Ben Wing <ben@xemacs.org>
parents:
4908
diff
changeset
|
52 #ifdef HAVE_XFT |
3094 | 53 /* shut up GCC */ |
54 #define face_index face_index_arg | |
55 #define glyph_index glyph_index_arg | |
56 #include <X11/Xft/Xft.h> | |
57 #undef glyph_index | |
58 #undef face_index | |
59 #endif | |
60 | |
428 | 61 /* R5 defines the XPointer type, but R4 doesn't. |
62 R4 also doesn't define a version number, but R5 does. */ | |
63 #if (XlibSpecificationRelease < 5) | |
64 # define XPointer char * | |
65 #endif | |
66 | |
1204 | 67 #ifdef __cplusplus |
68 #define X_CLASSFIELD c_class | |
69 #else | |
70 #define X_CLASSFIELD class | |
71 #endif | |
72 | |
428 | 73 /* Variables associated with the X display frame this emacs is using. */ |
74 extern XtAppContext Xt_app_con; | |
75 | |
76 extern Lisp_Object Vx_gc_pointer_shape; | |
77 extern Lisp_Object Vx_scrollbar_pointer_shape; | |
78 extern Lisp_Object Qx_error; | |
79 | |
80 /* Number of pixels below each line. */ | |
81 extern int x_interline_space; /* #### implement me */ | |
82 | |
458 | 83 extern Fixnum x_selection_timeout; |
428 | 84 |
85 struct frame *x_any_window_to_frame (struct device *d, Window); | |
86 struct frame *x_any_widget_or_parent_to_frame (struct device *d, | |
87 Widget widget); | |
88 struct frame *decode_x_frame (Lisp_Object); | |
89 struct frame *x_window_to_frame (struct device *d, Window); | |
90 struct device *get_device_from_display (Display *dpy); | |
91 struct device *decode_x_device (Lisp_Object); | |
92 | |
93 void x_handle_selection_notify (XSelectionEvent *event); | |
94 void x_handle_selection_request (XSelectionRequestEvent *event); | |
95 void x_handle_selection_clear (XSelectionClearEvent *event); | |
96 void x_handle_property_notify (XPropertyEvent *event); | |
97 | |
440 | 98 void Xatoms_of_select_x (struct device *d); |
5176
8b2f75cecb89
rename objects* (.c, .h and .el files) to fontcolor*
Ben Wing <ben@xemacs.org>
parents:
5016
diff
changeset
|
99 void Xatoms_of_fontcolor_x (struct device *d); |
428 | 100 |
101 void x_wm_set_shell_iconic_p (Widget shell, int iconic_p); | |
102 void x_wm_set_cell_size (Widget wmshell, int cw, int ch); | |
103 void x_wm_set_variable_size (Widget wmshell, int width, int height); | |
104 | |
4952
19a72041c5ed
Mule-izing, various fixes related to char * arguments
Ben Wing <ben@xemacs.org>
parents:
4528
diff
changeset
|
105 const Ascbyte *x_event_name (int event_type); |
1204 | 106 int check_if_pending_expose_event (struct device *d); |
428 | 107 int x_error_handler (Display *disp, XErrorEvent *event); |
108 void expect_x_error (Display *dpy); | |
109 int x_error_occurred_p (Display *dpy); | |
110 int signal_if_x_error (Display *dpy, int resumable_p); | |
111 int x_IO_error_handler (Display *disp); | |
112 | |
1346 | 113 widget_value *xmalloc_widget_value (void); |
114 | |
115 LWLIB_ID new_lwlib_id (void); | |
116 | |
117 void gcpro_popup_callbacks (LWLIB_ID id); | |
118 void ungcpro_popup_callbacks (LWLIB_ID id); | |
119 int popup_handled_p (LWLIB_ID id); | |
120 void free_popup_widget_value_tree (widget_value *wv); | |
121 void popup_selection_callback (Widget widget, LWLIB_ID ignored_id, | |
122 XtPointer client_data); | |
123 Extbyte *add_accel_and_to_external (Lisp_Object string); | |
124 int button_item_to_widget_value (Lisp_Object gui_object_instance, | |
125 Lisp_Object gui_item, widget_value *wv, | |
126 int allow_text_field_p, int no_keys_p, | |
127 int menu_entry_p, int accel_p); | |
128 widget_value * gui_items_to_widget_values (Lisp_Object gui_object_instance, | |
129 Lisp_Object items, int accel_p); | |
130 Extbyte *menu_separator_style_and_to_external (const Ibyte *s); | |
131 Lisp_Object widget_value_unwind (Lisp_Object closure); | |
132 | |
428 | 133 void x_output_string (struct window *w, struct display_line *dl, |
867 | 134 Ichar_dynarr *buf, int xpos, int xoffset, |
428 | 135 int start_pixpos, int width, face_index findex, |
136 int cursor, int cursor_start, int cursor_width, | |
137 int cursor_height); | |
138 void x_generate_shadow_pixels (struct frame *f, | |
139 unsigned long *top_shadow, | |
140 unsigned long *bottom_shadow, | |
141 unsigned long background, | |
142 unsigned long core_background); | |
143 | |
144 int x_initialize_frame_menubar (struct frame *f); | |
145 void x_init_modifier_mapping (struct device *d); | |
5016
2ade80e8c640
enable more warnings and fix them
Ben Wing <ben@xemacs.org>
parents:
4969
diff
changeset
|
146 void x_has_keysym (KeySym, Lisp_Object, int); |
428 | 147 |
593 | 148 int x_frame_window_state (struct frame *f); |
149 | |
428 | 150 #define X_ERROR_OCCURRED(dpy, body) \ |
151 (expect_x_error (dpy), body, x_error_occurred_p (dpy)) | |
152 | |
153 #define HANDLING_X_ERROR(dpy, body) \ | |
154 (expect_x_error (dpy), body, signal_if_x_error (dpy, 0)) | |
155 | |
156 void Initialize_Locale (void); | |
157 | |
158 #ifdef HAVE_XIM | |
159 | |
160 /* X Input Method `methods' */ | |
161 void XIM_init_device (struct device *d); | |
162 void XIM_init_frame (struct frame *f); | |
163 void XIM_SetSpotLocation (struct frame *f, int x, int y); | |
164 void XIM_SetGeometry (struct frame *f); | |
165 void XIM_focus_event (struct frame *f, int in_p); | |
166 | |
167 #ifdef XIM_XLIB | |
168 /* XtTypeConverter */ | |
169 Boolean EmacsXtCvtStringToXIMStyles ( | |
170 Display *dpy, | |
171 XrmValuePtr args, | |
172 Cardinal *num_args, | |
173 XrmValuePtr from, | |
174 XrmValuePtr to_in_out, | |
175 XtPointer *converter_data); | |
176 | |
177 /* XtDestructor */ | |
178 void EmacsFreeXIMStyles ( | |
179 XtAppContext app, | |
180 XrmValuePtr to, | |
181 XtPointer converter_data, | |
182 XrmValuePtr args, | |
183 Cardinal *num_args); | |
184 | |
185 #ifdef DEBUG_XEMACS | |
186 void describe_Window (Window win); | |
187 void describe_XFontSet (XFontSet font_set); | |
188 void describe_XIM (XIM im); | |
189 void describe_XIMStyle (XIMStyle style); | |
190 void describe_XIMStyles (XIMStyles *styles); | |
191 void describe_XIC (XIC ic); | |
192 void describe_event_mask (unsigned long mask); | |
4528
726060ee587c
First draft of g++ 4.3 warning removal patch. Builds. *Needs ChangeLogs.*
Stephen J. Turnbull <stephen@xemacs.org>
parents:
4522
diff
changeset
|
193 void describe_XRectangle (const char *name, XRectangle *rect); |
428 | 194 void describe_Status (Status status); |
195 #endif /* DEBUG_XEMACS */ | |
196 #endif /* XIM_XLIB */ | |
197 #endif /* HAVE_XIM */ | |
198 | |
771 | 199 extern Lisp_Object Qxintl; |
200 | |
428 | 201 extern int in_resource_setting; |
202 extern int in_specifier_change_function; | |
203 | |
204 extern Lisp_Object Vx_initial_argv_list; /* #### ugh! */ | |
205 | |
206 #endif /* HAVE_X_WINDOWS */ | |
440 | 207 |
208 #endif /* INCLUDED_console_x_h_ */ |