Commit d39f344d authored by Michael Carpenter's avatar Michael Carpenter

Changes go UASQuickView handles resizing better, and doesn't "clip" text when...

Changes go UASQuickView handles resizing better, and doesn't "clip" text when the window is too small.
parent 051d56a9
...@@ -210,32 +210,6 @@ void UASQuickView::setActiveUAS(UASInterface* uas) ...@@ -210,32 +210,6 @@ void UASQuickView::setActiveUAS(UASInterface* uas)
} }
this->uas = uas; this->uas = uas;
connect(uas,SIGNAL(valueChanged(int,QString,QString,QVariant,quint64)),this,SLOT(valueChanged(int,QString,QString,QVariant,quint64))); connect(uas,SIGNAL(valueChanged(int,QString,QString,QVariant,quint64)),this,SLOT(valueChanged(int,QString,QString,QVariant,quint64)));
qDebug() << "UASInfoWidget property count:" << uas->metaObject()->propertyCount();
for (int i=0;i<uas->metaObject()->propertyCount();i++)
{
if (uas->metaObject()->property(i).hasNotifySignal())
{
qDebug() << "Property:" << i << uas->metaObject()->property(i).name();
uasPropertyValueMap[uas->metaObject()->property(i).name()] = 0;
if (!uasPropertyToLabelMap.contains(uas->metaObject()->property(i).name()))
{
QAction *action = new QAction(QString(uas->metaObject()->property(i).name()),this);
action->setCheckable(true);
connect(action,SIGNAL(toggled(bool)),this,SLOT(actionTriggered(bool)));
this->addAction(action);
}
qDebug() << "Signature:" << uas->metaObject()->property(i).notifySignal().signature();
int val = this->metaObject()->indexOfMethod("valChanged(double,QString)");
if (val != -1)
{
if (!connect(uas,uas->metaObject()->property(i).notifySignal(),this,this->metaObject()->method(val)))
{
qDebug() << "Error connecting signal";
}
}
}
}
//connect(uas,SIGNAL()) //connect(uas,SIGNAL())
} }
void UASQuickView::addSource(MAVLinkDecoder *decoder) void UASQuickView::addSource(MAVLinkDecoder *decoder)
......
...@@ -21,7 +21,11 @@ ...@@ -21,7 +21,11 @@
</property> </property>
<layout class="QVBoxLayout" name="verticalLayout_2"> <layout class="QVBoxLayout" name="verticalLayout_2">
<item> <item>
<layout class="QVBoxLayout" name="verticalLayout"/> <layout class="QVBoxLayout" name="verticalLayout">
<property name="spacing">
<number>0</number>
</property>
</layout>
</item> </item>
</layout> </layout>
</widget> </widget>
......
...@@ -4,21 +4,39 @@ UASQuickViewTextItem::UASQuickViewTextItem(QWidget *parent) : UASQuickViewItem(p ...@@ -4,21 +4,39 @@ UASQuickViewTextItem::UASQuickViewTextItem(QWidget *parent) : UASQuickViewItem(p
{ {
QVBoxLayout *layout = new QVBoxLayout(); QVBoxLayout *layout = new QVBoxLayout();
this->setLayout(layout); this->setLayout(layout);
layout->setSpacing(0);
layout->setMargin(0);
titleLabel = new QLabel(this); titleLabel = new QLabel(this);
titleLabel->setAlignment(Qt::AlignHCenter); titleLabel->setAlignment(Qt::AlignHCenter);
this->layout()->addWidget(titleLabel); this->layout()->addWidget(titleLabel);
valueLabel = new QLabel(this); valueLabel = new QLabel(this);
valueLabel->setAlignment(Qt::AlignHCenter); valueLabel->setAlignment(Qt::AlignHCenter);
valueLabel->setText("<h1>0.00</h1>"); valueLabel->setText("0.00");
this->layout()->addWidget(valueLabel); this->layout()->addWidget(valueLabel);
layout->addSpacerItem(new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding)); layout->addSpacerItem(new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding));
QFont valuefont = valueLabel->font();
QFont titlefont = titleLabel->font();
valuefont.setPixelSize(this->height() / 2.0);
titlefont.setPixelSize(this->height() / 4.0);
valueLabel->setFont(valuefont);
titleLabel->setFont(titlefont);
} }
void UASQuickViewTextItem::setValue(double value) void UASQuickViewTextItem::setValue(double value)
{ {
valueLabel->setText("<h1>" + QString::number(value,'f',4) + "</h1>"); valueLabel->setText(QString::number(value,'f',4));
} }
void UASQuickViewTextItem::setTitle(QString title) void UASQuickViewTextItem::setTitle(QString title)
{ {
titleLabel->setText(title); titleLabel->setText(title);
} }
void UASQuickViewTextItem::resizeEvent(QResizeEvent *event)
{
QFont valuefont = valueLabel->font();
QFont titlefont = titleLabel->font();
valuefont.setPixelSize(this->height() / 2.0);
titlefont.setPixelSize(this->height() / 4.0);
valueLabel->setFont(valuefont);
titleLabel->setFont(titlefont);
update();
}
...@@ -9,6 +9,8 @@ public: ...@@ -9,6 +9,8 @@ public:
UASQuickViewTextItem(QWidget *parent=0); UASQuickViewTextItem(QWidget *parent=0);
void setValue(double value); void setValue(double value);
void setTitle(QString title); void setTitle(QString title);
protected:
void resizeEvent(QResizeEvent *event);
private: private:
QLabel *titleLabel; QLabel *titleLabel;
QLabel *valueLabel; QLabel *valueLabel;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment