Initial git import
[sxemacs] / src / ExternalClientP.h
1 /* External client widget internal header file.
2    Copyright (C) 1993, 1994 Sun Microsystems, Inc.
3
4 This file is part of SXEmacs
5
6 SXEmacs is free software: you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation, either version 3 of the License, or
9 (at your option) any later version.
10
11 SXEmacs is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program.  If not, see <http://www.gnu.org/licenses/>. */
18
19
20 /* Synched up with: Not in FSF. */
21
22 /* Written by Ben Wing. */
23
24 #ifndef INCLUDED_ExternalClientP_h_
25 #define INCLUDED_ExternalClientP_h_
26
27 #include "ExternalClient.h"
28 #ifdef EXTW_USES_MOTIF
29 #include <Xm/PrimitiveP.h>
30 #endif
31
32 typedef struct {                /* new fields for ExternalClient class */
33         int dummy;
34 } ExternalClientClassPart;
35
36 typedef struct _ExternalClientClassRec {        /* full class record declaration */
37         CoreClassPart core_class;
38 #ifdef EXTW_USES_MOTIF
39         XmPrimitiveClassPart primitive_class;
40 #endif
41         ExternalClientClassPart externalClient_class;
42 } ExternalClientClassRec;
43
44 typedef struct {                /* new fields for ExternalClient widget */
45         Bool dead_shell;        /* is the shell dead? */
46         unsigned long shell_timeout;    /* how long to wait for shell's response */
47         int shell_ready;        /* is the shell ready? */
48         Window event_window;
49         long event_mask;
50         Bool has_focus;
51         char *emacs_procid;
52         XtCallbackList shell_ready_callback;
53         String shell_name;
54         Bool use_tooltalk;
55 } ExternalClientPart;
56
57 typedef struct _ExternalClientRec {     /* full instance record */
58         CorePart core;
59 #ifdef EXTW_USES_MOTIF
60         XmPrimitivePart primitive;
61 #endif
62         ExternalClientPart externalClient;
63 } ExternalClientRec;
64
65 extern ExternalClientClassRec externalClientClassRec;   /* class pointer */
66
67 #endif                          /* INCLUDED_ExternalClientP_h_ */