19 #include "ui_linksingleelementwidget.h" 26 #include <QTreeWidgetItem> 42 ui->m_tree_widget->setContextMenuPolicy(Qt::CustomContextMenu);
60 QHeaderView *qhv =
ui->m_tree_widget->header();
61 qhv->setContextMenuPolicy(Qt::CustomContextMenu);
65 QByteArray qba = qhv->saveState();
69 settings.setValue(
"link-element-widget/report-state", qba);
71 settings.setValue(
"link-element-widget/slave-state", qba);
90 m_element->linkedElements().first()->setHighlighted(
false);
146 m_element->diagram()->undoStack().push(undo);
182 return tr(
"Report de folio");
184 return tr(
"Référence croisée (esclave)");
220 QStringList search_list;
221 QStringList str_list;
223 QString formula = elmt->elementInformations()[
"formula"].toString();
224 if(!formula.isEmpty())
227 search_list << str_list.last();
231 str_list << elmt->elementInformations()[
"label"].toString();
232 if(!str_list.last().isEmpty())
233 search_list << str_list.last();
236 str_list << elmt->elementInformations()[
"comment"].toString();
237 if (!str_list.last().isEmpty())
238 search_list << str_list.last();
240 if (
Diagram *diag = elmt->diagram())
242 if (settings.value(
"genericpanel/folio",
false).toBool())
250 str_list << QString::number(diag->folioIndex() + 1);
252 str_list << diag->convertPosition(elmt->scenePos()).toString();
253 str_list << diag->title();
257 qDebug() <<
"In method void LinkSingleElementWidget::updateUi(), provided element must be in a diagram";
260 QTreeWidgetItem *qtwi =
new QTreeWidgetItem(
ui->m_tree_widget, str_list);
266 QVariant v = settings.value(
"link-element-widget/slave-state");
268 ui->m_tree_widget->header()->restoreState(v.toByteArray());
275 QStringList search_list;
276 QStringList str_list;
278 if (elmt->conductors().size())
282 if (!str_list.last().isEmpty())
283 search_list << str_list.last();
285 if (!str_list.last().isEmpty())
286 search_list << str_list.last();
288 if (!str_list.last().isEmpty())
289 search_list << str_list.last();
292 str_list <<
"" <<
"" <<
"";
294 if (
Diagram *diag = elmt->diagram())
296 if (settings.value(
"genericpanel/folio",
false).toBool())
304 str_list << QString::number(diag->folioIndex() + 1);
306 str_list << diag->convertPosition(elmt->scenePos()).toString();
307 str_list << diag->title();
311 qDebug() <<
"In method void LinkSingleElementWidget::updateUi(), provided element must be in a diagram";
314 QTreeWidgetItem *qtwi =
new QTreeWidgetItem(
ui->m_tree_widget, str_list);
320 QVariant v = settings.value(
"link-element-widget/report-state");
322 ui->m_tree_widget->header()->restoreState(v.toByteArray());
351 QList <Element *> elmt_list;
376 ui->m_search_field->clear();
377 if(
ui->m_search_field->completer())
378 delete ui->m_search_field->completer();
384 QCompleter *c =
new QCompleter(search,
ui->m_search_field);
385 c->setCaseSensitivity(Qt::CaseInsensitive);
386 ui->m_search_field->setCompleter(c);
397 while(
ui->m_tree_widget->topLevelItemCount())
399 QTreeWidgetItem *qtwi =
ui->m_tree_widget->takeTopLevelItem(0);
418 if (settings.value(
"genericpanel/folio",
false).toBool())
420 list <<
tr(
"Label") <<
tr(
"Commentaire") <<
tr(
"Label de folio") <<
tr(
"Position") <<
tr(
"Titre de folio");
424 list <<
tr(
"Label") <<
tr(
"Commentaire") <<
tr(
"N° de folio") <<
tr(
"Position") <<
tr(
"Titre de folio");
430 if (settings.value(
"genericpanel/folio",
false).toBool())
432 list <<
tr(
"N° de fil") <<
tr(
"Fonction") <<
tr(
"Tension / Protocole") <<
tr(
"Label de folio") <<
tr(
"Position") <<
tr(
"Titre de folio");
436 list <<
tr(
"N° de fil") <<
tr(
"Fonction") <<
tr(
"Tension / Protocole") <<
tr(
"N° de folio") <<
tr(
"Position") <<
tr(
"Titre de folio");
440 ui->m_tree_widget->setHeaderLabels(list);
452 QTimer::singleShot(10,
this, SLOT(
updateUi()));
482 QBrush brush(Qt::white, Qt::NoBrush);
483 for(
int i=0 ; i<6 ; i++)
489 for (
int i=0 ; i<6 ; i++)
505 ui->m_unlink_pb->hide();
506 ui->m_show_linked_pb->hide();
507 ui->m_show_this_pb->hide();
508 ui->m_search_field->show();
518 ui->m_unlink_pb->show();
519 ui->m_show_linked_pb->show();
520 ui->m_show_this_pb->show();
521 ui->m_search_field->hide();
573 point.ry()+=
ui->m_tree_widget->header()->height();
574 point =
ui->m_tree_widget->mapToGlobal(point);
578 if (
ui->m_tree_widget->currentItem())
614 qtwi->setHidden(!arg1.isEmpty());
616 QList <QTreeWidgetItem *> qtwi_list;
622 if(str.contains(arg1, Qt::CaseInsensitive))
631 foreach(QTreeWidgetItem *qtwi, qtwi_list)
632 qtwi->setHidden(
false);
static QString formulaToLabel(QString formula, sequentialNumbers &seqStruct, Diagram *diagram, const Element *elmt=nullptr)
AssignVariables::formulaToLabel Return the with variable assigned (ready to be displayed) ...
Diagram * diagram() const
QetGraphicsItem::diagram return the diagram of this item.
virtual void setHighlighted(bool)
void linkedElementChanged()
void unlinkAll()
LinkElementCommand::unlinkAll Unlink all element of the edited element.
The LinkElementCommand class This undo class manage link between elements. In the same instance of th...
QList< Element * > freeElement(const int filter) const
ElementProvider::FreeElement Search and return the asked element corresponding with the given filter ...
void setLink(const QList< Element *> &element_list)
LinkElementCommand::setLink Replace all linked elements of edited element by elements stored in This...
QString m_tension_protocol
void diagramRemoved(QETProject *, Diagram *)