Add the new element type : thumbnail

This type must be used for element who goal is to display a
thumbnail/front view of an element, notably used for cabinet contents
view and placement.
This commit is contained in:
joshua
2022-05-13 20:02:29 +02:00
parent 1f4dfdba3f
commit 021aea1d8b
5 changed files with 22 additions and 2 deletions

View File

@@ -122,6 +122,7 @@ void ElementPropertiesEditorWidget::setUpInterface()
ui->m_base_type_cb->addItem (tr("Renvoi de folio suivant"), ElementData::NextReport);
ui->m_base_type_cb->addItem (tr("Renvoi de folio précédent"), ElementData::PreviousReport);
ui->m_base_type_cb->addItem (tr("Bornier"), ElementData::Terminale);
ui->m_base_type_cb->addItem (tr("Vignette"), ElementData::Thumbnail);
// Slave option
ui->m_state_cb->addItem(tr("Normalement ouvert"), ElementData::NO);
@@ -179,6 +180,9 @@ void ElementPropertiesEditorWidget::updateTree()
case ElementData::Terminale:
ui->m_tree->setEnabled(true);
break;
default:
ui->m_tree->setDisabled(true);
break;
}
}

View File

@@ -292,6 +292,10 @@ bool ElementData::operator !=(const ElementData &data) const {
return !(*this == data);
}
QString ElementData::typeToString() const {
return typeToString(m_type);
}
QString ElementData::typeToString(ElementData::Type type)
{
switch (type) {
@@ -307,6 +311,8 @@ QString ElementData::typeToString(ElementData::Type type)
return QString("slave");
case ElementData::Terminale :
return QString("terminal");
case ElementData::Thumbnail:
return QStringLiteral("thumbnail");
default:
qDebug() << "ElementData::typeToString : type don't exist"
<< "return failsafe value 'simple'";
@@ -328,6 +334,8 @@ ElementData::Type ElementData::typeFromString(const QString &string)
return ElementData::Slave;
} else if (string == "terminal") {
return ElementData::Terminale;
} else if (string == QLatin1String("thumbnail")) {
return ElementData::Thumbnail;
}
//Return simple if nothing match

View File

@@ -40,7 +40,8 @@ class ElementData : public PropertiesInterface
AllReport = 6,
Master = 8,
Slave = 16,
Terminale = 32};
Terminale = 32,
Thumbnail = 64};
Q_ENUM(Type)
enum MasterType {
@@ -104,6 +105,7 @@ class ElementData : public PropertiesInterface
bool operator==(const ElementData &data) const;
bool operator!=(const ElementData &data) const;
QString typeToString() const;
static QString typeToString(ElementData::Type type);
static ElementData::Type typeFromString(const QString &string);

View File

@@ -1306,6 +1306,12 @@ void Element::initLink(QETProject *prj)
tmp_uuids_link.clear();
}
/**
* @brief Element::linkTypeToString
* \deprecated use instead ElementData::typeToString
* \todo remove this function
* @return
*/
QString Element::linkTypeToString() const
{
switch (m_link_type)

View File

@@ -363,7 +363,7 @@ QWidget *ElementPropertiesWidget::generalWidget()
if (folio_index != -1) {
description_string += QString(tr("Folio : %1\n")).arg(folio_index + 1);
}
description_string += QString(tr("Type : %1\n")).arg(m_element ->linkTypeToString());
description_string += QString(tr("Type : %1\n")).arg(m_element->elementData().typeToString());
description_string += QString(tr("Sous-type : %1\n")).arg(m_element ->kindInformations()["type"].toString());
description_string += QString(tr("Position : %1\n")).arg(m_diagram -> convertPosition(m_element -> scenePos()).toString());
description_string += QString(tr("Rotation : %1°\n")).arg(m_element.data()->rotation());