rnd-20070414-2-src
[rocksndiamonds.git] / src / main.h
index 2f323f279a3f05d55b2581c18a276339dfb4c0c9..8ae17e69e0bcc146d72244c23cfef320134eb81a 100644 (file)
                                 (d) == MV_DOWN  ? "MV_DOWN"  : "(various)")
 
 #define ELEMENT_ACTIVE(e)      (ActiveElement[e])
-
+#define BUTTON_ACTIVE(b)       (ActiveButton[b])
 #define FONT_ACTIVE(f)         (ActiveFont[f])
 
 
 
 #define NUM_SPECIAL_GFX_INFO_ARGS      8
 
+/* these additional definitions are currently only used for draw offsets */
+#define GFX_SPECIAL_ARG_SETUP_MAIN             0
+#define GFX_SPECIAL_ARG_SETUP_GAME             1
+#define GFX_SPECIAL_ARG_SETUP_EDITOR           2
+#define GFX_SPECIAL_ARG_SETUP_GRAPHICS         3
+#define GFX_SPECIAL_ARG_SETUP_SOUND            4
+#define GFX_SPECIAL_ARG_SETUP_ARTWORK          5
+#define GFX_SPECIAL_ARG_SETUP_INPUT            6
+#define GFX_SPECIAL_ARG_SETUP_SHORTCUTS_1      7
+#define GFX_SPECIAL_ARG_SETUP_SHORTCUTS_2      8
+#define GFX_SPECIAL_ARG_SETUP_CHOOSE_ARTWORK   9
+#define GFX_SPECIAL_ARG_SETUP_CHOOSE_OTHER     10
+
+#define NUM_SPECIAL_GFX_SETUP_ARGS             11
+
 
 /* values for image configuration suffixes */
 #define GFX_ARG_X                      0
@@ -2104,6 +2119,8 @@ struct MenuInfo
   int draw_yoffset[NUM_SPECIAL_GFX_ARGS];
   int draw_xoffset_info[NUM_SPECIAL_GFX_INFO_ARGS];
   int draw_yoffset_info[NUM_SPECIAL_GFX_INFO_ARGS];
+  int draw_xoffset_setup[NUM_SPECIAL_GFX_SETUP_ARGS];
+  int draw_yoffset_setup[NUM_SPECIAL_GFX_SETUP_ARGS];
 
   int scrollbar_xoffset;
 
@@ -2689,6 +2706,7 @@ extern int                        GfxAction[MAX_LEV_FIELDX][MAX_LEV_FIELDY];
 extern int                     GfxDir[MAX_LEV_FIELDX][MAX_LEV_FIELDY];
 
 extern int                     ActiveElement[MAX_NUM_ELEMENTS];
+extern int                     ActiveButton[NUM_IMAGE_FILES];
 extern int                     ActiveFont[NUM_FONTS];
 
 extern int                     lev_fieldx, lev_fieldy;