Files
BionxControl/bcdeviceview.cpp
2026-01-03 23:51:14 +01:00

88 lines
2.1 KiB
C++

/***************************************************************************
BionxControl
© 2025 -2026 christoph holzheuer
christoph.holzheuer@gmail.com
Using:
mhs_can_drv.c
© 2011 - 2023 by MHS-Elektronik GmbH & Co. KG, Germany
Klaus Demlehner, klaus@mhs-elektronik.de
@see www.mhs-elektronik.de
Based on Bionx data type descriptions from:
BigXionFlasher USB V 0.2.4 rev. 97
© 2011-2013 by Thomas Koenig <info@bigxionflasher.org>
@see www.bigxionflasher.org
Bionx Bike Info
© 2018 Thorsten Schmidt (tschmidt@ts-soft.de)
@see www.ts-soft.de
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 3 of the License, or
(at your option) any later version.
@see https://github.com/bikemike/bionx-bikeinfo
***************************************************************************/
#include <bcdeviceview.h>
#include <bcanimateddelegate.h>
BCDeviceView::BCDeviceView(QWidget *parent)
: QTableView(parent)
{
setModel( &_valueModel );
//resizeColumnsToContents();
//horizontalHeader()->setSectionResizeMode(QHeaderView::ResizeToContents);
// __fix! ziemlich wildes ge-pointere, hier
_itemDelegate = new BCAnimatedDelegate( _valueModel.getValueList(), this);
setItemDelegate( _itemDelegate );
}
void BCDeviceView::setDeviceID( BCDevice::ID deviceID )
{
_devideID = deviceID;
}
BCDevice::ID BCDeviceView::getDeviceID() const
{
return _devideID;
}
const BCValueList& BCDeviceView::getValueListX()
{
return _valueModel.getValueList();
}
// __FIX ist das ok so?
void BCDeviceView::onValueListReady( BCDevice::ID deviceID, BCValueList valueList )
{
qDebug() << " --- onValueListReady: " << deviceID << ": " << valueList.size();
if(_devideID == deviceID)
_valueModel.takeValueList( valueList );
}
void BCDeviceView::onValueUpdated(int index, BCValue::State state, const QString& newVisibleValue )
{
_valueModel.onValueUpdated( index, state, newVisibleValue);
_itemDelegate->onHighlightRow( index );
}