parent
2e376e10c6
commit
bfd36b482c
1520
ui/mainwindow.cpp
1520
ui/mainwindow.cpp
File diff suppressed because it is too large
Load Diff
227
ui/mainwindow.h
227
ui/mainwindow.h
|
@ -15,6 +15,7 @@
|
||||||
#include <QScreen>
|
#include <QScreen>
|
||||||
#include <QMetaType>
|
#include <QMetaType>
|
||||||
#include <QMessageBox>
|
#include <QMessageBox>
|
||||||
|
#include <QMutex>
|
||||||
#include <kballontip.h>
|
#include <kballontip.h>
|
||||||
|
|
||||||
#include "connectionservice.h"
|
#include "connectionservice.h"
|
||||||
|
@ -24,25 +25,27 @@
|
||||||
#include "usbmanage.h"
|
#include "usbmanage.h"
|
||||||
#include "devicemanage.h"
|
#include "devicemanage.h"
|
||||||
#include "pcscreenmanage.h"
|
#include "pcscreenmanage.h"
|
||||||
#include "classificationlist/mobilefilesecondwidget.h"
|
#include "searchserver.h"
|
||||||
#include "classificationlist/mobilefilewidget.h"
|
#include "connectinterface.h"
|
||||||
#include "connectinterface/connectinterface.h"
|
#include "searchdevicewin.h"
|
||||||
#include "connectinterface/searchdevicewin.h"
|
#include "devicecodewidget.h"
|
||||||
#include "connectinterface/devicecodewidget.h"
|
#include "titlebar.h"
|
||||||
#include "storagelist/mobilestoragewidget.h"
|
#include "homepage.h"
|
||||||
#include "view/titlebar.h"
|
#include "transmissiondialog.h"
|
||||||
#include "view/homepage.h"
|
|
||||||
#include "view/mobilefilelist.h"
|
|
||||||
#include "view/transmissiondialog.h"
|
|
||||||
#include "loadanimation.h"
|
#include "loadanimation.h"
|
||||||
#include "view/loaddialog.h"
|
#include "loaddialog.h"
|
||||||
#include "view/connectedwin.h"
|
#include "connectedwin.h"
|
||||||
#include "suspendtabbar.h"
|
#include "suspendtabbar.h"
|
||||||
#include "discovery.h"
|
#include "discovery.h"
|
||||||
#include "fineftp/server.h"
|
#include "fineftp/server.h"
|
||||||
#include "kaboutdialog.h"
|
#include "kaboutdialog.h"
|
||||||
#include "dirmanager.h"
|
#include "dirmanager.h"
|
||||||
#include "publicattributes.hpp"
|
#include "publicattributes.hpp"
|
||||||
|
#include "filemanagewin.h"
|
||||||
|
#include "multimediawin.h"
|
||||||
|
#include "androidhomepage.h"
|
||||||
|
#include "fileview.h"
|
||||||
|
#include "timelinelistwidget.h"
|
||||||
|
|
||||||
#define KYLIN_CONNECTIVITY_SEND_SERVICE "com.kylin.connectivity.send"
|
#define KYLIN_CONNECTIVITY_SEND_SERVICE "com.kylin.connectivity.send"
|
||||||
#define KYLIN_CONNECTIVITY_SEND_PATH "/com/kylin/connectivity"
|
#define KYLIN_CONNECTIVITY_SEND_PATH "/com/kylin/connectivity"
|
||||||
|
@ -84,14 +87,6 @@ private:
|
||||||
WinConnected, // 已连接页面
|
WinConnected, // 已连接页面
|
||||||
};
|
};
|
||||||
|
|
||||||
enum WinFlage {
|
|
||||||
DisconnectWin = 0, // 未连接
|
|
||||||
SyncMainWin, // 文件同步首页
|
|
||||||
SyncQQWechatWin, // qq微信文件同步页面
|
|
||||||
MultFileListWin, // 分类文件列表
|
|
||||||
FileListWin, // 存储文件列表
|
|
||||||
};
|
|
||||||
|
|
||||||
enum TYPE {
|
enum TYPE {
|
||||||
None = 0,
|
None = 0,
|
||||||
Mobile, // 手机连接
|
Mobile, // 手机连接
|
||||||
|
@ -110,101 +105,33 @@ private:
|
||||||
bool mountFtp(QString url, QString userName, QString pwd, QString path);
|
bool mountFtp(QString url, QString userName, QString pwd, QString path);
|
||||||
bool umountFtp(QString path);
|
bool umountFtp(QString path);
|
||||||
void clearConnectionInfo();
|
void clearConnectionInfo();
|
||||||
void changeLightTheme();
|
void startTimer();
|
||||||
void changeDarkTheme();
|
void startLoadUI();
|
||||||
void initUI();
|
void initUI();
|
||||||
void connectUI();
|
void connectUI();
|
||||||
void updateResult();
|
void updateResult();
|
||||||
|
void initMultiMediaWin(QMap<int, int> &map);
|
||||||
void initTransmissionDialog();
|
void initTransmissionDialog();
|
||||||
void deleteMobileListWidget();
|
void clearView();
|
||||||
void initMobileListWidget(int tag);
|
|
||||||
void setToolTipWin(QString msg, kdk::TipType type);
|
void setToolTipWin(QString msg, kdk::TipType type);
|
||||||
void uploadLocalListPath(QString itemName, const QStringList &localPath);
|
|
||||||
void initMobileConnection();
|
|
||||||
void initMobileFileSync();
|
void initMobileFileSync();
|
||||||
bool setScreenOption();
|
bool setScreenOption();
|
||||||
|
int getScreenIndex();
|
||||||
|
void deleterUI();
|
||||||
|
void deleterDialog();
|
||||||
void deleteTransmissionDialog();
|
void deleteTransmissionDialog();
|
||||||
void deleteStackedWidget();
|
void deleteStackedWidget();
|
||||||
int getScreenIndex();
|
|
||||||
void connectMobileFileWidget();
|
|
||||||
void deleterUI();
|
|
||||||
void startLoadUI();
|
|
||||||
void startTimer();
|
|
||||||
void stopLoadUI();
|
|
||||||
void updateCurrentPath(int text);
|
|
||||||
void initPcSearchInfo();
|
void initPcSearchInfo();
|
||||||
void discInit();
|
void discInit();
|
||||||
void deInitDisc();
|
void deInitDisc();
|
||||||
void connectMobileFileList();
|
void connectMobileFileList();
|
||||||
void connectMobileStorage();
|
void connectMobileStorage();
|
||||||
|
void addBackList(QStringList &list);
|
||||||
|
void checkAndroidHomePage();
|
||||||
|
void checkFileView(QStringList &pathList);
|
||||||
|
void crumbTagToAndroidItemType(QString tag);
|
||||||
|
void checkPage(QStringList crumbPathList);
|
||||||
|
|
||||||
private:
|
|
||||||
ConnectionService *m_connectionService = nullptr; // 连接服务
|
|
||||||
KMobileDiscovery::Discovery *m_discovery = nullptr; // 搜索手机设备信息
|
|
||||||
FtpManager *m_ftpClient = nullptr; // ftp服务器
|
|
||||||
DeviceManage *m_deviceManage = nullptr; // 连接手机投屏
|
|
||||||
UsbManage *m_usbManage = nullptr; // 监听USB插拔信号
|
|
||||||
WifiManager *m_wifiManager = nullptr; // 监听wifi信号
|
|
||||||
QThread *m_wifiManagerThread = nullptr; // 另起线程,监听wifi信号
|
|
||||||
FileSyncManage *m_fileSyncManage = nullptr; // 文件同步
|
|
||||||
FtpServer *m_ftpServer = nullptr;
|
|
||||||
PcScreenManage *m_pcScreen = nullptr; // PC投屏
|
|
||||||
QDBusInterface *m_dbusInterface = nullptr; // 挂载ftpdubs
|
|
||||||
DirManager *m_dirManager = nullptr; // 本地用户目录信息管理
|
|
||||||
QDBusInterface *m_modeDbusInterface = nullptr; // 平板模式切换
|
|
||||||
QDBusInterface *m_activityDbusInterface = nullptr; // 防止熄屏
|
|
||||||
|
|
||||||
bool m_isConnect = false; // 当前是否连接
|
|
||||||
QString m_currentPath = ""; // 手机存储当前路径
|
|
||||||
int m_downFileType = FileSyncManage::LIST_TYPE::TYPE_FILE_NUM; // 当前下载类型
|
|
||||||
QUrl m_url; // 服务器地址
|
|
||||||
ConnectionService::ConnectionInfo m_connectInfo; // 当前连接设备信息
|
|
||||||
bool m_isDbusOperation = false; // 当前操作是否为dbus调用
|
|
||||||
bool m_isMountFtp = false; // 是否挂载ftp
|
|
||||||
QString m_wifiIp = ""; // 本机IP
|
|
||||||
bool m_isServerConnect = false; // 服务是否连接
|
|
||||||
QString m_uploadPath = ""; // 当前为上传
|
|
||||||
bool m_isPcSearchInfo = false; // 是否为PC数据库文件
|
|
||||||
QString m_reconnectAddress = ""; // 重连ip
|
|
||||||
quint32 m_inhibitValue = 0; // 熄屏参数
|
|
||||||
|
|
||||||
Titlebar *m_titlebar = nullptr; // 标题栏
|
|
||||||
HomePage *m_homepage = nullptr; // 首页
|
|
||||||
ConnectInterface *m_connectInterfaceWin = nullptr; // 连接界面
|
|
||||||
ConnectedWin *m_connectedWin = nullptr; // 已连接界面
|
|
||||||
SearchDeviceWin *m_searchDeviceWin = nullptr; // 搜索设备界面
|
|
||||||
QStackedWidget *m_mainStackedWin = nullptr; // 主界面切换堆栈窗口
|
|
||||||
MobileFileList *m_mobileFileList = nullptr; // 文件分类界面
|
|
||||||
QStackedWidget *m_stackedMobileFileListWin = nullptr; // 分类界面与文件信息界面的堆栈窗口
|
|
||||||
kdk::KAboutDialog *m_aboutWindow = nullptr; //关于窗口
|
|
||||||
MobileFileWidget *m_listItemWidget = nullptr; // 文件信息展示界面
|
|
||||||
MobileStorageWidget *m_mobileStorageWidget = nullptr; // 手机存储界面
|
|
||||||
TransmissionDialog *m_transmissionDialog = nullptr; // 传输进度窗口
|
|
||||||
MobileFileSecondWidget *m_mobileFileSecondWidget = nullptr; // QQ微信分类界面
|
|
||||||
QMessageBox *m_messageBox = nullptr; // 请求提示框
|
|
||||||
LoadDialog *m_loadDialog = nullptr; //加载动画
|
|
||||||
LoadAnimation *m_loadAnimation = nullptr; // 打开/更新加载界面
|
|
||||||
SuspendTabBar *m_suspendTabBar = nullptr; // 投屏控制
|
|
||||||
QTimer *m_timer = nullptr; // 连接加载定时器,连接超时处理
|
|
||||||
|
|
||||||
int m_fileSyncIndex = 2; // 手机文件同步堆栈窗口索引
|
|
||||||
QListView::ViewMode m_classificationMode = QListView::IconMode; // 分类列表当前视图模式
|
|
||||||
QListView::ViewMode m_storageMode = QListView::IconMode; // 手机存储当前视图模式
|
|
||||||
QString m_tipMesseage = ""; // 提示消息
|
|
||||||
WinFlage m_winFlage = WinFlage::DisconnectWin; // 当前所在界面
|
|
||||||
PublicAttributes::Theme m_theme = PublicAttributes::Theme::Light; // 主题
|
|
||||||
QPoint m_Clickpos;
|
|
||||||
bool m_bLeftClick = false;
|
|
||||||
bool m_isTable = false; //当前模式
|
|
||||||
|
|
||||||
// disc
|
|
||||||
QProcess *m_discServer = nullptr;
|
|
||||||
QProcess *m_discClient = nullptr;
|
|
||||||
|
|
||||||
bool m_isUpdated;
|
|
||||||
QString m_searchInfoPath;
|
|
||||||
QString m_searchKeyword;
|
|
||||||
QStringList m_saveListPath;
|
|
||||||
Q_SIGNALS:
|
Q_SIGNALS:
|
||||||
// 提供dbus服务
|
// 提供dbus服务
|
||||||
void sigConnected(QString);
|
void sigConnected(QString);
|
||||||
|
@ -212,7 +139,6 @@ Q_SIGNALS:
|
||||||
void sigFileInfoList(const QMap<QString, FileInfo> &);
|
void sigFileInfoList(const QMap<QString, FileInfo> &);
|
||||||
|
|
||||||
void sigClearSearchLine();
|
void sigClearSearchLine();
|
||||||
void sigSearchUpdate();
|
|
||||||
public Q_SLOTS:
|
public Q_SLOTS:
|
||||||
// 外部
|
// 外部
|
||||||
void setLocalPathList(const QStringList &list);
|
void setLocalPathList(const QStringList &list);
|
||||||
|
@ -230,7 +156,7 @@ public Q_SLOTS:
|
||||||
void slotNoUsbDevice();
|
void slotNoUsbDevice();
|
||||||
void slotConnectFailed();
|
void slotConnectFailed();
|
||||||
void slotFtpConnected();
|
void slotFtpConnected();
|
||||||
void slotCurrentDirectoryList(const QMap<QString, FileInfo> &filelist);
|
void slotCurrentDirectoryList(const QMap<QString, FileInfo> &map);
|
||||||
void slotTransferProgress(qint64 readBytes, qint64 totalBytes);
|
void slotTransferProgress(qint64 readBytes, qint64 totalBytes);
|
||||||
void slotDownFileFinish(QString flag, QString filepath);
|
void slotDownFileFinish(QString flag, QString filepath);
|
||||||
void slotDownAllFileFinish(QString flag);
|
void slotDownAllFileFinish(QString flag);
|
||||||
|
@ -241,25 +167,25 @@ public Q_SLOTS:
|
||||||
void slotAllDeviceInfo(const QMap<QString, KMobileCommon::DiscoveryDeviceInfo> &map);
|
void slotAllDeviceInfo(const QMap<QString, KMobileCommon::DiscoveryDeviceInfo> &map);
|
||||||
void slotRequestReceived(PcScreenManage::ScreenMsg msg);
|
void slotRequestReceived(PcScreenManage::ScreenMsg msg);
|
||||||
void slotModeChanged(bool isTable);
|
void slotModeChanged(bool isTable);
|
||||||
|
void slotSearchLoadFail();
|
||||||
|
|
||||||
// UI
|
// UI
|
||||||
|
void changeTheme();
|
||||||
void slotAboutWinShow();
|
void slotAboutWinShow();
|
||||||
void onRecvSearchResult(QMap<QString, FileInfo> searchResult);
|
void slotSearchResult(const QMap<QString, FileInfo> &searchResult);
|
||||||
void slotUSBConnectOnClicked();
|
void slotUSBConnectOnClicked();
|
||||||
void slotItemButtonClicked(int text);
|
void slotCrumbIndexChange(QString text, QStringList &list);
|
||||||
void slotCdMobileStorageDirectory(QString path);
|
void slotFileManageBtnClicked(FileManageWin::BtnType type);
|
||||||
|
void slotSearchTextChanged(QString text);
|
||||||
|
void slotDownFile(QString path, QList<FileInfo> &fileList);
|
||||||
|
void slotUploadFile(QString dirName, const QStringList &localPathList);
|
||||||
|
void slotAndroidBtnClicked(AndroidItem::Type type);
|
||||||
|
void slotCdDirectory(QString path);
|
||||||
|
void slotOpenFile(FileInfo::FileType type, QString path);
|
||||||
|
void slotFileItemSelecAll(bool isSelectAll);
|
||||||
void slotContinueSearch();
|
void slotContinueSearch();
|
||||||
void slotDownThumb();
|
|
||||||
void slotMenuFilePath(QString filePath);
|
|
||||||
void slotSetLastWidget();
|
|
||||||
void slotShowMobileFileListWidget();
|
|
||||||
void slotLocalPathList(const QStringList &localPathList);
|
|
||||||
void slotShowMobileFileSecondWidget(int indexPath);
|
|
||||||
void slotShowMobileStorage();
|
|
||||||
void slotChooseFilePath(QString chooseFilePath, const QList<FileInfo> &selectFileNameList);
|
|
||||||
void slotAbortTransmission();
|
void slotAbortTransmission();
|
||||||
void slotConnectBtnClicked();
|
void slotConnectBtnClicked();
|
||||||
void slotSearchInitFail();
|
|
||||||
void slotInitDiscServerResult(bool);
|
void slotInitDiscServerResult(bool);
|
||||||
void slotReturnHomePage();
|
void slotReturnHomePage();
|
||||||
void slotConnectServiceUI(QString address);
|
void slotConnectServiceUI(QString address);
|
||||||
|
@ -267,10 +193,75 @@ public Q_SLOTS:
|
||||||
void slotExitMobileScreen();
|
void slotExitMobileScreen();
|
||||||
void slotExitPcScreen();
|
void slotExitPcScreen();
|
||||||
void slotTabBtnClicked(SuspendTabBar::BtnType type);
|
void slotTabBtnClicked(SuspendTabBar::BtnType type);
|
||||||
void slotSetSearchInfoFinish(bool isUpdated, QString searchInfoPath);
|
void slotSearchInfoFinish(QString searchInfoPath);
|
||||||
void slotMobileFileListSearchClicked();
|
|
||||||
void slotSearchKeyword(QString query);
|
private:
|
||||||
void slotSearchUpdateClicked();
|
ConnectionService *m_connectionService = nullptr; // 连接服务
|
||||||
|
KMobileDiscovery::Discovery *m_discovery = nullptr; // 搜索手机设备信息
|
||||||
|
FtpManager *m_ftpClient = nullptr; // ftp服务器
|
||||||
|
DeviceManage *m_deviceManage = nullptr; // 连接手机投屏
|
||||||
|
UsbManage *m_usbManage = nullptr; // 监听USB插拔信号
|
||||||
|
WifiManager *m_wifiManager = nullptr; // 监听wifi信号
|
||||||
|
QThread *m_wifiManagerThread = nullptr; // 另起线程,监听wifi信号
|
||||||
|
FileSyncManage *m_fileSyncManage = nullptr; // 文件同步
|
||||||
|
SearchServer *m_searchServer = nullptr; // 文件搜索
|
||||||
|
QThread *m_searchThread = nullptr; // 文件搜索线程
|
||||||
|
FtpServer *m_ftpServer = nullptr; // ftp服务器
|
||||||
|
PcScreenManage *m_pcScreen = nullptr; // PC投屏
|
||||||
|
QDBusInterface *m_dbusInterface = nullptr; // 挂载ftpdubs
|
||||||
|
DirManager *m_dirManager = nullptr; // 本地用户目录信息管理
|
||||||
|
QDBusInterface *m_modeDbusInterface = nullptr; // 平板模式切换
|
||||||
|
QDBusInterface *m_activityDbusInterface = nullptr; // 防止熄屏
|
||||||
|
QTimer *m_timer = nullptr; // 连接加载定时器,连接超时处理
|
||||||
|
// disc
|
||||||
|
QProcess *m_discServer = nullptr;
|
||||||
|
QProcess *m_discClient = nullptr;
|
||||||
|
|
||||||
|
Titlebar *m_titlebar = nullptr; // 标题栏
|
||||||
|
HomePage *m_homepage = nullptr; // 首页
|
||||||
|
ConnectInterface *m_connectInterfaceWin = nullptr; // 连接界面
|
||||||
|
ConnectedWin *m_connectedWin = nullptr; // 已连接界面
|
||||||
|
QStackedWidget *m_mainStackedWin = nullptr; // 主界面切换堆栈窗口
|
||||||
|
FileManageWin *m_fileManageWin = nullptr; // 文件管理title
|
||||||
|
AndroidHomePage *m_androidHomePage = nullptr; // 安卓文件管理首页
|
||||||
|
MultiMediaWin *m_multiMediaWin = nullptr; // QQ | 微信文件首页
|
||||||
|
TimeLineListWidget *m_timeLineView = nullptr; // 图片视频列表
|
||||||
|
FileView *m_fileView = nullptr; // 文件信息列表
|
||||||
|
kdk::KAboutDialog *m_aboutWindow = nullptr; // 关于窗口
|
||||||
|
TransmissionDialog *m_transmissionDialog = nullptr; // 传输进度窗口
|
||||||
|
QMessageBox *m_messageBox = nullptr; // 请求提示框
|
||||||
|
SuspendTabBar *m_suspendTabBar = nullptr; // 投屏控制
|
||||||
|
kdk::KBallonTip *m_tipWin; // 消息提示
|
||||||
|
LoadDialog *m_loadDialog = nullptr; // 加载等待
|
||||||
|
|
||||||
|
bool m_isConnect = false; // 当前是否连接
|
||||||
|
FileSyncManage::FileType m_downFileType = FileSyncManage::FileType::FileNum; // 当前下载类型
|
||||||
|
FileSyncManage::FileKey m_fileKey = FileSyncManage::FileKey::Default; // 当前文件同步类型
|
||||||
|
QUrl m_url; // 服务器地址
|
||||||
|
ConnectionService::ConnectionInfo m_connectInfo; // 当前连接设备信息
|
||||||
|
bool m_isDbusOperation = false; // 当前操作是否为dbus调用
|
||||||
|
bool m_isMountFtp = false; // 是否挂载ftp
|
||||||
|
QString m_wifiIp = ""; // 本机IP
|
||||||
|
bool m_isServerConnect = false; // 服务是否连接
|
||||||
|
QString m_uploadPath = ""; // 当前上传路径
|
||||||
|
bool m_isPcSearchInfo = false; // 是否为PC数据库文件
|
||||||
|
int m_searchLoadNum = 0; // 搜索数据加载次数
|
||||||
|
QString m_reconnectAddress = ""; // 重连ip
|
||||||
|
quint32 m_inhibitValue = 0; // 熄屏参数
|
||||||
|
PublicAttributes::Model m_model = PublicAttributes::Model::PcModel; // 当前模式
|
||||||
|
QList<QStringList> m_backList; // 回退列表
|
||||||
|
QList<QStringList> m_forwardList; // 前进列表
|
||||||
|
bool m_isFileViewPage = true; // 当前是否为文件视图
|
||||||
|
QStringList m_lastPathList; // 搜索文件前最后一次面包屑路径
|
||||||
|
QListView::ViewMode m_viewMode = QListView::IconMode; // 手机存储当前视图模式
|
||||||
|
QString m_tipMesseage = ""; // 提示消息
|
||||||
|
PublicAttributes::Theme m_theme = PublicAttributes::Theme::Light; // 主题
|
||||||
|
bool m_bLeftClick = false;
|
||||||
|
bool m_isTable = false; //当前模式
|
||||||
|
QString m_searchInfoPath;
|
||||||
|
QString m_searchKeyword;
|
||||||
|
QStringList m_saveListPath;
|
||||||
|
bool m_isDownloadingThumbanil = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // MAINWINDOW_H
|
#endif // MAINWINDOW_H
|
||||||
|
|
Loading…
Reference in New Issue