ZT/sources/GuiElements/EthConnWidget.cpp

80 lines
2.6 KiB
C++

/*******************************************************************************
* *
* Société de Transports de Montréal. *
* 2013 *
* *
* Projet Zones Tests *
* *
* *
* *
*******************************************************************************/
/*
Description:
Affiche un bitmap d'une prise verte lorsque la connexion est etablie ou
rouge lorsque la connexion est rompue.
*/
/* ************************************************************************** */
/* Revision:
### 20131024 JFM
Verision d'origine.
### YYYYMMDD Description du besoin ou du bug
Description du changement.
*/
#include "EthConnWidget.h"
#include <QFontMetrics>
CEthConnWidget::CEthConnWidget(QString Label,QGraphicsItem *Parent)
{
setParentItem(Parent);
mLabel = new QGraphicsTextItem(this);
mEthOnPixmap = new QGraphicsPixmapItem(this);
mEthONImage.load("./Images/connexion_vert.png");
mEthOffPixmap = new QGraphicsPixmapItem(this);
mEthOFFImage.load("./Images/connexion_rouge.png");
mLabel->setPlainText(Label);
mLabel->adjustSize();
EthOFF();
resize(25,25);
}
void CEthConnWidget::resizeEvent(QGraphicsSceneResizeEvent *event)
{
Q_UNUSED(event)
mEthOnPixmap->setPixmap(QPixmap().fromImage(mEthONImage).scaled(boundingRect().width(),boundingRect().height()));
mEthOffPixmap->setPixmap(QPixmap().fromImage(mEthOFFImage).scaled(boundingRect().width(),boundingRect().height()));
//mLabel->setPos((boundingRect().width()/2) - ((QFontMetrics(mLabel->font()).width(mLabel->toPlainText())/2)),boundingRect().height()-10);
mLabel->setPos((boundingRect().width()/2) - (mLabel->boundingRect().width()/2),mEthOnPixmap->boundingRect().bottom()-9);
}
void CEthConnWidget::EthOFF()
{
mEthOnPixmap->hide();
mEthOffPixmap->show();
}
void CEthConnWidget::EthON()
{
mEthOnPixmap->show();
mEthOffPixmap->hide();
}
void CEthConnWidget::SetEth(bool ON)
{
if(ON == true)
EthON();
else
EthOFF();
}