#ifndef TITAN_PCBCAM_FONT_H
#define TITAN_PCBCAM_FONT_H
#include "../titanpcbcamglobal.h"
#include <QSharedDataPointer>
#include "./common.h"
#include "./fontcharline.h"


class PcbCamFontData;
class TITAN_PCBCAM_EXPORT PcbCamFont
{
public:
    PcbCamFont();
    PcbCamFont(const PcbCamFont &);
    PcbCamFont &operator=(const PcbCamFont &);
    ~PcbCamFont();


    void setName(const QString &iName);
    QString name() const;

    void setSizeX(double iSizeX);
    void setSizeY(double iSizeY);
    double sizeX() const;
    double sizeY();

    void setOffset(double iOffset);
    double offset() const;

    QList<PcbCamFontCharLine> charLines(QChar iChar) const;
    void setCharLines(QChar iChar, const QList<PcbCamFontCharLine> &iLines);


private:
    QSharedDataPointer<PcbCamFontData> d;
};


#endif // TITAN_PCBCAM_FONT_H
