4#include <QLoggingCategory>
5#include "OperateFtpServer.h"
6#include "BackendFtpServer.h"
7#include "DlgSettings.h"
9static Q_LOGGING_CATEGORY(log,
"FtpServer.Operate")
16 qDebug(log) << Q_FUNC_INFO;
19COperateFtpServer::~COperateFtpServer()
21 qDebug(log) << Q_FUNC_INFO;
36 qDebug(log) << Q_FUNC_INFO;
43 qDebug(log) << Q_FUNC_INFO;
44 if(m_pStart && m_pStart->isChecked())
45 m_pStart->setChecked(
false);
50CBackend* COperateFtpServer::InstanceBackend()
53 bool check = connect(p, SIGNAL(sigConnectCount(
int,
int,
int)),
54 m_pView, SLOT(slotConnectCount(
int,
int,
int)));
56 check = connect(p, SIGNAL(sigConnected(QString,quint16)),
57 m_pView, SLOT(slotConnected(QString,quint16)));
59 check = connect(p, SIGNAL(sigDisconnected(QString,quint16)),
60 m_pView, SLOT(slotDisconnected(QString,quint16)));
62 check = connect(m_pView, SIGNAL(sigDisconnect(QString,quint16)),
63 p, SLOT(slotDisconnect(QString,quint16)));
70 qDebug(log) << Q_FUNC_INFO;
83 return m_Para->Load(set);
90 return m_Para->Save(set);
96 qDebug(log) << Q_FUNC_INFO;
106 emit this->sigUpdateParameters(this);
114 m_pStart = m_Menu.addAction(QIcon::fromTheme(
"media-playback-start"), tr(
"Start server"));
115 check = connect(m_pStart, &QAction::toggled,
this, &COperateFtpServer::slotStart);
117 m_pStart->setCheckable(
true);
118 m_pStart->setToolTip(m_pStart->text());
119 if(m_pActionSettings) {
120 m_Menu.addSeparator();
121 m_Menu.addAction(m_pActionSettings);
130 qDebug(log) << Q_FUNC_INFO;
136QSharedPointer<CParameterFtpServer> COperateFtpServer::GetParameter()
141void COperateFtpServer::slotStart(
bool checked)
143 qDebug(log) << Q_FUNC_INFO << m_pStart->isChecked();
146 m_pStart->setText(tr(
"Start server"));
147 m_pStart->setToolTip(m_pStart->text());
148 m_pStart->setIcon(QIcon::fromTheme(
"media-playback-start"));
158 m_pStart->setText(tr(
"Stop server"));
159 m_pStart->setToolTip(m_pStart->text());
160 m_pStart->setIcon(QIcon::fromTheme(
"media-playback-stop"));
161 Q_ASSERT(!m_pThread);
164 qCritical(log) <<
"new CBackendThread fail";
168 this, [
this](
const int nError,
const QString &szError){
169 m_pStart->setChecked(
false);
后端接口。它由协议插件实现。 它默认启动一个定时器来开启一个非 Qt 事件循环(就是普通的循环处理)。 详见: Start()、 slotTimeOut()、 OnProcess() 。 当然,它仍然支...
virtual QDialog * OnOpenDialogSettings(QWidget *parent) override
得到设置对话框
virtual int Stop() override
关闭
virtual const qint16 Version() const override
Version
virtual int SetGlobalParameters(CParameterPlugin *pPara) override
应用插件全局参数
virtual int Start() override
开始
virtual int Initial() override
Initial parameters and resource
virtual int Clean() override
Clean parameters and resource
virtual QWidget * GetViewer() override
得到显示视图
virtual int Save(QSettings &set) override
保存参数
virtual int Load(QSettings &set) override
加载参数
void sigFinished()
断开连接成功信号。仅由插件触发
void sigRunning()
开始成功信号。仅由插件触发。
void sigError(const int nError, const QString &szError)
当有错误产生时触发。
virtual Q_INVOKABLE int Initial()
Initial parameters and resource
void sigChanged()
当参数改变时,触发 通常如果需要,则相应的参数会对应一个改变事件。