X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Feditor.c;h=fc122b245a5e44ba39fb617ce8b1e79e32effd12;hb=694522655167cfbc7cca3b19a35b6de461103ef1;hp=2c46dc655a898b5812915c332ce5bc38d07a93f6;hpb=39d365b63a9701db9d8a0317994a27efd60cd83a;p=rocksndiamonds.git diff --git a/src/editor.c b/src/editor.c index 2c46dc65..fc122b24 100644 --- a/src/editor.c +++ b/src/editor.c @@ -382,7 +382,7 @@ enum GADGET_ID_PICK_ELEMENT, GADGET_ID_UNDO, - GADGET_ID_INFO, + GADGET_ID_CONF, GADGET_ID_SAVE, GADGET_ID_CLEAR, GADGET_ID_TEST, @@ -603,9 +603,9 @@ enum // textbutton identifiers - GADGET_ID_LEVELINFO_LEVEL, - GADGET_ID_LEVELINFO_LEVELSET, - GADGET_ID_LEVELINFO_EDITOR, + GADGET_ID_LEVELCONFIG_LEVEL, + GADGET_ID_LEVELCONFIG_LEVELSET, + GADGET_ID_LEVELCONFIG_EDITOR, GADGET_ID_PROPERTIES_INFO, GADGET_ID_PROPERTIES_CONFIG, GADGET_ID_PROPERTIES_CONFIG_1, @@ -913,9 +913,9 @@ enum // values for textbutton gadgets enum { - ED_TEXTBUTTON_ID_LEVELINFO_LEVEL, - ED_TEXTBUTTON_ID_LEVELINFO_LEVELSET, - ED_TEXTBUTTON_ID_LEVELINFO_EDITOR, + ED_TEXTBUTTON_ID_LEVELCONFIG_LEVEL, + ED_TEXTBUTTON_ID_LEVELCONFIG_LEVELSET, + ED_TEXTBUTTON_ID_LEVELCONFIG_EDITOR, ED_TEXTBUTTON_ID_PROPERTIES_INFO, ED_TEXTBUTTON_ID_PROPERTIES_CONFIG, ED_TEXTBUTTON_ID_PROPERTIES_CONFIG_1, @@ -930,8 +930,8 @@ enum ED_NUM_TEXTBUTTONS }; -#define ED_TAB_BUTTON_ID_LEVELINFO_FIRST ED_TEXTBUTTON_ID_LEVELINFO_LEVEL -#define ED_TAB_BUTTON_ID_LEVELINFO_LAST ED_TEXTBUTTON_ID_LEVELINFO_EDITOR +#define ED_TAB_BUTTON_ID_LEVELCONFIG_FIRST ED_TEXTBUTTON_ID_LEVELCONFIG_LEVEL +#define ED_TAB_BUTTON_ID_LEVELCONFIG_LAST ED_TEXTBUTTON_ID_LEVELCONFIG_EDITOR #define ED_TAB_BUTTON_ID_PROPERTIES_FIRST ED_TEXTBUTTON_ID_PROPERTIES_INFO #define ED_TAB_BUTTON_ID_PROPERTIES_LAST ED_TEXTBUTTON_ID_PROPERTIES_CHANGE @@ -1126,14 +1126,14 @@ enum // screens in the level editor #define ED_MODE_DRAWING 0 -#define ED_MODE_INFO 1 +#define ED_MODE_LEVELCONFIG 1 #define ED_MODE_PROPERTIES 2 #define ED_MODE_PALETTE 3 // sub-screens in the global settings section -#define ED_MODE_LEVELINFO_LEVEL ED_TEXTBUTTON_ID_LEVELINFO_LEVEL -#define ED_MODE_LEVELINFO_LEVELSET ED_TEXTBUTTON_ID_LEVELINFO_LEVELSET -#define ED_MODE_LEVELINFO_EDITOR ED_TEXTBUTTON_ID_LEVELINFO_EDITOR +#define ED_MODE_LEVELCONFIG_LEVEL ED_TEXTBUTTON_ID_LEVELCONFIG_LEVEL +#define ED_MODE_LEVELCONFIG_LEVELSET ED_TEXTBUTTON_ID_LEVELCONFIG_LEVELSET +#define ED_MODE_LEVELCONFIG_EDITOR ED_TEXTBUTTON_ID_LEVELCONFIG_EDITOR // sub-screens in the element properties section #define ED_MODE_PROPERTIES_INFO ED_TEXTBUTTON_ID_PROPERTIES_INFO @@ -1274,9 +1274,9 @@ static struct "undo/redo last operation", 'u' }, { - IMG_GFX_EDITOR_BUTTON_CONF, GADGET_ID_INFO, + IMG_GFX_EDITOR_BUTTON_CONF, GADGET_ID_CONF, &editor.button.conf, GD_TYPE_NORMAL_BUTTON, - "properties of level", 'I' + "level and editor settings", 'I' }, { IMG_GFX_EDITOR_BUTTON_SAVE, GADGET_ID_SAVE, @@ -2814,21 +2814,21 @@ static struct { ED_LEVEL_TABS_XPOS(0), ED_LEVEL_TABS_YPOS(0), - GADGET_ID_LEVELINFO_LEVEL, GADGET_ID_NONE, + GADGET_ID_LEVELCONFIG_LEVEL, GADGET_ID_NONE, 8, "Level", - NULL, NULL, NULL, "Configure level properties" + NULL, NULL, NULL, "Configure level settings" }, { -1, -1, - GADGET_ID_LEVELINFO_LEVELSET, GADGET_ID_LEVELINFO_LEVEL, + GADGET_ID_LEVELCONFIG_LEVELSET, GADGET_ID_LEVELCONFIG_LEVEL, 8, "Levelset", NULL, NULL, NULL, "Update this or create new level set" }, { -1, -1, - GADGET_ID_LEVELINFO_EDITOR, GADGET_ID_LEVELINFO_LEVELSET, + GADGET_ID_LEVELCONFIG_EDITOR, GADGET_ID_LEVELCONFIG_LEVELSET, 8, "Editor", - NULL, NULL, NULL, "Configure editor properties" + NULL, NULL, NULL, "Configure editor settings" }, // ---------- element settings (tabs) --------------------------------------- @@ -3800,7 +3800,7 @@ static struct -1, ED_AREA_1X1_SETTINGS_YPOS(1), 0, ED_AREA_1X1_SETTINGS_YOFF, GADGET_ID_CUSTOM_GRAPHIC, GADGET_ID_CUSTOM_USE_GRAPHIC, - &custom_element.gfx_element_initial,1, 1, + &custom_element.gfx_element_initial, 1, 1, NULL, NULL, NULL, NULL, "custom graphic element" }, @@ -3914,7 +3914,7 @@ static int level_xpos = -1, level_ypos = -1; static int ed_tilesize = DEFAULT_EDITOR_TILESIZE; static int ed_tilesize_default = DEFAULT_EDITOR_TILESIZE; -#define IN_ED_FIELD(x,y) IN_FIELD(x, y, ed_fieldx, ed_fieldy) +#define IN_ED_FIELD(x, y) IN_FIELD(x, y, ed_fieldx, ed_fieldy) // drawing elements on the three mouse buttons static int new_element1 = EL_WALL; @@ -3948,7 +3948,7 @@ static void AdjustElementListScrollbar(void); static void RedrawDrawingElements(void); static void DrawDrawingWindowExt(boolean); static void DrawDrawingWindow(void); -static void DrawLevelInfoWindow(void); +static void DrawLevelConfigWindow(void); static void DrawPropertiesWindow(void); static void DrawPaletteWindow(void); static void UpdateCustomElementGraphicGadgets(void); @@ -3993,7 +3993,7 @@ static int undo_buffer_steps = 0; static int redo_buffer_steps = 0; static int edit_mode; -static int edit_mode_levelinfo; +static int edit_mode_levelconfig; static int edit_mode_properties; static int element_shift = 0; @@ -5743,9 +5743,18 @@ static void InitDynamicEditorElementList(int **elements, int *num_elements) // find all elements used in current level for (y = 0; y < lev_fieldy; y++) + { for (x = 0; x < lev_fieldx; x++) - if (Tile[x][y] < NUM_FILE_ELEMENTS) // should always be true + { + if (Tile[x][y] >= NUM_FILE_ELEMENTS) // should never happen + continue; + + if (IS_MM_WALL(Tile[x][y])) + element_found[map_mm_wall_element(Tile[x][y])] = TRUE; + else element_found[Tile[x][y]] = TRUE; + } + } *num_elements = 0; @@ -5765,14 +5774,18 @@ static void InitDynamicEditorElementList(int **elements, int *num_elements) *num_elements = 0; - // add all elements used in current level (non-custom/group elements) + // add all elements used in current level (non-custom/group/empty elements) for (i = 0; i < NUM_FILE_ELEMENTS; i++) - if (element_found[i] && !(IS_CUSTOM_ELEMENT(i) || IS_GROUP_ELEMENT(i))) + if (element_found[i] && !(IS_CUSTOM_ELEMENT(i) || + IS_GROUP_ELEMENT(i) || + IS_EMPTY_ELEMENT(i))) (*elements)[(*num_elements)++] = i; - // add all elements used in current level (custom/group elements) + // add all elements used in current level (custom/group/empty elements) for (i = 0; i < NUM_FILE_ELEMENTS; i++) - if (element_found[i] && (IS_CUSTOM_ELEMENT(i) || IS_GROUP_ELEMENT(i))) + if (element_found[i] && (IS_CUSTOM_ELEMENT(i) || + IS_GROUP_ELEMENT(i) || + IS_EMPTY_ELEMENT(i))) (*elements)[(*num_elements)++] = i; while (*num_elements % 4) // pad with empty elements, if needed @@ -6947,7 +6960,7 @@ static void CreateTextbuttonGadgets(void) { int id = textbutton_info[i].gadget_id; int is_tab_button = - ((id >= GADGET_ID_LEVELINFO_LEVEL && id <= GADGET_ID_LEVELINFO_EDITOR) || + ((id >= GADGET_ID_LEVELCONFIG_LEVEL && id <= GADGET_ID_LEVELCONFIG_EDITOR) || (id >= GADGET_ID_PROPERTIES_INFO && id <= GADGET_ID_PROPERTIES_CHANGE)); int graphic = (is_tab_button ? IMG_EDITOR_TABBUTTON : IMG_EDITOR_TEXTBUTTON); @@ -7037,7 +7050,7 @@ static void CreateGraphicbuttonGadgets(void) int gd_y1 = gd->src_y; int gd_x2 = gd->src_x + gd->pressed_xoffset; int gd_y2 = gd->src_y + gd->pressed_yoffset; - unsigned int event_mask = GD_EVENT_PRESSED | GD_EVENT_REPEATED; + unsigned int event_mask = GD_EVENT_RELEASED; // determine horizontal position to the right of specified gadget if (graphicbutton_info[i].gadget_id_align != GADGET_ID_NONE) @@ -7663,7 +7676,7 @@ static void MapCheckbuttonGadget(int id) // set position for gadgets with dynamically determined position if (checkbutton_info[id].x != -1) // do not change dynamic positions - ModifyGadget(gi, GDI_X, SX + ED_SETTINGS_X(checkbutton_info[id].x),GDI_END); + ModifyGadget(gi, GDI_X, SX + ED_SETTINGS_X(checkbutton_info[id].x), GDI_END); ModifyGadget(gi, GDI_Y, SY + ED_SETTINGS_Y(checkbutton_info[id].y), GDI_END); x_left = gi->x - xoffset_left; @@ -7746,6 +7759,14 @@ static void MapLevelEditorToolboxCustomGadgets(void) MapOrUnmapLevelEditorToolboxCustomGadgets(TRUE); } +static void MapLevelEditorToolboxCustomGadgetsIfNeeded(void) +{ + if (IS_CUSTOM_ELEMENT(properties_element) || + IS_GROUP_ELEMENT(properties_element) || + IS_EMPTY_ELEMENT(properties_element)) + MapLevelEditorToolboxCustomGadgets(); +} + static void UnmapLevelEditorToolboxCustomGadgets(void) { MapOrUnmapLevelEditorToolboxCustomGadgets(FALSE); @@ -7834,8 +7855,8 @@ static void DrawEditModeWindowExt(boolean remap_toolbox_gadgets) RedrawDrawingElements(); } - if (edit_mode == ED_MODE_INFO) - DrawLevelInfoWindow(); + if (edit_mode == ED_MODE_LEVELCONFIG) + DrawLevelConfigWindow(); else if (edit_mode == ED_MODE_PROPERTIES) DrawPropertiesWindow(); else if (edit_mode == ED_MODE_PALETTE) @@ -7935,7 +7956,7 @@ static boolean PrepareSavingIntoPersonalLevelSet(void) return TRUE; } -static void ModifyLevelInfoForSavingIntoPersonalLevelSet(char *former_name) +static void ModifyLevelConfigForSavingIntoPersonalLevelSet(char *former_name) { static char *filename_levelinfo = NULL, *mod_name = NULL; FILE *file; @@ -8168,6 +8189,12 @@ static boolean CopyCustomElement(int element_old, int element_new, return FALSE; } + else if (IS_EMPTY_ELEMENT(element_old) && !IS_EMPTY_ELEMENT(element_new)) + { + Request("Please choose empty element!", REQ_CONFIRM); + + return FALSE; + } else { level.changed = TRUE; @@ -8778,6 +8805,15 @@ static void DrawEditorDoorContent(void) // draw all toolbox gadgets to editor doors MapControlButtons(); + // when returning from test game to properties page, redraw toolbox gadgets + if (edit_mode == ED_MODE_PROPERTIES) + { + UnmapLevelEditorToolboxDrawingGadgets(); + UnmapLevelEditorToolboxCustomGadgets(); + + MapLevelEditorToolboxCustomGadgetsIfNeeded(); + } + // draw all palette gadgets to editor doors ModifyEditorElementList(); RedrawDrawingElements(); @@ -8820,7 +8856,7 @@ void DrawLevelEd(void) else { edit_mode = ED_MODE_DRAWING; - edit_mode_levelinfo = ED_MODE_LEVELINFO_LEVEL; + edit_mode_levelconfig = ED_MODE_LEVELCONFIG_LEVEL; edit_mode_properties = ED_MODE_PROPERTIES_INFO; ResetUndoBuffer(); @@ -9203,7 +9239,7 @@ static int getTabulatorBarHeight(void) static Pixel getTabulatorBarColor(void) { - struct GadgetInfo *gd_gi1 = level_editor_gadget[GADGET_ID_LEVELINFO_LEVEL]; + struct GadgetInfo *gd_gi1 = level_editor_gadget[GADGET_ID_LEVELCONFIG_LEVEL]; struct GadgetDesign *gd = &gd_gi1->alt_design[GD_BUTTON_UNPRESSED]; int gd_x = gd->x + gd_gi1->border.width / 2; int gd_y = gd->y + gd_gi1->height - 1; @@ -9211,19 +9247,19 @@ static Pixel getTabulatorBarColor(void) return GetPixel(gd->bitmap, gd_x, gd_y); } -static void DrawLevelInfoTabulatorGadgets(void) +static void DrawLevelConfigTabulatorGadgets(void) { - struct GadgetInfo *gd_gi1 = level_editor_gadget[GADGET_ID_LEVELINFO_LEVEL]; + struct GadgetInfo *gd_gi1 = level_editor_gadget[GADGET_ID_LEVELCONFIG_LEVEL]; Pixel tab_color = getTabulatorBarColor(); - int id_first = ED_TAB_BUTTON_ID_LEVELINFO_FIRST; - int id_last = ED_TAB_BUTTON_ID_LEVELINFO_LAST; + int id_first = ED_TAB_BUTTON_ID_LEVELCONFIG_FIRST; + int id_last = ED_TAB_BUTTON_ID_LEVELCONFIG_LAST; int i; for (i = id_first; i <= id_last; i++) { int gadget_id = textbutton_info[i].gadget_id; struct GadgetInfo *gi = level_editor_gadget[gadget_id]; - boolean active = (i != edit_mode_levelinfo); + boolean active = (i != edit_mode_levelconfig); // draw background line below tabulator button ClearRectangleOnBackground(drawto, gi->x, gi->y + gi->height, gi->width, 1); @@ -9312,7 +9348,7 @@ static int PrintElementDescriptionFromFile(char *filename, int font_nr, TRUE, FALSE, FALSE); } -static void DrawLevelInfoLevel(void) +static void DrawLevelConfigLevel(void) { int i; @@ -9341,7 +9377,7 @@ static char *getLevelSubdirFromSaveMode(int save_mode) return leveldir_current->subdir; } -static void DrawLevelInfoLevelSet_DirectoryInfo(void) +static void DrawLevelConfigLevelSet_DirectoryInfo(void) { char *directory_text = "Level set directory:"; char *directory_name = getLevelSubdirFromSaveMode(levelset_save_mode); @@ -9356,7 +9392,7 @@ static void DrawLevelInfoLevelSet_DirectoryInfo(void) PrintInfoText(directory_name, font2_nr, x, y); } -static void DrawLevelInfoLevelSet(void) +static void DrawLevelConfigLevelSet(void) { boolean artwork_exists = checkIfCustomArtworkExistsForCurrentLevelSet(); boolean template_exists = fileExists(getLocalLevelTemplateFilename()); @@ -9389,10 +9425,10 @@ static void DrawLevelInfoLevelSet(void) MapTextbuttonGadget(ED_TEXTBUTTON_ID_SAVE_LEVELSET); // draw info text - DrawLevelInfoLevelSet_DirectoryInfo(); + DrawLevelConfigLevelSet_DirectoryInfo(); } -static void DrawLevelInfoEditor(void) +static void DrawLevelConfigEditor(void) { int i; @@ -9415,7 +9451,7 @@ static void DrawLevelInfoEditor(void) MapTextbuttonGadget(ED_TEXTBUTTON_ID_SAVE_AS_TEMPLATE_2); } -static void DrawLevelInfoWindow(void) +static void DrawLevelConfigWindow(void) { char *text = "Global Settings"; int font_nr = FONT_TITLE_1; @@ -9434,14 +9470,14 @@ static void DrawLevelInfoWindow(void) DrawText(sx, sy, text, font_nr); - DrawLevelInfoTabulatorGadgets(); + DrawLevelConfigTabulatorGadgets(); - if (edit_mode_levelinfo == ED_MODE_LEVELINFO_LEVEL) - DrawLevelInfoLevel(); - else if (edit_mode_levelinfo == ED_MODE_LEVELINFO_LEVELSET) - DrawLevelInfoLevelSet(); - else if (edit_mode_levelinfo == ED_MODE_LEVELINFO_EDITOR) - DrawLevelInfoEditor(); + if (edit_mode_levelconfig == ED_MODE_LEVELCONFIG_LEVEL) + DrawLevelConfigLevel(); + else if (edit_mode_levelconfig == ED_MODE_LEVELCONFIG_LEVELSET) + DrawLevelConfigLevelSet(); + else if (edit_mode_levelconfig == ED_MODE_LEVELCONFIG_EDITOR) + DrawLevelConfigEditor(); } static void DrawCustomContentArea(void) @@ -9959,9 +9995,9 @@ static struct { EL_NUT, &level.score[SC_NUT], TEXT_CRACKING }, { EL_DYNAMITE, &level.score[SC_DYNAMITE], TEXT_COLLECTING }, { EL_EM_DYNAMITE, &level.score[SC_DYNAMITE], TEXT_COLLECTING }, - { EL_DYNABOMB_INCREASE_NUMBER,&level.score[SC_DYNAMITE],TEXT_COLLECTING }, - { EL_DYNABOMB_INCREASE_SIZE, &level.score[SC_DYNAMITE],TEXT_COLLECTING }, - { EL_DYNABOMB_INCREASE_POWER, &level.score[SC_DYNAMITE],TEXT_COLLECTING }, + { EL_DYNABOMB_INCREASE_NUMBER,&level.score[SC_DYNAMITE], TEXT_COLLECTING }, + { EL_DYNABOMB_INCREASE_SIZE, &level.score[SC_DYNAMITE], TEXT_COLLECTING }, + { EL_DYNABOMB_INCREASE_POWER, &level.score[SC_DYNAMITE], TEXT_COLLECTING }, { EL_SHIELD_NORMAL, &level.score[SC_SHIELD], TEXT_COLLECTING }, { EL_SHIELD_DEADLY, &level.score[SC_SHIELD], TEXT_COLLECTING }, { EL_EXTRA_TIME, &level.extra_time_score, TEXT_COLLECTING }, @@ -10663,9 +10699,7 @@ static void DrawPropertiesWindow(void) UnmapLevelEditorToolboxDrawingGadgets(); UnmapLevelEditorToolboxCustomGadgets(); - if (IS_CUSTOM_ELEMENT(properties_element) || - IS_GROUP_ELEMENT(properties_element)) - MapLevelEditorToolboxCustomGadgets(); + MapLevelEditorToolboxCustomGadgetsIfNeeded(); SetMainBackgroundImage(IMG_BACKGROUND_EDITOR); ClearField(); @@ -12236,7 +12270,7 @@ static void DrawCircle(int from_x, int from_y, int to_x, int to_y, DrawArcExt(from_x, from_y, to_x2, to_y2, element, change_level); DrawArcExt(from_x, from_y, mirror_to_x2, to_y2, element, change_level); DrawArcExt(from_x, from_y, to_x2, mirror_to_y2, element, change_level); - DrawArcExt(from_x, from_y, mirror_to_x2, mirror_to_y2, element,change_level); + DrawArcExt(from_x, from_y, mirror_to_x2, mirror_to_y2, element, change_level); } #endif @@ -13214,7 +13248,7 @@ static void HandleDrawingAreas(struct GadgetInfo *gi) { SetDrawModeHiRes(new_element); - if (IS_PLAYER_ELEMENT(new_element)) + if (IS_PLAYER_ELEMENT(new_element) || IS_MM_MCDUFFIN(new_element)) { // remove player at old position for (y = 0; y < lev_fieldy; y++) @@ -13223,7 +13257,8 @@ static void HandleDrawingAreas(struct GadgetInfo *gi) { int old_element = Tile[x][y]; - if (IS_PLAYER_ELEMENT(old_element)) + if (IS_PLAYER_ELEMENT(old_element) && + IS_PLAYER_ELEMENT(new_element)) { int replaced_with_element = (old_element == EL_SOKOBAN_FIELD_PLAYER && @@ -13243,6 +13278,12 @@ static void HandleDrawingAreas(struct GadgetInfo *gi) SetElement(x, y, replaced_with_element); } + else if (IS_MM_MCDUFFIN(old_element) && + IS_MM_MCDUFFIN(new_element)) + { + // remove McDuffin at old position + SetElement(x, y, EL_EMPTY); + } } } } @@ -13577,7 +13618,7 @@ static void HandleSelectboxGadgets(struct GadgetInfo *gi) if (type_id == ED_SELECTBOX_ID_LEVELSET_SAVE_MODE) { - DrawLevelInfoWindow(); + DrawLevelConfigWindow(); } else if (type_id == ED_SELECTBOX_ID_SELECT_CHANGE_PAGE) { @@ -13622,12 +13663,12 @@ static void HandleTextbuttonGadgets(struct GadgetInfo *gi) int type_id = gi->custom_type_id; int i; - if (type_id >= ED_TAB_BUTTON_ID_LEVELINFO_FIRST && - type_id <= ED_TAB_BUTTON_ID_LEVELINFO_LAST) + if (type_id >= ED_TAB_BUTTON_ID_LEVELCONFIG_FIRST && + type_id <= ED_TAB_BUTTON_ID_LEVELCONFIG_LAST) { - edit_mode_levelinfo = gi->custom_type_id; + edit_mode_levelconfig = gi->custom_type_id; - DrawLevelInfoWindow(); + DrawLevelConfigWindow(); } else if (type_id >= ED_TAB_BUTTON_ID_PROPERTIES_FIRST && type_id <= ED_TAB_BUTTON_ID_PROPERTIES_LAST) @@ -14283,12 +14324,12 @@ static void HandleControlButtons(struct GadgetInfo *gi) break; - case GADGET_ID_INFO: - if (edit_mode != ED_MODE_INFO) + case GADGET_ID_CONF: + if (edit_mode != ED_MODE_LEVELCONFIG) { last_edit_mode = edit_mode; - ChangeEditModeWindow(ED_MODE_INFO); + ChangeEditModeWindow(ED_MODE_LEVELCONFIG); } else { @@ -14329,7 +14370,7 @@ static void HandleControlButtons(struct GadgetInfo *gi) Request("Save this level and kill the old?", REQ_ASK)) { if (leveldir_former->readonly) - ModifyLevelInfoForSavingIntoPersonalLevelSet(leveldir_former->name); + ModifyLevelConfigForSavingIntoPersonalLevelSet(leveldir_former->name); SetAutomaticNumberOfGemsNeeded(); @@ -14585,8 +14626,8 @@ void HandleLevelEditorKeyInput(Key key) case KSYM_Escape: if (edit_mode == ED_MODE_DRAWING) RequestExitLevelEditor(setup.ask_on_escape_editor, TRUE); - else if (edit_mode == ED_MODE_INFO) - HandleControlButtons(level_editor_gadget[GADGET_ID_INFO]); + else if (edit_mode == ED_MODE_LEVELCONFIG) + HandleControlButtons(level_editor_gadget[GADGET_ID_CONF]); else if (edit_mode == ED_MODE_PROPERTIES) HandleControlButtons(level_editor_gadget[GADGET_ID_PROPERTIES]); else if (edit_mode == ED_MODE_PALETTE) @@ -14796,7 +14837,7 @@ static void HandleDrawingAreaInfo(struct GadgetInfo *gi) sy = ly - level_ypos; } - if (IN_ED_FIELD(sx,sy) && IN_LEV_FIELD(lx, ly)) + if (IN_ED_FIELD(sx, sy) && IN_LEV_FIELD(lx, ly)) { if (button_status) // if (gi->state == GD_BUTTON_PRESSED) {