MiniDisplay/minidisplay.h
author sl
Wed, 28 May 2014 15:23:41 +0200
changeset 9 52372bbbc0f8
parent 8 9543e1703afb
child 10 64cfde8062c7
permissions -rw-r--r--
Now supporting read request for device ID, firmware version and power status.
     1 #ifndef MINIDISPLAY_H
     2 #define MINIDISPLAY_H
     3 
     4 #include <QQuickItem>
     5 #include "FutabaVfd.h"
     6 
     7 class MiniDisplay : public QQuickItem
     8 {
     9     Q_OBJECT
    10     Q_DISABLE_COPY(MiniDisplay)
    11     //
    12     Q_PROPERTY(bool isOpen READ isOpen NOTIFY statusChanged)
    13     Q_PROPERTY(QFont font READ font WRITE setFont NOTIFY fontChanged)
    14     Q_PROPERTY(QString vendor READ vendor)
    15     Q_PROPERTY(QString product READ product)
    16     Q_PROPERTY(QString serialNumber READ serialNumber)
    17 
    18 public:
    19     //Methods
    20     Q_INVOKABLE void open();
    21     Q_INVOKABLE void close();
    22     //
    23     Q_INVOKABLE void clear();
    24     Q_INVOKABLE void fill();
    25     Q_INVOKABLE void swapBuffers();
    26     //
    27     Q_INVOKABLE void requestPowerStatus();
    28     Q_INVOKABLE void requestDeviceId();
    29     Q_INVOKABLE void requestFirmwareVersion();
    30 
    31 public:
    32     //Properties
    33     bool isOpen();
    34     QFont font() const {return iFont;}
    35     void setFont(const QFont& aFont);
    36     //
    37     QString vendor();
    38     QString product();
    39     QString serialNumber();
    40 
    41 signals:
    42     void opened();
    43     void openError();
    44     void closed();
    45     void statusChanged();
    46     void fontChanged();
    47     //
    48     void powerStatus(bool powerOn);
    49     void deviceId(QString deviceId);
    50     void firmwareVersion(QString version);
    51 
    52 public slots:
    53     void readTimer();
    54 
    55 
    56 public:
    57     MiniDisplay(QQuickItem *parent = 0);
    58     ~MiniDisplay();
    59 
    60 private:
    61     GP1212A01A iDisplay;
    62     QFont iFont;
    63     int iReadAttempt;
    64 };
    65 
    66 #endif // MINIDISPLAY_H
    67