Organize "src/state.h"

This commit is contained in:
Alex Kotov 2021-11-21 01:22:36 +05:00
parent c2eba3486d
commit 6686a58ae1
Signed by: kotovalexarian
GPG Key ID: 553C0EBBEB5D5F08
1 changed files with 24 additions and 9 deletions

View File

@ -4,25 +4,40 @@
#include <stdbool.h> #include <stdbool.h>
#include <X11/Xutil.h> #include <X11/Xutil.h>
typedef struct BasicGeometry { /*****************
int x, y, w, h; * Pointer types *
} *BasicGeometry; *****************/
typedef struct ClientGeometry { typedef struct BasicGeometry *BasicGeometry;
typedef struct ClientGeometry *ClientGeometry;
typedef struct ClientSizeHints *ClientSizeHints;
typedef struct ClientState *ClientState;
/**************
* Structures *
**************/
struct BasicGeometry { int x, y, w, h; };
struct ClientGeometry {
struct BasicGeometry basic; struct BasicGeometry basic;
int bw; int bw;
} *ClientGeometry; };
typedef struct ClientSizeHints { struct ClientSizeHints {
float mina, maxa; float mina, maxa;
int basew, baseh, incw, inch, maxw, maxh, minw, minh; int basew, baseh, incw, inch, maxw, maxh, minw, minh;
} *ClientSizeHints; };
typedef struct ClientState { struct ClientState {
char name[256]; char name[256];
struct ClientGeometry geometry; struct ClientGeometry geometry;
bool is_fixed, is_floating, is_urgent, never_focus, is_fullscreen; bool is_fixed, is_floating, is_urgent, never_focus, is_fullscreen;
} *ClientState; };
/*************
* Functions *
*************/
void basic_geometry_init(BasicGeometry basic_geometry); void basic_geometry_init(BasicGeometry basic_geometry);
void client_geometry_init(ClientGeometry client_geometry); void client_geometry_init(ClientGeometry client_geometry);