#pragma once #include #include #include #include #include #include #include #include #include "Core/Base/File_Helper.h" #include "Core/Base/JSON.h" #include "File_Tool2.h" #include "Message.h" #include "Text_Shower.h" #include "Value_Select.h" #include "global.h" namespace Psc { class File_Play_Widget : public QWidget, public Base_Cache { public: explicit File_Play_Widget(std::string_view id); void start(size_t chunk_size, std::chrono::milliseconds interval); struct Config { std::string log_path; Config(); Psc::JSON to_json(); void from_json(Psc::JSON* that_json); }; void save(); void save(Config& config); File_Tool2* path_select{}; QProgressBar* progress_bar{}; Text_Shower* speed_show{}; Speed_Statistics speed; File_Player file_player; QPushButton* confirm_button{}; QTimer* timer{}; }; class Test_File_Play_Widget : public QWidget { public: File_Play_Widget* file_play_widget{}; Value_Select_Simple* interval_select; Value_Select_Simple* chunk_select; QPushButton* start_button{}; Test_File_Play_Widget(); }; } // namespace Psc