!85 fix history button UI
Merge pull request !85 from likehomedream/plymouthshow
This commit is contained in:
commit
f803c1e2a0
|
@ -7,6 +7,9 @@ buildResultWidget::buildResultWidget(QWidget *parent)
|
||||||
this->setWindowModality(Qt::ApplicationModal);
|
this->setWindowModality(Qt::ApplicationModal);
|
||||||
this->setWindowFlags(Qt::FramelessWindowHint);
|
this->setWindowFlags(Qt::FramelessWindowHint);
|
||||||
|
|
||||||
|
this->setBackgroundRole(QPalette::Base);
|
||||||
|
this->setAutoFillBackground(true);
|
||||||
|
|
||||||
m_buildResultLayout = new QVBoxLayout;
|
m_buildResultLayout = new QVBoxLayout;
|
||||||
m_buildResult = new QLabel;
|
m_buildResult = new QLabel;
|
||||||
m_buildResult->setText("主题制作完成!");
|
m_buildResult->setText("主题制作完成!");
|
||||||
|
|
|
@ -99,7 +99,7 @@ MainWindow::MainWindow(QWidget *parent)
|
||||||
FileProcess::g_debPath = path;
|
FileProcess::g_debPath = path;
|
||||||
m_bridge->savePathConfigChanged(path);
|
m_bridge->savePathConfigChanged(path);
|
||||||
});
|
});
|
||||||
this->setContentsMargins(0,2,0,0);
|
this->setContentsMargins(5,5,5,0);
|
||||||
}
|
}
|
||||||
|
|
||||||
MainWindow::~MainWindow()
|
MainWindow::~MainWindow()
|
||||||
|
@ -201,6 +201,12 @@ void MainWindow::initUI()
|
||||||
buttonGroup->addButton(m_plymouthbtn);
|
buttonGroup->addButton(m_plymouthbtn);
|
||||||
buttonGroup->addButton(m_grubbtn);
|
buttonGroup->addButton(m_grubbtn);
|
||||||
|
|
||||||
|
m_globalbtn->setProperty("useButtonPalette", true);
|
||||||
|
m_iconbtn->setProperty("useButtonPalette", true);
|
||||||
|
m_cursorbtn->setProperty("useButtonPalette", true);
|
||||||
|
m_plymouthbtn->setProperty("useButtonPalette", true);
|
||||||
|
m_grubbtn->setProperty("useButtonPalette", true);
|
||||||
|
|
||||||
connect(m_historywidget,&HistoryWidget::startSecondEdit,[=](HistoryInfo InfoData){
|
connect(m_historywidget,&HistoryWidget::startSecondEdit,[=](HistoryInfo InfoData){
|
||||||
m_titlebar->setGoHomeBtn(true);
|
m_titlebar->setGoHomeBtn(true);
|
||||||
m_maininterface->isHistory(true);
|
m_maininterface->isHistory(true);
|
||||||
|
|
|
@ -40,8 +40,14 @@ void CursorThemeWidget::eidtInitWidget(const HistoryInfo &InfoData)
|
||||||
m_preview2->updateIconMap(m_historytimeiconpathmap);
|
m_preview2->updateIconMap(m_historytimeiconpathmap);
|
||||||
updateCustomPathMap(m_historyiconpathmap,"cursor");
|
updateCustomPathMap(m_historyiconpathmap,"cursor");
|
||||||
updateCustomPathMap(m_historytimeiconpathmap,"timecursor");
|
updateCustomPathMap(m_historytimeiconpathmap,"timecursor");
|
||||||
m_preview->updateImage(m_info.wallpaperpath);
|
if(m_info.wallpaperpath != nullptr){
|
||||||
m_preview2->updateImage(m_info.wallpaperpath);
|
m_preview->updateImage(m_info.wallpaperpath);
|
||||||
|
m_preview2->updateImage(m_info.wallpaperpath);
|
||||||
|
}else{
|
||||||
|
m_preview->updateImage(":/resource/background/1-openkylin.jpg");
|
||||||
|
m_preview2->updateImage(":/resource/background/1-openkylin.jpg");
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -151,8 +151,8 @@ void GlobalThemeWidget::initPreviewWidget()
|
||||||
void GlobalThemeWidget::initRightWidget()
|
void GlobalThemeWidget::initRightWidget()
|
||||||
{
|
{
|
||||||
m_rightwidget = new QWidget(this);
|
m_rightwidget = new QWidget(this);
|
||||||
m_rightwidget->setMinimumSize(400,620);
|
m_rightwidget->setMinimumSize(410,620);
|
||||||
m_rightwidget->setMaximumWidth(400);
|
m_rightwidget->setMaximumWidth(410);
|
||||||
m_rightwidget->setBackgroundRole(QPalette::Base);
|
m_rightwidget->setBackgroundRole(QPalette::Base);
|
||||||
m_rightwidget->setContentsMargins(0,0,0,0);
|
m_rightwidget->setContentsMargins(0,0,0,0);
|
||||||
|
|
||||||
|
|
|
@ -165,6 +165,7 @@ HistoryButton::HistoryButton(QWidget* parent): QPushButton(parent)
|
||||||
// this->setBackgroundRole(QPalette::Base);
|
// this->setBackgroundRole(QPalette::Base);
|
||||||
this->setFixedSize(240, 280);
|
this->setFixedSize(240, 280);
|
||||||
m_menu = new QMenu(this);
|
m_menu = new QMenu(this);
|
||||||
|
this->installEventFilter(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
void HistoryButton::setHistoryTime(const QString &text)
|
void HistoryButton::setHistoryTime(const QString &text)
|
||||||
|
@ -196,6 +197,7 @@ void HistoryButton::setThemeType(const QString &themeType)
|
||||||
*/
|
*/
|
||||||
void HistoryButton::initUI()
|
void HistoryButton::initUI()
|
||||||
{
|
{
|
||||||
|
this->setProperty("useButtonPalette", true);
|
||||||
QVBoxLayout* layout = new QVBoxLayout(this);
|
QVBoxLayout* layout = new QVBoxLayout(this);
|
||||||
|
|
||||||
QLabel* imageLabel = new QLabel;
|
QLabel* imageLabel = new QLabel;
|
||||||
|
@ -231,7 +233,6 @@ void HistoryButton::initUI()
|
||||||
QHBoxLayout * btnwidgetlayout = new QHBoxLayout(btnwidget);
|
QHBoxLayout * btnwidgetlayout = new QHBoxLayout(btnwidget);
|
||||||
btnwidgetlayout->setContentsMargins(0,0,0,0);
|
btnwidgetlayout->setContentsMargins(0,0,0,0);
|
||||||
|
|
||||||
QPushButton* button;
|
|
||||||
QString buttonText;
|
QString buttonText;
|
||||||
if (m_themetype == "globalTheme") {
|
if (m_themetype == "globalTheme") {
|
||||||
buttonText = tr("globalTheme");
|
buttonText = tr("globalTheme");
|
||||||
|
@ -244,13 +245,19 @@ void HistoryButton::initUI()
|
||||||
} else {
|
} else {
|
||||||
buttonText = tr("grubTheme");
|
buttonText = tr("grubTheme");
|
||||||
}
|
}
|
||||||
button = new QPushButton(buttonText, this);
|
m_typebutton = new QPushButton(buttonText, this);
|
||||||
|
m_typebutton->setProperty("useButtonPalette", true);
|
||||||
|
m_typebutton->setProperty("setRadius", 18);
|
||||||
|
|
||||||
QPushButton* btn_menu = new QPushButton("···");
|
m_menubutton = new QToolButton(this);
|
||||||
btn_menu->setFixedWidth(50);
|
m_menubutton->setProperty("useButtonPalette", true);
|
||||||
btnwidgetlayout->addWidget(button);
|
m_menubutton->setFixedWidth(50);
|
||||||
|
m_menubutton->setText("···");
|
||||||
|
m_menubutton->setPopupMode(QToolButton::InstantPopup);
|
||||||
|
|
||||||
|
btnwidgetlayout->addWidget(m_typebutton);
|
||||||
btnwidgetlayout->addStretch(1);
|
btnwidgetlayout->addStretch(1);
|
||||||
btnwidgetlayout->addWidget(btn_menu);
|
btnwidgetlayout->addWidget(m_menubutton);
|
||||||
btnwidget->setLayout(btnwidgetlayout);
|
btnwidget->setLayout(btnwidgetlayout);
|
||||||
layout->addWidget(btnwidget);
|
layout->addWidget(btnwidget);
|
||||||
|
|
||||||
|
@ -258,10 +265,15 @@ void HistoryButton::initUI()
|
||||||
// 创建并添加菜单选项
|
// 创建并添加菜单选项
|
||||||
QAction* action1 = m_menu->addAction("删除");
|
QAction* action1 = m_menu->addAction("删除");
|
||||||
QAction* action2 = m_menu->addAction("导出");
|
QAction* action2 = m_menu->addAction("导出");
|
||||||
|
m_menubutton->setMenu(m_menu);
|
||||||
connect(btn_menu, &QPushButton::clicked, this, [=]() {
|
if(m_themename != nullptr){
|
||||||
m_menu->exec(btn_menu->mapToGlobal(btn_menu->rect().bottomLeft()));
|
action2->setDisabled(false);
|
||||||
});
|
}else{
|
||||||
|
action2->setDisabled(true);
|
||||||
|
}
|
||||||
|
// connect(btn_menu, &QPushButton::clicked, this, [=]() {
|
||||||
|
// m_menu->exec(btn_menu->mapToGlobal(btn_menu->rect().bottomLeft()));
|
||||||
|
// });
|
||||||
// connect(action2,&QAction::triggered,this,[=](){
|
// connect(action2,&QAction::triggered,this,[=](){
|
||||||
// emit startBuild(m_historytime);
|
// emit startBuild(m_historytime);
|
||||||
// });
|
// });
|
||||||
|
@ -297,7 +309,28 @@ void HistoryButton::initUI()
|
||||||
FileProcess::g_createThemeType = nullptr;
|
FileProcess::g_createThemeType = nullptr;
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
//FIX ME:现在是三个button,当historybutton hover的时候,button和btn_menu没有悬浮,导致有色差,用qss的话一样会出现这个问题。暂时没有好的解决方式
|
||||||
|
connect(this, &HistoryButton::hoverStateChanged, this, [&](bool ishover) {
|
||||||
|
if(ishover){
|
||||||
|
m_typebutton->setAttribute(Qt::WA_UnderMouse, true);
|
||||||
|
m_menubutton->setAttribute(Qt::WA_UnderMouse, true);
|
||||||
|
}else{
|
||||||
|
m_typebutton->setAttribute(Qt::WA_UnderMouse, false);
|
||||||
|
m_menubutton->setAttribute(Qt::WA_UnderMouse, false);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
bool HistoryButton::eventFilter(QObject *obj, QEvent *event)
|
||||||
|
{
|
||||||
|
if (obj == this) {
|
||||||
|
if (event->type() == QEvent::Enter) {
|
||||||
|
emit hoverStateChanged(true);
|
||||||
|
} else if (event->type() == QEvent::Leave) {
|
||||||
|
emit hoverStateChanged(false);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return QPushButton::eventFilter(obj, event);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -17,6 +17,7 @@
|
||||||
#include <QMenu>
|
#include <QMenu>
|
||||||
#include <QAction>
|
#include <QAction>
|
||||||
#include <QMouseEvent>
|
#include <QMouseEvent>
|
||||||
|
#include <QToolButton>
|
||||||
|
|
||||||
class HistoryButton : public QPushButton
|
class HistoryButton : public QPushButton
|
||||||
{
|
{
|
||||||
|
@ -28,16 +29,21 @@ public:
|
||||||
void setThemeName(const QString &themeName);
|
void setThemeName(const QString &themeName);
|
||||||
void setThemeType(const QString &themeType);
|
void setThemeType(const QString &themeType);
|
||||||
void initUI();
|
void initUI();
|
||||||
|
protected:
|
||||||
|
bool eventFilter(QObject* obj, QEvent* event);
|
||||||
|
|
||||||
signals:
|
signals:
|
||||||
void updateHistoryRequested();
|
void updateHistoryRequested();
|
||||||
void startBuild(QString &historytime);
|
void startBuild(QString &historytime);
|
||||||
|
void hoverStateChanged(bool isHovered);
|
||||||
private:
|
private:
|
||||||
QString m_historytime = nullptr;
|
QString m_historytime = nullptr;
|
||||||
QString m_showhistorytime = nullptr;
|
QString m_showhistorytime = nullptr;
|
||||||
QString m_coverpath = nullptr;
|
QString m_coverpath = nullptr;
|
||||||
QString m_themename = nullptr;
|
QString m_themename = nullptr;
|
||||||
QString m_themetype = nullptr;
|
QString m_themetype = nullptr;
|
||||||
|
QPushButton* m_typebutton;
|
||||||
|
QToolButton* m_menubutton;
|
||||||
QMenu *m_menu;
|
QMenu *m_menu;
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
|
@ -547,7 +547,12 @@ void IconThemeWidget::eidtInitWidget(const HistoryInfo &InfoData)
|
||||||
m_systempreview->updateIconMap(m_historysystemiconmap);
|
m_systempreview->updateIconMap(m_historysystemiconmap);
|
||||||
updateCustomIconPathMap(m_historyiconmap);
|
updateCustomIconPathMap(m_historyiconmap);
|
||||||
updateCustomSyetemIconPathMap(m_historysystemiconmap);
|
updateCustomSyetemIconPathMap(m_historysystemiconmap);
|
||||||
m_preview->updateImage(m_info.wallpaperpath);
|
if(m_info.wallpaperpath != nullptr){
|
||||||
|
m_preview->updateImage(m_info.wallpaperpath);
|
||||||
|
}else{
|
||||||
|
m_preview->updateImage(":/resource/background/1-openkylin.jpg");
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -87,7 +87,10 @@ void InfoCreateWidget::InitInfoBtn(const QString &m_state){
|
||||||
m_exitBtn->setText(tr("Back"));
|
m_exitBtn->setText(tr("Back"));
|
||||||
m_recogniseBtn->setText(tr("OK"));
|
m_recogniseBtn->setText(tr("OK"));
|
||||||
m_createDebBtn->setText(tr("Create"));
|
m_createDebBtn->setText(tr("Create"));
|
||||||
|
QShortcut *shortcut = new QShortcut(QKeySequence(Qt::Key_Return), m_recogniseBtn);
|
||||||
|
QObject::connect(shortcut, &QShortcut::activated, m_recogniseBtn, &QPushButton::click);
|
||||||
|
QShortcut *shortcut1 = new QShortcut(QKeySequence(Qt::Key_Return), m_createDebBtn);
|
||||||
|
QObject::connect(shortcut1, &QShortcut::activated, m_createDebBtn, &QPushButton::click);
|
||||||
m_infoBtnLayout->addWidget(m_exitBtn);
|
m_infoBtnLayout->addWidget(m_exitBtn);
|
||||||
m_infoBtnLayout->addWidget(m_recogniseBtn);
|
m_infoBtnLayout->addWidget(m_recogniseBtn);
|
||||||
m_infoBtnLayout->addWidget(m_createDebBtn);
|
m_infoBtnLayout->addWidget(m_createDebBtn);
|
||||||
|
|
|
@ -21,6 +21,7 @@
|
||||||
#include <QLineEdit>
|
#include <QLineEdit>
|
||||||
#include <QRegExp>
|
#include <QRegExp>
|
||||||
#include <QRegularExpressionValidator>
|
#include <QRegularExpressionValidator>
|
||||||
|
#include <QShortcut>
|
||||||
|
|
||||||
class InfoCreateWidget : public QWidget
|
class InfoCreateWidget : public QWidget
|
||||||
{
|
{
|
||||||
|
|
|
@ -31,24 +31,29 @@ TitleBar::TitleBar(QWidget *parent) : QWidget(parent)
|
||||||
m_gohomebtn->setIcon(QIcon::fromTheme("go-home-symbolic"));
|
m_gohomebtn->setIcon(QIcon::fromTheme("go-home-symbolic"));
|
||||||
m_gohomebtn->setToolTip(tr("Return"));
|
m_gohomebtn->setToolTip(tr("Return"));
|
||||||
m_gohomebtn->setFlat(true);
|
m_gohomebtn->setFlat(true);
|
||||||
|
m_gohomebtn->setProperty("isWindowButton", 0x01);
|
||||||
|
|
||||||
m_minimumbtn = new QPushButton();
|
m_minimumbtn = new QPushButton();
|
||||||
m_minimumbtn->setFixedSize(30,30);
|
m_minimumbtn->setFixedSize(30,30);
|
||||||
m_minimumbtn->setIcon(QIcon::fromTheme("window-minimize-symbolic"));
|
m_minimumbtn->setIcon(QIcon::fromTheme("window-minimize-symbolic"));
|
||||||
m_minimumbtn->setToolTip(tr("Minimize"));
|
m_minimumbtn->setToolTip(tr("Minimize"));
|
||||||
m_minimumbtn->setFlat(true);
|
m_minimumbtn->setFlat(true);
|
||||||
|
m_minimumbtn->setProperty("isWindowButton", 0x01);
|
||||||
|
|
||||||
m_maximumbtn = new QPushButton();
|
m_maximumbtn = new QPushButton();
|
||||||
m_maximumbtn->setFixedSize(30,30);
|
m_maximumbtn->setFixedSize(30,30);
|
||||||
m_maximumbtn->setIcon(QIcon::fromTheme("window-maximize-symbolic"));
|
m_maximumbtn->setIcon(QIcon::fromTheme("window-maximize-symbolic"));
|
||||||
m_maximumbtn->setToolTip(tr("Maximize"));
|
m_maximumbtn->setToolTip(tr("Maximize"));
|
||||||
m_maximumbtn->setFlat(true);
|
m_maximumbtn->setFlat(true);
|
||||||
|
m_maximumbtn->setProperty("isWindowButton", 0x01);
|
||||||
|
|
||||||
|
|
||||||
m_closebtn = new QPushButton();
|
m_closebtn = new QPushButton();
|
||||||
m_closebtn->setFixedSize(30, 30);
|
m_closebtn->setFixedSize(30, 30);
|
||||||
m_closebtn->setIcon(QIcon::fromTheme("window-close-symbolic"));
|
m_closebtn->setIcon(QIcon::fromTheme("window-close-symbolic"));
|
||||||
m_closebtn->setToolTip(tr("Close"));
|
m_closebtn->setToolTip(tr("Close"));
|
||||||
m_closebtn->setFlat(true);
|
m_closebtn->setFlat(true);
|
||||||
|
m_closebtn->setProperty("isWindowButton", 0x02);
|
||||||
|
|
||||||
connect(m_gohomebtn, &QPushButton::clicked, this,[=](){
|
connect(m_gohomebtn, &QPushButton::clicked, this,[=](){
|
||||||
emit gohomesignal();
|
emit gohomesignal();
|
||||||
|
@ -63,6 +68,7 @@ TitleBar::TitleBar(QWidget *parent) : QWidget(parent)
|
||||||
m_optionbtn->setFixedSize(30,30);
|
m_optionbtn->setFixedSize(30,30);
|
||||||
m_optionbtn->setIcon(QIcon::fromTheme("application-menu"));
|
m_optionbtn->setIcon(QIcon::fromTheme("application-menu"));
|
||||||
m_optionbtn->setAutoRaise(true);
|
m_optionbtn->setAutoRaise(true);
|
||||||
|
m_optionbtn->setProperty("isWindowButton", 0x01);
|
||||||
|
|
||||||
QMenu* menu = new QMenu(m_optionbtn);
|
QMenu* menu = new QMenu(m_optionbtn);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue