|
|
452870 |
#ifndef APP_H
|
|
|
452870 |
#define APP_H
|
|
|
452870 |
|
|
|
452870 |
|
|
|
452870 |
#include "common.h"
|
|
|
452870 |
#include "graph.h"
|
|
|
452870 |
#include "input.h"
|
|
|
452870 |
#include "keyboard.h"
|
|
|
452870 |
|
|
|
452870 |
|
|
|
452870 |
struct App {
|
|
|
452870 |
// keep these filds at the begining for easyest static initialization
|
|
|
452870 |
Keyboard keyboard;
|
|
|
452870 |
Input input;
|
|
|
452870 |
Graph graph;
|
|
|
452870 |
|
|
|
452870 |
// these fields will be set while initialization
|
|
|
dbe1a1 |
Display *dpy;
|
|
|
dbe1a1 |
int screen;
|
|
|
dbe1a1 |
Window root;
|
|
|
dbe1a1 |
Window win;
|
|
|
8864eb |
Atom aWmDel;
|
|
|
96c481 |
int stopFd;
|
|
|
452870 |
|
|
|
452870 |
// dynamic fields
|
|
|
843e7a |
int run;
|
|
|
e3897e |
int sw, sh;
|
|
|
dbe1a1 |
int x, y, w, h;
|
|
|
dbe1a1 |
int irx, iry, irw, irh;
|
|
|
e3897e |
int xron, xrev, xrerr;
|
|
|
452870 |
};
|
|
|
452870 |
|
|
|
452870 |
|
|
|
452870 |
int appInit(App *app);
|
|
|
452870 |
void appDeinit(App *app);
|
|
|
452870 |
int appRun(App *app);
|
|
|
843e7a |
void appStop(App *app, int err);
|
|
|
e3897e |
void appUpdateScreenSize(App *app, int sw, int sh);
|
|
|
843e7a |
void appMove(App *app, int x, int y, int w, int h);
|
|
|
452870 |
void appInvalidateRect(App *app, int x, int y, int w, int h);
|
|
|
452870 |
|
|
|
452870 |
|
|
|
452870 |
#endif
|