fixed bug with always drawing level playfield in editor after test playing
authorHolger Schemel <info@artsoft.org>
Wed, 31 Jan 2018 21:01:11 +0000 (22:01 +0100)
committerHolger Schemel <info@artsoft.org>
Fri, 23 Mar 2018 22:21:17 +0000 (23:21 +0100)
- even if the last edit mode was "level info", "element properties" etc.
- this bug was introduced by the commit with the following message:
  "added editor door 1 animation if viewport is unchanged and contains toolbox"
  (no commit ID given here due to frequent use of "git rebase")

src/editor.c

index c716bdae8d8dea9452f885036a85d5585fd57778..bcb57abc861ad5ced43efcc88e490ac57850fa26 100644 (file)
@@ -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();
@@ -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)
@@ -8505,7 +8517,7 @@ void DrawLevelEd()
 
   UnmapAllGadgets();
 
-  DrawDrawingWindow_PlayfieldOnly();
+  DrawEditModeWindow_PlayfieldOnly();
 
   DrawMaskedBorder(fade_mask);
 
@@ -8852,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];