X-Git-Url: https://git.artsoft.org/?p=rocksndiamonds.git;a=blobdiff_plain;f=src%2Feditor.c;h=fba668d1ccc2eded15fc8841fe96f0f184f92af9;hp=64192d85442df06acc93673ac38813d2452ab0de;hb=310781167f731177d6d46b15093dc32606eeac4e;hpb=8bc96bd91e1540a536099ee7fd16234b1c3d5c05 diff --git a/src/editor.c b/src/editor.c index 64192d85..fba668d1 100644 --- a/src/editor.c +++ b/src/editor.c @@ -3749,7 +3749,6 @@ static void AdjustElementListScrollbar(); static void RedrawDrawingElements(); static void DrawDrawingWindowExt(boolean); static void DrawDrawingWindow(); -static void DrawDrawingWindow_PlayfieldOnly(); static void DrawLevelInfoWindow(); static void DrawPropertiesWindow(); static void DrawPaletteWindow(); @@ -4423,13 +4422,13 @@ static int editor_el_mirror_magic[] = EL_MM_MIRROR_START, EL_MM_MIRROR_FIXED_START, - EL_MM_POLARISATOR_START, - EL_MM_POLARISATOR_CROSS_START, + EL_MM_POLARIZER_START, + EL_MM_POLARIZER_CROSS_START, - EL_MM_BEAMER_RED_START, - EL_MM_BEAMER_YELLOW_START, - EL_MM_BEAMER_GREEN_START, - EL_MM_BEAMER_BLUE_START, + EL_MM_TELEPORTER_RED_START, + EL_MM_TELEPORTER_YELLOW_START, + EL_MM_TELEPORTER_GREEN_START, + EL_MM_TELEPORTER_BLUE_START, EL_MM_PRISM, EL_MM_FUSE_ACTIVE, @@ -7564,10 +7563,13 @@ static void ResetUndoBuffer() level.changed = FALSE; } -static void DrawEditModeWindow() +static void DrawEditModeWindowExt(boolean remap_toolbox_gadgets) { - ModifyEditorElementList(); - RedrawDrawingElements(); + if (remap_toolbox_gadgets) + { + ModifyEditorElementList(); + RedrawDrawingElements(); + } if (edit_mode == ED_MODE_INFO) DrawLevelInfoWindow(); @@ -7576,7 +7578,17 @@ static void DrawEditModeWindow() else if (edit_mode == ED_MODE_PALETTE) DrawPaletteWindow(); else /* edit_mode == ED_MODE_DRAWING */ - DrawDrawingWindow(); + DrawDrawingWindowExt(remap_toolbox_gadgets); +} + +static void DrawEditModeWindow() +{ + DrawEditModeWindowExt(TRUE); +} + +static void DrawEditModeWindow_PlayfieldOnly() +{ + DrawEditModeWindowExt(FALSE); } static void ChangeEditModeWindow(int new_edit_mode) @@ -8307,7 +8319,9 @@ static int getMaxEdFieldY(boolean has_scrollbar) void InitZoomLevelSettings(int zoom_tilesize) { - if (zoom_tilesize == -1) + static int last_game_engine_type = GAME_ENGINE_TYPE_UNKNOWN; + + if (zoom_tilesize == -1 && level.game_engine_type != last_game_engine_type) { ed_tilesize = setup.auto_setup.editor_zoom_tilesize; ed_tilesize_default = DEFAULT_EDITOR_TILESIZE; @@ -8319,6 +8333,8 @@ void InitZoomLevelSettings(int zoom_tilesize) } } + last_game_engine_type = level.game_engine_type; + // limit zoom tilesize by upper and lower bound ed_tilesize = MIN(MAX(MICRO_TILESIZE, ed_tilesize), TILESIZE); @@ -8501,7 +8517,7 @@ void DrawLevelEd() UnmapAllGadgets(); - DrawDrawingWindow_PlayfieldOnly(); + DrawEditModeWindow_PlayfieldOnly(); DrawMaskedBorder(fade_mask); @@ -8848,11 +8864,6 @@ static void DrawDrawingWindow() DrawDrawingWindowExt(TRUE); } -static void DrawDrawingWindow_PlayfieldOnly() -{ - DrawDrawingWindowExt(FALSE); -} - static int getTabulatorBarWidth() { struct GadgetInfo *gd_gi1 = level_editor_gadget[GADGET_ID_PROPERTIES_INFO]; @@ -11190,10 +11201,10 @@ static void SetElementIntelliDraw(int x, int y, int new_element, EL_MM_WOODEN_GRID_FIXED_3 }, { - EL_MM_POLARISATOR_CROSS_1, - EL_MM_POLARISATOR_CROSS_4, - EL_MM_POLARISATOR_CROSS_3, - EL_MM_POLARISATOR_CROSS_2 + EL_MM_POLARIZER_CROSS_1, + EL_MM_POLARIZER_CROSS_4, + EL_MM_POLARIZER_CROSS_3, + EL_MM_POLARIZER_CROSS_2 }, { EL_MM_PACMAN_UP, @@ -11286,112 +11297,112 @@ static void SetElementIntelliDraw(int x, int y, int new_element, EL_MM_MIRROR_2 }, { - EL_MM_BEAMER_5, - EL_MM_BEAMER_4, - EL_MM_BEAMER_3, - EL_MM_BEAMER_2, - EL_MM_BEAMER_1, - EL_MM_BEAMER_16, - EL_MM_BEAMER_15, - EL_MM_BEAMER_14, - EL_MM_BEAMER_13, - EL_MM_BEAMER_12, - EL_MM_BEAMER_11, - EL_MM_BEAMER_10, - EL_MM_BEAMER_9, - EL_MM_BEAMER_8, - EL_MM_BEAMER_7, - EL_MM_BEAMER_6 + EL_MM_TELEPORTER_5, + EL_MM_TELEPORTER_4, + EL_MM_TELEPORTER_3, + EL_MM_TELEPORTER_2, + EL_MM_TELEPORTER_1, + EL_MM_TELEPORTER_16, + EL_MM_TELEPORTER_15, + EL_MM_TELEPORTER_14, + EL_MM_TELEPORTER_13, + EL_MM_TELEPORTER_12, + EL_MM_TELEPORTER_11, + EL_MM_TELEPORTER_10, + EL_MM_TELEPORTER_9, + EL_MM_TELEPORTER_8, + EL_MM_TELEPORTER_7, + EL_MM_TELEPORTER_6 }, { - EL_MM_BEAMER_RED_5, - EL_MM_BEAMER_RED_4, - EL_MM_BEAMER_RED_3, - EL_MM_BEAMER_RED_2, - EL_MM_BEAMER_RED_1, - EL_MM_BEAMER_RED_16, - EL_MM_BEAMER_RED_15, - EL_MM_BEAMER_RED_14, - EL_MM_BEAMER_RED_13, - EL_MM_BEAMER_RED_12, - EL_MM_BEAMER_RED_11, - EL_MM_BEAMER_RED_10, - EL_MM_BEAMER_RED_9, - EL_MM_BEAMER_RED_8, - EL_MM_BEAMER_RED_7, - EL_MM_BEAMER_RED_6 + EL_MM_TELEPORTER_RED_5, + EL_MM_TELEPORTER_RED_4, + EL_MM_TELEPORTER_RED_3, + EL_MM_TELEPORTER_RED_2, + EL_MM_TELEPORTER_RED_1, + EL_MM_TELEPORTER_RED_16, + EL_MM_TELEPORTER_RED_15, + EL_MM_TELEPORTER_RED_14, + EL_MM_TELEPORTER_RED_13, + EL_MM_TELEPORTER_RED_12, + EL_MM_TELEPORTER_RED_11, + EL_MM_TELEPORTER_RED_10, + EL_MM_TELEPORTER_RED_9, + EL_MM_TELEPORTER_RED_8, + EL_MM_TELEPORTER_RED_7, + EL_MM_TELEPORTER_RED_6 }, { - EL_MM_BEAMER_YELLOW_5, - EL_MM_BEAMER_YELLOW_4, - EL_MM_BEAMER_YELLOW_3, - EL_MM_BEAMER_YELLOW_2, - EL_MM_BEAMER_YELLOW_1, - EL_MM_BEAMER_YELLOW_16, - EL_MM_BEAMER_YELLOW_15, - EL_MM_BEAMER_YELLOW_14, - EL_MM_BEAMER_YELLOW_13, - EL_MM_BEAMER_YELLOW_12, - EL_MM_BEAMER_YELLOW_11, - EL_MM_BEAMER_YELLOW_10, - EL_MM_BEAMER_YELLOW_9, - EL_MM_BEAMER_YELLOW_8, - EL_MM_BEAMER_YELLOW_7, - EL_MM_BEAMER_YELLOW_6 + EL_MM_TELEPORTER_YELLOW_5, + EL_MM_TELEPORTER_YELLOW_4, + EL_MM_TELEPORTER_YELLOW_3, + EL_MM_TELEPORTER_YELLOW_2, + EL_MM_TELEPORTER_YELLOW_1, + EL_MM_TELEPORTER_YELLOW_16, + EL_MM_TELEPORTER_YELLOW_15, + EL_MM_TELEPORTER_YELLOW_14, + EL_MM_TELEPORTER_YELLOW_13, + EL_MM_TELEPORTER_YELLOW_12, + EL_MM_TELEPORTER_YELLOW_11, + EL_MM_TELEPORTER_YELLOW_10, + EL_MM_TELEPORTER_YELLOW_9, + EL_MM_TELEPORTER_YELLOW_8, + EL_MM_TELEPORTER_YELLOW_7, + EL_MM_TELEPORTER_YELLOW_6 }, { - EL_MM_BEAMER_GREEN_5, - EL_MM_BEAMER_GREEN_4, - EL_MM_BEAMER_GREEN_3, - EL_MM_BEAMER_GREEN_2, - EL_MM_BEAMER_GREEN_1, - EL_MM_BEAMER_GREEN_16, - EL_MM_BEAMER_GREEN_15, - EL_MM_BEAMER_GREEN_14, - EL_MM_BEAMER_GREEN_13, - EL_MM_BEAMER_GREEN_12, - EL_MM_BEAMER_GREEN_11, - EL_MM_BEAMER_GREEN_10, - EL_MM_BEAMER_GREEN_9, - EL_MM_BEAMER_GREEN_8, - EL_MM_BEAMER_GREEN_7, - EL_MM_BEAMER_GREEN_6 + EL_MM_TELEPORTER_GREEN_5, + EL_MM_TELEPORTER_GREEN_4, + EL_MM_TELEPORTER_GREEN_3, + EL_MM_TELEPORTER_GREEN_2, + EL_MM_TELEPORTER_GREEN_1, + EL_MM_TELEPORTER_GREEN_16, + EL_MM_TELEPORTER_GREEN_15, + EL_MM_TELEPORTER_GREEN_14, + EL_MM_TELEPORTER_GREEN_13, + EL_MM_TELEPORTER_GREEN_12, + EL_MM_TELEPORTER_GREEN_11, + EL_MM_TELEPORTER_GREEN_10, + EL_MM_TELEPORTER_GREEN_9, + EL_MM_TELEPORTER_GREEN_8, + EL_MM_TELEPORTER_GREEN_7, + EL_MM_TELEPORTER_GREEN_6 }, { - EL_MM_BEAMER_BLUE_5, - EL_MM_BEAMER_BLUE_4, - EL_MM_BEAMER_BLUE_3, - EL_MM_BEAMER_BLUE_2, - EL_MM_BEAMER_BLUE_1, - EL_MM_BEAMER_BLUE_16, - EL_MM_BEAMER_BLUE_15, - EL_MM_BEAMER_BLUE_14, - EL_MM_BEAMER_BLUE_13, - EL_MM_BEAMER_BLUE_12, - EL_MM_BEAMER_BLUE_11, - EL_MM_BEAMER_BLUE_10, - EL_MM_BEAMER_BLUE_9, - EL_MM_BEAMER_BLUE_8, - EL_MM_BEAMER_BLUE_7, - EL_MM_BEAMER_BLUE_6 + EL_MM_TELEPORTER_BLUE_5, + EL_MM_TELEPORTER_BLUE_4, + EL_MM_TELEPORTER_BLUE_3, + EL_MM_TELEPORTER_BLUE_2, + EL_MM_TELEPORTER_BLUE_1, + EL_MM_TELEPORTER_BLUE_16, + EL_MM_TELEPORTER_BLUE_15, + EL_MM_TELEPORTER_BLUE_14, + EL_MM_TELEPORTER_BLUE_13, + EL_MM_TELEPORTER_BLUE_12, + EL_MM_TELEPORTER_BLUE_11, + EL_MM_TELEPORTER_BLUE_10, + EL_MM_TELEPORTER_BLUE_9, + EL_MM_TELEPORTER_BLUE_8, + EL_MM_TELEPORTER_BLUE_7, + EL_MM_TELEPORTER_BLUE_6 }, { - EL_MM_POLARISATOR_1, - EL_MM_POLARISATOR_16, - EL_MM_POLARISATOR_15, - EL_MM_POLARISATOR_14, - EL_MM_POLARISATOR_13, - EL_MM_POLARISATOR_12, - EL_MM_POLARISATOR_11, - EL_MM_POLARISATOR_10, - EL_MM_POLARISATOR_9, - EL_MM_POLARISATOR_8, - EL_MM_POLARISATOR_7, - EL_MM_POLARISATOR_6, - EL_MM_POLARISATOR_5, - EL_MM_POLARISATOR_4, - EL_MM_POLARISATOR_3, - EL_MM_POLARISATOR_2 + EL_MM_POLARIZER_1, + EL_MM_POLARIZER_16, + EL_MM_POLARIZER_15, + EL_MM_POLARIZER_14, + EL_MM_POLARIZER_13, + EL_MM_POLARIZER_12, + EL_MM_POLARIZER_11, + EL_MM_POLARIZER_10, + EL_MM_POLARIZER_9, + EL_MM_POLARIZER_8, + EL_MM_POLARIZER_7, + EL_MM_POLARIZER_6, + EL_MM_POLARIZER_5, + EL_MM_POLARIZER_4, + EL_MM_POLARIZER_3, + EL_MM_POLARIZER_2 }, { EL_DF_MIRROR_1,