FuncDoodle
Loading...
Searching...
No Matches
Tool.h File Reference

Defines editor tools, tool utilities, and tool-related keybinding logic. More...

#include "Project/Frame.h"
#include "Asset/LoadedAssets.h"
#include "Keybinds/Keybinds.h"
#include "UI/Gui.h"
#include "Util/MacroUtils.h"
#include <functional>

Go to the source code of this file.

Namespaces

namespace  FuncDoodle
 The FuncDoodle C++ namespace.

Enumerations

enum class  FuncDoodle::ToolType {
  FuncDoodle::Pencil , FuncDoodle::Eraser , FuncDoodle::Bucket , FuncDoodle::Picker ,
  FuncDoodle::Select
}
 All available tools in the editor. More...

Functions

constexpr const char * FuncDoodle::ToolTypeName (ToolType t)
 Returns the user-facing name of a tool type.
constexpr uint32_t FuncDoodle::ToolTexID (ToolType tool)
 Returns the toolbar texture ID associated with a tool.
static void FuncDoodle::Tooltips (ToolType tool)
static void FuncDoodle::ToolKeybindsRegister (KeybindsRegistry &keybinds)
static void FuncDoodle::ToolKeybinds (ToolType *tool, KeybindsRegistry &keybinds)

Variables

constexpr std::array< ToolType, 5 > FuncDoodle::ToolTypes
 Ordered list of tools used for iteration and UI rendering.

Detailed Description

Defines editor tools, tool utilities, and tool-related keybinding logic.

This file contains:

  • ToolType enum defining all available editor tools
  • Utility functions for mapping tools to names, textures, and tooltips
  • Keybinding registration and input handling for tool switching

It provides a lightweight functional layer for tool selection and UI integration, primarily used by ToolManager and editor input systems.

Note
Tool utilities are implemented as constexpr/static helpers for simplicity.