Skip to content

Commit d6fcfd4

Browse files
committed
Plugins::FileTransfer: add parameters
1 parent 4073aab commit d6fcfd4

14 files changed

Lines changed: 477 additions & 13 deletions

Plugins/FileTransfer/CMakeLists.txt

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,21 @@ project(FileTransfer LANGUAGES CXX
55
SET(FileTransfer_LIBS Plugin)
66
SET(FileTransfer_SOURCE_FILES
77
PluginFileTransfer.cpp
8+
OperateFileTransfer.cpp
9+
FrmFileTransfer.cpp
10+
ParameterFileTransfer.cpp
11+
DlgFileTransfer.cpp
812
)
913
SET(FileTransfer_HEADER_FILES
1014
PluginFileTransfer.h
15+
OperateFileTransfer.h
16+
FrmFileTransfer.h
17+
ParameterFileTransfer.h
18+
DlgFileTransfer.h
1119
)
1220
SET(FileTransfer_UI_FILES
21+
FrmFileTransfer.ui
22+
DlgFileTransfer.ui
1323
)
1424

1525
list(APPEND FileTransfer_QT_COMPONENTS Widgets)
@@ -31,8 +41,3 @@ ADD_PLUGIN_TARGET(NAME PluginClient${PROJECT_NAME}
3141
INSTALL_RPATH ${INSTALL_RPATH}
3242
VERSION ${RabbitRemoteControl_VERSION}
3343
)
34-
35-
target_sources(PluginClientFileTransfer
36-
PRIVATE
37-
OperateFileTransfer.h OperateFileTransfer.cpp
38-
)
Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
// Copyright Copyright (c) Kang Lin studio, All Rights Reserved
2+
// Author Kang Lin <kl222@126.com>
3+
4+
#include <QLoggingCategory>
5+
6+
#include "DlgFileTransfer.h"
7+
#include "ui_DlgFileTransfer.h"
8+
9+
static Q_LOGGING_CATEGORY(log, "Plugin.FileTransfer.Dialog")
10+
CDlgFileTransfer::CDlgFileTransfer(CParameterFileTransfer *pPara, QWidget *parent)
11+
: QDialog(parent)
12+
, ui(new Ui::CDlgFileTransfer)
13+
, m_pPara(pPara)
14+
{
15+
ui->setupUi(this);
16+
ui->cbProtocol->addItem("FTP", (int)CParameterFileTransfer::Protocol::FTP);
17+
ui->cbProtocol->addItem("SFTP", (int)CParameterFileTransfer::Protocol::SFTP);
18+
int nIdx = ui->cbProtocol->findData((int)m_pPara->GetProtocol());
19+
if(-1 != nIdx)
20+
ui->cbProtocol->setCurrentIndex(nIdx);
21+
ui->wNet->SetParameter(&m_pPara->m_Net);
22+
}
23+
24+
CDlgFileTransfer::~CDlgFileTransfer()
25+
{
26+
qDebug(log) << Q_FUNC_INFO;
27+
delete ui;
28+
}
29+
30+
void CDlgFileTransfer::accept()
31+
{
32+
if(!ui->wNet->CheckValidity(true))
33+
{
34+
return;
35+
}
36+
ui->wNet->Accept();
37+
m_pPara->SetProtocol((CParameterFileTransfer::Protocol)ui->cbProtocol->currentData().toInt());
38+
QDialog::accept();
39+
}
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
// Copyright Copyright (c) Kang Lin studio, All Rights Reserved
2+
// Author Kang Lin <kl222@126.com>
3+
4+
#pragma once
5+
6+
#include <QAbstractButton>
7+
#include <QDialog>
8+
#include "ParameterFileTransfer.h"
9+
10+
namespace Ui {
11+
class CDlgFileTransfer;
12+
}
13+
14+
class CDlgFileTransfer : public QDialog
15+
{
16+
Q_OBJECT
17+
18+
public:
19+
explicit CDlgFileTransfer(CParameterFileTransfer* pPara, QWidget *parent = nullptr);
20+
virtual ~CDlgFileTransfer();
21+
22+
private:
23+
Ui::CDlgFileTransfer *ui;
24+
CParameterFileTransfer* m_pPara;
25+
26+
public slots:
27+
virtual void accept() override;
28+
};
Lines changed: 109 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,109 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<ui version="4.0">
3+
<class>CDlgFileTransfer</class>
4+
<widget class="QDialog" name="CDlgFileTransfer">
5+
<property name="geometry">
6+
<rect>
7+
<x>0</x>
8+
<y>0</y>
9+
<width>400</width>
10+
<height>300</height>
11+
</rect>
12+
</property>
13+
<property name="windowTitle">
14+
<string>Dialog</string>
15+
</property>
16+
<layout class="QGridLayout" name="gridLayout">
17+
<item row="0" column="0">
18+
<layout class="QHBoxLayout" name="horizontalLayout">
19+
<item>
20+
<widget class="QLabel" name="label">
21+
<property name="text">
22+
<string>Protocol:</string>
23+
</property>
24+
</widget>
25+
</item>
26+
<item>
27+
<widget class="QComboBox" name="cbProtocol">
28+
<property name="sizePolicy">
29+
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
30+
<horstretch>0</horstretch>
31+
<verstretch>0</verstretch>
32+
</sizepolicy>
33+
</property>
34+
</widget>
35+
</item>
36+
</layout>
37+
</item>
38+
<item row="1" column="0">
39+
<widget class="CParameterNetUI" name="wNet" native="true"/>
40+
</item>
41+
<item row="2" column="0">
42+
<spacer name="verticalSpacer">
43+
<property name="orientation">
44+
<enum>Qt::Orientation::Vertical</enum>
45+
</property>
46+
<property name="sizeHint" stdset="0">
47+
<size>
48+
<width>20</width>
49+
<height>193</height>
50+
</size>
51+
</property>
52+
</spacer>
53+
</item>
54+
<item row="3" column="0">
55+
<widget class="QDialogButtonBox" name="buttonBox">
56+
<property name="orientation">
57+
<enum>Qt::Orientation::Horizontal</enum>
58+
</property>
59+
<property name="standardButtons">
60+
<set>QDialogButtonBox::StandardButton::Cancel|QDialogButtonBox::StandardButton::Ok</set>
61+
</property>
62+
</widget>
63+
</item>
64+
</layout>
65+
</widget>
66+
<customwidgets>
67+
<customwidget>
68+
<class>CParameterNetUI</class>
69+
<extends>QWidget</extends>
70+
<header location="global">ParameterNetUI.h</header>
71+
<container>1</container>
72+
</customwidget>
73+
</customwidgets>
74+
<resources/>
75+
<connections>
76+
<connection>
77+
<sender>buttonBox</sender>
78+
<signal>accepted()</signal>
79+
<receiver>CDlgFileTransfer</receiver>
80+
<slot>accept()</slot>
81+
<hints>
82+
<hint type="sourcelabel">
83+
<x>248</x>
84+
<y>254</y>
85+
</hint>
86+
<hint type="destinationlabel">
87+
<x>157</x>
88+
<y>274</y>
89+
</hint>
90+
</hints>
91+
</connection>
92+
<connection>
93+
<sender>buttonBox</sender>
94+
<signal>rejected()</signal>
95+
<receiver>CDlgFileTransfer</receiver>
96+
<slot>reject()</slot>
97+
<hints>
98+
<hint type="sourcelabel">
99+
<x>316</x>
100+
<y>260</y>
101+
</hint>
102+
<hint type="destinationlabel">
103+
<x>286</x>
104+
<y>274</y>
105+
</hint>
106+
</hints>
107+
</connection>
108+
</connections>
109+
</ui>
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
// Copyright Copyright (c) Kang Lin studio, All Rights Reserved
2+
// Author Kang Lin <kl222@126.com>
3+
4+
#include "FrmFileTransfer.h"
5+
#include "ui_FrmFileTransfer.h"
6+
7+
CFrmFileTransfer::CFrmFileTransfer(QWidget *parent)
8+
: QWidget(parent)
9+
, ui(new Ui::CFrmFileTransfer)
10+
{
11+
ui->setupUi(this);
12+
}
13+
14+
CFrmFileTransfer::~CFrmFileTransfer()
15+
{
16+
delete ui;
17+
}
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
// Copyright Copyright (c) Kang Lin studio, All Rights Reserved
2+
// Author Kang Lin <kl222@126.com>
3+
#pragma once
4+
5+
#include <QWidget>
6+
7+
namespace Ui {
8+
class CFrmFileTransfer;
9+
}
10+
11+
class CFrmFileTransfer : public QWidget
12+
{
13+
Q_OBJECT
14+
15+
public:
16+
explicit CFrmFileTransfer(QWidget *parent = nullptr);
17+
~CFrmFileTransfer();
18+
19+
private:
20+
Ui::CFrmFileTransfer *ui;
21+
};
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<ui version="4.0">
3+
<class>CFrmFileTransfer</class>
4+
<widget class="QWidget" name="CFrmFileTransfer">
5+
<property name="geometry">
6+
<rect>
7+
<x>0</x>
8+
<y>0</y>
9+
<width>400</width>
10+
<height>300</height>
11+
</rect>
12+
</property>
13+
<property name="windowTitle">
14+
<string>Form</string>
15+
</property>
16+
</widget>
17+
<resources/>
18+
<connections/>
19+
</ui>

0 commit comments

Comments
 (0)