Rabbit Remote Control 0.1.0-de
Loading...
Searching...
No Matches
DlgSettingsTelnet.cpp
1// Author: Kang Lin <kl222@126.com>
2
3#include "DlgSettingsTelnet.h"
4#include "ui_DlgSettingsTelnet.h"
5
6CDlgSettingsTelnet::CDlgSettingsTelnet(CParameterTelnet *pPara, QWidget *parent)
7 : QDialog(parent)
8 , ui(new Ui::CDlgSettingsTelnet)
9 , m_pPara(pPara)
10{
11 ui->setupUi(this);
12
13 Q_ASSERT(m_pPara);
14
15 ui->leName->setText(m_pPara->GetName());
16 ui->leLogin->setText(pPara->GetLogin());
17 ui->lePassword->setText(pPara->GetPassword());
18
19 ui->wNet->SetParameter(&m_pPara->m_Net);
20 m_pFrmParaAppearnce =
21 new CParameterTerminalUI(this);
22 if(m_pFrmParaAppearnce) {
23 m_pFrmParaAppearnce->SetParameter(&m_pPara->m_Terminal);
24 ui->tabWidget->addTab(m_pFrmParaAppearnce,
25 m_pFrmParaAppearnce->windowTitle());
26 }
27
28 foreach(auto c, m_pPara->GetCommands()) {
29 ui->lvCommands->addItem(c);
30 }
31}
32
33CDlgSettingsTelnet::~CDlgSettingsTelnet()
34{
35 delete ui;
36}
37
38void CDlgSettingsTelnet::on_pbOK_clicked()
39{
40 if(!ui->wNet->CheckValidity(true)) {
41 ui->tabWidget->setCurrentIndex(0);
42 return;
43 }
44
45 ui->wNet->Accept();
46 if(m_pFrmParaAppearnce)
47 m_pFrmParaAppearnce->Accept();
48
49 m_pPara->SetName(ui->leName->text());
50 m_pPara->SetLogin(ui->leLogin->text());
51 m_pPara->SetPassword(ui->lePassword->text());
52
53 QStringList cmds;
54 for(int i = 0; i < ui->lvCommands->count(); i++) {
55 auto c = ui->lvCommands->item(i)->data(Qt::DisplayRole).toString();
56 cmds << c;
57 }
58 if(!cmds.isEmpty())
59 m_pPara->SetCommands(cmds);
60
61 accept();
62}
63
64void CDlgSettingsTelnet::on_pbCancel_clicked()
65{
66 reject();
67}
68
69void CDlgSettingsTelnet::on_pbAddCommand_clicked()
70{
71 QString szCmd = ui->leCommand->text();
72 if(szCmd.isEmpty())
73 return;
74 if(ui->lvCommands->findItems(szCmd, Qt::MatchCaseSensitive).isEmpty())
75 ui->lvCommands->addItem(szCmd);
76 ui->leCommand->setText(QString());
77}
78
79void CDlgSettingsTelnet::on_leCommand_editingFinished()
80{
81 on_pbAddCommand_clicked();
82}
83
84void CDlgSettingsTelnet::on_pbDeleteCommands_clicked()
85{
86 auto item = ui->lvCommands->currentItem();
87 delete item;
88}
QString GetPassword() const
Password Regular Expression.
QString GetLogin() const
Login Regular Expression.
virtual int Accept() override
Accept parameters.