small changes
This commit is contained in:
@@ -3,7 +3,7 @@ cmake_policy(SET CMP0017 NEW) # need include() with .cmake
|
|||||||
cmake_policy(SET CMP0072 NEW) # FindOpenGL prefers GLVND by default
|
cmake_policy(SET CMP0072 NEW) # FindOpenGL prefers GLVND by default
|
||||||
project(QAD)
|
project(QAD)
|
||||||
set(QAD_MAJOR 2)
|
set(QAD_MAJOR 2)
|
||||||
set(QAD_MINOR 11)
|
set(QAD_MINOR 12)
|
||||||
set(QAD_REVISION 0)
|
set(QAD_REVISION 0)
|
||||||
set(QAD_SUFFIX )
|
set(QAD_SUFFIX )
|
||||||
set(QAD_COMPANY SHS)
|
set(QAD_COMPANY SHS)
|
||||||
|
|||||||
@@ -94,6 +94,11 @@ void PIValueTreeEdit::retranslate() {
|
|||||||
for (const auto & i: label_labels) {
|
for (const auto & i: label_labels) {
|
||||||
i.second->setText(PIVariantEditorBase::vtTr(i.first));
|
i.second->setText(PIVariantEditorBase::vtTr(i.first));
|
||||||
}
|
}
|
||||||
|
if (tab_widget) {
|
||||||
|
for (int i = 0; i < tab_widget->count(); ++i) {
|
||||||
|
tab_widget->setTabText(i, PIVariantEditorBase::vtTr(Q2PIString(tab_widget->tabBar()->tabData(i).toString())));
|
||||||
|
}
|
||||||
|
}
|
||||||
grid->retranslate();
|
grid->retranslate();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -345,7 +350,7 @@ PIValueTreeEdit * PIValueTreeEdit::addTreeEdit(const PIValueTree & vt) {
|
|||||||
rp << vt.name();
|
rp << vt.name();
|
||||||
ve->root_path = rp;
|
ve->root_path = rp;
|
||||||
ve->parent_tree = this;
|
ve->parent_tree = this;
|
||||||
ve->setGrouping((Grouping)vt.attribute(Attribute::grouping, Parent).toInt());
|
ve->setGrouping((Grouping)vt.attribute(Attribute::grouping, Parent).toEnum().selectedValue());
|
||||||
ve->setFullEditMode(is_full_edit);
|
ve->setFullEditMode(is_full_edit);
|
||||||
ve->setValue(vt);
|
ve->setValue(vt);
|
||||||
switch (real_grouping) {
|
switch (real_grouping) {
|
||||||
|
|||||||
@@ -21,6 +21,7 @@ REGISTER_PIVARIANTEDITOR(uint, PIVariantEditors::Int);
|
|||||||
REGISTER_PIVARIANTEDITOR(float, PIVariantEditors::Double);
|
REGISTER_PIVARIANTEDITOR(float, PIVariantEditors::Double);
|
||||||
REGISTER_PIVARIANTEDITOR(double, PIVariantEditors::Double);
|
REGISTER_PIVARIANTEDITOR(double, PIVariantEditors::Double);
|
||||||
REGISTER_PIVARIANTEDITOR(PIString, PIVariantEditors::String);
|
REGISTER_PIVARIANTEDITOR(PIString, PIVariantEditors::String);
|
||||||
|
REGISTER_PIVARIANTEDITOR(PIStringList, PIVariantEditors::StringList);
|
||||||
REGISTER_PIVARIANTEDITOR(PITime, PIVariantEditors::Time);
|
REGISTER_PIVARIANTEDITOR(PITime, PIVariantEditors::Time);
|
||||||
REGISTER_PIVARIANTEDITOR(PIDate, PIVariantEditors::Date);
|
REGISTER_PIVARIANTEDITOR(PIDate, PIVariantEditors::Date);
|
||||||
REGISTER_PIVARIANTEDITOR(PIDateTime, PIVariantEditors::DateTime);
|
REGISTER_PIVARIANTEDITOR(PIDateTime, PIVariantEditors::DateTime);
|
||||||
@@ -275,6 +276,92 @@ void PIVariantEditors::String::applyAttributes(const PIVariantMap & a) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// PIVariantEditors::StringList
|
||||||
|
|
||||||
|
PIVariantEditors::StringList::StringList() {
|
||||||
|
combo = new EComboBox(this);
|
||||||
|
combo->setEditable(true);
|
||||||
|
combo->setLineEdit(new CLineEdit);
|
||||||
|
combo->setInsertPolicy(QComboBox::NoInsert);
|
||||||
|
layout()->setContentsMargins(0, 0, 0, 0);
|
||||||
|
layout()->addWidget(combo);
|
||||||
|
auto newButton = [this](QString icon, QString tooltip) {
|
||||||
|
auto * b = new QToolButton(this);
|
||||||
|
b->setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed);
|
||||||
|
b->setIcon(QIcon(icon));
|
||||||
|
b->setToolTip(tooltip);
|
||||||
|
layout()->addWidget(b);
|
||||||
|
return b;
|
||||||
|
};
|
||||||
|
butt_apply = newButton(":/icons/list-edit-apply.png", tr("Apply"));
|
||||||
|
butt_add = newButton(":/icons/list-add.png", tr("Add"));
|
||||||
|
butt_del = newButton(":/icons/list-remove.png", tr("Remove"));
|
||||||
|
butt_clear = newButton(":/icons/edit-clear.png", tr("Clear"));
|
||||||
|
connect(combo->lineEdit(), SIGNAL(returnPressed()), butt_apply, SLOT(click()));
|
||||||
|
connect(butt_apply, &QToolButton::clicked, [this]() {
|
||||||
|
int ci = combo->currentIndex();
|
||||||
|
if (ci < 0) return;
|
||||||
|
combo->setItemText(ci, combo->currentText());
|
||||||
|
});
|
||||||
|
connect(butt_add, &QToolButton::clicked, [this]() { combo->addItem(combo->currentText()); });
|
||||||
|
connect(butt_del, &QToolButton::clicked, [this]() {
|
||||||
|
if (combo->currentIndex() < 0) return;
|
||||||
|
combo->removeItem(combo->currentIndex());
|
||||||
|
});
|
||||||
|
connect(butt_clear, &QToolButton::clicked, [this]() {
|
||||||
|
if (QMessageBox::question(nullptr, tr("Clear All"), tr("Clear All?"), QMessageBox::Ok, QMessageBox::Cancel) == QMessageBox::Ok)
|
||||||
|
setValue(PIStringList());
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void PIVariantEditors::StringList::setValue(const PIVariant & v) {
|
||||||
|
int pi = combo->currentIndex();
|
||||||
|
combo->clear();
|
||||||
|
combo->addItems(PI2QStringList(v.toStringList()));
|
||||||
|
if (combo->count() > 0) {
|
||||||
|
if (pi < combo->count() && pi >= 0) {
|
||||||
|
combo->setCurrentIndex(pi);
|
||||||
|
} else {
|
||||||
|
combo->setCurrentIndex(0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
PIVariant PIVariantEditors::StringList::value() const {
|
||||||
|
QStringList l;
|
||||||
|
for (int i = 0; i < combo->count(); ++i)
|
||||||
|
l << combo->itemText(i);
|
||||||
|
return Q2PIStringList(l);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
PIVariantMap PIVariantEditors::StringList::attributes() const {
|
||||||
|
return {
|
||||||
|
{Attribute::readOnly, !combo->isEditable()},
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void PIVariantEditors::StringList::applyAttributes(const PIVariantMap & a) {
|
||||||
|
bool ro = a.value(Attribute::readOnly, !combo->isEditable()).toBool();
|
||||||
|
combo->setEditable(!ro);
|
||||||
|
butt_apply->setEnabled(!ro);
|
||||||
|
butt_add->setEnabled(!ro);
|
||||||
|
butt_del->setEnabled(!ro);
|
||||||
|
butt_clear->setEnabled(!ro);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void PIVariantEditors::StringList::retranslate() {
|
||||||
|
butt_apply->setToolTip(tr("Apply"));
|
||||||
|
butt_add->setToolTip(tr("Add"));
|
||||||
|
butt_del->setToolTip(tr("Remove"));
|
||||||
|
butt_clear->setToolTip(tr("Clear"));
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
// PIVariantEditors::Color
|
// PIVariantEditors::Color
|
||||||
|
|
||||||
PIVariantMap PIVariantEditors::Color::attributes() const {
|
PIVariantMap PIVariantEditors::Color::attributes() const {
|
||||||
|
|||||||
@@ -31,6 +31,7 @@
|
|||||||
#include <QTimeEdit>
|
#include <QTimeEdit>
|
||||||
#include <clineedit.h>
|
#include <clineedit.h>
|
||||||
#include <colorbutton.h>
|
#include <colorbutton.h>
|
||||||
|
#include <ecombobox.h>
|
||||||
#include <piqt.h>
|
#include <piqt.h>
|
||||||
|
|
||||||
namespace PIVariantEditors {
|
namespace PIVariantEditors {
|
||||||
@@ -126,6 +127,23 @@ private:
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
class QAD_PIQT_UTILS_EXPORT StringList: public PIVariantEditorBase {
|
||||||
|
Q_OBJECT
|
||||||
|
|
||||||
|
public:
|
||||||
|
StringList();
|
||||||
|
void setValue(const PIVariant & v) override;
|
||||||
|
PIVariant value() const override;
|
||||||
|
PIVariantMap attributes() const override;
|
||||||
|
|
||||||
|
private:
|
||||||
|
void applyAttributes(const PIVariantMap & a) override;
|
||||||
|
void retranslate() override;
|
||||||
|
EComboBox * combo;
|
||||||
|
QToolButton *butt_apply, *butt_add, *butt_del, *butt_clear;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
class QAD_PIQT_UTILS_EXPORT Color: public PIVariantEditorBase {
|
class QAD_PIQT_UTILS_EXPORT Color: public PIVariantEditorBase {
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
|
|
||||||
|
|||||||
@@ -3,6 +3,7 @@
|
|||||||
<file>../../icons/configure.png</file>
|
<file>../../icons/configure.png</file>
|
||||||
<file>../../icons/border-line.png</file>
|
<file>../../icons/border-line.png</file>
|
||||||
<file>../../icons/list-add.png</file>
|
<file>../../icons/list-add.png</file>
|
||||||
|
<file>../../icons/list-remove.png</file>
|
||||||
<file>../../icons/code-variable.png</file>
|
<file>../../icons/code-variable.png</file>
|
||||||
<file>../../icons/code-struct.png</file>
|
<file>../../icons/code-struct.png</file>
|
||||||
<file>../../icons/code-union.png</file>
|
<file>../../icons/code-union.png</file>
|
||||||
|
|||||||
@@ -40,7 +40,7 @@ QString ScrollSpinBoxPlugin::group() const {
|
|||||||
|
|
||||||
|
|
||||||
QIcon ScrollSpinBoxPlugin::icon() const {
|
QIcon ScrollSpinBoxPlugin::icon() const {
|
||||||
return QIcon();
|
return QIcon(":/icons/scroll_spin.png");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user