#pragma once #include #include #include "File_Tool2.h" #include "Message.h" #include "Text_Shower.h" #include "Value_Select.h" #include #include #include #include #include #include #include "global.h" #include "Core/Base/File_Helper.h" #include "Core/Base/JSON.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