use C++ features to show price
This commit is contained in:
parent
96d0a03ba8
commit
fa7938ca20
3 changed files with 37 additions and 4 deletions
|
@ -29,9 +29,9 @@ int Article::getPrice() const { return price_; }
|
|||
|
||||
std::string Article::getPriceAsString() const
|
||||
{
|
||||
double sumInEuro = price_ / 100.0L;
|
||||
std::stringstream sumStream;
|
||||
sumStream << std::fixed << std::setprecision(2) << sumInEuro << " €";
|
||||
sumStream.imbue(std::locale("de_DE.utf8"));
|
||||
sumStream << std::right << std::setw(12) << std::showbase << std::put_money(price_, false);
|
||||
return sumStream.str();
|
||||
}
|
||||
|
||||
|
|
|
@ -1,5 +1,7 @@
|
|||
#include "basketmodel.h"
|
||||
|
||||
#include <QFont>
|
||||
|
||||
BasketModel::BasketModel(Marketplace* market, QObject* parent)
|
||||
: QAbstractTableModel(parent), marketplace_(market)
|
||||
{
|
||||
|
@ -14,6 +16,22 @@ int BasketModel::columnCount([[maybe_unused]] const QModelIndex& parent) const {
|
|||
|
||||
QVariant BasketModel::data(const QModelIndex& index, int role) const
|
||||
{
|
||||
if (role == Qt::FontRole) {
|
||||
QFont myFont;
|
||||
|
||||
switch (index.column()) {
|
||||
case 0:
|
||||
[[fallthrough]];
|
||||
case 1:
|
||||
[[fallthrough]];
|
||||
case 2:
|
||||
return myFont;
|
||||
case 3:
|
||||
myFont.setFamily("monospace");
|
||||
return myFont;
|
||||
}
|
||||
}
|
||||
|
||||
if (role != Qt::DisplayRole)
|
||||
return QVariant();
|
||||
|
||||
|
@ -30,7 +48,7 @@ QVariant BasketModel::data(const QModelIndex& index, int role) const
|
|||
case 2:
|
||||
return article->getSeller()->getSellerNo();
|
||||
case 3:
|
||||
//return article->getPrice();
|
||||
// return article->getPrice();
|
||||
return article->getPriceAsString().c_str();
|
||||
default:
|
||||
return "???";
|
||||
|
|
|
@ -2,6 +2,14 @@
|
|||
<ui version="4.0">
|
||||
<class>PriceDialog</class>
|
||||
<widget class="QDialog" name="PriceDialog">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>171</width>
|
||||
<height>71</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>Artikelpreis</string>
|
||||
</property>
|
||||
|
@ -19,7 +27,14 @@
|
|||
</widget>
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<widget class="QDoubleSpinBox" name="priceSpinBox"/>
|
||||
<widget class="QDoubleSpinBox" name="priceSpinBox">
|
||||
<property name="maximum">
|
||||
<double>999.990000000000009</double>
|
||||
</property>
|
||||
<property name="singleStep">
|
||||
<double>0.500000000000000</double>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<widget class="QLabel" name="label_2">
|
||||
|
|
Loading…
Reference in a new issue