19 #include "ui_elementpropertieseditorwidget.h" 22 #include <QItemDelegate> 36 QWidget*
createEditor(QWidget *parent,
const QStyleOptionViewItem &option,
const QModelIndex &index)
const 38 if(index.column() == 1)
40 return QItemDelegate::createEditor(parent, option, index);
57 m_basic_type(basic_type),
58 m_kind_info (kind_info),
59 m_elmt_info (elmt_info)
81 ui->m_base_type_cb->setCurrentIndex(
ui->m_base_type_cb->findData(QVariant(
m_basic_type)));
85 ui->m_state_cb->setCurrentIndex(
ui->m_state_cb->findData(
m_kind_info[
"state"].toString()));
86 ui->m_type_cb->setCurrentIndex (
ui->m_type_cb->findData(
m_kind_info[
"type"].toString()));
90 ui->m_master_type_cb->setCurrentIndex(
ui->m_master_type_cb->findData (
m_kind_info[
"type"]));
102 ui->m_base_type_cb->addItem (
tr(
"Simple"), QVariant(
"simple"));
103 ui->m_base_type_cb->addItem (
tr(
"Maître"), QVariant(
"master"));
104 ui->m_base_type_cb->addItem (
tr(
"Esclave"), QVariant(
"slave"));
105 ui->m_base_type_cb->addItem (
tr(
"Renvoi de folio suivant"), QVariant(
"next_report"));
106 ui->m_base_type_cb->addItem (
tr(
"Renvoi de folio précédent"), QVariant(
"previous_report"));
107 ui->m_base_type_cb->addItem (
tr(
"Bornier"), QVariant(
"terminal"));
110 ui->m_state_cb->addItem(
tr(
"Normalement ouvert"),QVariant(
"NO"));
111 ui->m_state_cb->addItem(
tr(
"Normalement fermé"), QVariant(
"NC"));
112 ui->m_state_cb->addItem(
tr(
"Inverseur"), QVariant(
"SW"));
113 ui->m_type_cb->addItem(
tr(
"Simple"), QVariant(
"simple"));
114 ui->m_type_cb->addItem(
tr(
"Puissance"), QVariant(
"power"));
115 ui->m_type_cb->addItem(
tr(
"Temporisé travail"), QVariant(
"delayOn"));
116 ui->m_type_cb->addItem(
tr(
"Temporisé repos"), QVariant(
"delayOff"));
117 ui->m_type_cb->addItem(
tr(
"Temporisé travail & repos"), QVariant(
"delayOnOff"));
120 ui->m_master_type_cb->addItem(
tr(
"Bobine"), QVariant(
"coil"));
121 ui->m_master_type_cb->addItem(
tr(
"Organe de protection"), QVariant(
"protection"));
122 ui->m_master_type_cb->addItem(
tr(
"Commutateur / bouton"), QVariant(
"commutator"));
127 ui->m_tree->header()->resizeSection(0, 150);
133 QString type =
ui->m_base_type_cb->itemData(
ui->m_base_type_cb->currentIndex()).toString();
135 if (type ==
"master")
136 ui->m_tree->setEnabled(
true);
137 else if (type ==
"slave")
138 ui->m_tree->setDisabled(
true);
139 else if (type ==
"simple")
140 ui->m_tree->setEnabled(
true);
141 else if (type ==
"next_report")
142 ui->m_tree->setDisabled(
true);
143 else if (type ==
"previous_report")
144 ui->m_tree->setDisabled(
true);
145 else if (type ==
"terminal")
146 ui->m_tree->setEnabled(
true);
155 QStringList keys{
"label",
"plant",
"comment",
"description",
"designation",
"manufacturer",
"manufacturer-reference",
"supplier",
"quantity",
"unity",
"machine-manufacturer-reference"};
157 for(
const QString& key : keys)
159 QTreeWidgetItem *qtwi =
new QTreeWidgetItem(
ui->m_tree);
160 qtwi->setFlags(Qt::ItemIsEnabled | Qt::ItemIsEditable);
162 qtwi->setData(0, Qt::UserRole, key);
173 m_basic_type =
ui -> m_base_type_cb -> itemData(
ui -> m_base_type_cb -> currentIndex()).toString();
183 for (QTreeWidgetItem *qtwi :
ui->m_tree->invisibleRootItem()->takeChildren())
185 QString txt = qtwi->text(1);
202 bool slave = false , master =
false;
204 if (
ui->m_base_type_cb->itemData(index).toString() ==
"slave") slave =
true;
205 else if (
ui->m_base_type_cb->itemData(index).toString() ==
"master") master =
true;
207 ui->m_slave_gb->setVisible(slave);
208 ui->m_master_gb->setVisible(master);
QVariant value(const QString &key) const
bool addValue(const QString &, const QVariant &, bool show=true)
QWidget * createEditor(QWidget *parent, const QStyleOptionViewItem &option, const QModelIndex &index) const
The EditorDelegate class This delegate is only use for disable the edition of the first column of the...
EditorDelegate(QObject *parent)
static QString elementTranslatedInfoKey(const QString &)
ElementsProperties::translatedInfo Return the translated information key given by If don't match...