aboutsummaryrefslogtreecommitdiffstats
path: root/7_2/include/drawable.h
diff options
context:
space:
mode:
authorjustanothercatgirl <sotov@twistea.su>2024-12-06 15:08:31 +0300
committerjustanothercatgirl <sotov@twistea.su>2024-12-06 15:08:31 +0300
commita470c304199866aa1f3d39ff22ec30734f03d617 (patch)
treeb08858e91b39fc108f2ab9b83c03ef7f881711ba /7_2/include/drawable.h
parent24b8430fa7a9a81b88c5c172c99bbc9a520ff4ba (diff)
сделал 8 задание))))task8
Diffstat (limited to '7_2/include/drawable.h')
-rw-r--r--7_2/include/drawable.h55
1 files changed, 0 insertions, 55 deletions
diff --git a/7_2/include/drawable.h b/7_2/include/drawable.h
deleted file mode 100644
index 8986342..0000000
--- a/7_2/include/drawable.h
+++ /dev/null
@@ -1,55 +0,0 @@
-#ifndef JCG_DRAWABLE_H
-#define JCG_DRAWABLE_H
-
-#define FILL_CHR '#'
-#define SPACE_CHR ' '
-
-#include <X11/Xlib.h>
-#include <X11/Xutil.h>
-extern struct X11context {
- enum {CTX_NO, CTX_INIT, CTX_FAIL} init;
- Display *d;
- Window r, w;
- int s;
- GC gctx;
- XVisualInfo v;
- XImage *i;
- int* data;
-} X11;
-
-// что угодно, на чём можно ''нарисовать''
-// должно иметь размер, размер пикселей, данные
-// функция put записывает пиксель по координатам x, y на поле
-// функция show выводит данные на экран/куда угодно ещё
-struct drawable {
- long x, y, pix_s;
- void *data;
- void (*put)(struct drawable *self, long x, long y);
- void(*show)(const struct drawable *self);
-};
-
-
-// конструктор
-void drawable_init(struct drawable* self,
- void(*put_f)(struct drawable *, long, long),
- void(*show_f)(const struct drawable *),
- long width,
- long height,
- long pix_s);
-// деструктор
-void drawable_destroy(struct drawable *self);
-// конструктор для консольного поля
-struct drawable drawable_plaintxt(long width, long height);
-// конструктор для графического поля
-struct drawable drawable_X11(long width, long height);
-
-// put для консольного drawable
-void put_plaintxt(struct drawable *self, long x, long y);
-// show для консольного drawable
-void show_plaintxt(const struct drawable *self);
-// put для графического drawable
-void put_X11(struct drawable *self, long x, long y);
-// show для графического drawable
-void show_X11(const struct drawable *self);
-
-#endif // JCG_DRAWABLE_H