EvalSpinBox new "calculationVisible" property

This commit is contained in:
2020-11-11 22:29:08 +03:00
parent 925437f809
commit 649ec22a11
3 changed files with 14 additions and 3 deletions

View File

@@ -3,7 +3,7 @@ cmake_policy(SET CMP0017 NEW) # need include() with .cmake
project(qad)
set(qad_MAJOR 1)
set(qad_MINOR 14)
set(qad_REVISION 2)
set(qad_REVISION 3)
set(qad_SUFFIX )
set(qad_COMPANY SHS)
set(qad_DOMAIN org.SHS)

View File

@@ -30,6 +30,7 @@ EvalSpinBox::EvalSpinBox(QWidget * parent): QAbstractSpinBox(parent) {
cw->setToolTip(tr("Clear"));
cw->hide();
cw_visible = false;
calc_visible = true;
//lineEdit()->setStyleSheet("color: darkgreen;");
//lineEdit()->setText(eval.expression() + " -> " + QString::number(value(), 'G', 10));
cw->installEventFilter(this);
@@ -277,7 +278,8 @@ void EvalSpinBox::focusOutEvent(QFocusEvent * event) {
label->setText("<html><head/><body><p><span style=\"color:#005500;\">-&gt; " + QString::number(value(), 'G', 10) + "</span></p></body></html>");
else
label->setText("");
label->show();
if (calc_visible)
label->show();
lineEdit()->blockSignals(true);
if (!eval->isCorrect()) lineEdit()->setStyleSheet("color: darkred;");
else status->hide();
@@ -338,3 +340,9 @@ void EvalSpinBox::setClearButtonVisible(bool visible) {
cw->setVisible((eval->expression() != dt || (dt.isEmpty() && eval->expression() == "0")) && cw_visible);
resizeIcons();
}
void EvalSpinBox::setCalculationVisible(bool visible) {
calc_visible = visible;
setExpression_();
}

View File

@@ -36,6 +36,7 @@ class QAD_WIDGETS_EXPORT EvalSpinBox: public QAbstractSpinBox
Q_PROPERTY(QString expression READ expression WRITE setExpression USER true)
Q_PROPERTY(QString defaultText READ defaultText WRITE setDefaultText)
Q_PROPERTY(bool clearButtonVisible READ isClearButtonVisible WRITE setClearButtonVisible)
Q_PROPERTY(bool calculationVisible READ isCalculationVisible WRITE setCalculationVisible)
Q_PROPERTY(int precision READ precision WRITE setPrecision)
public:
@@ -46,6 +47,7 @@ public:
const QString & expression() const;
const QString & defaultText() const {return dt;}
bool isClearButtonVisible() const {return cw_visible;}
bool isCalculationVisible() const {return calc_visible;}
bool isCleared() const;
int precision() const {return precision_;}
@@ -73,7 +75,7 @@ protected:
QImage icon;
QImage clear_im;
QString dt;
bool cw_visible;
bool cw_visible, calc_visible;
int precision_;
private:
@@ -94,6 +96,7 @@ public slots:
void setValue(double val);
void setDefaultText(const QString & t);
void setClearButtonVisible(bool visible);
void setCalculationVisible(bool visible);
void setPrecision(int precision) {precision_ = precision;}
signals: