| 26 | } |
| 27 | void VarViewUi::LoadLanguage() |
| 28 | { |
| 29 | std::call_once(lang_once, [this] { |
| 30 | lang_save_t(ui.title_label); |
| 31 | }); |
| 32 | lang_load_t(ui.title_label); |
| 33 | if (!isHidden()) TableUpdate(); |
| 34 | } |
| 35 | |
| 36 | void VarViewUi::TableUpdate(QTableWidget* table, const QiVarMap varMap) |
| 37 | { |
| 38 | updating = true; |
| 39 | table->clearContents(); |
| 40 | table->setRowCount(varMap.size()); |
| 41 | auto iter = varMap.begin(); |
| 42 | for (size_t i = 0; i < varMap.size(); i++, iter++) |
| 43 | { |
| 44 | const QString& name = ((*iter).first).c_str(); |
| 45 | const QiVar& var = (*iter).second; |
| 46 | |
| 47 | QColor color; |
| 48 | switch (var.type()) |
| 49 | { |
| 50 | case QiVar::t_nul: color = QColor(0, 0, 0); break; |
| 51 | case QiVar::t_int: color = QColor(0, 127, 0); break; |
| 52 | case QiVar::t_num: color = QColor(0, 192, 0); break; |
| 53 | case QiVar::t_str: color = QColor(255, 127, 0); break; |
| 54 | case QiVar::t_ptr: color = QColor(255, 0, 0); break; |
| 55 | case QiVar::t_bool: color = QColor(0, 127, 192); break; |
| 56 | } |
| 57 | |
| 58 | QTableWidgetItem* item = new QTableWidgetItem(name); |
| 59 | item->setForeground(color); |
| 60 | item->setTextAlignment(Qt::AlignHCenter | Qt::AlignVCenter); |
| 61 | table->setItem(i, tableColumn_name, item); |
| 62 | |
| 63 | |
| 64 | item = new QTableWidgetItem(QString::fromStdString(var.type_name())); |
| 65 | item->setForeground(color); |
| 66 | item->setTextAlignment(Qt::AlignHCenter | Qt::AlignVCenter); |
| 67 | table->setItem(i, tableColumn_type, item); |
| 68 | |
| 69 | item = new QTableWidgetItem(QString::fromStdString(var.toString())); |
| 70 | item->setForeground(color); |
nothing calls this directly
no test coverage detected