Compare commits
No commits in common. "a0b221f103d22768e939cd6c8b58fc084902eb01" and "e787b94ae1c4e553972608410dfa488294f49104" have entirely different histories.
a0b221f103
...
e787b94ae1
7 changed files with 18 additions and 22 deletions
|
@ -1,4 +1,4 @@
|
|||
if(NOT TARGET pugixml-static)
|
||||
if(NOT TARGET pugixml)
|
||||
include(FetchContent)
|
||||
|
||||
FetchContent_Declare(
|
||||
|
|
|
@ -12,7 +12,7 @@ target_link_libraries(Kanimaji
|
|||
KVGToolsCommon
|
||||
|
||||
PRIVATE
|
||||
pugixml-static
|
||||
pugixml
|
||||
)
|
||||
|
||||
target_include_directories(Kanimaji
|
||||
|
|
|
@ -17,7 +17,7 @@ target_link_libraries(Tablegen
|
|||
KVGToolsCommon
|
||||
|
||||
PRIVATE
|
||||
pugixml-static
|
||||
pugixml
|
||||
)
|
||||
|
||||
target_sources(Tablegen
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
#include <Common/RGB.hpp>
|
||||
|
||||
#include <string>
|
||||
#include <vector>
|
||||
|
||||
namespace Tablegen
|
||||
{
|
||||
|
@ -48,6 +49,7 @@ namespace Tablegen
|
|||
std::size_t CharactersPerRow;
|
||||
std::string ImageFormat;
|
||||
std::string AnimationFormat;
|
||||
std::vector<CharacterInfo> Characters;
|
||||
|
||||
static Settings Default();
|
||||
};
|
||||
|
|
|
@ -8,21 +8,17 @@
|
|||
#endif
|
||||
|
||||
#include <string>
|
||||
#include <vector>
|
||||
|
||||
namespace Tablegen
|
||||
{
|
||||
std::string GeneratePage(std::vector<CharacterInfo> characters,
|
||||
const Settings& settings = Settings::Default());
|
||||
std::string GeneratePage(const Settings& settings = Settings::Default());
|
||||
|
||||
void GeneratePage(const std::string& path, std::vector<CharacterInfo> characters,
|
||||
const Settings& settings = Settings::Default());
|
||||
void GeneratePage(const std::string& path, const Settings& settings = Settings::Default());
|
||||
|
||||
# ifdef TABLEGEN_EXPOSE_XML
|
||||
void GenerateAsChild(pugi::xml_node& node, std::vector<CharacterInfo> characters,
|
||||
const Settings& settings = Settings::Default());
|
||||
void GenerateAsChild(pugi::xml_node& node, const Settings& settings = Settings::Default());
|
||||
|
||||
pugi::xml_document GenerateDocument(std::vector<CharacterInfo> characters, const Settings& settings = Settings::Default());
|
||||
pugi::xml_document GenerateDocument(const Settings& settings = Settings::Default());
|
||||
# endif
|
||||
}
|
||||
|
||||
|
|
|
@ -32,6 +32,7 @@ namespace Tablegen
|
|||
.CharactersPerRow = 3,
|
||||
.ImageFormat = "https://3011.io/Assets/Images/Kanji/Static/{}.png",
|
||||
.AnimationFormat = "https://3011.io/Assets/Temp/{}.svg",
|
||||
.Characters = {},
|
||||
};
|
||||
}
|
||||
}
|
||||
|
|
|
@ -95,9 +95,9 @@ namespace Tablegen
|
|||
}
|
||||
}
|
||||
|
||||
std::string GeneratePage(std::vector<CharacterInfo> characters, const Settings& settings)
|
||||
std::string GeneratePage(const Settings& settings)
|
||||
{
|
||||
pugi::xml_document doc = GenerateDocument(characters, settings);
|
||||
pugi::xml_document doc = GenerateDocument(settings);
|
||||
|
||||
std::uint32_t formatOptions;
|
||||
formatOptions = pugi::format_indent | pugi::format_no_escapes | pugi::format_no_declaration;
|
||||
|
@ -106,18 +106,16 @@ namespace Tablegen
|
|||
return str.str();
|
||||
}
|
||||
|
||||
void GeneratePage(const std::string& path, std::vector<CharacterInfo> characters,
|
||||
const Settings& settings)
|
||||
void GeneratePage(const std::string& path, const Settings& settings)
|
||||
{
|
||||
pugi::xml_document doc = GenerateDocument(characters, settings);
|
||||
pugi::xml_document doc = GenerateDocument(settings);
|
||||
|
||||
std::uint32_t formatOptions;
|
||||
formatOptions = pugi::format_indent | pugi::format_no_escapes | pugi::format_no_declaration;
|
||||
doc.save_file("test.html", " ", formatOptions);
|
||||
}
|
||||
|
||||
void GenerateAsChild(pugi::xml_node& node, std::vector<CharacterInfo> characters,
|
||||
const Settings& settings)
|
||||
void GenerateAsChild(pugi::xml_node& node, const Settings& settings)
|
||||
{
|
||||
pugi::xml_node tableRoot = node;
|
||||
|
||||
|
@ -153,7 +151,7 @@ namespace Tablegen
|
|||
std::string tagIndent((indentLevel > 0 ? indentLevel - 1 : 0) * 4, ' ');
|
||||
|
||||
pugi::xml_node tableBody = table.append_child("tbody");
|
||||
for (pugi::xml_node row; const auto& [i, character] : vw::enumerate(characters)) {
|
||||
for (pugi::xml_node row; const auto& [i, character] : vw::enumerate(settings.Characters)) {
|
||||
////////////////////////////////////////////////////////////////////
|
||||
// HTML
|
||||
////////////////////////////////////////////////////////////////////
|
||||
|
@ -203,11 +201,10 @@ namespace Tablegen
|
|||
script.append_child(pugi::node_pcdata).set_value(Script(indent, tagIndent, buttons));
|
||||
}
|
||||
|
||||
pugi::xml_document GenerateDocument(std::vector<CharacterInfo> characters,
|
||||
const Settings& settings)
|
||||
pugi::xml_document GenerateDocument(const Settings& settings)
|
||||
{
|
||||
pugi::xml_document doc;
|
||||
GenerateAsChild(doc, characters, settings);
|
||||
GenerateAsChild(doc);
|
||||
return doc;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue