{ "editor.settings.tabs.2nd_yoffset", "64" },
{ "editor.settings.tabs.draw_xoffset", "0" },
{ "editor.settings.tabs.draw_yoffset", "8" },
+ { "editor.settings.tooltip.x", "-1" },
+ { "editor.settings.tooltip.y", "-1" },
{ "editor.gadget.normal_spacing", "4" },
{ "editor.gadget.small_spacing", "2" },
#define INFOTEXT_XSIZE SXSIZE
#define INFOTEXT_YSIZE getFontHeight(INFOTEXT_FONT)
#define INFOTEXT_YSIZE_FULL (INFOTEXT_YSIZE + ED_GADGET_SMALL_DISTANCE)
-#define INFOTEXT_XPOS SX
-#define INFOTEXT_YPOS (SY + SYSIZE - INFOTEXT_YSIZE)
+#define INFOTEXT_X (editor.settings.tooltip.x)
+#define INFOTEXT_Y (editor.settings.tooltip.y)
+#define INFOTEXT_XY_REDEFINED (INFOTEXT_X != -1 || INFOTEXT_Y != -1)
+#define INFOTEXT_XPOS SX + (INFOTEXT_XY_REDEFINED ? INFOTEXT_X : 0)
+#define INFOTEXT_YPOS SY + (INFOTEXT_XY_REDEFINED ? INFOTEXT_Y : \
+ SYSIZE - INFOTEXT_YSIZE)
/*
static int getMaxEdFieldY(boolean has_scrollbar)
{
- int infotext_height = INFOTEXT_YSIZE_FULL;
+ int infotext_height = (IN_PIX_FIELD(INFOTEXT_XPOS - SX, INFOTEXT_YPOS - SY) ?
+ INFOTEXT_YSIZE_FULL : 0);
int scrollbar_height = (has_scrollbar ? ED_SCROLLBUTTON_YSIZE : 0);
int sysize = SYSIZE - scrollbar_height - infotext_height;
int max_ed_fieldy = sysize / ed_tilesize;
((x) >= (xmin) && (x) <= (xmax) && \
(y) >= (ymin) && (y) <= (ymax))
+#define IN_PIX_FIELD(x, y) IN_FIELD(x, y, SXSIZE, SYSIZE)
#define IN_VIS_FIELD(x, y) IN_FIELD(x, y, SCR_FIELDX, SCR_FIELDY)
#define IN_LEV_FIELD(x, y) IN_FIELD(x, y, lev_fieldx, lev_fieldy)
#define IN_SCR_FIELD(x, y) IN_FIELD_MINMAX(x,y, BX1,BY1, BX2,BY2)
struct XY element_name;
struct EditorTabsInfo tabs;
+
+ struct XY tooltip;
};
struct EditorGadgetInfo