Rework itemdelegate, part I.
This commit is contained in:
@@ -30,7 +30,6 @@ SOURCES += \
|
|||||||
bcdelegate.cpp \
|
bcdelegate.cpp \
|
||||||
bcdevicepanel.cpp \
|
bcdevicepanel.cpp \
|
||||||
bclegacy.cpp \
|
bclegacy.cpp \
|
||||||
bctoolbutton.cpp \
|
|
||||||
bctransmitter.cpp \
|
bctransmitter.cpp \
|
||||||
bcvalue.cpp \
|
bcvalue.cpp \
|
||||||
bcvaluemodel.cpp \
|
bcvaluemodel.cpp \
|
||||||
@@ -49,7 +48,6 @@ HEADERS += \
|
|||||||
bcdelegate.h \
|
bcdelegate.h \
|
||||||
bcdevicepanel.h \
|
bcdevicepanel.h \
|
||||||
bcmainwindow.h \
|
bcmainwindow.h \
|
||||||
bctoolbutton.h \
|
|
||||||
bctransmitter.h \
|
bctransmitter.h \
|
||||||
bcvalue.h \
|
bcvalue.h \
|
||||||
bcvaluemodel.h \
|
bcvaluemodel.h \
|
||||||
|
|||||||
@@ -49,8 +49,8 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
BCDelegate::BCDelegate(QTableView* view)
|
BCDelegate::BCDelegate(const BCValueList& valueList, QTableView* view)
|
||||||
: QStyledItemDelegate(view), _view{view}
|
: QStyledItemDelegate{view}, _valueList{valueList}, _view{view}
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -59,10 +59,10 @@ BCDelegate::BCDelegate(QTableView* view)
|
|||||||
QString BCDelegate::displayText(const QVariant& dataValue, const QLocale& locale) const
|
QString BCDelegate::displayText(const QVariant& dataValue, const QLocale& locale) const
|
||||||
{
|
{
|
||||||
// Wir prüfen, ob im Variant unser Struct steckt
|
// Wir prüfen, ob im Variant unser Struct steckt
|
||||||
if (dataValue.canConvert<BCValue*>())
|
if (dataValue.canConvert<const BCValue*>())
|
||||||
{
|
{
|
||||||
BCValue& bc = *dataValue.value<BCValue*>();
|
const BCValue& bc = *dataValue.value<const BCValue*>();
|
||||||
qDebug() << " --- YES: " << bc.label;
|
//qDebug() << " --- YES: " << bc.label;
|
||||||
// Hier bauen wir den String zusammen, den man sieht,
|
// Hier bauen wir den String zusammen, den man sieht,
|
||||||
// wenn KEIN Editor offen ist.
|
// wenn KEIN Editor offen ist.
|
||||||
// Format: "Label: Wert Einheit"
|
// Format: "Label: Wert Einheit"
|
||||||
@@ -70,7 +70,7 @@ QString BCDelegate::displayText(const QVariant& dataValue, const QLocale& locale
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
//qDebug() << " --- Nö!";
|
qDebug() << " --- Nö!";
|
||||||
}
|
}
|
||||||
|
|
||||||
// Fallback für normale Strings/Zahlen
|
// Fallback für normale Strings/Zahlen
|
||||||
@@ -162,6 +162,7 @@ void BCDelegate::setModelData(QWidget *editor, QAbstractItemModel *model, const
|
|||||||
|
|
||||||
void BCDelegate::updateEditorGeometry(QWidget *editor, const QStyleOptionViewItem &option, const QModelIndex& index) const
|
void BCDelegate::updateEditorGeometry(QWidget *editor, const QStyleOptionViewItem &option, const QModelIndex& index) const
|
||||||
{
|
{
|
||||||
|
// __fix!
|
||||||
editor->setGeometry(option.rect);
|
editor->setGeometry(option.rect);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -181,11 +182,12 @@ QSize BCDelegate::sizeHint(const QStyleOptionViewItem &option, const QModelIndex
|
|||||||
|
|
||||||
void BCDelegate::paint(QPainter *painter, const QStyleOptionViewItem& option, const QModelIndex& index) const
|
void BCDelegate::paint(QPainter *painter, const QStyleOptionViewItem& option, const QModelIndex& index) const
|
||||||
{
|
{
|
||||||
|
|
||||||
/*
|
/*
|
||||||
// 1. Standard-Zeichnen (Text, Hintergrund, Selection) durchführen
|
// 1. Standard-Zeichnen (Text, Hintergrund, Selection) durchführen
|
||||||
QStyledItemDelegate::paint(painter, option, index);
|
QStyledItemDelegate::paint(painter, option, index);
|
||||||
|
|
||||||
// 2. Unser Custom-Overly: Oranger Rahmen, wenn Zeile passt
|
// 2. Unser Custom-Overlay: Oranger Rahmen, wenn Zeile passt
|
||||||
if (index.row() == _highlightedRow)
|
if (index.row() == _highlightedRow)
|
||||||
{
|
{
|
||||||
painter->save();
|
painter->save();
|
||||||
|
|||||||
@@ -38,6 +38,7 @@
|
|||||||
class QPropertyAnimation;
|
class QPropertyAnimation;
|
||||||
class QVariantAnimation;
|
class QVariantAnimation;
|
||||||
class QTableView;
|
class QTableView;
|
||||||
|
class BCValueList;
|
||||||
|
|
||||||
class BCDelegate : public QStyledItemDelegate
|
class BCDelegate : public QStyledItemDelegate
|
||||||
{
|
{
|
||||||
@@ -46,7 +47,7 @@ class BCDelegate : public QStyledItemDelegate
|
|||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
explicit BCDelegate(QTableView* view );
|
explicit BCDelegate(const BCValueList& valueList, QTableView* view );
|
||||||
|
|
||||||
QString displayText(const QVariant& dataValue, const QLocale& locale) const override;
|
QString displayText(const QVariant& dataValue, const QLocale& locale) const override;
|
||||||
|
|
||||||
@@ -89,9 +90,12 @@ private:
|
|||||||
QString formatDisplayString(const QModelIndex& index) const;
|
QString formatDisplayString(const QModelIndex& index) const;
|
||||||
void paintHighlightRow(QPainter* painter, const QStyleOptionViewItem& option, const QModelIndex& index) const;
|
void paintHighlightRow(QPainter* painter, const QStyleOptionViewItem& option, const QModelIndex& index) const;
|
||||||
|
|
||||||
|
const BCValueList& _valueList;
|
||||||
|
QTableView* _view{};
|
||||||
|
|
||||||
int _highlightedRow{-1};
|
int _highlightedRow{-1};
|
||||||
qreal _opacity{1.0};
|
qreal _opacity{1.0};
|
||||||
QTableView* _view{};
|
|
||||||
QPropertyAnimation* _animation{};
|
QPropertyAnimation* _animation{};
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|||||||
@@ -39,8 +39,10 @@ BCDevicePanel::BCDevicePanel(QWidget *parent)
|
|||||||
setupUi(this);
|
setupUi(this);
|
||||||
_valueView->setModel( &_valueModel );
|
_valueView->setModel( &_valueModel );
|
||||||
//_valueView->resizeColumnsToContents();
|
//_valueView->resizeColumnsToContents();
|
||||||
_valueView->horizontalHeader()->setSectionResizeMode(QHeaderView::ResizeToContents);
|
//_valueView->horizontalHeader()->setSectionResizeMode(QHeaderView::ResizeToContents);
|
||||||
_valueView->setItemDelegate( new BCDelegate( _valueView) );
|
|
||||||
|
BCDelegate* delegate = new BCDelegate( _valueModel.getValueList(), _valueView);
|
||||||
|
_valueView->setItemDelegate( delegate );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -30,6 +30,8 @@
|
|||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
|
|
||||||
|
|
||||||
|
//#include <QToolButton>
|
||||||
|
|
||||||
#include "qassert.h"
|
#include "qassert.h"
|
||||||
#include <bcmainwindow.h>
|
#include <bcmainwindow.h>
|
||||||
#include <bcdelegate.h>
|
#include <bcdelegate.h>
|
||||||
@@ -38,7 +40,7 @@
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Das Mainwindow erzeugen
|
* @brief Das Mainwindow erzeugen
|
||||||
* @param parent
|
* @param parent Das Elternwidget
|
||||||
*/
|
*/
|
||||||
|
|
||||||
BCMainWindow::BCMainWindow(QWidget *parent)
|
BCMainWindow::BCMainWindow(QWidget *parent)
|
||||||
@@ -54,30 +56,24 @@ BCMainWindow::BCMainWindow(QWidget *parent)
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Destruktor. Räumt den Workthread auf.
|
||||||
|
*/
|
||||||
|
|
||||||
BCMainWindow::~BCMainWindow()
|
BCMainWindow::~BCMainWindow()
|
||||||
{
|
{
|
||||||
_worker.quit(); // Event Loop stoppen
|
_worker.quit(); // Event Loop stoppen
|
||||||
_worker.wait(); // Warten bis Thread wirklich fertig ist
|
_worker.wait(); // Warten bis Thread wirklich fertig ist
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Initialisiert alle Komponenten des MainWindows.
|
||||||
|
*/
|
||||||
|
|
||||||
void BCMainWindow::initMainWindow()
|
void BCMainWindow::initMainWindow()
|
||||||
{
|
{
|
||||||
// Die Daten und auch die Datenmodelle für die Views werden
|
|
||||||
// vom DataManager verwaltet und an die Views weitergereicht.
|
|
||||||
|
|
||||||
/*
|
|
||||||
auto setDeviceModel = [&]( BCDevice::ID deviceID, BCDevicePanel* panel )
|
|
||||||
{
|
|
||||||
auto model = _dataManager.getModel( deviceID );
|
|
||||||
if( model)
|
|
||||||
{
|
|
||||||
QAbstractItemView* valueView = panel->getValueView();
|
|
||||||
valueView->setModel( *model );
|
|
||||||
//valueView->resizeColumnsToContents();
|
|
||||||
//_valueView->horizontalHeader()->setSectionResizeMode(QHeaderView::ResizeToContents);
|
|
||||||
}
|
|
||||||
};
|
|
||||||
*/
|
|
||||||
|
|
||||||
auto configureAction = [&]( QToolButton* button, QAction* action, BCDevice::ID deviceID, const QString& panelTitle="" )
|
auto configureAction = [&]( QToolButton* button, QAction* action, BCDevice::ID deviceID, const QString& panelTitle="" )
|
||||||
{
|
{
|
||||||
@@ -145,8 +141,8 @@ void BCMainWindow::initMainWindow()
|
|||||||
// besser: model::emit dataChanged
|
// besser: model::emit dataChanged
|
||||||
// also: emit dataChanged(index, index, {Qt::DisplayRole, Qt::EditRole, ValueRole});
|
// also: emit dataChanged(index, index, {Qt::DisplayRole, Qt::EditRole, ValueRole});
|
||||||
//connect( &_dataManager, &BCMainWindow::valueTouched, _delegate, &BCDelegate::onHighlightRow );
|
//connect( &_dataManager, &BCMainWindow::valueTouched, _delegate, &BCDelegate::onHighlightRow );
|
||||||
connect( _connectButton, &QPushButton::clicked, &_transmitter, &BCTransmitter::onToggleConnectionState );
|
connect( _connectButton, &QToolButton::clicked, &_transmitter, &BCTransmitter::onToggleConnectionState );
|
||||||
connect( _syncButton, &QPushButton::clicked, this, &BCMainWindow::onSyncFromDevice );
|
connect( _syncButton, &QToolButton::clicked, this, &BCMainWindow::onSyncFromDevice );
|
||||||
|
|
||||||
connect( &_transmitter, &BCTransmitter::valueUpdated, this, &BCMainWindow::onValueUpdated );
|
connect( &_transmitter, &BCTransmitter::valueUpdated, this, &BCMainWindow::onValueUpdated );
|
||||||
|
|
||||||
|
|||||||
@@ -22,7 +22,7 @@
|
|||||||
</property>
|
</property>
|
||||||
<layout class="QVBoxLayout" name="verticalLayout_2">
|
<layout class="QVBoxLayout" name="verticalLayout_2">
|
||||||
<item alignment="Qt::AlignmentFlag::AlignHCenter">
|
<item alignment="Qt::AlignmentFlag::AlignHCenter">
|
||||||
<widget class="BCToolButton" name="_motorButton">
|
<widget class="QToolButton" name="_motorButton">
|
||||||
<property name="minimumSize">
|
<property name="minimumSize">
|
||||||
<size>
|
<size>
|
||||||
<width>64</width>
|
<width>64</width>
|
||||||
@@ -41,7 +41,7 @@
|
|||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item alignment="Qt::AlignmentFlag::AlignHCenter">
|
<item alignment="Qt::AlignmentFlag::AlignHCenter">
|
||||||
<widget class="BCToolButton" name="_batteryButton">
|
<widget class="QToolButton" name="_batteryButton">
|
||||||
<property name="minimumSize">
|
<property name="minimumSize">
|
||||||
<size>
|
<size>
|
||||||
<width>64</width>
|
<width>64</width>
|
||||||
@@ -60,7 +60,7 @@
|
|||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item alignment="Qt::AlignmentFlag::AlignHCenter">
|
<item alignment="Qt::AlignmentFlag::AlignHCenter">
|
||||||
<widget class="BCToolButton" name="_consoleButton">
|
<widget class="QToolButton" name="_consoleButton">
|
||||||
<property name="minimumSize">
|
<property name="minimumSize">
|
||||||
<size>
|
<size>
|
||||||
<width>64</width>
|
<width>64</width>
|
||||||
@@ -79,7 +79,7 @@
|
|||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item alignment="Qt::AlignmentFlag::AlignHCenter">
|
<item alignment="Qt::AlignmentFlag::AlignHCenter">
|
||||||
<widget class="BCToolButton" name="_pimpButton">
|
<widget class="QToolButton" name="_pimpButton">
|
||||||
<property name="minimumSize">
|
<property name="minimumSize">
|
||||||
<size>
|
<size>
|
||||||
<width>64</width>
|
<width>64</width>
|
||||||
@@ -111,14 +111,14 @@
|
|||||||
</spacer>
|
</spacer>
|
||||||
</item>
|
</item>
|
||||||
<item alignment="Qt::AlignmentFlag::AlignHCenter">
|
<item alignment="Qt::AlignmentFlag::AlignHCenter">
|
||||||
<widget class="QPushButton" name="_syncButton">
|
<widget class="QToolButton" name="_syncButton">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string>Sync</string>
|
<string>Sync</string>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item alignment="Qt::AlignmentFlag::AlignHCenter">
|
<item>
|
||||||
<widget class="QPushButton" name="_connectButton">
|
<widget class="QToolButton" name="_connectButton">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string>Connect</string>
|
<string>Connect</string>
|
||||||
</property>
|
</property>
|
||||||
@@ -242,11 +242,6 @@
|
|||||||
<header location="global">bcdevicepanel.h</header>
|
<header location="global">bcdevicepanel.h</header>
|
||||||
<container>1</container>
|
<container>1</container>
|
||||||
</customwidget>
|
</customwidget>
|
||||||
<customwidget>
|
|
||||||
<class>BCToolButton</class>
|
|
||||||
<extends>QToolButton</extends>
|
|
||||||
<header location="global">bctoolbutton.h</header>
|
|
||||||
</customwidget>
|
|
||||||
</customwidgets>
|
</customwidgets>
|
||||||
<resources>
|
<resources>
|
||||||
<include location="bionxcontrol.qrc"/>
|
<include location="bionxcontrol.qrc"/>
|
||||||
|
|||||||
@@ -1,44 +0,0 @@
|
|||||||
/***************************************************************************
|
|
||||||
|
|
||||||
BionxControl
|
|
||||||
Copyright © 2025 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 <QDebug>
|
|
||||||
|
|
||||||
#include <bctoolbutton.h>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
BCToolButton::BCToolButton(QWidget* parent)
|
|
||||||
: QToolButton(parent)
|
|
||||||
{
|
|
||||||
qDebug() << " --- dis cant work: " << objectName();
|
|
||||||
//setDefaultAction(
|
|
||||||
}
|
|
||||||
@@ -1,46 +0,0 @@
|
|||||||
/***************************************************************************
|
|
||||||
|
|
||||||
BionxControl
|
|
||||||
Copyright © 2025 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
|
|
||||||
|
|
||||||
***************************************************************************/
|
|
||||||
|
|
||||||
|
|
||||||
#ifndef BCTOOLBUTTON_H
|
|
||||||
#define BCTOOLBUTTON_H
|
|
||||||
|
|
||||||
#include <QToolButton>
|
|
||||||
|
|
||||||
class BCToolButton : public QToolButton
|
|
||||||
{
|
|
||||||
public:
|
|
||||||
|
|
||||||
BCToolButton( QWidget* parent=nullptr );
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
#endif // BCTOOLBUTTON_H
|
|
||||||
10
bcvalue.h
10
bcvalue.h
@@ -43,7 +43,7 @@
|
|||||||
|
|
||||||
/*
|
/*
|
||||||
Werte haben verschiedene Längen (1,2 und 4 Byte) und werder auf unterschiedliche Art und Weise
|
Werte haben verschiedene Längen (1,2 und 4 Byte) und werder auf unterschiedliche Art und Weise
|
||||||
ausgelesen und geschrieben (Siehe BCValueTypeWord). Sin können also Wert-Typen zugeordnet werden. Ein Werttyp
|
ausgelesen und geschrieben (Siehe BCValueTypeWord). Sie können also Wert-Typen zugeordnet werden. Ein Werttyp
|
||||||
lässet über eine ID identifizieren, die mit der phyikalische Einheit des Wertes überschneiden kann,
|
lässet über eine ID identifizieren, die mit der phyikalische Einheit des Wertes überschneiden kann,
|
||||||
aber nicht muss: : Km/h, kWh, BCValueTypeWord ... bilden eigene Typen, SoC, Assistence Level sind auch eigene Typen,
|
aber nicht muss: : Km/h, kWh, BCValueTypeWord ... bilden eigene Typen, SoC, Assistence Level sind auch eigene Typen,
|
||||||
Teilen sich jedoch die Einheit '%'.
|
Teilen sich jedoch die Einheit '%'.
|
||||||
@@ -56,6 +56,10 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief BCAbstractTransmitter ist das abstrakte Basisinterface für die eigentliche
|
||||||
|
* Datenübertragung auf Treiberebene.
|
||||||
|
*/
|
||||||
|
|
||||||
class BCAbstractTransmitter
|
class BCAbstractTransmitter
|
||||||
{
|
{
|
||||||
@@ -101,9 +105,9 @@ public:
|
|||||||
//mutable std::optional<uint32_t> rawValue;
|
//mutable std::optional<uint32_t> rawValue;
|
||||||
|
|
||||||
};
|
};
|
||||||
// ?? ist das nötig?
|
|
||||||
Q_DECLARE_METATYPE(BCValue*)
|
|
||||||
|
|
||||||
|
Q_DECLARE_METATYPE(const BCValue*)
|
||||||
|
//Q_DECLARE_METATYPE(const BCValue&)
|
||||||
|
|
||||||
//using BCValueList = QList<BCValue>;
|
//using BCValueList = QList<BCValue>;
|
||||||
|
|
||||||
|
|||||||
@@ -140,10 +140,6 @@ int BCValueModel::columnCount(const QModelIndex& parent) const
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Gibt die Header-Einträge zurück
|
* @brief Gibt die Header-Einträge zurück
|
||||||
* @param section
|
|
||||||
* @param orientation
|
|
||||||
* @param role
|
|
||||||
* @return
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
QVariant BCValueModel::headerData(int section, Qt::Orientation orientation, int role) const
|
QVariant BCValueModel::headerData(int section, Qt::Orientation orientation, int role) const
|
||||||
@@ -162,9 +158,18 @@ QVariant BCValueModel::headerData(int section, Qt::Orientation orientation, int
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Gibt die Model-Daten zurück. Das Model Gibt hier, unabhängig von der DataRole, immer das
|
||||||
|
* gesamte BCValue Object zurück. Die Umsetzung von Status- und Typeinfromationen in GUI-Elemente
|
||||||
|
* findet nicht hier, sondern im BCDelagate statt.
|
||||||
|
*/
|
||||||
|
|
||||||
QVariant BCValueModel::data(const QModelIndex& index, int role) const
|
QVariant BCValueModel::data(const QModelIndex& index, int role) const
|
||||||
{
|
{
|
||||||
/*
|
Q_UNUSED(role)
|
||||||
|
|
||||||
|
/*
|
||||||
// Bonus: Rechtsbündig für Zahlen
|
// Bonus: Rechtsbündig für Zahlen
|
||||||
if (role == Qt::TextAlignmentRole && (index.column() == 0 || index.column() == 2)) {
|
if (role == Qt::TextAlignmentRole && (index.column() == 0 || index.column() == 2)) {
|
||||||
return Qt::AlignRight | Qt::AlignVCenter;
|
return Qt::AlignRight | Qt::AlignVCenter;
|
||||||
@@ -173,13 +178,13 @@ QVariant BCValueModel::data(const QModelIndex& index, int role) const
|
|||||||
return QVariant();
|
return QVariant();
|
||||||
*/
|
*/
|
||||||
int row = index.row();
|
int row = index.row();
|
||||||
int col = index.column();
|
|
||||||
if (!index.isValid() || row >= _valueList.size())
|
if (!index.isValid() || row >= _valueList.size())
|
||||||
return QVariant();
|
return QVariant();
|
||||||
|
|
||||||
|
const BCValue* entry = &_valueList.at( row );
|
||||||
|
return QVariant::fromValue( entry );
|
||||||
|
|
||||||
const BCValue& entry = _valueList.at( row );
|
/*
|
||||||
|
|
||||||
if (role == Qt::DisplayRole || role == Qt::EditRole)
|
if (role == Qt::DisplayRole || role == Qt::EditRole)
|
||||||
{
|
{
|
||||||
if( col == 0 )
|
if( col == 0 )
|
||||||
@@ -187,8 +192,9 @@ QVariant BCValueModel::data(const QModelIndex& index, int role) const
|
|||||||
else if( col == 1 )
|
else if( col == 1 )
|
||||||
return entry.visibleValue;
|
return entry.visibleValue;
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
return QVariant();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user