4 * Copyright (c) Tuomo Valkonen 1999-2001.
5 * See the included file LICENSE for details.
8 #ifndef INCLUDED_CLIENT_H
9 #define INCLUDED_CLIENT_H
16 #include "clientwin.h"
20 #define CLIENT_DRAG 0x0001
21 #define CLIENT_TAGGED 0x0002
22 #define CLIENT_URGENT 0x0004
23 #define CLIENT_WILD 0x0008
25 #define CLIENT_HAS_FRAME(CLIENT) WTHING_HAS_PARENT(CLIENT, WFrame)
26 #define CLIENT_FRAME(CLIENT) WTHING_PARENT(CLIENT, WFrame)
34 int shortcut
; /* valid values: '0'-'9','A'-'z' */
36 WClient
*label_next
, *label_prev
;
38 WClient
*g_client_next
, *g_client_prev
;
42 extern WClient
*create_client(WScreen
*scr
);
43 extern void deinit_client(WClient
*client
);
45 extern void client_add_clientwin(WClient
*client
, WClientWin
*cwin
);
47 extern void hide_client(WClient
*client
);
48 extern void show_client(WClient
*client
);
49 extern void focus_client(WClient
*client
);
50 extern void close_client(WClient
*client
);
51 extern void close_client_main(WClient
*client
);
52 extern void kill_client(WClient
*client
);
54 extern void reparent_client(WClient
*client
, Window win
, int x
, int y
);
55 extern void fit_client_frame(WClient
*client
, WFrame
*frame
);
56 extern void reparent_fit_client_frame(WClient
*client
, WFrame
*frame
);
57 extern void reconf_client_frame(WClient
*client
, WFrame
*frame
);
58 extern void set_client_frame_id(WClient
*client
, int id
);
60 extern void client_make_label(WClient
*client
, int maxw
);
61 extern char* client_full_label(WClient
*client
);
62 extern void client_use_label(WClient
*client
);
63 extern void client_unuse_label(WClient
*client
);
65 extern void client_toggle_tagged(WClient
*client
);
66 extern void clear_tags();
68 extern bool goto_window(WWindow
*window
);
69 extern void goto_client(WClient
*client
);
70 extern void goto_previous();
71 extern bool goto_client_name(const char *cname
);
73 extern WClient
* lookup_client(const char *name
);
74 extern int complete_client(char *nam
, char ***cp_ret
, char **beg
);
76 #endif /* INCLUDED_CLIENT_H */