public ButtonHover(DrawableRectangle rectangle, Texture2D white_pixel, SpriteFont tooltip_font, string tooltip_text) { button_hover = new DrawableRectangle(rectangle.texture, rectangle.Area, Color.White * 0.5f); this.tooltip_font = tooltip_font; this.tooltip_text = tooltip_text; Vector2 tooltip_text_size = tooltip_font.MeasureString(tooltip_text); Rectangle tooltip_rect = new Rectangle(0, button_hover.Area.Y, (int)Math.Ceiling(tooltip_text_size.X), (int)Math.Ceiling(tooltip_text_size.Y)); tooltip_rect = tooltip_rect.LeftAlignOn(button_hover.Area).OffsetBy(0, -1 * tooltip_rect.Height - 6); tooltip_text_position = tooltip_rect.GetPosition(); tooltip_rect = tooltip_rect.BufferBy(8); tooltip_box = new DrawableRectangle(white_pixel, tooltip_rect, Color.White, 2, Color.Black); }