X-Git-Url: https://git.artsoft.org/?p=rocksndiamonds.git;a=blobdiff_plain;f=src%2Feditor.c;h=828ebd7fd9987128d896279f0636d60d51720582;hp=6414dbd4b5619682cb9771fe62c231819d7d9597;hb=6f5b701331e07bdd3e02eeb61f66bfa14d5b530f;hpb=cc1d6b89872ea3d6ae3e53023653ab86dd76c2ea diff --git a/src/editor.c b/src/editor.c index 6414dbd4..828ebd7f 100644 --- a/src/editor.c +++ b/src/editor.c @@ -79,7 +79,7 @@ #define IMG_BORDER_2 IMG_EDITOR_ELEMENT_BORDER_INPUT #define ED_ELEMENT_BORDER (graphic_info[IMG_BORDER_1].border_size) #define ED_DRAWINGAREA_BORDER_SIZE (graphic_info[IMG_BORDER_2].border_size) -#define ED_DRAWINGAREA_TILE_SIZE (graphic_info[IMG_BORDER_2].tile_size) +#define ED_DRAWINGAREA_TILE_SIZE (editor.drawingarea.tile_size) /* values for checkbutton gadgets */ #define ED_CHECKBUTTON_XSIZE (graphic_info[IMG_EDITOR_CHECKBOX].width) @@ -7612,48 +7612,24 @@ void InitZoomLevelSettings() MAX_ED_FIELDY = getMaxEdFieldY(FALSE); } -static boolean playfield_area_changed = FALSE; - void DrawLevelEd() { int fade_mask = REDRAW_FIELD; - StopAnimation(); - CloseDoor(DOOR_CLOSE_ALL); -#if 1 /* needed if different viewport properties defined for editor */ ChangeViewportPropertiesIfNeeded(); -#endif - if (CheckIfRedrawGlobalBorderIsNeeded()) + if (CheckIfGlobalBorderHasChanged()) fade_mask = REDRAW_ALL; -#if 0 - printf("::: %d\n", (fade_mask == REDRAW_ALL ? 1 : 0)); -#endif - FadeOut(fade_mask); -#if 0 - /* needed after playing if editor playfield area has different size */ - ClearRectangle(drawto, REAL_SX, REAL_SY, FULL_SXSIZE, FULL_SYSIZE); -#endif - -#if 0 - /* needed if different viewport properties defined for editor */ - ChangeViewportPropertiesIfNeeded(); -#endif - -#if 1 ClearField(); -#endif InitZoomLevelSettings(); - playfield_area_changed = DrawingAreaChanged(); - OpenDoor(DOOR_OPEN_1 | DOOR_OPEN_2 | DOOR_NO_DELAY); #if DEBUG @@ -7712,10 +7688,7 @@ void DrawLevelEd() DrawEditModeWindow(); - fade_mask = (playfield_area_changed ? REDRAW_ALL : REDRAW_FIELD); - - if (CheckIfRedrawGlobalBorderIsNeeded()) - fade_mask = REDRAW_ALL; + DrawMaskedBorder(fade_mask); FadeIn(fade_mask); @@ -10948,7 +10921,7 @@ static void HandleDrawingAreas(struct GadgetInfo *gi) DrawFixedGraphicExt(drawto, gi->x + sx * TILEX, gi->y + sy * TILEY, - el2img(new_element), 0); + el2edimg(new_element), 0); if (id == GADGET_ID_CUSTOM_GRAPHIC) new_element = GFX_ELEMENT(new_element); @@ -12291,7 +12264,7 @@ void RequestExitLevelEditor(boolean ask_if_level_has_changed, game_status = GAME_MODE_MAIN; - DrawAndFadeInMainMenu(playfield_area_changed ? REDRAW_ALL : REDRAW_FIELD); + DrawMainMenu(); } else {