#ifndef LAYOUT_DEFS_H
#define LAYOUT_DEFS_H
#include "app.h"
#define X0 1 // left top corner
#define Y0 1
#define S 0 // spacing
#define S2 5
#define W 50 // width
#define W2 50 // more width
#define W3 80 // more
#define W4 (W2+W+S) // and more
#define W5 (12*W+11*S-7*W2-7*S) // space bar width
#define H 40 // height
#define H2 (H*2+S) // double height
#define N (-S-1) // place key next to previos key
#define N2 (-S2-1)
#define FW (12*W+11*S) // full width
#if defined(NOBORDER) && !defined(NOTITLE)
#define HH 30 // header height
#define HEADER(fw) \
{ X0, Y0, fw-S-HH, HH, 0, 0, "::: coolkbd :::", "", KF_MOVE }, \
{ N, 0, HH, 0, 0, 0, "[X]", "", KF_CLOSE },
#ifdef LOCK_SIZE
#define FOOTER(fw)
#else
#define FOOTER(fw) \
{ X0, N2, fw, HH, 0, 0, "::: resize handle :::", "", KF_SIZE },
#endif
#define Y1 (Y0+HH+S2)
#elif defined(NOBORDER) && defined(NOTITLE)
#define HEADER(fw)
#ifdef LOCK_SIZE
#define FOOTER(fw)
#else
#define FOOTER(fw) \
{ X0, N2, fw, 0, 0, 0, "::: resize handle :::", "", KF_SIZE },
#endif
#define Y1 Y0
#elif defined(TOP_RESIZE) && !defined(LOCK_SIZE)
#define HH 30 // header height
#define HEADER(fw) \
{ X0, Y0, fw, HH, 0, 0, "::: resize handle :::", "", KF_SIZE },
#define FOOTER(fw)
#define Y1 (Y0+HH+S2)
#else
#define Y1 Y0
#define HEADER(fw)
#define FOOTER(fw)
#endif
#define Y2 (Y1+H+S) // row 2
#define Y3 (Y1+2*(H+S)) // row 3
#define Y4 (Y1+3*(H+S)) // row 4
#define Y5 (Y1+4*(H+S)) // row 5
#define Y6 (Y1+5*(H+S)) // row 6
#endif