X-Git-Url: https://git.artsoft.org/?p=rocksndiamonds.git;a=blobdiff_plain;f=src%2Feditor.c;h=504feba9855f18f5957ea3e2f92975ff3b5f902c;hp=e714de15eb1a634968cec358c17b4bfc6b24817b;hb=092cfc403b3bcf3a390e961f594f28056b5f6aec;hpb=93de8b8e26d71583efd800fafbfd24770dd9deec diff --git a/src/editor.c b/src/editor.c index e714de15..504feba9 100644 --- a/src/editor.c +++ b/src/editor.c @@ -8148,8 +8148,16 @@ static int getMaxEdFieldY(boolean has_scrollbar) return max_ed_fieldy; } -void InitZoomLevelSettings() +void InitZoomLevelSettings(int zoom_tilesize) { + if (zoom_tilesize == -1) + zoom_tilesize = setup.auto_setup.editor_zoom_tilesize; + + // limit zoom tilesize by upper and lower bound + zoom_tilesize = MIN(MAX(MICRO_TILESIZE, zoom_tilesize), TILESIZE); + + ed_tilesize = setup.auto_setup.editor_zoom_tilesize = zoom_tilesize; + MAX_ED_FIELDX = getMaxEdFieldX(FALSE); MAX_ED_FIELDY = getMaxEdFieldY(FALSE); } @@ -8170,7 +8178,7 @@ void DrawLevelEd() ClearField(); - InitZoomLevelSettings(); + InitZoomLevelSettings(-1); OpenDoor(DOOR_OPEN_1 | DOOR_OPEN_2 | DOOR_NO_DELAY); @@ -12881,7 +12889,7 @@ static void HandleControlButtons(struct GadgetInfo *gi) // limit zoom level by upper and lower bound ed_tilesize = MIN(MAX(MICRO_TILESIZE, ed_tilesize), TILESIZE); - InitZoomLevelSettings(); + InitZoomLevelSettings(ed_tilesize); if (edit_mode == ED_MODE_DRAWING) { @@ -12891,6 +12899,9 @@ static void HandleControlButtons(struct GadgetInfo *gi) PrintEditorGadgetInfoText(level_editor_gadget[id]); } + /* save current editor zoom tilesize */ + SaveSetup_AutoSetup(); + break; case GADGET_ID_CUSTOM_COPY_FROM: