This commit is contained in:
2017-02-13 14:00:26 +01:00
parent 278ae29119
commit 6dcaae5b1f
7 changed files with 107 additions and 15 deletions
-2
View File
@@ -18,8 +18,6 @@ QString cImportInterface::valueStr(cIngredient::iIngredient i)
if(i == cIngredient::iIngredientCalories) if(i == cIngredient::iIngredientCalories)
strValue = QString("%1 kcal").arg(dValue); strValue = QString("%1 kcal").arg(dValue);
else if(i == cIngredient::iIngredientJoule)
strValue = QString("%1 kJ").arg(dValue);
else else
{ {
if(dValue < 0.001) if(dValue < 0.001)
+3 -4
View File
@@ -195,10 +195,9 @@ public:
iIngredientBiologicalvalue = 152, iIngredientBiologicalvalue = 152,
iIngredientFructosefreebreadunits = 153, iIngredientFructosefreebreadunits = 153,
iIngredientaverageconsumption = 154, iIngredientaverageconsumption = 154,
iIngredientJoule = 155, iIngredientSugar = 155,
iIngredientSugar = 156, iIngredientAspartid = 156,
iIngredientAspartid = 157, iIngredientGlutamid = 157,
iIngredientGlutamid = 158,
iIngredientMax, iIngredientMax,
}; };
+53 -6
View File
@@ -16,6 +16,9 @@ cIngredientWindow::cIngredientWindow(QWidget *parent) :
m_lpIngredientValuesModel = new QStandardItemModel(0, 2); m_lpIngredientValuesModel = new QStandardItemModel(0, 2);
ui->m_lpIngredientValues->setModel(m_lpIngredientValuesModel); ui->m_lpIngredientValues->setModel(m_lpIngredientValuesModel);
ui->m_lpSave->setEnabled(false);
ui->m_lpRevert->setEnabled(false);
connect(ui->m_lpIngredientValues, &QTreeView::doubleClicked, this, &cIngredientWindow::ingredientEdit); connect(ui->m_lpIngredientValues, &QTreeView::doubleClicked, this, &cIngredientWindow::ingredientEdit);
} }
@@ -24,16 +27,22 @@ cIngredientWindow::~cIngredientWindow()
delete ui; delete ui;
} }
void cIngredientWindow::setIngredient(qint32 iIngredient, cPlugin* lpPlugin) void cIngredientWindow::setIngredient(QStandardItem *lpItem, cPlugin* lpPlugin)
{ {
m_iIngredient = iIngredient; if(lpPlugin)
m_lpDBPlugin = lpPlugin; {
if(!m_ingredientSaved.load(m_iIngredient, m_lpDBPlugin)) m_lpItem = lpItem;
return; m_iIngredient = lpItem->data().toInt();
m_lpDBPlugin = lpPlugin;
if(!m_ingredientSaved.load(m_iIngredient, m_lpDBPlugin))
return;
}
m_lpIngredientValuesModel->clear();
m_lpIngredientValuesModel->setColumnCount(2);
m_ingredient = m_ingredientSaved; m_ingredient = m_ingredientSaved;
setWindowTitle(QString("<Ingredient> %1").arg(m_ingredientSaved.ingredientName()));
ui->m_lpIngredientName->setText(m_ingredientSaved.ingredientName()); ui->m_lpIngredientName->setText(m_ingredientSaved.ingredientName());
QStringList groups = m_ingredientSaved.groups(); QStringList groups = m_ingredientSaved.groups();
@@ -61,6 +70,11 @@ void cIngredientWindow::setIngredient(qint32 iIngredient, cPlugin* lpPlugin)
ui->m_lpIngredientValues->expandAll(); ui->m_lpIngredientValues->expandAll();
ui->m_lpIngredientValues->resizeColumnToContents(0); ui->m_lpIngredientValues->resizeColumnToContents(0);
ui->m_lpIngredientValues->resizeColumnToContents(1); ui->m_lpIngredientValues->resizeColumnToContents(1);
setWindowTitle(QString("<Ingredient> %1").arg(m_ingredientSaved.ingredientName()));
m_lpItem->setText(QString("%1").arg(m_ingredientSaved.ingredientName()));
ui->m_lpSave->setEnabled(false);
ui->m_lpRevert->setEnabled(false);
} }
qint32 cIngredientWindow::ingredientID(void) qint32 cIngredientWindow::ingredientID(void)
@@ -94,9 +108,19 @@ void cIngredientWindow::ingredientEdit(const QModelIndex &modelIndex)
lpValue->setText(m_ingredient.valueFormatted(iIngredient)); lpValue->setText(m_ingredient.valueFormatted(iIngredient));
if(bChanged) if(bChanged)
{
setWindowTitle(QString("<Ingredient> %1*").arg(m_ingredientSaved.ingredientName())); setWindowTitle(QString("<Ingredient> %1*").arg(m_ingredientSaved.ingredientName()));
m_lpItem->setText(QString("%1*").arg(m_ingredientSaved.ingredientName()));
ui->m_lpSave->setEnabled(true);
ui->m_lpRevert->setEnabled(true);
}
else else
{
setWindowTitle(QString("<Ingredient> %1").arg(m_ingredientSaved.ingredientName())); setWindowTitle(QString("<Ingredient> %1").arg(m_ingredientSaved.ingredientName()));
m_lpItem->setText(QString("%1").arg(m_ingredientSaved.ingredientName()));
ui->m_lpSave->setEnabled(false);
ui->m_lpRevert->setEnabled(false);
}
} }
bool cIngredientWindow::isChanged() bool cIngredientWindow::isChanged()
@@ -105,3 +129,26 @@ bool cIngredientWindow::isChanged()
return(true); return(true);
return(false); return(false);
} }
void cIngredientWindow::on_m_lpSave_clicked()
{
}
void cIngredientWindow::on_m_lpRevert_clicked()
{
setIngredient();
}
void cIngredientWindow::on_m_lpClose_clicked()
{
}
void cIngredientWindow::closeEvent(QCloseEvent *event)
{
if(isChanged())
event->ignore();
else
event->accept();
}
+11 -1
View File
@@ -22,13 +22,19 @@ public:
explicit cIngredientWindow(QWidget *parent = 0); explicit cIngredientWindow(QWidget *parent = 0);
~cIngredientWindow(); ~cIngredientWindow();
void setIngredient(qint32 iIngredient, cPlugin* lpPlugin); void setIngredient(QStandardItem* lpItem = 0, cPlugin* lpPlugin = 0);
qint32 ingredientID(void); qint32 ingredientID(void);
bool isChanged(); bool isChanged();
private slots: private slots:
void ingredientEdit(const QModelIndex& modelIndex); void ingredientEdit(const QModelIndex& modelIndex);
void on_m_lpSave_clicked();
void on_m_lpRevert_clicked();
void on_m_lpClose_clicked();
private: private:
Ui::cIngredientWindow* ui; Ui::cIngredientWindow* ui;
@@ -37,6 +43,10 @@ private:
cIngredient m_ingredient; cIngredient m_ingredient;
cIngredient m_ingredientSaved; cIngredient m_ingredientSaved;
QStandardItemModel* m_lpIngredientValuesModel; QStandardItemModel* m_lpIngredientValuesModel;
QStandardItem* m_lpItem;
protected:
void closeEvent(QCloseEvent *event);
}; };
#endif // CINGREDIENTWINDOW_H #endif // CINGREDIENTWINDOW_H
+38
View File
@@ -61,6 +61,44 @@
</item> </item>
</layout> </layout>
</item> </item>
<item row="2" column="0">
<layout class="QHBoxLayout" name="horizontalLayout_2">
<item>
<widget class="QPushButton" name="m_lpSave">
<property name="text">
<string>Save</string>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="m_lpRevert">
<property name="text">
<string>Revert</string>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="m_lpClose">
<property name="text">
<string>Close</string>
</property>
</widget>
</item>
<item>
<spacer name="horizontalSpacer">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
</layout>
</item>
</layout> </layout>
</widget> </widget>
<resources/> <resources/>
+1 -1
View File
@@ -497,7 +497,7 @@ void cMainWindow::ingredientsListEditTriggered()
} }
cIngredientWindow* lpIngredientWindow = new cIngredientWindow(this); cIngredientWindow* lpIngredientWindow = new cIngredientWindow(this);
lpIngredientWindow->setIngredient(lpItem->data().toInt(), m_lpDB); lpIngredientWindow->setIngredient(lpItem, m_lpDB);
QMdiSubWindow* lpSubWindow = ui->m_lpMDIArea->addSubWindow(lpIngredientWindow); QMdiSubWindow* lpSubWindow = ui->m_lpMDIArea->addSubWindow(lpIngredientWindow);
lpSubWindow->setAttribute(Qt::WA_DeleteOnClose); lpSubWindow->setAttribute(Qt::WA_DeleteOnClose);
lpIngredientWindow->show(); lpIngredientWindow->show();
+1 -1
View File
@@ -16,7 +16,7 @@ typedef struct tagMAPPER
MAPPER g_ingredientMapper[] = MAPPER g_ingredientMapper[] =
{ {
{ "<td><b>Kilokalorien:</b></td>", cIngredient::iIngredientCalories }, { "<td><b>Kilokalorien:</b></td>", cIngredient::iIngredientCalories },
{ "<td><b>Kilojoule:</b></td>", cIngredient::iIngredientJoule }, // { "<td><b>Kilojoule:</b></td>", cIngredient::iIngredientJoule },
{ "<td><b>Protein:</b></td>", cIngredient::iIngredientProtein }, { "<td><b>Protein:</b></td>", cIngredient::iIngredientProtein },
{ "<td><b>Fett:</b></td>", cIngredient::iIngredientFat }, { "<td><b>Fett:</b></td>", cIngredient::iIngredientFat },
{ "<td><b>Kohlehydrate:</b></td>", cIngredient::iIngredientCarbohydrates }, { "<td><b>Kohlehydrate:</b></td>", cIngredient::iIngredientCarbohydrates },