81 lines
3.0 KiB
C++
81 lines
3.0 KiB
C++
#pragma once
|
|
|
|
#include "icon.h"
|
|
#include "settings.h"
|
|
|
|
namespace anm2ed::tool
|
|
{
|
|
enum Type
|
|
{
|
|
PAN,
|
|
MOVE,
|
|
ROTATE,
|
|
SCALE,
|
|
CROP,
|
|
DRAW,
|
|
ERASE,
|
|
COLOR_PICKER,
|
|
UNDO,
|
|
REDO,
|
|
COLOR,
|
|
COUNT
|
|
};
|
|
|
|
enum AreaType
|
|
{
|
|
ANIMATION_PREVIEW,
|
|
SPRITESHEET_EDITOR,
|
|
ALL
|
|
};
|
|
|
|
struct Info
|
|
{
|
|
ImGuiMouseCursor cursor{ImGuiMouseCursor_None};
|
|
resource::icon::Type icon{};
|
|
ShortcutType shortcut{};
|
|
AreaType areaType;
|
|
const char* label{};
|
|
const char* tooltip{};
|
|
};
|
|
|
|
constexpr Info INFO[] = {
|
|
{ImGuiMouseCursor_Hand, resource::icon::PAN, SHORTCUT_PAN, ALL, "##Pan",
|
|
"Use the pan tool.\nWill shift the view as the cursor is dragged.\nYou can also use the middle mouse button to "
|
|
"pan at any time."},
|
|
|
|
{ImGuiMouseCursor_ResizeAll, resource::icon::MOVE, SHORTCUT_MOVE, ALL, "##Move",
|
|
"Use the move tool.\nAnimation Preview: Will move the position of the frame."
|
|
"\nSpritesheet Editor: Will move the pivot, and holding right click will use the Crop functionality instead."
|
|
"\nUse mouse or directional keys to change the value."},
|
|
|
|
{ImGuiMouseCursor_Arrow, resource::icon::ROTATE, SHORTCUT_ROTATE, ANIMATION_PREVIEW, "##Rotate",
|
|
"Use the rotate tool.\nWill rotate the selected item as the cursor is dragged, or directional keys are "
|
|
"pressed.\n(Animation Preview only.)"},
|
|
|
|
{ImGuiMouseCursor_ResizeNESW, resource::icon::SCALE, SHORTCUT_SCALE, ANIMATION_PREVIEW, "##Scale",
|
|
"Use the scale tool.\nWill scale the selected item as the cursor is dragged, or directional keys are "
|
|
"pressed.\nHold SHIFT to lock scaling to one dimension.\n(Animation Preview only.)"},
|
|
|
|
{ImGuiMouseCursor_Arrow, resource::icon::CROP, SHORTCUT_CROP, SPRITESHEET_EDITOR, "##Crop",
|
|
"Use the crop tool.\nWill produce a crop rectangle based on how the cursor is dragged, or directional keys are "
|
|
"pressed.\nHold CTRL with arrow keys to change position."
|
|
"\nHolding right click will use the Move tool's functionality."
|
|
"\n(Spritesheet Editor only.)"},
|
|
|
|
{ImGuiMouseCursor_Arrow, resource::icon::DRAW, SHORTCUT_DRAW, SPRITESHEET_EDITOR, "##Draw",
|
|
"Draws pixels onto the selected spritesheet, with the current color.\n(Spritesheet Editor only.)"},
|
|
|
|
{ImGuiMouseCursor_Arrow, resource::icon::ERASE, SHORTCUT_ERASE, SPRITESHEET_EDITOR, "##Erase",
|
|
"Erases pixels from the selected spritesheet.\n(Spritesheet Editor only.)"},
|
|
|
|
{ImGuiMouseCursor_Arrow, resource::icon::COLOR_PICKER, SHORTCUT_COLOR_PICKER, SPRITESHEET_EDITOR,
|
|
"##Color Picker", "Selects a color from the canvas.\n(Spritesheet Editor only.)"},
|
|
|
|
{ImGuiMouseCursor_None, resource::icon::UNDO, SHORTCUT_UNDO, ALL, "##Undo", "Undoes the last action."},
|
|
|
|
{ImGuiMouseCursor_None, resource::icon::REDO, SHORTCUT_REDO, ALL, "##Redo", "Redoes the last action."},
|
|
|
|
{ImGuiMouseCursor_None, resource::icon::NONE, SHORTCUT_COLOR, ALL, "##Color",
|
|
"Selects the color to be used for drawing.\n(Spritesheet Editor only.)"},
|
|
};
|
|
} |