From 61a56a48c47ec45d8200f934b7a6293d1bacb9f8 Mon Sep 17 00:00:00 2001 From: vurtun Date: Tue, 24 Nov 2015 17:47:52 +0100 Subject: [PATCH] added additional more clean demo version --- demo/opengl/opengl.c | 2 +- example/demo/Makefile | 25 ++ example/demo/demo.c | 672 ++++++++++++++++++++++++++++++++ example/demo/icon/checked.png | Bin 0 -> 1813 bytes example/demo/icon/cloud.png | Bin 0 -> 7509 bytes example/demo/icon/directory.png | Bin 0 -> 2927 bytes example/demo/icon/pen.png | Bin 0 -> 5949 bytes example/demo/icon/rocket.png | Bin 0 -> 1121 bytes example/demo/icon/settings.png | Bin 0 -> 566 bytes example/demo/icon/tools.png | Bin 0 -> 24483 bytes example/demo/icon/unchecked.png | Bin 0 -> 1064 bytes example/demo/image.txt | 25 ++ example/demo/images/image1.jpg | Bin 0 -> 25760 bytes example/demo/images/image2.jpg | Bin 0 -> 29282 bytes example/demo/images/image3.jpg | Bin 0 -> 23830 bytes example/demo/images/image4.jpg | Bin 0 -> 27131 bytes example/demo/images/image5.jpg | Bin 0 -> 25116 bytes example/demo/images/image6.jpg | Bin 0 -> 25590 bytes example/demo/images/image7.jpg | Bin 0 -> 24607 bytes example/demo/images/image8.jpg | Bin 0 -> 4035 bytes example/demo/images/image9.jpg | Bin 0 -> 3439 bytes zahnrad.h | 2 +- 22 files changed, 724 insertions(+), 2 deletions(-) create mode 100644 example/demo/Makefile create mode 100644 example/demo/demo.c create mode 100644 example/demo/icon/checked.png create mode 100644 example/demo/icon/cloud.png create mode 100644 example/demo/icon/directory.png create mode 100644 example/demo/icon/pen.png create mode 100644 example/demo/icon/rocket.png create mode 100644 example/demo/icon/settings.png create mode 100644 example/demo/icon/tools.png create mode 100644 example/demo/icon/unchecked.png create mode 100644 example/demo/image.txt create mode 100644 example/demo/images/image1.jpg create mode 100644 example/demo/images/image2.jpg create mode 100644 example/demo/images/image3.jpg create mode 100644 example/demo/images/image4.jpg create mode 100644 example/demo/images/image5.jpg create mode 100644 example/demo/images/image6.jpg create mode 100644 example/demo/images/image7.jpg create mode 100644 example/demo/images/image8.jpg create mode 100644 example/demo/images/image9.jpg diff --git a/demo/opengl/opengl.c b/demo/opengl/opengl.c index 9f7aeb1..8da0cea 100644 --- a/demo/opengl/opengl.c +++ b/demo/opengl/opengl.c @@ -216,7 +216,7 @@ font_bake_and_upload(struct device *dev, struct zr_font *font, glyphes = (struct zr_font_glyph*)calloc(sizeof(struct zr_font_glyph), (size_t)glyph_count); tmp = calloc(1, tmp_size); - /* pack all glyphes and return needed image width height and memory size*/ + /* pack all glyphes and return needed image width, height and memory size*/ custom.w = 2; custom.h = 2; if (!zr_font_bake_pack(&img_size, &img_width,&img_height,&custom,tmp,tmp_size,&config, 1)) die("[Font]: failed to load font!\n"); diff --git a/example/demo/Makefile b/example/demo/Makefile new file mode 100644 index 0000000..1bec73b --- /dev/null +++ b/example/demo/Makefile @@ -0,0 +1,25 @@ +BIN = demo + +# Compiler +CC = clang +DCC = gcc + +CFLAGS = -std=c99 + +SRC = demo.c ../../zahnrad.c +OBJ = $(SRC:.c=.o) + +# Modes +.PHONY: clang +clang: CC = clang +clang: $(BIN) + +.PHONY: gcc +gcc: CC = gcc +gcc: $(BIN) + +$(BIN): + @mkdir -p bin + rm -f bin/$(BIN) $(OBJS) + $(CC) $(SRC) $(CFLAGS) -o bin/$(BIN) -lSDL2 -lGL -lm -lGLU -lGLEW + diff --git a/example/demo/demo.c b/example/demo/demo.c new file mode 100644 index 0000000..21578bf --- /dev/null +++ b/example/demo/demo.c @@ -0,0 +1,672 @@ +/* + Copyright (c) 2015 Micha Mettke + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ +#include +#include +#include +#include +#include +#include +#include + +#ifdef _WIN32 + #include +#endif + +#include +#include +#include +#include +#include + +#define NANOVG_GLES2_IMPLEMENTATION +#include "../../demo/nanovg/dep/nanovg.h" +#include "../../demo/nanovg/dep/nanovg_gl.h" +#include "../../demo/nanovg/dep/nanovg_gl_utils.h" +#include "../../demo/nanovg/dep/nanovg.c" + +/* macros */ +#define MAX_BUFFER 64 +#define MAX_MEMORY (16 * 1024) +#define WINDOW_WIDTH 1200 +#define WINDOW_HEIGHT 800 +#define DTIME 40 +#define MIN(a,b) ((a) < (b) ? (a) : (b)) +#define MAX(a,b) ((a) < (b) ? (b) : (a)) +#define CLAMP(i,v,x) (MAX(MIN(v,x), i)) +#define LEN(a) (sizeof(a)/sizeof(a)[0]) +#define UNUSED(a) ((void)(a)) + +#include "../../zahnrad.h" + +struct icons { + struct zr_image unchecked; + struct zr_image checked; + struct zr_image rocket; + struct zr_image cloud; + struct zr_image pen; + struct zr_image settings; + struct zr_image tools; + struct zr_image directory; + struct zr_image images[9]; +}; + +struct gui { + void *memory; + struct zr_window button_demo; + struct zr_window basic_demo; + struct zr_window grid_demo; + struct zr_input input; + struct zr_command_queue queue; + struct zr_style config; + struct zr_user_font font; +}; + +static void +die(const char *fmt, ...) +{ + va_list ap; + va_start(ap, fmt); + vfprintf(stderr, fmt, ap); + va_end(ap); + fputs("\n", stderr); + exit(EXIT_FAILURE); +} + +static void +ui_header(struct zr_context *layout, struct zr_style *config, const char *title) +{ + zr_style_reset_font_height(config); + zr_style_push_font_height(config, 18); + zr_layout_row_dynamic(layout, 20, 1); + zr_label(layout, "Push buttons", ZR_TEXT_LEFT); +} + +static void +ui_widget(struct zr_context *layout, struct zr_style *config, float height, float font_height) +{ + static const float ratio[] = {0.15f, 0.85f}; + zr_style_reset_font_height(config); + zr_style_push_font_height(config, font_height); + zr_layout_row(layout, ZR_DYNAMIC, height, 2, ratio); + zr_spacing(layout, 1); +} + +static void +ui_widget_centered(struct zr_context *layout, struct zr_style *config, float height, float font_height) +{ + static const float ratio[] = {0.15f, 0.50f, 0.35f}; + zr_style_reset_font_height(config); + zr_style_push_font_height(config, font_height); + zr_layout_row(layout, ZR_DYNAMIC, height, 3, ratio); + zr_spacing(layout, 1); +} + +static void +button_demo(struct zr_window *window, struct zr_style *config, struct icons *img) +{ + struct zr_context layout; + static int option = 1; + static int toggle0 = 1; + static int toggle1 = 0; + static int toggle2 = 1; + static const float ratio[] = {0.15f, 0.85f}; + + zr_begin(&layout, window, "Button Demo"); + + /*------------------------------------------------ + * MENU + *------------------------------------------------*/ + zr_menubar_begin(&layout); + zr_layout_row_static(&layout, 40, 40, 4); + zr_button_image(&layout, img->settings, ZR_BUTTON_DEFAULT); + zr_button_image(&layout, img->tools, ZR_BUTTON_DEFAULT); + zr_button_image(&layout, img->cloud, ZR_BUTTON_DEFAULT); + zr_button_image(&layout, img->pen, ZR_BUTTON_DEFAULT); + zr_menubar_end(&layout); + + /*------------------------------------------------ + * BUTTON + *------------------------------------------------*/ + ui_header(&layout, config, "Push buttons"); + ui_widget(&layout, config, 35, 22); + if (zr_button_text(&layout, "Push me", ZR_BUTTON_DEFAULT)) + fprintf(stdout, "pushed!\n"); + + ui_widget(&layout, config, 35, 22); + if (zr_button_text_image(&layout, img->rocket, + "Styled", ZR_TEXT_CENTERED, ZR_BUTTON_DEFAULT)) + fprintf(stdout, "rocket!\n"); + + /*------------------------------------------------ + * REPEATER + *------------------------------------------------*/ + ui_header(&layout, config, "Repeater"); + ui_widget(&layout, config, 35, 22); + if (zr_button_text(&layout, "Press me", ZR_BUTTON_REPEATER)) + fprintf(stdout, "pressed!\n"); + + /*------------------------------------------------ + * TOGGLE + *------------------------------------------------*/ + ui_header(&layout, config, "Toggle buttons"); + ui_widget(&layout, config, 35, 22); + if (zr_button_text_image(&layout, (toggle0) ? img->checked: img->unchecked, + "Toggle", ZR_TEXT_LEFT, ZR_BUTTON_DEFAULT)) toggle0 = !toggle0; + + ui_widget(&layout, config, 35, 22); + if (zr_button_text_image(&layout, (toggle1) ? img->checked: img->unchecked, + "Toggle", ZR_TEXT_LEFT, ZR_BUTTON_DEFAULT)) toggle1 = !toggle1; + + ui_widget(&layout, config, 35, 22); + if (zr_button_text_image(&layout, (toggle2) ? img->checked: img->unchecked, + "Toggle", ZR_TEXT_LEFT, ZR_BUTTON_DEFAULT)) toggle2 = !toggle2; + + /*------------------------------------------------ + * RADIO + *------------------------------------------------*/ + ui_header(&layout, config, "Radio buttons"); + ui_widget(&layout, config, 35, 22); + if (zr_button_text_symbol(&layout, (option == 0)?ZR_SYMBOL_CIRCLE_FILLED:ZR_SYMBOL_CIRCLE, + "Select", ZR_TEXT_LEFT, ZR_BUTTON_DEFAULT)) option = 0; + ui_widget(&layout, config, 35, 22); + if (zr_button_text_symbol(&layout, (option == 1)?ZR_SYMBOL_CIRCLE_FILLED:ZR_SYMBOL_CIRCLE, + "Select", ZR_TEXT_LEFT, ZR_BUTTON_DEFAULT)) option = 1; + ui_widget(&layout, config, 35, 22); + if (zr_button_text_symbol(&layout, (option == 2)?ZR_SYMBOL_CIRCLE_FILLED:ZR_SYMBOL_CIRCLE, + "Select", ZR_TEXT_LEFT, ZR_BUTTON_DEFAULT)) option = 2; + + config->font.height = 18; + zr_end(&layout, window); +} + +static void +basic_demo(struct zr_window *window, struct zr_style *config, struct icons *img) +{ + static int image_active; + static int check0 = 1; + static int check1 = 0; + static int slider = 30; + static size_t prog = 80; + static int combo_active = 0; + static int selected_item = 0; + static int selected_image = 2; + static const float ratio[] = {0.15f, 0.85f}; + static const char *items[] = {"Item 0","item 1","item 2"}; + + int i = 0; + struct zr_context layout; + struct zr_context combo; + config->font.height = 20; + zr_begin(&layout, window, "Basic Demo"); + + /*------------------------------------------------ + * POPUP BUTTON + *------------------------------------------------*/ + ui_header(&layout, config, "Popup & Scrollbar & Images"); + ui_widget(&layout, config, 35, 22); + if (zr_button_text_image(&layout, img->directory, + "Images", ZR_TEXT_CENTERED, ZR_BUTTON_DEFAULT)) + image_active = !image_active; + + /*------------------------------------------------ + * SELECTED IMAGE + *------------------------------------------------*/ + ui_header(&layout, config, "Selected Image"); + ui_widget_centered(&layout, config, 100, 22); + zr_image(&layout, img->images[selected_image]); + + /*------------------------------------------------ + * IMAGE POPUP + *------------------------------------------------*/ + if (image_active) { + struct zr_context popup; + static struct zr_vec2 scrollbar; + zr_popup_begin(&layout, &popup, ZR_POPUP_STATIC, 0, 0, + zr_rect(265, 0, 300, 200), scrollbar); + zr_layout_row_static(&popup, 82, 82, 3); + for (i = 0; i < 9; ++i) { + if (zr_button_image(&popup, img->images[i], ZR_BUTTON_DEFAULT)) { + selected_image = i; + image_active = 0; + zr_popup_close(&popup); + } + } + zr_popup_end(&layout, &popup, &scrollbar); + } + + /*------------------------------------------------ + * COMBOBOX + *------------------------------------------------*/ + ui_header(&layout, config, "Combo box"); + ui_widget(&layout, config, 40, 22); + zr_combo_begin(&layout, &combo, items[selected_item], &combo_active); + zr_layout_row_dynamic(&combo, 35, 1); + for (i = 0; i < 3; ++i) + if (zr_combo_item(&combo, items[i], ZR_TEXT_LEFT)) + selected_item = i; + zr_combo_end(&layout, &combo, &combo_active); + + /*------------------------------------------------ + * CHECKBOX + *------------------------------------------------*/ + ui_header(&layout, config, "Checkbox"); + ui_widget(&layout, config, 30, 22); + zr_checkbox(&layout, "Flag 1", &check0); + ui_widget(&layout, config, 30, 22); + zr_checkbox(&layout, "Flag 2", &check1); + + /*------------------------------------------------ + * PROGRESSBAR + *------------------------------------------------*/ + ui_header(&layout, config, "Progressbar"); + ui_widget(&layout, config, 35, 22); + zr_progress(&layout, &prog, 100, zr_true); + + /*------------------------------------------------ + * SLIDER + *------------------------------------------------*/ + ui_header(&layout, config, "Slider"); + ui_widget(&layout, config, 35, 22); + zr_slider_int(&layout, 0, &slider, 100, 10); + zr_end(&layout, window); +} + +static void +grid_demo(struct zr_window *window, struct zr_style *config) +{ + static char text[3][64]; + static size_t text_len[3]; + static int text_active[3]; + static size_t text_cursor[3]; + static const char *items[] = {"Item 0","item 1","item 2"}; + static int selected_item = 0; + static int combo_active = 0; + static int check = 1; + + int i; + struct zr_context layout; + struct zr_context combo; + + config->font.height = 20; + zr_begin(&layout, window, "Grid Demo"); + + config->font.height = 18; + zr_layout_row_dynamic(&layout, 30, 2); + zr_label(&layout, "Floating point:", ZR_TEXT_RIGHT); + zr_edit(&layout, text[0], &text_len[0], 64, &text_active[0], &text_cursor[0], ZR_INPUT_FLOAT); + zr_label(&layout, "Hexadeximal:", ZR_TEXT_RIGHT); + zr_edit(&layout, text[1], &text_len[1], 64, &text_active[1], &text_cursor[1], ZR_INPUT_HEX); + zr_label(&layout, "Binary:", ZR_TEXT_RIGHT); + zr_edit(&layout, text[2], &text_len[2], 64, &text_active[2], &text_cursor[2], ZR_INPUT_BIN); + zr_label(&layout, "Checkbox:", ZR_TEXT_RIGHT); + zr_checkbox(&layout, "Check me", &check); + zr_label(&layout, "Combobox:", ZR_TEXT_RIGHT); + zr_combo_begin(&layout, &combo, items[selected_item], &combo_active); + zr_layout_row_dynamic(&combo, 30, 1); + for (i = 0; i < 3; ++i) + if (zr_combo_item(&combo, items[i], ZR_TEXT_LEFT)) + selected_item = i; + zr_combo_end(&layout, &combo, &combo_active); + zr_end(&layout, window); +} + +/* ================================================================= + * + * APP + * + * =================================================================*/ +static zr_size +font_get_width(zr_handle handle, float height, const char *text, zr_size len) +{ + zr_size width; + float bounds[4]; + NVGcontext *ctx = (NVGcontext*)handle.ptr; + nvgFontSize(ctx, (float)height); + nvgTextBounds(ctx, 0, 0, text, &text[len], bounds); + width = (zr_size)(bounds[2] - bounds[0]); + return width; +} + +static void +draw(NVGcontext *nvg, struct zr_command_queue *queue, int width, int height) +{ + const struct zr_command *cmd; + glPushAttrib(GL_ENABLE_BIT|GL_COLOR_BUFFER_BIT); + glEnable(GL_BLEND); + glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); + glDisable(GL_CULL_FACE); + glDisable(GL_DEPTH_TEST); + glEnable(GL_SCISSOR_TEST); + glEnable(GL_TEXTURE_2D); + + nvgBeginFrame(nvg, width, height, ((float)width/(float)height)); + zr_foreach_command(cmd, queue) { + switch (cmd->type) { + case ZR_COMMAND_NOP: break; + case ZR_COMMAND_SCISSOR: { + const struct zr_command_scissor *s = zr_command(scissor, cmd); + nvgScissor(nvg, s->x, s->y, s->w, s->h); + } break; + case ZR_COMMAND_LINE: { + const struct zr_command_line *l = zr_command(line, cmd); + nvgBeginPath(nvg); + nvgMoveTo(nvg, l->begin.x, l->begin.y); + nvgLineTo(nvg, l->end.x, l->end.y); + nvgFillColor(nvg, nvgRGBA(l->color.r, l->color.g, l->color.b, l->color.a)); + nvgFill(nvg); + } break; + case ZR_COMMAND_CURVE: { + const struct zr_command_curve *q = zr_command(curve, cmd); + nvgBeginPath(nvg); + nvgMoveTo(nvg, q->begin.x, q->begin.y); + nvgBezierTo(nvg, q->ctrl[0].x, q->ctrl[0].y, q->ctrl[1].x, + q->ctrl[1].y, q->end.x, q->end.y); + nvgStrokeColor(nvg, nvgRGBA(q->color.r, q->color.g, q->color.b, q->color.a)); + nvgStrokeWidth(nvg, 3); + nvgStroke(nvg); + } break; + case ZR_COMMAND_RECT: { + const struct zr_command_rect *r = zr_command(rect, cmd); + nvgBeginPath(nvg); + nvgRoundedRect(nvg, r->x, r->y, r->w, r->h, r->rounding); + nvgFillColor(nvg, nvgRGBA(r->color.r, r->color.g, r->color.b, r->color.a)); + nvgFill(nvg); + } break; + case ZR_COMMAND_CIRCLE: { + const struct zr_command_circle *c = zr_command(circle, cmd); + nvgBeginPath(nvg); + nvgCircle(nvg, c->x + (c->w/2.0f), c->y + c->w/2.0f, c->w/2.0f); + nvgFillColor(nvg, nvgRGBA(c->color.r, c->color.g, c->color.b, c->color.a)); + nvgFill(nvg); + } break; + case ZR_COMMAND_TRIANGLE: { + const struct zr_command_triangle *t = zr_command(triangle, cmd); + nvgBeginPath(nvg); + nvgMoveTo(nvg, t->a.x, t->a.y); + nvgLineTo(nvg, t->b.x, t->b.y); + nvgLineTo(nvg, t->c.x, t->c.y); + nvgLineTo(nvg, t->a.x, t->a.y); + nvgFillColor(nvg, nvgRGBA(t->color.r, t->color.g, t->color.b, t->color.a)); + nvgFill(nvg); + } break; + case ZR_COMMAND_TEXT: { + const struct zr_command_text *t = zr_command(text, cmd); + const float font_height = t->height; + nvgBeginPath(nvg); + nvgRoundedRect(nvg, t->x, t->y, t->w, t->h, 0); + nvgFillColor(nvg, nvgRGBA(t->background.r, t->background.g, + t->background.b, t->background.a)); + nvgFill(nvg); + + nvgBeginPath(nvg); + nvgFillColor(nvg, nvgRGBA(t->foreground.r, t->foreground.g, + t->foreground.b, t->foreground.a)); + nvgFontSize(nvg, (float)t->height); + nvgTextAlign(nvg, NVG_ALIGN_MIDDLE); + nvgText(nvg, t->x, t->y + t->h * 0.5f, t->string, &t->string[t->length]); + nvgFill(nvg); + } break; + case ZR_COMMAND_IMAGE: { + const struct zr_command_image *i = zr_command(image, cmd); + NVGpaint imgpaint; + imgpaint = nvgImagePattern(nvg, i->x, i->y, i->w, i->h, 0, i->img.handle.id, 1.0f); + nvgBeginPath(nvg); + nvgRoundedRect(nvg, i->x, i->y, i->w, i->h, 0); + nvgFillPaint(nvg, imgpaint); + nvgFill(nvg); + } break; + default: break; + } + } + zr_command_queue_clear(queue); + + nvgResetScissor(nvg); + nvgEndFrame(nvg); + glPopAttrib(); +} + +static void +key(struct zr_input *in, SDL_Event *evt, int down) +{ + const Uint8* state = SDL_GetKeyboardState(NULL); + SDL_Keycode sym = evt->key.keysym.sym; + if (sym == SDLK_RSHIFT || sym == SDLK_LSHIFT) + zr_input_key(in, ZR_KEY_SHIFT, down); + else if (sym == SDLK_DELETE) + zr_input_key(in, ZR_KEY_DEL, down); + else if (sym == SDLK_RETURN) + zr_input_key(in, ZR_KEY_ENTER, down); + else if (sym == SDLK_BACKSPACE) + zr_input_key(in, ZR_KEY_BACKSPACE, down); + else if (sym == SDLK_LEFT) + zr_input_key(in, ZR_KEY_LEFT, down); + else if (sym == SDLK_RIGHT) + zr_input_key(in, ZR_KEY_RIGHT, down); + else if (sym == SDLK_c) + zr_input_key(in, ZR_KEY_COPY, down && state[SDL_SCANCODE_LCTRL]); + else if (sym == SDLK_v) + zr_input_key(in, ZR_KEY_PASTE, down && state[SDL_SCANCODE_LCTRL]); + else if (sym == SDLK_x) + zr_input_key(in, ZR_KEY_CUT, down && state[SDL_SCANCODE_LCTRL]); +} + +static void +motion(struct zr_input *in, SDL_Event *evt) +{ + const int x = evt->motion.x; + const int y = evt->motion.y; + zr_input_motion(in, x, y); +} + +static void +btn(struct zr_input *in, SDL_Event *evt, int down) +{ + const int x = evt->button.x; + const int y = evt->button.y; + if (evt->button.button == SDL_BUTTON_LEFT) + zr_input_button(in, ZR_BUTTON_LEFT, x, y, down); + else if (evt->button.button == SDL_BUTTON_RIGHT) + zr_input_button(in, ZR_BUTTON_RIGHT, x, y, down); + else if (evt->button.button == SDL_BUTTON_MIDDLE) + zr_input_button(in, ZR_BUTTON_MIDDLE, x, y, down); +} + +static void +text(struct zr_input *in, SDL_Event *evt) +{ + zr_glyph glyph; + memcpy(glyph, evt->text.text, ZR_UTF_SIZE); + zr_input_glyph(in, glyph); +} + +static void +resize(SDL_Event *evt) +{ +} + +int +main(int argc, char *argv[]) +{ + /* Platform */ + int x, y, width, height; + const char *font_path; + zr_size font_height; + SDL_SysWMinfo info; + SDL_Window *win; + SDL_GLContext glContext; + NVGcontext *vg = NULL; + int running = zr_true; + unsigned int started; + unsigned int dt; + int i = 0; + + /* images */ + struct icons icons; + int unchecked; + int checked; + int rocket; + int cloud; + int pen; + int settings; + int tools; + int directory; + int images[9]; + + /* GUI */ + struct gui gui; + if (argc < 2) { + fprintf(stdout,"Missing TTF Font file argument: demo \n"); + exit(EXIT_FAILURE); + } + font_path = argv[1]; + font_height = 12; + + /* SDL */ + SDL_Init(SDL_INIT_VIDEO|SDL_INIT_TIMER|SDL_INIT_EVENTS); + SDL_GL_SetAttribute(SDL_GL_DOUBLEBUFFER, 1); + win = SDL_CreateWindow("Demo", + SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED, + WINDOW_WIDTH, WINDOW_HEIGHT, SDL_WINDOW_OPENGL|SDL_WINDOW_SHOWN); + glContext = SDL_GL_CreateContext(win); + SDL_GetWindowSize(win, &width, &height); + SDL_GetWindowPosition(win, &x, &y); + SDL_VERSION(&info.version); + assert(SDL_GetWindowWMInfo(win, &info)); + + /* OpenGL */ + glewExperimental = 1; + if (glewInit() != GLEW_OK) + die("[GLEW] failed setup\n"); + glViewport(0, 0, WINDOW_WIDTH, WINDOW_HEIGHT); + + /* nanovg */ + vg = nvgCreateGLES2(NVG_ANTIALIAS); + if (!vg) die("[NVG]: failed to init\n"); + nvgCreateFont(vg, "fixed", font_path); + nvgFontFace(vg, "fixed"); + nvgFontSize(vg, font_height); + nvgTextAlign(vg, NVG_ALIGN_LEFT|NVG_ALIGN_MIDDLE); + + /* images */ + unchecked = nvgCreateImage(vg, "../icon/unchecked.png", 0); + checked = nvgCreateImage(vg, "../icon/checked.png", 0); + rocket = nvgCreateImage(vg, "../icon/rocket.png", 0); + cloud = nvgCreateImage(vg, "../icon/cloud.png", 0); + pen = nvgCreateImage(vg, "../icon/pen.png", 0); + settings = nvgCreateImage(vg, "../icon/settings.png", 0); + tools = nvgCreateImage(vg, "../icon/tools.png", 0); + directory = nvgCreateImage(vg, "../icon/directory.png", 0); + for (i = 0; i < 9; ++i) { + char buffer[64]; + sprintf(buffer, "../images/image%d.jpg", (i+1)); + images[i] = nvgCreateImage(vg, buffer, 0); + } + + /* icons */ + icons.unchecked = zr_image_id(unchecked); + icons.checked = zr_image_id(checked); + icons.rocket = zr_image_id(rocket); + icons.cloud = zr_image_id(cloud); + icons.pen = zr_image_id(pen); + icons.settings = zr_image_id(settings); + icons.tools = zr_image_id(tools); + icons.directory = zr_image_id(directory); + for (i = 0; i < 9; ++i) + icons.images[i] = zr_image_id(images[i]); + + /* GUI */ + memset(&gui, 0, sizeof gui); + gui.memory = malloc(MAX_MEMORY); + zr_command_queue_init_fixed(&gui.queue, gui.memory, MAX_MEMORY); + + gui.font.userdata.ptr = vg; + nvgTextMetrics(vg, NULL, NULL, &gui.font.height); + gui.font.width = font_get_width; + gui.font.height = 20; + zr_style_default(&gui.config, ZR_DEFAULT_ALL, &gui.font); + gui.config.rounding[ZR_ROUNDING_BUTTON] = 3; + + zr_window_init(&gui.button_demo, zr_rect(50, 50, 250, 600), + ZR_WINDOW_BORDER|ZR_WINDOW_MOVEABLE|ZR_WINDOW_BORDER_HEADER, + &gui.queue, &gui.config, &gui.input); + zr_window_init(&gui.basic_demo, zr_rect(320, 50, 275, 600), + ZR_WINDOW_BORDER|ZR_WINDOW_MOVEABLE|ZR_WINDOW_BORDER_HEADER, + &gui.queue, &gui.config, &gui.input); + zr_window_init(&gui.grid_demo, zr_rect(600, 350, 275, 250), + ZR_WINDOW_BORDER|ZR_WINDOW_MOVEABLE|ZR_WINDOW_BORDER_HEADER|ZR_WINDOW_NO_SCROLLBAR, + &gui.queue, &gui.config, &gui.input); + + + while (running) { + /* Input */ + SDL_Event evt; + started = SDL_GetTicks(); + zr_input_begin(&gui.input); + while (SDL_PollEvent(&evt)) { + if (evt.type == SDL_WINDOWEVENT && + evt.window.event == SDL_WINDOWEVENT_RESIZED) + glViewport(0, 0, evt.window.data1, evt.window.data2); + else if (evt.type == SDL_QUIT) goto cleanup; + else if (evt.type == SDL_KEYUP) key(&gui.input, &evt, zr_false); + else if (evt.type == SDL_KEYDOWN) key(&gui.input, &evt, zr_true); + else if (evt.type == SDL_MOUSEBUTTONDOWN) btn(&gui.input, &evt, zr_true); + else if (evt.type == SDL_MOUSEBUTTONUP) btn(&gui.input, &evt, zr_false); + else if (evt.type == SDL_MOUSEMOTION) motion(&gui.input, &evt); + else if (evt.type == SDL_TEXTINPUT) text(&gui.input, &evt); + else if (evt.type == SDL_MOUSEWHEEL) zr_input_scroll(&gui.input, evt.wheel.y); + } + zr_input_end(&gui.input); + + /* GUI */ + button_demo(&gui.button_demo, &gui.config, &icons); + basic_demo(&gui.basic_demo, &gui.config, &icons); + grid_demo(&gui.grid_demo, &gui.config); + + /* Draw */ + glClearColor(0.1f, 0.1f, 0.1f, 1.0f); + glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT); + SDL_GetWindowSize(win, &width, &height); + draw(vg, &gui.queue, width, height); + SDL_GL_SwapWindow(win); + + /* Timing */ + dt = SDL_GetTicks() - started; + if (dt < DTIME) + SDL_Delay(DTIME - dt); + } + +cleanup: + /* Cleanup */ + nvgDeleteImage(vg, unchecked); + nvgDeleteImage(vg, checked); + nvgDeleteImage(vg, rocket); + nvgDeleteImage(vg, cloud); + nvgDeleteImage(vg, pen); + nvgDeleteImage(vg, settings); + nvgDeleteImage(vg, tools); + nvgDeleteImage(vg, directory); + + free(gui.memory); + nvgDeleteGLES2(vg); + SDL_GL_DeleteContext(glContext); + SDL_DestroyWindow(win); + SDL_Quit(); + return 0; +} diff --git a/example/demo/icon/checked.png b/example/demo/icon/checked.png new file mode 100644 index 0000000000000000000000000000000000000000..e4e05b29fb20e2e32363896950ca4cfea31f8542 GIT binary patch literal 1813 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 literal 0 HcmV?d00001 diff --git a/example/demo/icon/pen.png b/example/demo/icon/pen.png new file mode 100644 index 0000000000000000000000000000000000000000..10c851c120a04bccb59284c56fb5f9ee63a64c8c GIT binary patch literal 5949 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 f@cMrjjL|;VS-kN)MtPUEC7M2r+ literal 0 HcmV?d00001 diff --git a/example/demo/icon/rocket.png b/example/demo/icon/rocket.png new file mode 100644 index 0000000000000000000000000000000000000000..ea8e187c9f0e50de6dcd87fe823cd2761a510c83 GIT binary patch literal 1121 zcmV-n1fKheP)WFU8GbZ8()Nlj2>E@cM*00YHIL_t(|+U=dolG-p3 zMJ2-zYT*qZ=#3Zp!NAO7pfW`PW6OH>J-tdQmBiz7`XN~u?+B%sVvN_vZ$bzs&pojb zF~+ZyzlQ(=#yrob%jNPf$G?RDhO-+10RAyT2>#6N)`I>V2p|X@0RWEx>fjMT82ay+ zK%@(w3Lp#~0mQ-60)X$FV<%7+dsQ|*6j{rOF zkyZE%fudPY1pqz*e2RIVPgZ}n-vb~5yop>VZm9s2egpu1-@!(Z5d7!G~$%H(#1HWuPR0 zubo{RETy!Co*86=_t^f>X4Al3wY?U;a%0KhjGTieqF{PgJcR;u0Pyp|A4&k= z=Z8Pi5Xfg3f8b|-&@~N`{WtJC=bXFAWfrBsOz9t@0s#MKN3rDLQx7D)tj{I@@W+OK zNC4oE4?lSZu>2Y|CHTn|fb6#cKS==K+kwAZ0N~q#ze@n%+k>Ax1QIsjZ>|7jzfJg? z1OR?^@Q2RuRTTjEHnV<{0Km5opCM2j{@V&b_G`d@DFEp2WP56fdc#e6VPfB06W&wUy0bcDf#2Bx@*IfnN0N;PG6DSP7 zXbZ49BwB(`1rUc{tO8ifev9x+4}pNE1pr^J1z0Kn3h=1_;_wlGKmY_t?DISg6cykv z@JjttPJn0lQ~@CY_Q0kJ7!%+f{7;~fz=!}T@R7iX06BVmiPxJFjhBHtGn*skBMQ*N zH(C*m1o-qCxKx-(FpvPHj&~!$00NZW+zBCg2E##zz>FDuqZ;%nK-H&%N9GACNdW;` ze3EC61P|~mG4n+ihe97vU(Fx1ib?|f^#<@7Ab{Pl1&sR1UZknG3Lp@GuqZ&wlRdqi zFTB6Xl~q73_|Ly?+0zy0iOE9N=K!ZVOrBe1d`}RRR}$ye&|5-a30XjZl+q6T0R$*D zsRO@l_?Ans+#oj07+rl^hx9VAb{3NLod`h57u^R~mgNk5(HWp7gdTPj5#XNj>$+aK n#bPr6nI|Ryzy$;VvfcOwuWa|S&Zx)400000NkvXXu0mjffwSmT literal 0 HcmV?d00001 diff --git a/example/demo/icon/settings.png b/example/demo/icon/settings.png new file mode 100644 index 0000000000000000000000000000000000000000..9c9e8f0a4e853acd8a5e6f370bbc8ecfd994af8e GIT binary patch literal 566 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 oPhZ3!@B4q_lDE4H!+#K5uy^@npa^Gy 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 Z>xIt?4!_lDDyqtkd+Gd=Z8Nj&{{YK~!&(3U literal 0 HcmV?d00001 diff --git a/example/demo/images/image2.jpg b/example/demo/images/image2.jpg new file mode 100644 index 0000000000000000000000000000000000000000..884f9f2bbe847fe0d7523cd085170484a72efb43 GIT binary patch literal 29282 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 literal 0 HcmV?d00001 diff --git a/example/demo/images/image3.jpg b/example/demo/images/image3.jpg new file mode 100644 index 0000000000000000000000000000000000000000..f6e103912dbf56537371d36bb069e7067f6b4a93 GIT binary patch literal 23830 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 AVE_OC literal 0 HcmV?d00001 diff --git a/example/demo/images/image4.jpg b/example/demo/images/image4.jpg new file mode 100644 index 0000000000000000000000000000000000000000..d952d16119f9906330dd31f4fdeadeb4eccba27c GIT binary patch literal 27131 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 literal 0 HcmV?d00001 diff --git a/example/demo/images/image6.jpg b/example/demo/images/image6.jpg new file mode 100644 index 0000000000000000000000000000000000000000..623b4cb91d1951c56b97d3df8659373c73ca6ba4 GIT binary patch literal 25590 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 F{|EKqH$wmb literal 0 HcmV?d00001 diff --git a/example/demo/images/image9.jpg b/example/demo/images/image9.jpg new file mode 100644 index 0000000000000000000000000000000000000000..d443fb0cbf4e0ffa7a190f54472a53774718d7c1 GIT binary patch literal 3439 zcma)%c{J2-|HeOK#>_Bd9s8c0>`P(z5=BT;wkect5{6+2mH46$*>-P8I=nGhdP zGc%GM`TwvZS=rdxSdl0c7Z(a8Bq%5-B>EpfFc^#l$->9Z&L_al!7cC~<9{7aJ^>u? ze>#If8~_6c2+RRG=>U>X`$52<)0+PV$^d4BfgteH|A0ZK{98YL$N&Z)j8Jv}1ZIGM z8KDp`9Q=<9;`qlnqsqy60R_G8Oyq)vCyJ|a^HjDPO6=s0Sh_?QSxNH3U8OFa2A=`~ z|2Oe;mlJ$O6>FT*ox%v1|cH(&ZJE~ZZ%n88#J!k&!d*A+^`~AnB6{CNA z50kE6b{-`S?CJim_w3#slFYOvPi_TAd$KDw`{!M78|%SkT^-jGkj za#68T+qsl)Qb`|LXoT?Zyw$h z3VEiL8d$Dn^W&{UbSqv?9HmNeA8SJ(3n+FeGy6y)+=fSBAtf6dp6 z^B#iuJV)8uS$<7$gMYA37kx`1Djmg0jw=+EDpc-wt#;>U%S8t<^Y|?ey9fqVb~G$j z3&H!lVw+TSYWq)s5n}?6AXq9f-)_O7dBEZOD^Tz8lHKz3^xENfUw#615=5OfE_trl z4gsV?@*>53DVZZW$@+Wn($(LDKflj=oApu0{v9ctYaso`< zX0@qW8i%ing0SP|H___x+XShXe&$c->01}+<}sG0bW?eYhbh+#W~*ZoMdRe8gbXa3 zAOECY?qzf6<%{fm2I_`pwTfm7yi(JV%gL`!hLL;%(1w|}&|FqNe^zG~1OQFk=(eWw6E6 zqqvo@Bn{0D4H6O?T`v5~rTc2xg9)SU_`uJ#RUuFPn?mL~6DK`<_p>eSbrVJ2Fe(E<<-fR9-){@mjRG$$gKXV?<3a{}Dt} z2;I15ldl|}5}F_|$g=AgqQ*5)aS;>36(=s;{H>;}BMIOx-PL@c=v{TQ>}O!#_{Lzy zIu}gRV?1mhi>Q7-G0}2uf^ye_@XIIi_9PS)&dAIbVqvGH?9wu~MOm)Ic;pKfIh6UZ z?~90x*i3xpTqwKYL;d#UQ9F)F0%tgyrWZrA?|)*{o-`f$gFCz0g}zl=kgqqOkDAxg zVEv=Hvib*O-?cjz!=}pY-?F>mxHE~}Hs?)d{Hu;dPgI4k#(?;Ft02$hIp?8v)z{pE zx20PJ5v=$-P?JiHh9^r7w_4R08s!?qb9e?wO;hKEtJTbDST${?QCX9kU?!jbElTFB zPo?AYm;zm78c+1&dFJjZmUF%mZ+Qc7hgticV+9UNpH2WXq~CR_hOv3O}-5iUxb z2IrCX;LE>N!9kg` zt9~)-yM-`S@4eddvS3ZPPi}d(ws6lmIkoxm3WV;y~B%k{5stdlzcxAesA?RolpVG?4 zYgQ+PZV7m_LvF{r;gsdUXf??fQP$t{?&iuj3GfQ042~&PXUC1Go1Hb``1wMo%J7yc zKV$ZjD90JT?p|d+)C{((*4K}A9Z5+~8`!ZE7Bs_4-kFypFI2XNxQ%yBdq9+;+GhP7 z^aE|k~ zL3a1{rXY2?F@mIRhJ{tr*gHH+ZDkcD3M#5|YBzRarq+_UYs7-)UD?t!^oOggn;SGi zX9_Eu$1$QKchERs=)I?3BHAlq)pJ(yAQ-Em_tAw#u_5MF7!$C_s#SKMR`g{#2Bbgk z{L?XsI&bMQ+KErH9*E#m9RFovb&G%n2i)s6n(OmVz3idoE+#G&axm(}9MDFvlVSZxYd8hyF6@d8&#GM_EZiK-y( zeeVvcN~_u)*&$~IXuOFQlRDotY-#BA(+w}S+O{VcFU1fM+=+2bNP5;1-=#$O%ugK% zFxF%+feZ;OJrpj3m+^~^3R|vZ_XmWJ7(4oHdl3}n1aAn;-3icSHIEEj=%mC}v{dxg zZiQuj5qW#;KjbI#O~jnCcVzUU0Q;hUyd?dNfa9|Y{v1p%CdF~@cecU)1r_Rk&Eg5* zu1uHj?QIoX*<0(jAUsFuEF{Wye3bM&+{xRL=JxmT`tma4U3jT?vLDAETp24-Z)wyi zJYAM%uQkIj#1Rz;jcXp`*&6kx zHo}%{j>6&VwZNoWGV&rpPjK{LpAunjtReIifQZn~2Af9SDE?VT4W0ro(I!@AIj=Yt zv3_Mv@!S}(abgvDMk_rpt6Y9=A5kyqRmNEfQf;&f0PnfR>k>wXZc?YOp(|z-!pKyeq;jyz7jm|K{riq^UHSYhdT~^eazk02MRT{V~Ew zz6qanjNB~j~%D53$=ZjBssmA zkWf|1?^f`bg1k3$osP9Na3%em=hGYDrrf eSjnba-kQVWQoFotTUHiY<<%nGhhB<0nf^ayye1L= literal 0 HcmV?d00001 diff --git a/zahnrad.h b/zahnrad.h index edd361b..c52c4ac 100644 --- a/zahnrad.h +++ b/zahnrad.h @@ -2462,7 +2462,7 @@ void zr_layout_row(struct zr_context*, enum zr_layout_format, float height, - window ratio/pixel width array for each widget */ /* -------------------------------------------------------------- - * USER + * USER DEFINED * --------------------------------------------------------------*/ void zr_layout_row_space_begin(struct zr_context*, enum zr_layout_format, float height, zr_size widget_count);