cvsimport
[fvwm.git] / fvwm / misc.h
blobf05f84bcf5b11a3d0d35558fe35004fc2b18fafd
1 /* -*-c-*- */
3 #ifndef MISC_H
4 #define MISC_H
6 /* ---------------------------- included header files ---------------------- */
8 /* ---------------------------- global definitions ------------------------- */
10 enum
12 GRAB_ALL = 0, /* sum of all grabs */
13 GRAB_STARTUP = 1, /* Startup busy cursor */
14 GRAB_NORMAL = 2, /* DeferExecution, Move, Resize, ... */
15 GRAB_MENU = 3, /* a menus.c grabing */
16 GRAB_BUSY = 4, /* BusyCursor stuff */
17 GRAB_BUSYMENU = 5, /* Allows menus.c to regrab the cursor */
18 GRAB_PASSIVE = 6, /* Override of passive grab, only prevents grab
19 * to be released too early */
20 GRAB_FREEZE_CURSOR = 7, /* Freeze the cursor shape if a window is
21 * pressed. */
22 GRAB_MAXVAL /* last GRAB macro + 1 */
25 /* ---------------------------- global macros ------------------------------ */
27 #ifdef ICON_DEBUG
28 #define ICON_DBG(X) fprintf X;
29 #else
30 #define ICON_DBG(X)
31 #endif
33 /* ---------------------------- type definitions --------------------------- */
35 /* message levels for fvwm_msg */
36 typedef enum
38 DBG = 0,
39 ECHO,
40 INFO,
41 WARN,
42 OLD,
43 ERR
44 } fvwm_msg_t;
46 typedef enum
48 ADDED_NONE = 0,
49 ADDED_MENU,
50 #ifdef USEDECOR
51 ADDED_DECOR,
52 #endif
53 ADDED_FUNCTION
54 } last_added_item_t;
56 /* ---------------------------- forward declarations ----------------------- */
58 /* ---------------------------- exported variables (globals) --------------- */
60 /* ---------------------------- interface functions ------------------------ */
62 Bool GrabEm(
63 int cursor, int grab_context);
64 Bool UngrabEm(
65 int ungrab_context);
66 int GetTwoArguments(
67 char *action, int *val1, int *val2, int *val1_unit, int *val2_unit);
68 void NewFontAndColor(
69 FlocaleFont *flf, Pixel color, Pixel backcolor);
70 void Keyboard_shortcuts(
71 XEvent *ev, FvwmWindow *fw, int *x_defect, int *y_defect,
72 int ReturnEvent);
73 Bool check_if_fvwm_window_exists(
74 FvwmWindow *fw);
75 int truncate_to_multiple(
76 int x, int m);
77 Bool IsRectangleOnThisPage(
78 const rectangle *rec, int desk);
79 FvwmWindow *get_pointer_fvwm_window(void);
80 Time get_server_time(void);
81 void fvwm_msg(fvwm_msg_t type, char *id, char *msg, ...)
82 __attribute__ ((format (printf, 3, 4)));
83 void fvwm_msg_report_app(void);
84 void fvwm_msg_report_app_and_workers(void);
85 void set_last_added_item(last_added_item_t type, void *item);
86 void print_g(char *text, rectangle *g);
88 #endif /* MISC_H */