diff --git a/CMakeLists.txt b/CMakeLists.txt --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -198,7 +198,7 @@ ######################### ######################## -find_package(ECM 1.7.0 REQUIRED NOMODULE) +find_package(ECM 5.19 REQUIRED NOMODULE) set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR}) include(ECMOptionalAddSubdirectory) include(ECMAddAppIcon) @@ -587,7 +587,7 @@ ## ## Test for qt-poppler ## -find_package(Poppler) +find_package(Poppler COMPONENTS Qt5) set_package_properties(Poppler PROPERTIES DESCRIPTION "A PDF rendering library" URL "http://poppler.freedesktop.org" diff --git a/README.md b/README.md --- a/README.md +++ b/README.md @@ -7,7 +7,7 @@ This repository contains the current, Qt5-based, development version of Krita 3. Krita 3.0 has been released and development on Krita 2.9 has stopped. Krita 2.9 was part of Calligra: https://phabricator.kde.org/source/krita/ -![Picture] (https://krita.org/wp-content/uploads/2016/04/krita-30-screenshot.jpg) +![Picture](https://krita.org/wp-content/uploads/2016/04/krita-30-screenshot.jpg) ### User Manual diff --git a/cmake/modules/FindPoppler.cmake b/cmake/modules/FindPoppler.cmake deleted file mode 100644 --- a/cmake/modules/FindPoppler.cmake +++ /dev/null @@ -1,106 +0,0 @@ -# - Try to find the poppler PDF library -# Once done this will define -# -# POPPLER_FOUND - system has poppler -# POPPLER_INCLUDE_DIR - the poppler include directory -# POPPLER_LIBRARY - Link this to use poppler -# - -# Copyright (c) 2006-2010, Pino Toscano, -# -# Redistribution and use is allowed according to the terms of the BSD license. -# For details see the accompanying COPYING-CMAKE-SCRIPTS file. - -if(POPPLER_INCLUDE_DIR AND POPPLER_LIBRARY) - - # in cache already - set(POPPLER_FOUND TRUE) - -else() - -set(_poppler_version_bad FALSE) - -if(NOT WIN32) - # use pkg-config to get the directories and then use these values - # in the FIND_PATH() and FIND_LIBRARY() calls - include(FindPkgConfig) - pkg_check_modules(_pc_poppler poppler-qt5) - if(_pc_poppler_FOUND) - if(NOT "${_pc_poppler_VERSION}" VERSION_GREATER 0.5.3) - set(_poppler_version_bad TRUE) - endif() - endif() -endif() - -if(NOT _poppler_version_bad) - set(POPPLER_FOUND FALSE) - - find_library(POPPLER_LIBRARY poppler-qt5 - HINTS ${_pc_poppler_LIBRARY_DIRS} - ) - find_library(POPPLER_CORE_LIBRARY poppler - HINTS ${_pc_poppler_LIBRARY_DIRS} - ) - - find_path(POPPLER_INCLUDE_DIR poppler-qt5.h - HINTS ${_pc_poppler_INCLUDE_DIRS} - PATH_SUFFIXES poppler/qt5 - ) - find_path(POPPLER_INCLUDE_DIR_core qt5/poppler-qt5.h - HINTS ${_pc_poppler_INCLUDE_DIRS} - PATH_SUFFIXES poppler - ) - - if(POPPLER_LIBRARY AND POPPLER_INCLUDE_DIR AND POPPLER_INCLUDE_DIR_core) - list(APPEND POPPLER_INCLUDE_DIR "${POPPLER_INCLUDE_DIR_core}") - set(POPPLER_FOUND TRUE) - endif() -endif() - -if (POPPLER_FOUND) - include(CheckCXXSourceCompiles) - - set(CMAKE_REQUIRED_INCLUDES ${POPPLER_INCLUDE_DIR} ${QT_INCLUDE_DIR}) - set(CMAKE_REQUIRED_LIBRARIES ${POPPLER_LIBRARY} ${POPPLER_CORE_LIBRARY} ${QT_QTCORE_LIBRARY} ${QT_QTGUI_LIBRARY} ${QT_QTXML_LIBRARY}) - -check_cxx_source_compiles(" -#include -int main() -{ - Poppler::Document::RenderHint hint = Poppler::Document::ThinLineSolid; - return 0; -} -" HAVE_POPPLER_0_24) - -check_cxx_source_compiles(" -#include -int main() -{ - Poppler::Page *p = 0; - p->annotations( QSet() << Poppler::Annotation::ASound ); - return 0; -} -" HAVE_POPPLER_0_28) - - set(CMAKE_REQUIRED_INCLUDES) - set(CMAKE_REQUIRED_LIBRARIES) - if (HAVE_POPPLER_0_28) - set(popplerVersionMessage "0.28") - elseif (HAVE_POPPLER_0_24) - set(popplerVersionMessage "0.24") - endif () - if (NOT Poppler_FIND_QUIETLY) - message(STATUS "Found Poppler-Qt5: ${POPPLER_LIBRARY}, (>= ${popplerVersionMessage})") - endif () -else () - if (Poppler_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find Poppler-Qt5") - endif () - message(STATUS "Could not find OPTIONAL package Poppler-Qt5") -endif () - -# ensure that they are cached -set(POPPLER_INCLUDE_DIR ${POPPLER_INCLUDE_DIR} CACHE INTERNAL "The Poppler-Qt5 include path") -set(POPPLER_LIBRARY ${POPPLER_LIBRARY} CACHE INTERNAL "The Poppler-Qt5 library") - -endif() diff --git a/krita/data/templates/animation/.directory b/krita/data/templates/animation/.directory --- a/krita/data/templates/animation/.directory +++ b/krita/data/templates/animation/.directory @@ -12,6 +12,7 @@ Name[pt]=Modelos de Animações Name[pt_BR]=Modelos de animação Name[sv]=Animeringsmallar +Name[tr]=Canlandırma Şablonları Name[uk]=Шаблони анімацій Name[x-test]=xxAnimation Templatesxx X-KDE-DefaultTab=true diff --git a/krita/data/templates/animation/Anim-Jp-EN.desktop b/krita/data/templates/animation/Anim-Jp-EN.desktop --- a/krita/data/templates/animation/Anim-Jp-EN.desktop +++ b/krita/data/templates/animation/Anim-Jp-EN.desktop @@ -18,6 +18,7 @@ Name[ru]=Анимация-японская-англ Name[sk]=Animation-Japanese-En Name[sv]=Animering-japanska-en +Name[tr]=Canlandırma-Japonca-İngilizce Name[uk]=Японська анімація (англійською) Name[x-test]=xxAnimation-Japanese-Enxx Name[zh_CN]=日本动画 (英式) diff --git a/krita/data/templates/animation/Anim-Jp-JP.desktop b/krita/data/templates/animation/Anim-Jp-JP.desktop --- a/krita/data/templates/animation/Anim-Jp-JP.desktop +++ b/krita/data/templates/animation/Anim-Jp-JP.desktop @@ -18,6 +18,7 @@ Name[ru]=Анимация-японская-японск Name[sk]=Animation-Japanese-JP Name[sv]=Animering-japanska-jp +Name[tr]=Canlandırma-Japonca-JP Name[uk]=Японська анімація (японською) Name[x-test]=xxAnimation-Japanese-JPxx Name[zh_CN]=日本动画 (日式) diff --git a/krita/data/templates/comics/BD-EuroTemplate.desktop b/krita/data/templates/comics/BD-EuroTemplate.desktop --- a/krita/data/templates/comics/BD-EuroTemplate.desktop +++ b/krita/data/templates/comics/BD-EuroTemplate.desktop @@ -65,6 +65,7 @@ Comment[sk]=šablóna pre európske BD komixy Comment[sl]=predloga za stripe v evropskem slogu BD Comment[sv]=seriemall med europeisk BD-stil +Comment[tr]=Avrupa BD tarzı çizgi romanlar için şablon Comment[uk]=шаблон для європейських коміксів у стилі BD Comment[wa]=Modele po les bindes d' imådje al môde uropeyinne Comment[x-test]=xxtemplate for European BD-style comicsxx diff --git a/krita/data/templates/comics/Comics-USTemplate.desktop b/krita/data/templates/comics/Comics-USTemplate.desktop --- a/krita/data/templates/comics/Comics-USTemplate.desktop +++ b/krita/data/templates/comics/Comics-USTemplate.desktop @@ -33,6 +33,7 @@ Name[sk]=šablóna pre americké komixy Name[sl]=Predloga za stripe v ameriškem slogu Name[sv]=Seriemall med amerikansk stil +Name[tr]=US tarzı çizgi roman şablonu Name[uk]=Шаблон коміксів у американському стилі Name[wa]=Modele comics a l' amerikinnes Name[x-test]=xxUS-style comics templatexx @@ -68,6 +69,7 @@ Comment[sk]=šablóna pre americké komixy Comment[sl]=predloga za stripe v ameriškem slogu Comment[sv]=seriemall med amerikansk stil +Comment[tr]=US tarzı çizgi romanlar için şablon Comment[uk]=шаблон для коміксів у американському стилі Comment[wa]=Modele di bindes d' imådje al môde des comics amerikins Comment[x-test]=xxtemplate for US-style comicsxx diff --git a/krita/data/templates/comics/a4_waffle_grid.desktop b/krita/data/templates/comics/a4_waffle_grid.desktop --- a/krita/data/templates/comics/a4_waffle_grid.desktop +++ b/krita/data/templates/comics/a4_waffle_grid.desktop @@ -27,6 +27,7 @@ Name[ru]=Страница с ячейками Name[sk]=vaflovo-železná mriežka Name[sv]=våffelmönster +Name[tr]=waffle-çelik ızgara Name[uk]=сітка з комірками Name[wa]=grile di fier a wåfes Name[x-test]=xxwaffle-iron gridxx @@ -57,6 +58,7 @@ Comment[ru]=300 dpi, страница комикса в формате A4 с ячейками и слоями контуров и цветов Comment[sk]=300 dpi, A4 vaflovo železná mriežka komiksovej strany s atramentom a farebnými vrstvami Comment[sv]=300 punkter/tum, A4 våffelmönstrad seriesida med bläck- och färglager +Comment[tr]=300 dpi, A4 waffle-çelik ızgara mürekkep ve renk katmanlı çizgi roman sayfası Comment[uk]=300 т/д, сторінка коміксу у форматі A4 з комірками та шарами контурів та кольорів Comment[wa]=Pådje A4 di binde d' imådjes avou on discôpaedje come ene grile di fier a wåfes avou des coûtches d' intche eyet d' coleurs. Comment[x-test]=xx300 dpi, A4 waffle-iron grid comic page with ink and color layersxx diff --git a/krita/pics/misc-dark/misc-dark-icons.qrc b/krita/pics/misc-dark/misc-dark-icons.qrc --- a/krita/pics/misc-dark/misc-dark-icons.qrc +++ b/krita/pics/misc-dark/misc-dark-icons.qrc @@ -37,7 +37,6 @@ dark_onionOff.svg dark_onionOn.svg dark_onion_skin_options.svg - dark_onion_skin_options.svg dark_path-break-point.svg dark_path-break-segment.svg dark_pathpoint-corner.svg diff --git a/libs/image/kis_paint_layer.h b/libs/image/kis_paint_layer.h --- a/libs/image/kis_paint_layer.h +++ b/libs/image/kis_paint_layer.h @@ -28,7 +28,7 @@ class KoColorSpace; /** - * This layer is of a type that can be d on. A paint layer can + * This layer is of a type that can be drawn on. A paint layer can * have any number of effect masks, a transparency mask, a local * selection and a protection mask. * diff --git a/libs/ui/forms/wdgpaintopsettings.ui b/libs/ui/forms/wdgpaintopsettings.ui --- a/libs/ui/forms/wdgpaintopsettings.ui +++ b/libs/ui/forms/wdgpaintopsettings.ui @@ -536,7 +536,6 @@ presetsContainer brushEditorSettingsControls scratchpadControls - diff --git a/packaging/linux/snap/setup/gui/krita.desktop b/packaging/linux/snap/setup/gui/krita.desktop --- a/packaging/linux/snap/setup/gui/krita.desktop +++ b/packaging/linux/snap/setup/gui/krita.desktop @@ -113,6 +113,7 @@ Comment[ru]=Программа редактирования пиксельной анимации для the Calligra Suite Comment[sk]=Program na manipuláciu s pixelmi pre Calligra Suite Comment[sv]=Bildpunktsbaserat bildbehandlingsprogram för Calligra-sviten +Comment[tr]=Calligra Suite için Pixel tabanlı görüntü düzenleme programı Comment[uk]=Програма для роботи із растровими зображеннями для комплексу програм Calligra Comment[x-test]=xxPixel-based image manipulation program for the Calligra Suitexx Comment[zh_CN]=Calligra 套件的位图图像处理程序 diff --git a/plugins/dockers/griddocker/grid_config_widget.h b/plugins/dockers/griddocker/grid_config_widget.h --- a/plugins/dockers/griddocker/grid_config_widget.h +++ b/plugins/dockers/griddocker/grid_config_widget.h @@ -44,14 +44,20 @@ void setGridDivision(int w, int h); + bool showRulers() const; + +public Q_SLOTS: + void setShowRulers(bool value); + private Q_SLOTS: void slotGridGuiChanged(); void slotGuidesGuiChanged(); void slotGridTypeChanged(); Q_SIGNALS: void gridValueChanged(); void guidesValueChanged(); + void showRulersChanged(bool); private: KisGridConfig fetchGuiGridConfig() const; diff --git a/plugins/dockers/griddocker/grid_config_widget.cpp b/plugins/dockers/griddocker/grid_config_widget.cpp --- a/plugins/dockers/griddocker/grid_config_widget.cpp +++ b/plugins/dockers/griddocker/grid_config_widget.cpp @@ -113,6 +113,8 @@ connect(spacingLocker, SIGNAL(sliderValueChanged()), SLOT(slotGridGuiChanged())); connect(spacingLocker, SIGNAL(aspectButtonChanged()), SLOT(slotGridGuiChanged())); + + connect(ui->chkShowRulers,SIGNAL(toggled(bool)),SIGNAL(showRulersChanged(bool))); } GridConfigWidget::~GridConfigWidget() @@ -322,7 +324,13 @@ slotGridGuiChanged(); } +bool GridConfigWidget::showRulers() const +{ + return ui->chkShowRulers->isChecked(); +} - - +void GridConfigWidget::setShowRulers(bool value) +{ + ui->chkShowRulers->setChecked(value); +} diff --git a/plugins/dockers/griddocker/grid_config_widget.ui b/plugins/dockers/griddocker/grid_config_widget.ui --- a/plugins/dockers/griddocker/grid_config_widget.ui +++ b/plugins/dockers/griddocker/grid_config_widget.ui @@ -32,7 +32,7 @@ - 0 + 1 @@ -589,6 +589,13 @@ + + + + Show rulers + + + diff --git a/plugins/dockers/griddocker/griddocker_dock.cpp b/plugins/dockers/griddocker/griddocker_dock.cpp --- a/plugins/dockers/griddocker/griddocker_dock.cpp +++ b/plugins/dockers/griddocker/griddocker_dock.cpp @@ -34,6 +34,7 @@ #include "kis_grid_config.h" #include "kis_guides_manager.h" #include "kis_guides_config.h" +#include "kis_action.h" GridDockerDock::GridDockerDock( ) @@ -72,6 +73,12 @@ this, SLOT(slotGridConfigUpdateRequested(const KisGridConfig&))); + KisAction* action = m_canvas->viewManager()->actionManager()->actionByName("view_ruler"); + + m_canvasConnections.addConnection(m_configWidget,SIGNAL(showRulersChanged(bool)),action,SLOT(setChecked(bool))); + m_canvasConnections.addConnection(action,SIGNAL(toggled(bool)),m_configWidget,SLOT(setShowRulers(bool))); + m_configWidget->setShowRulers(action->isChecked()); + m_canvasConnections.addConnection( m_canvas->viewManager()->guidesManager(), SIGNAL(sigRequestUpdateGuidesConfig(const KisGuidesConfig&)), diff --git a/plugins/extensions/CMakeLists.txt b/plugins/extensions/CMakeLists.txt --- a/plugins/extensions/CMakeLists.txt +++ b/plugins/extensions/CMakeLists.txt @@ -25,4 +25,4 @@ endif() endif() -#add_subdirectory( pykrita ) +add_subdirectory( pykrita ) diff --git a/plugins/extensions/pykrita/plugin/plugins/assignprofiledialog/kritapykrita_assignprofiledialog.desktop b/plugins/extensions/pykrita/plugin/plugins/assignprofiledialog/kritapykrita_assignprofiledialog.desktop --- a/plugins/extensions/pykrita/plugin/plugins/assignprofiledialog/kritapykrita_assignprofiledialog.desktop +++ b/plugins/extensions/pykrita/plugin/plugins/assignprofiledialog/kritapykrita_assignprofiledialog.desktop @@ -10,17 +10,21 @@ Name[es]=Asignar perfil a imagen Name[it]=Assegna profilo a immagine Name[nl]=Profiel aan afbeelding toekennen +Name[pl]=Przypisz profil do obrazu Name[pt]=Atribuir um Perfil à Imagem Name[sv]=Tilldela profil till bild +Name[tr]=Görüntüye Profil Ata Name[uk]=Призначити профіль до зображення Name[x-test]=xxAssign Profile to Imagexx Comment=Assign a profile to an image without converting it. Comment[ca]=Assigna un perfil a una imatge sense convertir-la. Comment[ca@valencia]=Assigna un perfil a una imatge sense convertir-la. Comment[es]=Asignar un perfil a una imagen sin convertirla. Comment[it]=Assegna un profilo a un'immagine senza convertirla. Comment[nl]=Een profiel aan een afbeelding toekennen zonder het te converteren. +Comment[pl]=Przypisz profil do obrazu bez jego przekształcania. Comment[pt]=Atribui um perfil à imagem sem a converter. Comment[sv]=Tilldela en profil till en bild utan att konvertera den. +Comment[tr]=Bir görüntüye, görüntüyü değiştirmeden bir profil ata. Comment[uk]=Призначити профіль до зображення без його перетворення. Comment[x-test]=xxAssign a profile to an image without converting it.xx diff --git a/plugins/extensions/pykrita/plugin/plugins/hello/kritapykrita_hello.desktop b/plugins/extensions/pykrita/plugin/plugins/hello/kritapykrita_hello.desktop --- a/plugins/extensions/pykrita/plugin/plugins/hello/kritapykrita_hello.desktop +++ b/plugins/extensions/pykrita/plugin/plugins/hello/kritapykrita_hello.desktop @@ -10,8 +10,10 @@ Name[es]=Hola mundo Name[it]=Ciao mondo Name[nl]=Hallo wereld +Name[pl]=Witaj świecie Name[pt]=Olá Mundo Name[sv]=Hello World +Name[tr]=Merhaba Dünya Name[uk]=Привіт, світе Name[x-test]=xxHello Worldxx Comment=Basic plugin to test PyKrita @@ -21,7 +23,9 @@ Comment[es]=Complemento básico para probar PyKrita Comment[it]=Estensione di base per provare PyKrita Comment[nl]=Basisplug-in om PyKrita te testen +Comment[pl]=Podstawowa wtyczka do wypróbowania PyKrity Comment[pt]='Plugin' básico para testar o PyKrita Comment[sv]=Enkelt insticksprogram för att utprova PyKrita +Comment[tr]=PyKrita'yı test etmek için temel eklenti Comment[uk]=Базовий додаток для тестування PyKrita Comment[x-test]=xxBasic plugin to test PyKritaxx diff --git a/plugins/extensions/pykrita/plugin/plugins/highpass/kritapykrita_highpass.desktop b/plugins/extensions/pykrita/plugin/plugins/highpass/kritapykrita_highpass.desktop --- a/plugins/extensions/pykrita/plugin/plugins/highpass/kritapykrita_highpass.desktop +++ b/plugins/extensions/pykrita/plugin/plugins/highpass/kritapykrita_highpass.desktop @@ -11,8 +11,10 @@ Name[es]=Filtro paso alto Name[it]=Filtro di accentuazione passaggio Name[nl]=Hoogdoorlaatfilter +Name[pl]=Filtr górnoprzepustowy Name[pt]=Filtro Passa-Alto Name[sv]=Högpassfilter +Name[tr]=Yüksek Geçirgen Süzgeç Name[uk]=Високочастотний фільтр Name[x-test]=xxHighpass Filterxx Comment=Highpass Filter, based on http://registry.gimp.org/node/7385 @@ -22,7 +24,9 @@ Comment[es]=Filtro paso alto, basado en http://registry.gimp.org/node/7385 Comment[it]=Filtro di accentuazione passaggio, basato su http://registry.gimp.org/node/7385 Comment[nl]=Hoogdoorlaatfilter, gebaseerd op http://registry.gimp.org/node/7385 +Comment[pl]=Filtr górnoprzepustowy, oparty na http://registry.gimp.org/node/7385 Comment[pt]=Filtro passa-alto, baseado em http://registry.gimp.org/node/7385 Comment[sv]=Högpassfilter, baserat på http://registry.gimp.org/node/7385 +Comment[tr]=http://registry.gimp.org/node/7385 tabanlı Yüksek Geçirgen Süzgeç Comment[uk]=Високочастотний фільтр, засновано на on http://registry.gimp.org/node/7385 Comment[x-test]=xxHighpass Filter, based on http://registry.gimp.org/node/7385xx diff --git a/plugins/extensions/pykrita/plugin/plugins/scripter/kritapykrita_scripter.desktop b/plugins/extensions/pykrita/plugin/plugins/scripter/kritapykrita_scripter.desktop --- a/plugins/extensions/pykrita/plugin/plugins/scripter/kritapykrita_scripter.desktop +++ b/plugins/extensions/pykrita/plugin/plugins/scripter/kritapykrita_scripter.desktop @@ -10,17 +10,21 @@ Name[es]=Guionador Name[it]=Scripter Name[nl]=Scriptschrijver +Name[pl]=Skrypter Name[pt]=Programador Name[sv]=Skriptgenerator +Name[tr]=Betik yazarı Name[uk]=Скриптер Name[x-test]=xxScripterxx Comment=Plugin to execute ad-hoc Python code Comment[ca]=Connector per executar codi Python ad-hoc Comment[ca@valencia]=Connector per executar codi Python ad-hoc Comment[es]=Complemento para ejecutar código Python a medida Comment[it]=Estensione per eseguire ad-hoc codice Python Comment[nl]=Plug-in om ad-hoc Python code uit te voeren +Comment[pl]=Wtyczka do wykonywania kodu Pythona ad-hoc Comment[pt]='Plugin' para executar código em Python arbitrário Comment[sv]=Insticksprogram för att köra godtycklig Python-kod +Comment[tr]=Geçici Python kodu çalıştırmak için eklenti Comment[uk]=Додаток для виконання апріорного коду Python Comment[x-test]=xxPlugin to execute ad-hoc Python codexx diff --git a/plugins/extensions/pykrita/plugin/plugins/selectionsbagdocker/kritapykrita_selectionsbagdocker.desktop b/plugins/extensions/pykrita/plugin/plugins/selectionsbagdocker/kritapykrita_selectionsbagdocker.desktop --- a/plugins/extensions/pykrita/plugin/plugins/selectionsbagdocker/kritapykrita_selectionsbagdocker.desktop +++ b/plugins/extensions/pykrita/plugin/plugins/selectionsbagdocker/kritapykrita_selectionsbagdocker.desktop @@ -9,8 +9,10 @@ Name[es]=Panel de selecciones Name[it]=Area di raccolta selezioni Name[nl]=Docker van zak met selecties +Name[pl]=Dok worka zaznaczeń Name[pt]=Área de Selecções Name[sv]=Dockningspanel med markeringspåse +Name[tr]=Seçim Çantası İşçisi Name[uk]=Бічна панель позначеного Name[x-test]=xxSelections Bag Dockerxx Comment=A docker that allow to store a list of selections @@ -20,7 +22,9 @@ Comment[es]=Un panel que permite guardar una lista de selecciones Comment[it]=Un'area di aggancio che consente di memorizzare un elenco di selezioni Comment[nl]=Een docker die een lijst met selecties kan opslaan +Comment[pl]=Dok, który umożliwia przechowywanie listy zaznaczeń Comment[pt]=Uma área acoplável que permite guardar uma lista de selecções Comment[sv]=En dockningspanel som gör det möjligt att lagra en lista över markeringar +Comment[tr]=Seçimlerin bir listesini saklamayı sağlayan işçi Comment[uk]=Бічна панель, на якій можна зберігати список позначеного Comment[x-test]=xxA docker that allow to store a list of selectionsxx diff --git a/plugins/extensions/pykrita/plugin/plugins/tenbrushes/kritapykrita_tenbrushes.desktop b/plugins/extensions/pykrita/plugin/plugins/tenbrushes/kritapykrita_tenbrushes.desktop --- a/plugins/extensions/pykrita/plugin/plugins/tenbrushes/kritapykrita_tenbrushes.desktop +++ b/plugins/extensions/pykrita/plugin/plugins/tenbrushes/kritapykrita_tenbrushes.desktop @@ -10,17 +10,21 @@ Name[es]=Diez pinceles Name[it]=Dieci pennelli Name[nl]=Tien penselen +Name[pl]=Dziesięć pędzli Name[pt]=Dez Pincéis Name[sv]=Tio penslar +Name[tr]=On Fırça Name[uk]=Десять пензлів Name[x-test]=xxTen Brushesxx Comment=Assign a preset to ctrl-1 to ctrl-0 Comment[ca]=Assigna una predefinició des de Ctrl-1 a Ctrl-0 Comment[ca@valencia]=Assigna una predefinició des de Ctrl-1 a Ctrl-0 Comment[es]=Asignar una preselección a Ctrl-1 hasta Ctrl-0 Comment[it]=Assegna una preimpostazione per ctrl-1 a ctrl-0 Comment[nl]=Een voorinstelling toekennen aan Ctrl-1 tot Ctrl-0 +Comment[pl]=Przypisz nastawę do ctrl-1 lub ctrl-0 Comment[pt]=Atribuir uma predefinição de Ctrl-1 a Ctrl-0 Comment[sv]=Tilldela en förinställning för Ctrl+1 till Ctrl+0 +Comment[tr]= ctrl-1 ve ctrl-0 için ayar atama Comment[uk]=Прив’язування наборів налаштувань до скорочень від ctrl-1 до ctrl-0 Comment[x-test]=xxAssign a preset to ctrl-1 to ctrl-0xx diff --git a/plugins/extensions/pykrita/sip/CMakeLists.txt b/plugins/extensions/pykrita/sip/CMakeLists.txt --- a/plugins/extensions/pykrita/sip/CMakeLists.txt +++ b/plugins/extensions/pykrita/sip/CMakeLists.txt @@ -2,7 +2,18 @@ include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../libkis) -set(SIP_INCLUDES ${PYQT_SIP_DIR_OVERRIDE} ./krita) +message( ${SIP_VERSION} " - The version of SIP found expressed as a 6 digit hex number suitable for comparison as a string.") +message( ${SIP_VERSION_STR} " - The version of SIP found as a human readable string.") +message( ${SIP_EXECUTABLE} " - Path and filename of the SIP command line executable.") +message( ${SIP_INCLUDE_DIR} " - Directory holding the SIP C++ header file.") +message( ${SIP_DEFAULT_SIP_DIR} " - default SIP dir" ) + +set(SIP_INCLUDES + ${SIP_DEFAULT_SIP_DIR} + ${SIP_DEFAULT_SIP_DIR}/PyQt5 + ${PYQT_SIP_DIR_OVERRIDE} + ./krita) + set(SIP_CONCAT_PARTS 1) set(SIP_TAGS ALL WS_X11 ${PYQT5_VERSION_TAG}) set(SIP_EXTRA_OPTIONS -g -x PyKDE_QVector) diff --git a/plugins/impex/CMakeLists.txt b/plugins/impex/CMakeLists.txt --- a/plugins/impex/CMakeLists.txt +++ b/plugins/impex/CMakeLists.txt @@ -23,7 +23,7 @@ add_subdirectory(exr) endif() -if(POPPLER_FOUND) +if(Poppler_Qt5_FOUND) add_subdirectory(pdf) endif() diff --git a/plugins/impex/pdf/CMakeLists.txt b/plugins/impex/pdf/CMakeLists.txt --- a/plugins/impex/pdf/CMakeLists.txt +++ b/plugins/impex/pdf/CMakeLists.txt @@ -1,12 +1,10 @@ -include_directories( ${POPPLER_INCLUDE_DIR} ) - set(kritapdfimport_SOURCES kis_pdf_import.cpp kis_pdf_import_widget.cpp ) ki18n_wrap_ui(kritapdfimport_SOURCES pdfimportwidgetbase.ui ) add_library(kritapdfimport MODULE ${kritapdfimport_SOURCES}) -target_link_libraries(kritapdfimport kritaui ${POPPLER_LIBRARY} ) +target_link_libraries(kritapdfimport kritaui Poppler::Qt5) install(TARGETS kritapdfimport DESTINATION ${KRITA_PLUGIN_INSTALL_DIR}) install(PROGRAMS krita_pdf.desktop DESTINATION ${XDG_APPS_INSTALL_DIR}) diff --git a/plugins/impex/xcf/3rdparty/xcftools/pixels.c b/plugins/impex/xcf/3rdparty/xcftools/pixels.c --- a/plugins/impex/xcf/3rdparty/xcftools/pixels.c +++ b/plugins/impex/xcf/3rdparty/xcftools/pixels.c @@ -2,7 +2,7 @@ * * This file was written by Henning Makholm * It is hereby in the public domain. - * + * * In jurisdictions that do not recognise grants of copyright to the * public domain: I, the author and (presumably, in those jurisdictions) * copyright holder, hereby permit anyone to distribute and use this code, @@ -99,8 +99,9 @@ if( (ptr = tileDirectoryOneLevel(dim,ptr)) == 0 ) return ; xcfCheckspace(ptr,dim->ntiles*4+4,"Tile directory at %" PRIX32,ptr); - if( xcfL(ptr + dim->ntiles*4) != 0 ) - FatalBadXCF("Wrong sized tile directory at %" PRIX32,ptr); +/* if( xcfL(ptr + dim->ntiles*4) != 0 ) + FatalBadXCF("Wrong sized tile directory at %" PRIX32,ptr);*/ + #define REUSE_RAW_DATA tiles->tileptrs = (uint32_t*)(xcf_file + ptr) #if defined(WORDS_BIGENDIAN) && defined(CAN_DO_UNALIGNED_WORDS) REUSE_RAW_DATA; @@ -216,7 +217,7 @@ tile->summary = summary ; return summary ; } - + void fillTile(struct Tile *tile,rgba data) { @@ -268,7 +269,7 @@ ptr,params->bpp,npixels,base_pixel); #endif - + /* This algorithm depends on the indexed byte always being the first one */ if( params->shift[0] < -1 ) base_pixel = 0 ; @@ -354,11 +355,11 @@ fillTile(tile,0); return tile ; } - + #ifdef xDEBUG fprintf(stderr,"getMaskOrLayer: (%d-%d),(%d-%d)\n",left,right,top,bottom); #endif - + if( isSubrect(want,dim->c) && (want.l - dim->c.l) % TILE_WIDTH == 0 && (want.t - dim->c.t) % TILE_HEIGHT == 0 ) { @@ -380,7 +381,7 @@ int x, tx, c0, c1 ; unsigned lstart, lnum ; unsigned cstart, cnum ; - + if( !isSubrect(want,dim->c) ) { if( want.l < dim->c.l ) pixvert += (dim->c.l - want.l), want.l = dim->c.l ; @@ -403,7 +404,7 @@ l1 = TILEYn(*dim,ty+1) ; lstart = y - l0 ; lnum = (l1 > want.b ? want.b : l1) - y ; - + pixhoriz = pixvert ; for( x=want.l, tx=TILE_NUM(want.l-dim->c.l), c0=TILEXn(*dim,tx); xdim,&layer->pixels,*where); if( (data->summary & TILESUMMARY_ALLNULL) != 0 ) return data ; @@ -487,4 +488,4 @@ } return data ; } - + diff --git a/plugins/tools/selectiontools/kis_tool_select_contiguous.cc b/plugins/tools/selectiontools/kis_tool_select_contiguous.cc --- a/plugins/tools/selectiontools/kis_tool_select_contiguous.cc +++ b/plugins/tools/selectiontools/kis_tool_select_contiguous.cc @@ -183,8 +183,9 @@ KisSliderSpinBox *input = new KisSliderSpinBox(selectionWidget); Q_CHECK_PTR(input); input->setObjectName("fuzziness"); - input->setRange(0, 200); - input->setSingleStep(10); + input->setRange(1, 100); + input->setSingleStep(1); + input->setExponentRatio(2); hbox->addWidget(input); hbox = new QHBoxLayout();