1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60
|
/* -*-c-*- */
/* Copyright (C) 2001 Dominik Vogt */
#ifndef FVWMRECT_H
#define FVWMRECT_H
/* ---------------------------- included header files ---------------------- */
/* ---------------------------- global definitions ------------------------- */
/* ---------------------------- global macros ------------------------------ */
/* ---------------------------- type definitions --------------------------- */
typedef struct
{
int x;
int y;
int width;
int height;
} rectangle;
typedef struct
{
int x;
int y;
} position;
typedef struct
{
int width;
int height;
} size_rect;
typedef struct
{
size_rect top_left;
size_rect bottom_right;
size_rect total_size;
} size_borders;
/* ---------------------------- exported variables (globals) --------------- */
/* ---------------------------- interface functions ------------------------ */
/* Returns 1 if the given rectangles intersect and 0 otherwise */
int fvwmrect_do_rectangles_intersect(rectangle *r, rectangle *s);
/* Subtracts the values in s2_ from the ones in s1_g and stores the result in
* diff_g. */
void fvwmrect_subtract_rectangles(
rectangle *rdiff, rectangle *r1, rectangle *r2);
/* Returns 1 is the rectangles are identical and 0 if not */
int fvwmrect_rectangles_equal(
rectangle *r1, rectangle *r2);
int fvwmrect_move_into_rectangle(
rectangle *move_rec, rectangle *target_rec);
int fvwmrect_intersect_xrectangles(
XRectangle *r1, XRectangle *r2);
#endif /* FVWMRECT_H */
|