Merge branch 'master' of https://git.bukova.info/repos/git/prodejna
						commit
						726da24de9
					
				@ -0,0 +1,61 @@
 | 
			
		||||
#include "commoditysettingsform.h"
 | 
			
		||||
#include "ui_commoditysettingsform.h"
 | 
			
		||||
#include <service.h>
 | 
			
		||||
#include "commodity-odb.hxx"
 | 
			
		||||
 | 
			
		||||
CommoditySettingsForm::CommoditySettingsForm(QWidget *parent) :
 | 
			
		||||
    IForm(parent),
 | 
			
		||||
    ui(new Ui::CommoditySettingsForm)
 | 
			
		||||
{
 | 
			
		||||
    ui->setupUi(this);
 | 
			
		||||
    m_table = new AutoTableModel<CommodityTypeData>();
 | 
			
		||||
    m_table->setEditableCols(QList<int>() << 0);
 | 
			
		||||
    ui->commodityTypesTable->setModel(m_table);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
CommoditySettingsForm::~CommoditySettingsForm()
 | 
			
		||||
{
 | 
			
		||||
    delete ui;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void CommoditySettingsForm::loadEntity()
 | 
			
		||||
{
 | 
			
		||||
    Service<CommodityTypeData> commodityService;
 | 
			
		||||
    m_table->setData(commodityService.all());
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
bool CommoditySettingsForm::saveRecord()
 | 
			
		||||
{
 | 
			
		||||
    Service<CommodityTypeData> commodityService;
 | 
			
		||||
    foreach (QSharedPointer<CommodityTypeData> item, m_table->list())
 | 
			
		||||
    {
 | 
			
		||||
        if(item->id() == 0)
 | 
			
		||||
        {
 | 
			
		||||
            commodityService.save(item);
 | 
			
		||||
        }
 | 
			
		||||
        else
 | 
			
		||||
        {
 | 
			
		||||
            commodityService.update(item);
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
    }
 | 
			
		||||
    foreach (QSharedPointer<CommodityTypeData> item, m_delCommodityTypes)
 | 
			
		||||
    {
 | 
			
		||||
        commodityService.erase(item);
 | 
			
		||||
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void CommoditySettingsForm::on_addCommodityType_clicked()
 | 
			
		||||
{
 | 
			
		||||
    m_table->addRow(QSharedPointer<CommodityTypeData>(new CommodityTypeData));
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void CommoditySettingsForm::on_delCommodityType_clicked()
 | 
			
		||||
{
 | 
			
		||||
    if(m_table->itemFromIndex(ui->commodityTypesTable->currentIndex())->id() != 0)
 | 
			
		||||
    {
 | 
			
		||||
        m_delCommodityTypes.append(m_table->itemFromIndex(ui->commodityTypesTable->currentIndex()));
 | 
			
		||||
    }
 | 
			
		||||
    m_table->removeRowAt(ui->commodityTypesTable->currentIndex());
 | 
			
		||||
}
 | 
			
		||||
@ -0,0 +1,37 @@
 | 
			
		||||
#ifndef COMMODITYSETTINGSFORM_H
 | 
			
		||||
#define COMMODITYSETTINGSFORM_H
 | 
			
		||||
 | 
			
		||||
#include <QWidget>
 | 
			
		||||
#include <iform.h>
 | 
			
		||||
#include "data/commoditytypedata.h"
 | 
			
		||||
#include <autotablemodel.h>
 | 
			
		||||
 | 
			
		||||
namespace Ui {
 | 
			
		||||
class CommoditySettingsForm;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
class CommoditySettingsForm : public IForm
 | 
			
		||||
{
 | 
			
		||||
    Q_OBJECT
 | 
			
		||||
 | 
			
		||||
public:
 | 
			
		||||
    explicit CommoditySettingsForm(QWidget *parent = 0);
 | 
			
		||||
    ~CommoditySettingsForm();
 | 
			
		||||
 | 
			
		||||
private:
 | 
			
		||||
    Ui::CommoditySettingsForm *ui;
 | 
			
		||||
    AutoTableModel<CommodityTypeData> *m_table;
 | 
			
		||||
    QList<QSharedPointer<CommodityTypeData> > m_delCommodityTypes;
 | 
			
		||||
 | 
			
		||||
    // IForm interface
 | 
			
		||||
public:
 | 
			
		||||
    void loadEntity();
 | 
			
		||||
 | 
			
		||||
public slots:
 | 
			
		||||
    bool saveRecord();
 | 
			
		||||
private slots:
 | 
			
		||||
    void on_addCommodityType_clicked();
 | 
			
		||||
    void on_delCommodityType_clicked();
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
#endif // COMMODITYSETTINGSFORM_H
 | 
			
		||||
@ -0,0 +1,57 @@
 | 
			
		||||
<?xml version="1.0" encoding="UTF-8"?>
 | 
			
		||||
<ui version="4.0">
 | 
			
		||||
 <class>CommoditySettingsForm</class>
 | 
			
		||||
 <widget class="QWidget" name="CommoditySettingsForm">
 | 
			
		||||
  <property name="geometry">
 | 
			
		||||
   <rect>
 | 
			
		||||
    <x>0</x>
 | 
			
		||||
    <y>0</y>
 | 
			
		||||
    <width>400</width>
 | 
			
		||||
    <height>300</height>
 | 
			
		||||
   </rect>
 | 
			
		||||
  </property>
 | 
			
		||||
  <property name="windowTitle">
 | 
			
		||||
   <string>Form</string>
 | 
			
		||||
  </property>
 | 
			
		||||
  <layout class="QFormLayout" name="formLayout">
 | 
			
		||||
   <property name="fieldGrowthPolicy">
 | 
			
		||||
    <enum>QFormLayout::AllNonFixedFieldsGrow</enum>
 | 
			
		||||
   </property>
 | 
			
		||||
   <item row="0" column="1">
 | 
			
		||||
    <widget class="QWidget" name="widget" native="true">
 | 
			
		||||
     <layout class="QHBoxLayout" name="horizontalLayout">
 | 
			
		||||
      <item>
 | 
			
		||||
       <widget class="QToolButton" name="addCommodityType">
 | 
			
		||||
        <property name="text">
 | 
			
		||||
         <string>+</string>
 | 
			
		||||
        </property>
 | 
			
		||||
        <property name="icon">
 | 
			
		||||
         <iconset resource="../core/rc.qrc">
 | 
			
		||||
          <normaloff>:/icons/new.svg</normaloff>:/icons/new.svg</iconset>
 | 
			
		||||
        </property>
 | 
			
		||||
       </widget>
 | 
			
		||||
      </item>
 | 
			
		||||
      <item>
 | 
			
		||||
       <widget class="QToolButton" name="delCommodityType">
 | 
			
		||||
        <property name="text">
 | 
			
		||||
         <string>-</string>
 | 
			
		||||
        </property>
 | 
			
		||||
        <property name="icon">
 | 
			
		||||
         <iconset resource="../core/rc.qrc">
 | 
			
		||||
          <normaloff>:/icons/remove.svg</normaloff>:/icons/remove.svg</iconset>
 | 
			
		||||
        </property>
 | 
			
		||||
       </widget>
 | 
			
		||||
      </item>
 | 
			
		||||
     </layout>
 | 
			
		||||
    </widget>
 | 
			
		||||
   </item>
 | 
			
		||||
   <item row="1" column="1">
 | 
			
		||||
    <widget class="QTableView" name="commodityTypesTable"/>
 | 
			
		||||
   </item>
 | 
			
		||||
  </layout>
 | 
			
		||||
 </widget>
 | 
			
		||||
 <resources>
 | 
			
		||||
  <include location="../core/rc.qrc"/>
 | 
			
		||||
 </resources>
 | 
			
		||||
 <connections/>
 | 
			
		||||
</ui>
 | 
			
		||||
					Loading…
					
					
				
		Reference in New Issue