diff options
author | Michele Calgaro <michele.calgaro@yahoo.it> | 2024-10-13 11:56:14 +0900 |
---|---|---|
committer | Michele Calgaro <michele.calgaro@yahoo.it> | 2024-10-29 21:58:42 +0900 |
commit | 2879ff70be9271550477982a1a6371714db38562 (patch) | |
tree | c2054149dba923ab080fe7093432c7663a990111 /src/widgets/weightinput.cpp | |
parent | 3eb38d2556f676d1027746f20bf12a1dd74451ef (diff) | |
download | krecipes-2879ff70.tar.gz krecipes-2879ff70.zip |
Rearrange folders structure to remove unnecessary 'krecipes' second level subfolder
Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
(cherry picked from commit 0c8ed6c9a4000af8f48581a81c4b5c2f5b9fd502)
Diffstat (limited to 'src/widgets/weightinput.cpp')
-rw-r--r-- | src/widgets/weightinput.cpp | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/src/widgets/weightinput.cpp b/src/widgets/weightinput.cpp new file mode 100644 index 0000000..17d3d0a --- /dev/null +++ b/src/widgets/weightinput.cpp @@ -0,0 +1,63 @@ +/*************************************************************************** +* Copyright (C) 2006 by * +* Jason Kivlighn (jkivlighn@gmail.com) * +* * +* 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 2 of the License, or * +* (at your option) any later version. * +***************************************************************************/ + +#include "weightinput.h" + +#include <tdelocale.h> + +#include "backends/recipedb.h" +#include "datablocks/element.h" +#include "datablocks/weight.h" +#include "prepmethodcombobox.h" + +WeightInput::WeightInput( TQWidget *parent, RecipeDB *database, Unit::Type type, MixedNumber::Format format ) : + AmountUnitInput(parent,database,type,format), + m_database(database) +{ + prepMethodBox = new PrepMethodComboBox(false,this,database,i18n("-No Preparation-")); + prepMethodBox->reload(); + + connect( prepMethodBox, TQ_SIGNAL(activated(int)), TQ_SLOT(emitValueChanged()) ); +} + +void WeightInput::emitValueChanged() +{ + Weight w; + w.perAmount = amount().toDouble(); + + Unit u = unit(); + w.perAmountUnitID = u.id; + w.perAmountUnit = (w.perAmount>1)?u.plural:u.name; + + Element prep; + w.prepMethod = prep.name; + w.prepMethodID = prep.id; + emit valueChanged( w ); +} + +void WeightInput::setPrepMethod( const Element &prep ) +{ + if ( prep.id == -1 ) + prepMethodBox->setCurrentItem(0); + else + prepMethodBox->setSelected( prep.id ); + +} + +Element WeightInput::prepMethod() const +{ + Element prep; + prep.id = prepMethodBox->id( prepMethodBox->currentItem() ); + if ( prep.id != -1 ) + prep.name = prepMethodBox->currentText(); + return prep; +} + +#include "weightinput.moc" |