Update to 3.4.0

OBS-URL: https://build.opensuse.org/package/show/graphics/gmic?expand=0&rev=97
This commit is contained in:
Christophe Marin 2024-06-28 08:31:20 +00:00 committed by Git OBS Bridge
parent 96236747ac
commit c626ddee84
7 changed files with 130 additions and 109 deletions

View File

@ -1,4 +1,4 @@
From 117f2d84d1baf454f8eeef05c0779f7011be8102 Mon Sep 17 00:00:00 2001
From 7c185a08bd2f37c1831542651db3b048ba231ae6 Mon Sep 17 00:00:00 2001
From: Christophe Marin <christophe@krop.fr>
Date: Mon, 17 Apr 2023 16:07:00 +0200
Subject: [PATCH] Find the local gmic library
@ -11,10 +11,10 @@ To keep using CMake in gmic-qt, we need to find the locally built gmic library.
1 file changed, 9 insertions(+), 6 deletions(-)
diff --git a/gmic-qt/CMakeLists.txt b/gmic-qt/CMakeLists.txt
index 9aa0568..7763df7 100644
index 0641f4c..17d1535 100644
--- a/gmic-qt/CMakeLists.txt
+++ b/gmic-qt/CMakeLists.txt
@@ -142,7 +142,13 @@ endif()
@@ -149,7 +149,13 @@ endif()
# Gmic
#
if (ENABLE_SYSTEM_GMIC)
@ -29,7 +29,7 @@ index 9aa0568..7763df7 100644
endif (ENABLE_SYSTEM_GMIC)
#
@@ -577,10 +583,10 @@ if(ENABLE_DYNAMIC_LINKING)
@@ -610,10 +616,10 @@ if(ENABLE_DYNAMIC_LINKING)
${gmic_qt_LIBRARIES}
libgmicstatic
)
@ -42,7 +42,7 @@ index 9aa0568..7763df7 100644
)
elseif(GMIC_LIB_PATH)
set(gmic_qt_LIBRARIES
@@ -612,9 +618,6 @@ if(ENABLE_DYNAMIC_LINKING)
@@ -645,9 +651,6 @@ if(ENABLE_DYNAMIC_LINKING)
${CURL_LIBRARIES}
${EXTRA_LIBRARIES})
endif()
@ -53,5 +53,5 @@ index 9aa0568..7763df7 100644
else(ENABLE_DYNAMIC_LINKING)
set(gmic_qt_SRCS
--
2.40.0
2.45.2

View File

@ -1,7 +1,7 @@
<constraints>
<hardware>
<memory>
<size unit="G">9</size>
<size unit="G">4</size>
</memory>
</hardware>
<overwrite>
@ -10,7 +10,7 @@
</conditions>
<hardware>
<memory>
<size unit="G">7</size>
<size unit="G">5</size>
</memory>
</hardware>
</overwrite>

View File

@ -1,3 +1,12 @@
-------------------------------------------------------------------
Fri Jun 28 07:42:52 UTC 2024 - Christophe Marin <christophe@krop.fr>
- Update to 3.4.0
https://discuss.pixls.us/t/release-of-gmic-3-4/39353
* New filters added: color wheel, blur (motion), underwoods,
spline spirograph, distort (RBF), color mixer
- Update build constraints
-------------------------------------------------------------------
Thu Apr 11 12:00:55 UTC 2024 - Christophe Marin <christophe@krop.fr>

View File

@ -40,7 +40,7 @@
%define gmic_datadir %{_datadir}/gmic
Name: gmic
Version: 3.3.5
Version: 3.4.0
Release: 0
Summary: GREYC's Magick for Image Computing (denoise and others)
# gmic-qt is GPL-3.0-or-later, zart is CECILL-2.0, libgmic and cli program are

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:052456e0d9dd6a3c1e102a857ae32150ee6d5cb02a1d2f810c197ec490e56c1b
size 17244320

3
gmic_3.4.0.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:df6f087af3db935d5788f7fa20c4fc46a426991919db91853b0db1c9e7cd792a
size 18020463

View File

@ -1,8 +1,11 @@
Krita 5 plugin support
From c4b6796080d5c0f76b64fee06a38d285ab462a75 Mon Sep 17 00:00:00 2001
From: Christophe Marin <christophe@krop.fr>
Date: Fri, 28 Jun 2024 09:46:58 +0200
Subject: [PATCH] Krita 5 plugin support
Origin: https://github.com/amyspark/gmic
Rebased for gmic 3.3.3
Rebased for gmic 3.4.0
---
gmic-qt/CMakeLists.txt | 68 ++++-
gmic-qt/gmic_krita_qt.desktop | 9 +
@ -27,13 +30,13 @@ Rebased for gmic 3.3.3
gmic-qt/src/MainWindow.cpp | 52 +++-
gmic-qt/src/MainWindow.h | 2 +
gmic-qt/src/Settings.cpp | 10 +-
gmic-qt/src/Tags.cpp | 5 +-
gmic-qt/src/Tags.cpp | 6 +-
gmic-qt/src/Widgets/InOutPanel.cpp | 2 +
gmic-qt/src/Widgets/InOutPanel.h | 2 +
gmic-qt/src/Widgets/ProgressInfoWindow.cpp | 4 +
gmic-qt/src/Widgets/ProgressInfoWindow.h | 2 +
gmic-qt/ui/dialogsettings.ui | 2 +-
29 files changed, 715 insertions(+), 32 deletions(-)
29 files changed, 716 insertions(+), 32 deletions(-)
create mode 100644 gmic-qt/gmic_krita_qt.desktop
create mode 100644 gmic-qt/src/Host/KritaPlugin/gmicqttoolplugin.cpp
create mode 100644 gmic-qt/src/Host/KritaPlugin/gmicqttoolplugin.h
@ -246,10 +249,10 @@ index 6c1e6b9..29328c4 100644
Settings::save(settings);
QDialog::done(r);
diff --git a/gmic-qt/src/FilterParameters/BoolParameter.cpp b/gmic-qt/src/FilterParameters/BoolParameter.cpp
index 8a09de7..90c5eed 100644
index ffa324e..a9dfb04 100644
--- a/gmic-qt/src/FilterParameters/BoolParameter.cpp
+++ b/gmic-qt/src/FilterParameters/BoolParameter.cpp
@@ -63,12 +63,14 @@ bool BoolParameter::addTo(QWidget * widget, int row)
@@ -64,12 +64,14 @@ bool BoolParameter::addTo(QWidget * widget, int row)
_checkBox = new QCheckBox(widget);
_checkBox->setChecked(_value);
_label = new QLabel(_name, widget);
@ -265,10 +268,10 @@ index 8a09de7..90c5eed 100644
_grid->addWidget(_checkBox, row, 1, 1, 2);
connectCheckBox();
diff --git a/gmic-qt/src/FilterParameters/FloatParameter.cpp b/gmic-qt/src/FilterParameters/FloatParameter.cpp
index 01a01c6..d9524e4 100644
index fb271f0..c8aa32b 100644
--- a/gmic-qt/src/FilterParameters/FloatParameter.cpp
+++ b/gmic-qt/src/FilterParameters/FloatParameter.cpp
@@ -72,13 +72,14 @@ bool FloatParameter::addTo(QWidget * widget, int row)
@@ -73,13 +73,14 @@ bool FloatParameter::addTo(QWidget * widget, int row)
_slider->setMinimumWidth(SLIDER_MIN_WIDTH);
_slider->setRange(0, SLIDER_MAX_RANGE);
_slider->setValue(static_cast<int>(SLIDER_MAX_RANGE * (_value - _min) / (_max - _min)));
@ -285,10 +288,10 @@ index 01a01c6..d9524e4 100644
_spinBox->setSingleStep(double(_max - _min) / 100.0);
_spinBox->setValue((double)_value);
diff --git a/gmic-qt/src/FilterParameters/IntParameter.cpp b/gmic-qt/src/FilterParameters/IntParameter.cpp
index 0bdcba7..2a657c0 100644
index 2af87cb..bc0f77c 100644
--- a/gmic-qt/src/FilterParameters/IntParameter.cpp
+++ b/gmic-qt/src/FilterParameters/IntParameter.cpp
@@ -80,12 +80,14 @@ bool IntParameter::addTo(QWidget * widget, int row)
@@ -81,12 +81,14 @@ bool IntParameter::addTo(QWidget * widget, int row)
_spinBox = new CustomSpinBox(widget, _min, _max);
_spinBox->setValue(_value);
@ -388,10 +391,10 @@ index b19a38d..9ab3e3b 100644
+
#endif // GMIC_QT_GLOBALS_H
diff --git a/gmic-qt/src/GmicProcessor.cpp b/gmic-qt/src/GmicProcessor.cpp
index 1d54b97..fd46545 100644
index 80c93c1..0019a1f 100644
--- a/gmic-qt/src/GmicProcessor.cpp
+++ b/gmic-qt/src/GmicProcessor.cpp
@@ -208,6 +208,11 @@ bool GmicProcessor::isIdle() const
@@ -209,6 +209,11 @@ bool GmicProcessor::isIdle() const
return !_filterThread;
}
@ -404,10 +407,10 @@ index 1d54b97..fd46545 100644
{
if (_filterThread) {
diff --git a/gmic-qt/src/GmicProcessor.h b/gmic-qt/src/GmicProcessor.h
index 89875ca..d1d58b8 100644
index cecdd1a..e85cb57 100644
--- a/gmic-qt/src/GmicProcessor.h
+++ b/gmic-qt/src/GmicProcessor.h
@@ -93,6 +93,7 @@ public:
@@ -94,6 +94,7 @@ public:
bool isProcessingFullImage() const;
bool isProcessing() const;
bool isIdle() const;
@ -1062,10 +1065,10 @@ index 7e74667..0c92a47 100644
}
}
diff --git a/gmic-qt/src/MainWindow.cpp b/gmic-qt/src/MainWindow.cpp
index 14ecacc..52642cc 100644
index d48e095..008d955 100644
--- a/gmic-qt/src/MainWindow.cpp
+++ b/gmic-qt/src/MainWindow.cpp
@@ -188,8 +188,12 @@ MainWindow::MainWindow(QWidget * parent) : QMainWindow(parent), ui(new Ui::MainW
@@ -187,8 +187,12 @@ MainWindow::MainWindow(QWidget * parent) : QMainWindow(parent), ui(new Ui::MainW
updateShortcutF5->setContext(Qt::ApplicationShortcut);
QShortcut * updateShortcutCtrlR = new QShortcut(QKeySequence("Ctrl+R"), this);
updateShortcutCtrlR->setContext(Qt::ApplicationShortcut);
@ -1141,7 +1144,7 @@ index 14ecacc..52642cc 100644
}
}
}
@@ -695,7 +705,9 @@ void MainWindow::onPreviewUpdateRequested(bool synchronous)
@@ -696,7 +706,9 @@ void MainWindow::onPreviewUpdateRequested(bool synchronous, bool randomized)
ui->previewWidget->invalidateSavedPreview();
return;
}
@ -1151,7 +1154,7 @@ index 14ecacc..52642cc 100644
_processor.init();
GmicProcessor::FilterContext context;
if (!ui->cbPreview->isChecked()) {
@@ -762,7 +774,9 @@ void MainWindow::onPreviewImageAvailable()
@@ -764,7 +776,9 @@ void MainWindow::onPreviewImageAvailable()
}
ui->previewWidget->setPreviewImage(_processor.previewImage());
ui->previewWidget->enableRightClick();
@ -1161,7 +1164,7 @@ index 14ecacc..52642cc 100644
}
void MainWindow::onGUIDynamismRunDone()
@@ -777,9 +791,19 @@ void MainWindow::onGUIDynamismRunDone()
@@ -779,9 +793,19 @@ void MainWindow::onGUIDynamismRunDone()
void MainWindow::onPreviewError(const QString & message)
{
@ -1181,7 +1184,7 @@ index 14ecacc..52642cc 100644
}
void MainWindow::onParametersChanged()
@@ -861,12 +885,16 @@ void MainWindow::onVeryFirstShowEvent()
@@ -864,12 +888,16 @@ void MainWindow::onVeryFirstShowEvent()
Updater::setOutputMessageMode(Settings::outputMessageMode());
int ageLimit;
{
@ -1200,7 +1203,7 @@ index 14ecacc..52642cc 100644
}
void MainWindow::setZoomConstraint()
@@ -1001,7 +1029,7 @@ void MainWindow::saveCurrentParameters()
@@ -1019,7 +1047,7 @@ void MainWindow::saveCurrentParameters()
void MainWindow::saveSettings()
{
@ -1209,7 +1212,7 @@ index 14ecacc..52642cc 100644
_filtersPresenter->saveSettings(settings);
@@ -1043,7 +1071,7 @@ void MainWindow::saveSettings()
@@ -1061,7 +1089,7 @@ void MainWindow::saveSettings()
void MainWindow::loadSettings()
{
@ -1218,7 +1221,7 @@ index 14ecacc..52642cc 100644
_filtersPresenter->loadSettings(settings);
_lastExecutionOK = settings.value("LastExecution/ExitedNormally", true).toBool();
_newSession = host_app_pid() != settings.value("LastExecution/HostApplicationID", 0).toUInt();
@@ -1058,9 +1086,11 @@ void MainWindow::loadSettings()
@@ -1076,9 +1104,11 @@ void MainWindow::loadSettings()
if (settings.value("Config/PreviewPosition", "Left").toString() == "Left") {
setPreviewPosition(PreviewPosition::Left);
}
@ -1230,7 +1233,7 @@ index 14ecacc..52642cc 100644
if (!Settings::visibleLogos()) {
ui->logosLabel->hide();
}
@@ -1104,7 +1134,7 @@ void MainWindow::loadSettings()
@@ -1122,7 +1152,7 @@ void MainWindow::loadSettings()
ui->splitter->setSizes(sizes);
}
@ -1239,7 +1242,7 @@ index 14ecacc..52642cc 100644
}
void MainWindow::setPreviewPosition(MainWindow::PreviewPosition position)
@@ -1166,7 +1196,7 @@ void MainWindow::setPreviewPosition(MainWindow::PreviewPosition position)
@@ -1184,7 +1214,7 @@ void MainWindow::setPreviewPosition(MainWindow::PreviewPosition position)
void MainWindow::adjustVerticalSplitter()
{
QList<int> sizes;
@ -1248,7 +1251,7 @@ index 14ecacc..52642cc 100644
sizes.push_back(settings.value(QString("Config/ParamsVerticalSplitterSizeTop"), -1).toInt());
sizes.push_back(settings.value(QString("Config/ParamsVerticalSplitterSizeBottom"), -1).toInt());
const int splitterHeight = ui->verticalSplitter->height();
@@ -1294,17 +1324,19 @@ bool MainWindow::askUserForGTKFavesImport()
@@ -1315,17 +1345,19 @@ bool MainWindow::askUserForGTKFavesImport()
QMessageBox::Yes | QMessageBox::No, this);
messageBox.setDefaultButton(QMessageBox::Yes);
QCheckBox * cb = new QCheckBox(tr("Don't ask again"));
@ -1270,10 +1273,10 @@ index 14ecacc..52642cc 100644
return false;
}
diff --git a/gmic-qt/src/MainWindow.h b/gmic-qt/src/MainWindow.h
index 4f436f9..bccd72c 100644
index e7ed69d..ea16e23 100644
--- a/gmic-qt/src/MainWindow.h
+++ b/gmic-qt/src/MainWindow.h
@@ -71,7 +71,9 @@ public:
@@ -70,7 +70,9 @@ public:
explicit MainWindow(QWidget * parent = nullptr);
~MainWindow() override;
void updateFiltersFromSources(int ageLimit, bool useNetwork);
@ -1284,10 +1287,10 @@ index 4f436f9..bccd72c 100644
public slots:
diff --git a/gmic-qt/src/Settings.cpp b/gmic-qt/src/Settings.cpp
index c50020c..08c1c89 100644
index 4764218..6e91e78 100644
--- a/gmic-qt/src/Settings.cpp
+++ b/gmic-qt/src/Settings.cpp
@@ -75,7 +75,7 @@ QString Settings::NegativeSign('-');
@@ -77,7 +77,7 @@ QString Settings::NegativeSign('-');
void Settings::load(UserInterfaceMode userInterfaceMode)
{
@ -1296,7 +1299,7 @@ index c50020c..08c1c89 100644
_visibleLogos = settings.value("LogosAreVisible", true).toBool();
_darkThemeEnabled = settings.value(DARK_THEME_KEY, GmicQtHost::DarkThemeIsDefault).toBool();
_languageCode = settings.value(LANGUAGE_CODE_KEY, QString()).toString();
@@ -129,7 +129,11 @@ void Settings::setVisibleLogos(bool on)
@@ -131,7 +131,11 @@ void Settings::setVisibleLogos(bool on)
bool Settings::darkThemeEnabled()
{
@ -1309,7 +1312,7 @@ index c50020c..08c1c89 100644
}
void Settings::setDarkThemeEnabled(bool on)
@@ -271,8 +275,10 @@ void Settings::save(QSettings & settings)
@@ -273,8 +277,10 @@ void Settings::save(QSettings & settings)
{
removeObsoleteKeys(settings);
settings.setValue("LogosAreVisible", _visibleLogos);
@ -1321,10 +1324,18 @@ index c50020c..08c1c89 100644
settings.setValue("Config/NativeColorDialogs", _nativeColorDialogs);
diff --git a/gmic-qt/src/Tags.cpp b/gmic-qt/src/Tags.cpp
index fae4d99..6b721ce 100644
index fae4d99..d3140e0 100644
--- a/gmic-qt/src/Tags.cpp
+++ b/gmic-qt/src/Tags.cpp
@@ -148,7 +148,10 @@ QAction * TagAssets::action(QObject * parent, TagColor color, IconMark mark)
@@ -26,6 +26,7 @@
#include <QAction>
#include <QBuffer>
#include <QByteArray>
+#include <QCoreApplication>
#include <QDebug>
#include <QIcon>
#include <QImage>
@@ -148,7 +149,10 @@ QAction * TagAssets::action(QObject * parent, TagColor color, IconMark mark)
if ((color == TagColor::None) || (color == TagColor::Count)) {
return nullptr;
}
@ -1427,4 +1438,5 @@ index 10b7ec8..f03ef4c 100644
<string>Theme</string>
</property>
--
2.43.0
2.45.2