/***********************************************************
-* Rocks'n'Diamonds -- McDuffin Strikes Back! *
+* Rocks'n'Diamonds -- McDuffin Strikes Back! *
*----------------------------------------------------------*
-* (c) 1995-98 Artsoft Entertainment *
-* Holger Schemel *
-* Oststrasse 11a *
-* 33604 Bielefeld *
-* phone: ++49 +521 290471 *
-* email: aeglos@valinor.owl.de *
+* (c) 1995-2002 Artsoft Entertainment *
+* Holger Schemel *
+* Detmolder Strasse 189 *
+* 33604 Bielefeld *
+* Germany *
+* e-mail: info@artsoft.org *
*----------------------------------------------------------*
-* editor.h *
+* editor.h *
***********************************************************/
#ifndef EDITOR_H
#include "main.h"
-/* positions in the level editor */
-#define ED_WIN_MB_LEFT_XPOS 7
-#define ED_WIN_MB_LEFT_YPOS 6
-#define ED_WIN_LEVELNR_XPOS 77
-#define ED_WIN_LEVELNR_YPOS 7
-#define ED_WIN_MB_MIDDLE_XPOS 7
-#define ED_WIN_MB_MIDDLE_YPOS 258
-#define ED_WIN_MB_RIGHT_XPOS 77
-#define ED_WIN_MB_RIGHT_YPOS 258
-
+/* number of element button columns and rows in the edit window */
#define MAX_ELEM_X 4
#define MAX_ELEM_Y 10
-/* other constants for the editor */
-#define ED_SCROLL_NO 0
-#define ED_SCROLL_LEFT 1
-#define ED_SCROLL_RIGHT 2
-#define ED_SCROLL_UP 4
-#define ED_SCROLL_DOWN 8
-
extern int element_shift;
extern int editor_element[];
extern int elements_in_list;
+void CreateLevelEditorGadgets();
+void FreeLevelEditorGadgets();
+void UnmapLevelEditorGadgets();
void DrawLevelEd(void);
-void ScrollMiniLevel(int, int, int);
-void LevelEd(int, int, int);
-void LevelNameTyping(KeySym);
+void HandleLevelEditorKeyInput(Key);
+void HandleLevelEditorIdle();
+void HandleEditorGadgetInfoText(void *ptr);
+void RequestExitLevelEditor(boolean);
#endif