#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)
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
DrawEditModeWindow();
- fade_mask = (playfield_area_changed ? REDRAW_ALL : REDRAW_FIELD);
-
- if (CheckIfRedrawGlobalBorderIsNeeded())
- fade_mask = REDRAW_ALL;
+ DrawMaskedBorder(fade_mask);
FadeIn(fade_mask);
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);
game_status = GAME_MODE_MAIN;
- DrawAndFadeInMainMenu(playfield_area_changed ? REDRAW_ALL : REDRAW_FIELD);
+ DrawMainMenu();
}
else
{