#ifndef __SERVER_CONFIG_DIALOG_H #define __SERVER_CONFIG_DIALOG_H #include <QDialog> #include <QLabel> #include <QLineEdit> #include <QPushButton> #include <QPixmap> #include <QComboBox> #include <QCheckBox> #include <QLibrary> class ServerConfigDialog : public QDialog { Q_OBJECT public: ServerConfigDialog(QWidget *parent = 0); private: QComboBox *ip; QLineEdit *port; QCheckBox *check; QCheckBox *performanceWorkaroundCheck; QPushButton *close; QPushButton *accept; QLabel *qrCode; public slots: void generateQR(); void generateQR(const QString &serverAddress); void regenerateQR(const QString &ip); void enableServer(int status); void enableperformanceWorkaround(int status); void updatePort(); signals: void portChanged(QString port); }; class QrEncoder { public: QrEncoder(); QBitmap encode(const QString &string); private: /*libqrencode data structures*/ typedef struct { int version; ///< version of the symbol int width; ///< width of the symbol unsigned char *data; ///< symbol data } QRcode; typedef QRcode *(*_QRcode_encodeString8bit)(char[], int, int); typedef void (*_QRcode_free)(QRcode *); _QRcode_free QRcode_free; _QRcode_encodeString8bit QRcode_encodeString8bit; }; #endif