2024-05-15 08:34:54 +08:00
|
|
|
#ifndef MAINWIDGET_H
|
|
|
|
#define MAINWIDGET_H
|
|
|
|
|
|
|
|
#include <QWidget>
|
2024-05-15 10:59:43 +08:00
|
|
|
#include <QTableWidget>
|
2024-05-15 13:17:24 +08:00
|
|
|
#include <QMessageBox>
|
2024-05-15 10:59:43 +08:00
|
|
|
#include "src/xml_opr.h"
|
|
|
|
#include "src/config.h"
|
2024-05-15 08:34:54 +08:00
|
|
|
|
|
|
|
QT_BEGIN_NAMESPACE
|
|
|
|
namespace Ui {
|
|
|
|
class MainWidget;
|
|
|
|
}
|
|
|
|
QT_END_NAMESPACE
|
|
|
|
|
|
|
|
class MainWidget : public QWidget
|
|
|
|
{
|
|
|
|
Q_OBJECT
|
|
|
|
|
|
|
|
public:
|
2024-05-15 10:59:43 +08:00
|
|
|
MainWidget(QWidget* parent = nullptr);
|
2024-05-15 08:34:54 +08:00
|
|
|
~MainWidget();
|
|
|
|
|
2024-05-15 10:59:43 +08:00
|
|
|
public:
|
|
|
|
void set_work_exe(char* path);
|
|
|
|
void generate_table_widget();
|
|
|
|
void push_content(const std::vector<tinyxml2::XMLElement*>& eles);
|
|
|
|
|
|
|
|
private:
|
|
|
|
void read();
|
|
|
|
void search();
|
2024-05-15 13:17:24 +08:00
|
|
|
void item_changed_handle(QTableWidgetItem *item);
|
|
|
|
void save();
|
2024-05-15 08:34:54 +08:00
|
|
|
private:
|
2024-05-15 10:59:43 +08:00
|
|
|
Ui::MainWidget* ui;
|
|
|
|
ConfigIni ini_{};
|
|
|
|
CXmlOpr xml_{};
|
|
|
|
std::string exe_path_{};
|
|
|
|
QTableWidget* tab_widget_{};
|
|
|
|
std::vector<tinyxml2::XMLElement*> vec_{};
|
2024-05-15 13:17:24 +08:00
|
|
|
std::vector<tinyxml2::XMLElement*> current_{};
|
2024-05-15 10:59:43 +08:00
|
|
|
std::vector<std::string> keys_{};
|
|
|
|
std::vector<int> width_{};
|
2024-05-15 13:17:24 +08:00
|
|
|
bool auto_add_{false};
|
2024-05-15 08:34:54 +08:00
|
|
|
};
|
2024-05-15 10:59:43 +08:00
|
|
|
#endif // MAINWIDGET_H
|