You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
223 lines
7.9 KiB
223 lines
7.9 KiB
Description: Backport current upstream changes to fix cmake behavior
|
|
|
|
There was a refactoring that fortunately fix the now broken moc things too.
|
|
The changes are from the current development and should do no harm in 0.11.
|
|
|
|
diff --git a/liblxqt-config-cursor/main.cpp b/liblxqt-config-cursor/main.cpp
|
|
index 91afd83..2a5cb92 100644
|
|
--- a/liblxqt-config-cursor/main.cpp
|
|
+++ b/liblxqt-config-cursor/main.cpp
|
|
@@ -31,6 +31,8 @@ int main (int argc, char *argv[])
|
|
//QTextCodec::setCodecForLocale(QTextCodec::codecForName("koi8-r"));
|
|
|
|
LXQt::Application app(argc, argv);
|
|
+ app.setAttribute(Qt::AA_UseHighDpiPixmaps, true);
|
|
+
|
|
TRANSLATE_APP;
|
|
|
|
//qDebug() << findDefaultTheme() << getCurrentTheme();
|
|
diff --git a/liblxqt-config-cursor/selectwnd.cpp b/liblxqt-config-cursor/selectwnd.cpp
|
|
index e76840b..8a1fa18 100644
|
|
--- a/liblxqt-config-cursor/selectwnd.cpp
|
|
+++ b/liblxqt-config-cursor/selectwnd.cpp
|
|
@@ -13,6 +13,7 @@
|
|
#include <QDebug>
|
|
|
|
#include "selectwnd.h"
|
|
+#include "ui_selectwnd.h"
|
|
|
|
#include <QKeyEvent>
|
|
#include <QMessageBox>
|
|
@@ -37,22 +38,24 @@
|
|
|
|
#define HOME_ICON_DIR QDir::homePath() + "/.icons"
|
|
|
|
-SelectWnd::SelectWnd(LXQt::Settings* settings, QWidget *parent) : QWidget(parent), mSettings(settings)
|
|
+SelectWnd::SelectWnd(LXQt::Settings* settings, QWidget *parent)
|
|
+ : QWidget(parent),
|
|
+ mSettings(settings),
|
|
+ ui(new Ui::SelectWnd)
|
|
{
|
|
- setupUi(this);
|
|
-
|
|
- warningLabel->hide();
|
|
+ ui->setupUi(this);
|
|
+ ui->warningLabel->hide();
|
|
|
|
mModel = new XCursorThemeModel(this);
|
|
|
|
int size = style()->pixelMetric(QStyle::PM_LargeIconSize);
|
|
- lbThemes->setModel(mModel);
|
|
- lbThemes->setItemDelegate(new ItemDelegate(this));
|
|
- lbThemes->setIconSize(QSize(size, size));
|
|
- lbThemes->setSelectionMode(QAbstractItemView::SingleSelection);
|
|
+ ui->lbThemes->setModel(mModel);
|
|
+ ui->lbThemes->setItemDelegate(new ItemDelegate(this));
|
|
+ ui->lbThemes->setIconSize(QSize(size, size));
|
|
+ ui->lbThemes->setSelectionMode(QAbstractItemView::SingleSelection);
|
|
|
|
// Make sure we find out about selection changes
|
|
- connect(lbThemes->selectionModel(), SIGNAL(currentChanged(const QModelIndex &, const QModelIndex &)),
|
|
+ connect(ui->lbThemes->selectionModel(), SIGNAL(currentChanged(const QModelIndex &, const QModelIndex &)),
|
|
SLOT(currentChanged(const QModelIndex &, const QModelIndex &)));
|
|
// display/hide warning label
|
|
connect(mModel, SIGNAL(modelReset()),
|
|
@@ -62,15 +65,15 @@ SelectWnd::SelectWnd(LXQt::Settings* settings, QWidget *parent) : QWidget(parent
|
|
connect(mModel, SIGNAL(rowsRemoved(const QModelIndex&, int, int)),
|
|
this, SLOT(handleWarning()));
|
|
|
|
- connect(warningLabel, SIGNAL(showDirInfo()),
|
|
+ connect(ui->warningLabel, SIGNAL(showDirInfo()),
|
|
this, SLOT(showDirInfo()));
|
|
|
|
// Disable the install button if we can't install new themes to ~/.icons,
|
|
// or Xcursor isn't set up to look for cursor themes there
|
|
- btInstall->setEnabled(mModel->searchPaths().contains(HOME_ICON_DIR) && iconsIsWritable());
|
|
+ ui->btInstall->setEnabled(mModel->searchPaths().contains(HOME_ICON_DIR) && iconsIsWritable());
|
|
// TODO/FIXME: btInstall functionality
|
|
- btInstall->hide();
|
|
- btRemove->hide();
|
|
+ ui->btInstall->hide();
|
|
+ ui->btRemove->hide();
|
|
|
|
//QTimer::singleShot(0, this, SLOT(setCurrent()));
|
|
|
|
@@ -80,11 +83,12 @@ SelectWnd::SelectWnd(LXQt::Settings* settings, QWidget *parent) : QWidget(parent
|
|
|
|
SelectWnd::~SelectWnd()
|
|
{
|
|
+ delete ui;
|
|
}
|
|
|
|
void SelectWnd::setCurrent()
|
|
{
|
|
- lbThemes->selectionModel()->clear();
|
|
+ ui->lbThemes->selectionModel()->clear();
|
|
|
|
QString ct = getCurrentTheme();
|
|
mAppliedIndex = mModel->defaultIndex();
|
|
@@ -97,9 +101,9 @@ void SelectWnd::setCurrent()
|
|
const XCursorThemeData *theme = mModel->theme(mAppliedIndex);
|
|
// Select the current theme
|
|
selectRow(mAppliedIndex);
|
|
- lbThemes->scrollTo(mAppliedIndex, QListView::PositionAtCenter);
|
|
+ ui->lbThemes->scrollTo(mAppliedIndex, QListView::PositionAtCenter);
|
|
// Update the preview widget as well
|
|
- if (theme) preview->setTheme(*theme);// else preview->clearTheme();
|
|
+ if (theme) ui->preview->setTheme(*theme);// else ui->preview->clearTheme();
|
|
}
|
|
}
|
|
|
|
@@ -123,8 +127,8 @@ void SelectWnd::selectRow(int row) const
|
|
QModelIndex from = mModel->index(row, 0);
|
|
QModelIndex to = mModel->index(row, mModel->columnCount()-1);
|
|
QItemSelection selection(from, to);
|
|
- lbThemes->selectionModel()->select(selection, QItemSelectionModel::Select);
|
|
- lbThemes->selectionModel()->setCurrentIndex(mAppliedIndex, QItemSelectionModel::NoUpdate);
|
|
+ ui->lbThemes->selectionModel()->select(selection, QItemSelectionModel::Select);
|
|
+ ui->lbThemes->selectionModel()->setCurrentIndex(mAppliedIndex, QItemSelectionModel::NoUpdate);
|
|
}
|
|
|
|
void SelectWnd::currentChanged(const QModelIndex ¤t, const QModelIndex &previous)
|
|
@@ -133,16 +137,16 @@ void SelectWnd::currentChanged(const QModelIndex ¤t, const QModelIndex &pr
|
|
if (current.isValid()) {
|
|
const XCursorThemeData *theme = mModel->theme(current);
|
|
if (theme) {
|
|
- preview->setTheme(*theme);
|
|
- btRemove->setEnabled(theme->isWritable());
|
|
+ ui->preview->setTheme(*theme);
|
|
+ ui->btRemove->setEnabled(theme->isWritable());
|
|
} else {
|
|
- preview->clearTheme();
|
|
+ ui->preview->clearTheme();
|
|
}
|
|
|
|
// directly apply the current settings
|
|
applyCurrent();
|
|
} else {
|
|
- preview->clearTheme();
|
|
+ ui->preview->clearTheme();
|
|
}
|
|
//emit changed(mAppliedIndex != current);
|
|
}
|
|
@@ -155,7 +159,7 @@ void SelectWnd::on_btInstall_clicked()
|
|
void SelectWnd::applyCurrent()
|
|
{
|
|
//qDebug() << "'set' clicked";
|
|
- const XCursorThemeData *theme = mModel->theme(lbThemes->currentIndex());
|
|
+ const XCursorThemeData *theme = mModel->theme(ui->lbThemes->currentIndex());
|
|
if (!theme) return;
|
|
applyTheme(*theme);
|
|
fixXDefaults(theme->name());
|
|
@@ -200,7 +204,7 @@ void SelectWnd::applyCurrent()
|
|
void SelectWnd::on_btRemove_clicked()
|
|
{
|
|
qDebug() << "'remove' clicked";
|
|
- const XCursorThemeData *theme = mModel->theme(lbThemes->currentIndex());
|
|
+ const XCursorThemeData *theme = mModel->theme(ui->lbThemes->currentIndex());
|
|
if (!theme) return;
|
|
QString ct = getCurrentTheme();
|
|
if (ct == theme->name())
|
|
@@ -210,20 +214,20 @@ void SelectWnd::on_btRemove_clicked()
|
|
return;
|
|
}
|
|
QDir d(theme->path());
|
|
- preview->clearTheme();
|
|
- mModel->removeTheme(lbThemes->currentIndex());
|
|
+ ui->preview->clearTheme();
|
|
+ mModel->removeTheme(ui->lbThemes->currentIndex());
|
|
removeXCursorTheme(d);
|
|
}
|
|
|
|
void SelectWnd::handleWarning()
|
|
{
|
|
bool empty = mModel->rowCount();
|
|
- warningLabel->setVisible(!empty);
|
|
- preview->setVisible(empty);
|
|
- infoLabel->setVisible(empty);
|
|
+ ui->warningLabel->setVisible(!empty);
|
|
+ ui->preview->setVisible(empty);
|
|
+ ui->infoLabel->setVisible(empty);
|
|
}
|
|
|
|
void SelectWnd::showDirInfo()
|
|
{
|
|
- QToolTip::showText(mapToGlobal(warningLabel->buttonPos()), mModel->searchPaths().join("\n"));
|
|
+ QToolTip::showText(mapToGlobal(ui->warningLabel->buttonPos()), mModel->searchPaths().join("\n"));
|
|
}
|
|
diff --git a/liblxqt-config-cursor/selectwnd.h b/liblxqt-config-cursor/selectwnd.h
|
|
index c9bc428..200cfa0 100644
|
|
--- a/liblxqt-config-cursor/selectwnd.h
|
|
+++ b/liblxqt-config-cursor/selectwnd.h
|
|
@@ -15,16 +15,20 @@
|
|
|
|
#include <QObject>
|
|
#include <QWidget>
|
|
+#include <QPersistentModelIndex>
|
|
#include <lxqtglobals.h>
|
|
|
|
namespace LXQt {
|
|
class Settings;
|
|
}
|
|
|
|
+namespace Ui {
|
|
+class SelectWnd;
|
|
+}
|
|
+
|
|
class XCursorThemeModel;
|
|
|
|
-#include "ui_selectwnd.h"
|
|
-class LXQT_API SelectWnd : public QWidget, private Ui_SelectWnd
|
|
+class LXQT_API SelectWnd : public QWidget
|
|
{
|
|
Q_OBJECT
|
|
|
|
@@ -55,6 +59,7 @@ private:
|
|
XCursorThemeModel *mModel;
|
|
QPersistentModelIndex mAppliedIndex;
|
|
LXQt::Settings* mSettings;
|
|
+ Ui::SelectWnd *ui;
|
|
};
|
|
|
|
#endif
|