Use C++ linker
[oweals/cde.git] / cde / programs / dtwm / WmWrkspace.h
1 /*
2  * CDE - Common Desktop Environment
3  *
4  * Copyright (c) 1993-2012, The Open Group. All rights reserved.
5  *
6  * These libraries and programs are free software; you can
7  * redistribute them and/or modify them under the terms of the GNU
8  * Lesser General Public License as published by the Free Software
9  * Foundation; either version 2 of the License, or (at your option)
10  * any later version.
11  *
12  * These libraries and programs are distributed in the hope that
13  * they will be useful, but WITHOUT ANY WARRANTY; without even the
14  * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
15  * PURPOSE. See the GNU Lesser General Public License for more
16  * details.
17  *
18  * You should have received a copy of the GNU Lesser General Public
19  * License along with these librararies and programs; if not, write
20  * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth
21  * Floor, Boston, MA 02110-1301 USA
22  */
23 /* $XConsortium: WmWrkspace.h /main/4 1995/11/01 11:56:28 rswiston $ */
24 #ifdef WSM
25 /* 
26  * (c) Copyright 1987,1988,1989,1990,1992,1993,1994 HEWLETT-PACKARD COMPANY 
27  * (c) Copyright 1993, 1994 International Business Machines Corp.
28  * (c) Copyright 1993, 1994 Sun Microsystems, Inc.
29  * (c) Copyright 1993, 1994 Novell, Inc.
30  * ALL RIGHTS RESERVED 
31  */ 
32 #ifdef REV_INFO
33 #ifndef lint
34 static char rcsid[] = ""
35 #endif
36 #endif
37
38 /********    Public Function Declarations    ********/
39
40 extern void ChangeToWorkspace( 
41                         WmWorkspaceData *pNewWS) ;
42 extern Boolean DuplicateWorkspaceName (
43                         WmScreenData *pSD, 
44                         unsigned char *name, 
45                         int num);
46 extern void UpdateWorkspacePresenceProperty( 
47                         ClientData *pCD) ;
48 #ifdef HP_VUE
49 extern void UpdateWorkspaceInfoProperty( 
50                         WmScreenData *pSD) ;
51 #endif /* HP_VUE */
52 extern WmWorkspaceData * CreateWorkspace( 
53                         WmScreenData *pSD,
54                         unsigned char *name) ;
55 extern void DeleteWorkspace( 
56                         WmWorkspaceData *pWS) ;
57 extern Boolean GetClientWorkspaceInfo( 
58                         ClientData *pCD,
59                         long manageFlags) ;
60 extern Boolean WorkspaceIsInCommand( 
61                         Display *dpy,
62                         ClientData *pCD,
63                         WorkspaceID **ppIDs,
64                         unsigned int *pNumIDs) ;
65 extern Boolean ConvertNamesToIDs( 
66                         WmScreenData *pSD,
67                         unsigned char *pchIn,
68                         WorkspaceID **ppAtoms,
69                         unsigned int *pNumAtoms) ;
70 extern void CheckForPutInAllRequest( 
71                         ClientData *pCD,
72                         Atom *pIDs,
73                         unsigned int numIDs) ;
74 extern Boolean FindWsNameInCommand( 
75                         int argc,
76                         char *argv[],
77                         unsigned char **ppch) ;
78 extern void PutClientIntoWorkspace( 
79                         WmWorkspaceData *pWS,
80                         ClientData *pCD) ;
81 extern void TakeClientOutOfWorkspace( 
82                         WmWorkspaceData *pWS,
83                         ClientData *pCD) ;
84 extern WmWorkspaceData * GetWorkspaceData( 
85                         WmScreenData *pSD,
86                         WorkspaceID wsID) ;
87 extern unsigned char * GenerateWorkspaceName( 
88                         WmScreenData *pSD,
89                         int wsnum) ;
90 extern Boolean InWindowList( 
91                         Window w,
92                         Window wl[],
93                         int num) ;
94 extern Boolean ClientInWorkspace( 
95                         WmWorkspaceData *pWS,
96                         ClientData *pCD) ;
97 extern WsClientData * GetWsClientData( 
98                         WmWorkspaceData *pWS,
99                         ClientData *pCD) ;
100 extern void SetClientWsIndex( 
101                         ClientData *pCD) ;
102 extern Boolean ProcessWorkspaceHints( 
103                         ClientData *pCD) ;
104 extern void ProcessWorkspaceHintList( 
105                         ClientData *pCD,
106                         WorkspaceID *pIDs,
107                         unsigned int numIDs) ;
108 extern void RemoveSingleClientFromWorkspaces( 
109                         ClientData *pCD,
110                         WorkspaceID *pIDs,
111                         unsigned int numIDs) ;
112 extern void RemoveSubtreeFromWorkspaces( 
113                         ClientData *pCD,
114                         WorkspaceID *pIDs,
115                         unsigned int numIDs) ;
116 #ifdef PANELIST
117 extern WorkspaceID * GetListOfOccupiedWorkspaces( 
118                         ClientData *pCD,
119                         int *numIDs) ;
120 #endif /* PANELIST */
121 extern void HonorAbsentMapBehavior(
122                         ClientData *pCD) ;
123 extern void RemoveClientFromWorkspaces( 
124                         ClientData *pCD,
125                         WorkspaceID *pIDs,
126                         unsigned int numIDs) ;
127 extern void AddSingleClientToWorkspaces( 
128                         ClientData *pCD,
129                         WorkspaceID *pIDs,
130                         unsigned int numIDs) ;
131 extern void AddSubtreeToWorkspaces( 
132                         ClientData *pCD,
133                         WorkspaceID *pIDs,
134                         unsigned int numIDs) ;
135 extern void AddClientToWorkspaces( 
136                         ClientData *pCD,
137                         WorkspaceID *pIDs,
138                         unsigned int numIDs) ;
139 extern void AddClientToWsList( 
140                         WmWorkspaceData *pWS,
141                         ClientData *pCD) ;
142 extern void RemoveClientFromWsList( 
143                         WmWorkspaceData *pWS,
144                         ClientData *pCD) ;
145 extern Boolean F_CreateWorkspace( 
146                         String args,
147                         ClientData *pCD,
148                         XEvent *event) ;
149 extern Boolean F_DeleteWorkspace( 
150                         String args,
151                         ClientData *pCD,
152                         XEvent *event) ;
153 extern Boolean F_GotoWorkspace( 
154                         String args,
155                         ClientData *pCD,
156                         XEvent *event) ;
157 extern Boolean F_AddToAllWorkspaces( 
158                         String args,
159                         ClientData *pCD,
160                         XEvent *event) ;
161 extern Boolean F_Remove( 
162                         String args,
163                         ClientData *pCD,
164                         XEvent *event) ;
165 extern int GetCurrentWorkspaceIndex( 
166                         WmScreenData *pSD) ;
167 extern void InsureIconForWorkspace( 
168                         WmWorkspaceData *pWS,
169                         ClientData *pCD) ;
170 extern Boolean GetLeaderPresence( 
171                         ClientData *pCD,
172                         WorkspaceID **ppIDs,
173                         unsigned int *pnumIDs) ;
174 extern Boolean GetMyOwnPresence( 
175                         ClientData *pCD,
176                         WorkspaceID **ppIDs,
177                         unsigned int *pnumIDs) ;
178 extern void ReserveIdListSpace( 
179                         int numIDs) ;
180 extern void SaveWorkspaceResources( 
181                         WmWorkspaceData *pWS,
182                         unsigned long flags) ;
183 extern void SaveResources( 
184                         WmScreenData *pSD) ;
185 extern void AddStringToResourceData( 
186                         char *string,
187                         char **pdata,
188                         int *plen) ;
189 #ifdef PANELIST
190 extern void SetCurrentWorkspaceButton(
191                         WmScreenData *pSD);
192 extern void SetFrontPanelTitle( 
193                         WmScreenData *pSD);
194 #endif /* PANELIST */
195
196 /********    End Public Function Declarations    ********/
197 #endif /* WSM */
198
199