aboutsummaryrefslogtreecommitdiff
path: root/src/widgets/server_editor_dialog.h
blob: a8844d4b656bfdb6f6774eadb25ea2b1c815040f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#pragma once

#include "network/serverinfo.h"

#include <QComboBox>
#include <QDialog>
#include <QDialogButtonBox>
#include <QLabel>
#include <QLineEdit>
#include <QPlainTextEdit>
#include <QPushButton>
#include <QSpinBox>

class ServerEditorDialog : public QDialog
{
  Q_OBJECT

public:
  ServerEditorDialog(QWidget *parent = nullptr);
  ServerEditorDialog(const ServerInfo &server, QWidget *parent = nullptr);

  ServerInfo currentServerInfo() const;

private:
  static const QString UI_FILE_PATH;

  QWidget *ui_body;

  QLineEdit *ui_name;
  QLineEdit *ui_hostname;
  QSpinBox *ui_port;
  QPlainTextEdit *ui_description;
  QDialogButtonBox *ui_button_box;

  QLineEdit *ui_legacy_edit;
  QPushButton *ui_parse_legacy;

private Q_SLOTS:
  void parseLegacyEntry();
};