WsParser_VS/WsNovelParser/htmlprint.h

61 lines
1.1 KiB
C
Raw Normal View History

2024-03-17 07:58:28 +00:00
#pragma once
#include <QList>
#include <QFileInfo>
#include <ast_gen.h>
#include <parse_novel.h>
class HtmlElement {
public:
explicit HtmlElement(const QString &href):href_store(href){}
virtual ~HtmlElement() = default;
virtual QString href() const{return href_store;}
private:
QString href_store;
};
class FragmentPage : public HtmlElement {
public:
explicit FragmentPage(const QString &name, const QString &href);
QString wholeText() const;
};
class StoryLinePage {
};
class HtmlPrint : public example_novel::FragmentOrdersCheck {
private:
QHash<QString, QString> node_address;
void volume_output();
void storyline_output();
/**
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD>.
*
* \param root <EFBFBD>ڴ<EFBFBD>ģ<EFBFBD>͸<EFBFBD><EFBFBD>ڵ<EFBFBD>
* \param frags_o Ŀ<EFBFBD><EFBFBD>Ŀ¼
*/
void fragment_summary(std::shared_ptr<const ast_gen::ElementAccess> root, const QDir& frags_o);
public:
/**
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD>С˵<EFBFBD>ڴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* index.html
* |<EFBFBD><EFBFBD><EFBFBD><EFBFBD>volumns
* | \<EFBFBD><EFBFBD><EFBFBD><EFBFBD>vol_xxx.html
* |<EFBFBD><EFBFBD><EFBFBD><EFBFBD>storyline
* | \<EFBFBD><EFBFBD><EFBFBD><EFBFBD>story_xxx.html
* \<EFBFBD><EFBFBD><EFBFBD><EFBFBD>fragments
* \<EFBFBD><EFBFBD><EFBFBD><EFBFBD>frag_xxxx.html
* \param out_directory <EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><EFBFBD>Ŀ¼
*/
void htmlOutput(std::shared_ptr<const ast_gen::ElementAccess> novel, const QDir &out_directory) const;
};