* Fix some bugs in stations and do a little cleanup. * Begin backporting the guidebook. * wow that's a lot of work. * More work, gives the monkey some more interactions. * disco monkye. * monky * jobs entry. * more writing. * disco * im being harassed * fix spacing. * i hate writing. * Update Resources/Prototypes/Entities/Mobs/NPCs/animals.yml Co-authored-by: Leon Friedrich <60421075+ElectroJr@users.noreply.github.com> * builds again * a * pilfer changes from AL * fix and remove unused code * pilfer actual guide changes from AL * localization * more error logs & safety checks * replace controls button with command * add test * todos * pidgin parsing * remove old parser * Move files and change tree sorting * add localization and public methods. * Add help component/verb * rename ITag to IDocumentTag * Fix yml and tweak tooltips * autoclose tooltip * Split container * Fancier-tree * Hover color * txt to xml * oops * Curse you hidden merge conflicts * Rename parsing manager * Stricter arg parsing tag args must now be of the form key="value" * Change default args * Moar tests * nullable enable * Even fancier tree * extremely fancy trees * better indent icons * stricter xml and subheadings * tweak embed margin * Fix parsing bugs * quick fixes. * spain. * ogh * hn bmvdsyc Co-authored-by: moonheart08 <moonheart08@users.noreply.github.com>
63 lines
1.6 KiB
C#
63 lines
1.6 KiB
C#
using Content.Client.ContextMenu.UI;
|
|
using Content.Client.Stylesheets;
|
|
using Content.Shared.Verbs;
|
|
using Robust.Client.AutoGenerated;
|
|
using Robust.Client.Graphics;
|
|
using Robust.Client.UserInterface.Controls;
|
|
using Robust.Client.UserInterface.XAML;
|
|
using Robust.Client.Utility;
|
|
using Robust.Shared.Utility;
|
|
|
|
namespace Content.Client.Examine;
|
|
|
|
/// <summary>
|
|
/// Buttons that show up in the examine tooltip to specify more detailed
|
|
/// ways to examine an item.
|
|
/// </summary>
|
|
public sealed class ExamineButton : ContainerButton
|
|
{
|
|
public const string StyleClassExamineButton = "examine-button";
|
|
|
|
public const int ElementHeight = 32;
|
|
public const int ElementWidth = 32;
|
|
|
|
private const int Thickness = 4;
|
|
|
|
public TextureRect Icon;
|
|
|
|
public ExamineVerb Verb;
|
|
|
|
public ExamineButton(ExamineVerb verb)
|
|
{
|
|
Margin = new Thickness(Thickness, Thickness, Thickness, Thickness);
|
|
|
|
SetOnlyStyleClass(StyleClassExamineButton);
|
|
|
|
Verb = verb;
|
|
|
|
if (verb.Disabled)
|
|
{
|
|
Disabled = true;
|
|
}
|
|
|
|
ToolTip = verb.Message ?? verb.Text;
|
|
TooltipDelay = 0.3f; // if you're hovering over these icons, you probably want to know what they do.
|
|
|
|
Icon = new TextureRect
|
|
{
|
|
SetWidth = ElementWidth,
|
|
SetHeight = ElementHeight
|
|
};
|
|
|
|
if (verb.IconTexture != null)
|
|
{
|
|
var icon = new SpriteSpecifier.Texture(new ResourcePath(verb.IconTexture));
|
|
|
|
Icon.Texture = icon.Frame0();
|
|
Icon.Stretch = TextureRect.StretchMode.KeepAspectCentered;
|
|
|
|
AddChild(Icon);
|
|
}
|
|
}
|
|
}
|