add gsettings which key is transparency
This commit is contained in:
parent
bcc226a650
commit
804404f183
|
@ -1,5 +1,7 @@
|
||||||
#include <QtConcurrent>
|
#include <QtConcurrent>
|
||||||
#include "globalsettings.h"
|
#include <QApplication>
|
||||||
|
#include <QPalette>
|
||||||
|
#include "global-settings.h"
|
||||||
|
|
||||||
static GlobalSettings *global_instance = nullptr;
|
static GlobalSettings *global_instance = nullptr;
|
||||||
|
|
||||||
|
@ -14,6 +16,21 @@ GlobalSettings *GlobalSettings::getInstance()
|
||||||
GlobalSettings::GlobalSettings(QObject *parent) : QObject(parent)
|
GlobalSettings::GlobalSettings(QObject *parent) : QObject(parent)
|
||||||
{
|
{
|
||||||
m_settings = new QSettings("org.ukui", "ukui-search-blockdirs", this);
|
m_settings = new QSettings("org.ukui", "ukui-search-blockdirs", this);
|
||||||
|
//the default number of transparency in mainwindow is 0.7
|
||||||
|
//if someone changes the num in mainwindow, here should be modified too
|
||||||
|
m_cache.insert(TRANSPARENCY_KEY, 0.7);
|
||||||
|
if (QGSettings::isSchemaInstalled(CONTROL_CENTER_PERSONALISE_GSETTINGS_ID)) {
|
||||||
|
m_gsettings = new QGSettings(CONTROL_CENTER_PERSONALISE_GSETTINGS_ID, QByteArray(), this);
|
||||||
|
connect(m_gsettings, &QGSettings::changed, this, [=](const QString& key) {
|
||||||
|
if (key == TRANSPARENCY_KEY) {
|
||||||
|
m_cache.remove(TRANSPARENCY_KEY);
|
||||||
|
m_cache.insert(TRANSPARENCY_KEY, m_gsettings->get(TRANSPARENCY_KEY).toDouble());
|
||||||
|
qApp->paletteChanged(qApp->palette());
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
m_cache.remove(TRANSPARENCY_KEY);
|
||||||
|
m_cache.insert(TRANSPARENCY_KEY, m_gsettings->get(TRANSPARENCY_KEY).toDouble());
|
||||||
}
|
}
|
||||||
|
|
||||||
GlobalSettings::~GlobalSettings()
|
GlobalSettings::~GlobalSettings()
|
|
@ -5,8 +5,17 @@
|
||||||
#include <QSettings>
|
#include <QSettings>
|
||||||
#include <QMutex>
|
#include <QMutex>
|
||||||
#include <QVector>
|
#include <QVector>
|
||||||
|
//#include <QGSettings>
|
||||||
|
//If use pkg_config, it wont build succes,why?????????
|
||||||
|
//My demo can build access yet.
|
||||||
|
//MouseZhangZh
|
||||||
|
#include <QGSettings/QGSettings>
|
||||||
|
#include "libsearch_global.h"
|
||||||
|
|
||||||
class GlobalSettings : public QObject
|
#define CONTROL_CENTER_PERSONALISE_GSETTINGS_ID "org.ukui.control-center.personalise"
|
||||||
|
#define TRANSPARENCY_KEY "transparency"
|
||||||
|
|
||||||
|
class LIBSEARCH_EXPORT GlobalSettings : public QObject
|
||||||
{
|
{
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
public:
|
public:
|
||||||
|
@ -16,6 +25,7 @@ public:
|
||||||
|
|
||||||
Q_SIGNALS:
|
Q_SIGNALS:
|
||||||
void valueChanged (const QString&);
|
void valueChanged (const QString&);
|
||||||
|
void transparencyChanged (const double&);
|
||||||
|
|
||||||
public Q_SLOTS:
|
public Q_SLOTS:
|
||||||
void setValue(const QString&, const QVariant&);
|
void setValue(const QString&, const QVariant&);
|
||||||
|
@ -30,6 +40,7 @@ private:
|
||||||
~GlobalSettings();
|
~GlobalSettings();
|
||||||
|
|
||||||
QSettings* m_settings;
|
QSettings* m_settings;
|
||||||
|
QGSettings* m_gsettings;
|
||||||
QMap<QString, QVariant> m_cache;
|
QMap<QString, QVariant> m_cache;
|
||||||
|
|
||||||
QMutex m_mutex;
|
QMutex m_mutex;
|
|
@ -2,7 +2,7 @@
|
||||||
#define BLOCKDIRS_H
|
#define BLOCKDIRS_H
|
||||||
|
|
||||||
#include <QObject>
|
#include <QObject>
|
||||||
#include "globalsettings.h"
|
#include "global-settings.h"
|
||||||
|
|
||||||
#ifndef MYTYPE
|
#ifndef MYTYPE
|
||||||
#define MYTYPE
|
#define MYTYPE
|
||||||
|
|
|
@ -1,14 +1,13 @@
|
||||||
QT += core concurrent xml
|
QT += core concurrent xml widgets
|
||||||
|
|
||||||
VERSION = 0.0.1
|
VERSION = 0.0.1
|
||||||
|
|
||||||
TARGET = ukui-search
|
TARGET = ukui-search
|
||||||
TEMPLATE = lib
|
TEMPLATE = lib
|
||||||
DEFINES += LIBSEARCH_LIBRARY
|
DEFINES += LIBSEARCH_LIBRARY
|
||||||
|
|
||||||
PKGCONFIG += gio-2.0 glib-2.0 gio-unix-2.0
|
PKGCONFIG += gio-2.0 glib-2.0 gio-unix-2.0 gsettings-qt
|
||||||
CONFIG += c++11 link_pkgconfig no_keywords
|
|
||||||
|
|
||||||
|
CONFIG += c++11 link_pkgconfig no_keywords
|
||||||
|
|
||||||
|
|
||||||
# The following define makes your compiler emit warnings if you use
|
# The following define makes your compiler emit warnings if you use
|
||||||
|
@ -27,17 +26,17 @@ include(appsearch/appsearch.pri)
|
||||||
include(settingsearch/settingsearch.pri))
|
include(settingsearch/settingsearch.pri))
|
||||||
|
|
||||||
LIBS += -L../libchinese-segmentation/ -lchinese-segmentation
|
LIBS += -L../libchinese-segmentation/ -lchinese-segmentation
|
||||||
LIBS += -lxapian -lgsettings-qt -lquazip5
|
LIBS += -lxapian -lquazip5
|
||||||
|
|
||||||
SOURCES += \
|
SOURCES += \
|
||||||
file-utils.cpp \
|
file-utils.cpp \
|
||||||
globalsettings.cpp \
|
global-settings.cpp \
|
||||||
gobject-template.cpp \
|
gobject-template.cpp \
|
||||||
libsearch.cpp
|
libsearch.cpp
|
||||||
|
|
||||||
HEADERS += \
|
HEADERS += \
|
||||||
file-utils.h \
|
file-utils.h \
|
||||||
globalsettings.h \
|
global-settings.h \
|
||||||
gobject-template.h \
|
gobject-template.h \
|
||||||
libsearch_global.h \
|
libsearch_global.h \
|
||||||
libsearch.h
|
libsearch.h
|
||||||
|
|
|
@ -30,7 +30,7 @@
|
||||||
#include "qt-local-peer.h"
|
#include "qt-local-peer.h"
|
||||||
//#include "inotify-manager.h"
|
//#include "inotify-manager.h"
|
||||||
#include "libsearch.h"
|
#include "libsearch.h"
|
||||||
#include "globalsettings.h"
|
#include "global-settings.h"
|
||||||
|
|
||||||
|
|
||||||
void centerToScreen(QWidget* widget) {
|
void centerToScreen(QWidget* widget) {
|
||||||
|
|
|
@ -316,6 +316,10 @@ void MainWindow::searchContent(QString searchcontent){
|
||||||
//使用GSetting获取当前窗口应该使用的透明度
|
//使用GSetting获取当前窗口应该使用的透明度
|
||||||
double MainWindow::getTransparentData()
|
double MainWindow::getTransparentData()
|
||||||
{
|
{
|
||||||
|
//todo modify here!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||||
|
//todo modify here!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||||
|
//todo modify here!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||||
|
//if you have questions, please ask iaom or MouseZhangZh
|
||||||
if (!m_transparency_gsettings) {
|
if (!m_transparency_gsettings) {
|
||||||
return 0.7;
|
return 0.7;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
QT += core gui dbus svg KWindowSystem xml
|
QT += core gui dbus KWindowSystem xml
|
||||||
|
|
||||||
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
|
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue