Porytiles
Loading...
Searching...
No Matches
ascii_tile_printer.hpp
Go to the documentation of this file.
1#pragma once
2
3#include <string>
4#include <vector>
5
6#include "gsl/pointers"
7
11
12namespace porytiles2 {
13
18class AsciiTilePrinter final : public TilePrinter {
19 public:
20 explicit AsciiTilePrinter(gsl::not_null<TextFormatter *> format) : format_{format} {}
21
22 [[nodiscard]] std::vector<std::string>
23 print_metatile_highlight(metatile::Subtile subtile, std::size_t row, std::size_t col, Style color) const override;
24
25 [[nodiscard]] std::vector<std::string> print_metatile_highlights(
26 metatile::Subtile subtile, const std::vector<std::size_t> &indexes, Style color) const override;
27
28 private:
29 TextFormatter *format_;
30};
31
32} // namespace porytiles2
A TilePrinter implementation that generates ASCII art tiles with formatting based on the provided Tex...
std::vector< std::string > print_metatile_highlight(metatile::Subtile subtile, std::size_t row, std::size_t col, Style color) const override
AsciiTilePrinter(gsl::not_null< TextFormatter * > format)
std::vector< std::string > print_metatile_highlights(metatile::Subtile subtile, const std::vector< std::size_t > &indexes, Style color) const override
Abstract base class for applying text styling with context-aware formatting.
A collection of printer functions for various tile types.
Style
Bitmask flags for text styling options.