@@ 252,7 252,7 @@ create(void)
void
save(Brush* b)
{
- FILE* f = fopen("output.chr", "wb");
+ FILE* f = fopen("export.chr", "wb");
if(!fwrite(buffer, sizeof(buffer), 1, f))
error("Save", "Invalid output file");
fclose(f);
@@ 267,7 267,7 @@ load(char* path)
if(f == NULL)
error("Load", "Invalid input file");
if(!fread(buffer, sizeof(buffer), 1, f))
- error("Load", "Invalid file size");
+ error("Load", "Invalid input size");
fclose(f);
redraw(pixels);
}
@@ 276,6 276,8 @@ void
render()
{
SDL_Surface* surface = SDL_GetWindowSurface(gWindow);
+ GUIDES = 0;
+ redraw(pixels);
SDL_RenderReadPixels(gRenderer, NULL, SDL_PIXELFORMAT_ARGB8888, surface->pixels, surface->pitch);
SDL_SaveBMP(surface, "render.bmp");
SDL_FreeSurface(surface);
@@ 300,32 302,32 @@ domouse(SDL_Event* event, Brush* b)
{
switch(event->type) {
case SDL_MOUSEBUTTONUP:
- if(event->button.button == SDL_BUTTON_LEFT)
+ if(event->button.button == SDL_BUTTON_LEFT) {
b->down = 0;
+ setpt(&b->prev, 0, 0);
+ }
if(event->button.button == SDL_BUTTON_RIGHT)
b->erase = 0;
- setpt(&b->prev, 0, 0);
break;
case SDL_MOUSEBUTTONDOWN:
- if(event->button.button == SDL_BUTTON_LEFT)
+ if(event->button.button == SDL_BUTTON_LEFT) {
b->down = 1;
+ setpt(&b->prev,
+ (event->motion.x - PAD) / ZOOM,
+ (event->motion.y - PAD) / ZOOM);
+ }
if(event->button.button == SDL_BUTTON_RIGHT)
b->erase = 1;
- setpt(&b->prev,
- (event->motion.x - PAD) / ZOOM,
- (event->motion.y - PAD) / ZOOM);
case SDL_MOUSEMOTION:
if(b->down) {
setpt(&b->pos,
(event->motion.x - PAD) / ZOOM,
(event->motion.y - PAD) / ZOOM);
- if(dispt(&b->pos, &b->prev) > ZOOM * 2) {
- if(b->mode == 0)
- line(&b->prev, &b->pos, b->erase ? 0 : b->color);
- else
- fill(b, b->mode, b->size, b->pos, b->erase ? 0 : b->color);
- setpt(&b->prev, b->pos.x, b->pos.y);
- }
+ if(b->mode == 0)
+ line(&b->prev, &b->pos, b->erase ? 0 : b->color);
+ else
+ fill(b, b->mode, b->size, b->pos, b->erase ? 0 : b->color);
+ setpt(&b->prev, b->pos.x, b->pos.y);
}
break;
}
@@ 411,7 413,6 @@ int
main(int argc, char** argv)
{
int ticknext = 0;
- Point a, b;
Brush brush;
brush.down = 0;
brush.color = 1;