src/PrinterDialog.h

Sun, 29 Jan 2023 14:40:43 +0100

author
Michiel Broek <mbroek@mbse.eu>
date
Sun, 29 Jan 2023 14:40:43 +0100
changeset 479
28f0e43e9f08
parent 459
fbb250c725bb
permissions
-rw-r--r--

Version 0.4.0. Added database upgrade procedure on startup. Make sure inventory_yeastpack database is created and has default entries. This will become a table with data for different yeast packs.

#ifndef	_PRINTERDIALOG_H
#define	_PRINTERDIALOG_H

#include <QDialog>
#include <QPrinter>
#include <QPainter>


enum JobType { PR_SUPPLIES, PR_YEASTBANK, PR_RECIPE, PR_PRODUCT, PR_CHECKLIST, PR_REP_TOTAL, PR_REP_EFF, PR_REP_SVG };

namespace Ui {
class PrinterDialog;
}


class PrinterDialog : public QDialog
{
	Q_OBJECT

public:
    /**
     * @brief Construct a new Printer Dialog
     * @param parent
     */
    explicit PrinterDialog(int job, int rec, QWidget *parent = 0);

    /**
     * @brief Destroy the Printer Dialog
     */
    ~PrinterDialog();

public slots:
    void printDocument(QPrinter *printer);

private:
    int p_job;
    int p_rec;

    void printHeader(QPainter *painter);
    QString strDensity(double density);
    QString strDiff(double v1, double v2, int decimals, QString suffix);
    void checkHeader(QPainter *painter, qreal *y, QString text);
    void checkLine(QPainter *painter, qreal *y, QString text);
    void checkInput(QPainter *painter, qreal *y, QString text, QString prompt);
    void messageInput(QPainter *painter, qreal *y, QString text, QString prompt);
    bool checkSplit(QPainter *painter, qreal *y, int moment);
};

#endif

mercurial