Compare commits
10 Commits
da9d7d6989
...
1.0.0
Author | SHA1 | Date | |
---|---|---|---|
b964fdc77f | |||
d6d2703c93 | |||
c6068ba23d | |||
fbdd858fbd | |||
8333f17199 | |||
30eb06cba7 | |||
0a45cd7c22 | |||
fc417b30e5 | |||
8568f6d4ef | |||
8832c2daa9 |
2
.github/workflows/macos.yml
vendored
2
.github/workflows/macos.yml
vendored
@ -12,7 +12,7 @@ jobs:
|
|||||||
- name: Install Qt
|
- name: Install Qt
|
||||||
uses: jurplel/install-qt-action@v4
|
uses: jurplel/install-qt-action@v4
|
||||||
with:
|
with:
|
||||||
version: '6.8.3'
|
version: '6.9.0'
|
||||||
modules: 'qtimageformats'
|
modules: 'qtimageformats'
|
||||||
- name: Install Conan and Dependencies
|
- name: Install Conan and Dependencies
|
||||||
id: conan
|
id: conan
|
||||||
|
38
.github/workflows/windows.yml
vendored
38
.github/workflows/windows.yml
vendored
@ -8,7 +8,7 @@ jobs:
|
|||||||
strategy:
|
strategy:
|
||||||
matrix:
|
matrix:
|
||||||
include:
|
include:
|
||||||
- qt_ver: '6.8.3'
|
- qt_ver: '6.9.0'
|
||||||
vs: '2022'
|
vs: '2022'
|
||||||
aqt_arch: 'win64_msvc2022_64'
|
aqt_arch: 'win64_msvc2022_64'
|
||||||
msvc_arch: 'x64'
|
msvc_arch: 'x64'
|
||||||
@ -44,7 +44,7 @@ jobs:
|
|||||||
strategy:
|
strategy:
|
||||||
matrix:
|
matrix:
|
||||||
include:
|
include:
|
||||||
- qt_ver: '6.8.3'
|
- qt_ver: '6.9.0'
|
||||||
vs: '2022'
|
vs: '2022'
|
||||||
aqt_arch: 'win64_msvc2022_64'
|
aqt_arch: 'win64_msvc2022_64'
|
||||||
msvc_arch: 'x64'
|
msvc_arch: 'x64'
|
||||||
@ -71,44 +71,52 @@ jobs:
|
|||||||
:: ------ dep ------
|
:: ------ dep ------
|
||||||
set CMAKE_PREFIX_PATH=%PWD%/dependencies_bin
|
set CMAKE_PREFIX_PATH=%PWD%/dependencies_bin
|
||||||
mkdir dependencies_src
|
mkdir dependencies_src
|
||||||
:: ===== exiv2 =====
|
echo ::group::===== exiv2 =====
|
||||||
curl -fsSL -o exiv2_bin.zip https://github.com/Exiv2/exiv2/releases/download/v0.28.3/exiv2-0.28.3-2019msvc64.zip
|
curl -fsSL -o exiv2_bin.zip https://github.com/Exiv2/exiv2/releases/download/v0.28.3/exiv2-0.28.3-2019msvc64.zip
|
||||||
7z x exiv2_bin.zip -y
|
7z x exiv2_bin.zip -y
|
||||||
ren .\exiv2-0.28.3-2019msvc64 dependencies_bin
|
ren .\exiv2-0.28.3-2019msvc64 dependencies_bin
|
||||||
:: ===== zlib =====
|
echo ::endgroup::
|
||||||
|
echo ::group::===== zlib =====
|
||||||
curl -fsSL -o zlib_src.zip https://zlib.net/zlib131.zip
|
curl -fsSL -o zlib_src.zip https://zlib.net/zlib131.zip
|
||||||
7z x zlib_src.zip -y -o"dependencies_src"
|
7z x zlib_src.zip -y -o"dependencies_src"
|
||||||
ren .\dependencies_src\zlib-1.3.1 zlib || goto :error
|
ren .\dependencies_src\zlib-1.3.1 zlib || goto :error
|
||||||
cmake ./dependencies_src/zlib -Bbuild_dependencies/zlib -DCMAKE_INSTALL_PREFIX="dependencies_bin" || goto :error
|
cmake ./dependencies_src/zlib -Bbuild_dependencies/zlib -DCMAKE_INSTALL_PREFIX="dependencies_bin" || goto :error
|
||||||
cmake --build build_dependencies/zlib --config Release --target=install || goto :error
|
cmake --build build_dependencies/zlib --config Release --target=install || goto :error
|
||||||
curl -fsSL -o expat_src.zip https://github.com/libexpat/libexpat/archive/R_2_6_2.zip
|
curl -fsSL -o expat_src.zip https://github.com/libexpat/libexpat/archive/R_2_6_2.zip
|
||||||
:: ===== AOM for libavif AVI decoding support =====
|
echo ::endgroup::
|
||||||
git clone -q -b v3.10.0 --depth 1 https://aomedia.googlesource.com/aom dependencies_src/aom
|
echo ::group::===== AOM for libavif AVI decoding support =====
|
||||||
|
git clone -q -b v3.12.0 --depth 1 https://aomedia.googlesource.com/aom dependencies_src/aom
|
||||||
cmake ./dependencies_src/aom -Bbuild_dependencies/aom -DCMAKE_INSTALL_PREFIX="dependencies_bin" -DENABLE_DOCS=OFF -DBUILD_SHARED_LIBS=ON -DAOM_TARGET_CPU=generic -DENABLE_TESTS=OFF -DENABLE_TESTDATA=OFF -DENABLE_TOOLS=OFF -DENABLE_EXAMPLES=0 || goto :error
|
cmake ./dependencies_src/aom -Bbuild_dependencies/aom -DCMAKE_INSTALL_PREFIX="dependencies_bin" -DENABLE_DOCS=OFF -DBUILD_SHARED_LIBS=ON -DAOM_TARGET_CPU=generic -DENABLE_TESTS=OFF -DENABLE_TESTDATA=OFF -DENABLE_TOOLS=OFF -DENABLE_EXAMPLES=0 || goto :error
|
||||||
cmake --build build_dependencies/aom --config Release --target=install || goto :error
|
cmake --build build_dependencies/aom --config Release --target=install || goto :error
|
||||||
:: ===== libavif =====
|
echo ::endgroup::
|
||||||
curl -fsSL -o libavif-v1_1_1.zip https://github.com/AOMediaCodec/libavif/archive/v1.1.1.zip
|
echo ::group::===== libavif =====
|
||||||
7z x libavif-v1_1_1.zip -y -o"dependencies_src"
|
curl -fsSL -o libavif-v1_2_1.zip https://github.com/AOMediaCodec/libavif/archive/v1.2.1.zip
|
||||||
ren .\dependencies_src\libavif-1.1.1 libavif || goto :error
|
7z x libavif-v1_2_1.zip -y -o"dependencies_src"
|
||||||
cmake ./dependencies_src/libavif -Bbuild_dependencies/libavif -DCMAKE_INSTALL_PREFIX="dependencies_bin" -DAVIF_CODEC_AOM=ON -DAVIF_LOCAL_LIBYUV=ON
|
ren .\dependencies_src\libavif-1.2.1 libavif || goto :error
|
||||||
|
cmake ./dependencies_src/libavif -Bbuild_dependencies/libavif -DCMAKE_INSTALL_PREFIX="dependencies_bin" -DAVIF_CODEC_AOM=ON -DAVIF_LIBYUV=LOCAL
|
||||||
cmake --build build_dependencies/libavif --config Release --target=install || goto :error
|
cmake --build build_dependencies/libavif --config Release --target=install || goto :error
|
||||||
:: ===== expat =====
|
echo ::endgroup::
|
||||||
|
echo ::group::===== expat =====
|
||||||
7z x expat_src.zip -y -o"dependencies_src"
|
7z x expat_src.zip -y -o"dependencies_src"
|
||||||
ren .\dependencies_src\libexpat-R_2_6_2 expat || goto :error
|
ren .\dependencies_src\libexpat-R_2_6_2 expat || goto :error
|
||||||
cmake ./dependencies_src/expat/expat -Bbuild_dependencies/expat -DCMAKE_INSTALL_PREFIX="dependencies_bin" || goto :error
|
cmake ./dependencies_src/expat/expat -Bbuild_dependencies/expat -DCMAKE_INSTALL_PREFIX="dependencies_bin" || goto :error
|
||||||
cmake --build build_dependencies/expat --config Release --target=install || goto :error
|
cmake --build build_dependencies/expat --config Release --target=install || goto :error
|
||||||
:: ===== ECM =====
|
echo ::endgroup::
|
||||||
|
echo ::group::===== ECM =====
|
||||||
git clone -q https://invent.kde.org/frameworks/extra-cmake-modules.git dependencies_src/extra-cmake-modules
|
git clone -q https://invent.kde.org/frameworks/extra-cmake-modules.git dependencies_src/extra-cmake-modules
|
||||||
cmake .\dependencies_src\extra-cmake-modules -Bbuild_dependencies/extra-cmake-modules -DCMAKE_INSTALL_PREFIX="dependencies_bin" -DBUILD_TESTING=OFF || goto :error
|
cmake .\dependencies_src\extra-cmake-modules -Bbuild_dependencies/extra-cmake-modules -DCMAKE_INSTALL_PREFIX="dependencies_bin" -DBUILD_TESTING=OFF || goto :error
|
||||||
cmake --build build_dependencies/extra-cmake-modules --config Release --target=install || goto :error
|
cmake --build build_dependencies/extra-cmake-modules --config Release --target=install || goto :error
|
||||||
:: ===== KArchive =====
|
echo ::endgroup::
|
||||||
|
echo ::group::===== KArchive =====
|
||||||
git clone -q https://invent.kde.org/frameworks/karchive.git dependencies_src/karchive
|
git clone -q https://invent.kde.org/frameworks/karchive.git dependencies_src/karchive
|
||||||
cmake .\dependencies_src\karchive -Bbuild_dependencies/karchive -DWITH_LIBZSTD=OFF -DWITH_BZIP2=OFF -DWITH_LIBLZMA=OFF -DCMAKE_INSTALL_PREFIX="dependencies_bin" || goto :error
|
cmake .\dependencies_src\karchive -Bbuild_dependencies/karchive -DWITH_LIBZSTD=OFF -DWITH_BZIP2=OFF -DWITH_LIBLZMA=OFF -DCMAKE_INSTALL_PREFIX="dependencies_bin" || goto :error
|
||||||
cmake --build build_dependencies/karchive --config Release --target=install || goto :error
|
cmake --build build_dependencies/karchive --config Release --target=install || goto :error
|
||||||
:: ===== KImageFormats =====
|
echo ::endgroup::
|
||||||
|
echo ::group::===== KImageFormats =====
|
||||||
git clone -q https://invent.kde.org/frameworks/kimageformats.git dependencies_src/kimageformats
|
git clone -q https://invent.kde.org/frameworks/kimageformats.git dependencies_src/kimageformats
|
||||||
cmake .\dependencies_src\kimageformats -Bbuild_dependencies/kimageformats -DKDE_INSTALL_QTPLUGINDIR=%QT_ROOT_DIR%\plugins || goto :error
|
cmake .\dependencies_src\kimageformats -Bbuild_dependencies/kimageformats -DKDE_INSTALL_QTPLUGINDIR=%QT_ROOT_DIR%\plugins || goto :error
|
||||||
cmake --build build_dependencies/kimageformats --config Release --target=install || goto :error
|
cmake --build build_dependencies/kimageformats --config Release --target=install || goto :error
|
||||||
|
echo ::endgroup::
|
||||||
:: ------ app ------
|
:: ------ app ------
|
||||||
cmake -Bbuild . -DCMAKE_INSTALL_PREFIX="%PWD%\build\"
|
cmake -Bbuild . -DCMAKE_INSTALL_PREFIX="%PWD%\build\"
|
||||||
cmake --build build --config Release
|
cmake --build build --config Release
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
|
|
||||||
cmake_minimum_required(VERSION 3.16)
|
cmake_minimum_required(VERSION 3.16)
|
||||||
|
|
||||||
project(pineapple-pictures VERSION 0.9.2) # don't forget to update NEWS file and AppStream metadata.
|
project(pineapple-pictures VERSION 1.0.0) # don't forget to update NEWS file and AppStream metadata.
|
||||||
|
|
||||||
include(GNUInstallDirs)
|
include(GNUInstallDirs)
|
||||||
include(FeatureSummary)
|
include(FeatureSummary)
|
||||||
@ -118,10 +118,16 @@ add_executable (${EXE_NAME}
|
|||||||
)
|
)
|
||||||
|
|
||||||
if (${QT_VERSION_MAJOR} EQUAL "6")
|
if (${QT_VERSION_MAJOR} EQUAL "6")
|
||||||
|
set(ADD_TRANSLATIONS_ADDITIONAL_ARGS)
|
||||||
|
|
||||||
|
if (Qt6_VERSION VERSION_GREATER_EQUAL "6.9.0")
|
||||||
|
set(ADD_TRANSLATIONS_ADDITIONAL_ARGS MERGE_QT_TRANSLATIONS)
|
||||||
|
endif()
|
||||||
|
|
||||||
if (TRANSLATION_RESOURCE_EMBEDDING)
|
if (TRANSLATION_RESOURCE_EMBEDDING)
|
||||||
qt_add_translations(${EXE_NAME} TS_FILES ${PPIC_TS_FILES})
|
qt_add_translations(${EXE_NAME} ${ADD_TRANSLATIONS_ADDITIONAL_ARGS} TS_FILES ${PPIC_TS_FILES})
|
||||||
else()
|
else()
|
||||||
qt_add_translations(${EXE_NAME} TS_FILES ${PPIC_TS_FILES} QM_FILES_OUTPUT_VARIABLE PPIC_QM_FILES)
|
qt_add_translations(${EXE_NAME} ${ADD_TRANSLATIONS_ADDITIONAL_ARGS} TS_FILES ${PPIC_TS_FILES} QM_FILES_OUTPUT_VARIABLE PPIC_QM_FILES)
|
||||||
endif()
|
endif()
|
||||||
else()
|
else()
|
||||||
qt_create_translation(PPIC_QM_FILES ${PPIC_CPP_FILES_FOR_I18N} ${PPIC_TS_FILES})
|
qt_create_translation(PPIC_QM_FILES ${PPIC_CPP_FILES_FOR_I18N} ${PPIC_TS_FILES})
|
||||||
|
22
NEWS
22
NEWS
@ -1,3 +1,23 @@
|
|||||||
|
Version 1.0.0
|
||||||
|
~~~~~~~~~~~~~
|
||||||
|
Released: 2025-05-03
|
||||||
|
|
||||||
|
Features:
|
||||||
|
* Support enforce windowed mode on start-up
|
||||||
|
* Reload image automatically when current image gets updated
|
||||||
|
|
||||||
|
Bugfixes:
|
||||||
|
* Refer to the right exiv2 CMake module so it can be found on Linux
|
||||||
|
* Display correct text language on macOS
|
||||||
|
|
||||||
|
Miscellaneous:
|
||||||
|
* Use native text for shortcut editor's label
|
||||||
|
* Display native commandline message when possible
|
||||||
|
* Merge Qt translations into app applications as well
|
||||||
|
|
||||||
|
Contributors:
|
||||||
|
Heimen Stoffels, albanobattistella, mmahhi
|
||||||
|
|
||||||
Version 0.9.2
|
Version 0.9.2
|
||||||
~~~~~~~~~~~~~
|
~~~~~~~~~~~~~
|
||||||
Released: 2025-03-05
|
Released: 2025-03-05
|
||||||
@ -123,7 +143,7 @@ Version 0.7.1
|
|||||||
Released: 2023-07-08
|
Released: 2023-07-08
|
||||||
|
|
||||||
Features:
|
Features:
|
||||||
* TIF and TIFF format files in the same folder will now be automatedly added to the gallery
|
* TIF and TIFF format files in the same folder will now be automatically added to the gallery
|
||||||
* Built-in window resizing now also supports Linux desktop. (macOS might also works as well)
|
* Built-in window resizing now also supports Linux desktop. (macOS might also works as well)
|
||||||
|
|
||||||
Bugfixes:
|
Bugfixes:
|
||||||
|
@ -118,7 +118,7 @@ qreal GraphicsView::scaleFactor() const
|
|||||||
|
|
||||||
void GraphicsView::resetTransform()
|
void GraphicsView::resetTransform()
|
||||||
{
|
{
|
||||||
if (!m_avoidResetTransform) {
|
if (!shouldAvoidTransform()) {
|
||||||
QGraphicsView::resetTransform();
|
QGraphicsView::resetTransform();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -196,7 +196,7 @@ void GraphicsView::fitByOrientation(Qt::Orientation ori, bool scaleDownOnly)
|
|||||||
|
|
||||||
void GraphicsView::displayScene()
|
void GraphicsView::displayScene()
|
||||||
{
|
{
|
||||||
if (m_avoidResetTransform) {
|
if (shouldAvoidTransform()) {
|
||||||
emit navigatorViewRequired(!isThingSmallerThanWindowWith(transform()), transform());
|
emit navigatorViewRequired(!isThingSmallerThanWindowWith(transform()), transform());
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@ -206,6 +206,7 @@ void GraphicsView::displayScene()
|
|||||||
}
|
}
|
||||||
|
|
||||||
m_enableFitInView = true;
|
m_enableFitInView = true;
|
||||||
|
m_firstUserMediaLoaded = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool GraphicsView::isSceneBiggerThanView() const
|
bool GraphicsView::isSceneBiggerThanView() const
|
||||||
@ -365,3 +366,8 @@ void GraphicsView::applyTransformationModeByScaleFactor()
|
|||||||
scene()->trySetTransformationMode(Qt::FastTransformation, this->scaleFactor());
|
scene()->trySetTransformationMode(Qt::FastTransformation, this->scaleFactor());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool GraphicsView::shouldAvoidTransform() const
|
||||||
|
{
|
||||||
|
return m_firstUserMediaLoaded && m_avoidResetTransform;
|
||||||
|
}
|
||||||
|
@ -64,6 +64,8 @@ private:
|
|||||||
void setCheckerboardEnabled(bool enabled, bool invertColor = false);
|
void setCheckerboardEnabled(bool enabled, bool invertColor = false);
|
||||||
void applyTransformationModeByScaleFactor();
|
void applyTransformationModeByScaleFactor();
|
||||||
|
|
||||||
|
inline bool shouldAvoidTransform() const;
|
||||||
|
|
||||||
// Consider switch to 3 state for "no fit", "always fit" and "fit when view is smaller"?
|
// Consider switch to 3 state for "no fit", "always fit" and "fit when view is smaller"?
|
||||||
// ... or even more? e.g. "fit/snap width" things...
|
// ... or even more? e.g. "fit/snap width" things...
|
||||||
// Currently it's "no fit" when it's false and "fit when view is smaller" when it's true.
|
// Currently it's "no fit" when it's false and "fit when view is smaller" when it's true.
|
||||||
@ -71,6 +73,7 @@ private:
|
|||||||
bool m_avoidResetTransform = false;
|
bool m_avoidResetTransform = false;
|
||||||
bool m_checkerboardEnabled = false;
|
bool m_checkerboardEnabled = false;
|
||||||
bool m_useLightCheckerboard = false;
|
bool m_useLightCheckerboard = false;
|
||||||
|
bool m_firstUserMediaLoaded = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // GRAPHICSVIEW_H
|
#endif // GRAPHICSVIEW_H
|
||||||
|
@ -52,8 +52,13 @@ int main(int argc, char *argv[])
|
|||||||
parser.process(a);
|
parser.process(a);
|
||||||
|
|
||||||
if (parser.isSet(supportedImageFormats)) {
|
if (parser.isSet(supportedImageFormats)) {
|
||||||
|
#if QT_VERSION < QT_VERSION_CHECK(6, 9, 0)
|
||||||
fputs(qPrintable(MainWindow::supportedImageFormats().join(QChar('\n'))), stdout);
|
fputs(qPrintable(MainWindow::supportedImageFormats().join(QChar('\n'))), stdout);
|
||||||
::exit(EXIT_SUCCESS);
|
::exit(EXIT_SUCCESS);
|
||||||
|
#else
|
||||||
|
QCommandLineParser::showMessageAndExit(QCommandLineParser::MessageType::Information,
|
||||||
|
MainWindow::supportedImageFormats().join(QChar('\n')));
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
MainWindow w;
|
MainWindow w;
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<!DOCTYPE TS>
|
<!DOCTYPE TS>
|
||||||
<TS version="2.1">
|
<TS version="2.1" language="en_US">
|
||||||
<context>
|
<context>
|
||||||
<name>AboutDialog</name>
|
<name>AboutDialog</name>
|
||||||
<message>
|
<message>
|
@ -789,7 +789,7 @@
|
|||||||
<message>
|
<message>
|
||||||
<location filename="../settingsdialog.cpp" line="90"/>
|
<location filename="../settingsdialog.cpp" line="90"/>
|
||||||
<source>Windowed</source>
|
<source>Windowed</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Finestrato</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../settingsdialog.cpp" line="94"/>
|
<location filename="../settingsdialog.cpp" line="94"/>
|
||||||
|
@ -236,17 +236,17 @@
|
|||||||
<message>
|
<message>
|
||||||
<location filename="../mainwindow.cpp" line="754"/>
|
<location filename="../mainwindow.cpp" line="754"/>
|
||||||
<source>Image From Clipboard</source>
|
<source>Image From Clipboard</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Afbeelding van klembord</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../mainwindow.cpp" line="772"/>
|
<location filename="../mainwindow.cpp" line="772"/>
|
||||||
<source>Are you sure you want to move "%1" to recycle bin?</source>
|
<source>Are you sure you want to move "%1" to recycle bin?</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Weet u zeker dat u “%1” naar de prullenbak wilt verplaatsen?</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../mainwindow.cpp" line="777"/>
|
<location filename="../mainwindow.cpp" line="777"/>
|
||||||
<source>Move to trash failed, it might caused by file permission issue, file system limitation, or platform limitation.</source>
|
<source>Move to trash failed, it might caused by file permission issue, file system limitation, or platform limitation.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Het bestand kan niet naar de prullenbak worden verplaatst, mogelijk door een rechtenprobleem of systeembeperking.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../actionmanager.cpp" line="114"/>
|
<location filename="../actionmanager.cpp" line="114"/>
|
||||||
@ -295,12 +295,12 @@
|
|||||||
<message>
|
<message>
|
||||||
<location filename="../actionmanager.cpp" line="108"/>
|
<location filename="../actionmanager.cpp" line="108"/>
|
||||||
<source>Pause/Resume Animation</source>
|
<source>Pause/Resume Animation</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Animatie pauzeren/hervatten</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../actionmanager.cpp" line="109"/>
|
<location filename="../actionmanager.cpp" line="109"/>
|
||||||
<source>Animation Go to Next Frame</source>
|
<source>Animation Go to Next Frame</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Ga naar volgend animatieframe</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../actionmanager.cpp" line="111"/>
|
<location filename="../actionmanager.cpp" line="111"/>
|
||||||
@ -310,12 +310,12 @@
|
|||||||
<message>
|
<message>
|
||||||
<location filename="../actionmanager.cpp" line="112"/>
|
<location filename="../actionmanager.cpp" line="112"/>
|
||||||
<source>Fit to view</source>
|
<source>Fit to view</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Inpassen</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../actionmanager.cpp" line="113"/>
|
<location filename="../actionmanager.cpp" line="113"/>
|
||||||
<source>Fit to width</source>
|
<source>Fit to width</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Aanpassen aan breedte</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../actionmanager.cpp" line="116"/>
|
<location filename="../actionmanager.cpp" line="116"/>
|
||||||
@ -350,7 +350,7 @@
|
|||||||
<message>
|
<message>
|
||||||
<location filename="../actionmanager.cpp" line="103"/>
|
<location filename="../actionmanager.cpp" line="103"/>
|
||||||
<source>Rotate left</source>
|
<source>Rotate left</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Naar links draaien</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../actionmanager.cpp" line="105"/>
|
<location filename="../actionmanager.cpp" line="105"/>
|
||||||
@ -366,7 +366,7 @@
|
|||||||
<location filename="../mainwindow.cpp" line="771"/>
|
<location filename="../mainwindow.cpp" line="771"/>
|
||||||
<location filename="../actionmanager.cpp" line="117"/>
|
<location filename="../actionmanager.cpp" line="117"/>
|
||||||
<source>Move to Trash</source>
|
<source>Move to Trash</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Verplaatsen naar prullenbak</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../actionmanager.cpp" line="121"/>
|
<location filename="../actionmanager.cpp" line="121"/>
|
||||||
@ -728,27 +728,27 @@
|
|||||||
<message>
|
<message>
|
||||||
<location filename="../settingsdialog.cpp" line="37"/>
|
<location filename="../settingsdialog.cpp" line="37"/>
|
||||||
<source>Options</source>
|
<source>Options</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Opties</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../settingsdialog.cpp" line="49"/>
|
<location filename="../settingsdialog.cpp" line="49"/>
|
||||||
<source>Shortcuts</source>
|
<source>Shortcuts</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Sneltoetsen</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../settingsdialog.cpp" line="59"/>
|
<location filename="../settingsdialog.cpp" line="59"/>
|
||||||
<source>Editing shortcuts for action "%1":</source>
|
<source>Editing shortcuts for action "%1":</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Bewerken van sneltoetsen voor actie ‘%1’:</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../settingsdialog.cpp" line="68"/>
|
<location filename="../settingsdialog.cpp" line="68"/>
|
||||||
<source>Failed to set shortcuts</source>
|
<source>Failed to set shortcuts</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Instellen mislukt</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../settingsdialog.cpp" line="69"/>
|
<location filename="../settingsdialog.cpp" line="69"/>
|
||||||
<source>Please check if shortcuts are duplicated with existing shortcuts.</source>
|
<source>Please check if shortcuts are duplicated with existing shortcuts.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Controleer of de gekozen sneltoetsen niet al in gebruik zijn.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../settingsdialog.cpp" line="76"/>
|
<location filename="../settingsdialog.cpp" line="76"/>
|
||||||
@ -768,7 +768,7 @@
|
|||||||
<message>
|
<message>
|
||||||
<location filename="../settingsdialog.cpp" line="79"/>
|
<location filename="../settingsdialog.cpp" line="79"/>
|
||||||
<source>Toggle fullscreen</source>
|
<source>Toggle fullscreen</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Schermvullende weergave aan/uit</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../settingsdialog.cpp" line="83"/>
|
<location filename="../settingsdialog.cpp" line="83"/>
|
||||||
@ -793,7 +793,7 @@
|
|||||||
<message>
|
<message>
|
||||||
<location filename="../settingsdialog.cpp" line="90"/>
|
<location filename="../settingsdialog.cpp" line="90"/>
|
||||||
<source>Windowed</source>
|
<source>Windowed</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Venster</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../settingsdialog.cpp" line="94"/>
|
<location filename="../settingsdialog.cpp" line="94"/>
|
||||||
@ -827,7 +827,7 @@
|
|||||||
<message>
|
<message>
|
||||||
<location filename="../settingsdialog.cpp" line="121"/>
|
<location filename="../settingsdialog.cpp" line="121"/>
|
||||||
<source>Use light-color checkerboard</source>
|
<source>Use light-color checkerboard</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Licht schaakbordpatroon gebruiken</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../settingsdialog.cpp" line="122"/>
|
<location filename="../settingsdialog.cpp" line="122"/>
|
||||||
@ -855,7 +855,7 @@
|
|||||||
<message>
|
<message>
|
||||||
<location filename="../shortcutedit.cpp" line="111"/>
|
<location filename="../shortcutedit.cpp" line="111"/>
|
||||||
<source>No shortcuts</source>
|
<source>No shortcuts</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Geen sneltoetsen</translation>
|
||||||
</message>
|
</message>
|
||||||
</context>
|
</context>
|
||||||
<context>
|
<context>
|
||||||
@ -863,7 +863,7 @@
|
|||||||
<message>
|
<message>
|
||||||
<location filename="../shortcutedit.cpp" line="77"/>
|
<location filename="../shortcutedit.cpp" line="77"/>
|
||||||
<source>Shortcut #%1</source>
|
<source>Shortcut #%1</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Sneltoets #%1</translation>
|
||||||
</message>
|
</message>
|
||||||
</context>
|
</context>
|
||||||
<context>
|
<context>
|
||||||
@ -876,7 +876,7 @@
|
|||||||
<message>
|
<message>
|
||||||
<location filename="../main.cpp" line="46"/>
|
<location filename="../main.cpp" line="46"/>
|
||||||
<source>List supported image format suffixes, and quit program.</source>
|
<source>List supported image format suffixes, and quit program.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Toon een lijst met ondersteunde afbeeldingsformaten en sluit af.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../main.cpp" line="50"/>
|
<location filename="../main.cpp" line="50"/>
|
||||||
|
22
dist/MacOSXBundleInfo.plist.in
vendored
22
dist/MacOSXBundleInfo.plist.in
vendored
@ -30,6 +30,28 @@
|
|||||||
<true/>
|
<true/>
|
||||||
<key>NSHumanReadableCopyright</key>
|
<key>NSHumanReadableCopyright</key>
|
||||||
<string>${MACOSX_BUNDLE_COPYRIGHT}</string>
|
<string>${MACOSX_BUNDLE_COPYRIGHT}</string>
|
||||||
|
<!-- FIXME: this list can't be automatically generated by Qt's CMake API, don't know why. -->
|
||||||
|
<key>CFBundleLocalizations</key>
|
||||||
|
<array>
|
||||||
|
<string>en</string>
|
||||||
|
<string>ca</string>
|
||||||
|
<string>de</string>
|
||||||
|
<string>es</string>
|
||||||
|
<string>fr</string>
|
||||||
|
<string>id</string>
|
||||||
|
<string>it</string>
|
||||||
|
<string>ja</string>
|
||||||
|
<string>ko</string>
|
||||||
|
<string>nb_NO</string>
|
||||||
|
<string>nl</string>
|
||||||
|
<string>pa_PK</string>
|
||||||
|
<string>ru</string>
|
||||||
|
<string>si</string>
|
||||||
|
<string>ta</string>
|
||||||
|
<string>tr</string>
|
||||||
|
<string>uk</string>
|
||||||
|
<string>zh_CN</string>
|
||||||
|
</array>
|
||||||
<key>CFBundleDocumentTypes</key>
|
<key>CFBundleDocumentTypes</key>
|
||||||
<array>
|
<array>
|
||||||
<!-- JPEG -->
|
<!-- JPEG -->
|
||||||
|
@ -80,6 +80,28 @@
|
|||||||
</screenshot>
|
</screenshot>
|
||||||
</screenshots>
|
</screenshots>
|
||||||
<releases>
|
<releases>
|
||||||
|
<release type="stable" version="1.0.0" date="2025-05-03T00:00:00Z">
|
||||||
|
<description>
|
||||||
|
<p>This release adds the following features:</p>
|
||||||
|
<ul>
|
||||||
|
<li>Support enforce windowed mode on start-up</li>
|
||||||
|
<li>Reload image automatically when current image gets updated</li>
|
||||||
|
</ul>
|
||||||
|
<p>This release fixes the following bugs:</p>
|
||||||
|
<ul>
|
||||||
|
<li>Refer to the right exiv2 CMake module so it can be found on Linux</li>
|
||||||
|
<li>Display correct text language on macOS</li>
|
||||||
|
</ul>
|
||||||
|
<p>This release includes the following changes:</p>
|
||||||
|
<ul>
|
||||||
|
<li>Use native text for shortcut editor's label</li>
|
||||||
|
<li>Display native commandline message when possible</li>
|
||||||
|
<li>Merge Qt translations into app applications as well</li>
|
||||||
|
</ul>
|
||||||
|
<p>With contributions from:</p>
|
||||||
|
<p>Heimen Stoffels, albanobattistella, mmahhi</p>
|
||||||
|
</description>
|
||||||
|
</release>
|
||||||
<release type="stable" version="0.9.2" date="2025-03-05T00:00:00Z">
|
<release type="stable" version="0.9.2" date="2025-03-05T00:00:00Z">
|
||||||
<description>
|
<description>
|
||||||
<p>This release fixes the following bug:</p>
|
<p>This release fixes the following bug:</p>
|
||||||
@ -210,7 +232,7 @@
|
|||||||
<description>
|
<description>
|
||||||
<p>This release adds the following features:</p>
|
<p>This release adds the following features:</p>
|
||||||
<ul>
|
<ul>
|
||||||
<li>TIF and TIFF format files in the same folder will now be automatedly added to the gallery</li>
|
<li>TIF and TIFF format files in the same folder will now be automatically added to the gallery</li>
|
||||||
<li>Built-in window resizing now also supports Linux desktop. (macOS might also works as well)</li>
|
<li>Built-in window resizing now also supports Linux desktop. (macOS might also works as well)</li>
|
||||||
</ul>
|
</ul>
|
||||||
<p>This release fixes the following bugs:</p>
|
<p>This release fixes the following bugs:</p>
|
||||||
|
@ -9,6 +9,10 @@ TARGET = ppic
|
|||||||
TEMPLATE = app
|
TEMPLATE = app
|
||||||
DEFINES += PPIC_VERSION_STRING=\\\"x.y.z\\\"
|
DEFINES += PPIC_VERSION_STRING=\\\"x.y.z\\\"
|
||||||
|
|
||||||
|
win32 {
|
||||||
|
DEFINES += FLAG_PORTABLE_MODE_SUPPORT=1
|
||||||
|
}
|
||||||
|
|
||||||
# The following define makes your compiler emit warnings if you use
|
# The following define makes your compiler emit warnings if you use
|
||||||
# any feature of Qt which has been marked as deprecated (the exact warnings
|
# any feature of Qt which has been marked as deprecated (the exact warnings
|
||||||
# depend on your compiler). Please consult the documentation of the
|
# depend on your compiler). Please consult the documentation of the
|
||||||
@ -64,7 +68,7 @@ HEADERS += \
|
|||||||
app/fileopeneventhandler.h
|
app/fileopeneventhandler.h
|
||||||
|
|
||||||
TRANSLATIONS = \
|
TRANSLATIONS = \
|
||||||
app/translations/PineapplePictures.ts \
|
app/translations/PineapplePictures_en.ts \
|
||||||
app/translations/PineapplePictures_zh_CN.ts \
|
app/translations/PineapplePictures_zh_CN.ts \
|
||||||
app/translations/PineapplePictures_de.ts \
|
app/translations/PineapplePictures_de.ts \
|
||||||
app/translations/PineapplePictures_es.ts \
|
app/translations/PineapplePictures_es.ts \
|
||||||
|
Reference in New Issue
Block a user