/* PIQt Utils - Qt utilites for PIP Ivan Pelipenko peri4ko@yandex.ru, Andrey Bychkov work.a.b@yandex.ru This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this program. If not, see . */ #ifndef PIQT_IODEVICE_EDIT_H #define PIQT_IODEVICE_EDIT_H #include #include "qad_types.h" class QLineEdit; class QToolButton; class IODeviceEditDialog; class IODeviceEdit: public QWidget { Q_OBJECT Q_PROPERTY(QVariant value READ value WRITE setValue NOTIFY valueChanged) Q_PROPERTY(bool readOnly READ isReadOnly WRITE setReadOnly) public: explicit IODeviceEdit(QWidget * parent = 0); ~IODeviceEdit(); QVariant value() const; bool isReadOnly() const; private: void setDevice(const QAD::IODevice & d); QLineEdit * line; QToolButton * btn; IODeviceEditDialog * dlg; QAD::IODevice dev; public slots: void setValue(const QVariant & v); void setReadOnly(bool yes); private slots: void buttonDlg_clicked(); signals: void valueChanged(); }; class __IODeviceEditRegistrator__ { public: __IODeviceEditRegistrator__(); }; static __IODeviceEditRegistrator__ __iodeviceeditregistrator__; void QAD_IODevice_toString(const QVariant & v, QString & r); #endif // PIQT_IODEVICE_EDIT_H