У меня есть собственный класс с именем A
, который в основном состоит из вектора типа B
, где B
- это закрытый класс внутри A
.
class A{
public:
explicit A(std::string name): name_{name} {}
void add_item(int i, double d, std::string s){
list_.emplace_back(i, d, s);
}
private:
class B{
public:
B(int i, double d, std::string s): i_{i}, d_{d}, s_{s} {}
private:
int i_;
double d_;
std::string s_;
}
std::string name_;
std::vector<B> list_;
}
Этот класс из другого проекта, который никоим образом не использует QT. Также невозможно включить некоторые заголовки QT в этот файл класса.
Моя цель - каким-то образом подключить объект типа A
к QTableView. Цель состоит в том, чтобы в QTableView было столько строк, сколько есть элементов в list
и 3 столбцах, где первый перечисляет значения целых чисел (i_
), а второй значения двойников (* 1013). *) и третье значения из строк (s_
).
Должна быть возможность отредактировать значения в QTreeView, и он должен автоматически добавить строку, если я вызову add_item()
.
Я не совсем уверен, как начать здесь. Я много использовал QTableViews, но только с QStandardItemModel.
Конечно, я мог бы просто использовать QStandardItemModel и проанализировать значения в этой модели, но тогда мне нужно будет каждый раз преобразовывать его обратно в класс A
, если я хочу использовать его в другой функции.
Буду признателен за любую помощь. Я уверен, что должен быть способ сделать это, но я не знаю, что искать. Если у вас есть полезная ссылка или ключевое слово для поиска в Google, дайте мне знать.