1039 lines
45 KiB
Diff
1039 lines
45 KiB
Diff
From e1ac89bb3883bef193b5544f9152096a11d17849 Mon Sep 17 00:00:00 2001
|
||
From: liuhao-startmenu <liuhao@kylinos.cn>
|
||
Date: Fri, 3 Apr 2020 18:08:57 +0800
|
||
Subject: [PATCH] Fixed application icon dragging problem
|
||
|
||
---
|
||
src/CommonUseWidget/commonusewidget.cpp | 61 +++++++++-
|
||
src/CommonUseWidget/commonusewidget.h | 14 ++-
|
||
src/CommonUseWidget/fullcommonusewidget.cpp | 58 +++++++++-
|
||
src/CommonUseWidget/fullcommonusewidget.h | 14 ++-
|
||
src/FunctionWidget/fullfunctionwidget.cpp | 17 +--
|
||
src/FunctionWidget/fullfunctionwidget.h | 2 +-
|
||
src/FunctionWidget/functionwidget.cpp | 2 +-
|
||
src/FunctionWidget/functionwidget.h | 4 +-
|
||
src/LetterWidget/fullletterwidget.cpp | 6 +-
|
||
src/LetterWidget/fullletterwidget.h | 2 +-
|
||
src/LetterWidget/letterwidget.cpp | 2 +-
|
||
src/LetterWidget/letterwidget.h | 4 +-
|
||
src/MainViewWidget/mainviewwidget.cpp | 72 ++++++++----
|
||
src/RightClickMenu/rightclickmenu.cpp | 29 ++---
|
||
src/RightClickMenu/rightclickmenu.h | 108 +++++++++---------
|
||
.../fullsearchresultwidget.cpp | 2 +-
|
||
.../fullsearchresultwidget.h | 3 +-
|
||
src/SearchResultWidget/searchresultwidget.cpp | 2 +-
|
||
src/SearchResultWidget/searchresultwidget.h | 2 +-
|
||
src/UtilityFunction/fulllistview.cpp | 18 +--
|
||
src/UtilityFunction/fulllistview.h | 8 +-
|
||
src/UtilityFunction/listview.cpp | 15 ++-
|
||
src/UtilityFunction/listview.h | 10 +-
|
||
23 files changed, 300 insertions(+), 155 deletions(-)
|
||
|
||
diff --git a/src/CommonUseWidget/commonusewidget.cpp b/src/CommonUseWidget/commonusewidget.cpp
|
||
index b216247..d932ada 100644
|
||
--- a/src/CommonUseWidget/commonusewidget.cpp
|
||
+++ b/src/CommonUseWidget/commonusewidget.cpp
|
||
@@ -69,9 +69,10 @@ void CommonUseWidget::initAppListWidget()
|
||
listview=new ListView(this,this->width()-4,this->height(),0);
|
||
mainLayout->addWidget(listview);
|
||
connect(listview,SIGNAL(sendItemClickedSignal(QStringList)),this,SLOT(execApplication(QStringList)));
|
||
- connect(listview,SIGNAL(sendUpdateAppListSignal()),this,SIGNAL(sendUpdateAppListSignal()));
|
||
+ connect(listview,SIGNAL(sendUpdateAppListSignal(QString,int)),this,SIGNAL(sendUpdateAppListSignal(QString,int)));
|
||
+ connect(listview,SIGNAL(removeListItemSignal(QString)),this,SIGNAL(removeListItemSignal(QString)));
|
||
+ connect(listview,SIGNAL(removeListAllItemSignal()),this,SIGNAL(removeListAllItemSignal()));
|
||
connect(listview,SIGNAL(sendHideMainWindowSignal()),this,SIGNAL(sendHideMainWindowSignal()));
|
||
-
|
||
}
|
||
|
||
/**
|
||
@@ -103,17 +104,67 @@ void CommonUseWidget::execApplication(QStringList arg)
|
||
/**
|
||
* 更新应用列表槽函数
|
||
*/
|
||
-void CommonUseWidget::updateListViewSlot()
|
||
+void CommonUseWidget::updateListViewSlot(QString desktopfp, int type)
|
||
+{
|
||
+ for(int i=0;i<listview->model()->rowCount();i++)
|
||
+ {
|
||
+ QVariant var=listview->model()->index(i,0).data(Qt::DisplayRole);
|
||
+ QString path=var.value<QStringList>().at(0);
|
||
+ if(QString::compare(path,desktopfp)==0)
|
||
+ {
|
||
+ listview->model()->removeRow(i);
|
||
+ break;
|
||
+ }
|
||
+ }
|
||
+ setting->beginGroup("lockapplication");
|
||
+ QStandardItem* item=new QStandardItem;
|
||
+ item->setData(QVariant::fromValue<QStringList>(QStringList()<<desktopfp<<"1"),Qt::DisplayRole);
|
||
+ QStandardItemModel* listmodel=qobject_cast<QStandardItemModel*>(listview->model());
|
||
+ if(type==0)
|
||
+ listmodel->insertRow(setting->allKeys().size()-1,item);
|
||
+ else
|
||
+ listmodel->insertRow(setting->allKeys().size(),item);
|
||
+ setting->endGroup();
|
||
+}
|
||
+
|
||
+void CommonUseWidget::updateListViewAllSlot()
|
||
{
|
||
getCommonUseAppList();
|
||
listview->updateData(data);
|
||
}
|
||
|
||
+void CommonUseWidget::removeListItemSlot(QString desktopfp)
|
||
+{
|
||
+ for(int i=0;i<listview->model()->rowCount();i++)
|
||
+ {
|
||
+ QVariant var=listview->model()->index(i,0).data(Qt::DisplayRole);
|
||
+ QString path=var.value<QStringList>().at(0);
|
||
+ if(QString::compare(path,desktopfp)==0)
|
||
+ {
|
||
+ listview->model()->removeRow(i);
|
||
+ break;
|
||
+ }
|
||
+ }
|
||
+}
|
||
+
|
||
+void CommonUseWidget::removeListAllItemSlot()
|
||
+{
|
||
+ setting->beginGroup("lockapplication");
|
||
+ for(int i=listview->model()->rowCount()-1;i>=0;i--)
|
||
+ {
|
||
+ QVariant var=listview->model()->index(i,0).data(Qt::DisplayRole);
|
||
+ QString desktopfp=var.value<QStringList>().at(0);
|
||
+ QFileInfo fileInfo(desktopfp);
|
||
+ QString desktopfn=fileInfo.fileName();
|
||
+ if(!setting->contains(desktopfn))
|
||
+ listview->model()->removeRow(i);
|
||
+ }
|
||
+ setting->endGroup();
|
||
+}
|
||
+
|
||
void CommonUseWidget::getCommonUseAppList()
|
||
{
|
||
-// QStringList lockdesktopfnList;
|
||
QStringList desktopfnList;
|
||
-// lockdesktopfnList.clear();
|
||
desktopfnList.clear();
|
||
setting->beginGroup("lockapplication");
|
||
QStringList lockdesktopfnList=setting->allKeys();
|
||
diff --git a/src/CommonUseWidget/commonusewidget.h b/src/CommonUseWidget/commonusewidget.h
|
||
index 84dedcd..ae4a6f2 100644
|
||
--- a/src/CommonUseWidget/commonusewidget.h
|
||
+++ b/src/CommonUseWidget/commonusewidget.h
|
||
@@ -68,12 +68,22 @@ protected:
|
||
void getCommonUseAppList();//获取常用应用列表
|
||
|
||
private Q_SLOTS:
|
||
- void updateListViewSlot();//更新应用列表槽函数
|
||
+ /**
|
||
+ * @brief 更新单个item槽函数
|
||
+ * @param desktopfp为desktop文件路径
|
||
+ * @param type为0时表示固定,为1时表示取消固定
|
||
+ */
|
||
+ void updateListViewSlot(QString desktopfp,int type);
|
||
void execApplication(QStringList arg);//执行应用程序
|
||
+ void removeListItemSlot(QString desktopfp);//删除单个item
|
||
+ void removeListAllItemSlot();//删除所有非固定item
|
||
+ void updateListViewAllSlot();//更新应用列表槽函数
|
||
|
||
Q_SIGNALS:
|
||
void sendHideMainWindowSignal();//向MainViewWidget发送隐藏主窗口信号
|
||
- void sendUpdateAppListSignal();//向FullCommonUseWidget发送更新应用列表信号
|
||
+ void sendUpdateAppListSignal(QString desktopfp,int type);//向FullCommonUseWidget发送更新应用列表信号
|
||
+ void removeListItemSignal(QString desktopfp);
|
||
+ void removeListAllItemSignal();
|
||
};
|
||
|
||
#endif // COMMONUSEWIDGET_H
|
||
diff --git a/src/CommonUseWidget/fullcommonusewidget.cpp b/src/CommonUseWidget/fullcommonusewidget.cpp
|
||
index d6bb171..a56316e 100644
|
||
--- a/src/CommonUseWidget/fullcommonusewidget.cpp
|
||
+++ b/src/CommonUseWidget/fullcommonusewidget.cpp
|
||
@@ -63,7 +63,9 @@ void FullCommonUseWidget::initAppListWidget()
|
||
listview=new FullListView(this,0);
|
||
mainLayout->addWidget(listview);
|
||
connect(listview,SIGNAL(sendItemClickedSignal(QString)),this,SLOT(execApplication(QString)));
|
||
- connect(listview,SIGNAL(sendUpdateAppListSignal()),this,SIGNAL(sendUpdateAppListSignal()));
|
||
+ connect(listview,SIGNAL(sendUpdateAppListSignal(QString,int)),this,SIGNAL(sendUpdateAppListSignal(QString,int)));
|
||
+ connect(listview,SIGNAL(removeListItemSignal(QString)),this,SIGNAL(removeListItemSignal(QString)));
|
||
+ connect(listview,SIGNAL(removeListAllItemSignal()),this,SIGNAL(removeListAllItemSignal()));
|
||
connect(listview,SIGNAL(sendHideMainWindowSignal()),this,SIGNAL(sendHideMainWindowSignal()));
|
||
}
|
||
|
||
@@ -92,12 +94,64 @@ void FullCommonUseWidget::execApplication(QString appname)
|
||
/**
|
||
* 更新应用列表
|
||
*/
|
||
-void FullCommonUseWidget::updateListViewSlot()
|
||
+void FullCommonUseWidget::updateListViewSlot(QString desktopfp, int type)
|
||
+{
|
||
+ for(int i=0;i<listview->model()->rowCount();i++)
|
||
+ {
|
||
+ QVariant var=listview->model()->index(i,0).data(Qt::DisplayRole);
|
||
+ QString path=var.value<QString>();
|
||
+ if(QString::compare(path,desktopfp)==0)
|
||
+ {
|
||
+ listview->model()->removeRow(i);
|
||
+ break;
|
||
+ }
|
||
+ }
|
||
+ setting->beginGroup("lockapplication");
|
||
+ QStandardItem* item=new QStandardItem;
|
||
+ item->setData(QVariant::fromValue<QString>(desktopfp),Qt::DisplayRole);
|
||
+ QStandardItemModel* listmodel=qobject_cast<QStandardItemModel*>(listview->model());
|
||
+ if(type==0)
|
||
+ listmodel->insertRow(setting->allKeys().size()-1,item);
|
||
+ else
|
||
+ listmodel->insertRow(setting->allKeys().size(),item);
|
||
+ setting->endGroup();
|
||
+}
|
||
+
|
||
+void FullCommonUseWidget::updateListViewAllSlot()
|
||
{
|
||
getCommonUseAppList();
|
||
listview->updateData(data);
|
||
}
|
||
|
||
+void FullCommonUseWidget::removeListItemSlot(QString desktopfp)
|
||
+{
|
||
+ for(int i=0;i<listview->model()->rowCount();i++)
|
||
+ {
|
||
+ QVariant var=listview->model()->index(i,0).data(Qt::DisplayRole);
|
||
+ QString path=var.value<QString>();
|
||
+ if(QString::compare(path,desktopfp)==0)
|
||
+ {
|
||
+ listview->model()->removeRow(i);
|
||
+ break;
|
||
+ }
|
||
+ }
|
||
+}
|
||
+
|
||
+void FullCommonUseWidget::removeListAllItemSlot()
|
||
+{
|
||
+ setting->beginGroup("lockapplication");
|
||
+ for(int i=listview->model()->rowCount()-1;i>=0;i--)
|
||
+ {
|
||
+ QVariant var=listview->model()->index(i,0).data(Qt::DisplayRole);
|
||
+ QString desktopfp=var.value<QString>();
|
||
+ QFileInfo fileInfo(desktopfp);
|
||
+ QString desktopfn=fileInfo.fileName();
|
||
+ if(!setting->contains(desktopfn))
|
||
+ listview->model()->removeRow(i);
|
||
+ }
|
||
+ setting->endGroup();
|
||
+}
|
||
+
|
||
void FullCommonUseWidget::getCommonUseAppList()
|
||
{
|
||
QStringList desktopfnList;
|
||
diff --git a/src/CommonUseWidget/fullcommonusewidget.h b/src/CommonUseWidget/fullcommonusewidget.h
|
||
index c5a7d4e..9b7627c 100644
|
||
--- a/src/CommonUseWidget/fullcommonusewidget.h
|
||
+++ b/src/CommonUseWidget/fullcommonusewidget.h
|
||
@@ -70,12 +70,22 @@ protected:
|
||
void getCommonUseAppList();//获取常用应用列表
|
||
|
||
private Q_SLOTS:
|
||
- void updateListViewSlot();//更新应用列表槽函数
|
||
+ /**
|
||
+ * @brief 更新单个item槽函数
|
||
+ * @param desktopfp为desktop文件路径
|
||
+ * @param type为0时表示固定,为1时表示取消固定
|
||
+ */
|
||
+ void updateListViewSlot(QString desktopfp,int type);
|
||
void execApplication(QString appname);//执行应用程序
|
||
+ void removeListItemSlot(QString desktopfp);//删除单个item
|
||
+ void removeListAllItemSlot();//删除所有非固定item
|
||
+ void updateListViewAllSlot();//更新应用列表槽函数
|
||
|
||
Q_SIGNALS:
|
||
- void sendUpdateAppListSignal();//向CommonUseWidget发送更新应用列表信号
|
||
+ void sendUpdateAppListSignal(QString desktopfp,int type);//向CommonUseWidget发送更新应用列表信号
|
||
void sendHideMainWindowSignal();//向MainViewWidget发送隐藏主窗口信号
|
||
+ void removeListItemSignal(QString desktopfp);
|
||
+ void removeListAllItemSignal();
|
||
};
|
||
|
||
#endif // FULLCOMMONUSEWIDGET_H
|
||
diff --git a/src/FunctionWidget/fullfunctionwidget.cpp b/src/FunctionWidget/fullfunctionwidget.cpp
|
||
index 8c0e29d..18f9c0f 100644
|
||
--- a/src/FunctionWidget/fullfunctionwidget.cpp
|
||
+++ b/src/FunctionWidget/fullfunctionwidget.cpp
|
||
@@ -259,7 +259,7 @@ void FullFunctionWidget::insertAppList(QStringList appnamelist)
|
||
}
|
||
listview->addData(data);
|
||
connect(listview,SIGNAL(sendItemClickedSignal(QString)),this,SLOT(execApplication(QString)));
|
||
- connect(listview,SIGNAL(sendFixedOrUnfixedSignal()),this,SIGNAL(sendUpdateAppListSignal()));
|
||
+ connect(listview,SIGNAL(sendFixedOrUnfixedSignal(QString,int)),this,SIGNAL(sendUpdateAppListSignal(QString,int)));
|
||
connect(listview,SIGNAL(sendHideMainWindowSignal()),this,SIGNAL(sendHideMainWindowSignal()));
|
||
}
|
||
|
||
@@ -307,18 +307,6 @@ void FullFunctionWidget::updateAppListView()
|
||
delete wid;
|
||
delete child;
|
||
}
|
||
-
|
||
-// for(int i=iconlistscrollareawidLayout->count()-2;i>0;i--)
|
||
-// {
|
||
-// if((child = iconlistscrollareawidLayout->takeAt(i)) != 0)
|
||
-// {
|
||
-// QWidget* wid=child->widget();
|
||
-// iconlistscrollareawidLayout->removeWidget(wid);
|
||
-// wid->setParent(nullptr);
|
||
-// delete wid;
|
||
-// delete child;
|
||
-// }
|
||
-// }
|
||
initIconListScrollArea();
|
||
}
|
||
|
||
@@ -444,8 +432,8 @@ void FullFunctionWidget::btnGroupClickedSlot(QAbstractButton *btn)
|
||
{
|
||
beforebtnPos=scrollarea->verticalScrollBar()->sliderPosition();
|
||
endPos=classificationbtnrowlist.at(num).toInt();
|
||
+ scrollarea->setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
|
||
timer->start(1);
|
||
-// scrollarea->verticalScrollBar()->setSliderPosition(pos);
|
||
}
|
||
|
||
QSvgRenderer* svgRender = new QSvgRenderer;
|
||
@@ -493,6 +481,7 @@ void FullFunctionWidget::timeOutSlot()
|
||
scrollarea->verticalScrollBar()->sliderPosition()>=scrollarea->verticalScrollBar()->maximum())
|
||
{
|
||
timer->stop();
|
||
+ scrollarea->setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOn);
|
||
connect(scrollarea->verticalScrollBar(),SIGNAL(valueChanged(int)),
|
||
this,SLOT(valueChangedSlot(int)));
|
||
}
|
||
diff --git a/src/FunctionWidget/fullfunctionwidget.h b/src/FunctionWidget/fullfunctionwidget.h
|
||
index 1a1b7d6..224949c 100644
|
||
--- a/src/FunctionWidget/fullfunctionwidget.h
|
||
+++ b/src/FunctionWidget/fullfunctionwidget.h
|
||
@@ -114,7 +114,7 @@ private Q_SLOTS:
|
||
void valueChangedSlot(int value);//滑动条滚动槽函数
|
||
|
||
Q_SIGNALS:
|
||
- void sendUpdateAppListSignal();//向常用软件模块发送更新应用列表信号
|
||
+ void sendUpdateAppListSignal(QString desktopfp,int type);//向常用软件模块发送更新应用列表信号
|
||
void sendHideMainWindowSignal();//向MainViewWidget发送隐藏主窗口信号
|
||
};
|
||
|
||
diff --git a/src/FunctionWidget/functionwidget.cpp b/src/FunctionWidget/functionwidget.cpp
|
||
index a524b47..9d96dc6 100644
|
||
--- a/src/FunctionWidget/functionwidget.cpp
|
||
+++ b/src/FunctionWidget/functionwidget.cpp
|
||
@@ -66,7 +66,7 @@ void FunctionWidget::initAppListWidget()
|
||
mainLayout->addWidget(applistview);
|
||
fillAppListView();
|
||
connect(applistview,SIGNAL(sendItemClickedSignal(QStringList)),this,SLOT(recvItemClickedSlot(QStringList)));
|
||
- connect(applistview,SIGNAL(sendFixedOrUnfixedSignal()),this,SIGNAL(sendUpdateAppListSignal()));
|
||
+ connect(applistview,SIGNAL(sendFixedOrUnfixedSignal(QString,int)),this,SIGNAL(sendUpdateAppListSignal(QString,int)));
|
||
connect(applistview,SIGNAL(sendHideMainWindowSignal()),this,SIGNAL(sendHideMainWindowSignal()));
|
||
|
||
}
|
||
diff --git a/src/FunctionWidget/functionwidget.h b/src/FunctionWidget/functionwidget.h
|
||
index 7b8d0f9..940aa30 100644
|
||
--- a/src/FunctionWidget/functionwidget.h
|
||
+++ b/src/FunctionWidget/functionwidget.h
|
||
@@ -79,10 +79,8 @@ private Q_SLOTS:
|
||
|
||
Q_SIGNALS:
|
||
void sendClassificationbtnList(QStringList list);//向FunctionButtonWidget界面发送分类按钮列表
|
||
- void sendUpdateAppListSignal();//向常用软件模块发送更新应用列表信号
|
||
+ void sendUpdateAppListSignal(QString desktopfp,int type);//向常用软件模块发送更新应用列表信号
|
||
void sendHideMainWindowSignal();//向MainViewWidget发送隐藏主窗口信号
|
||
-
|
||
-
|
||
};
|
||
|
||
#endif // FUNCTIONWIDGET_H
|
||
diff --git a/src/LetterWidget/fullletterwidget.cpp b/src/LetterWidget/fullletterwidget.cpp
|
||
index 9fc863c..254a6a5 100644
|
||
--- a/src/LetterWidget/fullletterwidget.cpp
|
||
+++ b/src/LetterWidget/fullletterwidget.cpp
|
||
@@ -135,7 +135,7 @@ void FullLetterWidget::fillAppList()
|
||
listview->addData(data);
|
||
|
||
connect(listview,SIGNAL(sendItemClickedSignal(QString)),this,SLOT(execApplication(QString)));
|
||
- connect(listview,SIGNAL(sendFixedOrUnfixedSignal()),this,SIGNAL(sendUpdateAppListSignal()));
|
||
+ connect(listview,SIGNAL(sendFixedOrUnfixedSignal(QString,int)),this,SIGNAL(sendUpdateAppListSignal(QString,int)));
|
||
connect(listview,SIGNAL(sendHideMainWindowSignal()),this,SIGNAL(sendHideMainWindowSignal()));
|
||
}
|
||
}
|
||
@@ -314,8 +314,8 @@ void FullLetterWidget::btnGroupClickedSlot(QAbstractButton *btn)
|
||
{
|
||
beginPos=scrollarea->verticalScrollBar()->sliderPosition();
|
||
endPos=letterbtnrowlist.at(num).toInt();
|
||
+ scrollarea->setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
|
||
timer->start(1);
|
||
-// scrollarea->verticalScrollBar()->setSliderPosition(pos);
|
||
}
|
||
}
|
||
else{
|
||
@@ -326,7 +326,6 @@ void FullLetterWidget::btnGroupClickedSlot(QAbstractButton *btn)
|
||
|
||
void FullLetterWidget::timeOutSlot()
|
||
{
|
||
-
|
||
if(beginPos<endPos)
|
||
{
|
||
if(endPos-scrollarea->verticalScrollBar()->sliderPosition()<50)
|
||
@@ -345,6 +344,7 @@ void FullLetterWidget::timeOutSlot()
|
||
scrollarea->verticalScrollBar()->sliderPosition()>=scrollarea->verticalScrollBar()->maximum())
|
||
{
|
||
timer->stop();
|
||
+ scrollarea->setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOn);
|
||
connect(scrollarea->verticalScrollBar(),SIGNAL(valueChanged(int)),
|
||
this,SLOT(valueChangedSlot(int)));
|
||
}
|
||
diff --git a/src/LetterWidget/fullletterwidget.h b/src/LetterWidget/fullletterwidget.h
|
||
index 503e7ca..3329822 100644
|
||
--- a/src/LetterWidget/fullletterwidget.h
|
||
+++ b/src/LetterWidget/fullletterwidget.h
|
||
@@ -112,7 +112,7 @@ private Q_SLOTS:
|
||
void valueChangedSlot(int value);//滑动条滚动槽函数
|
||
|
||
Q_SIGNALS:
|
||
- void sendUpdateAppListSignal();//向常用软件模块发送更新应用列表信号
|
||
+ void sendUpdateAppListSignal(QString desktopfp,int type);//向常用软件模块发送更新应用列表信号
|
||
void sendHideMainWindowSignal();//向MainViewWidget发送隐藏主窗口信号
|
||
};
|
||
|
||
diff --git a/src/LetterWidget/letterwidget.cpp b/src/LetterWidget/letterwidget.cpp
|
||
index c69cfc4..c515b66 100644
|
||
--- a/src/LetterWidget/letterwidget.cpp
|
||
+++ b/src/LetterWidget/letterwidget.cpp
|
||
@@ -87,7 +87,7 @@ void LetterWidget::initAppListWidget()
|
||
mainLayout->addWidget(applistview);
|
||
fillAppListView();
|
||
connect(applistview,SIGNAL(sendItemClickedSignal(QStringList)),this,SLOT(recvItemClickedSlot(QStringList)));
|
||
- connect(applistview,SIGNAL(sendFixedOrUnfixedSignal()),this,SIGNAL(sendUpdateAppListSignal()));
|
||
+ connect(applistview,SIGNAL(sendFixedOrUnfixedSignal(QString,int)),this,SIGNAL(sendUpdateAppListSignal(QString,int)));
|
||
connect(applistview,SIGNAL(sendHideMainWindowSignal()),this,SIGNAL(sendHideMainWindowSignal()));
|
||
|
||
}
|
||
diff --git a/src/LetterWidget/letterwidget.h b/src/LetterWidget/letterwidget.h
|
||
index 4e323ad..c3ce86f 100644
|
||
--- a/src/LetterWidget/letterwidget.h
|
||
+++ b/src/LetterWidget/letterwidget.h
|
||
@@ -74,10 +74,8 @@ private Q_SLOTS:
|
||
|
||
Q_SIGNALS:
|
||
void sendLetterBtnList(QStringList list);//向LetterButtonWidget发送字母按钮列表
|
||
- void sendUpdateAppListSignal();//向常用软件模块发送更新应用列表信号
|
||
+ void sendUpdateAppListSignal(QString desktopfp,int type);//向常用软件模块发送更新应用列表信号
|
||
void sendHideMainWindowSignal();//向MainViewWidget发送隐藏主窗口信号
|
||
-
|
||
-
|
||
};
|
||
|
||
#endif // LETTERWIDGET_H
|
||
diff --git a/src/MainViewWidget/mainviewwidget.cpp b/src/MainViewWidget/mainviewwidget.cpp
|
||
index ed354fa..507a867 100644
|
||
--- a/src/MainViewWidget/mainviewwidget.cpp
|
||
+++ b/src/MainViewWidget/mainviewwidget.cpp
|
||
@@ -81,24 +81,28 @@ void MainViewWidget::initWidget()
|
||
pUkuiMenuInterface=new UkuiMenuInterface;
|
||
|
||
//进程开启,刷新常用软件界面
|
||
- connect(this,SIGNAL(viewOpenedSignal()),fullcommonusewid,SLOT(updateListViewSlot()));
|
||
- connect(this,SIGNAL(viewOpenedSignal()),commonusewid,SLOT(updateListViewSlot()));
|
||
+ connect(this,SIGNAL(viewOpenedSignal()),fullcommonusewid,SLOT(updateListViewAllSlot()));
|
||
+ connect(this,SIGNAL(viewOpenedSignal()),commonusewid,SLOT(updateListViewAllSlot()));
|
||
|
||
//常用软件界面删除操作,刷新界面
|
||
- connect(commonusewid,SIGNAL(sendUpdateAppListSignal()),fullcommonusewid,SLOT(updateListViewSlot()));
|
||
- connect(fullcommonusewid,SIGNAL(sendUpdateAppListSignal()),commonusewid,SLOT(updateListViewSlot()));
|
||
+ connect(commonusewid,SIGNAL(sendUpdateAppListSignal(QString,int)),fullcommonusewid,SLOT(updateListViewSlot(QString,int)));
|
||
+ connect(fullcommonusewid,SIGNAL(sendUpdateAppListSignal(QString,int)),commonusewid,SLOT(updateListViewSlot(QString,int)));
|
||
+ connect(commonusewid,SIGNAL(removeListItemSignal(QString)),fullcommonusewid,SLOT(removeListItemSlot(QString)));
|
||
+ connect(fullcommonusewid,SIGNAL(removeListItemSignal(QString)),commonusewid,SLOT(removeListItemSlot(QString)));
|
||
+ connect(commonusewid,SIGNAL(removeListAllItemSignal()),fullcommonusewid,SLOT(removeListAllItemSlot()));
|
||
+ connect(fullcommonusewid,SIGNAL(removeListAllItemSignal()),commonusewid,SLOT(removeListAllItemSlot()));
|
||
|
||
//字母排序、功能分类界面、搜索界面固定或取消固定到常用软件,刷新常用软件界面
|
||
- connect(letterwid,SIGNAL(sendUpdateAppListSignal()),commonusewid,SLOT(updateListViewSlot()));
|
||
- connect(fullletterwid,SIGNAL(sendUpdateAppListSignal()),commonusewid,SLOT(updateListViewSlot()));
|
||
- connect(functionwid,SIGNAL(sendUpdateAppListSignal()),commonusewid,SLOT(updateListViewSlot()));
|
||
- connect(fullfunctionwid,SIGNAL(sendUpdateAppListSignal()),commonusewid,SLOT(updateListViewSlot()));
|
||
- connect(letterwid,SIGNAL(sendUpdateAppListSignal()),fullcommonusewid,SLOT(updateListViewSlot()));
|
||
- connect(fullletterwid,SIGNAL(sendUpdateAppListSignal()),fullcommonusewid,SLOT(updateListViewSlot()));
|
||
- connect(functionwid,SIGNAL(sendUpdateAppListSignal()),fullcommonusewid,SLOT(updateListViewSlot()));
|
||
- connect(fullfunctionwid,SIGNAL(sendUpdateAppListSignal()),fullcommonusewid,SLOT(updateListViewSlot()));
|
||
- connect(searchresultwid,SIGNAL(sendUpdateAppListSignal()),commonusewid,SLOT(updateListViewSlot()));
|
||
- connect(fullsearchresultwid,SIGNAL(sendUpdateAppListSignal()),fullcommonusewid,SLOT(updateListViewSlot()));
|
||
+ connect(letterwid,SIGNAL(sendUpdateAppListSignal(QString,int)),commonusewid,SLOT(updateListViewSlot(QString,int)));
|
||
+ connect(fullletterwid,SIGNAL(sendUpdateAppListSignal(QString,int)),commonusewid,SLOT(updateListViewSlot(QString,int)));
|
||
+ connect(functionwid,SIGNAL(sendUpdateAppListSignal(QString,int)),commonusewid,SLOT(updateListViewSlot(QString,int)));
|
||
+ connect(fullfunctionwid,SIGNAL(sendUpdateAppListSignal(QString,int)),commonusewid,SLOT(updateListViewSlot(QString,int)));
|
||
+ connect(letterwid,SIGNAL(sendUpdateAppListSignal(QString,int)),fullcommonusewid,SLOT(updateListViewSlot(QString,int)));
|
||
+ connect(fullletterwid,SIGNAL(sendUpdateAppListSignal(QString,int)),fullcommonusewid,SLOT(updateListViewSlot(QString,int)));
|
||
+ connect(functionwid,SIGNAL(sendUpdateAppListSignal(QString,int)),fullcommonusewid,SLOT(updateListViewSlot(QString,int)));
|
||
+ connect(fullfunctionwid,SIGNAL(sendUpdateAppListSignal(QString,int)),fullcommonusewid,SLOT(updateListViewSlot(QString,int)));
|
||
+ connect(searchresultwid,SIGNAL(sendUpdateAppListSignal(QString,int)),commonusewid,SLOT(updateListViewSlot(QString,int)));
|
||
+ connect(fullsearchresultwid,SIGNAL(sendUpdateAppListSignal(QString,int)),fullcommonusewid,SLOT(updateListViewSlot(QString,int)));
|
||
|
||
//监控.desktop文件目录
|
||
fileWatcher=new QFileSystemWatcher(this);
|
||
@@ -108,8 +112,8 @@ void MainViewWidget::initWidget()
|
||
connect(this,SIGNAL(directoryChangedSignal()),fullletterwid,SLOT(updateAppListView()));
|
||
connect(this,SIGNAL(directoryChangedSignal()),functionwid,SLOT(updateAppListView()));
|
||
connect(this,SIGNAL(directoryChangedSignal()),fullfunctionwid,SLOT(updateAppListView()));
|
||
- connect(this,SIGNAL(directoryChangedSignal()),commonusewid,SLOT(updateListViewSlot()));
|
||
- connect(this,SIGNAL(directoryChangedSignal()),fullcommonusewid,SLOT(updateListViewSlot()));
|
||
+ connect(this,SIGNAL(directoryChangedSignal()),commonusewid,SLOT(updateListViewAllSlot()));
|
||
+ connect(this,SIGNAL(directoryChangedSignal()),fullcommonusewid,SLOT(updateListViewAllSlot()));
|
||
|
||
//发送隐藏主界面信号
|
||
connect(commonusewid,SIGNAL(sendHideMainWindowSignal()),this,SIGNAL(sendHideMainWindowSignal()));
|
||
@@ -404,6 +408,11 @@ void MainViewWidget::loadMaxMainView()
|
||
*/
|
||
void MainViewWidget::loadCommonUseWidget()
|
||
{
|
||
+ fullcommonusewid->widgetMakeZero();
|
||
+ letterwid->widgetMakeZero();
|
||
+ fullletterwid->widgetMakeZero();
|
||
+ functionwid->widgetMakeZero();
|
||
+ fullfunctionwid->widgetMakeZero();
|
||
QLayoutItem *child;
|
||
if((child = mainLayout->takeAt(1)) != nullptr) {
|
||
QWidget* childwid=child->widget();
|
||
@@ -414,7 +423,6 @@ void MainViewWidget::loadCommonUseWidget()
|
||
}
|
||
|
||
}
|
||
- commonusewid->widgetMakeZero();
|
||
mainLayout->addWidget(commonusewid);
|
||
widgetState=1;
|
||
saveCurrentWidState=1;
|
||
@@ -425,6 +433,11 @@ void MainViewWidget::loadCommonUseWidget()
|
||
*/
|
||
void MainViewWidget::loadLetterWidget()
|
||
{
|
||
+ commonusewid->widgetMakeZero();
|
||
+ fullcommonusewid->widgetMakeZero();
|
||
+ fullletterwid->widgetMakeZero();
|
||
+ functionwid->widgetMakeZero();
|
||
+ fullfunctionwid->widgetMakeZero();
|
||
QLayoutItem *child;
|
||
if((child = mainLayout->takeAt(1)) != nullptr) {
|
||
QWidget* childwid=child->widget();
|
||
@@ -435,7 +448,6 @@ void MainViewWidget::loadLetterWidget()
|
||
}
|
||
|
||
}
|
||
- letterwid->widgetMakeZero();
|
||
mainLayout->addWidget(letterwid);
|
||
widgetState=2;
|
||
saveCurrentWidState=2;
|
||
@@ -446,6 +458,11 @@ void MainViewWidget::loadLetterWidget()
|
||
*/
|
||
void MainViewWidget::loadFunctionWidget()
|
||
{
|
||
+ commonusewid->widgetMakeZero();
|
||
+ fullcommonusewid->widgetMakeZero();
|
||
+ letterwid->widgetMakeZero();
|
||
+ fullletterwid->widgetMakeZero();
|
||
+ fullfunctionwid->widgetMakeZero();
|
||
QLayoutItem *child;
|
||
if((child = mainLayout->takeAt(1)) != nullptr) {
|
||
QWidget* childwid=child->widget();
|
||
@@ -456,7 +473,6 @@ void MainViewWidget::loadFunctionWidget()
|
||
}
|
||
|
||
}
|
||
- functionwid->widgetMakeZero();
|
||
mainLayout->addWidget(functionwid);
|
||
widgetState=3;
|
||
saveCurrentWidState=3;
|
||
@@ -468,6 +484,11 @@ void MainViewWidget::loadFunctionWidget()
|
||
*/
|
||
void MainViewWidget::loadFullCommonUseWidget()
|
||
{
|
||
+ commonusewid->widgetMakeZero();
|
||
+ letterwid->widgetMakeZero();
|
||
+ fullletterwid->widgetMakeZero();
|
||
+ functionwid->widgetMakeZero();
|
||
+ fullfunctionwid->widgetMakeZero();
|
||
QLayoutItem *child;
|
||
if((child = mainLayout->takeAt(1)) != nullptr) {
|
||
QWidget* childwid=child->widget();
|
||
@@ -478,7 +499,6 @@ void MainViewWidget::loadFullCommonUseWidget()
|
||
}
|
||
|
||
}
|
||
- fullcommonusewid->widgetMakeZero();
|
||
mainLayout->addWidget(fullcommonusewid);
|
||
widgetState=1;
|
||
saveCurrentWidState=1;
|
||
@@ -489,6 +509,11 @@ void MainViewWidget::loadFullCommonUseWidget()
|
||
*/
|
||
void MainViewWidget::loadFullLetterWidget()
|
||
{
|
||
+ commonusewid->widgetMakeZero();
|
||
+ fullcommonusewid->widgetMakeZero();
|
||
+ letterwid->widgetMakeZero();
|
||
+ functionwid->widgetMakeZero();
|
||
+ fullfunctionwid->widgetMakeZero();
|
||
QLayoutItem *child;
|
||
if((child = mainLayout->takeAt(1)) != nullptr) {
|
||
QWidget* childwid=child->widget();
|
||
@@ -498,7 +523,6 @@ void MainViewWidget::loadFullLetterWidget()
|
||
childwid->setParent(nullptr);
|
||
}
|
||
}
|
||
- fullletterwid->widgetMakeZero();
|
||
mainLayout->addWidget(fullletterwid);
|
||
widgetState=2;
|
||
saveCurrentWidState=2;
|
||
@@ -509,6 +533,11 @@ void MainViewWidget::loadFullLetterWidget()
|
||
*/
|
||
void MainViewWidget::loadFullFunctionWidget()
|
||
{
|
||
+ commonusewid->widgetMakeZero();
|
||
+ fullcommonusewid->widgetMakeZero();
|
||
+ letterwid->widgetMakeZero();
|
||
+ fullletterwid->widgetMakeZero();
|
||
+ functionwid->widgetMakeZero();
|
||
QLayoutItem *child;
|
||
if((child = mainLayout->takeAt(1)) != nullptr) {
|
||
QWidget* childwid=child->widget();
|
||
@@ -519,7 +548,6 @@ void MainViewWidget::loadFullFunctionWidget()
|
||
}
|
||
|
||
}
|
||
- fullfunctionwid->widgetMakeZero();
|
||
mainLayout->addWidget(fullfunctionwid);
|
||
widgetState=3;
|
||
saveCurrentWidState=3;
|
||
diff --git a/src/RightClickMenu/rightclickmenu.cpp b/src/RightClickMenu/rightclickmenu.cpp
|
||
index f21459e..4ec4e71 100644
|
||
--- a/src/RightClickMenu/rightclickmenu.cpp
|
||
+++ b/src/RightClickMenu/rightclickmenu.cpp
|
||
@@ -37,6 +37,21 @@ RightClickMenu::RightClickMenu(QWidget *parent):
|
||
OtherListAction=new QWidgetAction(othermenu);
|
||
OtherListWid=new QWidget();
|
||
|
||
+ //关机按钮右键菜单
|
||
+ shutdownmenu=new QMenu(this);
|
||
+ shutdownmenu->setLayoutDirection(Qt::LeftToRight);
|
||
+ shutdownmenu->setFixedSize(250+2,36*5+12+2);
|
||
+ LockScreenAction=new QWidgetAction(shutdownmenu);
|
||
+ LockScreenWid=new QWidget();
|
||
+ SwitchUserAction=new QWidgetAction(shutdownmenu);
|
||
+ SwitchUserWid=new QWidget();
|
||
+ LogOutAction=new QWidgetAction(shutdownmenu);
|
||
+ LogOutWid=new QWidget();
|
||
+ RebootAction=new QWidgetAction(shutdownmenu);
|
||
+ RebootWid=new QWidget();
|
||
+ ShutDownAction=new QWidgetAction(shutdownmenu);
|
||
+ ShutDownWid=new QWidget();
|
||
+
|
||
//常用应用按钮右键菜单
|
||
cuappbtnmenu=new QMenu(this);
|
||
cuappbtnmenu->setLayoutDirection(Qt::LeftToRight);
|
||
@@ -365,40 +380,26 @@ void RightClickMenu::addAppBtnAction()
|
||
//关机按钮右键菜单
|
||
void RightClickMenu::addShutdownAction()
|
||
{
|
||
- shutdownmenu=new QMenu(this);
|
||
- shutdownmenu->setLayoutDirection(Qt::LeftToRight);
|
||
- shutdownmenu->setFixedSize(250+2,36*5+12+2);
|
||
-
|
||
- LockScreenAction=new QWidgetAction(shutdownmenu);
|
||
- LockScreenWid=new QWidget();
|
||
initWidgetAction(LockScreenWid,":/data/img/sidebarwidget/lock.svg",tr("Lock"));
|
||
LockScreenAction->setDefaultWidget(LockScreenWid);
|
||
shutdownmenu->addAction(LockScreenAction);
|
||
connect(LockScreenAction,SIGNAL(triggered()),this,SLOT(lockScreenActionTriggerSlot()));
|
||
|
||
- SwitchUserAction=new QWidgetAction(shutdownmenu);
|
||
- SwitchUserWid=new QWidget();
|
||
initWidgetAction(SwitchUserWid,"",tr("Switch user"));
|
||
SwitchUserAction->setDefaultWidget(SwitchUserWid);
|
||
shutdownmenu->addAction(SwitchUserAction);
|
||
connect(SwitchUserAction,SIGNAL(triggered()),this,SLOT(switchUserActionTriggerSlot()));
|
||
|
||
- LogOutAction=new QWidgetAction(shutdownmenu);
|
||
- LogOutWid=new QWidget();
|
||
initWidgetAction(LogOutWid,"",tr("Sign out"));
|
||
LogOutAction->setDefaultWidget(LogOutWid);
|
||
shutdownmenu->addAction(LogOutAction);
|
||
connect(LogOutAction,SIGNAL(triggered()),this,SLOT(logoutActionTriggerSlot()));
|
||
|
||
- RebootAction=new QWidgetAction(shutdownmenu);
|
||
- RebootWid=new QWidget();
|
||
initWidgetAction(RebootWid,"",tr("Restart"));
|
||
RebootAction->setDefaultWidget(RebootWid);
|
||
shutdownmenu->addAction(RebootAction);
|
||
connect(RebootAction,SIGNAL(triggered()),this,SLOT(rebootActionTriggerSlot()));
|
||
|
||
- ShutDownAction=new QWidgetAction(shutdownmenu);
|
||
- ShutDownWid=new QWidget();
|
||
initWidgetAction(ShutDownWid,":/data/img/sidebarwidget/shutdown.svg",tr("Shut down"));
|
||
ShutDownAction->setDefaultWidget(ShutDownWid);
|
||
shutdownmenu->addAction(ShutDownAction);
|
||
diff --git a/src/RightClickMenu/rightclickmenu.h b/src/RightClickMenu/rightclickmenu.h
|
||
index 2fc790a..17f73fb 100644
|
||
--- a/src/RightClickMenu/rightclickmenu.h
|
||
+++ b/src/RightClickMenu/rightclickmenu.h
|
||
@@ -66,61 +66,61 @@ private:
|
||
QWidgetAction* separatorAction_4=nullptr;
|
||
QWidgetAction* separatorAction_5=nullptr;
|
||
|
||
- QMenu* cuappbtnmenu;
|
||
- QWidgetAction* CuFix2CommonUseAction;
|
||
- QWidget* CuFix2CommonUseWid;
|
||
- QWidgetAction* CuUnfixed4CommonUseAction;
|
||
- QWidget* CuUnfixed4CommonUseWid;
|
||
- QWidgetAction* CuFix2TaskBarAction;
|
||
- QWidget* CuFix2TaskBarWid;
|
||
- QWidgetAction* CuUnfixed4TaskBarAction;
|
||
- QWidget* CuUnfixed4TaskBarWid;
|
||
- QWidgetAction* CuAdd2DesktopAction;
|
||
- QWidget* CuAdd2DesktopWid;
|
||
- QWidgetAction* CuDeleteAction;
|
||
- QWidget* CuDeleteWid;
|
||
+ QMenu* cuappbtnmenu=nullptr;
|
||
+ QWidgetAction* CuFix2CommonUseAction=nullptr;
|
||
+ QWidget* CuFix2CommonUseWid=nullptr;
|
||
+ QWidgetAction* CuUnfixed4CommonUseAction=nullptr;
|
||
+ QWidget* CuUnfixed4CommonUseWid=nullptr;
|
||
+ QWidgetAction* CuFix2TaskBarAction=nullptr;
|
||
+ QWidget* CuFix2TaskBarWid=nullptr;
|
||
+ QWidgetAction* CuUnfixed4TaskBarAction=nullptr;
|
||
+ QWidget* CuUnfixed4TaskBarWid=nullptr;
|
||
+ QWidgetAction* CuAdd2DesktopAction=nullptr;
|
||
+ QWidget* CuAdd2DesktopWid=nullptr;
|
||
+ QWidgetAction* CuDeleteAction=nullptr;
|
||
+ QWidget* CuDeleteWid=nullptr;
|
||
QWidgetAction* CuDeleteAllAction;
|
||
- QWidget* CuDeleteAllWid;
|
||
- QWidgetAction* CuUninstallAction;
|
||
- QWidget* CuUninstallWid;
|
||
- QWidgetAction* CuAttributeAction;
|
||
- QWidget* CuAttributeWid;
|
||
-
|
||
- QMenu* appbtnmenu;
|
||
- QWidgetAction* Fix2CommonUseAction;
|
||
- QWidget* Fix2CommonUseWid;
|
||
- QWidgetAction* Unfixed4CommonUseAction;
|
||
- QWidget* Unfixed4CommonUseWid;
|
||
- QWidgetAction* Fix2TaskBarAction;
|
||
- QWidget* Fix2TaskBarWid;
|
||
- QWidgetAction* Unfixed4TaskBarAction;
|
||
- QWidget* Unfixed4TaskBarWid;
|
||
- QWidgetAction* Add2DesktopAction;
|
||
- QWidget* Add2DesktopWid;
|
||
- QWidgetAction* UninstallAction;
|
||
- QWidget* UninstallWid;
|
||
- QWidgetAction* AttributeAction;
|
||
- QWidget* AttributeWid;
|
||
-
|
||
- QMenu* shutdownmenu;
|
||
- QWidgetAction* LockScreenAction;
|
||
- QWidget* LockScreenWid;
|
||
- QWidgetAction* SwitchUserAction;
|
||
- QWidget* SwitchUserWid;
|
||
- QWidgetAction* LogOutAction;
|
||
- QWidget* LogOutWid;
|
||
- QWidgetAction* RebootAction;
|
||
- QWidget* RebootWid;
|
||
- QWidgetAction* ShutDownAction;
|
||
- QWidget* ShutDownWid;
|
||
-
|
||
- QMenu* othermenu;
|
||
- QWidgetAction* OtherFix2TaskBarAction;
|
||
- QWidget* OtherFix2TaskBarWid;
|
||
- QWidgetAction* OtherUnfix2TaskBarAction;
|
||
- QWidget* OtherUnfix2TaskBarWid;
|
||
- QWidgetAction* OtherListAction;
|
||
- QWidget* OtherListWid;
|
||
+ QWidget* CuDeleteAllWid=nullptr;
|
||
+ QWidgetAction* CuUninstallAction=nullptr;
|
||
+ QWidget* CuUninstallWid=nullptr;
|
||
+ QWidgetAction* CuAttributeAction=nullptr;
|
||
+ QWidget* CuAttributeWid=nullptr;
|
||
+
|
||
+ QMenu* appbtnmenu=nullptr;
|
||
+ QWidgetAction* Fix2CommonUseAction=nullptr;
|
||
+ QWidget* Fix2CommonUseWid=nullptr;
|
||
+ QWidgetAction* Unfixed4CommonUseAction=nullptr;
|
||
+ QWidget* Unfixed4CommonUseWid=nullptr;
|
||
+ QWidgetAction* Fix2TaskBarAction=nullptr;
|
||
+ QWidget* Fix2TaskBarWid=nullptr;
|
||
+ QWidgetAction* Unfixed4TaskBarAction=nullptr;
|
||
+ QWidget* Unfixed4TaskBarWid=nullptr;
|
||
+ QWidgetAction* Add2DesktopAction=nullptr;
|
||
+ QWidget* Add2DesktopWid=nullptr;
|
||
+ QWidgetAction* UninstallAction=nullptr;
|
||
+ QWidget* UninstallWid=nullptr;
|
||
+ QWidgetAction* AttributeAction=nullptr;
|
||
+ QWidget* AttributeWid=nullptr;
|
||
+
|
||
+ QMenu* shutdownmenu=nullptr;
|
||
+ QWidgetAction* LockScreenAction=nullptr;
|
||
+ QWidget* LockScreenWid=nullptr;
|
||
+ QWidgetAction* SwitchUserAction=nullptr;
|
||
+ QWidget* SwitchUserWid=nullptr;
|
||
+ QWidgetAction* LogOutAction=nullptr;
|
||
+ QWidget* LogOutWid=nullptr;
|
||
+ QWidgetAction* RebootAction=nullptr;
|
||
+ QWidget* RebootWid=nullptr;
|
||
+ QWidgetAction* ShutDownAction=nullptr;
|
||
+ QWidget* ShutDownWid=nullptr;
|
||
+
|
||
+ QMenu* othermenu=nullptr;
|
||
+ QWidgetAction* OtherFix2TaskBarAction=nullptr;
|
||
+ QWidget* OtherFix2TaskBarWid=nullptr;
|
||
+ QWidgetAction* OtherUnfix2TaskBarAction=nullptr;
|
||
+ QWidget* OtherUnfix2TaskBarWid=nullptr;
|
||
+ QWidgetAction* OtherListAction=nullptr;
|
||
+ QWidget* OtherListWid=nullptr;
|
||
|
||
UkuiMenuInterface* pUkuiMenuInterface=nullptr;
|
||
|
||
diff --git a/src/SearchResultWidget/fullsearchresultwidget.cpp b/src/SearchResultWidget/fullsearchresultwidget.cpp
|
||
index b67572f..8259d4c 100644
|
||
--- a/src/SearchResultWidget/fullsearchresultwidget.cpp
|
||
+++ b/src/SearchResultWidget/fullsearchresultwidget.cpp
|
||
@@ -56,7 +56,7 @@ void FullSearchResultWidget::initWidget()
|
||
pUkuiMenuInterface=new UkuiMenuInterface;
|
||
|
||
connect(listview,SIGNAL(sendItemClickedSignal(QString)),this,SLOT(execApplication(QString)));
|
||
- connect(listview,SIGNAL(sendFixedOrUnfixedSignal()),this,SIGNAL(sendUpdateAppListSignal()));
|
||
+ connect(listview,SIGNAL(sendFixedOrUnfixedSignal(QString,int)),this,SIGNAL(sendUpdateAppListSignal(QString,int)));
|
||
connect(listview,SIGNAL(sendHideMainWindowSignal()),this,SIGNAL(sendHideMainWindowSignal()));
|
||
}
|
||
|
||
diff --git a/src/SearchResultWidget/fullsearchresultwidget.h b/src/SearchResultWidget/fullsearchresultwidget.h
|
||
index 6d7f06a..756340f 100644
|
||
--- a/src/SearchResultWidget/fullsearchresultwidget.h
|
||
+++ b/src/SearchResultWidget/fullsearchresultwidget.h
|
||
@@ -59,9 +59,8 @@ private Q_SLOTS:
|
||
void execApplication(QString appname);//执行应用程序
|
||
|
||
Q_SIGNALS:
|
||
- void sendUpdateAppListSignal();//向CommonUseWidget发送更新应用列表信号
|
||
+ void sendUpdateAppListSignal(QString desktopfp,int type);//向CommonUseWidget发送更新应用列表信号
|
||
void sendHideMainWindowSignal();//向MainViewWidget发送隐藏主窗口信号
|
||
-
|
||
};
|
||
|
||
#endif // FULLSEARCHRESULTWIDGET_H
|
||
diff --git a/src/SearchResultWidget/searchresultwidget.cpp b/src/SearchResultWidget/searchresultwidget.cpp
|
||
index 2a8bc35..115e8e4 100644
|
||
--- a/src/SearchResultWidget/searchresultwidget.cpp
|
||
+++ b/src/SearchResultWidget/searchresultwidget.cpp
|
||
@@ -54,7 +54,7 @@ void SearchResultWidget::initWidget()
|
||
pUkuiMenuInterface=new UkuiMenuInterface;
|
||
|
||
connect(listview,SIGNAL(sendItemClickedSignal(QStringList)),this,SLOT(execApplication(QStringList)));
|
||
- connect(listview,SIGNAL(sendFixedOrUnfixedSignal()),this,SIGNAL(sendUpdateAppListSignal()));
|
||
+ connect(listview,SIGNAL(sendFixedOrUnfixedSignal(QString,int)),this,SIGNAL(sendUpdateAppListSignal(QString,int)));
|
||
connect(listview,SIGNAL(sendHideMainWindowSignal()),this,SIGNAL(sendHideMainWindowSignal()));
|
||
}
|
||
|
||
diff --git a/src/SearchResultWidget/searchresultwidget.h b/src/SearchResultWidget/searchresultwidget.h
|
||
index 944391b..af43ebf 100644
|
||
--- a/src/SearchResultWidget/searchresultwidget.h
|
||
+++ b/src/SearchResultWidget/searchresultwidget.h
|
||
@@ -61,7 +61,7 @@ private Q_SLOTS:
|
||
void execApplication(QStringList arg);//执行应用程序
|
||
|
||
Q_SIGNALS:
|
||
- void sendUpdateAppListSignal();//向常用软件模块发送更新应用列表信号
|
||
+ void sendUpdateAppListSignal(QString desktopfp,int type);//向常用软件模块发送更新应用列表信号
|
||
void sendHideMainWindowSignal();//向MainViewWidget发送隐藏主窗口信号
|
||
};
|
||
|
||
diff --git a/src/UtilityFunction/fulllistview.cpp b/src/UtilityFunction/fulllistview.cpp
|
||
index 75845c7..76c6d18 100644
|
||
--- a/src/UtilityFunction/fulllistview.cpp
|
||
+++ b/src/UtilityFunction/fulllistview.cpp
|
||
@@ -67,6 +67,8 @@ void FullListView::initWidget()
|
||
this->setTextElideMode(Qt::ElideRight);
|
||
this->setMouseTracking(true);
|
||
this->setFocusPolicy(Qt::NoFocus);
|
||
+// this->setAcceptDrops(false);
|
||
+ this->setMovement(QListView::Static);
|
||
// this->setUpdatesEnabled(true);
|
||
|
||
// this->setSpacing(32);
|
||
@@ -123,10 +125,10 @@ void FullListView::rightClickedSlot()
|
||
if(module>0)
|
||
{
|
||
int ret=menu->showAppBtnMenu(desktopfp);
|
||
- if(ret==1 || ret==2)
|
||
- {
|
||
- Q_EMIT sendFixedOrUnfixedSignal();
|
||
- }
|
||
+ if(ret==1)
|
||
+ Q_EMIT sendFixedOrUnfixedSignal(desktopfp,0);
|
||
+ if(ret==2)
|
||
+ Q_EMIT sendFixedOrUnfixedSignal(desktopfp,1);
|
||
if(ret==6)
|
||
Q_EMIT sendHideMainWindowSignal();
|
||
if(ret==7)
|
||
@@ -143,7 +145,7 @@ void FullListView::rightClickedSlot()
|
||
item->setData(QVariant::fromValue<QString>(desktopfp),Qt::DisplayRole);
|
||
listmodel->insertRow(setting->childKeys().size()-1,item);
|
||
setting->endGroup();
|
||
- Q_EMIT sendUpdateAppListSignal();
|
||
+ Q_EMIT sendUpdateAppListSignal(desktopfp,0);
|
||
}
|
||
if(ret==2)
|
||
{
|
||
@@ -153,7 +155,7 @@ void FullListView::rightClickedSlot()
|
||
item->setData(QVariant::fromValue<QString>(desktopfp),Qt::DisplayRole);
|
||
listmodel->insertRow(setting->childKeys().size(),item);
|
||
setting->endGroup();
|
||
- Q_EMIT sendUpdateAppListSignal();
|
||
+ Q_EMIT sendUpdateAppListSignal(desktopfp,1);
|
||
}
|
||
|
||
if(ret==7)
|
||
@@ -162,7 +164,7 @@ void FullListView::rightClickedSlot()
|
||
if(ret==8)
|
||
{
|
||
listmodel->removeRow(index.row());
|
||
- Q_EMIT sendUpdateAppListSignal();
|
||
+ Q_EMIT removeListItemSignal(desktopfp);
|
||
}
|
||
|
||
if(ret==9)
|
||
@@ -178,7 +180,7 @@ void FullListView::rightClickedSlot()
|
||
listmodel->removeRow(i);
|
||
}
|
||
setting->endGroup();
|
||
- Q_EMIT sendUpdateAppListSignal();
|
||
+ Q_EMIT removeListAllItemSignal();
|
||
}
|
||
if(ret==6)
|
||
Q_EMIT sendHideMainWindowSignal();
|
||
diff --git a/src/UtilityFunction/fulllistview.h b/src/UtilityFunction/fulllistview.h
|
||
index 0739694..14a58e9 100644
|
||
--- a/src/UtilityFunction/fulllistview.h
|
||
+++ b/src/UtilityFunction/fulllistview.h
|
||
@@ -49,7 +49,7 @@ private:
|
||
QStandardItemModel* listmodel=nullptr;
|
||
int module=0;
|
||
|
||
- RightClickMenu* menu;//右键菜单
|
||
+ RightClickMenu* menu=nullptr;//右键菜单
|
||
QSettings *setting=nullptr;
|
||
QStringList data;
|
||
|
||
@@ -61,8 +61,10 @@ private Q_SLOTS:
|
||
|
||
Q_SIGNALS:
|
||
void sendItemClickedSignal(QString arg);//向字母排序或功能分类模块发送item点击信号
|
||
- void sendFixedOrUnfixedSignal();//向字母排序、功能分类发送固定或者取消固定信号
|
||
- void sendUpdateAppListSignal();//向FullCommonUseWidget发送更新应用列表信号
|
||
+ void sendFixedOrUnfixedSignal(QString desktopfp,int type);//向字母排序、功能分类发送固定或者取消固定信号
|
||
+ void sendUpdateAppListSignal(QString desktopfp,int type);//向FullCommonUseWidget发送更新应用列表信号
|
||
+ void removeListItemSignal(QString desktopfp);
|
||
+ void removeListAllItemSignal();
|
||
void sendHideMainWindowSignal();
|
||
};
|
||
|
||
diff --git a/src/UtilityFunction/listview.cpp b/src/UtilityFunction/listview.cpp
|
||
index 2b1b58e..4c9ec08 100644
|
||
--- a/src/UtilityFunction/listview.cpp
|
||
+++ b/src/UtilityFunction/listview.cpp
|
||
@@ -63,6 +63,7 @@ void ListView::initWidget()
|
||
this->setViewMode(QListView::ListMode);
|
||
this->setContextMenuPolicy(Qt::CustomContextMenu);
|
||
this->setFocusPolicy(Qt::NoFocus);
|
||
+ this->setMovement(QListView::Static);
|
||
connect(this,SIGNAL(customContextMenuRequested(QPoint)),this,SLOT(rightClickedSlot()));
|
||
connect(this,SIGNAL(clicked(QModelIndex)),this,SLOT(onClicked(QModelIndex)));
|
||
|
||
@@ -118,8 +119,10 @@ void ListView::rightClickedSlot()
|
||
if(strlist.at(1).toInt()==1)
|
||
{
|
||
int ret=menu->showAppBtnMenu(strlist.at(0));
|
||
- if(ret==1 || ret==2)
|
||
- Q_EMIT sendFixedOrUnfixedSignal();
|
||
+ if(ret==1)
|
||
+ Q_EMIT sendFixedOrUnfixedSignal(strlist.at(0),0);
|
||
+ if(ret==2)
|
||
+ Q_EMIT sendFixedOrUnfixedSignal(strlist.at(0),1);
|
||
if(ret==6)
|
||
Q_EMIT sendHideMainWindowSignal();
|
||
if(ret==7)
|
||
@@ -137,7 +140,7 @@ void ListView::rightClickedSlot()
|
||
item->setData(QVariant::fromValue<QStringList>(strlist),Qt::DisplayRole);
|
||
listmodel->insertRow(setting->allKeys().size()-1,item);
|
||
setting->endGroup();
|
||
- Q_EMIT sendUpdateAppListSignal();
|
||
+ Q_EMIT sendUpdateAppListSignal(strlist.at(0),0);
|
||
}
|
||
if(ret==2)
|
||
{
|
||
@@ -147,7 +150,7 @@ void ListView::rightClickedSlot()
|
||
item->setData(QVariant::fromValue<QStringList>(strlist),Qt::DisplayRole);
|
||
listmodel->insertRow(setting->allKeys().size(),item);
|
||
setting->endGroup();
|
||
- Q_EMIT sendUpdateAppListSignal();
|
||
+ Q_EMIT sendUpdateAppListSignal(strlist.at(0),1);
|
||
}
|
||
|
||
if(ret==7)
|
||
@@ -156,7 +159,7 @@ void ListView::rightClickedSlot()
|
||
if(ret==8)
|
||
{
|
||
listmodel->removeRow(index.row());
|
||
- Q_EMIT sendUpdateAppListSignal();
|
||
+ Q_EMIT removeListItemSignal(strlist.at(0));
|
||
}
|
||
if(ret==9)
|
||
{
|
||
@@ -171,7 +174,7 @@ void ListView::rightClickedSlot()
|
||
listmodel->removeRow(i);
|
||
}
|
||
setting->endGroup();
|
||
- Q_EMIT sendUpdateAppListSignal();
|
||
+ Q_EMIT removeListAllItemSignal();
|
||
}
|
||
|
||
if(ret==6)
|
||
diff --git a/src/UtilityFunction/listview.h b/src/UtilityFunction/listview.h
|
||
index d4b7813..07e8693 100644
|
||
--- a/src/UtilityFunction/listview.h
|
||
+++ b/src/UtilityFunction/listview.h
|
||
@@ -45,15 +45,13 @@ protected:
|
||
void leaveEvent(QEvent* e) Q_DECL_OVERRIDE;
|
||
|
||
private:
|
||
-// ListModel* model=nullptr;
|
||
QStandardItemModel* listmodel=nullptr;
|
||
int w=0;
|
||
int h=0;
|
||
int module=0;
|
||
UkuiMenuInterface* pUkuiMenuInterface=nullptr;
|
||
-// QStringList rowlist;//存放分类字母所在行
|
||
|
||
- RightClickMenu* menu;//右键菜单
|
||
+ RightClickMenu* menu=nullptr;//右键菜单
|
||
QSettings *setting=nullptr;
|
||
QVector<QStringList> data;
|
||
ItemDelegate* m_delegate=nullptr;
|
||
@@ -64,8 +62,10 @@ private Q_SLOTS:
|
||
|
||
Q_SIGNALS:
|
||
void sendItemClickedSignal(QStringList arg);//向字母排序或功能分类模块发送item点击信号
|
||
- void sendFixedOrUnfixedSignal();//向字母排序、功能分类发送固定或者取消固定信号
|
||
- void sendUpdateAppListSignal();//向CommonUseWidget发送更新应用列表信号
|
||
+ void sendFixedOrUnfixedSignal(QString desktopfp,int type);//向字母排序、功能分类发送固定或者取消固定信号
|
||
+ void sendUpdateAppListSignal(QString desktopfp,int type);//向CommonUseWidget发送更新应用列表信号
|
||
+ void removeListItemSignal(QString desktopfp);
|
||
+ void removeListAllItemSignal();
|
||
void sendHideMainWindowSignal();
|
||
};
|
||
|
||
--
|
||
2.33.0
|
||
|