1 
2 #ifndef _XDO_CMD_H_
3 #define _XDO_CMD_H_
4 
5 #define _GNU_SOURCE 1
6 #ifndef __USE_BSD
7 #define __USE_BSD /* for strdup on linux/glibc */
8 #endif /* __USE_BSD */
9 
10 #include <getopt.h>
11 #include <stdlib.h>
12 #include <stdio.h>
13 #include <string.h>
14 #include "xdo.h"
15 #include "xdotool.h"
16 
17 #ifdef __cplusplus
18 extern "C" {
19 #endif
20 
21 #define HELP_SEE_WINDOW_STACK \
22   "If no window is given, %1 is used. See WINDOW STACK in xdotool(1)\n"
23 #define HELP_CHAINING_ENDS \
24   "This command consumes all arguments after it, so you cannot chain\n" \
25   " additional commands after it.\n"
26 
27 extern void consume_args(context_t *context, int argc);
28 extern void window_list(context_t *context, const char *window_arg,
29                         Window **windowlist_ret, int *nwindows_ret,
30                         const int add_to_list);
31 
32 extern void window_save(context_t *context, Window window);
33 extern int is_command(char *cmd);
34 
35 extern int window_is_valid(context_t *context, const char *window_arg);
36 extern int window_get_arg(context_t *context, int min_arg, int window_arg_pos,
37                           const char **window_arg);
38 
39 extern void xdotool_debug(context_t *context, const char *format, ...);
40 extern void xdotool_output(context_t *context, const char *format, ...);
41 
42 #ifdef __cplusplus
43 } /* extern "C" */
44 #endif
45 
46 #endif /* _XDO_CMD_H_ */
47