Implemented camp wizard and service methods for camp calculation.

This commit is contained in:
2017-05-29 21:40:22 +02:00
parent 9a087e1874
commit b0f129f38d
24 changed files with 1180 additions and 227 deletions
+44
View File
@@ -5,6 +5,7 @@
#include "data/camp-data.h"
#include <objectbinder.h>
#include <data/addressbookdata.h>
#include <data/accservice.h>
#include <core.h>
class AddressHelper : public QObject
@@ -29,6 +30,27 @@ private:
AddressbookDataPtr m_copyAddress;
};
class SaleHelper : public QObject
{
Q_OBJECT
Q_PROPERTY(QSharedPointer<QObject> sale READ sale WRITE setSale NOTIFY saleChanged)
public:
SaleHelper(QObject *parent = NULL);
SalePtr salePtr() const;
void setSalePtr(const SalePtr &sale);
QSharedPointer<QObject> sale() const;
void setSale(const QSharedPointer<QObject> &sale);
signals:
void saleChanged();
private:
SalePtr m_sale;
};
namespace Ui {
class CampWizard;
}
@@ -56,6 +78,16 @@ private slots:
void on_CampWizard_currentIdChanged(int id);
void on_btnAddService_clicked();
void on_btnRemoveService_clicked();
void on_checkSale_clicked();
void applySale();
void on_sale_currentIndexChanged(int index);
private:
Ui::CampWizard *ui;
CampDataPtr m_data;
@@ -63,9 +95,21 @@ private:
ObjectBinder *m_addrHelperBinder;
ObjectBinder *m_addressBinder;
AddressHelper *m_addrHelper;
ObjectBinder *m_saleBinder;
SaleHelper *m_saleHelper;
AutoTableModel<AddressItem> *m_peopleModel;
AutoTableModel<AccService> *m_servicesModel;
AutoTableModel<ServiceItem> *m_itemsModel;
bool m_bindAddrCombo;
// QWizard interface
public:
bool validateCurrentPage();
// QDialog interface
public slots:
void accept();
};
#endif // CAMPWIZARD_H