#ifndef MAINWIDGET_H #define MAINWIDGET_H #include #include #include #include "src/xml_opr.h" #include "src/config.h" QT_BEGIN_NAMESPACE namespace Ui { class MainWidget; } QT_END_NAMESPACE class MainWidget : public QWidget { Q_OBJECT public: MainWidget(QWidget* parent = nullptr); ~MainWidget(); public: void set_work_exe(char* path); void generate_table_widget(); void push_content(const std::vector& eles); private: void read(); void search(); void item_changed_handle(QTableWidgetItem* item); void save(); void copy_select_line(); void del_select_line(); element* get_current_select_key(); private: element* get_element_bykey(const QString& key); private: Ui::MainWidget* ui; ConfigIni ini_{}; CXmlOpr xml_{}; std::string exe_path_{}; QTableWidget* tab_widget_{}; std::vector vec_{}; std::vector current_{}; std::vector keys_{}; std::vector width_{}; bool auto_add_{false}; }; #endif // MAINWIDGET_H