Convert over to use GetOpt::Long and introduce -f and -h.
[fvwm.git] / fvwm / commands.h
blobc43ed01010a2ad135a7b77d7992c03a49ee2aba3
1 /* -*-c-*- */
3 #ifndef COMMANDS_H
4 #define COMMANDS_H
6 /* ---------------------------- included header files ---------------------- */
8 /* ---------------------------- global definitions ------------------------- */
10 /* ---------------------------- global macros ------------------------------ */
12 /* ---------------------------- type definitions --------------------------- */
14 enum
16 F_UNDEFINED = -1,
18 /* functions that need no window */
19 F_NOP = 0,
20 F_ADDFUNC,
21 F_ADDMENU,
22 F_ADDMENU2,
23 F_ALL,
24 F_ANY,
25 F_BEEP,
26 F_BREAK,
27 F_BUG_OPTS,
28 F_BUSY_CURSOR,
29 F_BUTTON_STATE,
30 F_BUTTON_STYLE,
31 F_CHANGE_MENUSTYLE,
32 F_CIRCULATE_DOWN,
33 F_CIRCULATE_UP,
34 F_CLICK,
35 F_CLOSE,
36 F_COLORMAP_FOCUS,
37 F_COND,
38 F_CONDCASE,
39 F_CONFIG_LIST,
40 F_COPY_MENU_STYLE,
41 F_CURRENT,
42 F_CURSOR_STYLE,
43 F_DESCHEDULE,
44 F_DESKTOP_NAME,
45 F_DESTROY_FUNCTION,
46 F_DESTROY_MENU,
47 F_DESTROY_MENUSTYLE,
48 F_DESTROY_STYLE,
49 F_DFLT_COLORS,
50 F_DFLT_COLORSET,
51 F_DFLT_FONT,
52 F_DFLT_ICON,
53 F_DFLT_LAYERS,
54 F_DIRECTION,
55 F_EDGE_COMMAND,
56 F_EDGE_LEAVE_COMMAND,
57 F_EDGE_RES,
58 F_EDGE_SCROLL,
59 F_EMULATE,
60 F_ESCAPE_FUNC,
61 F_EWMH_BASE_STRUTS,
62 F_EWMH_NUMBER_OF_DESKTOPS,
63 F_EXEC,
64 F_EXEC_SETUP,
65 F_FAKE_CLICK,
66 F_FAKE_KEYPRESS,
67 F_FOCUSSTYLE,
68 F_FUNCTION,
69 F_GLOBAL_OPTS,
70 F_GOTO_DESK,
71 F_GOTO_PAGE,
72 F_HICOLOR,
73 F_HICOLORSET,
74 F_HIDEGEOMWINDOW,
75 F_ICONFONT,
76 F_ICON_PATH,
77 F_IGNORE_MODIFIERS,
78 F_IMAGE_PATH,
79 F_KEEPRC,
80 F_KEY,
81 F_KILL_MODULE,
82 F_LAYER,
83 F_LOCALE_PATH,
84 F_MENUSTYLE,
85 F_MODULE,
86 F_MODULE_LISTEN_ONLY,
87 F_MODULE_PATH,
88 F_MODULE_SYNC,
89 F_MOUSE,
90 F_MOVECURSOR,
91 F_MOVE_TO_DESK,
92 F_NEXT,
93 F_NONE,
94 F_OPAQUE,
95 F_PICK,
96 F_PIXMAP_PATH,
97 F_POINTERKEY,
98 F_POINTERWINDOW,
99 F_POPUP,
100 F_PREV,
101 F_PRINTINFO,
102 F_QUIT,
103 F_QUIT_SESSION,
104 F_QUIT_SCREEN,
105 F_READ,
106 F_RECAPTURE,
107 F_RECAPTURE_WINDOW,
108 F_REFRESH,
109 F_REPEAT,
110 F_RESTART,
111 F_SAVE_SESSION,
112 F_SAVE_QUIT_SESSION,
113 F_SCANFORWINDOW,
114 F_SCHEDULE,
115 F_SCROLL,
116 F_SETDESK,
117 F_SETENV,
118 F_SET_ANIMATION,
119 F_SET_MASK,
120 F_SET_NOGRAB_MASK,
121 F_SET_SYNC_MASK,
122 F_SHADE_ANIMATE,
123 F_SILENT,
124 F_SNAP_ATT,
125 F_SNAP_GRID,
126 F_STAYSUP,
127 STROKE_ARG(F_STROKE)
128 STROKE_ARG(F_STROKE_FUNC)
129 F_STYLE,
130 F_TEARMENUOFF,
131 F_TEST_,
132 F_TESTRC,
133 F_THISWINDOW,
134 F_TITLE,
135 F_TITLESTYLE,
136 F_TOGGLE_PAGE,
137 F_UPDATE_STYLES,
138 F_WAIT,
139 F_WINDOWFONT,
140 F_WINDOWLIST,
141 F_XINERAMA,
142 F_XINERAMAPRIMARYSCREEN,
143 F_XINERAMASLS,
144 F_XINERAMASLSSCREENS,
145 F_XINERAMASLSSIZE,
146 F_XOR,
147 F_XSYNC,
148 F_XSYNCHRONIZE,
150 /* functions that need a window to operate on */
151 F_ADD_BUTTON_STYLE,
152 F_ADD_DECOR,
153 F_ADD_TITLE_STYLE,
154 F_ANIMATED_MOVE,
155 F_BORDERSTYLE,
156 F_CHANGE_DECOR,
157 F_COLOR_LIMIT,
158 F_DELETE,
159 F_DESTROY,
160 F_DESTROY_DECOR,
161 F_DESTROY_MOD,
162 F_DESTROY_WINDOW_STYLE,
163 F_ECHO,
164 F_ECHO_FUNC_DEFINITION,
165 F_FLIP_FOCUS,
166 F_FOCUS,
167 F_ICONIFY,
168 F_LOWER,
169 F_MAXIMIZE,
170 F_MOVE,
171 F_MOVE_THRESHOLD,
172 F_MOVE_TO_PAGE,
173 F_MOVE_TO_SCREEN,
174 F_PLACEAGAIN,
175 F_RAISE,
176 F_RAISELOWER,
177 F_RESIZE,
178 F_RESIZE_MAXIMIZE,
179 F_RESIZEMOVE,
180 F_RESIZEMOVE_MAXIMIZE,
181 F_RESTACKTRANSIENTS,
182 F_SEND_STRING,
183 F_STATE,
184 F_STICK,
185 F_STICKACROSSDESKS,
186 F_STICKACROSSPAGES,
187 F_UPDATE_DECOR,
188 F_WARP,
189 F_WINDOWID,
190 F_WINDOW_SHADE,
191 F_WINDOW_STYLE,
193 F_END_OF_LIST = 999,
195 /* Functions for use by modules only! */
196 F_SEND_WINDOW_LIST = 1000,
197 F_SEND_REPLY
200 /* ---------------------------- exported variables (globals) --------------- */
202 /* ---------------------------- interface functions ------------------------ */
204 #ifdef P
205 #undef P
206 #endif
207 #define P(n) void CMD_ ## n(F_CMD_ARGS)
208 /* This file contains all command prototypes. */
209 P(Plus);
210 P(AddButtonStyle);
211 P(AddTitleStyle);
212 #ifdef USEDECOR
213 P(AddToDecor);
214 #endif /* USEDECOR */
215 P(AddToFunc);
216 P(AddToMenu);
217 P(Alias);
218 P(All);
219 P(AnimatedMove);
220 P(Any);
221 P(Beep);
222 P(Break);
223 P(BorderStyle);
224 P(BugOpts);
225 P(BusyCursor);
226 P(ButtonState);
227 P(ButtonStyle);
228 #ifdef USEDECOR
229 P(ChangeDecor);
230 #endif /* USEDECOR */
231 P(ChangeMenuStyle);
232 P(CleanupColorsets);
233 P(ClickTime);
234 P(Close);
235 P(ColorLimit);
236 P(ColormapFocus);
237 P(Colorset);
238 P(CopyMenuStyle);
239 P(Current);
240 P(CursorMove);
241 P(CursorStyle);
242 P(DefaultColors);
243 P(DefaultColorset);
244 P(DefaultFont);
245 P(DefaultIcon);
246 P(DefaultLayers);
247 P(Delete);
248 P(Deschedule);
249 P(Desk);
250 P(DesktopName);
251 P(DesktopSize);
252 P(Destroy);
253 #ifdef USEDECOR
254 P(DestroyDecor);
255 #endif /* USEDECOR */
256 P(DestroyFunc);
257 P(DestroyMenu);
258 P(DestroyMenuStyle);
259 P(DestroyModuleConfig);
260 P(DestroyStyle);
261 P(DestroyWindowStyle);
262 P(Direction);
263 P(Echo);
264 P(EchoFuncDefinition);
265 P(EdgeCommand);
266 P(EdgeLeaveCommand);
267 P(EdgeResistance);
268 P(EdgeScroll);
269 P(EdgeThickness);
270 P(Emulate);
271 P(EscapeFunc);
272 P(EwmhBaseStruts);
273 P(EwmhNumberOfDesktops);
274 P(Exec);
275 P(ExecUseShell);
276 P(FakeClick);
277 P(FakeKeypress);
278 P(FlipFocus);
279 P(Focus);
280 P(FocusStyle);
281 P(Function);
282 P(GlobalOpts);
283 P(GnomeButton);
284 P(GnomeShowDesks);
285 P(GotoDesk);
286 P(GotoDeskAndPage);
287 P(GotoPage);
288 P(HideGeometryWindow);
289 P(HilightColor);
290 P(HilightColorset);
291 P(IconFont);
292 P(Iconify);
293 P(IconPath);
294 P(IgnoreModifiers);
295 P(ImagePath);
296 P(KeepRc);
297 P(Key);
298 P(KillModule);
299 P(Layer);
300 P(LocalePath);
301 P(Lower);
302 P(Maximize);
303 P(Menu);
304 P(MenuStyle);
305 P(Module);
306 P(ModuleListenOnly);
307 P(ModulePath);
308 P(ModuleSynchronous);
309 P(ModuleTimeout);
310 P(Mouse);
311 P(Move);
312 P(MoveThreshold);
313 P(MoveToDesk);
314 P(MoveToPage);
315 P(MoveToScreen);
316 P(Next);
317 P(None);
318 P(Nop);
319 P(NoWindow);
320 P(OpaqueMoveSize);
321 P(Pick);
322 P(PipeRead);
323 P(PixmapPath);
324 P(PlaceAgain);
325 P(PointerKey);
326 P(PointerWindow);
327 P(Popup);
328 P(Prev);
329 P(PrintInfo);
330 P(PropertyChange);
331 P(Quit);
332 P(QuitScreen);
333 P(QuitSession);
334 P(Raise);
335 P(RaiseLower);
336 P(Read);
337 P(ReadWriteColors);
338 P(Recapture);
339 P(RecaptureWindow);
340 P(Refresh);
341 P(RefreshWindow);
342 P(Repeat);
343 P(Resize);
344 P(ResizeMaximize);
345 P(ResizeMove);
346 P(ResizeMoveMaximize);
347 P(RestackTransients);
348 P(Restart);
349 P(SaveQuitSession);
350 P(SaveSession);
351 P(ScanForWindow);
352 P(Schedule);
353 P(Scroll);
354 P(Send_ConfigInfo);
355 P(Send_Reply);
356 P(Send_WindowList);
357 P(SendToModule);
358 P(set_mask);
359 P(set_nograb_mask);
360 P(set_sync_mask);
361 P(SetAnimation);
362 P(SetEnv);
363 P(Silent);
364 P(SnapAttraction);
365 P(SnapGrid);
366 P(State);
367 P(Stick);
368 P(StickAcrossDesks);
369 P(StickAcrossPages);
370 #ifdef HAVE_STROKE
371 P(Stroke);
372 P(StrokeFunc);
373 #endif /* HAVE_STROKE */
374 P(Style);
375 P(TearMenuOff);
376 P(Test);
377 P(TestRc);
378 P(ThisWindow);
379 P(Title);
380 P(TitleStyle);
381 P(Unalias);
382 P(UnsetEnv);
383 P(UpdateDecor);
384 P(UpdateStyles);
385 P(Wait);
386 P(WarpToWindow);
387 P(WindowFont);
388 P(WindowId);
389 P(WindowList);
390 P(WindowShade);
391 P(WindowShadeAnimate);
392 P(WindowStyle);
393 P(Xinerama);
394 P(XineramaPrimaryScreen);
395 P(XineramaSls);
396 P(XineramaSlsScreens);
397 P(XineramaSlsSize);
398 P(XorPixmap);
399 P(XorValue);
400 P(XSync);
401 P(XSynchronize);
402 #undef P
404 #endif /* COMMANDS_H */