summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKrzysztof Kosi??ski <tweenk.pl@gmail.com>2015-05-22 07:02:44 +0000
committerKrzysztof KosiƄski <tweenk.pl@gmail.com>2015-05-22 07:02:44 +0000
commit35d94a8e1c01cd60e4fcf4c15f46fee38c765fca (patch)
treed8366acd729a6a9d4bdc1001f050a43f30d8b7ad
parentUndo changes to CMakeLists.txt in 2geom directory after syncs (diff)
parentminor tweaks to libUEMF and related code (diff)
downloadinkscape-35d94a8e1c01cd60e4fcf4c15f46fee38c765fca.tar.gz
inkscape-35d94a8e1c01cd60e4fcf4c15f46fee38c765fca.zip
Merge from trunk
(bzr r14059.2.15)
-rw-r--r--CMakeLists.txt1
-rw-r--r--CMakeScripts/DefineDependsandFlags.cmake29
-rw-r--r--Doxyfile477
-rw-r--r--config.h.cmake3
-rw-r--r--packaging/macosx/Resources/etc/gtk-2.0/gtkrc3
-rw-r--r--packaging/win32/languages/Ukrainian.nsh8
-rw-r--r--po/POTFILES.in13
-rw-r--r--po/inkscape.pot5856
-rw-r--r--po/lv.po4459
-rw-r--r--po/uk.po5095
-rw-r--r--share/extensions/image_attributes.inx82
-rwxr-xr-xshare/extensions/image_attributes.py169
-rw-r--r--share/extensions/layout_nup.inx1
-rwxr-xr-xshare/extensions/layout_nup.py216
-rwxr-xr-xshare/extensions/layout_nup_pageframe.py230
-rw-r--r--src/2geom/sbasis-to-bezier.cpp18
-rw-r--r--src/attributes-test.h34
-rw-r--r--src/desktop-style.cpp95
-rw-r--r--src/desktop-style.h2
-rw-r--r--src/display/drawing-text.cpp3
-rw-r--r--src/extension/CMakeLists.txt22
-rw-r--r--src/extension/internal/cairo-render-context.cpp17
-rw-r--r--src/extension/internal/emf-print.cpp8
-rw-r--r--src/extension/internal/filter/color.h2
-rw-r--r--src/extension/internal/text_reassemble.c12
-rw-r--r--src/extension/internal/wmf-inout.cpp6
-rw-r--r--src/extension/internal/wmf-print.cpp4
-rw-r--r--src/extension/param/color.cpp71
-rw-r--r--src/extension/param/color.h9
-rw-r--r--src/extension/param/parameter.cpp7
-rw-r--r--src/knot-holder-entity.cpp18
-rw-r--r--src/libnrtype/font-lister.cpp2
-rw-r--r--src/libuemf/uemf.h11
-rw-r--r--src/libuemf/uemf_print.c48
-rw-r--r--src/libuemf/uemf_print.h7
-rw-r--r--src/libuemf/upmf.c12
-rw-r--r--src/libuemf/upmf_print.c21
-rw-r--r--src/libuemf/upmf_print.h6
-rw-r--r--src/libuemf/uwmf.c42
-rw-r--r--src/libuemf/uwmf.h10
-rw-r--r--src/libuemf/uwmf_endian.c20
-rw-r--r--src/libuemf/uwmf_endian.h8
-rw-r--r--src/libuemf/uwmf_print.c25
-rw-r--r--src/live_effects/effect.cpp3
-rw-r--r--src/live_effects/effect.h1
-rw-r--r--src/live_effects/lpe-fillet-chamfer.cpp7
-rw-r--r--src/live_effects/lpe-fillet-chamfer.h1
-rw-r--r--src/live_effects/lpe-roughen.cpp22
-rw-r--r--src/live_effects/lpe-roughen.h2
-rw-r--r--src/live_effects/parameter/filletchamferpointarray.cpp12
-rw-r--r--src/live_effects/parameter/filletchamferpointarray.h4
-rw-r--r--src/rdf.cpp14
-rw-r--r--src/selection-chemistry.cpp164
-rw-r--r--src/selection-chemistry.h2
-rw-r--r--src/selection.cpp1
-rw-r--r--src/sp-clippath.cpp9
-rw-r--r--src/sp-clippath.h2
-rw-r--r--src/sp-item.cpp48
-rw-r--r--src/sp-mask.cpp9
-rw-r--r--src/sp-mask.h2
-rw-r--r--src/sp-offset.cpp2
-rw-r--r--src/sp-pattern.cpp649
-rw-r--r--src/sp-pattern.h157
-rw-r--r--src/sp-use.cpp62
-rw-r--r--src/style-enums.h81
-rw-r--r--src/style-internal.cpp252
-rw-r--r--src/style-internal.h71
-rw-r--r--src/style-test.h34
-rw-r--r--src/style.cpp4
-rw-r--r--src/style.h4
-rw-r--r--src/ui/CMakeLists.txt16
-rw-r--r--src/ui/Makefile_insert2
-rw-r--r--src/ui/dialog/layers.cpp12
-rw-r--r--src/ui/dialog/lpe-fillet-chamfer-properties.cpp22
-rw-r--r--src/ui/dialog/lpe-fillet-chamfer-properties.h8
-rw-r--r--src/ui/dialog/object-properties.cpp6
-rw-r--r--src/ui/dialog/objects.cpp33
-rw-r--r--src/ui/dialog/objects.h9
-rw-r--r--src/ui/dialog/tags.cpp2
-rw-r--r--src/ui/dialog/text-edit.cpp29
-rw-r--r--src/ui/dialog/text-edit.h17
-rw-r--r--src/ui/selected-color.cpp163
-rw-r--r--src/ui/selected-color.h96
-rw-r--r--src/ui/widget/Makefile_insert18
-rw-r--r--src/ui/widget/color-entry.cpp114
-rw-r--r--src/ui/widget/color-entry.h54
-rw-r--r--src/ui/widget/color-icc-selector.cpp1079
-rw-r--r--src/ui/widget/color-icc-selector.h78
-rw-r--r--src/ui/widget/color-notebook.cpp379
-rw-r--r--src/ui/widget/color-notebook.h99
-rw-r--r--src/ui/widget/color-picker.cpp70
-rw-r--r--src/ui/widget/color-picker.h8
-rw-r--r--src/ui/widget/color-scales.cpp677
-rw-r--r--src/ui/widget/color-scales.h112
-rw-r--r--src/ui/widget/color-slider.cpp633
-rw-r--r--src/ui/widget/color-slider.h110
-rw-r--r--src/ui/widget/color-wheel-selector.cpp302
-rw-r--r--src/ui/widget/color-wheel-selector.h101
-rw-r--r--src/ui/widget/font-variants.cpp512
-rw-r--r--src/ui/widget/font-variants.h152
-rw-r--r--src/verbs.cpp36
-rw-r--r--src/widgets/CMakeLists.txt10
-rw-r--r--src/widgets/Makefile_insert10
-rw-r--r--src/widgets/fill-style.cpp10
-rw-r--r--src/widgets/gradient-selector.cpp4
-rw-r--r--src/widgets/gradient-vector.cpp82
-rw-r--r--src/widgets/paint-selector.cpp128
-rw-r--r--src/widgets/paint-selector.h19
-rw-r--r--src/widgets/sp-color-icc-selector.cpp1113
-rw-r--r--src/widgets/sp-color-icc-selector.h72
-rw-r--r--src/widgets/sp-color-notebook.cpp826
-rw-r--r--src/widgets/sp-color-notebook.h120
-rw-r--r--src/widgets/sp-color-scales.cpp760
-rw-r--r--src/widgets/sp-color-scales.h102
-rw-r--r--src/widgets/sp-color-selector.cpp7
-rw-r--r--src/widgets/sp-color-selector.h8
-rw-r--r--src/widgets/sp-color-slider.cpp749
-rw-r--r--src/widgets/sp-color-slider.h60
-rw-r--r--src/widgets/sp-color-wheel-selector.cpp348
-rw-r--r--src/widgets/sp-color-wheel-selector.h82
-rw-r--r--src/widgets/swatch-selector.cpp106
-rw-r--r--src/widgets/swatch-selector.h12
122 files changed, 15048 insertions, 13330 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 23dd58708..4b73afc43 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -78,6 +78,7 @@ option(ENABLE_LCMS "Compile with LCMS support" ON)
option(WITH_GNOME_VFS "Compile with support for Gnome VFS" ON)
#option(WITH_INKJAR "Enable support for openoffice files (SVG jars)" ON)
option(WITH_GTEST "Compile with Google Test support" ${GMOCK_PRESENT})
+option(WITH_OPENMP "Compile with OpenMP support" ON)
option(WITH_PROFILING "Turn on profiling" OFF) # Set to true if compiler/linker should enable profiling
diff --git a/CMakeScripts/DefineDependsandFlags.cmake b/CMakeScripts/DefineDependsandFlags.cmake
index dceed9560..a4dad21b1 100644
--- a/CMakeScripts/DefineDependsandFlags.cmake
+++ b/CMakeScripts/DefineDependsandFlags.cmake
@@ -46,10 +46,6 @@ else()
list(APPEND INKSCAPE_LIBS "-lX11") # FIXME
endif()
-if(NOT APPLE)
- # FIXME: should depend on availability of OpenMP support (see below) (?)
- list(APPEND INKSCAPE_LIBS "-lgomp") # FIXME
-endif()
list(APPEND INKSCAPE_LIBS "-lgslcblas") # FIXME
if(WITH_GNOME_VFS)
@@ -316,15 +312,24 @@ list(APPEND INKSCAPE_INCS_SYS ${LIBXML2_INCLUDE_DIR})
list(APPEND INKSCAPE_LIBS ${LIBXML2_LIBRARIES})
add_definitions(${LIBXML2_DEFINITIONS})
-find_package(OpenMP)
-if(OpenMP_FOUND)
- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${OpenMP_C_FLAGS}")
- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS}")
- if(APPLE AND ${CMAKE_GENERATOR} MATCHES "Xcode")
- set(CMAKE_XCODE_ATTRIBUTE_ENABLE_OPENMP_SUPPORT "YES")
+if(WITH_OPENMP)
+ find_package(OpenMP)
+ if(OPENMP_FOUND)
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${OpenMP_C_FLAGS}")
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS}")
+ if(APPLE AND ${CMAKE_GENERATOR} MATCHES "Xcode")
+ set(CMAKE_XCODE_ATTRIBUTE_ENABLE_OPENMP_SUPPORT "YES")
+ endif()
+ mark_as_advanced(OpenMP_C_FLAGS)
+ mark_as_advanced(OpenMP_CXX_FLAGS)
+ # '-fopenmp' is in OpenMP_C_FLAGS, OpenMP_CXX_FLAGS and implies '-lgomp'
+ # uncomment explicit linking below if still needed:
+ set(HAVE_OPENMP ON)
+ #list(APPEND INKSCAPE_LIBS "-lgomp") # FIXME
+ else()
+ set(HAVE_OPENMP OFF)
+ set(WITH_OPENMP OFF)
endif()
- mark_as_advanced(OpenMP_C_FLAGS)
- mark_as_advanced(OpenMP_CXX_FLAGS)
endif()
find_package(ZLIB REQUIRED)
diff --git a/Doxyfile b/Doxyfile
index f65bc12d1..1850b0b09 100644
--- a/Doxyfile
+++ b/Doxyfile
@@ -1,4 +1,4 @@
-# Doxyfile 1.8.6
+# Doxyfile 1.8.9.1
# This file describes the settings to be used by the documentation system
# doxygen (www.doxygen.org) for a project.
@@ -38,7 +38,7 @@ PROJECT_NAME = inkscape
# could be handy for archiving the generated documentation or if some version
# control system is used.
-PROJECT_NUMBER =
+PROJECT_NUMBER =
# Using the PROJECT_BRIEF tag one can provide an optional one line description
# for a project that appears at the top of each page and should give viewer a
@@ -46,10 +46,10 @@ PROJECT_NUMBER =
PROJECT_BRIEF = "Vector Graphics Editor"
-# With the PROJECT_LOGO tag one can specify an logo or icon that is included in
-# the documentation. The maximum height of the logo should not exceed 55 pixels
-# and the maximum width should not exceed 200 pixels. Doxygen will copy the logo
-# to the output directory.
+# With the PROJECT_LOGO tag one can specify a logo or an icon that is included
+# in the documentation. The maximum height of the logo should not exceed 55
+# pixels and the maximum width should not exceed 200 pixels. Doxygen will copy
+# the logo to the output directory.
PROJECT_LOGO = inkscape.png
@@ -60,7 +60,7 @@ PROJECT_LOGO = inkscape.png
OUTPUT_DIRECTORY = doxygen
-# If the CREATE_SUBDIRS tag is set to YES, then doxygen will create 4096 sub-
+# If the CREATE_SUBDIRS tag is set to YES then doxygen will create 4096 sub-
# directories (in 2 levels) under the output directory of each output format and
# will distribute the generated files over these directories. Enabling this
# option can be useful when feeding doxygen a huge amount of source files, where
@@ -70,6 +70,14 @@ OUTPUT_DIRECTORY = doxygen
CREATE_SUBDIRS = NO
+# If the ALLOW_UNICODE_NAMES tag is set to YES, doxygen will allow non-ASCII
+# characters to appear in the names of generated files. If set to NO, non-ASCII
+# characters will be escaped, for example _xE3_x81_x84 will be used for Unicode
+# U+3044.
+# The default value is: NO.
+
+ALLOW_UNICODE_NAMES = NO
+
# The OUTPUT_LANGUAGE tag is used to specify the language in which all
# documentation generated by doxygen is written. Doxygen will use this
# information to generate all constant output in the proper language.
@@ -85,14 +93,14 @@ CREATE_SUBDIRS = NO
OUTPUT_LANGUAGE = English
-# If the BRIEF_MEMBER_DESC tag is set to YES doxygen will include brief member
+# If the BRIEF_MEMBER_DESC tag is set to YES, doxygen will include brief member
# descriptions after the members that are listed in the file and class
# documentation (similar to Javadoc). Set to NO to disable this.
# The default value is: YES.
BRIEF_MEMBER_DESC = YES
-# If the REPEAT_BRIEF tag is set to YES doxygen will prepend the brief
+# If the REPEAT_BRIEF tag is set to YES, doxygen will prepend the brief
# description of a member or function before the detailed description
#
# Note: If both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the
@@ -110,7 +118,7 @@ REPEAT_BRIEF = YES
# the entity):The $name class, The $name widget, The $name file, is, provides,
# specifies, contains, represents, a, an and the.
-ABBREVIATE_BRIEF =
+ABBREVIATE_BRIEF =
# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then
# doxygen will generate a detailed section even if there is only a brief
@@ -127,7 +135,7 @@ ALWAYS_DETAILED_SEC = NO
INLINE_INHERITED_MEMB = NO
-# If the FULL_PATH_NAMES tag is set to YES doxygen will prepend the full path
+# If the FULL_PATH_NAMES tag is set to YES, doxygen will prepend the full path
# before files name in the file list and in the header files. If set to NO the
# shortest path that makes the file name unique will be used
# The default value is: YES.
@@ -144,7 +152,7 @@ FULL_PATH_NAMES = YES
# will be relative from the directory where doxygen is started.
# This tag requires that the tag FULL_PATH_NAMES is set to YES.
-STRIP_FROM_PATH =
+STRIP_FROM_PATH =
# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of the
# path mentioned in the documentation of a class, which tells the reader which
@@ -153,7 +161,7 @@ STRIP_FROM_PATH =
# specify the list of include paths that are normally passed to the compiler
# using the -I flag.
-STRIP_FROM_INC_PATH =
+STRIP_FROM_INC_PATH =
# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter (but
# less readable) file names. This can be useful is your file systems doesn't
@@ -197,9 +205,9 @@ MULTILINE_CPP_IS_BRIEF = NO
INHERIT_DOCS = YES
-# If the SEPARATE_MEMBER_PAGES tag is set to YES, then doxygen will produce a
-# new page for each member. If set to NO, the documentation of a member will be
-# part of the file/class/namespace that contains it.
+# If the SEPARATE_MEMBER_PAGES tag is set to YES then doxygen will produce a new
+# page for each member. If set to NO, the documentation of a member will be part
+# of the file/class/namespace that contains it.
# The default value is: NO.
SEPARATE_MEMBER_PAGES = NO
@@ -220,13 +228,13 @@ TAB_SIZE = 4
# "Side Effects:". You can put \n's in the value part of an alias to insert
# newlines.
-ALIASES =
+ALIASES =
# This tag can be used to specify a number of word-keyword mappings (TCL only).
# A mapping has the form "name=value". For example adding "class=itcl::class"
# will allow you to use the command class in the itcl::class meaning.
-TCL_SUBST =
+TCL_SUBST =
# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources
# only. Doxygen will then generate output that is more tailored for C. For
@@ -234,7 +242,7 @@ TCL_SUBST =
# members will be omitted, etc.
# The default value is: NO.
-OPTIMIZE_OUTPUT_FOR_C = YES
+OPTIMIZE_OUTPUT_FOR_C = NO
# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java or
# Python sources only. Doxygen will then generate output that is more tailored
@@ -261,16 +269,19 @@ OPTIMIZE_OUTPUT_VHDL = NO
# extension. Doxygen has a built-in mapping, but you can override or extend it
# using this tag. The format is ext=language, where ext is a file extension, and
# language is one of the parsers supported by doxygen: IDL, Java, Javascript,
-# C#, C, C++, D, PHP, Objective-C, Python, Fortran, VHDL. For instance to make
-# doxygen treat .inc files as Fortran files (default is PHP), and .f files as C
-# (default is Fortran), use: inc=Fortran f=C.
+# C#, C, C++, D, PHP, Objective-C, Python, Fortran (fixed format Fortran:
+# FortranFixed, free formatted Fortran: FortranFree, unknown formatted Fortran:
+# Fortran. In the later case the parser tries to guess whether the code is fixed
+# or free formatted code, this is the default for Fortran type files), VHDL. For
+# instance to make doxygen treat .inc files as Fortran files (default is PHP),
+# and .f files as C (default is Fortran), use: inc=Fortran f=C.
#
-# Note For files without extension you can use no_extension as a placeholder.
+# Note: For files without extension you can use no_extension as a placeholder.
#
# Note that for custom extensions you also need to set FILE_PATTERNS otherwise
# the files are not read by doxygen.
-EXTENSION_MAPPING =
+EXTENSION_MAPPING =
# If the MARKDOWN_SUPPORT tag is enabled then doxygen pre-processes all comments
# according to the Markdown format, which allows for more readable
@@ -284,8 +295,8 @@ MARKDOWN_SUPPORT = YES
# When enabled doxygen tries to link words that correspond to documented
# classes, or namespaces to their corresponding documentation. Such a link can
-# be prevented in individual cases by by putting a % sign in front of the word
-# or globally by setting AUTOLINK_SUPPORT to NO.
+# be prevented in individual cases by putting a % sign in front of the word or
+# globally by setting AUTOLINK_SUPPORT to NO.
# The default value is: YES.
AUTOLINK_SUPPORT = YES
@@ -325,7 +336,7 @@ SIP_SUPPORT = NO
IDL_PROPERTY_SUPPORT = YES
# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC
-# tag is set to YES, then doxygen will reuse the documentation of the first
+# tag is set to YES then doxygen will reuse the documentation of the first
# member in the group (if any) for the other members of the group. By default
# all members of a group must be documented explicitly.
# The default value is: NO.
@@ -390,7 +401,7 @@ LOOKUP_CACHE_SIZE = 1
# Build related configuration options
#---------------------------------------------------------------------------
-# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in
+# If the EXTRACT_ALL tag is set to YES, doxygen will assume all entities in
# documentation are documented, even if no documentation was available. Private
# class members and static file members will be hidden unless the
# EXTRACT_PRIVATE respectively EXTRACT_STATIC tags are set to YES.
@@ -400,35 +411,35 @@ LOOKUP_CACHE_SIZE = 1
EXTRACT_ALL = YES
-# If the EXTRACT_PRIVATE tag is set to YES all private members of a class will
+# If the EXTRACT_PRIVATE tag is set to YES, all private members of a class will
# be included in the documentation.
# The default value is: NO.
EXTRACT_PRIVATE = YES
-# If the EXTRACT_PACKAGE tag is set to YES all members with package or internal
+# If the EXTRACT_PACKAGE tag is set to YES, all members with package or internal
# scope will be included in the documentation.
# The default value is: NO.
EXTRACT_PACKAGE = NO
-# If the EXTRACT_STATIC tag is set to YES all static members of a file will be
+# If the EXTRACT_STATIC tag is set to YES, all static members of a file will be
# included in the documentation.
# The default value is: NO.
EXTRACT_STATIC = YES
-# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs) defined
-# locally in source files will be included in the documentation. If set to NO
+# If the EXTRACT_LOCAL_CLASSES tag is set to YES, classes (and structs) defined
+# locally in source files will be included in the documentation. If set to NO,
# only classes defined in header files are included. Does not have any effect
# for Java sources.
# The default value is: YES.
EXTRACT_LOCAL_CLASSES = NO
-# This flag is only useful for Objective-C code. When set to YES local methods,
+# This flag is only useful for Objective-C code. If set to YES, local methods,
# which are defined in the implementation section but not in the interface are
-# included in the documentation. If set to NO only methods in the interface are
+# included in the documentation. If set to NO, only methods in the interface are
# included.
# The default value is: NO.
@@ -453,21 +464,21 @@ HIDE_UNDOC_MEMBERS = NO
# If the HIDE_UNDOC_CLASSES tag is set to YES, doxygen will hide all
# undocumented classes that are normally visible in the class hierarchy. If set
-# to NO these classes will be included in the various overviews. This option has
-# no effect if EXTRACT_ALL is enabled.
+# to NO, these classes will be included in the various overviews. This option
+# has no effect if EXTRACT_ALL is enabled.
# The default value is: NO.
HIDE_UNDOC_CLASSES = NO
# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, doxygen will hide all friend
-# (class|struct|union) declarations. If set to NO these declarations will be
+# (class|struct|union) declarations. If set to NO, these declarations will be
# included in the documentation.
# The default value is: NO.
HIDE_FRIEND_COMPOUNDS = NO
# If the HIDE_IN_BODY_DOCS tag is set to YES, doxygen will hide any
-# documentation blocks found inside the body of a function. If set to NO these
+# documentation blocks found inside the body of a function. If set to NO, these
# blocks will be appended to the function's detailed documentation block.
# The default value is: NO.
@@ -481,7 +492,7 @@ HIDE_IN_BODY_DOCS = NO
INTERNAL_DOCS = NO
# If the CASE_SENSE_NAMES tag is set to NO then doxygen will only generate file
-# names in lower-case letters. If set to YES upper-case letters are also
+# names in lower-case letters. If set to YES, upper-case letters are also
# allowed. This is useful if you have classes or files whose names only differ
# in case and if your file system supports case sensitive file names. Windows
# and Mac users are advised to set this option to NO.
@@ -490,11 +501,18 @@ INTERNAL_DOCS = NO
CASE_SENSE_NAMES = YES
# If the HIDE_SCOPE_NAMES tag is set to NO then doxygen will show members with
-# their full class and namespace scopes in the documentation. If set to YES the
+# their full class and namespace scopes in the documentation. If set to YES, the
# scope will be hidden.
# The default value is: NO.
-HIDE_SCOPE_NAMES = YES
+HIDE_SCOPE_NAMES = NO
+
+# If the HIDE_COMPOUND_REFERENCE tag is set to NO (default) then doxygen will
+# append additional text to a page's title, such as Class Reference. If set to
+# YES the compound reference will be hidden.
+# The default value is: NO.
+
+HIDE_COMPOUND_REFERENCE= NO
# If the SHOW_INCLUDE_FILES tag is set to YES then doxygen will put a list of
# the files that are included by a file in the documentation of that file.
@@ -523,14 +541,14 @@ INLINE_INFO = YES
# If the SORT_MEMBER_DOCS tag is set to YES then doxygen will sort the
# (detailed) documentation of file and class members alphabetically by member
-# name. If set to NO the members will appear in declaration order.
+# name. If set to NO, the members will appear in declaration order.
# The default value is: YES.
SORT_MEMBER_DOCS = YES
# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the brief
# descriptions of file, namespace and class members alphabetically by member
-# name. If set to NO the members will appear in declaration order. Note that
+# name. If set to NO, the members will appear in declaration order. Note that
# this will also influence the order of the classes in the class list.
# The default value is: NO.
@@ -575,27 +593,25 @@ SORT_BY_SCOPE_NAME = NO
STRICT_PROTO_MATCHING = NO
-# The GENERATE_TODOLIST tag can be used to enable ( YES) or disable ( NO) the
-# todo list. This list is created by putting \todo commands in the
-# documentation.
+# The GENERATE_TODOLIST tag can be used to enable (YES) or disable (NO) the todo
+# list. This list is created by putting \todo commands in the documentation.
# The default value is: YES.
GENERATE_TODOLIST = YES
-# The GENERATE_TESTLIST tag can be used to enable ( YES) or disable ( NO) the
-# test list. This list is created by putting \test commands in the
-# documentation.
+# The GENERATE_TESTLIST tag can be used to enable (YES) or disable (NO) the test
+# list. This list is created by putting \test commands in the documentation.
# The default value is: YES.
GENERATE_TESTLIST = YES
-# The GENERATE_BUGLIST tag can be used to enable ( YES) or disable ( NO) the bug
+# The GENERATE_BUGLIST tag can be used to enable (YES) or disable (NO) the bug
# list. This list is created by putting \bug commands in the documentation.
# The default value is: YES.
GENERATE_BUGLIST = YES
-# The GENERATE_DEPRECATEDLIST tag can be used to enable ( YES) or disable ( NO)
+# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or disable (NO)
# the deprecated list. This list is created by putting \deprecated commands in
# the documentation.
# The default value is: YES.
@@ -606,7 +622,7 @@ GENERATE_DEPRECATEDLIST= YES
# sections, marked by \if <section_label> ... \endif and \cond <section_label>
# ... \endcond blocks.
-ENABLED_SECTIONS =
+ENABLED_SECTIONS =
# The MAX_INITIALIZER_LINES tag determines the maximum number of lines that the
# initial value of a variable or macro / define can have for it to appear in the
@@ -620,8 +636,8 @@ ENABLED_SECTIONS =
MAX_INITIALIZER_LINES = 30
# Set the SHOW_USED_FILES tag to NO to disable the list of files generated at
-# the bottom of the documentation of classes and structs. If set to YES the list
-# will mention the files that were used to generate the documentation.
+# the bottom of the documentation of classes and structs. If set to YES, the
+# list will mention the files that were used to generate the documentation.
# The default value is: YES.
SHOW_USED_FILES = YES
@@ -648,7 +664,7 @@ SHOW_NAMESPACES = YES
# by doxygen. Whatever the program writes to standard output is used as the file
# version. For an example see the documentation.
-FILE_VERSION_FILTER =
+FILE_VERSION_FILTER =
# The LAYOUT_FILE tag can be used to specify a layout file which will be parsed
# by doxygen. The layout file controls the global structure of the generated
@@ -661,7 +677,7 @@ FILE_VERSION_FILTER =
# DoxygenLayout.xml, doxygen will parse it automatically even if the LAYOUT_FILE
# tag is left empty.
-LAYOUT_FILE =
+LAYOUT_FILE =
# The CITE_BIB_FILES tag can be used to specify one or more bib files containing
# the reference definitions. This must be a list of .bib files. The .bib
@@ -669,10 +685,9 @@ LAYOUT_FILE =
# to be installed. See also http://en.wikipedia.org/wiki/BibTeX for more info.
# For LaTeX the style of the bibliography can be controlled using
# LATEX_BIB_STYLE. To use this feature you need bibtex and perl available in the
-# search path. Do not use file names with spaces, bibtex cannot handle them. See
-# also \cite for info how to create references.
+# search path. See also \cite for info how to create references.
-CITE_BIB_FILES =
+CITE_BIB_FILES =
#---------------------------------------------------------------------------
# Configuration options related to warning and progress messages
@@ -686,7 +701,7 @@ CITE_BIB_FILES =
QUIET = NO
# The WARNINGS tag can be used to turn on/off the warning messages that are
-# generated to standard error ( stderr) by doxygen. If WARNINGS is set to YES
+# generated to standard error (stderr) by doxygen. If WARNINGS is set to YES
# this implies that the warnings are on.
#
# Tip: Turn warnings on while writing the documentation.
@@ -694,7 +709,7 @@ QUIET = NO
WARNINGS = YES
-# If the WARN_IF_UNDOCUMENTED tag is set to YES, then doxygen will generate
+# If the WARN_IF_UNDOCUMENTED tag is set to YES then doxygen will generate
# warnings for undocumented members. If EXTRACT_ALL is set to YES then this flag
# will automatically be disabled.
# The default value is: YES.
@@ -711,8 +726,8 @@ WARN_IF_DOC_ERROR = YES
# This WARN_NO_PARAMDOC option can be enabled to get warnings for functions that
# are documented, but have no documentation for their parameters or return
-# value. If set to NO doxygen will only warn about wrong or incomplete parameter
-# documentation, but not about the absence of documentation.
+# value. If set to NO, doxygen will only warn about wrong or incomplete
+# parameter documentation, but not about the absence of documentation.
# The default value is: NO.
WARN_NO_PARAMDOC = NO
@@ -780,7 +795,7 @@ RECURSIVE = YES
# Note that relative paths are relative to the directory from which doxygen is
# run.
-EXCLUDE =
+EXCLUDE =
# The EXCLUDE_SYMLINKS tag can be used to select whether or not files or
# directories that are symbolic links (a Unix file system feature) are excluded
@@ -796,7 +811,7 @@ EXCLUDE_SYMLINKS = YES
# Note that the wildcards are matched against the file with absolute path, so to
# exclude all test directories for example use the pattern */test/*
-EXCLUDE_PATTERNS =
+EXCLUDE_PATTERNS =
# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names
# (namespaces, classes, functions, etc.) that should be excluded from the
@@ -807,20 +822,20 @@ EXCLUDE_PATTERNS =
# Note that the wildcards are matched against the file with absolute path, so to
# exclude all test directories use the pattern */test/*
-EXCLUDE_SYMBOLS =
+EXCLUDE_SYMBOLS =
# The EXAMPLE_PATH tag can be used to specify one or more files or directories
# that contain example code fragments that are included (see the \include
# command).
-EXAMPLE_PATH =
+EXAMPLE_PATH =
# If the value of the EXAMPLE_PATH tag contains directories, you can use the
# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp and
# *.h) to filter out the source-files in the directories. If left blank all
# files are included.
-EXAMPLE_PATTERNS =
+EXAMPLE_PATTERNS =
# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be
# searched for input files to be used with the \include or \dontinclude commands
@@ -833,7 +848,7 @@ EXAMPLE_RECURSIVE = NO
# that contain images that are to be included in the documentation (see the
# \image command).
-IMAGE_PATH =
+IMAGE_PATH =
# The INPUT_FILTER tag can be used to specify a program that doxygen should
# invoke to filter for each input file. Doxygen will invoke the filter program
@@ -850,7 +865,7 @@ IMAGE_PATH =
# code is scanned, but not when the output code is generated. If lines are added
# or removed, the anchors will not be placed correctly.
-INPUT_FILTER =
+INPUT_FILTER =
# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern
# basis. Doxygen will compare the file name with each pattern and apply the
@@ -859,10 +874,10 @@ INPUT_FILTER =
# filters are used. If the FILTER_PATTERNS tag is empty or if none of the
# patterns match the file name, INPUT_FILTER is applied.
-FILTER_PATTERNS =
+FILTER_PATTERNS =
# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using
-# INPUT_FILTER ) will also be used to filter the input files that are used for
+# INPUT_FILTER) will also be used to filter the input files that are used for
# producing the source files to browse (i.e. when SOURCE_BROWSER is set to YES).
# The default value is: NO.
@@ -874,14 +889,14 @@ FILTER_SOURCE_FILES = NO
# *.ext= (so without naming a filter).
# This tag requires that the tag FILTER_SOURCE_FILES is set to YES.
-FILTER_SOURCE_PATTERNS =
+FILTER_SOURCE_PATTERNS =
# If the USE_MDFILE_AS_MAINPAGE tag refers to the name of a markdown file that
# is part of the input, its contents will be placed on the main page
# (index.html). This can be useful if you have a project on for instance GitHub
# and want to reuse the introduction page also for the doxygen output.
-USE_MDFILE_AS_MAINPAGE =
+USE_MDFILE_AS_MAINPAGE =
#---------------------------------------------------------------------------
# Configuration options related to source browsing
@@ -894,7 +909,7 @@ USE_MDFILE_AS_MAINPAGE =
# also VERBATIM_HEADERS is set to NO.
# The default value is: NO.
-SOURCE_BROWSER = NO
+SOURCE_BROWSER = YES
# Setting the INLINE_SOURCES tag to YES will include the body of functions,
# classes and enums directly into the documentation.
@@ -922,7 +937,7 @@ REFERENCED_BY_RELATION = YES
REFERENCES_RELATION = YES
# If the REFERENCES_LINK_SOURCE tag is set to YES and SOURCE_BROWSER tag is set
-# to YES, then the hyperlinks from functions in REFERENCES_RELATION and
+# to YES then the hyperlinks from functions in REFERENCES_RELATION and
# REFERENCED_BY_RELATION lists will link to the source code. Otherwise they will
# link to the documentation.
# The default value is: YES.
@@ -969,6 +984,25 @@ USE_HTAGS = NO
VERBATIM_HEADERS = NO
+# If the CLANG_ASSISTED_PARSING tag is set to YES then doxygen will use the
+# clang parser (see: http://clang.llvm.org/) for more accurate parsing at the
+# cost of reduced performance. This can be particularly helpful with template
+# rich C++ code for which doxygen's built-in parser lacks the necessary type
+# information.
+# Note: The availability of this option depends on whether or not doxygen was
+# compiled with the --with-libclang option.
+# The default value is: NO.
+
+CLANG_ASSISTED_PARSING = NO
+
+# If clang assisted parsing is enabled you can provide the compiler with command
+# line options that you would normally use when invoking the compiler. Note that
+# the include paths will already be set by doxygen for the files and directories
+# specified with INPUT and INCLUDE_PATH.
+# This tag requires that the tag CLANG_ASSISTED_PARSING is set to YES.
+
+CLANG_OPTIONS =
+
#---------------------------------------------------------------------------
# Configuration options related to the alphabetical class index
#---------------------------------------------------------------------------
@@ -993,13 +1027,13 @@ COLS_IN_ALPHA_INDEX = 5
# while generating the index headers.
# This tag requires that the tag ALPHABETICAL_INDEX is set to YES.
-IGNORE_PREFIX =
+IGNORE_PREFIX =
#---------------------------------------------------------------------------
# Configuration options related to the HTML output
#---------------------------------------------------------------------------
-# If the GENERATE_HTML tag is set to YES doxygen will generate HTML output
+# If the GENERATE_HTML tag is set to YES, doxygen will generate HTML output
# The default value is: YES.
GENERATE_HTML = YES
@@ -1037,7 +1071,7 @@ HTML_FILE_EXTENSION = .html
# of the possible markers and block names see the documentation.
# This tag requires that the tag GENERATE_HTML is set to YES.
-HTML_HEADER =
+HTML_HEADER =
# The HTML_FOOTER tag can be used to specify a user-defined HTML footer for each
# generated HTML page. If the tag is left blank doxygen will generate a standard
@@ -1047,7 +1081,7 @@ HTML_HEADER =
# that doxygen normally uses.
# This tag requires that the tag GENERATE_HTML is set to YES.
-HTML_FOOTER =
+HTML_FOOTER =
# The HTML_STYLESHEET tag can be used to specify a user-defined cascading style
# sheet that is used by each HTML page. It can be used to fine-tune the look of
@@ -1059,18 +1093,20 @@ HTML_FOOTER =
# obsolete.
# This tag requires that the tag GENERATE_HTML is set to YES.
-HTML_STYLESHEET =
+HTML_STYLESHEET =
-# The HTML_EXTRA_STYLESHEET tag can be used to specify an additional user-
-# defined cascading style sheet that is included after the standard style sheets
+# The HTML_EXTRA_STYLESHEET tag can be used to specify additional user-defined
+# cascading style sheets that are included after the standard style sheets
# created by doxygen. Using this option one can overrule certain style aspects.
# This is preferred over using HTML_STYLESHEET since it does not replace the
-# standard style sheet and is therefor more robust against future updates.
-# Doxygen will copy the style sheet file to the output directory. For an example
-# see the documentation.
+# standard style sheet and is therefore more robust against future updates.
+# Doxygen will copy the style sheet files to the output directory.
+# Note: The order of the extra style sheet files is of importance (e.g. the last
+# style sheet in the list overrules the setting of the previous ones in the
+# list). For an example see the documentation.
# This tag requires that the tag GENERATE_HTML is set to YES.
-HTML_EXTRA_STYLESHEET =
+HTML_EXTRA_STYLESHEET =
# The HTML_EXTRA_FILES tag can be used to specify one or more extra images or
# other source files which should be copied to the HTML output directory. Note
@@ -1080,10 +1116,10 @@ HTML_EXTRA_STYLESHEET =
# files will be copied as-is; there are no commands or markers available.
# This tag requires that the tag GENERATE_HTML is set to YES.
-HTML_EXTRA_FILES =
+HTML_EXTRA_FILES =
# The HTML_COLORSTYLE_HUE tag controls the color of the HTML output. Doxygen
-# will adjust the colors in the stylesheet and background images according to
+# will adjust the colors in the style sheet and background images according to
# this color. Hue is specified as an angle on a colorwheel, see
# http://en.wikipedia.org/wiki/Hue for more information. For instance the value
# 0 represents red, 60 is yellow, 120 is green, 180 is cyan, 240 is blue, 300
@@ -1114,8 +1150,9 @@ HTML_COLORSTYLE_GAMMA = 80
# If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML
# page will contain the date and time when the page was generated. Setting this
-# to NO can help when comparing the output of multiple runs.
-# The default value is: YES.
+# to YES can help to show when doxygen was last run and thus if the
+# documentation is up to date.
+# The default value is: NO.
# This tag requires that the tag GENERATE_HTML is set to YES.
HTML_TIMESTAMP = YES
@@ -1208,31 +1245,32 @@ GENERATE_HTMLHELP = NO
# written to the html output directory.
# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
-CHM_FILE =
+CHM_FILE =
# The HHC_LOCATION tag can be used to specify the location (absolute path
-# including file name) of the HTML help compiler ( hhc.exe). If non-empty
+# including file name) of the HTML help compiler (hhc.exe). If non-empty,
# doxygen will try to run the HTML help compiler on the generated index.hhp.
# The file has to be specified with full path.
# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
-HHC_LOCATION =
+HHC_LOCATION =
-# The GENERATE_CHI flag controls if a separate .chi index file is generated (
-# YES) or that it should be included in the master .chm file ( NO).
+# The GENERATE_CHI flag controls if a separate .chi index file is generated
+# (YES) or that it should be included in the master .chm file (NO).
# The default value is: NO.
# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
GENERATE_CHI = NO
-# The CHM_INDEX_ENCODING is used to encode HtmlHelp index ( hhk), content ( hhc)
+# The CHM_INDEX_ENCODING is used to encode HtmlHelp index (hhk), content (hhc)
# and project file content.
# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
-CHM_INDEX_ENCODING =
+CHM_INDEX_ENCODING =
-# The BINARY_TOC flag controls whether a binary table of contents is generated (
-# YES) or a normal table of contents ( NO) in the .chm file.
+# The BINARY_TOC flag controls whether a binary table of contents is generated
+# (YES) or a normal table of contents (NO) in the .chm file. Furthermore it
+# enables the Previous and Next buttons.
# The default value is: NO.
# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
@@ -1259,7 +1297,7 @@ GENERATE_QHP = NO
# the HTML output folder.
# This tag requires that the tag GENERATE_QHP is set to YES.
-QCH_FILE =
+QCH_FILE =
# The QHP_NAMESPACE tag specifies the namespace to use when generating Qt Help
# Project output. For more information please see Qt Help Project / Namespace
@@ -1284,7 +1322,7 @@ QHP_VIRTUAL_FOLDER = doc
# filters).
# This tag requires that the tag GENERATE_QHP is set to YES.
-QHP_CUST_FILTER_NAME =
+QHP_CUST_FILTER_NAME =
# The QHP_CUST_FILTER_ATTRS tag specifies the list of the attributes of the
# custom filter to add. For more information please see Qt Help Project / Custom
@@ -1292,21 +1330,21 @@ QHP_CUST_FILTER_NAME =
# filters).
# This tag requires that the tag GENERATE_QHP is set to YES.
-QHP_CUST_FILTER_ATTRS =
+QHP_CUST_FILTER_ATTRS =
# The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this
# project's filter section matches. Qt Help Project / Filter Attributes (see:
# http://qt-project.org/doc/qt-4.8/qthelpproject.html#filter-attributes).
# This tag requires that the tag GENERATE_QHP is set to YES.
-QHP_SECT_FILTER_ATTRS =
+QHP_SECT_FILTER_ATTRS =
# The QHG_LOCATION tag can be used to specify the location of Qt's
# qhelpgenerator. If non-empty doxygen will try to run qhelpgenerator on the
# generated .qhp file.
# This tag requires that the tag GENERATE_QHP is set to YES.
-QHG_LOCATION =
+QHG_LOCATION =
# If the GENERATE_ECLIPSEHELP tag is set to YES, additional index files will be
# generated, together with the HTML files, they form an Eclipse help plugin. To
@@ -1345,7 +1383,7 @@ DISABLE_INDEX = NO
# index structure (just like the one that is generated for HTML Help). For this
# to work a browser that supports JavaScript, DHTML, CSS and frames is required
# (i.e. any modern browser). Windows users are probably better off using the
-# HTML help feature. Via custom stylesheets (see HTML_EXTRA_STYLESHEET) one can
+# HTML help feature. Via custom style sheets (see HTML_EXTRA_STYLESHEET) one can
# further fine-tune the look of the index. As an example, the default style
# sheet generated by doxygen has an example that shows how to put an image at
# the root of the tree instead of the PROJECT_NAME. Since the tree basically has
@@ -1354,7 +1392,7 @@ DISABLE_INDEX = NO
# The default value is: NO.
# This tag requires that the tag GENERATE_HTML is set to YES.
-GENERATE_TREEVIEW = NO
+GENERATE_TREEVIEW = YES
# The ENUM_VALUES_PER_LINE tag can be used to set the number of enum values that
# doxygen will group on one line in the generated HTML documentation.
@@ -1373,7 +1411,7 @@ ENUM_VALUES_PER_LINE = 4
TREEVIEW_WIDTH = 250
-# When the EXT_LINKS_IN_WINDOW option is set to YES doxygen will open links to
+# If the EXT_LINKS_IN_WINDOW option is set to YES, doxygen will open links to
# external symbols imported via tag files in a separate window.
# The default value is: NO.
# This tag requires that the tag GENERATE_HTML is set to YES.
@@ -1402,7 +1440,7 @@ FORMULA_TRANSPARENT = YES
# Enable the USE_MATHJAX option to render LaTeX formulas using MathJax (see
# http://www.mathjax.org) which uses client side Javascript for the rendering
-# instead of using prerendered bitmaps. Use this if you do not have LaTeX
+# instead of using pre-rendered bitmaps. Use this if you do not have LaTeX
# installed or if you want to formulas look prettier in the HTML output. When
# enabled you may also need to install MathJax separately and configure the path
# to it using the MATHJAX_RELPATH option.
@@ -1439,7 +1477,7 @@ MATHJAX_RELPATH = http://cdn.mathjax.org/mathjax/latest
# MATHJAX_EXTENSIONS = TeX/AMSmath TeX/AMSsymbols
# This tag requires that the tag USE_MATHJAX is set to YES.
-MATHJAX_EXTENSIONS =
+MATHJAX_EXTENSIONS =
# The MATHJAX_CODEFILE tag can be used to specify a file with javascript pieces
# of code that will be used on startup of the MathJax code. See the MathJax site
@@ -1447,7 +1485,7 @@ MATHJAX_EXTENSIONS =
# example see the documentation.
# This tag requires that the tag USE_MATHJAX is set to YES.
-MATHJAX_CODEFILE =
+MATHJAX_CODEFILE =
# When the SEARCHENGINE tag is enabled doxygen will generate a search box for
# the HTML output. The underlying search engine uses javascript and DHTML and
@@ -1468,15 +1506,15 @@ MATHJAX_CODEFILE =
# The default value is: YES.
# This tag requires that the tag GENERATE_HTML is set to YES.
-SEARCHENGINE = NO
+SEARCHENGINE = YES
# When the SERVER_BASED_SEARCH tag is enabled the search engine will be
# implemented using a web server instead of a web client using Javascript. There
-# are two flavours of web server based searching depending on the
-# EXTERNAL_SEARCH setting. When disabled, doxygen will generate a PHP script for
-# searching and an index file used by the script. When EXTERNAL_SEARCH is
-# enabled the indexing and searching needs to be provided by external tools. See
-# the section "External Indexing and Searching" for details.
+# are two flavors of web server based searching depending on the EXTERNAL_SEARCH
+# setting. When disabled, doxygen will generate a PHP script for searching and
+# an index file used by the script. When EXTERNAL_SEARCH is enabled the indexing
+# and searching needs to be provided by external tools. See the section
+# "External Indexing and Searching" for details.
# The default value is: NO.
# This tag requires that the tag SEARCHENGINE is set to YES.
@@ -1488,7 +1526,7 @@ SERVER_BASED_SEARCH = NO
# external search engine pointed to by the SEARCHENGINE_URL option to obtain the
# search results.
#
-# Doxygen ships with an example indexer ( doxyindexer) and search engine
+# Doxygen ships with an example indexer (doxyindexer) and search engine
# (doxysearch.cgi) which are based on the open source search engine library
# Xapian (see: http://xapian.org/).
#
@@ -1501,13 +1539,13 @@ EXTERNAL_SEARCH = NO
# The SEARCHENGINE_URL should point to a search engine hosted by a web server
# which will return the search results when EXTERNAL_SEARCH is enabled.
#
-# Doxygen ships with an example indexer ( doxyindexer) and search engine
+# Doxygen ships with an example indexer (doxyindexer) and search engine
# (doxysearch.cgi) which are based on the open source search engine library
# Xapian (see: http://xapian.org/). See the section "External Indexing and
# Searching" for details.
# This tag requires that the tag SEARCHENGINE is set to YES.
-SEARCHENGINE_URL =
+SEARCHENGINE_URL =
# When SERVER_BASED_SEARCH and EXTERNAL_SEARCH are both enabled the unindexed
# search data is written to a file for indexing by an external tool. With the
@@ -1523,7 +1561,7 @@ SEARCHDATA_FILE = searchdata.xml
# projects and redirect the results back to the right project.
# This tag requires that the tag SEARCHENGINE is set to YES.
-EXTERNAL_SEARCH_ID =
+EXTERNAL_SEARCH_ID =
# The EXTRA_SEARCH_MAPPINGS tag can be used to enable searching through doxygen
# projects other than the one defined by this configuration file, but that are
@@ -1533,13 +1571,13 @@ EXTERNAL_SEARCH_ID =
# EXTRA_SEARCH_MAPPINGS = tagname1=loc1 tagname2=loc2 ...
# This tag requires that the tag SEARCHENGINE is set to YES.
-EXTRA_SEARCH_MAPPINGS =
+EXTRA_SEARCH_MAPPINGS =
#---------------------------------------------------------------------------
# Configuration options related to the LaTeX output
#---------------------------------------------------------------------------
-# If the GENERATE_LATEX tag is set to YES doxygen will generate LaTeX output.
+# If the GENERATE_LATEX tag is set to YES, doxygen will generate LaTeX output.
# The default value is: YES.
GENERATE_LATEX = NO
@@ -1570,7 +1608,7 @@ LATEX_CMD_NAME = latex
MAKEINDEX_CMD_NAME = makeindex
-# If the COMPACT_LATEX tag is set to YES doxygen generates more compact LaTeX
+# If the COMPACT_LATEX tag is set to YES, doxygen generates more compact LaTeX
# documents. This may be useful for small projects and may help to save some
# trees in general.
# The default value is: NO.
@@ -1605,22 +1643,35 @@ EXTRA_PACKAGES = amsmath \
#
# Note: Only use a user-defined header if you know what you are doing! The
# following commands have a special meaning inside the header: $title,
-# $datetime, $date, $doxygenversion, $projectname, $projectnumber. Doxygen will
-# replace them by respectively the title of the page, the current date and time,
-# only the current date, the version number of doxygen, the project name (see
-# PROJECT_NAME), or the project number (see PROJECT_NUMBER).
+# $datetime, $date, $doxygenversion, $projectname, $projectnumber,
+# $projectbrief, $projectlogo. Doxygen will replace $title with the empty
+# string, for the replacement values of the other commands the user is referred
+# to HTML_HEADER.
# This tag requires that the tag GENERATE_LATEX is set to YES.
-LATEX_HEADER =
+LATEX_HEADER =
# The LATEX_FOOTER tag can be used to specify a personal LaTeX footer for the
# generated LaTeX document. The footer should contain everything after the last
-# chapter. If it is left blank doxygen will generate a standard footer.
+# chapter. If it is left blank doxygen will generate a standard footer. See
+# LATEX_HEADER for more information on how to generate a default footer and what
+# special commands can be used inside the footer.
#
# Note: Only use a user-defined footer if you know what you are doing!
# This tag requires that the tag GENERATE_LATEX is set to YES.
-LATEX_FOOTER =
+LATEX_FOOTER =
+
+# The LATEX_EXTRA_STYLESHEET tag can be used to specify additional user-defined
+# LaTeX style sheets that are included after the standard style sheets created
+# by doxygen. Using this option one can overrule certain style aspects. Doxygen
+# will copy the style sheet files to the output directory.
+# Note: The order of the extra style sheet files is of importance (e.g. the last
+# style sheet in the list overrules the setting of the previous ones in the
+# list).
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_EXTRA_STYLESHEET =
# The LATEX_EXTRA_FILES tag can be used to specify one or more extra images or
# other source files which should be copied to the LATEX_OUTPUT output
@@ -1628,7 +1679,7 @@ LATEX_FOOTER =
# markers available.
# This tag requires that the tag GENERATE_LATEX is set to YES.
-LATEX_EXTRA_FILES =
+LATEX_EXTRA_FILES =
# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated is
# prepared for conversion to PDF (using ps2pdf or pdflatex). The PDF file will
@@ -1639,8 +1690,8 @@ LATEX_EXTRA_FILES =
PDF_HYPERLINKS = NO
-# If the LATEX_PDFLATEX tag is set to YES, doxygen will use pdflatex to generate
-# the PDF file directly from the LaTeX files. Set this option to YES to get a
+# If the USE_PDFLATEX tag is set to YES, doxygen will use pdflatex to generate
+# the PDF file directly from the LaTeX files. Set this option to YES, to get a
# higher quality PDF documentation.
# The default value is: YES.
# This tag requires that the tag GENERATE_LATEX is set to YES.
@@ -1685,7 +1736,7 @@ LATEX_BIB_STYLE = plain
# Configuration options related to the RTF output
#---------------------------------------------------------------------------
-# If the GENERATE_RTF tag is set to YES doxygen will generate RTF output. The
+# If the GENERATE_RTF tag is set to YES, doxygen will generate RTF output. The
# RTF output is optimized for Word 97 and may not look too pretty with other RTF
# readers/editors.
# The default value is: NO.
@@ -1700,7 +1751,7 @@ GENERATE_RTF = NO
RTF_OUTPUT = rtf
-# If the COMPACT_RTF tag is set to YES doxygen generates more compact RTF
+# If the COMPACT_RTF tag is set to YES, doxygen generates more compact RTF
# documents. This may be useful for small projects and may help to save some
# trees in general.
# The default value is: NO.
@@ -1728,20 +1779,30 @@ RTF_HYPERLINKS = NO
# default style sheet that doxygen normally uses.
# This tag requires that the tag GENERATE_RTF is set to YES.
-RTF_STYLESHEET_FILE =
+RTF_STYLESHEET_FILE =
# Set optional variables used in the generation of an RTF document. Syntax is
# similar to doxygen's config file. A template extensions file can be generated
# using doxygen -e rtf extensionFile.
# This tag requires that the tag GENERATE_RTF is set to YES.
-RTF_EXTENSIONS_FILE =
+RTF_EXTENSIONS_FILE =
+
+# If the RTF_SOURCE_CODE tag is set to YES then doxygen will include source code
+# with syntax highlighting in the RTF output.
+#
+# Note that which sources are shown also depends on other settings such as
+# SOURCE_BROWSER.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_RTF is set to YES.
+
+RTF_SOURCE_CODE = NO
#---------------------------------------------------------------------------
# Configuration options related to the man page output
#---------------------------------------------------------------------------
-# If the GENERATE_MAN tag is set to YES doxygen will generate man pages for
+# If the GENERATE_MAN tag is set to YES, doxygen will generate man pages for
# classes and files.
# The default value is: NO.
@@ -1765,6 +1826,13 @@ MAN_OUTPUT = man
MAN_EXTENSION = .3
+# The MAN_SUBDIR tag determines the name of the directory created within
+# MAN_OUTPUT in which the man pages are placed. If defaults to man followed by
+# MAN_EXTENSION with the initial . removed.
+# This tag requires that the tag GENERATE_MAN is set to YES.
+
+MAN_SUBDIR =
+
# If the MAN_LINKS tag is set to YES and doxygen generates man output, then it
# will generate one additional man file for each entity documented in the real
# man page(s). These additional files only source the real man page, but without
@@ -1778,7 +1846,7 @@ MAN_LINKS = NO
# Configuration options related to the XML output
#---------------------------------------------------------------------------
-# If the GENERATE_XML tag is set to YES doxygen will generate an XML file that
+# If the GENERATE_XML tag is set to YES, doxygen will generate an XML file that
# captures the structure of the code including all documentation.
# The default value is: NO.
@@ -1792,19 +1860,7 @@ GENERATE_XML = NO
XML_OUTPUT = xml
-# The XML_SCHEMA tag can be used to specify a XML schema, which can be used by a
-# validating XML parser to check the syntax of the XML files.
-# This tag requires that the tag GENERATE_XML is set to YES.
-
-XML_SCHEMA =
-
-# The XML_DTD tag can be used to specify a XML DTD, which can be used by a
-# validating XML parser to check the syntax of the XML files.
-# This tag requires that the tag GENERATE_XML is set to YES.
-
-XML_DTD =
-
-# If the XML_PROGRAMLISTING tag is set to YES doxygen will dump the program
+# If the XML_PROGRAMLISTING tag is set to YES, doxygen will dump the program
# listings (including syntax highlighting and cross-referencing information) to
# the XML output. Note that enabling this will significantly increase the size
# of the XML output.
@@ -1817,7 +1873,7 @@ XML_PROGRAMLISTING = YES
# Configuration options related to the DOCBOOK output
#---------------------------------------------------------------------------
-# If the GENERATE_DOCBOOK tag is set to YES doxygen will generate Docbook files
+# If the GENERATE_DOCBOOK tag is set to YES, doxygen will generate Docbook files
# that can be used to generate PDF.
# The default value is: NO.
@@ -1831,14 +1887,23 @@ GENERATE_DOCBOOK = NO
DOCBOOK_OUTPUT = docbook
+# If the DOCBOOK_PROGRAMLISTING tag is set to YES, doxygen will include the
+# program listings (including syntax highlighting and cross-referencing
+# information) to the DOCBOOK output. Note that enabling this will significantly
+# increase the size of the DOCBOOK output.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_DOCBOOK is set to YES.
+
+DOCBOOK_PROGRAMLISTING = NO
+
#---------------------------------------------------------------------------
# Configuration options for the AutoGen Definitions output
#---------------------------------------------------------------------------
-# If the GENERATE_AUTOGEN_DEF tag is set to YES doxygen will generate an AutoGen
-# Definitions (see http://autogen.sf.net) file that captures the structure of
-# the code including all documentation. Note that this feature is still
-# experimental and incomplete at the moment.
+# If the GENERATE_AUTOGEN_DEF tag is set to YES, doxygen will generate an
+# AutoGen Definitions (see http://autogen.sf.net) file that captures the
+# structure of the code including all documentation. Note that this feature is
+# still experimental and incomplete at the moment.
# The default value is: NO.
GENERATE_AUTOGEN_DEF = NO
@@ -1847,7 +1912,7 @@ GENERATE_AUTOGEN_DEF = NO
# Configuration options related to the Perl module output
#---------------------------------------------------------------------------
-# If the GENERATE_PERLMOD tag is set to YES doxygen will generate a Perl module
+# If the GENERATE_PERLMOD tag is set to YES, doxygen will generate a Perl module
# file that captures the structure of the code including all documentation.
#
# Note that this feature is still experimental and incomplete at the moment.
@@ -1855,7 +1920,7 @@ GENERATE_AUTOGEN_DEF = NO
GENERATE_PERLMOD = NO
-# If the PERLMOD_LATEX tag is set to YES doxygen will generate the necessary
+# If the PERLMOD_LATEX tag is set to YES, doxygen will generate the necessary
# Makefile rules, Perl scripts and LaTeX code to be able to generate PDF and DVI
# output from the Perl module output.
# The default value is: NO.
@@ -1863,9 +1928,9 @@ GENERATE_PERLMOD = NO
PERLMOD_LATEX = NO
-# If the PERLMOD_PRETTY tag is set to YES the Perl module output will be nicely
+# If the PERLMOD_PRETTY tag is set to YES, the Perl module output will be nicely
# formatted so it can be parsed by a human reader. This is useful if you want to
-# understand what is going on. On the other hand, if this tag is set to NO the
+# understand what is going on. On the other hand, if this tag is set to NO, the
# size of the Perl module output will be much smaller and Perl will parse it
# just the same.
# The default value is: YES.
@@ -1879,20 +1944,20 @@ PERLMOD_PRETTY = YES
# overwrite each other's variables.
# This tag requires that the tag GENERATE_PERLMOD is set to YES.
-PERLMOD_MAKEVAR_PREFIX =
+PERLMOD_MAKEVAR_PREFIX =
#---------------------------------------------------------------------------
# Configuration options related to the preprocessor
#---------------------------------------------------------------------------
-# If the ENABLE_PREPROCESSING tag is set to YES doxygen will evaluate all
+# If the ENABLE_PREPROCESSING tag is set to YES, doxygen will evaluate all
# C-preprocessor directives found in the sources and include files.
# The default value is: YES.
ENABLE_PREPROCESSING = YES
-# If the MACRO_EXPANSION tag is set to YES doxygen will expand all macro names
-# in the source code. If set to NO only conditional compilation will be
+# If the MACRO_EXPANSION tag is set to YES, doxygen will expand all macro names
+# in the source code. If set to NO, only conditional compilation will be
# performed. Macro expansion can be done in a controlled way by setting
# EXPAND_ONLY_PREDEF to YES.
# The default value is: NO.
@@ -1908,7 +1973,7 @@ MACRO_EXPANSION = NO
EXPAND_ONLY_PREDEF = NO
-# If the SEARCH_INCLUDES tag is set to YES the includes files in the
+# If the SEARCH_INCLUDES tag is set to YES, the include files in the
# INCLUDE_PATH will be searched if a #include is found.
# The default value is: YES.
# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
@@ -1928,7 +1993,7 @@ INCLUDE_PATH = src
# used.
# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
-INCLUDE_FILE_PATTERNS =
+INCLUDE_FILE_PATTERNS =
# The PREDEFINED tag can be used to specify one or more macro names that are
# defined before the preprocessor is started (similar to the -D option of e.g.
@@ -1938,7 +2003,7 @@ INCLUDE_FILE_PATTERNS =
# recursively expanded use the := operator instead of the = operator.
# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
-PREDEFINED =
+PREDEFINED =
# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then this
# tag can be used to specify a list of macro names that should be expanded. The
@@ -1947,12 +2012,12 @@ PREDEFINED =
# definition found in the source code.
# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
-EXPAND_AS_DEFINED =
+EXPAND_AS_DEFINED =
# If the SKIP_FUNCTION_MACROS tag is set to YES then doxygen's preprocessor will
-# remove all refrences to function-like macros that are alone on a line, have an
-# all uppercase name, and do not end with a semicolon. Such function macros are
-# typically used for boiler-plate code, and will confuse the parser if not
+# remove all references to function-like macros that are alone on a line, have
+# an all uppercase name, and do not end with a semicolon. Such function macros
+# are typically used for boiler-plate code, and will confuse the parser if not
# removed.
# The default value is: YES.
# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
@@ -1972,32 +2037,33 @@ SKIP_FUNCTION_MACROS = YES
# where loc1 and loc2 can be relative or absolute paths or URLs. See the
# section "Linking to external documentation" for more information about the use
# of tag files.
-# Note: Each tag file must have an unique name (where the name does NOT include
+# Note: Each tag file must have a unique name (where the name does NOT include
# the path). If a tag file is not located in the directory in which doxygen is
# run, you must also specify the path to the tagfile here.
-TAGFILES =
+TAGFILES =
# When a file name is specified after GENERATE_TAGFILE, doxygen will create a
# tag file that is based on the input files it reads. See section "Linking to
# external documentation" for more information about the usage of tag files.
-GENERATE_TAGFILE =
+GENERATE_TAGFILE =
-# If the ALLEXTERNALS tag is set to YES all external class will be listed in the
-# class index. If set to NO only the inherited external classes will be listed.
+# If the ALLEXTERNALS tag is set to YES, all external class will be listed in
+# the class index. If set to NO, only the inherited external classes will be
+# listed.
# The default value is: NO.
ALLEXTERNALS = NO
-# If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed in
-# the modules index. If set to NO, only the current project's groups will be
+# If the EXTERNAL_GROUPS tag is set to YES, all external groups will be listed
+# in the modules index. If set to NO, only the current project's groups will be
# listed.
# The default value is: YES.
EXTERNAL_GROUPS = YES
-# If the EXTERNAL_PAGES tag is set to YES all external pages will be listed in
+# If the EXTERNAL_PAGES tag is set to YES, all external pages will be listed in
# the related pages index. If set to NO, only the current project's pages will
# be listed.
# The default value is: YES.
@@ -2014,7 +2080,7 @@ PERL_PATH = /usr/bin/perl
# Configuration options related to the dot tool
#---------------------------------------------------------------------------
-# If the CLASS_DIAGRAMS tag is set to YES doxygen will generate a class diagram
+# If the CLASS_DIAGRAMS tag is set to YES, doxygen will generate a class diagram
# (in HTML and LaTeX) for classes with base or super classes. Setting the tag to
# NO turns the diagrams off. Note that this option also works with HAVE_DOT
# disabled, but it is recommended to install and use dot, since it yields more
@@ -2030,16 +2096,16 @@ CLASS_DIAGRAMS = YES
# the mscgen tool resides. If left empty the tool is assumed to be found in the
# default search path.
-MSCGEN_PATH =
+MSCGEN_PATH =
# You can include diagrams made with dia in doxygen documentation. Doxygen will
# then run dia to produce the diagram and insert it in the documentation. The
# DIA_PATH tag allows you to specify the directory where the dia binary resides.
# If left empty dia is assumed to be found in the default search path.
-DIA_PATH =
+DIA_PATH =
-# If set to YES, the inheritance and collaboration graphs will hide inheritance
+# If set to YES the inheritance and collaboration graphs will hide inheritance
# and usage relations if the target is undocumented or is not a class.
# The default value is: YES.
@@ -2050,7 +2116,7 @@ HIDE_UNDOC_RELATIONS = YES
# http://www.graphviz.org/), a graph visualization toolkit from AT&T and Lucent
# Bell Labs. The other options in this section have no effect if this option is
# set to NO
-# The default value is: NO.
+# The default value is: YES.
HAVE_DOT = YES
@@ -2064,7 +2130,7 @@ HAVE_DOT = YES
DOT_NUM_THREADS = 0
-# When you want a differently looking font n the dot files that doxygen
+# When you want a differently looking font in the dot files that doxygen
# generates you can specify the font name using DOT_FONTNAME. You need to make
# sure dot is able to find the font, which can be done by putting it in a
# standard location or by setting the DOTFONTPATH environment variable or by
@@ -2072,7 +2138,7 @@ DOT_NUM_THREADS = 0
# The default value is: Helvetica.
# This tag requires that the tag HAVE_DOT is set to YES.
-DOT_FONTNAME =
+DOT_FONTNAME = Helvetica
# The DOT_FONTSIZE tag can be used to set the size (in points) of the font of
# dot graphs.
@@ -2086,7 +2152,7 @@ DOT_FONTSIZE = 10
# the path where dot can find it using this tag.
# This tag requires that the tag HAVE_DOT is set to YES.
-DOT_FONTPATH =
+DOT_FONTPATH =
# If the CLASS_GRAPH tag is set to YES then doxygen will generate a graph for
# each documented class showing the direct and indirect inheritance relations.
@@ -2112,7 +2178,7 @@ COLLABORATION_GRAPH = YES
GROUP_GRAPHS = YES
-# If the UML_LOOK tag is set to YES doxygen will generate inheritance and
+# If the UML_LOOK tag is set to YES, doxygen will generate inheritance and
# collaboration diagrams in a style similar to the OMG's Unified Modeling
# Language.
# The default value is: NO.
@@ -2202,7 +2268,9 @@ DIRECTORY_GRAPH = YES
# Note: If you choose svg you need to set HTML_FILE_EXTENSION to xhtml in order
# to make the SVG files visible in IE 9+ (other browsers do not have this
# requirement).
-# Possible values are: png, jpg, gif and svg.
+# Possible values are: png, png:cairo, png:cairo:cairo, png:cairo:gd, png:gd,
+# png:gd:gd, jpg, jpg:cairo, jpg:cairo:gd, jpg:gd, jpg:gd:gd, gif, gif:cairo,
+# gif:cairo:gd, gif:gd, gif:gd:gd and svg.
# The default value is: png.
# This tag requires that the tag HAVE_DOT is set to YES.
@@ -2224,26 +2292,39 @@ INTERACTIVE_SVG = NO
# found. If left blank, it is assumed the dot tool can be found in the path.
# This tag requires that the tag HAVE_DOT is set to YES.
-DOT_PATH =
+DOT_PATH =
# The DOTFILE_DIRS tag can be used to specify one or more directories that
# contain dot files that are included in the documentation (see the \dotfile
# command).
# This tag requires that the tag HAVE_DOT is set to YES.
-DOTFILE_DIRS =
+DOTFILE_DIRS =
# The MSCFILE_DIRS tag can be used to specify one or more directories that
# contain msc files that are included in the documentation (see the \mscfile
# command).
-MSCFILE_DIRS =
+MSCFILE_DIRS =
# The DIAFILE_DIRS tag can be used to specify one or more directories that
# contain dia files that are included in the documentation (see the \diafile
# command).
-DIAFILE_DIRS =
+DIAFILE_DIRS =
+
+# When using plantuml, the PLANTUML_JAR_PATH tag should be used to specify the
+# path where java can find the plantuml.jar file. If left blank, it is assumed
+# PlantUML is not used or called during a preprocessing step. Doxygen will
+# generate a warning when it encounters a \startuml command in this case and
+# will not generate output for the diagram.
+
+PLANTUML_JAR_PATH =
+
+# When using plantuml, the specified paths are searched for files specified by
+# the !include statement in a plantuml block.
+
+PLANTUML_INCLUDE_PATH =
# The DOT_GRAPH_MAX_NODES tag can be used to set the maximum number of nodes
# that will be shown in the graph. If the number of nodes in a graph becomes
@@ -2281,7 +2362,7 @@ MAX_DOT_GRAPH_DEPTH = 0
DOT_TRANSPARENT = NO
-# Set the DOT_MULTI_TARGETS tag to YES allow dot to generate multiple output
+# Set the DOT_MULTI_TARGETS tag to YES to allow dot to generate multiple output
# files in one run (i.e. multiple -o and -T options on the command line). This
# makes dot run faster, but since only newer versions of dot (>1.8.10) support
# this, this feature is disabled by default.
@@ -2298,7 +2379,7 @@ DOT_MULTI_TARGETS = NO
GENERATE_LEGEND = YES
-# If the DOT_CLEANUP tag is set to YES doxygen will remove the intermediate dot
+# If the DOT_CLEANUP tag is set to YES, doxygen will remove the intermediate dot
# files that are used to generate the various graphs.
# The default value is: YES.
# This tag requires that the tag HAVE_DOT is set to YES.
diff --git a/config.h.cmake b/config.h.cmake
index 3bd7837bd..c793f59b6 100644
--- a/config.h.cmake
+++ b/config.h.cmake
@@ -116,6 +116,9 @@
/* Define to 1 if you have the `mkdir' function. */
#cmakedefine HAVE_MKDIR 1
+/* Use OpenMP (via cmake) */
+#cmakedefine HAVE_OPENMP 1
+
/* Use aspell for built-in spellchecker */
#cmakedefine HAVE_ASPELL 1
diff --git a/packaging/macosx/Resources/etc/gtk-2.0/gtkrc b/packaging/macosx/Resources/etc/gtk-2.0/gtkrc
index 76c9f3397..46f5d2910 100644
--- a/packaging/macosx/Resources/etc/gtk-2.0/gtkrc
+++ b/packaging/macosx/Resources/etc/gtk-2.0/gtkrc
@@ -13,6 +13,9 @@ gtk-menu-images = 1
gtk-toolbar-style = 0
#gtk-toolbar-icon-size = 2
+# use OS X default PDF viewer for print preview
+gtk-print-preview-command="open -a /Applications/Preview.app %f"
+
# fix Adwaita theme for Inkscape's GimpSpinScale widgets
style "spinbutton" {}
widget_class "*GimpSpinScale*" style "spinbutton"
diff --git a/packaging/win32/languages/Ukrainian.nsh b/packaging/win32/languages/Ukrainian.nsh
index 1db81f196..ee5dfbf1f 100644
--- a/packaging/win32/languages/Ukrainian.nsh
+++ b/packaging/win32/languages/Ukrainian.nsh
@@ -44,7 +44,7 @@ ${LangFileString} lng_az "Àçćđáàéäæàíńüêîț"
${LangFileString} lng_be "Áłëîđóńüêîț"
${LangFileString} lng_bg "Áîëăàđńüêîț"
${LangFileString} lng_bn "Áćíăàëüńüêîț"
-${LangFileString} lng_bn_BD "Bengali Bangladesh"
+${LangFileString} lng_bn_BD "Áćíăàëüńüêîț (Áàíăëàäćű)"
${LangFileString} lng_br "Áđćòîíńüêîț"
${LangFileString} lng_ca "Êàòàëàíńüêîț"
${LangFileString} lng_ca@valencia "Âàëćíńłéńüêîț êàòàëàíńüêîț"
@@ -71,15 +71,15 @@ ${LangFileString} lng_gl "Ăàëłńłéńüêîț"
${LangFileString} lng_he "Čâđèòîì"
${LangFileString} lng_hr "Őîđâàòńüêîț"
${LangFileString} lng_hu "Óăîđńüêîț"
-${LangFileString} lng_hy "Armenian"
+${LangFileString} lng_hy "Âłđìćíńüêîț"
${LangFileString} lng_id "Číäîíćçłéńüêîț"
-${LangFileString} lng_is "Icelandic"
+${LangFileString} lng_is "Čńëàíäńüêîț"
${LangFileString} lng_it "Čòàëłéńüêîț"
${LangFileString} lng_ja "ßïîíńüêîț"
${LangFileString} lng_km "Êőìćđńüêîț"
${LangFileString} lng_ko "Êîđćéńüêîț"
${LangFileString} lng_lt "Ëèòîâńüêîț"
-${LangFileString} lng_lv "Latvian"
+${LangFileString} lng_lv "Ëàòâłéńüêîț"
${LangFileString} lng_mk "Ìàêćäîíńüêîț"
${LangFileString} lng_mn "Ìîíăîëüńüêîț"
${LangFileString} lng_ne "Íćïàëüńüêîț"
diff --git a/po/POTFILES.in b/po/POTFILES.in
index 9f301ac22..50b582f8e 100644
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@ -1,6 +1,6 @@
# List of source files containing translatable strings.
# Please keep this file sorted alphabetically.
-# Generated by ./generate_POTFILES.sh at Mon Mar 2 15:01:56 CET 2015
+# Generated by ./generate_POTFILES.sh at Thu May 21 04:26:44 CEST 2015
[encoding: UTF-8]
inkscape.desktop.in
share/filters/filters.svg.h
@@ -297,9 +297,15 @@ src/ui/tools/star-tool.cpp
src/ui/tools/text-tool.cpp
src/ui/tools/tool-base.cpp
src/ui/tools/tweak-tool.cpp
+src/ui/widget/color-entry.cpp
+src/ui/widget/color-icc-selector.cpp
+src/ui/widget/color-notebook.cpp
+src/ui/widget/color-scales.cpp
+src/ui/widget/color-wheel-selector.cpp
src/ui/widget/combo-enums.h
src/ui/widget/entity-entry.cpp
src/ui/widget/filter-effect-chooser.cpp
+src/ui/widget/font-variants.cpp
src/ui/widget/layer-selector.cpp
src/ui/widget/licensor.cpp
src/ui/widget/object-composite-settings.cpp
@@ -341,11 +347,7 @@ src/widgets/rect-toolbar.cpp
src/widgets/ruler.cpp
src/widgets/select-toolbar.cpp
src/widgets/sp-attribute-widget.cpp
-src/widgets/sp-color-icc-selector.cpp
-src/widgets/sp-color-notebook.cpp
-src/widgets/sp-color-scales.cpp
src/widgets/sp-color-selector.cpp
-src/widgets/sp-color-wheel-selector.cpp
src/widgets/sp-xmlview-attr-list.cpp
src/widgets/sp-xmlview-content.cpp
src/widgets/spiral-toolbar.cpp
@@ -490,6 +492,7 @@ share/extensions/wireframe_sphere.py
[type: gettext/xml] share/extensions/hershey.inx
[type: gettext/xml] share/extensions/hpgl_input.inx
[type: gettext/xml] share/extensions/hpgl_output.inx
+[type: gettext/xml] share/extensions/image_attributes.inx
[type: gettext/xml] share/extensions/ink2canvas.inx
[type: gettext/xml] share/extensions/inkscape_follow_link.inx
[type: gettext/xml] share/extensions/inkscape_help_askaquestion.inx
diff --git a/po/inkscape.pot b/po/inkscape.pot
index 4b3c7392a..f75ec959e 100644
--- a/po/inkscape.pot
+++ b/po/inkscape.pot
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: inkscape-devel@lists.sourceforge.net\n"
-"POT-Creation-Date: 2015-03-10 09:10+0100\n"
+"POT-Creation-Date: 2015-05-18 12:45+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -3308,1032 +3308,1032 @@ msgstr ""
msgid "Old paint (bitmap)"
msgstr ""
-#. Symbols: ./AigaSymbols.svg
+#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:2
msgctxt "Symbol"
-msgid "AIGA Symbol Signs"
+msgid "United States National Park Service Map Symbols"
msgstr ""
-#. Symbols: ./AigaSymbols.svg
#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:3 ../share/symbols/symbols.h:4
-#: ../share/symbols/symbols.h:281 ../share/symbols/symbols.h:282
msgctxt "Symbol"
-msgid "Telephone"
+msgid "Airport"
msgstr ""
-#. Symbols: ./AigaSymbols.svg
+#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:5 ../share/symbols/symbols.h:6
msgctxt "Symbol"
-msgid "Mail"
+msgid "Amphitheatre"
msgstr ""
-#. Symbols: ./AigaSymbols.svg
+#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:7 ../share/symbols/symbols.h:8
msgctxt "Symbol"
-msgid "Currency Exchange"
+msgid "Bicycle Trail"
msgstr ""
-#. Symbols: ./AigaSymbols.svg
+#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:9 ../share/symbols/symbols.h:10
msgctxt "Symbol"
-msgid "Currency Exchange - Euro"
+msgid "Boat Launch"
msgstr ""
-#. Symbols: ./AigaSymbols.svg
+#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:11 ../share/symbols/symbols.h:12
msgctxt "Symbol"
-msgid "Cashier"
+msgid "Boat Tour"
msgstr ""
-#. Symbols: ./AigaSymbols.svg
#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:13 ../share/symbols/symbols.h:14
-#: ../share/symbols/symbols.h:213 ../share/symbols/symbols.h:214
msgctxt "Symbol"
-msgid "First Aid"
+msgid "Bus Stop"
msgstr ""
-#. Symbols: ./AigaSymbols.svg
+#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:15 ../share/symbols/symbols.h:16
msgctxt "Symbol"
-msgid "Lost and Found"
+msgid "Campfire"
msgstr ""
-#. Symbols: ./AigaSymbols.svg
+#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:17 ../share/symbols/symbols.h:18
msgctxt "Symbol"
-msgid "Coat Check"
+msgid "Campground"
msgstr ""
-#. Symbols: ./AigaSymbols.svg
+#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:19 ../share/symbols/symbols.h:20
msgctxt "Symbol"
-msgid "Baggage Lockers"
+msgid "CanoeAccess"
msgstr ""
-#. Symbols: ./AigaSymbols.svg
+#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:21 ../share/symbols/symbols.h:22
msgctxt "Symbol"
-msgid "Escalator"
+msgid "Crosscountry Ski Trail"
msgstr ""
-#. Symbols: ./AigaSymbols.svg
+#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:23 ../share/symbols/symbols.h:24
msgctxt "Symbol"
-msgid "Escalator Down"
+msgid "Downhill Skiing"
msgstr ""
-#. Symbols: ./AigaSymbols.svg
+#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:25 ../share/symbols/symbols.h:26
msgctxt "Symbol"
-msgid "Escalator Up"
+msgid "Drinking Water"
msgstr ""
+#. Symbols: ./MapSymbolsNPS.svg
#. Symbols: ./AigaSymbols.svg
#: ../share/symbols/symbols.h:27 ../share/symbols/symbols.h:28
+#: ../share/symbols/symbols.h:172 ../share/symbols/symbols.h:173
msgctxt "Symbol"
-msgid "Stairs"
+msgid "First Aid"
msgstr ""
-#. Symbols: ./AigaSymbols.svg
+#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:29 ../share/symbols/symbols.h:30
msgctxt "Symbol"
-msgid "Stairs Down"
+msgid "Fishing"
msgstr ""
-#. Symbols: ./AigaSymbols.svg
+#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:31 ../share/symbols/symbols.h:32
msgctxt "Symbol"
-msgid "Stairs Up"
+msgid "Food Service"
msgstr ""
-#. Symbols: ./AigaSymbols.svg
+#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:33 ../share/symbols/symbols.h:34
msgctxt "Symbol"
-msgid "Elevator"
+msgid "Four Wheel Drive Road"
msgstr ""
-#. Symbols: ./AigaSymbols.svg
+#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:35 ../share/symbols/symbols.h:36
msgctxt "Symbol"
-msgid "Toilets - Men"
+msgid "Gas Station"
msgstr ""
-#. Symbols: ./AigaSymbols.svg
+#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:37 ../share/symbols/symbols.h:38
msgctxt "Symbol"
-msgid "Toilets - Women"
+msgid "Golfing"
msgstr ""
-#. Symbols: ./AigaSymbols.svg
+#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:39 ../share/symbols/symbols.h:40
msgctxt "Symbol"
-msgid "Toilets"
+msgid "Horseback Riding"
msgstr ""
-#. Symbols: ./AigaSymbols.svg
+#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:41 ../share/symbols/symbols.h:42
msgctxt "Symbol"
-msgid "Nursery"
+msgid "Hospital"
msgstr ""
-#. Symbols: ./AigaSymbols.svg
+#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:43 ../share/symbols/symbols.h:44
msgctxt "Symbol"
-msgid "Drinking Fountain"
+msgid "Ice Skating"
msgstr ""
+#. Symbols: ./MapSymbolsNPS.svg
#. Symbols: ./AigaSymbols.svg
#: ../share/symbols/symbols.h:45 ../share/symbols/symbols.h:46
+#: ../share/symbols/symbols.h:206 ../share/symbols/symbols.h:207
msgctxt "Symbol"
-msgid "Waiting Room"
+msgid "Information"
msgstr ""
-#. Symbols: ./AigaSymbols.svg
#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:47 ../share/symbols/symbols.h:48
-#: ../share/symbols/symbols.h:231 ../share/symbols/symbols.h:232
msgctxt "Symbol"
-msgid "Information"
+msgid "Litter Receptacle"
msgstr ""
-#. Symbols: ./AigaSymbols.svg
+#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:49 ../share/symbols/symbols.h:50
msgctxt "Symbol"
-msgid "Hotel Information"
+msgid "Lodging"
msgstr ""
-#. Symbols: ./AigaSymbols.svg
+#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:51 ../share/symbols/symbols.h:52
msgctxt "Symbol"
-msgid "Air Transportation"
+msgid "Marina"
msgstr ""
-#. Symbols: ./AigaSymbols.svg
+#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:53 ../share/symbols/symbols.h:54
msgctxt "Symbol"
-msgid "Heliport"
+msgid "Motorbike Trail"
msgstr ""
-#. Symbols: ./AigaSymbols.svg
+#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:55 ../share/symbols/symbols.h:56
msgctxt "Symbol"
-msgid "Taxi"
+msgid "Radiator Water"
msgstr ""
-#. Symbols: ./AigaSymbols.svg
+#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:57 ../share/symbols/symbols.h:58
msgctxt "Symbol"
-msgid "Bus"
+msgid "Recycling"
msgstr ""
+#. Symbols: ./MapSymbolsNPS.svg
#. Symbols: ./AigaSymbols.svg
#: ../share/symbols/symbols.h:59 ../share/symbols/symbols.h:60
+#: ../share/symbols/symbols.h:258 ../share/symbols/symbols.h:259
msgctxt "Symbol"
-msgid "Ground Transportation"
+msgid "Parking"
msgstr ""
-#. Symbols: ./AigaSymbols.svg
+#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:61 ../share/symbols/symbols.h:62
msgctxt "Symbol"
-msgid "Rail Transportation"
+msgid "Pets On Leash"
msgstr ""
-#. Symbols: ./AigaSymbols.svg
+#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:63 ../share/symbols/symbols.h:64
msgctxt "Symbol"
-msgid "Water Transportation"
+msgid "Picnic Area"
msgstr ""
-#. Symbols: ./AigaSymbols.svg
+#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:65 ../share/symbols/symbols.h:66
msgctxt "Symbol"
-msgid "Car Rental"
+msgid "Post Office"
msgstr ""
-#. Symbols: ./AigaSymbols.svg
+#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:67 ../share/symbols/symbols.h:68
msgctxt "Symbol"
-msgid "Restaurant"
+msgid "Ranger Station"
msgstr ""
-#. Symbols: ./AigaSymbols.svg
+#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:69 ../share/symbols/symbols.h:70
msgctxt "Symbol"
-msgid "Coffeeshop"
+msgid "RV Campground"
msgstr ""
-#. Symbols: ./AigaSymbols.svg
+#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:71 ../share/symbols/symbols.h:72
msgctxt "Symbol"
-msgid "Bar"
+msgid "Restrooms"
msgstr ""
-#. Symbols: ./AigaSymbols.svg
+#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:73 ../share/symbols/symbols.h:74
msgctxt "Symbol"
-msgid "Shops"
+msgid "Sailing"
msgstr ""
-#. Symbols: ./AigaSymbols.svg
+#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:75 ../share/symbols/symbols.h:76
msgctxt "Symbol"
-msgid "Barber Shop - Beauty Salon"
+msgid "Sanitary Disposal Station"
msgstr ""
-#. Symbols: ./AigaSymbols.svg
+#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:77 ../share/symbols/symbols.h:78
msgctxt "Symbol"
-msgid "Barber Shop"
+msgid "Scuba Diving"
msgstr ""
-#. Symbols: ./AigaSymbols.svg
+#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:79 ../share/symbols/symbols.h:80
msgctxt "Symbol"
-msgid "Beauty Salon"
+msgid "Self Guided Trail"
msgstr ""
-#. Symbols: ./AigaSymbols.svg
+#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:81 ../share/symbols/symbols.h:82
msgctxt "Symbol"
-msgid "Ticket Purchase"
+msgid "Shelter"
msgstr ""
-#. Symbols: ./AigaSymbols.svg
+#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:83 ../share/symbols/symbols.h:84
msgctxt "Symbol"
-msgid "Baggage Check In"
+msgid "Showers"
msgstr ""
-#. Symbols: ./AigaSymbols.svg
+#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:85 ../share/symbols/symbols.h:86
msgctxt "Symbol"
-msgid "Baggage Claim"
+msgid "Sledding"
msgstr ""
-#. Symbols: ./AigaSymbols.svg
+#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:87 ../share/symbols/symbols.h:88
msgctxt "Symbol"
-msgid "Customs"
+msgid "SnowmobileTrail"
msgstr ""
-#. Symbols: ./AigaSymbols.svg
+#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:89 ../share/symbols/symbols.h:90
msgctxt "Symbol"
-msgid "Immigration"
+msgid "Stable"
msgstr ""
-#. Symbols: ./AigaSymbols.svg
+#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:91 ../share/symbols/symbols.h:92
msgctxt "Symbol"
-msgid "Departing Flights"
+msgid "Store"
msgstr ""
-#. Symbols: ./AigaSymbols.svg
+#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:93 ../share/symbols/symbols.h:94
msgctxt "Symbol"
-msgid "Arriving Flights"
+msgid "Swimming"
msgstr ""
+#. Symbols: ./MapSymbolsNPS.svg
#. Symbols: ./AigaSymbols.svg
#: ../share/symbols/symbols.h:95 ../share/symbols/symbols.h:96
+#: ../share/symbols/symbols.h:162 ../share/symbols/symbols.h:163
msgctxt "Symbol"
-msgid "Smoking"
+msgid "Telephone"
msgstr ""
-#. Symbols: ./AigaSymbols.svg
+#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:97 ../share/symbols/symbols.h:98
msgctxt "Symbol"
-msgid "No Smoking"
+msgid "Emergency Telephone"
msgstr ""
-#. Symbols: ./AigaSymbols.svg
#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:99 ../share/symbols/symbols.h:100
-#: ../share/symbols/symbols.h:245 ../share/symbols/symbols.h:246
msgctxt "Symbol"
-msgid "Parking"
+msgid "Trailhead"
msgstr ""
-#. Symbols: ./AigaSymbols.svg
+#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:101 ../share/symbols/symbols.h:102
msgctxt "Symbol"
-msgid "No Parking"
+msgid "Wheelchair Accessible"
msgstr ""
-#. Symbols: ./AigaSymbols.svg
+#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:103 ../share/symbols/symbols.h:104
msgctxt "Symbol"
-msgid "No Dogs"
-msgstr ""
-
-#. Symbols: ./AigaSymbols.svg
-#: ../share/symbols/symbols.h:105 ../share/symbols/symbols.h:106
-msgctxt "Symbol"
-msgid "No Entry"
-msgstr ""
-
-#. Symbols: ./AigaSymbols.svg
-#: ../share/symbols/symbols.h:107 ../share/symbols/symbols.h:108
-msgctxt "Symbol"
-msgid "Exit"
-msgstr ""
-
-#. Symbols: ./AigaSymbols.svg
-#: ../share/symbols/symbols.h:109 ../share/symbols/symbols.h:110
-msgctxt "Symbol"
-msgid "Fire Extinguisher"
-msgstr ""
-
-#. Symbols: ./AigaSymbols.svg
-#: ../share/symbols/symbols.h:111 ../share/symbols/symbols.h:112
-msgctxt "Symbol"
-msgid "Right Arrow"
-msgstr ""
-
-#. Symbols: ./AigaSymbols.svg
-#: ../share/symbols/symbols.h:113 ../share/symbols/symbols.h:114
-msgctxt "Symbol"
-msgid "Forward and Right Arrow"
-msgstr ""
-
-#. Symbols: ./AigaSymbols.svg
-#: ../share/symbols/symbols.h:115 ../share/symbols/symbols.h:116
-msgctxt "Symbol"
-msgid "Up Arrow"
-msgstr ""
-
-#. Symbols: ./AigaSymbols.svg
-#: ../share/symbols/symbols.h:117 ../share/symbols/symbols.h:118
-msgctxt "Symbol"
-msgid "Forward and Left Arrow"
-msgstr ""
-
-#. Symbols: ./AigaSymbols.svg
-#: ../share/symbols/symbols.h:119 ../share/symbols/symbols.h:120
-msgctxt "Symbol"
-msgid "Left Arrow"
-msgstr ""
-
-#. Symbols: ./AigaSymbols.svg
-#: ../share/symbols/symbols.h:121 ../share/symbols/symbols.h:122
-msgctxt "Symbol"
-msgid "Left and Down Arrow"
-msgstr ""
-
-#. Symbols: ./AigaSymbols.svg
-#: ../share/symbols/symbols.h:123 ../share/symbols/symbols.h:124
-msgctxt "Symbol"
-msgid "Down Arrow"
-msgstr ""
-
-#. Symbols: ./AigaSymbols.svg
-#: ../share/symbols/symbols.h:125 ../share/symbols/symbols.h:126
-msgctxt "Symbol"
-msgid "Right and Down Arrow"
-msgstr ""
-
-#. Symbols: ./AigaSymbols.svg
-#: ../share/symbols/symbols.h:127 ../share/symbols/symbols.h:128
-msgctxt "Symbol"
-msgid "NPS Wheelchair Accessible - 1996"
-msgstr ""
-
-#. Symbols: ./AigaSymbols.svg
-#: ../share/symbols/symbols.h:129 ../share/symbols/symbols.h:130
-msgctxt "Symbol"
-msgid "NPS Wheelchair Accessible"
-msgstr ""
-
-#. Symbols: ./AigaSymbols.svg
-#: ../share/symbols/symbols.h:131 ../share/symbols/symbols.h:132
-msgctxt "Symbol"
-msgid "New Wheelchair Accessible"
-msgstr ""
-
-#. Symbols: ./BalloonSymbols.svg
-#: ../share/symbols/symbols.h:133
-msgctxt "Symbol"
-msgid "Word Balloons"
-msgstr ""
-
-#. Symbols: ./BalloonSymbols.svg
-#: ../share/symbols/symbols.h:134
-msgctxt "Symbol"
-msgid "Thought Balloon"
-msgstr ""
-
-#. Symbols: ./BalloonSymbols.svg
-#: ../share/symbols/symbols.h:135
-msgctxt "Symbol"
-msgid "Dream Speaking"
-msgstr ""
-
-#. Symbols: ./BalloonSymbols.svg
-#: ../share/symbols/symbols.h:136
-msgctxt "Symbol"
-msgid "Rounded Balloon"
-msgstr ""
-
-#. Symbols: ./BalloonSymbols.svg
-#: ../share/symbols/symbols.h:137
-msgctxt "Symbol"
-msgid "Squared Balloon"
-msgstr ""
-
-#. Symbols: ./BalloonSymbols.svg
-#: ../share/symbols/symbols.h:138
-msgctxt "Symbol"
-msgid "Over the Phone"
-msgstr ""
-
-#. Symbols: ./BalloonSymbols.svg
-#: ../share/symbols/symbols.h:139
-msgctxt "Symbol"
-msgid "Hip Balloon"
-msgstr ""
-
-#. Symbols: ./BalloonSymbols.svg
-#: ../share/symbols/symbols.h:140
-msgctxt "Symbol"
-msgid "Circle Balloon"
+msgid "Wind Surfing"
msgstr ""
-#. Symbols: ./BalloonSymbols.svg
-#: ../share/symbols/symbols.h:141
+#. Symbols: ./MapSymbolsNPS.svg
+#: ../share/symbols/symbols.h:105
msgctxt "Symbol"
-msgid "Exclaim Balloon"
+msgid "Blank"
msgstr ""
#. Symbols: ./FlowSymbols.svg
-#: ../share/symbols/symbols.h:142
+#: ../share/symbols/symbols.h:106
msgctxt "Symbol"
msgid "Flow Chart Shapes"
msgstr ""
#. Symbols: ./FlowSymbols.svg
-#: ../share/symbols/symbols.h:143
+#: ../share/symbols/symbols.h:107
msgctxt "Symbol"
msgid "Process"
msgstr ""
#. Symbols: ./FlowSymbols.svg
-#: ../share/symbols/symbols.h:144
+#: ../share/symbols/symbols.h:108
msgctxt "Symbol"
msgid "Input/Output"
msgstr ""
#. Symbols: ./FlowSymbols.svg
-#: ../share/symbols/symbols.h:145
+#: ../share/symbols/symbols.h:109
msgctxt "Symbol"
msgid "Document"
msgstr ""
#. Symbols: ./FlowSymbols.svg
-#: ../share/symbols/symbols.h:146
+#: ../share/symbols/symbols.h:110
msgctxt "Symbol"
msgid "Manual Operation"
msgstr ""
#. Symbols: ./FlowSymbols.svg
-#: ../share/symbols/symbols.h:147
+#: ../share/symbols/symbols.h:111
msgctxt "Symbol"
msgid "Preparation"
msgstr ""
#. Symbols: ./FlowSymbols.svg
-#: ../share/symbols/symbols.h:148
+#: ../share/symbols/symbols.h:112
msgctxt "Symbol"
msgid "Merge"
msgstr ""
#. Symbols: ./FlowSymbols.svg
-#: ../share/symbols/symbols.h:149
+#: ../share/symbols/symbols.h:113
msgctxt "Symbol"
msgid "Decision"
msgstr ""
#. Symbols: ./FlowSymbols.svg
-#: ../share/symbols/symbols.h:150
+#: ../share/symbols/symbols.h:114
msgctxt "Symbol"
msgid "Magnetic Tape"
msgstr ""
#. Symbols: ./FlowSymbols.svg
-#: ../share/symbols/symbols.h:151
+#: ../share/symbols/symbols.h:115
msgctxt "Symbol"
msgid "Display"
msgstr ""
#. Symbols: ./FlowSymbols.svg
-#: ../share/symbols/symbols.h:152
+#: ../share/symbols/symbols.h:116
msgctxt "Symbol"
msgid "Auxiliary Operation"
msgstr ""
#. Symbols: ./FlowSymbols.svg
-#: ../share/symbols/symbols.h:153
+#: ../share/symbols/symbols.h:117
msgctxt "Symbol"
msgid "Manual Input"
msgstr ""
#. Symbols: ./FlowSymbols.svg
-#: ../share/symbols/symbols.h:154
+#: ../share/symbols/symbols.h:118
msgctxt "Symbol"
msgid "Extract"
msgstr ""
#. Symbols: ./FlowSymbols.svg
-#: ../share/symbols/symbols.h:155
+#: ../share/symbols/symbols.h:119
msgctxt "Symbol"
msgid "Terminal/Interrupt"
msgstr ""
#. Symbols: ./FlowSymbols.svg
-#: ../share/symbols/symbols.h:156
+#: ../share/symbols/symbols.h:120
msgctxt "Symbol"
msgid "Punched Card"
msgstr ""
#. Symbols: ./FlowSymbols.svg
-#: ../share/symbols/symbols.h:157
+#: ../share/symbols/symbols.h:121
msgctxt "Symbol"
msgid "Punch Tape"
msgstr ""
#. Symbols: ./FlowSymbols.svg
-#: ../share/symbols/symbols.h:158
+#: ../share/symbols/symbols.h:122
msgctxt "Symbol"
msgid "Online Storage"
msgstr ""
#. Symbols: ./FlowSymbols.svg
-#: ../share/symbols/symbols.h:159
+#: ../share/symbols/symbols.h:123
msgctxt "Symbol"
msgid "Keying"
msgstr ""
#. Symbols: ./FlowSymbols.svg
-#: ../share/symbols/symbols.h:160
+#: ../share/symbols/symbols.h:124
msgctxt "Symbol"
msgid "Sort"
msgstr ""
#. Symbols: ./FlowSymbols.svg
-#: ../share/symbols/symbols.h:161
+#: ../share/symbols/symbols.h:125
msgctxt "Symbol"
msgid "Connector"
msgstr ""
#. Symbols: ./FlowSymbols.svg
-#: ../share/symbols/symbols.h:162
+#: ../share/symbols/symbols.h:126
msgctxt "Symbol"
msgid "Off-Page Connector"
msgstr ""
#. Symbols: ./FlowSymbols.svg
-#: ../share/symbols/symbols.h:163
+#: ../share/symbols/symbols.h:127
msgctxt "Symbol"
msgid "Transmittal Tape"
msgstr ""
#. Symbols: ./FlowSymbols.svg
-#: ../share/symbols/symbols.h:164
+#: ../share/symbols/symbols.h:128
msgctxt "Symbol"
msgid "Communication Link"
msgstr ""
#. Symbols: ./FlowSymbols.svg
-#: ../share/symbols/symbols.h:165
+#: ../share/symbols/symbols.h:129
msgctxt "Symbol"
msgid "Collate"
msgstr ""
#. Symbols: ./FlowSymbols.svg
-#: ../share/symbols/symbols.h:166
+#: ../share/symbols/symbols.h:130
msgctxt "Symbol"
msgid "Comment/Annotation"
msgstr ""
#. Symbols: ./FlowSymbols.svg
-#: ../share/symbols/symbols.h:167
+#: ../share/symbols/symbols.h:131
msgctxt "Symbol"
msgid "Core"
msgstr ""
#. Symbols: ./FlowSymbols.svg
-#: ../share/symbols/symbols.h:168
+#: ../share/symbols/symbols.h:132
msgctxt "Symbol"
msgid "Predefined Process"
msgstr ""
#. Symbols: ./FlowSymbols.svg
-#: ../share/symbols/symbols.h:169
+#: ../share/symbols/symbols.h:133
msgctxt "Symbol"
msgid "Magnetic Disk (Database)"
msgstr ""
#. Symbols: ./FlowSymbols.svg
-#: ../share/symbols/symbols.h:170
+#: ../share/symbols/symbols.h:134
msgctxt "Symbol"
msgid "Magnetic Drum (Direct Access)"
msgstr ""
#. Symbols: ./FlowSymbols.svg
-#: ../share/symbols/symbols.h:171
+#: ../share/symbols/symbols.h:135
msgctxt "Symbol"
msgid "Offline Storage"
msgstr ""
#. Symbols: ./FlowSymbols.svg
-#: ../share/symbols/symbols.h:172
+#: ../share/symbols/symbols.h:136
msgctxt "Symbol"
msgid "Logical Or"
msgstr ""
#. Symbols: ./FlowSymbols.svg
-#: ../share/symbols/symbols.h:173
+#: ../share/symbols/symbols.h:137
msgctxt "Symbol"
msgid "Logical And"
msgstr ""
#. Symbols: ./FlowSymbols.svg
-#: ../share/symbols/symbols.h:174
+#: ../share/symbols/symbols.h:138
msgctxt "Symbol"
msgid "Delay"
msgstr ""
#. Symbols: ./FlowSymbols.svg
-#: ../share/symbols/symbols.h:175
+#: ../share/symbols/symbols.h:139
msgctxt "Symbol"
msgid "Loop Limit Begin"
msgstr ""
#. Symbols: ./FlowSymbols.svg
-#: ../share/symbols/symbols.h:176
+#: ../share/symbols/symbols.h:140
msgctxt "Symbol"
msgid "Loop Limit End"
msgstr ""
+#. Symbols: ./BalloonSymbols.svg
+#: ../share/symbols/symbols.h:141
+msgctxt "Symbol"
+msgid "Word Balloons"
+msgstr ""
+
+#. Symbols: ./BalloonSymbols.svg
+#: ../share/symbols/symbols.h:142
+msgctxt "Symbol"
+msgid "Thought Balloon"
+msgstr ""
+
+#. Symbols: ./BalloonSymbols.svg
+#: ../share/symbols/symbols.h:143
+msgctxt "Symbol"
+msgid "Dream Speaking"
+msgstr ""
+
+#. Symbols: ./BalloonSymbols.svg
+#: ../share/symbols/symbols.h:144
+msgctxt "Symbol"
+msgid "Rounded Balloon"
+msgstr ""
+
+#. Symbols: ./BalloonSymbols.svg
+#: ../share/symbols/symbols.h:145
+msgctxt "Symbol"
+msgid "Squared Balloon"
+msgstr ""
+
+#. Symbols: ./BalloonSymbols.svg
+#: ../share/symbols/symbols.h:146
+msgctxt "Symbol"
+msgid "Over the Phone"
+msgstr ""
+
+#. Symbols: ./BalloonSymbols.svg
+#: ../share/symbols/symbols.h:147
+msgctxt "Symbol"
+msgid "Hip Balloon"
+msgstr ""
+
+#. Symbols: ./BalloonSymbols.svg
+#: ../share/symbols/symbols.h:148
+msgctxt "Symbol"
+msgid "Circle Balloon"
+msgstr ""
+
+#. Symbols: ./BalloonSymbols.svg
+#: ../share/symbols/symbols.h:149
+msgctxt "Symbol"
+msgid "Exclaim Balloon"
+msgstr ""
+
#. Symbols: ./LogicSymbols.svg
-#: ../share/symbols/symbols.h:177
+#: ../share/symbols/symbols.h:150
msgctxt "Symbol"
msgid "Logic Symbols"
msgstr ""
#. Symbols: ./LogicSymbols.svg
-#: ../share/symbols/symbols.h:178
+#: ../share/symbols/symbols.h:151
msgctxt "Symbol"
msgid "Xnor Gate"
msgstr ""
#. Symbols: ./LogicSymbols.svg
-#: ../share/symbols/symbols.h:179
+#: ../share/symbols/symbols.h:152
msgctxt "Symbol"
msgid "Xor Gate"
msgstr ""
#. Symbols: ./LogicSymbols.svg
-#: ../share/symbols/symbols.h:180
+#: ../share/symbols/symbols.h:153
msgctxt "Symbol"
msgid "Nor Gate"
msgstr ""
#. Symbols: ./LogicSymbols.svg
-#: ../share/symbols/symbols.h:181
+#: ../share/symbols/symbols.h:154
msgctxt "Symbol"
msgid "Or Gate"
msgstr ""
#. Symbols: ./LogicSymbols.svg
-#: ../share/symbols/symbols.h:182
+#: ../share/symbols/symbols.h:155
msgctxt "Symbol"
msgid "Nand Gate"
msgstr ""
#. Symbols: ./LogicSymbols.svg
-#: ../share/symbols/symbols.h:183
+#: ../share/symbols/symbols.h:156
msgctxt "Symbol"
msgid "And Gate"
msgstr ""
#. Symbols: ./LogicSymbols.svg
-#: ../share/symbols/symbols.h:184
+#: ../share/symbols/symbols.h:157
msgctxt "Symbol"
msgid "Buffer"
msgstr ""
#. Symbols: ./LogicSymbols.svg
-#: ../share/symbols/symbols.h:185
+#: ../share/symbols/symbols.h:158
msgctxt "Symbol"
msgid "Not Gate"
msgstr ""
#. Symbols: ./LogicSymbols.svg
-#: ../share/symbols/symbols.h:186
+#: ../share/symbols/symbols.h:159
msgctxt "Symbol"
msgid "Buffer Small"
msgstr ""
#. Symbols: ./LogicSymbols.svg
-#: ../share/symbols/symbols.h:187
+#: ../share/symbols/symbols.h:160
msgctxt "Symbol"
msgid "Not Gate Small"
msgstr ""
-#. Symbols: ./MapSymbolsNPS.svg
-#: ../share/symbols/symbols.h:188
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:161
msgctxt "Symbol"
-msgid "United States National Park Service Map Symbols"
+msgid "AIGA Symbol Signs"
msgstr ""
-#. Symbols: ./MapSymbolsNPS.svg
-#: ../share/symbols/symbols.h:189 ../share/symbols/symbols.h:190
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:164 ../share/symbols/symbols.h:165
msgctxt "Symbol"
-msgid "Airport"
+msgid "Mail"
msgstr ""
-#. Symbols: ./MapSymbolsNPS.svg
-#: ../share/symbols/symbols.h:191 ../share/symbols/symbols.h:192
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:166 ../share/symbols/symbols.h:167
msgctxt "Symbol"
-msgid "Amphitheatre"
+msgid "Currency Exchange"
msgstr ""
-#. Symbols: ./MapSymbolsNPS.svg
-#: ../share/symbols/symbols.h:193 ../share/symbols/symbols.h:194
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:168 ../share/symbols/symbols.h:169
msgctxt "Symbol"
-msgid "Bicycle Trail"
+msgid "Currency Exchange - Euro"
msgstr ""
-#. Symbols: ./MapSymbolsNPS.svg
-#: ../share/symbols/symbols.h:195 ../share/symbols/symbols.h:196
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:170 ../share/symbols/symbols.h:171
msgctxt "Symbol"
-msgid "Boat Launch"
+msgid "Cashier"
msgstr ""
-#. Symbols: ./MapSymbolsNPS.svg
-#: ../share/symbols/symbols.h:197 ../share/symbols/symbols.h:198
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:174 ../share/symbols/symbols.h:175
msgctxt "Symbol"
-msgid "Boat Tour"
+msgid "Lost and Found"
msgstr ""
-#. Symbols: ./MapSymbolsNPS.svg
-#: ../share/symbols/symbols.h:199 ../share/symbols/symbols.h:200
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:176 ../share/symbols/symbols.h:177
msgctxt "Symbol"
-msgid "Bus Stop"
+msgid "Coat Check"
msgstr ""
-#. Symbols: ./MapSymbolsNPS.svg
-#: ../share/symbols/symbols.h:201 ../share/symbols/symbols.h:202
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:178 ../share/symbols/symbols.h:179
msgctxt "Symbol"
-msgid "Campfire"
+msgid "Baggage Lockers"
msgstr ""
-#. Symbols: ./MapSymbolsNPS.svg
-#: ../share/symbols/symbols.h:203 ../share/symbols/symbols.h:204
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:180 ../share/symbols/symbols.h:181
msgctxt "Symbol"
-msgid "Campground"
+msgid "Escalator"
msgstr ""
-#. Symbols: ./MapSymbolsNPS.svg
-#: ../share/symbols/symbols.h:205 ../share/symbols/symbols.h:206
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:182 ../share/symbols/symbols.h:183
msgctxt "Symbol"
-msgid "CanoeAccess"
+msgid "Escalator Down"
msgstr ""
-#. Symbols: ./MapSymbolsNPS.svg
-#: ../share/symbols/symbols.h:207 ../share/symbols/symbols.h:208
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:184 ../share/symbols/symbols.h:185
msgctxt "Symbol"
-msgid "Crosscountry Ski Trail"
+msgid "Escalator Up"
msgstr ""
-#. Symbols: ./MapSymbolsNPS.svg
-#: ../share/symbols/symbols.h:209 ../share/symbols/symbols.h:210
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:186 ../share/symbols/symbols.h:187
msgctxt "Symbol"
-msgid "Downhill Skiing"
+msgid "Stairs"
msgstr ""
-#. Symbols: ./MapSymbolsNPS.svg
-#: ../share/symbols/symbols.h:211 ../share/symbols/symbols.h:212
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:188 ../share/symbols/symbols.h:189
msgctxt "Symbol"
-msgid "Drinking Water"
+msgid "Stairs Down"
msgstr ""
-#. Symbols: ./MapSymbolsNPS.svg
-#: ../share/symbols/symbols.h:215 ../share/symbols/symbols.h:216
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:190 ../share/symbols/symbols.h:191
msgctxt "Symbol"
-msgid "Fishing"
+msgid "Stairs Up"
msgstr ""
-#. Symbols: ./MapSymbolsNPS.svg
-#: ../share/symbols/symbols.h:217 ../share/symbols/symbols.h:218
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:192 ../share/symbols/symbols.h:193
msgctxt "Symbol"
-msgid "Food Service"
+msgid "Elevator"
msgstr ""
-#. Symbols: ./MapSymbolsNPS.svg
-#: ../share/symbols/symbols.h:219 ../share/symbols/symbols.h:220
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:194 ../share/symbols/symbols.h:195
msgctxt "Symbol"
-msgid "Four Wheel Drive Road"
+msgid "Toilets - Men"
msgstr ""
-#. Symbols: ./MapSymbolsNPS.svg
-#: ../share/symbols/symbols.h:221 ../share/symbols/symbols.h:222
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:196 ../share/symbols/symbols.h:197
msgctxt "Symbol"
-msgid "Gas Station"
+msgid "Toilets - Women"
msgstr ""
-#. Symbols: ./MapSymbolsNPS.svg
-#: ../share/symbols/symbols.h:223 ../share/symbols/symbols.h:224
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:198 ../share/symbols/symbols.h:199
msgctxt "Symbol"
-msgid "Golfing"
+msgid "Toilets"
msgstr ""
-#. Symbols: ./MapSymbolsNPS.svg
-#: ../share/symbols/symbols.h:225 ../share/symbols/symbols.h:226
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:200 ../share/symbols/symbols.h:201
msgctxt "Symbol"
-msgid "Horseback Riding"
+msgid "Nursery"
msgstr ""
-#. Symbols: ./MapSymbolsNPS.svg
-#: ../share/symbols/symbols.h:227 ../share/symbols/symbols.h:228
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:202 ../share/symbols/symbols.h:203
msgctxt "Symbol"
-msgid "Hospital"
+msgid "Drinking Fountain"
msgstr ""
-#. Symbols: ./MapSymbolsNPS.svg
-#: ../share/symbols/symbols.h:229 ../share/symbols/symbols.h:230
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:204 ../share/symbols/symbols.h:205
msgctxt "Symbol"
-msgid "Ice Skating"
+msgid "Waiting Room"
msgstr ""
-#. Symbols: ./MapSymbolsNPS.svg
-#: ../share/symbols/symbols.h:233 ../share/symbols/symbols.h:234
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:208 ../share/symbols/symbols.h:209
msgctxt "Symbol"
-msgid "Litter Receptacle"
+msgid "Hotel Information"
msgstr ""
-#. Symbols: ./MapSymbolsNPS.svg
-#: ../share/symbols/symbols.h:235 ../share/symbols/symbols.h:236
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:210 ../share/symbols/symbols.h:211
msgctxt "Symbol"
-msgid "Lodging"
+msgid "Air Transportation"
msgstr ""
-#. Symbols: ./MapSymbolsNPS.svg
-#: ../share/symbols/symbols.h:237 ../share/symbols/symbols.h:238
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:212 ../share/symbols/symbols.h:213
msgctxt "Symbol"
-msgid "Marina"
+msgid "Heliport"
msgstr ""
-#. Symbols: ./MapSymbolsNPS.svg
-#: ../share/symbols/symbols.h:239 ../share/symbols/symbols.h:240
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:214 ../share/symbols/symbols.h:215
msgctxt "Symbol"
-msgid "Motorbike Trail"
+msgid "Taxi"
msgstr ""
-#. Symbols: ./MapSymbolsNPS.svg
-#: ../share/symbols/symbols.h:241 ../share/symbols/symbols.h:242
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:216 ../share/symbols/symbols.h:217
msgctxt "Symbol"
-msgid "Radiator Water"
+msgid "Bus"
msgstr ""
-#. Symbols: ./MapSymbolsNPS.svg
-#: ../share/symbols/symbols.h:243 ../share/symbols/symbols.h:244
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:218 ../share/symbols/symbols.h:219
msgctxt "Symbol"
-msgid "Recycling"
+msgid "Ground Transportation"
msgstr ""
-#. Symbols: ./MapSymbolsNPS.svg
-#: ../share/symbols/symbols.h:247 ../share/symbols/symbols.h:248
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:220 ../share/symbols/symbols.h:221
msgctxt "Symbol"
-msgid "Pets On Leash"
+msgid "Rail Transportation"
msgstr ""
-#. Symbols: ./MapSymbolsNPS.svg
-#: ../share/symbols/symbols.h:249 ../share/symbols/symbols.h:250
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:222 ../share/symbols/symbols.h:223
msgctxt "Symbol"
-msgid "Picnic Area"
+msgid "Water Transportation"
msgstr ""
-#. Symbols: ./MapSymbolsNPS.svg
-#: ../share/symbols/symbols.h:251 ../share/symbols/symbols.h:252
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:224 ../share/symbols/symbols.h:225
msgctxt "Symbol"
-msgid "Post Office"
+msgid "Car Rental"
msgstr ""
-#. Symbols: ./MapSymbolsNPS.svg
-#: ../share/symbols/symbols.h:253 ../share/symbols/symbols.h:254
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:226 ../share/symbols/symbols.h:227
msgctxt "Symbol"
-msgid "Ranger Station"
+msgid "Restaurant"
msgstr ""
-#. Symbols: ./MapSymbolsNPS.svg
-#: ../share/symbols/symbols.h:255 ../share/symbols/symbols.h:256
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:228 ../share/symbols/symbols.h:229
msgctxt "Symbol"
-msgid "RV Campground"
+msgid "Coffeeshop"
msgstr ""
-#. Symbols: ./MapSymbolsNPS.svg
-#: ../share/symbols/symbols.h:257 ../share/symbols/symbols.h:258
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:230 ../share/symbols/symbols.h:231
msgctxt "Symbol"
-msgid "Restrooms"
+msgid "Bar"
msgstr ""
-#. Symbols: ./MapSymbolsNPS.svg
-#: ../share/symbols/symbols.h:259 ../share/symbols/symbols.h:260
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:232 ../share/symbols/symbols.h:233
msgctxt "Symbol"
-msgid "Sailing"
+msgid "Shops"
msgstr ""
-#. Symbols: ./MapSymbolsNPS.svg
-#: ../share/symbols/symbols.h:261 ../share/symbols/symbols.h:262
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:234 ../share/symbols/symbols.h:235
msgctxt "Symbol"
-msgid "Sanitary Disposal Station"
+msgid "Barber Shop - Beauty Salon"
msgstr ""
-#. Symbols: ./MapSymbolsNPS.svg
-#: ../share/symbols/symbols.h:263 ../share/symbols/symbols.h:264
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:236 ../share/symbols/symbols.h:237
msgctxt "Symbol"
-msgid "Scuba Diving"
+msgid "Barber Shop"
msgstr ""
-#. Symbols: ./MapSymbolsNPS.svg
-#: ../share/symbols/symbols.h:265 ../share/symbols/symbols.h:266
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:238 ../share/symbols/symbols.h:239
msgctxt "Symbol"
-msgid "Self Guided Trail"
+msgid "Beauty Salon"
msgstr ""
-#. Symbols: ./MapSymbolsNPS.svg
-#: ../share/symbols/symbols.h:267 ../share/symbols/symbols.h:268
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:240 ../share/symbols/symbols.h:241
msgctxt "Symbol"
-msgid "Shelter"
+msgid "Ticket Purchase"
msgstr ""
-#. Symbols: ./MapSymbolsNPS.svg
-#: ../share/symbols/symbols.h:269 ../share/symbols/symbols.h:270
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:242 ../share/symbols/symbols.h:243
msgctxt "Symbol"
-msgid "Showers"
+msgid "Baggage Check In"
msgstr ""
-#. Symbols: ./MapSymbolsNPS.svg
-#: ../share/symbols/symbols.h:271 ../share/symbols/symbols.h:272
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:244 ../share/symbols/symbols.h:245
msgctxt "Symbol"
-msgid "Sledding"
+msgid "Baggage Claim"
msgstr ""
-#. Symbols: ./MapSymbolsNPS.svg
-#: ../share/symbols/symbols.h:273 ../share/symbols/symbols.h:274
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:246 ../share/symbols/symbols.h:247
msgctxt "Symbol"
-msgid "SnowmobileTrail"
+msgid "Customs"
msgstr ""
-#. Symbols: ./MapSymbolsNPS.svg
-#: ../share/symbols/symbols.h:275 ../share/symbols/symbols.h:276
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:248 ../share/symbols/symbols.h:249
msgctxt "Symbol"
-msgid "Stable"
+msgid "Immigration"
msgstr ""
-#. Symbols: ./MapSymbolsNPS.svg
-#: ../share/symbols/symbols.h:277 ../share/symbols/symbols.h:278
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:250 ../share/symbols/symbols.h:251
msgctxt "Symbol"
-msgid "Store"
+msgid "Departing Flights"
msgstr ""
-#. Symbols: ./MapSymbolsNPS.svg
-#: ../share/symbols/symbols.h:279 ../share/symbols/symbols.h:280
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:252 ../share/symbols/symbols.h:253
msgctxt "Symbol"
-msgid "Swimming"
+msgid "Arriving Flights"
msgstr ""
-#. Symbols: ./MapSymbolsNPS.svg
-#: ../share/symbols/symbols.h:283 ../share/symbols/symbols.h:284
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:254 ../share/symbols/symbols.h:255
msgctxt "Symbol"
-msgid "Emergency Telephone"
+msgid "Smoking"
msgstr ""
-#. Symbols: ./MapSymbolsNPS.svg
-#: ../share/symbols/symbols.h:285 ../share/symbols/symbols.h:286
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:256 ../share/symbols/symbols.h:257
msgctxt "Symbol"
-msgid "Trailhead"
+msgid "No Smoking"
msgstr ""
-#. Symbols: ./MapSymbolsNPS.svg
-#: ../share/symbols/symbols.h:287 ../share/symbols/symbols.h:288
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:260 ../share/symbols/symbols.h:261
msgctxt "Symbol"
-msgid "Wheelchair Accessible"
+msgid "No Parking"
msgstr ""
-#. Symbols: ./MapSymbolsNPS.svg
-#: ../share/symbols/symbols.h:289 ../share/symbols/symbols.h:290
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:262 ../share/symbols/symbols.h:263
msgctxt "Symbol"
-msgid "Wind Surfing"
+msgid "No Dogs"
msgstr ""
-#. Symbols: ./MapSymbolsNPS.svg
-#: ../share/symbols/symbols.h:291
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:264 ../share/symbols/symbols.h:265
msgctxt "Symbol"
-msgid "Blank"
+msgid "No Entry"
+msgstr ""
+
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:266 ../share/symbols/symbols.h:267
+msgctxt "Symbol"
+msgid "Exit"
+msgstr ""
+
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:268 ../share/symbols/symbols.h:269
+msgctxt "Symbol"
+msgid "Fire Extinguisher"
+msgstr ""
+
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:270 ../share/symbols/symbols.h:271
+msgctxt "Symbol"
+msgid "Right Arrow"
+msgstr ""
+
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:272 ../share/symbols/symbols.h:273
+msgctxt "Symbol"
+msgid "Forward and Right Arrow"
+msgstr ""
+
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:274 ../share/symbols/symbols.h:275
+msgctxt "Symbol"
+msgid "Up Arrow"
+msgstr ""
+
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:276 ../share/symbols/symbols.h:277
+msgctxt "Symbol"
+msgid "Forward and Left Arrow"
+msgstr ""
+
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:278 ../share/symbols/symbols.h:279
+msgctxt "Symbol"
+msgid "Left Arrow"
+msgstr ""
+
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:280 ../share/symbols/symbols.h:281
+msgctxt "Symbol"
+msgid "Left and Down Arrow"
+msgstr ""
+
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:282 ../share/symbols/symbols.h:283
+msgctxt "Symbol"
+msgid "Down Arrow"
+msgstr ""
+
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:284 ../share/symbols/symbols.h:285
+msgctxt "Symbol"
+msgid "Right and Down Arrow"
+msgstr ""
+
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:286 ../share/symbols/symbols.h:287
+msgctxt "Symbol"
+msgid "NPS Wheelchair Accessible - 1996"
+msgstr ""
+
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:288 ../share/symbols/symbols.h:289
+msgctxt "Symbol"
+msgid "NPS Wheelchair Accessible"
+msgstr ""
+
+#. Symbols: ./AigaSymbols.svg
+#: ../share/symbols/symbols.h:290 ../share/symbols/symbols.h:291
+msgctxt "Symbol"
+msgid "New Wheelchair Accessible"
msgstr ""
#: ../share/templates/templates.h:1
@@ -4438,156 +4438,156 @@ msgstr ""
msgid "No next zoom."
msgstr ""
-#: ../src/display/canvas-axonomgrid.cpp:361 ../src/display/canvas-grid.cpp:701
+#: ../src/display/canvas-axonomgrid.cpp:357 ../src/display/canvas-grid.cpp:697
msgid "Grid _units:"
msgstr ""
-#: ../src/display/canvas-axonomgrid.cpp:363 ../src/display/canvas-grid.cpp:703
+#: ../src/display/canvas-axonomgrid.cpp:359 ../src/display/canvas-grid.cpp:699
msgid "_Origin X:"
msgstr ""
-#: ../src/display/canvas-axonomgrid.cpp:363 ../src/display/canvas-grid.cpp:703
+#: ../src/display/canvas-axonomgrid.cpp:359 ../src/display/canvas-grid.cpp:699
#: ../src/ui/dialog/inkscape-preferences.cpp:746
#: ../src/ui/dialog/inkscape-preferences.cpp:771
msgid "X coordinate of grid origin"
msgstr ""
-#: ../src/display/canvas-axonomgrid.cpp:366 ../src/display/canvas-grid.cpp:706
+#: ../src/display/canvas-axonomgrid.cpp:362 ../src/display/canvas-grid.cpp:702
msgid "O_rigin Y:"
msgstr ""
-#: ../src/display/canvas-axonomgrid.cpp:366 ../src/display/canvas-grid.cpp:706
+#: ../src/display/canvas-axonomgrid.cpp:362 ../src/display/canvas-grid.cpp:702
#: ../src/ui/dialog/inkscape-preferences.cpp:747
#: ../src/ui/dialog/inkscape-preferences.cpp:772
msgid "Y coordinate of grid origin"
msgstr ""
-#: ../src/display/canvas-axonomgrid.cpp:369 ../src/display/canvas-grid.cpp:712
+#: ../src/display/canvas-axonomgrid.cpp:365 ../src/display/canvas-grid.cpp:708
msgid "Spacing _Y:"
msgstr ""
-#: ../src/display/canvas-axonomgrid.cpp:369
+#: ../src/display/canvas-axonomgrid.cpp:365
#: ../src/ui/dialog/inkscape-preferences.cpp:775
msgid "Base length of z-axis"
msgstr ""
-#: ../src/display/canvas-axonomgrid.cpp:372
+#: ../src/display/canvas-axonomgrid.cpp:368
#: ../src/ui/dialog/inkscape-preferences.cpp:778
#: ../src/widgets/box3d-toolbar.cpp:302
msgid "Angle X:"
msgstr ""
-#: ../src/display/canvas-axonomgrid.cpp:372
+#: ../src/display/canvas-axonomgrid.cpp:368
#: ../src/ui/dialog/inkscape-preferences.cpp:778
msgid "Angle of x-axis"
msgstr ""
-#: ../src/display/canvas-axonomgrid.cpp:374
+#: ../src/display/canvas-axonomgrid.cpp:370
#: ../src/ui/dialog/inkscape-preferences.cpp:779
#: ../src/widgets/box3d-toolbar.cpp:381
msgid "Angle Z:"
msgstr ""
-#: ../src/display/canvas-axonomgrid.cpp:374
+#: ../src/display/canvas-axonomgrid.cpp:370
#: ../src/ui/dialog/inkscape-preferences.cpp:779
msgid "Angle of z-axis"
msgstr ""
-#: ../src/display/canvas-axonomgrid.cpp:378 ../src/display/canvas-grid.cpp:717
+#: ../src/display/canvas-axonomgrid.cpp:374 ../src/display/canvas-grid.cpp:713
msgid "Minor grid line _color:"
msgstr ""
-#: ../src/display/canvas-axonomgrid.cpp:378 ../src/display/canvas-grid.cpp:717
+#: ../src/display/canvas-axonomgrid.cpp:374 ../src/display/canvas-grid.cpp:713
#: ../src/ui/dialog/inkscape-preferences.cpp:730
msgid "Minor grid line color"
msgstr ""
-#: ../src/display/canvas-axonomgrid.cpp:378 ../src/display/canvas-grid.cpp:717
+#: ../src/display/canvas-axonomgrid.cpp:374 ../src/display/canvas-grid.cpp:713
msgid "Color of the minor grid lines"
msgstr ""
-#: ../src/display/canvas-axonomgrid.cpp:383 ../src/display/canvas-grid.cpp:722
+#: ../src/display/canvas-axonomgrid.cpp:379 ../src/display/canvas-grid.cpp:718
msgid "Ma_jor grid line color:"
msgstr ""
-#: ../src/display/canvas-axonomgrid.cpp:383 ../src/display/canvas-grid.cpp:722
+#: ../src/display/canvas-axonomgrid.cpp:379 ../src/display/canvas-grid.cpp:718
#: ../src/ui/dialog/inkscape-preferences.cpp:732
msgid "Major grid line color"
msgstr ""
-#: ../src/display/canvas-axonomgrid.cpp:384 ../src/display/canvas-grid.cpp:723
+#: ../src/display/canvas-axonomgrid.cpp:380 ../src/display/canvas-grid.cpp:719
msgid "Color of the major (highlighted) grid lines"
msgstr ""
-#: ../src/display/canvas-axonomgrid.cpp:388 ../src/display/canvas-grid.cpp:727
+#: ../src/display/canvas-axonomgrid.cpp:384 ../src/display/canvas-grid.cpp:723
msgid "_Major grid line every:"
msgstr ""
-#: ../src/display/canvas-axonomgrid.cpp:388 ../src/display/canvas-grid.cpp:727
+#: ../src/display/canvas-axonomgrid.cpp:384 ../src/display/canvas-grid.cpp:723
msgid "lines"
msgstr ""
-#: ../src/display/canvas-grid.cpp:64
+#: ../src/display/canvas-grid.cpp:60
msgid "Rectangular grid"
msgstr ""
-#: ../src/display/canvas-grid.cpp:65
+#: ../src/display/canvas-grid.cpp:61
msgid "Axonometric grid"
msgstr ""
-#: ../src/display/canvas-grid.cpp:250
+#: ../src/display/canvas-grid.cpp:246
msgid "Create new grid"
msgstr ""
-#: ../src/display/canvas-grid.cpp:316
+#: ../src/display/canvas-grid.cpp:312
msgid "_Enabled"
msgstr ""
-#: ../src/display/canvas-grid.cpp:317
+#: ../src/display/canvas-grid.cpp:313
msgid ""
"Determines whether to snap to this grid or not. Can be 'on' for invisible "
"grids."
msgstr ""
-#: ../src/display/canvas-grid.cpp:321
+#: ../src/display/canvas-grid.cpp:317
msgid "Snap to visible _grid lines only"
msgstr ""
-#: ../src/display/canvas-grid.cpp:322
+#: ../src/display/canvas-grid.cpp:318
msgid ""
"When zoomed out, not all grid lines will be displayed. Only the visible ones "
"will be snapped to"
msgstr ""
-#: ../src/display/canvas-grid.cpp:326
+#: ../src/display/canvas-grid.cpp:322
msgid "_Visible"
msgstr ""
-#: ../src/display/canvas-grid.cpp:327
+#: ../src/display/canvas-grid.cpp:323
msgid ""
"Determines whether the grid is displayed or not. Objects are still snapped "
"to invisible grids."
msgstr ""
-#: ../src/display/canvas-grid.cpp:709
+#: ../src/display/canvas-grid.cpp:705
msgid "Spacing _X:"
msgstr ""
-#: ../src/display/canvas-grid.cpp:709
+#: ../src/display/canvas-grid.cpp:705
#: ../src/ui/dialog/inkscape-preferences.cpp:752
msgid "Distance between vertical grid lines"
msgstr ""
-#: ../src/display/canvas-grid.cpp:712
+#: ../src/display/canvas-grid.cpp:708
#: ../src/ui/dialog/inkscape-preferences.cpp:753
msgid "Distance between horizontal grid lines"
msgstr ""
-#: ../src/display/canvas-grid.cpp:744
+#: ../src/display/canvas-grid.cpp:740
msgid "_Show dots instead of lines"
msgstr ""
-#: ../src/display/canvas-grid.cpp:745
+#: ../src/display/canvas-grid.cpp:741
msgid "If set, displays dots at gridpoints instead of gridlines"
msgstr ""
@@ -4737,11 +4737,11 @@ msgstr ""
msgid "Bounding box side midpoint"
msgstr ""
-#: ../src/display/snap-indicator.cpp:196 ../src/ui/tool/node.cpp:1505
+#: ../src/display/snap-indicator.cpp:196 ../src/ui/tool/node.cpp:1506
msgid "Smooth node"
msgstr ""
-#: ../src/display/snap-indicator.cpp:199 ../src/ui/tool/node.cpp:1504
+#: ../src/display/snap-indicator.cpp:199 ../src/ui/tool/node.cpp:1505
msgid "Cusp node"
msgstr ""
@@ -4811,7 +4811,7 @@ msgstr ""
msgid "Memory document %1"
msgstr ""
-#: ../src/document.cpp:855
+#: ../src/document.cpp:886
#, c-format
msgid "Unnamed document %d"
msgstr ""
@@ -4821,11 +4821,11 @@ msgid "[Unchanged]"
msgstr ""
#. Edit
-#: ../src/event-log.cpp:371 ../src/event-log.cpp:374 ../src/verbs.cpp:2465
+#: ../src/event-log.cpp:371 ../src/event-log.cpp:374 ../src/verbs.cpp:2434
msgid "_Undo"
msgstr ""
-#: ../src/event-log.cpp:381 ../src/event-log.cpp:385 ../src/verbs.cpp:2467
+#: ../src/event-log.cpp:381 ../src/event-log.cpp:385 ../src/verbs.cpp:2436
msgid "_Redo"
msgstr ""
@@ -4853,7 +4853,7 @@ msgstr ""
msgid " (No preferences)"
msgstr ""
-#: ../src/extension/effect.h:70 ../src/verbs.cpp:2239
+#: ../src/extension/effect.h:70 ../src/verbs.cpp:2208
msgid "Extensions"
msgstr ""
@@ -4873,90 +4873,90 @@ msgstr ""
msgid "Show dialog on startup"
msgstr ""
-#: ../src/extension/execution-env.cpp:144
+#: ../src/extension/execution-env.cpp:138
#, c-format
msgid "'%s' working, please wait..."
msgstr ""
#. static int i = 0;
#. std::cout << "Checking module[" << i++ << "]: " << name << std::endl;
-#: ../src/extension/extension.cpp:271
+#: ../src/extension/extension.cpp:267
msgid ""
" This is caused by an improper .inx file for this extension. An improper ."
"inx file could have been caused by a faulty installation of Inkscape."
msgstr ""
-#: ../src/extension/extension.cpp:281
+#: ../src/extension/extension.cpp:277
msgid "the extension is designed for Windows only."
msgstr ""
-#: ../src/extension/extension.cpp:286
+#: ../src/extension/extension.cpp:282
msgid "an ID was not defined for it."
msgstr ""
-#: ../src/extension/extension.cpp:290
+#: ../src/extension/extension.cpp:286
msgid "there was no name defined for it."
msgstr ""
-#: ../src/extension/extension.cpp:294
+#: ../src/extension/extension.cpp:290
msgid "the XML description of it got lost."
msgstr ""
-#: ../src/extension/extension.cpp:298
+#: ../src/extension/extension.cpp:294
msgid "no implementation was defined for the extension."
msgstr ""
#. std::cout << "Failed: " << *(_deps[i]) << std::endl;
-#: ../src/extension/extension.cpp:305
+#: ../src/extension/extension.cpp:301
msgid "a dependency was not met."
msgstr ""
-#: ../src/extension/extension.cpp:325
+#: ../src/extension/extension.cpp:321
msgid "Extension \""
msgstr ""
-#: ../src/extension/extension.cpp:325
+#: ../src/extension/extension.cpp:321
msgid "\" failed to load because "
msgstr ""
-#: ../src/extension/extension.cpp:674
+#: ../src/extension/extension.cpp:670
#, c-format
msgid "Could not create extension error log file '%s'"
msgstr ""
-#: ../src/extension/extension.cpp:782
+#: ../src/extension/extension.cpp:778
#: ../share/extensions/webslicer_create_rect.inx.h:2
msgid "Name:"
msgstr ""
-#: ../src/extension/extension.cpp:783
+#: ../src/extension/extension.cpp:779
msgid "ID:"
msgstr ""
-#: ../src/extension/extension.cpp:784
+#: ../src/extension/extension.cpp:780
msgid "State:"
msgstr ""
-#: ../src/extension/extension.cpp:784
+#: ../src/extension/extension.cpp:780
msgid "Loaded"
msgstr ""
-#: ../src/extension/extension.cpp:784
+#: ../src/extension/extension.cpp:780
msgid "Unloaded"
msgstr ""
-#: ../src/extension/extension.cpp:784
+#: ../src/extension/extension.cpp:780
msgid "Deactivated"
msgstr ""
-#: ../src/extension/extension.cpp:824
+#: ../src/extension/extension.cpp:820
msgid ""
"Currently there is no help available for this Extension. Please look on the "
"Inkscape website or ask on the mailing lists if you have questions regarding "
"this extension."
msgstr ""
-#: ../src/extension/implementation/script.cpp:1057
+#: ../src/extension/implementation/script.cpp:1063
msgid ""
"Inkscape has received additional data from the script executed. The script "
"did not return an error, but this may indicate the results will not be as "
@@ -4982,10 +4982,11 @@ msgstr ""
#: ../src/extension/internal/bitmap/adaptiveThreshold.cpp:41
#: ../src/extension/internal/bitmap/raise.cpp:42
#: ../src/extension/internal/bitmap/sample.cpp:41
-#: ../src/extension/internal/bluredge.cpp:138
-#: ../src/ui/dialog/lpe-powerstroke-properties.cpp:63
+#: ../src/extension/internal/bluredge.cpp:136
+#: ../src/ui/dialog/lpe-powerstroke-properties.cpp:59
#: ../src/ui/dialog/object-attributes.cpp:68
#: ../src/ui/dialog/object-attributes.cpp:77
+#: ../src/ui/widget/page-sizer.cpp:249
#: ../src/widgets/calligraphy-toolbar.cpp:430
#: ../src/widgets/eraser-toolbar.cpp:128 ../src/widgets/spray-toolbar.cpp:116
#: ../src/widgets/tweak-toolbar.cpp:128
@@ -4998,7 +4999,7 @@ msgstr ""
#: ../src/extension/internal/bitmap/sample.cpp:42
#: ../src/ui/dialog/object-attributes.cpp:69
#: ../src/ui/dialog/object-attributes.cpp:78
-#: ../share/extensions/foldablebox.inx.h:3
+#: ../src/ui/widget/page-sizer.cpp:250 ../share/extensions/foldablebox.inx.h:3
msgid "Height:"
msgstr ""
@@ -5060,8 +5061,8 @@ msgstr ""
#: ../src/extension/internal/filter/color.h:1660
#: ../src/extension/internal/filter/distort.h:69
#: ../src/extension/internal/filter/morphology.h:60 ../src/rdf.cpp:244
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2842
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2916
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2858
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2932
#: ../src/ui/dialog/object-attributes.cpp:49
#: ../share/extensions/jessyInk_effects.inx.h:5
#: ../share/extensions/jessyInk_export.inx.h:3
@@ -5113,7 +5114,7 @@ msgstr ""
#: ../src/extension/internal/bitmap/oilPaint.cpp:39
#: ../src/extension/internal/bitmap/sharpen.cpp:40
#: ../src/extension/internal/bitmap/unsharpmask.cpp:43
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2894
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2910
msgid "Radius:"
msgstr ""
@@ -5431,7 +5432,7 @@ msgid "Opacity"
msgstr ""
#: ../src/extension/internal/bitmap/opacity.cpp:40
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2884
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2900
#: ../src/ui/dialog/objects.cpp:1619 ../src/widgets/dropper-toolbar.cpp:83
msgid "Opacity:"
msgstr ""
@@ -5537,7 +5538,7 @@ msgstr ""
#: ../src/extension/internal/bitmap/threshold.cpp:40
#: ../src/extension/internal/bitmap/unsharpmask.cpp:46
-#: ../src/widgets/paintbucket-toolbar.cpp:148
+#: ../src/widgets/paintbucket-toolbar.cpp:147
msgid "Threshold:"
msgstr ""
@@ -5569,23 +5570,23 @@ msgstr ""
msgid "Alter selected bitmap(s) along sine wave"
msgstr ""
-#: ../src/extension/internal/bluredge.cpp:136
+#: ../src/extension/internal/bluredge.cpp:134
msgid "Inset/Outset Halo"
msgstr ""
-#: ../src/extension/internal/bluredge.cpp:138
+#: ../src/extension/internal/bluredge.cpp:136
msgid "Width in px of the halo"
msgstr ""
-#: ../src/extension/internal/bluredge.cpp:139
+#: ../src/extension/internal/bluredge.cpp:137
msgid "Number of steps:"
msgstr ""
-#: ../src/extension/internal/bluredge.cpp:139
+#: ../src/extension/internal/bluredge.cpp:137
msgid "Number of inset/outset copies of the object to make"
msgstr ""
-#: ../src/extension/internal/bluredge.cpp:143
+#: ../src/extension/internal/bluredge.cpp:141
#: ../share/extensions/extrude.inx.h:5
#: ../share/extensions/generate_voronoi.inx.h:9
#: ../share/extensions/interp.inx.h:7 ../share/extensions/motion.inx.h:4
@@ -5789,79 +5790,79 @@ msgstr ""
msgid "Open presentation exchange files saved in Corel DRAW"
msgstr ""
-#: ../src/extension/internal/emf-inout.cpp:3562
+#: ../src/extension/internal/emf-inout.cpp:3584
msgid "EMF Input"
msgstr ""
-#: ../src/extension/internal/emf-inout.cpp:3567
+#: ../src/extension/internal/emf-inout.cpp:3589
msgid "Enhanced Metafiles (*.emf)"
msgstr ""
-#: ../src/extension/internal/emf-inout.cpp:3568
+#: ../src/extension/internal/emf-inout.cpp:3590
msgid "Enhanced Metafiles"
msgstr ""
-#: ../src/extension/internal/emf-inout.cpp:3576
+#: ../src/extension/internal/emf-inout.cpp:3598
msgid "EMF Output"
msgstr ""
-#: ../src/extension/internal/emf-inout.cpp:3578
-#: ../src/extension/internal/wmf-inout.cpp:3152
+#: ../src/extension/internal/emf-inout.cpp:3600
+#: ../src/extension/internal/wmf-inout.cpp:3174
msgid "Convert texts to paths"
msgstr ""
-#: ../src/extension/internal/emf-inout.cpp:3579
-#: ../src/extension/internal/wmf-inout.cpp:3153
+#: ../src/extension/internal/emf-inout.cpp:3601
+#: ../src/extension/internal/wmf-inout.cpp:3175
msgid "Map Unicode to Symbol font"
msgstr ""
-#: ../src/extension/internal/emf-inout.cpp:3580
-#: ../src/extension/internal/wmf-inout.cpp:3154
+#: ../src/extension/internal/emf-inout.cpp:3602
+#: ../src/extension/internal/wmf-inout.cpp:3176
msgid "Map Unicode to Wingdings"
msgstr ""
-#: ../src/extension/internal/emf-inout.cpp:3581
-#: ../src/extension/internal/wmf-inout.cpp:3155
+#: ../src/extension/internal/emf-inout.cpp:3603
+#: ../src/extension/internal/wmf-inout.cpp:3177
msgid "Map Unicode to Zapf Dingbats"
msgstr ""
-#: ../src/extension/internal/emf-inout.cpp:3582
-#: ../src/extension/internal/wmf-inout.cpp:3156
+#: ../src/extension/internal/emf-inout.cpp:3604
+#: ../src/extension/internal/wmf-inout.cpp:3178
msgid "Use MS Unicode PUA (0xF020-0xF0FF) for converted characters"
msgstr ""
-#: ../src/extension/internal/emf-inout.cpp:3583
-#: ../src/extension/internal/wmf-inout.cpp:3157
+#: ../src/extension/internal/emf-inout.cpp:3605
+#: ../src/extension/internal/wmf-inout.cpp:3179
msgid "Compensate for PPT font bug"
msgstr ""
-#: ../src/extension/internal/emf-inout.cpp:3584
-#: ../src/extension/internal/wmf-inout.cpp:3158
+#: ../src/extension/internal/emf-inout.cpp:3606
+#: ../src/extension/internal/wmf-inout.cpp:3180
msgid "Convert dashed/dotted lines to single lines"
msgstr ""
-#: ../src/extension/internal/emf-inout.cpp:3585
-#: ../src/extension/internal/wmf-inout.cpp:3159
+#: ../src/extension/internal/emf-inout.cpp:3607
+#: ../src/extension/internal/wmf-inout.cpp:3181
msgid "Convert gradients to colored polygon series"
msgstr ""
-#: ../src/extension/internal/emf-inout.cpp:3586
+#: ../src/extension/internal/emf-inout.cpp:3608
msgid "Use native rectangular linear gradients"
msgstr ""
-#: ../src/extension/internal/emf-inout.cpp:3587
+#: ../src/extension/internal/emf-inout.cpp:3609
msgid "Map all fill patterns to standard EMF hatches"
msgstr ""
-#: ../src/extension/internal/emf-inout.cpp:3588
+#: ../src/extension/internal/emf-inout.cpp:3610
msgid "Ignore image rotations"
msgstr ""
-#: ../src/extension/internal/emf-inout.cpp:3592
+#: ../src/extension/internal/emf-inout.cpp:3614
msgid "Enhanced Metafile (*.emf)"
msgstr ""
-#: ../src/extension/internal/emf-inout.cpp:3593
+#: ../src/extension/internal/emf-inout.cpp:3615
msgid "Enhanced Metafile"
msgstr ""
@@ -5926,7 +5927,7 @@ msgstr ""
#: ../src/extension/internal/filter/distort.h:95
#: ../src/extension/internal/filter/distort.h:204
#: ../src/extension/internal/filter/filter-file.cpp:151
-#: ../src/extension/internal/filter/filter.cpp:214
+#: ../src/extension/internal/filter/filter.cpp:212
#: ../src/extension/internal/filter/image.h:61
#: ../src/extension/internal/filter/morphology.h:75
#: ../src/extension/internal/filter/morphology.h:202
@@ -5948,6 +5949,7 @@ msgstr ""
#: ../src/extension/internal/filter/transparency.h:287
#: ../src/extension/internal/filter/transparency.h:349
#: ../src/ui/dialog/inkscape-preferences.cpp:1751
+#, c-format
msgid "Filters"
msgstr ""
@@ -6158,6 +6160,7 @@ msgstr ""
#: ../src/extension/internal/filter/textures.h:77
#: ../src/extension/internal/filter/transparency.h:61
#: ../src/filter-enums.cpp:52 ../src/ui/dialog/inkscape-preferences.cpp:653
+#: ../src/ui/widget/font-variants.cpp:45 ../src/ui/widget/font-variants.cpp:50
msgid "Normal"
msgstr ""
@@ -6194,10 +6197,9 @@ msgstr ""
#: ../src/extension/internal/filter/color.h:712
#: ../src/extension/internal/filter/color.h:896
#: ../src/extension/internal/filter/transparency.h:132
-#: ../src/filter-enums.cpp:128 ../src/ui/tools/flood-tool.cpp:183
-#: ../src/widgets/sp-color-icc-selector.cpp:330
-#: ../src/widgets/sp-color-scales.cpp:415
-#: ../src/widgets/sp-color-scales.cpp:416
+#: ../src/filter-enums.cpp:128 ../src/ui/tools/flood-tool.cpp:91
+#: ../src/ui/widget/color-icc-selector.cpp:176
+#: ../src/ui/widget/color-scales.cpp:379 ../src/ui/widget/color-scales.cpp:380
msgid "Red"
msgstr ""
@@ -6207,10 +6209,9 @@ msgstr ""
#: ../src/extension/internal/filter/color.h:713
#: ../src/extension/internal/filter/color.h:897
#: ../src/extension/internal/filter/transparency.h:133
-#: ../src/filter-enums.cpp:129 ../src/ui/tools/flood-tool.cpp:184
-#: ../src/widgets/sp-color-icc-selector.cpp:331
-#: ../src/widgets/sp-color-scales.cpp:418
-#: ../src/widgets/sp-color-scales.cpp:419
+#: ../src/filter-enums.cpp:129 ../src/ui/tools/flood-tool.cpp:92
+#: ../src/ui/widget/color-icc-selector.cpp:177
+#: ../src/ui/widget/color-scales.cpp:382 ../src/ui/widget/color-scales.cpp:383
msgid "Green"
msgstr ""
@@ -6220,10 +6221,9 @@ msgstr ""
#: ../src/extension/internal/filter/color.h:714
#: ../src/extension/internal/filter/color.h:898
#: ../src/extension/internal/filter/transparency.h:134
-#: ../src/filter-enums.cpp:130 ../src/ui/tools/flood-tool.cpp:185
-#: ../src/widgets/sp-color-icc-selector.cpp:332
-#: ../src/widgets/sp-color-scales.cpp:421
-#: ../src/widgets/sp-color-scales.cpp:422
+#: ../src/filter-enums.cpp:130 ../src/ui/tools/flood-tool.cpp:93
+#: ../src/ui/widget/color-icc-selector.cpp:178
+#: ../src/ui/widget/color-scales.cpp:385 ../src/ui/widget/color-scales.cpp:386
msgid "Blue"
msgstr ""
@@ -6246,7 +6246,7 @@ msgstr ""
#: ../src/extension/internal/filter/bumps.h:98
#: ../src/extension/internal/filter/bumps.h:329
#: ../src/libgdl/gdl-dock-placeholder.c:175 ../src/libgdl/gdl-dock.c:199
-#: ../src/widgets/rect-toolbar.cpp:334
+#: ../src/ui/widget/page-sizer.cpp:250 ../src/widgets/rect-toolbar.cpp:334
#: ../share/extensions/interp_att_g.inx.h:11
msgid "Height"
msgstr ""
@@ -6259,10 +6259,10 @@ msgstr ""
#: ../src/extension/internal/filter/paint.h:86
#: ../src/extension/internal/filter/paint.h:592
#: ../src/extension/internal/filter/paint.h:707
-#: ../src/ui/tools/flood-tool.cpp:188
-#: ../src/widgets/sp-color-icc-selector.cpp:341
-#: ../src/widgets/sp-color-scales.cpp:447
-#: ../src/widgets/sp-color-scales.cpp:448 ../src/widgets/tweak-toolbar.cpp:318
+#: ../src/ui/tools/flood-tool.cpp:96
+#: ../src/ui/widget/color-icc-selector.cpp:187
+#: ../src/ui/widget/color-scales.cpp:411 ../src/ui/widget/color-scales.cpp:412
+#: ../src/widgets/tweak-toolbar.cpp:318
#: ../share/extensions/color_randomize.inx.h:5
msgid "Lightness"
msgstr ""
@@ -6299,13 +6299,13 @@ msgstr ""
#: ../src/extension/internal/filter/bumps.h:110
#: ../src/extension/internal/filter/bumps.h:332
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1195
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1196
msgid "Azimuth"
msgstr ""
#: ../src/extension/internal/filter/bumps.h:111
#: ../src/extension/internal/filter/bumps.h:333
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1196
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1197
msgid "Elevation"
msgstr ""
@@ -6459,18 +6459,18 @@ msgstr ""
#: ../src/extension/internal/filter/color.h:332
#: ../src/extension/internal/filter/paint.h:87 ../src/filter-enums.cpp:66
#: ../src/ui/dialog/inkscape-preferences.cpp:952
-#: ../src/ui/tools/flood-tool.cpp:187
-#: ../src/widgets/sp-color-icc-selector.cpp:337
-#: ../src/widgets/sp-color-icc-selector.cpp:342
-#: ../src/widgets/sp-color-scales.cpp:444
-#: ../src/widgets/sp-color-scales.cpp:445 ../src/widgets/tweak-toolbar.cpp:302
+#: ../src/ui/tools/flood-tool.cpp:95
+#: ../src/ui/widget/color-icc-selector.cpp:183
+#: ../src/ui/widget/color-icc-selector.cpp:188
+#: ../src/ui/widget/color-scales.cpp:408 ../src/ui/widget/color-scales.cpp:409
+#: ../src/widgets/tweak-toolbar.cpp:302
#: ../share/extensions/color_randomize.inx.h:4
msgid "Saturation"
msgstr ""
#: ../src/extension/internal/filter/color.h:161
#: ../src/extension/internal/filter/transparency.h:135
-#: ../src/filter-enums.cpp:131 ../src/ui/tools/flood-tool.cpp:189
+#: ../src/filter-enums.cpp:131 ../src/ui/tools/flood-tool.cpp:97
msgid "Alpha"
msgstr ""
@@ -6495,7 +6495,7 @@ msgid "Cone monochromacy (typical achromatopsia)"
msgstr ""
#: ../src/extension/internal/filter/color.h:261
-msgid "Geen weak (deuteranomaly)"
+msgid "Green weak (deuteranomaly)"
msgstr ""
#: ../src/extension/internal/filter/color.h:262
@@ -6570,13 +6570,13 @@ msgstr ""
#: ../src/extension/internal/filter/color.h:503
#: ../src/extension/internal/filter/paint.h:498 ../src/filter-enums.cpp:111
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1050
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1051
msgid "Table"
msgstr ""
#: ../src/extension/internal/filter/color.h:504
#: ../src/extension/internal/filter/paint.h:499 ../src/filter-enums.cpp:112
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1053
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1054
msgid "Discrete"
msgstr ""
@@ -6639,26 +6639,23 @@ msgid "Extract Channel"
msgstr ""
#: ../src/extension/internal/filter/color.h:715
-#: ../src/widgets/sp-color-icc-selector.cpp:344
-#: ../src/widgets/sp-color-icc-selector.cpp:349
-#: ../src/widgets/sp-color-scales.cpp:469
-#: ../src/widgets/sp-color-scales.cpp:470
+#: ../src/ui/widget/color-icc-selector.cpp:190
+#: ../src/ui/widget/color-icc-selector.cpp:195
+#: ../src/ui/widget/color-scales.cpp:433 ../src/ui/widget/color-scales.cpp:434
msgid "Cyan"
msgstr ""
#: ../src/extension/internal/filter/color.h:716
-#: ../src/widgets/sp-color-icc-selector.cpp:345
-#: ../src/widgets/sp-color-icc-selector.cpp:350
-#: ../src/widgets/sp-color-scales.cpp:472
-#: ../src/widgets/sp-color-scales.cpp:473
+#: ../src/ui/widget/color-icc-selector.cpp:191
+#: ../src/ui/widget/color-icc-selector.cpp:196
+#: ../src/ui/widget/color-scales.cpp:436 ../src/ui/widget/color-scales.cpp:437
msgid "Magenta"
msgstr ""
#: ../src/extension/internal/filter/color.h:717
-#: ../src/widgets/sp-color-icc-selector.cpp:346
-#: ../src/widgets/sp-color-icc-selector.cpp:351
-#: ../src/widgets/sp-color-scales.cpp:475
-#: ../src/widgets/sp-color-scales.cpp:476
+#: ../src/ui/widget/color-icc-selector.cpp:192
+#: ../src/ui/widget/color-icc-selector.cpp:197
+#: ../src/ui/widget/color-scales.cpp:439 ../src/ui/widget/color-scales.cpp:440
msgid "Yellow"
msgstr ""
@@ -6683,10 +6680,9 @@ msgid "Fade to:"
msgstr ""
#: ../src/extension/internal/filter/color.h:819
+#: ../src/ui/widget/color-icc-selector.cpp:193
+#: ../src/ui/widget/color-scales.cpp:442 ../src/ui/widget/color-scales.cpp:443
#: ../src/ui/widget/selected-style.cpp:274
-#: ../src/widgets/sp-color-icc-selector.cpp:347
-#: ../src/widgets/sp-color-scales.cpp:478
-#: ../src/widgets/sp-color-scales.cpp:479
msgid "Black"
msgstr ""
@@ -6769,8 +6765,8 @@ msgstr ""
#: ../src/extension/internal/filter/color.h:1119
#: ../src/extension/internal/filter/paint.h:356 ../src/filter-enums.cpp:33
#: ../src/live_effects/effect.cpp:110
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1047
-#: ../src/widgets/gradient-toolbar.cpp:1159
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1048
+#: ../src/widgets/gradient-toolbar.cpp:1162
msgid "Offset"
msgstr ""
@@ -6800,7 +6796,8 @@ msgstr ""
#: ../src/extension/internal/filter/color.h:1382
#: ../src/extension/internal/filter/color.h:1385
#: ../src/extension/internal/filter/color.h:1388
-#: ../src/ui/dialog/input.cpp:1616 ../src/ui/dialog/layers.cpp:917
+#: ../src/ui/dialog/input.cpp:1616 ../src/ui/dialog/layers.cpp:925
+#: ../src/ui/widget/page-sizer.cpp:247
msgid "X"
msgstr ""
@@ -6810,7 +6807,7 @@ msgstr ""
#: ../src/extension/internal/filter/color.h:1383
#: ../src/extension/internal/filter/color.h:1386
#: ../src/extension/internal/filter/color.h:1389
-#: ../src/ui/dialog/input.cpp:1616
+#: ../src/ui/dialog/input.cpp:1616 ../src/ui/widget/page-sizer.cpp:248
msgid "Y"
msgstr ""
@@ -7094,8 +7091,8 @@ msgstr ""
#: ../src/extension/internal/filter/morphology.h:65
#: ../src/libgdl/gdl-dock-placeholder.c:167 ../src/libgdl/gdl-dock.c:191
-#: ../src/widgets/rect-toolbar.cpp:317 ../src/widgets/spray-toolbar.cpp:116
-#: ../src/widgets/tweak-toolbar.cpp:128
+#: ../src/ui/widget/page-sizer.cpp:249 ../src/widgets/rect-toolbar.cpp:317
+#: ../src/widgets/spray-toolbar.cpp:116 ../src/widgets/tweak-toolbar.cpp:128
#: ../share/extensions/interp_att_g.inx.h:10
msgid "Width"
msgstr ""
@@ -7141,7 +7138,7 @@ msgstr ""
#: ../src/extension/internal/filter/morphology.h:179
#: ../src/ui/dialog/layer-properties.cpp:185
-#: ../src/ui/dialog/lpe-powerstroke-properties.cpp:59
+#: ../src/ui/dialog/lpe-powerstroke-properties.cpp:55
msgid "Position:"
msgstr ""
@@ -7328,8 +7325,8 @@ msgid "Convert image to an engraving made of vertical and horizontal lines"
msgstr ""
#: ../src/extension/internal/filter/paint.h:331
-#: ../src/ui/dialog/align-and-distribute.cpp:1003
-#: ../src/widgets/desktop-widget.cpp:1996
+#: ../src/ui/dialog/align-and-distribute.cpp:999
+#: ../src/widgets/desktop-widget.cpp:1998
msgid "Drawing"
msgstr ""
@@ -7338,7 +7335,7 @@ msgstr ""
#: ../src/extension/internal/filter/paint.h:496
#: ../src/extension/internal/filter/paint.h:590
#: ../src/extension/internal/filter/paint.h:976
-#: ../src/live_effects/effect.cpp:151 ../src/splivarot.cpp:2212
+#: ../src/live_effects/effect.cpp:151 ../src/splivarot.cpp:2201
msgid "Simplify"
msgstr ""
@@ -7619,7 +7616,7 @@ msgid "Background"
msgstr ""
#: ../src/extension/internal/filter/transparency.h:59
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2839
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2855
#: ../src/ui/dialog/input.cpp:1088 ../src/widgets/eraser-toolbar.cpp:106
#: ../src/widgets/pencil-toolbar.cpp:132 ../src/widgets/spray-toolbar.cpp:186
#: ../src/widgets/tweak-toolbar.cpp:254 ../share/extensions/extrude.inx.h:2
@@ -7674,10 +7671,12 @@ msgid "%s bitmap image import"
msgstr ""
#: ../src/extension/internal/gdkpixbuf-input.cpp:190
+#, c-format
msgid "Image Import Type:"
msgstr ""
#: ../src/extension/internal/gdkpixbuf-input.cpp:190
+#, c-format
msgid ""
"Embed results in stand-alone, larger SVG files. Link references a file "
"outside this SVG document and all files must be moved together."
@@ -7685,37 +7684,45 @@ msgstr ""
#: ../src/extension/internal/gdkpixbuf-input.cpp:191
#: ../src/ui/dialog/inkscape-preferences.cpp:1456
+#, c-format
msgid "Embed"
msgstr ""
#: ../src/extension/internal/gdkpixbuf-input.cpp:192 ../src/sp-anchor.cpp:105
#: ../src/ui/dialog/inkscape-preferences.cpp:1456
+#, c-format
msgid "Link"
msgstr ""
#: ../src/extension/internal/gdkpixbuf-input.cpp:195
+#, c-format
msgid "Image DPI:"
msgstr ""
#: ../src/extension/internal/gdkpixbuf-input.cpp:195
+#, c-format
msgid ""
"Take information from file or use default bitmap import resolution as "
"defined in the preferences."
msgstr ""
#: ../src/extension/internal/gdkpixbuf-input.cpp:196
+#, c-format
msgid "From file"
msgstr ""
#: ../src/extension/internal/gdkpixbuf-input.cpp:197
+#, c-format
msgid "Default import resolution"
msgstr ""
#: ../src/extension/internal/gdkpixbuf-input.cpp:200
+#, c-format
msgid "Image Rendering Mode:"
msgstr ""
#: ../src/extension/internal/gdkpixbuf-input.cpp:200
+#, c-format
msgid ""
"When an image is upscaled, apply smoothing or keep blocky (pixelated). (Will "
"not work in all browsers.)"
@@ -7723,24 +7730,29 @@ msgstr ""
#: ../src/extension/internal/gdkpixbuf-input.cpp:201
#: ../src/ui/dialog/inkscape-preferences.cpp:1463
+#, c-format
msgid "None (auto)"
msgstr ""
#: ../src/extension/internal/gdkpixbuf-input.cpp:202
#: ../src/ui/dialog/inkscape-preferences.cpp:1463
+#, c-format
msgid "Smooth (optimizeQuality)"
msgstr ""
#: ../src/extension/internal/gdkpixbuf-input.cpp:203
#: ../src/ui/dialog/inkscape-preferences.cpp:1463
+#, c-format
msgid "Blocky (optimizeSpeed)"
msgstr ""
#: ../src/extension/internal/gdkpixbuf-input.cpp:206
+#, c-format
msgid "Hide the dialog next time and always apply the same actions."
msgstr ""
#: ../src/extension/internal/gdkpixbuf-input.cpp:206
+#, c-format
msgid "Don't ask again"
msgstr ""
@@ -7756,31 +7768,31 @@ msgstr ""
msgid "Gradients used in GIMP"
msgstr ""
-#: ../src/extension/internal/grid.cpp:212 ../src/ui/widget/panel.cpp:118
+#: ../src/extension/internal/grid.cpp:205 ../src/ui/widget/panel.cpp:114
msgid "Grid"
msgstr ""
-#: ../src/extension/internal/grid.cpp:214
+#: ../src/extension/internal/grid.cpp:207
msgid "Line Width:"
msgstr ""
-#: ../src/extension/internal/grid.cpp:215
+#: ../src/extension/internal/grid.cpp:208
msgid "Horizontal Spacing:"
msgstr ""
-#: ../src/extension/internal/grid.cpp:216
+#: ../src/extension/internal/grid.cpp:209
msgid "Vertical Spacing:"
msgstr ""
-#: ../src/extension/internal/grid.cpp:217
+#: ../src/extension/internal/grid.cpp:210
msgid "Horizontal Offset:"
msgstr ""
-#: ../src/extension/internal/grid.cpp:218
+#: ../src/extension/internal/grid.cpp:211
msgid "Vertical Offset:"
msgstr ""
-#: ../src/extension/internal/grid.cpp:222
+#: ../src/extension/internal/grid.cpp:215
#: ../src/ui/dialog/inkscape-preferences.cpp:1477
#: ../share/extensions/draw_from_triangle.inx.h:58
#: ../share/extensions/eqtexsvg.inx.h:4
@@ -7811,14 +7823,14 @@ msgstr ""
msgid "Render"
msgstr ""
-#: ../src/extension/internal/grid.cpp:223
+#: ../src/extension/internal/grid.cpp:216
#: ../src/ui/dialog/document-properties.cpp:162
#: ../src/ui/dialog/inkscape-preferences.cpp:787
-#: ../src/widgets/toolbox.cpp:1827
+#: ../src/widgets/toolbox.cpp:1823
msgid "Grids"
msgstr ""
-#: ../src/extension/internal/grid.cpp:226
+#: ../src/extension/internal/grid.cpp:219
msgid "Draw a path which is a grid"
msgstr ""
@@ -8102,33 +8114,33 @@ msgstr ""
msgid "Microsoft Visio 2013 drawing (*.vsdx)"
msgstr ""
-#: ../src/extension/internal/wmf-inout.cpp:3136
+#: ../src/extension/internal/wmf-inout.cpp:3158
msgid "WMF Input"
msgstr ""
-#: ../src/extension/internal/wmf-inout.cpp:3141
+#: ../src/extension/internal/wmf-inout.cpp:3163
msgid "Windows Metafiles (*.wmf)"
msgstr ""
-#: ../src/extension/internal/wmf-inout.cpp:3142
+#: ../src/extension/internal/wmf-inout.cpp:3164
msgid "Windows Metafiles"
msgstr ""
-#: ../src/extension/internal/wmf-inout.cpp:3150
+#: ../src/extension/internal/wmf-inout.cpp:3172
msgid "WMF Output"
msgstr ""
-#: ../src/extension/internal/wmf-inout.cpp:3160
+#: ../src/extension/internal/wmf-inout.cpp:3182
msgid "Map all fill patterns to standard WMF hatches"
msgstr ""
-#: ../src/extension/internal/wmf-inout.cpp:3164
+#: ../src/extension/internal/wmf-inout.cpp:3186
#: ../share/extensions/wmf_input.inx.h:2
#: ../share/extensions/wmf_output.inx.h:2
msgid "Windows Metafile (*.wmf)"
msgstr ""
-#: ../src/extension/internal/wmf-inout.cpp:3165
+#: ../src/extension/internal/wmf-inout.cpp:3187
msgid "Windows Metafile"
msgstr ""
@@ -8164,7 +8176,7 @@ msgstr ""
msgid "Broken links have been changed to point to existing files."
msgstr ""
-#: ../src/file.cpp:339 ../src/file.cpp:1255
+#: ../src/file.cpp:339 ../src/file.cpp:1252
#, c-format
msgid "Failed to load the requested file %s"
msgstr ""
@@ -8232,7 +8244,7 @@ msgid "Document saved."
msgstr ""
#. We are saving for the first time; create a unique default filename
-#: ../src/file.cpp:866 ../src/file.cpp:1414
+#: ../src/file.cpp:866 ../src/file.cpp:1411
msgid "drawing"
msgstr ""
@@ -8256,20 +8268,20 @@ msgstr ""
msgid "Saving document..."
msgstr ""
-#: ../src/file.cpp:1252 ../src/ui/dialog/inkscape-preferences.cpp:1450
+#: ../src/file.cpp:1249 ../src/ui/dialog/inkscape-preferences.cpp:1450
#: ../src/ui/dialog/ocaldialogs.cpp:1244
msgid "Import"
msgstr ""
-#: ../src/file.cpp:1302
+#: ../src/file.cpp:1299
msgid "Select file to import"
msgstr ""
-#: ../src/file.cpp:1435
+#: ../src/file.cpp:1432
msgid "Select file to export to"
msgstr ""
-#: ../src/file.cpp:1688
+#: ../src/file.cpp:1685
msgid "Import Clip Art"
msgstr ""
@@ -8362,11 +8374,11 @@ msgstr ""
msgid "Exclusion"
msgstr ""
-#: ../src/filter-enums.cpp:65 ../src/ui/tools/flood-tool.cpp:186
-#: ../src/widgets/sp-color-icc-selector.cpp:336
-#: ../src/widgets/sp-color-icc-selector.cpp:340
-#: ../src/widgets/sp-color-scales.cpp:441
-#: ../src/widgets/sp-color-scales.cpp:442 ../src/widgets/tweak-toolbar.cpp:286
+#: ../src/filter-enums.cpp:65 ../src/ui/tools/flood-tool.cpp:94
+#: ../src/ui/widget/color-icc-selector.cpp:182
+#: ../src/ui/widget/color-icc-selector.cpp:186
+#: ../src/ui/widget/color-scales.cpp:405 ../src/ui/widget/color-scales.cpp:406
+#: ../src/widgets/tweak-toolbar.cpp:286
#: ../share/extensions/color_randomize.inx.h:3
msgid "Hue"
msgstr ""
@@ -8434,7 +8446,7 @@ msgstr ""
msgid "Arithmetic"
msgstr ""
-#: ../src/filter-enums.cpp:120 ../src/selection-chemistry.cpp:546
+#: ../src/filter-enums.cpp:120 ../src/selection-chemistry.cpp:545
msgid "Duplicate"
msgstr ""
@@ -8471,15 +8483,15 @@ msgstr ""
msgid "Spot Light"
msgstr ""
-#: ../src/gradient-chemistry.cpp:1579
+#: ../src/gradient-chemistry.cpp:1580
msgid "Invert gradient colors"
msgstr ""
-#: ../src/gradient-chemistry.cpp:1605
+#: ../src/gradient-chemistry.cpp:1607
msgid "Reverse gradient"
msgstr ""
-#: ../src/gradient-chemistry.cpp:1619 ../src/widgets/gradient-selector.cpp:222
+#: ../src/gradient-chemistry.cpp:1621 ../src/widgets/gradient-selector.cpp:226
msgid "Delete swatch"
msgstr ""
@@ -8540,7 +8552,7 @@ msgstr ""
msgid "Move gradient handle"
msgstr ""
-#: ../src/gradient-drag.cpp:1164 ../src/widgets/gradient-vector.cpp:827
+#: ../src/gradient-drag.cpp:1164 ../src/widgets/gradient-vector.cpp:834
msgid "Delete gradient stop"
msgstr ""
@@ -8579,59 +8591,59 @@ msgid_plural ""
msgstr[0] ""
msgstr[1] ""
-#: ../src/gradient-drag.cpp:2378
+#: ../src/gradient-drag.cpp:2379
msgid "Move gradient handle(s)"
msgstr ""
-#: ../src/gradient-drag.cpp:2414
+#: ../src/gradient-drag.cpp:2415
msgid "Move gradient mid stop(s)"
msgstr ""
-#: ../src/gradient-drag.cpp:2703
+#: ../src/gradient-drag.cpp:2704
msgid "Delete gradient stop(s)"
msgstr ""
-#: ../src/inkscape.cpp:246
+#: ../src/inkscape.cpp:242
msgid "Autosave failed! Cannot create directory %1."
msgstr ""
-#: ../src/inkscape.cpp:255
+#: ../src/inkscape.cpp:251
msgid "Autosave failed! Cannot open directory %1."
msgstr ""
-#: ../src/inkscape.cpp:271
+#: ../src/inkscape.cpp:267
msgid "Autosaving documents..."
msgstr ""
-#: ../src/inkscape.cpp:339
+#: ../src/inkscape.cpp:335
msgid "Autosave failed! Could not find inkscape extension to save document."
msgstr ""
-#: ../src/inkscape.cpp:342 ../src/inkscape.cpp:349
+#: ../src/inkscape.cpp:338 ../src/inkscape.cpp:345
#, c-format
msgid "Autosave failed! File %s could not be saved."
msgstr ""
-#: ../src/inkscape.cpp:364
+#: ../src/inkscape.cpp:360
msgid "Autosave complete."
msgstr ""
-#: ../src/inkscape.cpp:622
+#: ../src/inkscape.cpp:618
msgid "Untitled document"
msgstr ""
#. Show nice dialog box
-#: ../src/inkscape.cpp:654
+#: ../src/inkscape.cpp:650
msgid "Inkscape encountered an internal error and will close now.\n"
msgstr ""
-#: ../src/inkscape.cpp:655
+#: ../src/inkscape.cpp:651
msgid ""
"Automatic backups of unsaved documents were done to the following "
"locations:\n"
msgstr ""
-#: ../src/inkscape.cpp:656
+#: ../src/inkscape.cpp:652
msgid "Automatic backup of the following documents failed:\n"
msgstr ""
@@ -8639,24 +8651,24 @@ msgstr ""
msgid "Node or handle drag canceled."
msgstr ""
-#: ../src/knotholder.cpp:170
+#: ../src/knotholder.cpp:171
msgid "Change handle"
msgstr ""
-#: ../src/knotholder.cpp:257
+#: ../src/knotholder.cpp:258
msgid "Move handle"
msgstr ""
#. TRANSLATORS: This refers to the pattern that's inside the object
-#: ../src/knotholder.cpp:276 ../src/knotholder.cpp:298
+#: ../src/knotholder.cpp:277 ../src/knotholder.cpp:299
msgid "<b>Move</b> the pattern fill inside the object"
msgstr ""
-#: ../src/knotholder.cpp:280 ../src/knotholder.cpp:302
+#: ../src/knotholder.cpp:281 ../src/knotholder.cpp:303
msgid "<b>Scale</b> the pattern fill; uniformly if with <b>Ctrl</b>"
msgstr ""
-#: ../src/knotholder.cpp:284 ../src/knotholder.cpp:306
+#: ../src/knotholder.cpp:285 ../src/knotholder.cpp:307
msgid "<b>Rotate</b> the pattern fill; with <b>Ctrl</b> to snap angle"
msgstr ""
@@ -8695,7 +8707,7 @@ msgstr ""
#. Name
#: ../src/libgdl/gdl-dock-item.c:298 ../src/widgets/ruler.cpp:192
-#: ../src/widgets/text-toolbar.cpp:1405
+#: ../src/widgets/text-toolbar.cpp:1411
#: ../share/extensions/gcodetools_graffiti.inx.h:9
#: ../share/extensions/gcodetools_orientation_points.inx.h:2
msgid "Orientation"
@@ -8824,10 +8836,10 @@ msgid ""
msgstr ""
#: ../src/libgdl/gdl-dock-notebook.c:132
-#: ../src/ui/dialog/align-and-distribute.cpp:1002
+#: ../src/ui/dialog/align-and-distribute.cpp:998
#: ../src/ui/dialog/document-properties.cpp:160
#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1537
-#: ../src/widgets/desktop-widget.cpp:1992
+#: ../src/widgets/desktop-widget.cpp:1994
#: ../share/extensions/empty_page.inx.h:1
#: ../share/extensions/voronoi2svg.inx.h:9
msgid "Page"
@@ -8838,10 +8850,10 @@ msgid "The index of the current page"
msgstr ""
#: ../src/libgdl/gdl-dock-object.c:125
-#: ../src/live_effects/parameter/originalpatharray.cpp:86
+#: ../src/live_effects/parameter/originalpatharray.cpp:82
#: ../src/ui/dialog/inkscape-preferences.cpp:1511
-#: ../src/ui/widget/page-sizer.cpp:258
-#: ../src/widgets/gradient-selector.cpp:150
+#: ../src/ui/widget/page-sizer.cpp:283
+#: ../src/widgets/gradient-selector.cpp:154
#: ../src/widgets/sp-xmlview-attr-list.cpp:49
msgid "Name"
msgstr ""
@@ -8907,7 +8919,8 @@ msgid ""
"Attempt to bind to %p an already bound dock object %p (current master: %p)"
msgstr ""
-#: ../src/libgdl/gdl-dock-paned.c:130 ../src/widgets/ruler.cpp:230
+#: ../src/libgdl/gdl-dock-paned.c:130 ../src/ui/widget/font-variants.cpp:44
+#: ../src/widgets/ruler.cpp:230
msgid "Position"
msgstr ""
@@ -9205,7 +9218,7 @@ msgstr ""
msgid "Fill between strokes"
msgstr ""
-#: ../src/live_effects/effect.cpp:147 ../src/selection-chemistry.cpp:2916
+#: ../src/live_effects/effect.cpp:147 ../src/selection-chemistry.cpp:2871
msgid "Fill between many"
msgstr ""
@@ -9243,21 +9256,21 @@ msgid ""
"disabled on canvas"
msgstr ""
-#: ../src/live_effects/effect.cpp:384
+#: ../src/live_effects/effect.cpp:387
msgid "No effect"
msgstr ""
-#: ../src/live_effects/effect.cpp:492
+#: ../src/live_effects/effect.cpp:495
#, c-format
msgid "Please specify a parameter path for the LPE '%s' with %d mouse clicks"
msgstr ""
-#: ../src/live_effects/effect.cpp:759
+#: ../src/live_effects/effect.cpp:762
#, c-format
msgid "Editing parameter <b>%s</b>."
msgstr ""
-#: ../src/live_effects/effect.cpp:764
+#: ../src/live_effects/effect.cpp:767
msgid "None of the applied path effect's parameters can be edited on-canvas."
msgstr ""
@@ -9332,8 +9345,8 @@ msgstr ""
#: ../src/live_effects/lpe-bendpath.cpp:54
#: ../src/live_effects/lpe-patternalongpath.cpp:62
-#: ../src/ui/dialog/export.cpp:289 ../src/ui/dialog/transformation.cpp:78
-#: ../src/ui/widget/page-sizer.cpp:236
+#: ../src/ui/dialog/export.cpp:285 ../src/ui/dialog/transformation.cpp:74
+#: ../src/ui/widget/page-sizer.cpp:237
msgid "_Width:"
msgstr ""
@@ -9378,50 +9391,50 @@ msgstr ""
msgid "Uses the visual bounding box"
msgstr ""
-#: ../src/live_effects/lpe-bspline.cpp:57
+#: ../src/live_effects/lpe-bspline.cpp:25
msgid "Steps with CTRL:"
msgstr ""
-#: ../src/live_effects/lpe-bspline.cpp:57
+#: ../src/live_effects/lpe-bspline.cpp:25
msgid "Change number of steps with CTRL pressed"
msgstr ""
-#: ../src/live_effects/lpe-bspline.cpp:58
+#: ../src/live_effects/lpe-bspline.cpp:26
#: ../src/live_effects/lpe-simplify.cpp:33
msgid "Helper size:"
msgstr ""
-#: ../src/live_effects/lpe-bspline.cpp:58
+#: ../src/live_effects/lpe-bspline.cpp:26
#: ../src/live_effects/lpe-simplify.cpp:33
msgid "Helper size"
msgstr ""
-#: ../src/live_effects/lpe-bspline.cpp:59
+#: ../src/live_effects/lpe-bspline.cpp:27
msgid "Ignore cusp nodes"
msgstr ""
-#: ../src/live_effects/lpe-bspline.cpp:59
+#: ../src/live_effects/lpe-bspline.cpp:27
msgid "Change ignoring cusp nodes"
msgstr ""
-#: ../src/live_effects/lpe-bspline.cpp:60
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:57
+#: ../src/live_effects/lpe-bspline.cpp:28
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:56
msgid "Change only selected nodes"
msgstr ""
-#: ../src/live_effects/lpe-bspline.cpp:61
+#: ../src/live_effects/lpe-bspline.cpp:29
msgid "Change weight:"
msgstr ""
-#: ../src/live_effects/lpe-bspline.cpp:61
+#: ../src/live_effects/lpe-bspline.cpp:29
msgid "Change weight of the effect"
msgstr ""
-#: ../src/live_effects/lpe-bspline.cpp:290
+#: ../src/live_effects/lpe-bspline.cpp:260
msgid "Default weight"
msgstr ""
-#: ../src/live_effects/lpe-bspline.cpp:295
+#: ../src/live_effects/lpe-bspline.cpp:265
msgid "Make cusp"
msgstr ""
@@ -9597,104 +9610,88 @@ msgstr ""
msgid "Reverses the second path order"
msgstr ""
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:42
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:41
#: ../share/extensions/render_barcode_qrcode.inx.h:5
msgid "Auto"
msgstr ""
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:43
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:42
msgid "Force arc"
msgstr ""
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:44
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:43
msgid "Force bezier"
msgstr ""
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:54
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:53
msgid "Fillet point"
msgstr ""
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:55
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:54
msgid "Hide knots"
msgstr ""
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:56
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:55
msgid "Ignore 0 radius knots"
msgstr ""
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:58
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:57
msgid "Flexible radius size (%)"
msgstr ""
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:59
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:58
msgid "Use knots distance instead radius"
msgstr ""
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:60
-#: ../src/live_effects/lpe-ruler.cpp:42
-#: ../share/extensions/foldablebox.inx.h:7
-#: ../share/extensions/interp_att_g.inx.h:9
-#: ../share/extensions/layout_nup.inx.h:3
-#: ../share/extensions/printing_marks.inx.h:11
-msgid "Unit:"
-msgstr ""
-
-#. initialise your parameters here:
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:60
-#: ../src/live_effects/lpe-roughen.cpp:39 ../src/live_effects/lpe-ruler.cpp:42
-#: ../src/widgets/ruler.cpp:202
-msgid "Unit"
-msgstr ""
-
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:61
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:59
msgid "Method:"
msgstr ""
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:61
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:59
msgid "Fillets methods"
msgstr ""
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:62
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:60
msgid "Radius (unit or %):"
msgstr ""
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:62
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:60
msgid "Radius, in unit or %"
msgstr ""
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:63
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:61
msgid "Chamfer steps:"
msgstr ""
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:63
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:61
msgid "Chamfer steps"
msgstr ""
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:65
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:63
msgid "Helper size with direction:"
msgstr ""
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:65
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:63
msgid "Helper size with direction"
msgstr ""
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:157
-#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:76
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:154
+#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:71
msgid "Fillet"
msgstr ""
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:161
-#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:78
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:158
+#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:73
msgid "Inverse fillet"
msgstr ""
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:166
-#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:80
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:163
+#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:75
msgid "Chamfer"
msgstr ""
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:170
-#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:82
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:167
+#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:77
msgid "Inverse chamfer"
msgstr ""
@@ -9777,15 +9774,15 @@ msgstr ""
#: ../src/live_effects/lpe-jointype.cpp:31
#: ../src/live_effects/lpe-powerstroke.cpp:227
-#: ../src/live_effects/lpe-taperstroke.cpp:63
+#: ../src/live_effects/lpe-taperstroke.cpp:64
msgid "Beveled"
msgstr ""
#: ../src/live_effects/lpe-jointype.cpp:32
#: ../src/live_effects/lpe-jointype.cpp:40
#: ../src/live_effects/lpe-powerstroke.cpp:228
-#: ../src/live_effects/lpe-taperstroke.cpp:64
-#: ../src/widgets/star-toolbar.cpp:536
+#: ../src/live_effects/lpe-taperstroke.cpp:65
+#: ../src/widgets/star-toolbar.cpp:534
msgid "Rounded"
msgstr ""
@@ -9796,9 +9793,7 @@ msgid "Miter"
msgstr ""
#: ../src/live_effects/lpe-jointype.cpp:34
-#: ../src/live_effects/lpe-taperstroke.cpp:65
-#: ../src/widgets/gradient-toolbar.cpp:1118
-msgid "Reflected"
+msgid "Miter Clip"
msgstr ""
#. {LINEJOIN_EXTRP_MITER, N_("Extrapolated"), "extrapolated"}, // disabled because doesn't work well
@@ -9822,10 +9817,6 @@ msgstr ""
msgid "Peak"
msgstr ""
-#: ../src/live_effects/lpe-jointype.cpp:43
-msgid "Leaned"
-msgstr ""
-
#: ../src/live_effects/lpe-jointype.cpp:51
msgid "Thickness of the stroke"
msgstr ""
@@ -9852,14 +9843,8 @@ msgstr ""
msgid "Determines the shape of the path's corners"
msgstr ""
-#: ../src/live_effects/lpe-jointype.cpp:54
-msgid "Start path lean"
-msgstr ""
-
-#: ../src/live_effects/lpe-jointype.cpp:55
-msgid "End path lean"
-msgstr ""
-
+#. start_lean(_("Start path lean"), _("Start path lean"), "start_lean", &wr, this, 0.),
+#. end_lean(_("End path lean"), _("End path lean"), "end_lean", &wr, this, 0.),
#: ../src/live_effects/lpe-jointype.cpp:56
#: ../src/live_effects/lpe-powerstroke.cpp:244
#: ../src/live_effects/lpe-taperstroke.cpp:79
@@ -9936,253 +9921,239 @@ msgstr ""
msgid "Change knot crossing"
msgstr ""
-#. initialise your parameters here:
-#: ../src/live_effects/lpe-lattice2.cpp:47
-msgid "Control handle 0:"
-msgstr ""
-
#: ../src/live_effects/lpe-lattice2.cpp:47
-msgid ""
-"Control handle 0 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
+#: ../src/live_effects/lpe-perspective-envelope.cpp:43
+msgid "Mirror movements in horizontal"
msgstr ""
#: ../src/live_effects/lpe-lattice2.cpp:48
-msgid "Control handle 1:"
-msgstr ""
-
-#: ../src/live_effects/lpe-lattice2.cpp:48
-msgid ""
-"Control handle 1 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
+#: ../src/live_effects/lpe-perspective-envelope.cpp:44
+msgid "Mirror movements in vertical"
msgstr ""
#: ../src/live_effects/lpe-lattice2.cpp:49
-msgid "Control handle 2:"
+msgid "Control 0:"
msgstr ""
#: ../src/live_effects/lpe-lattice2.cpp:49
-msgid ""
-"Control handle 2 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
+msgid "Control 0 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
msgstr ""
#: ../src/live_effects/lpe-lattice2.cpp:50
-msgid "Control handle 3:"
+msgid "Control 1:"
msgstr ""
#: ../src/live_effects/lpe-lattice2.cpp:50
-msgid ""
-"Control handle 3 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
+msgid "Control 1 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
msgstr ""
#: ../src/live_effects/lpe-lattice2.cpp:51
-msgid "Control handle 4:"
+msgid "Control 2:"
msgstr ""
#: ../src/live_effects/lpe-lattice2.cpp:51
-msgid ""
-"Control handle 4 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
+msgid "Control 2 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
msgstr ""
#: ../src/live_effects/lpe-lattice2.cpp:52
-msgid "Control handle 5:"
+msgid "Control 3:"
msgstr ""
#: ../src/live_effects/lpe-lattice2.cpp:52
-msgid ""
-"Control handle 5 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
+msgid "Control 3 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
msgstr ""
#: ../src/live_effects/lpe-lattice2.cpp:53
-msgid "Control handle 6:"
+msgid "Control 4:"
msgstr ""
#: ../src/live_effects/lpe-lattice2.cpp:53
-msgid ""
-"Control handle 6 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
+msgid "Control 4 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
msgstr ""
#: ../src/live_effects/lpe-lattice2.cpp:54
-msgid "Control handle 7:"
+msgid "Control 5:"
msgstr ""
#: ../src/live_effects/lpe-lattice2.cpp:54
-msgid ""
-"Control handle 7 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
+msgid "Control 5 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
msgstr ""
#: ../src/live_effects/lpe-lattice2.cpp:55
-msgid "Control handle 8x9:"
+msgid "Control 6:"
msgstr ""
#: ../src/live_effects/lpe-lattice2.cpp:55
-msgid ""
-"Control handle 8x9 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along "
-"axes"
+msgid "Control 6 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
msgstr ""
#: ../src/live_effects/lpe-lattice2.cpp:56
-msgid "Control handle 10x11:"
+msgid "Control 7:"
msgstr ""
#: ../src/live_effects/lpe-lattice2.cpp:56
-msgid ""
-"Control handle 10x11 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along "
-"axes"
+msgid "Control 7 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
msgstr ""
#: ../src/live_effects/lpe-lattice2.cpp:57
-msgid "Control handle 12:"
+msgid "Control 8x9:"
msgstr ""
#: ../src/live_effects/lpe-lattice2.cpp:57
msgid ""
-"Control handle 12 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along "
-"axes"
+"Control 8x9 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
msgstr ""
#: ../src/live_effects/lpe-lattice2.cpp:58
-msgid "Control handle 13:"
+msgid "Control 10x11:"
msgstr ""
#: ../src/live_effects/lpe-lattice2.cpp:58
msgid ""
-"Control handle 13 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along "
-"axes"
+"Control 10x11 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
msgstr ""
#: ../src/live_effects/lpe-lattice2.cpp:59
-msgid "Control handle 14:"
+msgid "Control 12:"
msgstr ""
#: ../src/live_effects/lpe-lattice2.cpp:59
-msgid ""
-"Control handle 14 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along "
-"axes"
+msgid "Control 12 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
msgstr ""
#: ../src/live_effects/lpe-lattice2.cpp:60
-msgid "Control handle 15:"
+msgid "Control 13:"
msgstr ""
#: ../src/live_effects/lpe-lattice2.cpp:60
-msgid ""
-"Control handle 15 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along "
-"axes"
+msgid "Control 13 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
msgstr ""
#: ../src/live_effects/lpe-lattice2.cpp:61
-msgid "Control handle 16:"
+msgid "Control 14:"
msgstr ""
#: ../src/live_effects/lpe-lattice2.cpp:61
-msgid ""
-"Control handle 16 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along "
-"axes"
+msgid "Control 14 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
msgstr ""
#: ../src/live_effects/lpe-lattice2.cpp:62
-msgid "Control handle 17:"
+msgid "Control 15:"
msgstr ""
#: ../src/live_effects/lpe-lattice2.cpp:62
-msgid ""
-"Control handle 17 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along "
-"axes"
+msgid "Control 15 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
msgstr ""
#: ../src/live_effects/lpe-lattice2.cpp:63
-msgid "Control handle 18:"
+msgid "Control 16:"
msgstr ""
#: ../src/live_effects/lpe-lattice2.cpp:63
-msgid ""
-"Control handle 18 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along "
-"axes"
+msgid "Control 16 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
msgstr ""
#: ../src/live_effects/lpe-lattice2.cpp:64
-msgid "Control handle 19:"
+msgid "Control 17:"
msgstr ""
#: ../src/live_effects/lpe-lattice2.cpp:64
-msgid ""
-"Control handle 19 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along "
-"axes"
+msgid "Control 17 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
msgstr ""
#: ../src/live_effects/lpe-lattice2.cpp:65
-msgid "Control handle 20x21:"
+msgid "Control 18:"
msgstr ""
#: ../src/live_effects/lpe-lattice2.cpp:65
-msgid ""
-"Control handle 20x21 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along "
-"axes"
+msgid "Control 18 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
msgstr ""
#: ../src/live_effects/lpe-lattice2.cpp:66
-msgid "Control handle 22x23:"
+msgid "Control 19:"
msgstr ""
#: ../src/live_effects/lpe-lattice2.cpp:66
-msgid ""
-"Control handle 22x23 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along "
-"axes"
+msgid "Control 19 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
msgstr ""
#: ../src/live_effects/lpe-lattice2.cpp:67
-msgid "Control handle 24x26:"
+msgid "Control 20x21:"
msgstr ""
#: ../src/live_effects/lpe-lattice2.cpp:67
msgid ""
-"Control handle 24x26 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along "
-"axes"
+"Control 20x21 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
msgstr ""
#: ../src/live_effects/lpe-lattice2.cpp:68
-msgid "Control handle 25x27:"
+msgid "Control 22x23:"
msgstr ""
#: ../src/live_effects/lpe-lattice2.cpp:68
msgid ""
-"Control handle 25x27 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along "
-"axes"
+"Control 22x23 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
msgstr ""
#: ../src/live_effects/lpe-lattice2.cpp:69
-msgid "Control handle 28x30:"
+msgid "Control 24x26:"
msgstr ""
#: ../src/live_effects/lpe-lattice2.cpp:69
msgid ""
-"Control handle 28x30 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along "
-"axes"
+"Control 24x26 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
msgstr ""
#: ../src/live_effects/lpe-lattice2.cpp:70
-msgid "Control handle 29x31:"
+msgid "Control 25x27:"
msgstr ""
#: ../src/live_effects/lpe-lattice2.cpp:70
msgid ""
-"Control handle 29x31 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along "
-"axes"
+"Control 25x27 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
msgstr ""
#: ../src/live_effects/lpe-lattice2.cpp:71
-msgid "Control handle 32x33x34x35:"
+msgid "Control 28x30:"
msgstr ""
#: ../src/live_effects/lpe-lattice2.cpp:71
msgid ""
-"Control handle 32x33x34x35 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move "
-"along axes"
+"Control 28x30 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
+msgstr ""
+
+#: ../src/live_effects/lpe-lattice2.cpp:72
+msgid "Control 29x31:"
+msgstr ""
+
+#: ../src/live_effects/lpe-lattice2.cpp:72
+msgid ""
+"Control 29x31 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
+msgstr ""
+
+#: ../src/live_effects/lpe-lattice2.cpp:73
+msgid "Control 32x33x34x35:"
+msgstr ""
+
+#: ../src/live_effects/lpe-lattice2.cpp:73
+msgid ""
+"Control 32x33x34x35 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along "
+"axes"
msgstr ""
-#: ../src/live_effects/lpe-lattice2.cpp:224
+#: ../src/live_effects/lpe-lattice2.cpp:236
msgid "Reset grid"
msgstr ""
+#: ../src/live_effects/lpe-lattice2.cpp:268
+#: ../src/live_effects/lpe-lattice2.cpp:283
+msgid "Show Points"
+msgstr ""
+
+#: ../src/live_effects/lpe-lattice2.cpp:281
+msgid "Hide Points"
+msgstr ""
+
#: ../src/live_effects/lpe-patternalongpath.cpp:50
#: ../share/extensions/pathalongpath.inx.h:10
msgid "Single"
@@ -10276,57 +10247,56 @@ msgstr ""
msgid "Fuse ends closer than this number. 0 means don't fuse."
msgstr ""
-#: ../src/live_effects/lpe-perspective-envelope.cpp:37
+#: ../src/live_effects/lpe-perspective-envelope.cpp:35
#: ../share/extensions/perspective.inx.h:1
msgid "Perspective"
msgstr ""
-#: ../src/live_effects/lpe-perspective-envelope.cpp:38
+#: ../src/live_effects/lpe-perspective-envelope.cpp:36
msgid "Envelope deformation"
msgstr ""
-#. initialise your parameters here:
-#: ../src/live_effects/lpe-perspective-envelope.cpp:46
+#: ../src/live_effects/lpe-perspective-envelope.cpp:45
msgid "Type"
msgstr ""
-#: ../src/live_effects/lpe-perspective-envelope.cpp:46
+#: ../src/live_effects/lpe-perspective-envelope.cpp:45
msgid "Select the type of deformation"
msgstr ""
-#: ../src/live_effects/lpe-perspective-envelope.cpp:47
+#: ../src/live_effects/lpe-perspective-envelope.cpp:46
msgid "Top Left"
msgstr ""
-#: ../src/live_effects/lpe-perspective-envelope.cpp:47
+#: ../src/live_effects/lpe-perspective-envelope.cpp:46
msgid "Top Left - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
msgstr ""
-#: ../src/live_effects/lpe-perspective-envelope.cpp:48
+#: ../src/live_effects/lpe-perspective-envelope.cpp:47
msgid "Top Right"
msgstr ""
-#: ../src/live_effects/lpe-perspective-envelope.cpp:48
+#: ../src/live_effects/lpe-perspective-envelope.cpp:47
msgid "Top Right - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
msgstr ""
-#: ../src/live_effects/lpe-perspective-envelope.cpp:49
+#: ../src/live_effects/lpe-perspective-envelope.cpp:48
msgid "Down Left"
msgstr ""
-#: ../src/live_effects/lpe-perspective-envelope.cpp:49
+#: ../src/live_effects/lpe-perspective-envelope.cpp:48
msgid "Down Left - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
msgstr ""
-#: ../src/live_effects/lpe-perspective-envelope.cpp:50
+#: ../src/live_effects/lpe-perspective-envelope.cpp:49
msgid "Down Right"
msgstr ""
-#: ../src/live_effects/lpe-perspective-envelope.cpp:50
+#: ../src/live_effects/lpe-perspective-envelope.cpp:49
msgid "Down Right - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
msgstr ""
-#: ../src/live_effects/lpe-perspective-envelope.cpp:257
+#: ../src/live_effects/lpe-perspective-envelope.cpp:268
msgid "Handles:"
msgstr ""
@@ -10564,65 +10534,62 @@ msgid ""
"amount"
msgstr ""
-#: ../src/live_effects/lpe-roughen.cpp:30 ../share/extensions/addnodes.inx.h:4
+#: ../src/live_effects/lpe-roughen.cpp:29 ../share/extensions/addnodes.inx.h:4
msgid "By number of segments"
msgstr ""
-#: ../src/live_effects/lpe-roughen.cpp:31
+#: ../src/live_effects/lpe-roughen.cpp:30
msgid "By max. segment size"
msgstr ""
-#: ../src/live_effects/lpe-roughen.cpp:40
+#. initialise your parameters here:
+#: ../src/live_effects/lpe-roughen.cpp:38
msgid "Method"
msgstr ""
-#: ../src/live_effects/lpe-roughen.cpp:40
+#: ../src/live_effects/lpe-roughen.cpp:38
msgid "Division method"
msgstr ""
-#: ../src/live_effects/lpe-roughen.cpp:42
+#: ../src/live_effects/lpe-roughen.cpp:40
msgid "Max. segment size"
msgstr ""
-#: ../src/live_effects/lpe-roughen.cpp:44
+#: ../src/live_effects/lpe-roughen.cpp:42
msgid "Number of segments"
msgstr ""
-#: ../src/live_effects/lpe-roughen.cpp:46
+#: ../src/live_effects/lpe-roughen.cpp:44
msgid "Max. displacement in X"
msgstr ""
-#: ../src/live_effects/lpe-roughen.cpp:48
+#: ../src/live_effects/lpe-roughen.cpp:46
msgid "Max. displacement in Y"
msgstr ""
-#: ../src/live_effects/lpe-roughen.cpp:50
+#: ../src/live_effects/lpe-roughen.cpp:48
msgid "Global randomize"
msgstr ""
-#: ../src/live_effects/lpe-roughen.cpp:52
+#: ../src/live_effects/lpe-roughen.cpp:50
#: ../share/extensions/radiusrand.inx.h:5
msgid "Shift nodes"
msgstr ""
-#: ../src/live_effects/lpe-roughen.cpp:54
+#: ../src/live_effects/lpe-roughen.cpp:52
#: ../share/extensions/radiusrand.inx.h:6
msgid "Shift node handles"
msgstr ""
-#: ../src/live_effects/lpe-roughen.cpp:103
-msgid "<b>Roughen unit</b>"
-msgstr ""
-
-#: ../src/live_effects/lpe-roughen.cpp:111
+#: ../src/live_effects/lpe-roughen.cpp:100
msgid "<b>Add nodes</b> Subdivide each segment"
msgstr ""
-#: ../src/live_effects/lpe-roughen.cpp:120
+#: ../src/live_effects/lpe-roughen.cpp:109
msgid "<b>Jitter nodes</b> Move nodes/handles"
msgstr ""
-#: ../src/live_effects/lpe-roughen.cpp:129
+#: ../src/live_effects/lpe-roughen.cpp:118
msgid "<b>Extra roughen</b> Add a extra layer of rough"
msgstr ""
@@ -10647,11 +10614,11 @@ msgctxt "Border mark"
msgid "None"
msgstr ""
-#: ../src/live_effects/lpe-ruler.cpp:33 ../src/widgets/arc-toolbar.cpp:328
+#: ../src/live_effects/lpe-ruler.cpp:33 ../src/widgets/arc-toolbar.cpp:319
msgid "Start"
msgstr ""
-#: ../src/live_effects/lpe-ruler.cpp:34 ../src/widgets/arc-toolbar.cpp:341
+#: ../src/live_effects/lpe-ruler.cpp:34 ../src/widgets/arc-toolbar.cpp:332
msgid "End"
msgstr ""
@@ -10663,6 +10630,18 @@ msgstr ""
msgid "Distance between successive ruler marks"
msgstr ""
+#: ../src/live_effects/lpe-ruler.cpp:42
+#: ../share/extensions/foldablebox.inx.h:7
+#: ../share/extensions/interp_att_g.inx.h:9
+#: ../share/extensions/layout_nup.inx.h:3
+#: ../share/extensions/printing_marks.inx.h:11
+msgid "Unit:"
+msgstr ""
+
+#: ../src/live_effects/lpe-ruler.cpp:42 ../src/widgets/ruler.cpp:202
+msgid "Unit"
+msgstr ""
+
#: ../src/live_effects/lpe-ruler.cpp:43
msgid "Ma_jor length:"
msgstr ""
@@ -10764,34 +10743,18 @@ msgid "Max degree difference on handles to preform a smooth"
msgstr ""
#: ../src/live_effects/lpe-simplify.cpp:34
-msgid "Helper nodes"
-msgstr ""
-
-#: ../src/live_effects/lpe-simplify.cpp:34
-msgid "Show helper nodes"
-msgstr ""
-
-#: ../src/live_effects/lpe-simplify.cpp:36
-msgid "Helper handles"
-msgstr ""
-
-#: ../src/live_effects/lpe-simplify.cpp:36
-msgid "Show helper handles"
-msgstr ""
-
-#: ../src/live_effects/lpe-simplify.cpp:38
msgid "Paths separately"
msgstr ""
-#: ../src/live_effects/lpe-simplify.cpp:38
+#: ../src/live_effects/lpe-simplify.cpp:34
msgid "Simplifying paths (separately)"
msgstr ""
-#: ../src/live_effects/lpe-simplify.cpp:40
+#: ../src/live_effects/lpe-simplify.cpp:36
msgid "Just coalesce"
msgstr ""
-#: ../src/live_effects/lpe-simplify.cpp:40
+#: ../src/live_effects/lpe-simplify.cpp:36
msgid "Simplify just coalesce"
msgstr ""
@@ -10880,7 +10843,7 @@ msgid "How many construction lines (tangents) to draw"
msgstr ""
#: ../src/live_effects/lpe-sketch.cpp:58
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2878
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2894
#: ../share/extensions/render_alphabetsoup.inx.h:3
msgid "Scale:"
msgstr ""
@@ -10980,11 +10943,11 @@ msgstr ""
msgid "Limit for miter joins"
msgstr ""
-#: ../src/live_effects/lpe-taperstroke.cpp:536
+#: ../src/live_effects/lpe-taperstroke.cpp:448
msgid "Start point of the taper"
msgstr ""
-#: ../src/live_effects/lpe-taperstroke.cpp:540
+#: ../src/live_effects/lpe-taperstroke.cpp:452
msgid "End point of the taper"
msgstr ""
@@ -11050,77 +11013,77 @@ msgstr ""
msgid "Change enumeration parameter"
msgstr ""
-#: ../src/live_effects/parameter/filletchamferpointarray.cpp:782
-#: ../src/live_effects/parameter/filletchamferpointarray.cpp:843
+#: ../src/live_effects/parameter/filletchamferpointarray.cpp:771
+#: ../src/live_effects/parameter/filletchamferpointarray.cpp:832
msgid ""
"<b>Chamfer</b>: <b>Ctrl+Click</b> toggle type, <b>Shift+Click</b> open "
"dialog, <b>Ctrl+Alt+Click</b> reset"
msgstr ""
-#: ../src/live_effects/parameter/filletchamferpointarray.cpp:786
-#: ../src/live_effects/parameter/filletchamferpointarray.cpp:847
+#: ../src/live_effects/parameter/filletchamferpointarray.cpp:775
+#: ../src/live_effects/parameter/filletchamferpointarray.cpp:836
msgid ""
"<b>Inverse Chamfer</b>: <b>Ctrl+Click</b> toggle type, <b>Shift+Click</b> "
"open dialog, <b>Ctrl+Alt+Click</b> reset"
msgstr ""
-#: ../src/live_effects/parameter/filletchamferpointarray.cpp:790
-#: ../src/live_effects/parameter/filletchamferpointarray.cpp:851
+#: ../src/live_effects/parameter/filletchamferpointarray.cpp:779
+#: ../src/live_effects/parameter/filletchamferpointarray.cpp:840
msgid ""
"<b>Inverse Fillet</b>: <b>Ctrl+Click</b> toggle type, <b>Shift+Click</b> "
"open dialog, <b>Ctrl+Alt+Click</b> reset"
msgstr ""
-#: ../src/live_effects/parameter/filletchamferpointarray.cpp:794
-#: ../src/live_effects/parameter/filletchamferpointarray.cpp:855
+#: ../src/live_effects/parameter/filletchamferpointarray.cpp:783
+#: ../src/live_effects/parameter/filletchamferpointarray.cpp:844
msgid ""
"<b>Fillet</b>: <b>Ctrl+Click</b> toggle type, <b>Shift+Click</b> open "
"dialog, <b>Ctrl+Alt+Click</b> reset"
msgstr ""
-#: ../src/live_effects/parameter/originalpath.cpp:71
-#: ../src/live_effects/parameter/originalpatharray.cpp:159
+#: ../src/live_effects/parameter/originalpath.cpp:67
+#: ../src/live_effects/parameter/originalpatharray.cpp:155
msgid "Link to path"
msgstr ""
-#: ../src/live_effects/parameter/originalpath.cpp:83
+#: ../src/live_effects/parameter/originalpath.cpp:79
msgid "Select original"
msgstr ""
-#: ../src/live_effects/parameter/originalpatharray.cpp:94
-#: ../src/widgets/gradient-toolbar.cpp:1205
+#: ../src/live_effects/parameter/originalpatharray.cpp:90
+#: ../src/widgets/gradient-toolbar.cpp:1208
msgid "Reverse"
msgstr ""
-#: ../src/live_effects/parameter/originalpatharray.cpp:134
-#: ../src/live_effects/parameter/originalpatharray.cpp:319
-#: ../src/live_effects/parameter/path.cpp:475
+#: ../src/live_effects/parameter/originalpatharray.cpp:130
+#: ../src/live_effects/parameter/originalpatharray.cpp:315
+#: ../src/live_effects/parameter/path.cpp:481
msgid "Link path parameter to path"
msgstr ""
-#: ../src/live_effects/parameter/originalpatharray.cpp:171
+#: ../src/live_effects/parameter/originalpatharray.cpp:167
msgid "Remove Path"
msgstr ""
-#: ../src/live_effects/parameter/originalpatharray.cpp:183
+#: ../src/live_effects/parameter/originalpatharray.cpp:179
#: ../src/ui/dialog/objects.cpp:1823
msgid "Move Down"
msgstr ""
-#: ../src/live_effects/parameter/originalpatharray.cpp:195
+#: ../src/live_effects/parameter/originalpatharray.cpp:191
#: ../src/ui/dialog/objects.cpp:1831
msgid "Move Up"
msgstr ""
-#: ../src/live_effects/parameter/originalpatharray.cpp:235
+#: ../src/live_effects/parameter/originalpatharray.cpp:231
msgid "Move path up"
msgstr ""
-#: ../src/live_effects/parameter/originalpatharray.cpp:265
+#: ../src/live_effects/parameter/originalpatharray.cpp:261
msgid "Move path down"
msgstr ""
-#: ../src/live_effects/parameter/originalpatharray.cpp:283
+#: ../src/live_effects/parameter/originalpatharray.cpp:279
msgid "Remove path"
msgstr ""
@@ -11144,11 +11107,11 @@ msgstr ""
msgid "Link to path on clipboard"
msgstr ""
-#: ../src/live_effects/parameter/path.cpp:443
+#: ../src/live_effects/parameter/path.cpp:449
msgid "Paste path parameter"
msgstr ""
-#: ../src/live_effects/parameter/point.cpp:103
+#: ../src/live_effects/parameter/point.cpp:124
msgid "Change point parameter"
msgstr ""
@@ -11456,7 +11419,7 @@ msgstr ""
msgid "Start Inkscape in interactive shell mode."
msgstr ""
-#: ../src/main.cpp:871 ../src/main.cpp:1283
+#: ../src/main.cpp:871 ../src/main.cpp:1280
msgid ""
"[OPTIONS...] [FILE...]\n"
"\n"
@@ -11464,17 +11427,17 @@ msgid ""
msgstr ""
#. ## Add a menu for clear()
-#: ../src/menus-skeleton.h:16 ../src/ui/dialog/debug.cpp:83
+#: ../src/menus-skeleton.h:16 ../src/ui/dialog/debug.cpp:79
msgid "_File"
msgstr ""
#. " <verb verb-id=\"FileExportToOCAL\" />\n"
#. " <verb verb-id=\"DialogMetadata\" />\n"
-#: ../src/menus-skeleton.h:41 ../src/verbs.cpp:2713 ../src/verbs.cpp:2721
+#: ../src/menus-skeleton.h:41 ../src/verbs.cpp:2682 ../src/verbs.cpp:2690
msgid "_Edit"
msgstr ""
-#: ../src/menus-skeleton.h:51 ../src/verbs.cpp:2477
+#: ../src/menus-skeleton.h:51 ../src/verbs.cpp:2446
msgid "Paste Si_ze"
msgstr ""
@@ -11559,27 +11522,27 @@ msgstr ""
msgid "Tutorials"
msgstr ""
-#: ../src/path-chemistry.cpp:54
+#: ../src/path-chemistry.cpp:63
msgid "Select <b>object(s)</b> to combine."
msgstr ""
-#: ../src/path-chemistry.cpp:58
+#: ../src/path-chemistry.cpp:67
msgid "Combining paths..."
msgstr ""
-#: ../src/path-chemistry.cpp:174
+#: ../src/path-chemistry.cpp:177
msgid "Combine"
msgstr ""
-#: ../src/path-chemistry.cpp:181
+#: ../src/path-chemistry.cpp:184
msgid "<b>No path(s)</b> to combine in the selection."
msgstr ""
-#: ../src/path-chemistry.cpp:193
+#: ../src/path-chemistry.cpp:196
msgid "Select <b>path(s)</b> to break apart."
msgstr ""
-#: ../src/path-chemistry.cpp:197
+#: ../src/path-chemistry.cpp:200
msgid "Breaking apart paths..."
msgstr ""
@@ -11599,27 +11562,27 @@ msgstr ""
msgid "Converting objects to paths..."
msgstr ""
-#: ../src/path-chemistry.cpp:327
+#: ../src/path-chemistry.cpp:324
msgid "Object to path"
msgstr ""
-#: ../src/path-chemistry.cpp:329
+#: ../src/path-chemistry.cpp:326
msgid "<b>No objects</b> to convert to path in the selection."
msgstr ""
-#: ../src/path-chemistry.cpp:618
+#: ../src/path-chemistry.cpp:613
msgid "Select <b>path(s)</b> to reverse."
msgstr ""
-#: ../src/path-chemistry.cpp:627
+#: ../src/path-chemistry.cpp:622
msgid "Reversing paths..."
msgstr ""
-#: ../src/path-chemistry.cpp:662
+#: ../src/path-chemistry.cpp:657
msgid "Reverse path"
msgstr ""
-#: ../src/path-chemistry.cpp:664
+#: ../src/path-chemistry.cpp:659
msgid "<b>No paths</b> to reverse in the selection."
msgstr ""
@@ -11742,7 +11705,7 @@ msgstr ""
#. Create the Title label and edit control
#. TRANSLATORS: for info, see http://www.w3.org/TR/2000/CR-SVG-20000802/linking.html#AElementXLinkTitleAttribute
-#: ../src/rdf.cpp:235 ../src/ui/dialog/filedialogimpl-win32.cpp:1952
+#: ../src/rdf.cpp:235 ../src/ui/dialog/filedialogimpl-win32.cpp:1960
#: ../src/ui/dialog/object-attributes.cpp:57
msgid "Title:"
msgstr ""
@@ -11885,51 +11848,56 @@ msgstr ""
msgid "Fixup broken links"
msgstr ""
-#: ../src/selection-chemistry.cpp:406
+#: ../src/selection-chemistry.cpp:401
msgid "Delete text"
msgstr ""
-#: ../src/selection-chemistry.cpp:414
+#: ../src/selection-chemistry.cpp:409
msgid "<b>Nothing</b> was deleted."
msgstr ""
-#: ../src/selection-chemistry.cpp:433
+#: ../src/selection-chemistry.cpp:426
#: ../src/ui/dialog/calligraphic-profile-rename.cpp:75
#: ../src/ui/dialog/swatches.cpp:277 ../src/ui/tools/text-tool.cpp:965
#: ../src/widgets/eraser-toolbar.cpp:93
-#: ../src/widgets/gradient-toolbar.cpp:1181
-#: ../src/widgets/gradient-toolbar.cpp:1195
-#: ../src/widgets/gradient-toolbar.cpp:1209
+#: ../src/widgets/gradient-toolbar.cpp:1184
+#: ../src/widgets/gradient-toolbar.cpp:1198
+#: ../src/widgets/gradient-toolbar.cpp:1212
#: ../src/widgets/node-toolbar.cpp:401
msgid "Delete"
msgstr ""
-#: ../src/selection-chemistry.cpp:461
+#: ../src/selection-chemistry.cpp:454
msgid "Select <b>object(s)</b> to duplicate."
msgstr ""
-#: ../src/selection-chemistry.cpp:572
+#: ../src/selection-chemistry.cpp:551
+#, c-format
+msgid "%s copy"
+msgstr ""
+
+#: ../src/selection-chemistry.cpp:574
msgid "Delete all"
msgstr ""
-#: ../src/selection-chemistry.cpp:763
+#: ../src/selection-chemistry.cpp:762
msgid "Select <b>some objects</b> to group."
msgstr ""
-#: ../src/selection-chemistry.cpp:778
+#: ../src/selection-chemistry.cpp:775
msgctxt "Verb"
msgid "Group"
msgstr ""
-#: ../src/selection-chemistry.cpp:801
+#: ../src/selection-chemistry.cpp:798
msgid "Select a <b>group</b> to ungroup."
msgstr ""
-#: ../src/selection-chemistry.cpp:816
+#: ../src/selection-chemistry.cpp:813
msgid "<b>No groups</b> to ungroup in the selection."
msgstr ""
-#: ../src/selection-chemistry.cpp:874 ../src/sp-item-group.cpp:575
+#: ../src/selection-chemistry.cpp:869 ../src/sp-item-group.cpp:554
msgid "Ungroup"
msgstr ""
@@ -11937,357 +11905,357 @@ msgstr ""
msgid "Select <b>object(s)</b> to raise."
msgstr ""
-#: ../src/selection-chemistry.cpp:962 ../src/selection-chemistry.cpp:1019
-#: ../src/selection-chemistry.cpp:1047 ../src/selection-chemistry.cpp:1109
+#: ../src/selection-chemistry.cpp:962 ../src/selection-chemistry.cpp:1015
+#: ../src/selection-chemistry.cpp:1041 ../src/selection-chemistry.cpp:1099
msgid ""
"You cannot raise/lower objects from <b>different groups</b> or <b>layers</b>."
msgstr ""
#. TRANSLATORS: "Raise" means "to raise an object" in the undo history
-#: ../src/selection-chemistry.cpp:1003
+#: ../src/selection-chemistry.cpp:999
msgctxt "Undo action"
msgid "Raise"
msgstr ""
-#: ../src/selection-chemistry.cpp:1011
+#: ../src/selection-chemistry.cpp:1007
msgid "Select <b>object(s)</b> to raise to top."
msgstr ""
-#: ../src/selection-chemistry.cpp:1034
+#: ../src/selection-chemistry.cpp:1028
msgid "Raise to top"
msgstr ""
-#: ../src/selection-chemistry.cpp:1041
+#: ../src/selection-chemistry.cpp:1035
msgid "Select <b>object(s)</b> to lower."
msgstr ""
#. TRANSLATORS: "Lower" means "to lower an object" in the undo history
-#: ../src/selection-chemistry.cpp:1093
+#: ../src/selection-chemistry.cpp:1083
msgctxt "Undo action"
msgid "Lower"
msgstr ""
-#: ../src/selection-chemistry.cpp:1101
+#: ../src/selection-chemistry.cpp:1091
msgid "Select <b>object(s)</b> to lower to bottom."
msgstr ""
-#: ../src/selection-chemistry.cpp:1136
+#: ../src/selection-chemistry.cpp:1122
msgid "Lower to bottom"
msgstr ""
-#: ../src/selection-chemistry.cpp:1146
+#: ../src/selection-chemistry.cpp:1132
msgid "Nothing to undo."
msgstr ""
-#: ../src/selection-chemistry.cpp:1157
+#: ../src/selection-chemistry.cpp:1143
msgid "Nothing to redo."
msgstr ""
-#: ../src/selection-chemistry.cpp:1229
+#: ../src/selection-chemistry.cpp:1215
msgid "Paste"
msgstr ""
-#: ../src/selection-chemistry.cpp:1237
+#: ../src/selection-chemistry.cpp:1223
msgid "Paste style"
msgstr ""
-#: ../src/selection-chemistry.cpp:1247
+#: ../src/selection-chemistry.cpp:1233
msgid "Paste live path effect"
msgstr ""
-#: ../src/selection-chemistry.cpp:1269
+#: ../src/selection-chemistry.cpp:1255
msgid "Select <b>object(s)</b> to remove live path effects from."
msgstr ""
-#: ../src/selection-chemistry.cpp:1281
+#: ../src/selection-chemistry.cpp:1267
msgid "Remove live path effect"
msgstr ""
-#: ../src/selection-chemistry.cpp:1292
+#: ../src/selection-chemistry.cpp:1278
msgid "Select <b>object(s)</b> to remove filters from."
msgstr ""
-#: ../src/selection-chemistry.cpp:1302
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1678
+#: ../src/selection-chemistry.cpp:1288
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1693
msgid "Remove filter"
msgstr ""
-#: ../src/selection-chemistry.cpp:1311
+#: ../src/selection-chemistry.cpp:1297
msgid "Paste size"
msgstr ""
-#: ../src/selection-chemistry.cpp:1320
+#: ../src/selection-chemistry.cpp:1306
msgid "Paste size separately"
msgstr ""
-#: ../src/selection-chemistry.cpp:1349
+#: ../src/selection-chemistry.cpp:1335
msgid "Select <b>object(s)</b> to move to the layer above."
msgstr ""
-#: ../src/selection-chemistry.cpp:1376
+#: ../src/selection-chemistry.cpp:1360
msgid "Raise to next layer"
msgstr ""
-#: ../src/selection-chemistry.cpp:1383
+#: ../src/selection-chemistry.cpp:1367
msgid "No more layers above."
msgstr ""
-#: ../src/selection-chemistry.cpp:1395
+#: ../src/selection-chemistry.cpp:1378
msgid "Select <b>object(s)</b> to move to the layer below."
msgstr ""
-#: ../src/selection-chemistry.cpp:1422
+#: ../src/selection-chemistry.cpp:1403
msgid "Lower to previous layer"
msgstr ""
-#: ../src/selection-chemistry.cpp:1429
+#: ../src/selection-chemistry.cpp:1410
msgid "No more layers below."
msgstr ""
-#: ../src/selection-chemistry.cpp:1441
+#: ../src/selection-chemistry.cpp:1420
msgid "Select <b>object(s)</b> to move."
msgstr ""
-#: ../src/selection-chemistry.cpp:1459 ../src/verbs.cpp:2656
+#: ../src/selection-chemistry.cpp:1437 ../src/verbs.cpp:2625
msgid "Move selection to layer"
msgstr ""
#. An SVG element cannot have a transform. We could change 'x' and 'y' in response
#. to a translation... but leave that for another day.
-#: ../src/selection-chemistry.cpp:1549 ../src/seltrans.cpp:388
+#: ../src/selection-chemistry.cpp:1526 ../src/seltrans.cpp:390
msgid "Cannot transform an embedded SVG."
msgstr ""
-#: ../src/selection-chemistry.cpp:1720
+#: ../src/selection-chemistry.cpp:1696
msgid "Remove transform"
msgstr ""
-#: ../src/selection-chemistry.cpp:1827
+#: ../src/selection-chemistry.cpp:1803
msgid "Rotate 90° CCW"
msgstr ""
-#: ../src/selection-chemistry.cpp:1827
+#: ../src/selection-chemistry.cpp:1803
msgid "Rotate 90° CW"
msgstr ""
-#: ../src/selection-chemistry.cpp:1848 ../src/seltrans.cpp:483
-#: ../src/ui/dialog/transformation.cpp:893
+#: ../src/selection-chemistry.cpp:1824 ../src/seltrans.cpp:483
+#: ../src/ui/dialog/transformation.cpp:891
msgid "Rotate"
msgstr ""
-#: ../src/selection-chemistry.cpp:2204
+#: ../src/selection-chemistry.cpp:2173
msgid "Rotate by pixels"
msgstr ""
-#: ../src/selection-chemistry.cpp:2234 ../src/seltrans.cpp:480
-#: ../src/ui/dialog/transformation.cpp:868
+#: ../src/selection-chemistry.cpp:2203 ../src/seltrans.cpp:480
+#: ../src/ui/dialog/transformation.cpp:865 ../src/ui/widget/page-sizer.cpp:448
#: ../share/extensions/interp_att_g.inx.h:12
msgid "Scale"
msgstr ""
-#: ../src/selection-chemistry.cpp:2259
+#: ../src/selection-chemistry.cpp:2228
msgid "Scale by whole factor"
msgstr ""
-#: ../src/selection-chemistry.cpp:2274
+#: ../src/selection-chemistry.cpp:2243
msgid "Move vertically"
msgstr ""
-#: ../src/selection-chemistry.cpp:2277
+#: ../src/selection-chemistry.cpp:2246
msgid "Move horizontally"
msgstr ""
-#: ../src/selection-chemistry.cpp:2280 ../src/selection-chemistry.cpp:2306
-#: ../src/seltrans.cpp:477 ../src/ui/dialog/transformation.cpp:806
+#: ../src/selection-chemistry.cpp:2249 ../src/selection-chemistry.cpp:2275
+#: ../src/seltrans.cpp:477 ../src/ui/dialog/transformation.cpp:802
msgid "Move"
msgstr ""
-#: ../src/selection-chemistry.cpp:2300
+#: ../src/selection-chemistry.cpp:2269
msgid "Move vertically by pixels"
msgstr ""
-#: ../src/selection-chemistry.cpp:2303
+#: ../src/selection-chemistry.cpp:2272
msgid "Move horizontally by pixels"
msgstr ""
-#: ../src/selection-chemistry.cpp:2435
+#: ../src/selection-chemistry.cpp:2475
msgid "The selection has no applied path effect."
msgstr ""
-#: ../src/selection-chemistry.cpp:2607 ../src/ui/dialog/clonetiler.cpp:2223
+#: ../src/selection-chemistry.cpp:2567 ../src/ui/dialog/clonetiler.cpp:2221
msgid "Select an <b>object</b> to clone."
msgstr ""
-#: ../src/selection-chemistry.cpp:2643
+#: ../src/selection-chemistry.cpp:2602
msgctxt "Action"
msgid "Clone"
msgstr ""
-#: ../src/selection-chemistry.cpp:2659
+#: ../src/selection-chemistry.cpp:2616
msgid "Select <b>clones</b> to relink."
msgstr ""
-#: ../src/selection-chemistry.cpp:2666
+#: ../src/selection-chemistry.cpp:2623
msgid "Copy an <b>object</b> to clipboard to relink clones to."
msgstr ""
-#: ../src/selection-chemistry.cpp:2689
+#: ../src/selection-chemistry.cpp:2644
msgid "<b>No clones to relink</b> in the selection."
msgstr ""
-#: ../src/selection-chemistry.cpp:2692
+#: ../src/selection-chemistry.cpp:2647
msgid "Relink clone"
msgstr ""
-#: ../src/selection-chemistry.cpp:2706
+#: ../src/selection-chemistry.cpp:2661
msgid "Select <b>clones</b> to unlink."
msgstr ""
-#: ../src/selection-chemistry.cpp:2762
+#: ../src/selection-chemistry.cpp:2714
msgid "<b>No clones to unlink</b> in the selection."
msgstr ""
-#: ../src/selection-chemistry.cpp:2766
+#: ../src/selection-chemistry.cpp:2718
msgid "Unlink clone"
msgstr ""
-#: ../src/selection-chemistry.cpp:2779
+#: ../src/selection-chemistry.cpp:2731
msgid ""
"Select a <b>clone</b> to go to its original. Select a <b>linked offset</b> "
"to go to its source. Select a <b>text on path</b> to go to the path. Select "
"a <b>flowed text</b> to go to its frame."
msgstr ""
-#: ../src/selection-chemistry.cpp:2827
+#: ../src/selection-chemistry.cpp:2781
msgid ""
"<b>Cannot find</b> the object to select (orphaned clone, offset, textpath, "
"flowed text?)"
msgstr ""
-#: ../src/selection-chemistry.cpp:2833
+#: ../src/selection-chemistry.cpp:2787
msgid ""
"The object you're trying to select is <b>not visible</b> (it is in &lt;"
"defs&gt;)"
msgstr ""
-#: ../src/selection-chemistry.cpp:2922
+#: ../src/selection-chemistry.cpp:2877
msgid "Select path(s) to fill."
msgstr ""
-#: ../src/selection-chemistry.cpp:2940
+#: ../src/selection-chemistry.cpp:2895
msgid "Select <b>object(s)</b> to convert to marker."
msgstr ""
-#: ../src/selection-chemistry.cpp:3015
+#: ../src/selection-chemistry.cpp:2969
msgid "Objects to marker"
msgstr ""
-#: ../src/selection-chemistry.cpp:3040
+#: ../src/selection-chemistry.cpp:2995
msgid "Select <b>object(s)</b> to convert to guides."
msgstr ""
-#: ../src/selection-chemistry.cpp:3063
+#: ../src/selection-chemistry.cpp:3016
msgid "Objects to guides"
msgstr ""
-#: ../src/selection-chemistry.cpp:3099
+#: ../src/selection-chemistry.cpp:3052
msgid "Select <b>objects</b> to convert to symbol."
msgstr ""
-#: ../src/selection-chemistry.cpp:3202
+#: ../src/selection-chemistry.cpp:3153
msgid "Group to symbol"
msgstr ""
-#: ../src/selection-chemistry.cpp:3221
+#: ../src/selection-chemistry.cpp:3172
msgid "Select a <b>symbol</b> to extract objects from."
msgstr ""
-#: ../src/selection-chemistry.cpp:3230
+#: ../src/selection-chemistry.cpp:3181
msgid "Select only one <b>symbol</b> in Symbol dialog to convert to group."
msgstr ""
-#: ../src/selection-chemistry.cpp:3288
+#: ../src/selection-chemistry.cpp:3237
msgid "Group from symbol"
msgstr ""
-#: ../src/selection-chemistry.cpp:3306
+#: ../src/selection-chemistry.cpp:3255
msgid "Select <b>object(s)</b> to convert to pattern."
msgstr ""
-#: ../src/selection-chemistry.cpp:3405
+#: ../src/selection-chemistry.cpp:3351
msgid "Objects to pattern"
msgstr ""
-#: ../src/selection-chemistry.cpp:3421
+#: ../src/selection-chemistry.cpp:3367
msgid "Select an <b>object with pattern fill</b> to extract objects from."
msgstr ""
-#: ../src/selection-chemistry.cpp:3482
+#: ../src/selection-chemistry.cpp:3426
msgid "<b>No pattern fills</b> in the selection."
msgstr ""
-#: ../src/selection-chemistry.cpp:3485
+#: ../src/selection-chemistry.cpp:3429
msgid "Pattern to objects"
msgstr ""
-#: ../src/selection-chemistry.cpp:3576
+#: ../src/selection-chemistry.cpp:3516
msgid "Select <b>object(s)</b> to make a bitmap copy."
msgstr ""
-#: ../src/selection-chemistry.cpp:3580
+#: ../src/selection-chemistry.cpp:3520
msgid "Rendering bitmap..."
msgstr ""
-#: ../src/selection-chemistry.cpp:3767
+#: ../src/selection-chemistry.cpp:3705
msgid "Create bitmap"
msgstr ""
-#: ../src/selection-chemistry.cpp:3792 ../src/selection-chemistry.cpp:3911
+#: ../src/selection-chemistry.cpp:3730 ../src/selection-chemistry.cpp:3842
msgid "Select <b>object(s)</b> to create clippath or mask from."
msgstr ""
-#: ../src/selection-chemistry.cpp:3885
+#: ../src/selection-chemistry.cpp:3816
msgid "Create Clip Group"
msgstr ""
-#: ../src/selection-chemistry.cpp:3914
+#: ../src/selection-chemistry.cpp:3845
msgid "Select mask object and <b>object(s)</b> to apply clippath or mask to."
msgstr ""
-#: ../src/selection-chemistry.cpp:4095
+#: ../src/selection-chemistry.cpp:3992
msgid "Set clipping path"
msgstr ""
-#: ../src/selection-chemistry.cpp:4097
+#: ../src/selection-chemistry.cpp:3994
msgid "Set mask"
msgstr ""
-#: ../src/selection-chemistry.cpp:4112
+#: ../src/selection-chemistry.cpp:4009
msgid "Select <b>object(s)</b> to remove clippath or mask from."
msgstr ""
-#: ../src/selection-chemistry.cpp:4232
+#: ../src/selection-chemistry.cpp:4125
msgid "Release clipping path"
msgstr ""
-#: ../src/selection-chemistry.cpp:4234
+#: ../src/selection-chemistry.cpp:4127
msgid "Release mask"
msgstr ""
-#: ../src/selection-chemistry.cpp:4253
+#: ../src/selection-chemistry.cpp:4146
msgid "Select <b>object(s)</b> to fit canvas to."
msgstr ""
#. Fit Page
-#: ../src/selection-chemistry.cpp:4273 ../src/verbs.cpp:2992
+#: ../src/selection-chemistry.cpp:4166 ../src/verbs.cpp:2961
msgid "Fit Page to Selection"
msgstr ""
-#: ../src/selection-chemistry.cpp:4302 ../src/verbs.cpp:2994
+#: ../src/selection-chemistry.cpp:4195 ../src/verbs.cpp:2963
msgid "Fit Page to Drawing"
msgstr ""
-#: ../src/selection-chemistry.cpp:4323 ../src/verbs.cpp:2996
+#: ../src/selection-chemistry.cpp:4216 ../src/verbs.cpp:2965
msgid "Fit Page to Selection or Drawing"
msgstr ""
@@ -12412,47 +12380,47 @@ msgid ""
"Shift also uses this center"
msgstr ""
-#: ../src/seltrans.cpp:486 ../src/ui/dialog/transformation.cpp:981
+#: ../src/seltrans.cpp:486 ../src/ui/dialog/transformation.cpp:980
msgid "Skew"
msgstr ""
-#: ../src/seltrans.cpp:499
+#: ../src/seltrans.cpp:500
msgid "Set center"
msgstr ""
-#: ../src/seltrans.cpp:574
+#: ../src/seltrans.cpp:573
msgid "Stamp"
msgstr ""
-#: ../src/seltrans.cpp:723
+#: ../src/seltrans.cpp:722
msgid "Reset center"
msgstr ""
-#: ../src/seltrans.cpp:955 ../src/seltrans.cpp:1060
+#: ../src/seltrans.cpp:954 ../src/seltrans.cpp:1059
#, c-format
msgid "<b>Scale</b>: %0.2f%% x %0.2f%%; with <b>Ctrl</b> to lock ratio"
msgstr ""
#. TRANSLATORS: don't modify the first ";"
#. (it will NOT be displayed as ";" - only the second one will be)
-#: ../src/seltrans.cpp:1199
+#: ../src/seltrans.cpp:1198
#, c-format
msgid "<b>Skew</b>: %0.2f&#176;; with <b>Ctrl</b> to snap angle"
msgstr ""
#. TRANSLATORS: don't modify the first ";"
#. (it will NOT be displayed as ";" - only the second one will be)
-#: ../src/seltrans.cpp:1274
+#: ../src/seltrans.cpp:1273
#, c-format
msgid "<b>Rotate</b>: %0.2f&#176;; with <b>Ctrl</b> to snap angle"
msgstr ""
-#: ../src/seltrans.cpp:1311
+#: ../src/seltrans.cpp:1310
#, c-format
msgid "Move <b>center</b> to %s, %s"
msgstr ""
-#: ../src/seltrans.cpp:1465
+#: ../src/seltrans.cpp:1464
#, c-format
msgid ""
"<b>Move</b> by %s, %s; with <b>Ctrl</b> to restrict to horizontal/vertical; "
@@ -12464,8 +12432,8 @@ msgstr ""
msgid "Keyboard directory (%s) is unavailable."
msgstr ""
-#: ../src/shortcuts.cpp:337 ../src/ui/dialog/export.cpp:1298
-#: ../src/ui/dialog/export.cpp:1332
+#: ../src/shortcuts.cpp:337 ../src/ui/dialog/export.cpp:1296
+#: ../src/ui/dialog/export.cpp:1330
msgid "Select a filename for exporting"
msgstr ""
@@ -12482,22 +12450,22 @@ msgstr ""
msgid "without URI"
msgstr ""
-#: ../src/sp-ellipse.cpp:344
+#: ../src/sp-ellipse.cpp:361
msgid "Segment"
msgstr ""
-#: ../src/sp-ellipse.cpp:346
+#: ../src/sp-ellipse.cpp:363
msgid "Arc"
msgstr ""
#. Ellipse
-#: ../src/sp-ellipse.cpp:349 ../src/sp-ellipse.cpp:356
+#: ../src/sp-ellipse.cpp:366 ../src/sp-ellipse.cpp:373
#: ../src/ui/dialog/inkscape-preferences.cpp:412
#: ../src/widgets/pencil-toolbar.cpp:163
msgid "Ellipse"
msgstr ""
-#: ../src/sp-ellipse.cpp:353
+#: ../src/sp-ellipse.cpp:370
msgid "Circle"
msgstr ""
@@ -12523,7 +12491,7 @@ msgid "Linked Flowed Text"
msgstr ""
#: ../src/sp-flowtext.cpp:288 ../src/sp-text.cpp:367
-#: ../src/ui/tools/text-tool.cpp:1557
+#: ../src/ui/tools/text-tool.cpp:1556
msgid " [truncated]"
msgstr ""
@@ -12538,7 +12506,7 @@ msgstr[1] ""
msgid "Create Guides Around the Page"
msgstr ""
-#: ../src/sp-guide.cpp:258 ../src/verbs.cpp:2549
+#: ../src/sp-guide.cpp:258 ../src/verbs.cpp:2518
msgid "Delete All Guides"
msgstr ""
@@ -12582,40 +12550,40 @@ msgstr ""
msgid "%d &#215; %d: %s"
msgstr ""
-#: ../src/sp-item-group.cpp:322
+#: ../src/sp-item-group.cpp:307
msgid "Group"
msgstr ""
-#: ../src/sp-item-group.cpp:328 ../src/sp-switch.cpp:68
+#: ../src/sp-item-group.cpp:313 ../src/sp-switch.cpp:69
#, c-format
msgid "of <b>%d</b> object"
msgstr ""
-#: ../src/sp-item-group.cpp:328 ../src/sp-switch.cpp:68
+#: ../src/sp-item-group.cpp:313 ../src/sp-switch.cpp:69
#, c-format
msgid "of <b>%d</b> objects"
msgstr ""
-#: ../src/sp-item.cpp:1051 ../src/verbs.cpp:214
+#: ../src/sp-item.cpp:1030 ../src/verbs.cpp:213
msgid "Object"
msgstr ""
-#: ../src/sp-item.cpp:1063
+#: ../src/sp-item.cpp:1042
#, c-format
msgid "%s; <i>clipped</i>"
msgstr ""
-#: ../src/sp-item.cpp:1069
+#: ../src/sp-item.cpp:1048
#, c-format
msgid "%s; <i>masked</i>"
msgstr ""
-#: ../src/sp-item.cpp:1079
+#: ../src/sp-item.cpp:1058
#, c-format
msgid "%s; <i>filtered (%s)</i>"
msgstr ""
-#: ../src/sp-item.cpp:1081
+#: ../src/sp-item.cpp:1060
#, c-format
msgid "%s; <i>filtered</i>"
msgstr ""
@@ -12678,7 +12646,7 @@ msgid "<b>Polyline</b>"
msgstr ""
#. Rectangle
-#: ../src/sp-rect.cpp:153 ../src/ui/dialog/inkscape-preferences.cpp:402
+#: ../src/sp-rect.cpp:161 ../src/ui/dialog/inkscape-preferences.cpp:402
msgid "Rectangle"
msgstr ""
@@ -12697,11 +12665,11 @@ msgstr ""
#. Star
#: ../src/sp-star.cpp:246 ../src/ui/dialog/inkscape-preferences.cpp:416
-#: ../src/widgets/star-toolbar.cpp:471
+#: ../src/widgets/star-toolbar.cpp:469
msgid "Star"
msgstr ""
-#: ../src/sp-star.cpp:247 ../src/widgets/star-toolbar.cpp:464
+#: ../src/sp-star.cpp:247 ../src/widgets/star-toolbar.cpp:462
msgid "Polygon"
msgstr ""
@@ -12718,11 +12686,11 @@ msgstr ""
msgid "with %d vertices"
msgstr ""
-#: ../src/sp-switch.cpp:62
+#: ../src/sp-switch.cpp:63
msgid "Conditional Group"
msgstr ""
-#: ../src/sp-text.cpp:351 ../src/verbs.cpp:348
+#: ../src/sp-text.cpp:351 ../src/verbs.cpp:347
#: ../share/extensions/lorem_ipsum.inx.h:8
#: ../share/extensions/replace_font.inx.h:11
#: ../share/extensions/split.inx.h:10 ../share/extensions/text_braille.inx.h:2
@@ -12755,7 +12723,7 @@ msgstr ""
msgid " from "
msgstr ""
-#: ../src/sp-tref.cpp:240 ../src/sp-use.cpp:269
+#: ../src/sp-tref.cpp:240 ../src/sp-use.cpp:271
msgid "[orphaned]"
msgstr ""
@@ -12763,30 +12731,30 @@ msgstr ""
msgid "Text Span"
msgstr ""
-#: ../src/sp-use.cpp:232
+#: ../src/sp-use.cpp:234
msgid "Symbol"
msgstr ""
-#: ../src/sp-use.cpp:234
+#: ../src/sp-use.cpp:236
msgid "Clone"
msgstr ""
-#: ../src/sp-use.cpp:242 ../src/sp-use.cpp:244 ../src/sp-use.cpp:246
+#: ../src/sp-use.cpp:244 ../src/sp-use.cpp:246 ../src/sp-use.cpp:248
#, c-format
msgid "called %s"
msgstr ""
-#: ../src/sp-use.cpp:246
+#: ../src/sp-use.cpp:248
msgid "Unnamed Symbol"
msgstr ""
#. TRANSLATORS: Used for statusbar description for long <use> chains:
#. * "Clone of: Clone of: ... in Layer 1".
-#: ../src/sp-use.cpp:255
+#: ../src/sp-use.cpp:257
msgid "..."
msgstr ""
-#: ../src/sp-use.cpp:264
+#: ../src/sp-use.cpp:266
#, c-format
msgid "of: %s"
msgstr ""
@@ -12826,154 +12794,154 @@ msgid ""
"difference, XOR, division, or path cut."
msgstr ""
-#: ../src/splivarot.cpp:407
+#: ../src/splivarot.cpp:406
msgid ""
"One of the objects is <b>not a path</b>, cannot perform boolean operation."
msgstr ""
-#: ../src/splivarot.cpp:1157
+#: ../src/splivarot.cpp:1150
msgid "Select <b>stroked path(s)</b> to convert stroke to path."
msgstr ""
-#: ../src/splivarot.cpp:1516
+#: ../src/splivarot.cpp:1506
msgid "Convert stroke to path"
msgstr ""
#. TRANSLATORS: "to outline" means "to convert stroke to path"
-#: ../src/splivarot.cpp:1519
+#: ../src/splivarot.cpp:1509
msgid "<b>No stroked paths</b> in the selection."
msgstr ""
-#: ../src/splivarot.cpp:1590
+#: ../src/splivarot.cpp:1580
msgid "Selected object is <b>not a path</b>, cannot inset/outset."
msgstr ""
-#: ../src/splivarot.cpp:1681 ../src/splivarot.cpp:1746
+#: ../src/splivarot.cpp:1671 ../src/splivarot.cpp:1738
msgid "Create linked offset"
msgstr ""
-#: ../src/splivarot.cpp:1682 ../src/splivarot.cpp:1747
+#: ../src/splivarot.cpp:1672 ../src/splivarot.cpp:1739
msgid "Create dynamic offset"
msgstr ""
-#: ../src/splivarot.cpp:1772
+#: ../src/splivarot.cpp:1764
msgid "Select <b>path(s)</b> to inset/outset."
msgstr ""
-#: ../src/splivarot.cpp:1968
+#: ../src/splivarot.cpp:1957
msgid "Outset path"
msgstr ""
-#: ../src/splivarot.cpp:1968
+#: ../src/splivarot.cpp:1957
msgid "Inset path"
msgstr ""
-#: ../src/splivarot.cpp:1970
+#: ../src/splivarot.cpp:1959
msgid "<b>No paths</b> to inset/outset in the selection."
msgstr ""
-#: ../src/splivarot.cpp:2132
+#: ../src/splivarot.cpp:2121
msgid "Simplifying paths (separately):"
msgstr ""
-#: ../src/splivarot.cpp:2134
+#: ../src/splivarot.cpp:2123
msgid "Simplifying paths:"
msgstr ""
-#: ../src/splivarot.cpp:2171
+#: ../src/splivarot.cpp:2160
#, c-format
msgid "%s <b>%d</b> of <b>%d</b> paths simplified..."
msgstr ""
-#: ../src/splivarot.cpp:2184
+#: ../src/splivarot.cpp:2173
#, c-format
msgid "<b>%d</b> paths simplified."
msgstr ""
-#: ../src/splivarot.cpp:2198
+#: ../src/splivarot.cpp:2187
msgid "Select <b>path(s)</b> to simplify."
msgstr ""
-#: ../src/splivarot.cpp:2214
+#: ../src/splivarot.cpp:2203
msgid "<b>No paths</b> to simplify in the selection."
msgstr ""
-#: ../src/text-chemistry.cpp:94
+#: ../src/text-chemistry.cpp:91
msgid "Select <b>a text and a path</b> to put text on path."
msgstr ""
-#: ../src/text-chemistry.cpp:99
+#: ../src/text-chemistry.cpp:96
msgid ""
"This text object is <b>already put on a path</b>. Remove it from the path "
"first. Use <b>Shift+D</b> to look up its path."
msgstr ""
#. rect is the only SPShape which is not <path> yet, and thus SVG forbids us from putting text on it
-#: ../src/text-chemistry.cpp:105
+#: ../src/text-chemistry.cpp:102
msgid ""
"You cannot put text on a rectangle in this version. Convert rectangle to "
"path first."
msgstr ""
-#: ../src/text-chemistry.cpp:115
+#: ../src/text-chemistry.cpp:112
msgid "The flowed text(s) must be <b>visible</b> in order to be put on a path."
msgstr ""
-#: ../src/text-chemistry.cpp:185 ../src/verbs.cpp:2571
+#: ../src/text-chemistry.cpp:182 ../src/verbs.cpp:2540
msgid "Put text on path"
msgstr ""
-#: ../src/text-chemistry.cpp:197
+#: ../src/text-chemistry.cpp:194
msgid "Select <b>a text on path</b> to remove it from path."
msgstr ""
-#: ../src/text-chemistry.cpp:218
+#: ../src/text-chemistry.cpp:213
msgid "<b>No texts-on-paths</b> in the selection."
msgstr ""
-#: ../src/text-chemistry.cpp:221 ../src/verbs.cpp:2573
+#: ../src/text-chemistry.cpp:216 ../src/verbs.cpp:2542
msgid "Remove text from path"
msgstr ""
-#: ../src/text-chemistry.cpp:262 ../src/text-chemistry.cpp:283
+#: ../src/text-chemistry.cpp:257 ../src/text-chemistry.cpp:277
msgid "Select <b>text(s)</b> to remove kerns from."
msgstr ""
-#: ../src/text-chemistry.cpp:286
+#: ../src/text-chemistry.cpp:280
msgid "Remove manual kerns"
msgstr ""
-#: ../src/text-chemistry.cpp:306
+#: ../src/text-chemistry.cpp:300
msgid ""
"Select <b>a text</b> and one or more <b>paths or shapes</b> to flow text "
"into frame."
msgstr ""
-#: ../src/text-chemistry.cpp:376
+#: ../src/text-chemistry.cpp:369
msgid "Flow text into shape"
msgstr ""
-#: ../src/text-chemistry.cpp:398
+#: ../src/text-chemistry.cpp:391
msgid "Select <b>a flowed text</b> to unflow it."
msgstr ""
-#: ../src/text-chemistry.cpp:472
+#: ../src/text-chemistry.cpp:464
msgid "Unflow flowed text"
msgstr ""
-#: ../src/text-chemistry.cpp:484
+#: ../src/text-chemistry.cpp:476
msgid "Select <b>flowed text(s)</b> to convert."
msgstr ""
-#: ../src/text-chemistry.cpp:502
+#: ../src/text-chemistry.cpp:494
msgid "The flowed text(s) must be <b>visible</b> in order to be converted."
msgstr ""
-#: ../src/text-chemistry.cpp:530
+#: ../src/text-chemistry.cpp:521
msgid "Convert flowed text to text"
msgstr ""
-#: ../src/text-chemistry.cpp:535
+#: ../src/text-chemistry.cpp:526
msgid "<b>No flowed text(s)</b> to convert in the selection."
msgstr ""
@@ -13036,8 +13004,8 @@ msgstr ""
msgid "Nothing was copied."
msgstr ""
-#: ../src/ui/clipboard.cpp:393 ../src/ui/clipboard.cpp:605
-#: ../src/ui/clipboard.cpp:634
+#: ../src/ui/clipboard.cpp:393 ../src/ui/clipboard.cpp:607
+#: ../src/ui/clipboard.cpp:636
msgid "Nothing on the clipboard."
msgstr ""
@@ -13057,16 +13025,16 @@ msgstr ""
msgid "No size on the clipboard."
msgstr ""
-#: ../src/ui/clipboard.cpp:567
+#: ../src/ui/clipboard.cpp:568
msgid "Select <b>object(s)</b> to paste live path effect to."
msgstr ""
#. no_effect:
-#: ../src/ui/clipboard.cpp:592
+#: ../src/ui/clipboard.cpp:594
msgid "No effect on the clipboard."
msgstr ""
-#: ../src/ui/clipboard.cpp:611 ../src/ui/clipboard.cpp:648
+#: ../src/ui/clipboard.cpp:613 ../src/ui/clipboard.cpp:650
msgid "Clipboard does not contain a path."
msgstr ""
@@ -13114,248 +13082,248 @@ msgstr ""
msgid "translator-credits"
msgstr ""
-#: ../src/ui/dialog/align-and-distribute.cpp:171
-#: ../src/ui/dialog/align-and-distribute.cpp:851
+#: ../src/ui/dialog/align-and-distribute.cpp:170
+#: ../src/ui/dialog/align-and-distribute.cpp:847
msgid "Align"
msgstr ""
-#: ../src/ui/dialog/align-and-distribute.cpp:341
-#: ../src/ui/dialog/align-and-distribute.cpp:852
+#: ../src/ui/dialog/align-and-distribute.cpp:338
+#: ../src/ui/dialog/align-and-distribute.cpp:848
msgid "Distribute"
msgstr ""
-#: ../src/ui/dialog/align-and-distribute.cpp:420
+#: ../src/ui/dialog/align-and-distribute.cpp:417
msgid "Minimum horizontal gap (in px units) between bounding boxes"
msgstr ""
#. TRANSLATORS: "H:" stands for horizontal gap
-#: ../src/ui/dialog/align-and-distribute.cpp:422
+#: ../src/ui/dialog/align-and-distribute.cpp:419
msgctxt "Gap"
msgid "_H:"
msgstr ""
-#: ../src/ui/dialog/align-and-distribute.cpp:430
+#: ../src/ui/dialog/align-and-distribute.cpp:427
msgid "Minimum vertical gap (in px units) between bounding boxes"
msgstr ""
#. TRANSLATORS: Vertical gap
-#: ../src/ui/dialog/align-and-distribute.cpp:432
+#: ../src/ui/dialog/align-and-distribute.cpp:429
msgctxt "Gap"
msgid "_V:"
msgstr ""
-#: ../src/ui/dialog/align-and-distribute.cpp:467
-#: ../src/ui/dialog/align-and-distribute.cpp:854
-#: ../src/widgets/connector-toolbar.cpp:411
+#: ../src/ui/dialog/align-and-distribute.cpp:464
+#: ../src/ui/dialog/align-and-distribute.cpp:850
+#: ../src/widgets/connector-toolbar.cpp:407
msgid "Remove overlaps"
msgstr ""
-#: ../src/ui/dialog/align-and-distribute.cpp:498
-#: ../src/widgets/connector-toolbar.cpp:240
+#: ../src/ui/dialog/align-and-distribute.cpp:495
+#: ../src/widgets/connector-toolbar.cpp:236
msgid "Arrange connector network"
msgstr ""
-#: ../src/ui/dialog/align-and-distribute.cpp:591
+#: ../src/ui/dialog/align-and-distribute.cpp:588
msgid "Exchange Positions"
msgstr ""
-#: ../src/ui/dialog/align-and-distribute.cpp:625
+#: ../src/ui/dialog/align-and-distribute.cpp:622
msgid "Unclump"
msgstr ""
-#: ../src/ui/dialog/align-and-distribute.cpp:697
+#: ../src/ui/dialog/align-and-distribute.cpp:693
msgid "Randomize positions"
msgstr ""
-#: ../src/ui/dialog/align-and-distribute.cpp:800
+#: ../src/ui/dialog/align-and-distribute.cpp:795
msgid "Distribute text baselines"
msgstr ""
-#: ../src/ui/dialog/align-and-distribute.cpp:823
+#: ../src/ui/dialog/align-and-distribute.cpp:819
msgid "Align text baselines"
msgstr ""
-#: ../src/ui/dialog/align-and-distribute.cpp:853
+#: ../src/ui/dialog/align-and-distribute.cpp:849
msgid "Rearrange"
msgstr ""
-#: ../src/ui/dialog/align-and-distribute.cpp:855
-#: ../src/widgets/toolbox.cpp:1729
+#: ../src/ui/dialog/align-and-distribute.cpp:851
+#: ../src/widgets/toolbox.cpp:1725
msgid "Nodes"
msgstr ""
-#: ../src/ui/dialog/align-and-distribute.cpp:869
+#: ../src/ui/dialog/align-and-distribute.cpp:865
msgid "Relative to: "
msgstr ""
-#: ../src/ui/dialog/align-and-distribute.cpp:870
+#: ../src/ui/dialog/align-and-distribute.cpp:866
msgid "_Treat selection as group: "
msgstr ""
#. Align
-#: ../src/ui/dialog/align-and-distribute.cpp:876 ../src/verbs.cpp:3024
-#: ../src/verbs.cpp:3025
+#: ../src/ui/dialog/align-and-distribute.cpp:872 ../src/verbs.cpp:2993
+#: ../src/verbs.cpp:2994
msgid "Align right edges of objects to the left edge of the anchor"
msgstr ""
-#: ../src/ui/dialog/align-and-distribute.cpp:879 ../src/verbs.cpp:3026
-#: ../src/verbs.cpp:3027
+#: ../src/ui/dialog/align-and-distribute.cpp:875 ../src/verbs.cpp:2995
+#: ../src/verbs.cpp:2996
msgid "Align left edges"
msgstr ""
-#: ../src/ui/dialog/align-and-distribute.cpp:882 ../src/verbs.cpp:3028
-#: ../src/verbs.cpp:3029
+#: ../src/ui/dialog/align-and-distribute.cpp:878 ../src/verbs.cpp:2997
+#: ../src/verbs.cpp:2998
msgid "Center on vertical axis"
msgstr ""
-#: ../src/ui/dialog/align-and-distribute.cpp:885 ../src/verbs.cpp:3030
-#: ../src/verbs.cpp:3031
+#: ../src/ui/dialog/align-and-distribute.cpp:881 ../src/verbs.cpp:2999
+#: ../src/verbs.cpp:3000
msgid "Align right sides"
msgstr ""
-#: ../src/ui/dialog/align-and-distribute.cpp:888 ../src/verbs.cpp:3032
-#: ../src/verbs.cpp:3033
+#: ../src/ui/dialog/align-and-distribute.cpp:884 ../src/verbs.cpp:3001
+#: ../src/verbs.cpp:3002
msgid "Align left edges of objects to the right edge of the anchor"
msgstr ""
-#: ../src/ui/dialog/align-and-distribute.cpp:891 ../src/verbs.cpp:3034
-#: ../src/verbs.cpp:3035
+#: ../src/ui/dialog/align-and-distribute.cpp:887 ../src/verbs.cpp:3003
+#: ../src/verbs.cpp:3004
msgid "Align bottom edges of objects to the top edge of the anchor"
msgstr ""
-#: ../src/ui/dialog/align-and-distribute.cpp:894 ../src/verbs.cpp:3036
-#: ../src/verbs.cpp:3037
+#: ../src/ui/dialog/align-and-distribute.cpp:890 ../src/verbs.cpp:3005
+#: ../src/verbs.cpp:3006
msgid "Align top edges"
msgstr ""
-#: ../src/ui/dialog/align-and-distribute.cpp:897 ../src/verbs.cpp:3038
-#: ../src/verbs.cpp:3039
+#: ../src/ui/dialog/align-and-distribute.cpp:893 ../src/verbs.cpp:3007
+#: ../src/verbs.cpp:3008
msgid "Center on horizontal axis"
msgstr ""
-#: ../src/ui/dialog/align-and-distribute.cpp:900 ../src/verbs.cpp:3040
-#: ../src/verbs.cpp:3041
+#: ../src/ui/dialog/align-and-distribute.cpp:896 ../src/verbs.cpp:3009
+#: ../src/verbs.cpp:3010
msgid "Align bottom edges"
msgstr ""
-#: ../src/ui/dialog/align-and-distribute.cpp:903 ../src/verbs.cpp:3042
-#: ../src/verbs.cpp:3043
+#: ../src/ui/dialog/align-and-distribute.cpp:899 ../src/verbs.cpp:3011
+#: ../src/verbs.cpp:3012
msgid "Align top edges of objects to the bottom edge of the anchor"
msgstr ""
-#: ../src/ui/dialog/align-and-distribute.cpp:908
+#: ../src/ui/dialog/align-and-distribute.cpp:904
msgid "Align baseline anchors of texts horizontally"
msgstr ""
-#: ../src/ui/dialog/align-and-distribute.cpp:911
+#: ../src/ui/dialog/align-and-distribute.cpp:907
msgid "Align baselines of texts"
msgstr ""
-#: ../src/ui/dialog/align-and-distribute.cpp:916
+#: ../src/ui/dialog/align-and-distribute.cpp:912
msgid "Make horizontal gaps between objects equal"
msgstr ""
-#: ../src/ui/dialog/align-and-distribute.cpp:920
+#: ../src/ui/dialog/align-and-distribute.cpp:916
msgid "Distribute left edges equidistantly"
msgstr ""
-#: ../src/ui/dialog/align-and-distribute.cpp:923
+#: ../src/ui/dialog/align-and-distribute.cpp:919
msgid "Distribute centers equidistantly horizontally"
msgstr ""
-#: ../src/ui/dialog/align-and-distribute.cpp:926
+#: ../src/ui/dialog/align-and-distribute.cpp:922
msgid "Distribute right edges equidistantly"
msgstr ""
-#: ../src/ui/dialog/align-and-distribute.cpp:930
+#: ../src/ui/dialog/align-and-distribute.cpp:926
msgid "Make vertical gaps between objects equal"
msgstr ""
-#: ../src/ui/dialog/align-and-distribute.cpp:934
+#: ../src/ui/dialog/align-and-distribute.cpp:930
msgid "Distribute top edges equidistantly"
msgstr ""
-#: ../src/ui/dialog/align-and-distribute.cpp:937
+#: ../src/ui/dialog/align-and-distribute.cpp:933
msgid "Distribute centers equidistantly vertically"
msgstr ""
-#: ../src/ui/dialog/align-and-distribute.cpp:940
+#: ../src/ui/dialog/align-and-distribute.cpp:936
msgid "Distribute bottom edges equidistantly"
msgstr ""
-#: ../src/ui/dialog/align-and-distribute.cpp:945
+#: ../src/ui/dialog/align-and-distribute.cpp:941
msgid "Distribute baseline anchors of texts horizontally"
msgstr ""
-#: ../src/ui/dialog/align-and-distribute.cpp:948
+#: ../src/ui/dialog/align-and-distribute.cpp:944
msgid "Distribute baselines of texts vertically"
msgstr ""
-#: ../src/ui/dialog/align-and-distribute.cpp:954
-#: ../src/widgets/connector-toolbar.cpp:373
+#: ../src/ui/dialog/align-and-distribute.cpp:950
+#: ../src/widgets/connector-toolbar.cpp:369
msgid "Nicely arrange selected connector network"
msgstr ""
-#: ../src/ui/dialog/align-and-distribute.cpp:957
+#: ../src/ui/dialog/align-and-distribute.cpp:953
msgid "Exchange positions of selected objects - selection order"
msgstr ""
-#: ../src/ui/dialog/align-and-distribute.cpp:960
+#: ../src/ui/dialog/align-and-distribute.cpp:956
msgid "Exchange positions of selected objects - stacking order"
msgstr ""
-#: ../src/ui/dialog/align-and-distribute.cpp:963
+#: ../src/ui/dialog/align-and-distribute.cpp:959
msgid "Exchange positions of selected objects - clockwise rotate"
msgstr ""
-#: ../src/ui/dialog/align-and-distribute.cpp:968
+#: ../src/ui/dialog/align-and-distribute.cpp:964
msgid "Randomize centers in both dimensions"
msgstr ""
-#: ../src/ui/dialog/align-and-distribute.cpp:971
+#: ../src/ui/dialog/align-and-distribute.cpp:967
msgid "Unclump objects: try to equalize edge-to-edge distances"
msgstr ""
-#: ../src/ui/dialog/align-and-distribute.cpp:976
+#: ../src/ui/dialog/align-and-distribute.cpp:972
msgid ""
"Move objects as little as possible so that their bounding boxes do not "
"overlap"
msgstr ""
-#: ../src/ui/dialog/align-and-distribute.cpp:984
+#: ../src/ui/dialog/align-and-distribute.cpp:980
msgid "Align selected nodes to a common horizontal line"
msgstr ""
-#: ../src/ui/dialog/align-and-distribute.cpp:987
+#: ../src/ui/dialog/align-and-distribute.cpp:983
msgid "Align selected nodes to a common vertical line"
msgstr ""
-#: ../src/ui/dialog/align-and-distribute.cpp:990
+#: ../src/ui/dialog/align-and-distribute.cpp:986
msgid "Distribute selected nodes horizontally"
msgstr ""
-#: ../src/ui/dialog/align-and-distribute.cpp:993
+#: ../src/ui/dialog/align-and-distribute.cpp:989
msgid "Distribute selected nodes vertically"
msgstr ""
#. Rest of the widgetry
-#: ../src/ui/dialog/align-and-distribute.cpp:998
+#: ../src/ui/dialog/align-and-distribute.cpp:994
msgid "Last selected"
msgstr ""
-#: ../src/ui/dialog/align-and-distribute.cpp:999
+#: ../src/ui/dialog/align-and-distribute.cpp:995
msgid "First selected"
msgstr ""
-#: ../src/ui/dialog/align-and-distribute.cpp:1000
+#: ../src/ui/dialog/align-and-distribute.cpp:996
msgid "Biggest object"
msgstr ""
-#: ../src/ui/dialog/align-and-distribute.cpp:1001
+#: ../src/ui/dialog/align-and-distribute.cpp:997
msgid "Smallest object"
msgstr ""
-#: ../src/ui/dialog/align-and-distribute.cpp:1004
+#: ../src/ui/dialog/align-and-distribute.cpp:1000
msgid "Selection Area"
msgstr ""
@@ -14030,91 +13998,91 @@ msgstr ""
msgid "Select <b>one object</b> whose tiled clones to unclump."
msgstr ""
-#: ../src/ui/dialog/clonetiler.cpp:2122
+#: ../src/ui/dialog/clonetiler.cpp:2120
msgid "Unclump tiled clones"
msgstr ""
-#: ../src/ui/dialog/clonetiler.cpp:2151
+#: ../src/ui/dialog/clonetiler.cpp:2149
msgid "Select <b>one object</b> whose tiled clones to remove."
msgstr ""
-#: ../src/ui/dialog/clonetiler.cpp:2176
+#: ../src/ui/dialog/clonetiler.cpp:2174
msgid "Delete tiled clones"
msgstr ""
-#: ../src/ui/dialog/clonetiler.cpp:2229
+#: ../src/ui/dialog/clonetiler.cpp:2227
msgid ""
"If you want to clone several objects, <b>group</b> them and <b>clone the "
"group</b>."
msgstr ""
-#: ../src/ui/dialog/clonetiler.cpp:2238
+#: ../src/ui/dialog/clonetiler.cpp:2236
msgid "<small>Creating tiled clones...</small>"
msgstr ""
-#: ../src/ui/dialog/clonetiler.cpp:2654
+#: ../src/ui/dialog/clonetiler.cpp:2652
msgid "Create tiled clones"
msgstr ""
-#: ../src/ui/dialog/clonetiler.cpp:2887
+#: ../src/ui/dialog/clonetiler.cpp:2885
msgid "<small>Per row:</small>"
msgstr ""
-#: ../src/ui/dialog/clonetiler.cpp:2905
+#: ../src/ui/dialog/clonetiler.cpp:2903
msgid "<small>Per column:</small>"
msgstr ""
-#: ../src/ui/dialog/clonetiler.cpp:2913
+#: ../src/ui/dialog/clonetiler.cpp:2911
msgid "<small>Randomize:</small>"
msgstr ""
-#: ../src/ui/dialog/color-item.cpp:131
+#: ../src/ui/dialog/color-item.cpp:127
#, c-format
msgid ""
"Color: <b>%s</b>; <b>Click</b> to set fill, <b>Shift+click</b> to set stroke"
msgstr ""
-#: ../src/ui/dialog/color-item.cpp:509
+#: ../src/ui/dialog/color-item.cpp:505
msgid "Change color definition"
msgstr ""
-#: ../src/ui/dialog/color-item.cpp:679
+#: ../src/ui/dialog/color-item.cpp:675
msgid "Remove stroke color"
msgstr ""
-#: ../src/ui/dialog/color-item.cpp:679
+#: ../src/ui/dialog/color-item.cpp:675
msgid "Remove fill color"
msgstr ""
-#: ../src/ui/dialog/color-item.cpp:684
+#: ../src/ui/dialog/color-item.cpp:680
msgid "Set stroke color to none"
msgstr ""
-#: ../src/ui/dialog/color-item.cpp:684
+#: ../src/ui/dialog/color-item.cpp:680
msgid "Set fill color to none"
msgstr ""
-#: ../src/ui/dialog/color-item.cpp:702
+#: ../src/ui/dialog/color-item.cpp:698
msgid "Set stroke color from swatch"
msgstr ""
-#: ../src/ui/dialog/color-item.cpp:702
+#: ../src/ui/dialog/color-item.cpp:698
msgid "Set fill color from swatch"
msgstr ""
-#: ../src/ui/dialog/debug.cpp:73
+#: ../src/ui/dialog/debug.cpp:69
msgid "Messages"
msgstr ""
-#: ../src/ui/dialog/debug.cpp:87 ../src/ui/dialog/messages.cpp:47
+#: ../src/ui/dialog/debug.cpp:83 ../src/ui/dialog/messages.cpp:47
msgid "_Clear"
msgstr ""
-#: ../src/ui/dialog/debug.cpp:91 ../src/ui/dialog/messages.cpp:48
+#: ../src/ui/dialog/debug.cpp:87 ../src/ui/dialog/messages.cpp:48
msgid "Capture log messages"
msgstr ""
-#: ../src/ui/dialog/debug.cpp:95
+#: ../src/ui/dialog/debug.cpp:91
msgid "Release log messages"
msgstr ""
@@ -14359,11 +14327,11 @@ msgid "Remove selected grid."
msgstr ""
#: ../src/ui/dialog/document-properties.cpp:161
-#: ../src/widgets/toolbox.cpp:1836
+#: ../src/widgets/toolbox.cpp:1832
msgid "Guides"
msgstr ""
-#: ../src/ui/dialog/document-properties.cpp:163 ../src/verbs.cpp:2827
+#: ../src/ui/dialog/document-properties.cpp:163 ../src/verbs.cpp:2796
msgid "Snap"
msgstr ""
@@ -14407,7 +14375,7 @@ msgstr ""
#. Inkscape::GC::release(defsRepr);
#. inform the document, so we can undo
#. Color Management
-#: ../src/ui/dialog/document-properties.cpp:505 ../src/verbs.cpp:3008
+#: ../src/ui/dialog/document-properties.cpp:505 ../src/verbs.cpp:2977
msgid "Link Color Profile"
msgstr ""
@@ -14531,212 +14499,212 @@ msgstr ""
msgid "<b>Defined grids</b>"
msgstr ""
-#: ../src/ui/dialog/document-properties.cpp:1653
+#: ../src/ui/dialog/document-properties.cpp:1654
msgid "Remove grid"
msgstr ""
-#: ../src/ui/dialog/document-properties.cpp:1741
+#: ../src/ui/dialog/document-properties.cpp:1746
msgid "Changed default display unit"
msgstr ""
-#: ../src/ui/dialog/export.cpp:151 ../src/verbs.cpp:2879
+#: ../src/ui/dialog/export.cpp:147 ../src/verbs.cpp:2848
msgid "_Page"
msgstr ""
-#: ../src/ui/dialog/export.cpp:151 ../src/verbs.cpp:2883
+#: ../src/ui/dialog/export.cpp:147 ../src/verbs.cpp:2852
msgid "_Drawing"
msgstr ""
-#: ../src/ui/dialog/export.cpp:151 ../src/verbs.cpp:2885
+#: ../src/ui/dialog/export.cpp:147 ../src/verbs.cpp:2854
msgid "_Selection"
msgstr ""
-#: ../src/ui/dialog/export.cpp:151
+#: ../src/ui/dialog/export.cpp:147
msgid "_Custom"
msgstr ""
-#: ../src/ui/dialog/export.cpp:169 ../src/widgets/measure-toolbar.cpp:99
+#: ../src/ui/dialog/export.cpp:165 ../src/widgets/measure-toolbar.cpp:99
#: ../src/widgets/measure-toolbar.cpp:107
#: ../share/extensions/render_gears.inx.h:6
msgid "Units:"
msgstr ""
-#: ../src/ui/dialog/export.cpp:171
+#: ../src/ui/dialog/export.cpp:167
msgid "_Export As..."
msgstr ""
-#: ../src/ui/dialog/export.cpp:174
+#: ../src/ui/dialog/export.cpp:170
msgid "B_atch export all selected objects"
msgstr ""
-#: ../src/ui/dialog/export.cpp:174
+#: ../src/ui/dialog/export.cpp:170
msgid ""
"Export each selected object into its own PNG file, using export hints if any "
"(caution, overwrites without asking!)"
msgstr ""
-#: ../src/ui/dialog/export.cpp:176
+#: ../src/ui/dialog/export.cpp:172
msgid "Hide a_ll except selected"
msgstr ""
-#: ../src/ui/dialog/export.cpp:176
+#: ../src/ui/dialog/export.cpp:172
msgid "In the exported image, hide all objects except those that are selected"
msgstr ""
-#: ../src/ui/dialog/export.cpp:177
+#: ../src/ui/dialog/export.cpp:173
msgid "Close when complete"
msgstr ""
-#: ../src/ui/dialog/export.cpp:177
+#: ../src/ui/dialog/export.cpp:173
msgid "Once the export completes, close this dialog"
msgstr ""
-#: ../src/ui/dialog/export.cpp:179
+#: ../src/ui/dialog/export.cpp:175
msgid "_Export"
msgstr ""
-#: ../src/ui/dialog/export.cpp:197
+#: ../src/ui/dialog/export.cpp:193
msgid "<b>Export area</b>"
msgstr ""
-#: ../src/ui/dialog/export.cpp:236
+#: ../src/ui/dialog/export.cpp:232
msgid "_x0:"
msgstr ""
-#: ../src/ui/dialog/export.cpp:240
+#: ../src/ui/dialog/export.cpp:236
msgid "x_1:"
msgstr ""
-#: ../src/ui/dialog/export.cpp:244
+#: ../src/ui/dialog/export.cpp:240
msgid "Wid_th:"
msgstr ""
-#: ../src/ui/dialog/export.cpp:248
+#: ../src/ui/dialog/export.cpp:244
msgid "_y0:"
msgstr ""
-#: ../src/ui/dialog/export.cpp:252
+#: ../src/ui/dialog/export.cpp:248
msgid "y_1:"
msgstr ""
-#: ../src/ui/dialog/export.cpp:256
+#: ../src/ui/dialog/export.cpp:252
msgid "Hei_ght:"
msgstr ""
-#: ../src/ui/dialog/export.cpp:271
+#: ../src/ui/dialog/export.cpp:267
msgid "<b>Image size</b>"
msgstr ""
-#: ../src/ui/dialog/export.cpp:289 ../src/ui/dialog/export.cpp:300
+#: ../src/ui/dialog/export.cpp:285 ../src/ui/dialog/export.cpp:296
msgid "pixels at"
msgstr ""
-#: ../src/ui/dialog/export.cpp:295
+#: ../src/ui/dialog/export.cpp:291
msgid "dp_i"
msgstr ""
-#: ../src/ui/dialog/export.cpp:300 ../src/ui/dialog/transformation.cpp:80
-#: ../src/ui/widget/page-sizer.cpp:237
+#: ../src/ui/dialog/export.cpp:296 ../src/ui/dialog/transformation.cpp:76
+#: ../src/ui/widget/page-sizer.cpp:238
msgid "_Height:"
msgstr ""
-#: ../src/ui/dialog/export.cpp:308
+#: ../src/ui/dialog/export.cpp:304
#: ../src/ui/dialog/inkscape-preferences.cpp:1443
#: ../src/ui/dialog/inkscape-preferences.cpp:1447
#: ../src/ui/dialog/inkscape-preferences.cpp:1471
msgid "dpi"
msgstr ""
-#: ../src/ui/dialog/export.cpp:316
+#: ../src/ui/dialog/export.cpp:312
msgid "<b>_Filename</b>"
msgstr ""
-#: ../src/ui/dialog/export.cpp:358
+#: ../src/ui/dialog/export.cpp:354
msgid "Export the bitmap file with these settings"
msgstr ""
-#: ../src/ui/dialog/export.cpp:611
+#: ../src/ui/dialog/export.cpp:607
#, c-format
msgid "B_atch export %d selected object"
msgid_plural "B_atch export %d selected objects"
msgstr[0] ""
msgstr[1] ""
-#: ../src/ui/dialog/export.cpp:927
+#: ../src/ui/dialog/export.cpp:923
msgid "Export in progress"
msgstr ""
-#: ../src/ui/dialog/export.cpp:1017
+#: ../src/ui/dialog/export.cpp:1013
msgid "No items selected."
msgstr ""
-#: ../src/ui/dialog/export.cpp:1021 ../src/ui/dialog/export.cpp:1023
+#: ../src/ui/dialog/export.cpp:1017 ../src/ui/dialog/export.cpp:1019
msgid "Exporting %1 files"
msgstr ""
-#: ../src/ui/dialog/export.cpp:1063 ../src/ui/dialog/export.cpp:1065
+#: ../src/ui/dialog/export.cpp:1060 ../src/ui/dialog/export.cpp:1062
#, c-format
msgid "Exporting file <b>%s</b>..."
msgstr ""
-#: ../src/ui/dialog/export.cpp:1074 ../src/ui/dialog/export.cpp:1165
+#: ../src/ui/dialog/export.cpp:1071 ../src/ui/dialog/export.cpp:1163
#, c-format
msgid "Could not export to filename %s.\n"
msgstr ""
-#: ../src/ui/dialog/export.cpp:1077
+#: ../src/ui/dialog/export.cpp:1074
#, c-format
msgid "Could not export to filename <b>%s</b>."
msgstr ""
-#: ../src/ui/dialog/export.cpp:1092
+#: ../src/ui/dialog/export.cpp:1089
#, c-format
msgid "Successfully exported <b>%d</b> files from <b>%d</b> selected items."
msgstr ""
-#: ../src/ui/dialog/export.cpp:1103
+#: ../src/ui/dialog/export.cpp:1100
msgid "You have to enter a filename."
msgstr ""
-#: ../src/ui/dialog/export.cpp:1104
+#: ../src/ui/dialog/export.cpp:1101
msgid "You have to enter a filename"
msgstr ""
-#: ../src/ui/dialog/export.cpp:1118
+#: ../src/ui/dialog/export.cpp:1115
msgid "The chosen area to be exported is invalid."
msgstr ""
-#: ../src/ui/dialog/export.cpp:1119
+#: ../src/ui/dialog/export.cpp:1116
msgid "The chosen area to be exported is invalid"
msgstr ""
-#: ../src/ui/dialog/export.cpp:1134
+#: ../src/ui/dialog/export.cpp:1131
#, c-format
msgid "Directory %s does not exist or is not a directory.\n"
msgstr ""
#. TRANSLATORS: %1 will be the filename, %2 the width, and %3 the height of the image
-#: ../src/ui/dialog/export.cpp:1148 ../src/ui/dialog/export.cpp:1150
+#: ../src/ui/dialog/export.cpp:1145 ../src/ui/dialog/export.cpp:1147
msgid "Exporting %1 (%2 x %3)"
msgstr ""
-#: ../src/ui/dialog/export.cpp:1176
+#: ../src/ui/dialog/export.cpp:1174
#, c-format
msgid "Drawing exported to <b>%s</b>."
msgstr ""
-#: ../src/ui/dialog/export.cpp:1180
+#: ../src/ui/dialog/export.cpp:1178
msgid "Export aborted."
msgstr ""
-#: ../src/ui/dialog/export.cpp:1301 ../src/ui/interface.cpp:1392
+#: ../src/ui/dialog/export.cpp:1299 ../src/ui/interface.cpp:1392
#: ../src/widgets/desktop-widget.cpp:1122
#: ../src/widgets/desktop-widget.cpp:1184
msgid "_Cancel"
msgstr ""
-#: ../src/ui/dialog/export.cpp:1302 ../src/ui/dialog/input.cpp:1082
-#: ../src/verbs.cpp:2437 ../src/widgets/desktop-widget.cpp:1123
+#: ../src/ui/dialog/export.cpp:1300 ../src/ui/dialog/input.cpp:1082
+#: ../src/verbs.cpp:2406 ../src/widgets/desktop-widget.cpp:1123
msgid "_Save"
msgstr ""
@@ -14744,8 +14712,8 @@ msgstr ""
msgid "Information"
msgstr ""
-#: ../src/ui/dialog/extension-editor.cpp:82 ../src/verbs.cpp:310
-#: ../src/verbs.cpp:329 ../share/extensions/color_HSL_adjust.inx.h:11
+#: ../src/ui/dialog/extension-editor.cpp:82 ../src/verbs.cpp:309
+#: ../src/verbs.cpp:328 ../share/extensions/color_HSL_adjust.inx.h:11
#: ../share/extensions/color_custom.inx.h:7
#: ../share/extensions/color_randomize.inx.h:6
#: ../share/extensions/dots.inx.h:7
@@ -14817,36 +14785,36 @@ msgstr ""
#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:783
#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:799
#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:814
-#: ../src/ui/dialog/filedialogimpl-win32.cpp:282
-#: ../src/ui/dialog/filedialogimpl-win32.cpp:413
+#: ../src/ui/dialog/filedialogimpl-win32.cpp:286
+#: ../src/ui/dialog/filedialogimpl-win32.cpp:417
msgid "All Files"
msgstr ""
#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:780
#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:796
#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:811
-#: ../src/ui/dialog/filedialogimpl-win32.cpp:283
+#: ../src/ui/dialog/filedialogimpl-win32.cpp:287
msgid "All Inkscape Files"
msgstr ""
#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:787
#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:803
#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:817
-#: ../src/ui/dialog/filedialogimpl-win32.cpp:284
+#: ../src/ui/dialog/filedialogimpl-win32.cpp:288
msgid "All Images"
msgstr ""
#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:790
#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:806
#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:820
-#: ../src/ui/dialog/filedialogimpl-win32.cpp:285
+#: ../src/ui/dialog/filedialogimpl-win32.cpp:289
msgid "All Vectors"
msgstr ""
#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:793
#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:809
#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:823
-#: ../src/ui/dialog/filedialogimpl-win32.cpp:286
+#: ../src/ui/dialog/filedialogimpl-win32.cpp:290
msgid "All Bitmaps"
msgstr ""
@@ -14906,8 +14874,8 @@ msgstr ""
msgid "Document"
msgstr ""
-#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1541 ../src/verbs.cpp:176
-#: ../src/widgets/desktop-widget.cpp:2000
+#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1541 ../src/verbs.cpp:175
+#: ../src/widgets/desktop-widget.cpp:2002
#: ../share/extensions/printing_marks.inx.h:18
msgid "Selection"
msgstr ""
@@ -14929,15 +14897,15 @@ msgstr ""
msgid "Antialias"
msgstr ""
-#: ../src/ui/dialog/filedialogimpl-win32.cpp:414
+#: ../src/ui/dialog/filedialogimpl-win32.cpp:418
msgid "All Executable Files"
msgstr ""
-#: ../src/ui/dialog/filedialogimpl-win32.cpp:606
+#: ../src/ui/dialog/filedialogimpl-win32.cpp:610
msgid "Show Preview"
msgstr ""
-#: ../src/ui/dialog/filedialogimpl-win32.cpp:744
+#: ../src/ui/dialog/filedialogimpl-win32.cpp:748
msgid "No file selected"
msgstr ""
@@ -14954,7 +14922,7 @@ msgid "Stroke st_yle"
msgstr ""
#. TRANSLATORS: this dialog is accessible via menu Filters - Filter editor
-#: ../src/ui/dialog/filter-effects-dialog.cpp:546
+#: ../src/ui/dialog/filter-effects-dialog.cpp:547
msgid ""
"This matrix determines a linear transform on color space. Each line affects "
"one of the color components. Each column determines how much of each color "
@@ -14962,220 +14930,220 @@ msgid ""
"depend on input colors, so can be used to adjust a constant component value."
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:549
+#: ../src/ui/dialog/filter-effects-dialog.cpp:550
#: ../share/extensions/grid_polar.inx.h:4
msgctxt "Label"
msgid "None"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:656
+#: ../src/ui/dialog/filter-effects-dialog.cpp:657
msgid "Image File"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:659
+#: ../src/ui/dialog/filter-effects-dialog.cpp:660
msgid "Selected SVG Element"
msgstr ""
#. TODO: any image, not just svg
-#: ../src/ui/dialog/filter-effects-dialog.cpp:729
+#: ../src/ui/dialog/filter-effects-dialog.cpp:730
msgid "Select an image to be used as feImage input"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:821
+#: ../src/ui/dialog/filter-effects-dialog.cpp:822
msgid "This SVG filter effect does not require any parameters."
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:827
+#: ../src/ui/dialog/filter-effects-dialog.cpp:828
msgid "This SVG filter effect is not yet implemented in Inkscape."
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1041
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1042
msgid "Slope"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1042
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1043
msgid "Intercept"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1045
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1046
msgid "Amplitude"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1046
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1047
msgid "Exponent"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1143
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1144
msgid "New transfer function type"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1178
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1179
msgid "Light Source:"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1195
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1196
msgid "Direction angle for the light source on the XY plane, in degrees"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1196
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1197
msgid "Direction angle for the light source on the YZ plane, in degrees"
msgstr ""
#. default x:
#. default y:
#. default z:
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1199
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1202
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1200
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1203
msgid "Location:"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1199
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1202
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1205
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1200
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1203
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1206
msgid "X coordinate"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1199
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1202
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1205
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1200
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1203
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1206
msgid "Y coordinate"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1199
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1202
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1205
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1200
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1203
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1206
msgid "Z coordinate"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1205
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1206
msgid "Points At"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1206
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1207
msgid "Specular Exponent"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1206
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1207
msgid "Exponent value controlling the focus for the light source"
msgstr ""
#. TODO: here I have used 100 degrees as default value. But spec says that if not specified, no limiting cone is applied. So, there should be a way for the user to set a "no limiting cone" option.
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1208
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1209
msgid "Cone Angle"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1208
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1209
msgid ""
"This is the angle between the spot light axis (i.e. the axis between the "
"light source and the point to which it is pointing at) and the spot light "
"cone. No light is projected outside this cone."
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1274
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1275
msgid "New light source"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1325
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1326
msgid "_Duplicate"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1359
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1360
msgid "_Filter"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1379
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1387
msgid "R_ename"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1512
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1521
msgid "Rename filter"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1565
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1573
msgid "Apply filter"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1635
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1652
msgid "filter"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1642
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1659
msgid "Add filter"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1694
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1709
msgid "Duplicate filter"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1793
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1808
msgid "_Effect"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1803
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1818
msgid "Connections"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1941
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1956
msgid "Remove filter primitive"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2529
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2543
msgid "Remove merge node"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2649
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2663
msgid "Reorder filter primitive"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2729
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2743
msgid "Add Effect:"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2730
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2744
msgid "No effect selected"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2731
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2745
msgid "No filter selected"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2776
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2792
msgid "Effect parameters"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2777
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2793
msgid "Filter General Settings"
msgstr ""
#. default x:
#. default y:
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2835
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2851
msgid "Coordinates:"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2835
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2851
msgid "X coordinate of the left corners of filter effects region"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2835
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2851
msgid "Y coordinate of the upper corners of filter effects region"
msgstr ""
#. default width:
#. default height:
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2836
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2852
msgid "Dimensions:"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2836
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2852
msgid "Width of filter effects region"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2836
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2852
msgid "Height of filter effects region"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2842
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2858
msgid ""
"Indicates the type of matrix operation. The keyword 'matrix' indicates that "
"a full 5x4 matrix of values will be provided. The other keywords represent "
@@ -15183,95 +15151,95 @@ msgid ""
"performed without specifying a complete matrix."
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2843
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2859
msgid "Value(s):"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2847
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2863
msgid "R:"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2848
-#: ../src/widgets/sp-color-icc-selector.cpp:334
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2864
+#: ../src/ui/widget/color-icc-selector.cpp:180
msgid "G:"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2849
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2865
msgid "B:"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2850
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2866
msgid "A:"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2853
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2893
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2869
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2909
msgid "Operator:"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2854
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2870
msgid "K1:"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2854
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2855
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2856
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2857
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2870
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2871
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2872
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2873
msgid ""
"If the arithmetic operation is chosen, each result pixel is computed using "
"the formula k1*i1*i2 + k2*i1 + k3*i2 + k4 where i1 and i2 are the pixel "
"values of the first and second inputs respectively."
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2855
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2871
msgid "K2:"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2856
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2872
msgid "K3:"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2857
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2873
msgid "K4:"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2860
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2876
msgid "Size:"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2860
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2876
msgid "width of the convolve matrix"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2860
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2876
msgid "height of the convolve matrix"
msgstr ""
#. default x:
#. default y:
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2861
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2877
#: ../src/ui/dialog/object-attributes.cpp:48
msgid "Target:"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2861
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2877
msgid ""
"X coordinate of the target point in the convolve matrix. The convolution is "
"applied to pixels around this point."
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2861
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2877
msgid ""
"Y coordinate of the target point in the convolve matrix. The convolution is "
"applied to pixels around this point."
msgstr ""
#. TRANSLATORS: for info on "Kernel", see http://en.wikipedia.org/wiki/Kernel_(matrix)
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2863
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2879
msgid "Kernel:"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2863
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2879
msgid ""
"This matrix describes the convolve operation that is applied to the input "
"image in order to calculate the pixel colors at the output. Different "
@@ -15281,11 +15249,11 @@ msgid ""
"would lead to a common blur effect."
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2865
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2881
msgid "Divisor:"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2865
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2881
msgid ""
"After applying the kernelMatrix to the input image to yield a number, that "
"number is divided by divisor to yield the final destination color value. A "
@@ -15293,189 +15261,189 @@ msgid ""
"effect on the overall color intensity of the result."
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2866
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2882
msgid "Bias:"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2866
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2882
msgid ""
"This value is added to each component. This is useful to define a constant "
"value as the zero response of the filter."
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2867
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2883
msgid "Edge Mode:"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2867
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2883
msgid ""
"Determines how to extend the input image as necessary with color values so "
"that the matrix operations can be applied when the kernel is positioned at "
"or near the edge of the input image."
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2868
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2884
msgid "Preserve Alpha"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2868
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2884
msgid "If set, the alpha channel won't be altered by this filter primitive."
msgstr ""
#. default: white
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2871
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2887
msgid "Diffuse Color:"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2871
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2904
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2887
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2920
msgid "Defines the color of the light source"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2872
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2905
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2888
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2921
msgid "Surface Scale:"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2872
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2905
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2888
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2921
msgid ""
"This value amplifies the heights of the bump map defined by the input alpha "
"channel"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2873
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2906
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2889
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2922
msgid "Constant:"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2873
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2906
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2889
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2922
msgid "This constant affects the Phong lighting model."
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2874
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2908
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2890
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2924
msgid "Kernel Unit Length:"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2878
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2894
msgid "This defines the intensity of the displacement effect."
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2879
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2895
msgid "X displacement:"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2879
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2895
msgid "Color component that controls the displacement in the X direction"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2880
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2896
msgid "Y displacement:"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2880
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2896
msgid "Color component that controls the displacement in the Y direction"
msgstr ""
#. default: black
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2883
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2899
msgid "Flood Color:"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2883
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2899
msgid "The whole filter region will be filled with this color."
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2887
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2903
msgid "Standard Deviation:"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2887
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2903
msgid "The standard deviation for the blur operation."
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2893
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2909
msgid ""
"Erode: performs \"thinning\" of input image.\n"
"Dilate: performs \"fattenning\" of input image."
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2897
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2913
msgid "Source of Image:"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2900
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2916
msgid "Delta X:"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2900
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2916
msgid "This is how far the input image gets shifted to the right"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2901
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2917
msgid "Delta Y:"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2901
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2917
msgid "This is how far the input image gets shifted downwards"
msgstr ""
#. default: white
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2904
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2920
msgid "Specular Color:"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2907
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2923
#: ../share/extensions/interp.inx.h:2
msgid "Exponent:"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2907
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2923
msgid "Exponent for specular term, larger is more \"shiny\"."
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2916
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2932
msgid ""
"Indicates whether the filter primitive should perform a noise or turbulence "
"function."
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2917
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2933
msgid "Base Frequency:"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2918
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2934
msgid "Octaves:"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2919
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2935
msgid "Seed:"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2919
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2935
msgid "The starting number for the pseudo random number generator."
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2931
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2947
msgid "Add filter primitive"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2948
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2964
msgid ""
"The <b>feBlend</b> filter primitive provides 4 image blending modes: screen, "
"multiply, darken and lighten."
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2952
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2968
msgid ""
"The <b>feColorMatrix</b> filter primitive applies a matrix transformation to "
"color of each rendered pixel. This allows for effects like turning object to "
"grayscale, modifying color saturation and changing color hue."
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2956
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2972
msgid ""
"The <b>feComponentTransfer</b> filter primitive manipulates the input's "
"color components (red, green, blue, and alpha) according to particular "
@@ -15483,7 +15451,7 @@ msgid ""
"adjustment, color balance, and thresholding."
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2960
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2976
msgid ""
"The <b>feComposite</b> filter primitive composites two images using one of "
"the Porter-Duff blending modes or the arithmetic mode described in SVG "
@@ -15491,7 +15459,7 @@ msgid ""
"between the corresponding pixel values of the images."
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2964
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2980
msgid ""
"The <b>feConvolveMatrix</b> lets you specify a Convolution to be applied on "
"the image. Common effects created using convolution matrices are blur, "
@@ -15500,7 +15468,7 @@ msgid ""
"is faster and resolution-independent."
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2968
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2984
msgid ""
"The <b>feDiffuseLighting</b> and feSpecularLighting filter primitives create "
"\"embossed\" shadings. The input's alpha channel is used to provide depth "
@@ -15508,7 +15476,7 @@ msgid ""
"opacity areas recede away from the viewer."
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2972
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2988
msgid ""
"The <b>feDisplacementMap</b> filter primitive displaces the pixels in the "
"first input using the second input as a displacement map, that shows from "
@@ -15516,26 +15484,26 @@ msgid ""
"effects."
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2976
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2992
msgid ""
"The <b>feFlood</b> filter primitive fills the region with a given color and "
"opacity. It is usually used as an input to other filters to apply color to "
"a graphic."
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2980
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2996
msgid ""
"The <b>feGaussianBlur</b> filter primitive uniformly blurs its input. It is "
"commonly used together with feOffset to create a drop shadow effect."
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2984
+#: ../src/ui/dialog/filter-effects-dialog.cpp:3000
msgid ""
"The <b>feImage</b> filter primitive fills the region with an external image "
"or another part of the document."
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2988
+#: ../src/ui/dialog/filter-effects-dialog.cpp:3004
msgid ""
"The <b>feMerge</b> filter primitive composites several temporary images "
"inside the filter primitive to a single image. It uses normal alpha "
@@ -15543,21 +15511,21 @@ msgid ""
"in 'normal' mode or several feComposite primitives in 'over' mode."
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2992
+#: ../src/ui/dialog/filter-effects-dialog.cpp:3008
msgid ""
"The <b>feMorphology</b> filter primitive provides erode and dilate effects. "
"For single-color objects erode makes the object thinner and dilate makes it "
"thicker."
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2996
+#: ../src/ui/dialog/filter-effects-dialog.cpp:3012
msgid ""
"The <b>feOffset</b> filter primitive offsets the image by an user-defined "
"amount. For example, this is useful for drop shadows, where the shadow is in "
"a slightly different position than the actual object."
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:3000
+#: ../src/ui/dialog/filter-effects-dialog.cpp:3016
msgid ""
"The <b>feDiffuseLighting</b> and <b>feSpecularLighting</b> filter primitives "
"create \"embossed\" shadings. The input's alpha channel is used to provide "
@@ -15565,23 +15533,23 @@ msgid ""
"lower opacity areas recede away from the viewer."
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:3004
+#: ../src/ui/dialog/filter-effects-dialog.cpp:3020
msgid ""
"The <b>feTile</b> filter primitive tiles a region with its input graphic"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:3008
+#: ../src/ui/dialog/filter-effects-dialog.cpp:3024
msgid ""
"The <b>feTurbulence</b> filter primitive renders Perlin noise. This kind of "
"noise is useful in simulating several nature phenomena like clouds, fire and "
"smoke and in generating complex textures like marble or granite."
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:3027
+#: ../src/ui/dialog/filter-effects-dialog.cpp:3043
msgid "Duplicate filter primitive"
msgstr ""
-#: ../src/ui/dialog/filter-effects-dialog.cpp:3080
+#: ../src/ui/dialog/filter-effects-dialog.cpp:3096
msgid "Set filter primitive attribute"
msgstr ""
@@ -15765,7 +15733,7 @@ msgstr ""
msgid "Search spirals"
msgstr ""
-#: ../src/ui/dialog/find.cpp:103 ../src/widgets/toolbox.cpp:1737
+#: ../src/ui/dialog/find.cpp:103 ../src/widgets/toolbox.cpp:1733
msgid "Paths"
msgstr ""
@@ -15890,25 +15858,25 @@ msgstr ""
msgid "Select a property"
msgstr ""
-#: ../src/ui/dialog/font-substitution.cpp:87
+#: ../src/ui/dialog/font-substitution.cpp:79
msgid ""
"\n"
"Some fonts are not available and have been substituted."
msgstr ""
-#: ../src/ui/dialog/font-substitution.cpp:90
+#: ../src/ui/dialog/font-substitution.cpp:82
msgid "Font substitution"
msgstr ""
-#: ../src/ui/dialog/font-substitution.cpp:109
+#: ../src/ui/dialog/font-substitution.cpp:101
msgid "Select all the affected items"
msgstr ""
-#: ../src/ui/dialog/font-substitution.cpp:114
+#: ../src/ui/dialog/font-substitution.cpp:106
msgid "Don't show this warning again"
msgstr ""
-#: ../src/ui/dialog/font-substitution.cpp:255
+#: ../src/ui/dialog/font-substitution.cpp:245
msgid "Font '%1' substituted with '%2'"
msgstr ""
@@ -16633,7 +16601,7 @@ msgstr ""
msgid "Append"
msgstr ""
-#: ../src/ui/dialog/glyphs.cpp:618
+#: ../src/ui/dialog/glyphs.cpp:619
msgid "Append text"
msgstr ""
@@ -16641,72 +16609,74 @@ msgstr ""
msgid "Arrange in a grid"
msgstr ""
-#: ../src/ui/dialog/grid-arrange-tab.cpp:578
+#: ../src/ui/dialog/grid-arrange-tab.cpp:577
#: ../src/ui/dialog/object-attributes.cpp:66
#: ../src/ui/dialog/object-attributes.cpp:75
-#: ../src/widgets/desktop-widget.cpp:666 ../src/widgets/node-toolbar.cpp:581
+#: ../src/ui/widget/page-sizer.cpp:247 ../src/widgets/desktop-widget.cpp:666
+#: ../src/widgets/node-toolbar.cpp:581
msgid "X:"
msgstr ""
-#: ../src/ui/dialog/grid-arrange-tab.cpp:578
+#: ../src/ui/dialog/grid-arrange-tab.cpp:577
msgid "Horizontal spacing between columns."
msgstr ""
-#: ../src/ui/dialog/grid-arrange-tab.cpp:579
+#: ../src/ui/dialog/grid-arrange-tab.cpp:578
#: ../src/ui/dialog/object-attributes.cpp:67
#: ../src/ui/dialog/object-attributes.cpp:76
-#: ../src/widgets/desktop-widget.cpp:676 ../src/widgets/node-toolbar.cpp:599
+#: ../src/ui/widget/page-sizer.cpp:248 ../src/widgets/desktop-widget.cpp:676
+#: ../src/widgets/node-toolbar.cpp:599
msgid "Y:"
msgstr ""
-#: ../src/ui/dialog/grid-arrange-tab.cpp:579
+#: ../src/ui/dialog/grid-arrange-tab.cpp:578
msgid "Vertical spacing between rows."
msgstr ""
-#: ../src/ui/dialog/grid-arrange-tab.cpp:626
+#: ../src/ui/dialog/grid-arrange-tab.cpp:624
msgid "_Rows:"
msgstr ""
-#: ../src/ui/dialog/grid-arrange-tab.cpp:635
+#: ../src/ui/dialog/grid-arrange-tab.cpp:633
msgid "Number of rows"
msgstr ""
-#: ../src/ui/dialog/grid-arrange-tab.cpp:639
+#: ../src/ui/dialog/grid-arrange-tab.cpp:637
msgid "Equal _height"
msgstr ""
-#: ../src/ui/dialog/grid-arrange-tab.cpp:650
+#: ../src/ui/dialog/grid-arrange-tab.cpp:648
msgid "If not set, each row has the height of the tallest object in it"
msgstr ""
#. #### Number of columns ####
-#: ../src/ui/dialog/grid-arrange-tab.cpp:666
+#: ../src/ui/dialog/grid-arrange-tab.cpp:664
msgid "_Columns:"
msgstr ""
-#: ../src/ui/dialog/grid-arrange-tab.cpp:675
+#: ../src/ui/dialog/grid-arrange-tab.cpp:673
msgid "Number of columns"
msgstr ""
-#: ../src/ui/dialog/grid-arrange-tab.cpp:679
+#: ../src/ui/dialog/grid-arrange-tab.cpp:677
msgid "Equal _width"
msgstr ""
-#: ../src/ui/dialog/grid-arrange-tab.cpp:689
+#: ../src/ui/dialog/grid-arrange-tab.cpp:687
msgid "If not set, each column has the width of the widest object in it"
msgstr ""
#. Anchor selection widget
-#: ../src/ui/dialog/grid-arrange-tab.cpp:700
+#: ../src/ui/dialog/grid-arrange-tab.cpp:698
msgid "Alignment:"
msgstr ""
#. #### Radio buttons to control spacing manually or to fit selection bbox ####
-#: ../src/ui/dialog/grid-arrange-tab.cpp:709
+#: ../src/ui/dialog/grid-arrange-tab.cpp:707
msgid "_Fit into selection box"
msgstr ""
-#: ../src/ui/dialog/grid-arrange-tab.cpp:716
+#: ../src/ui/dialog/grid-arrange-tab.cpp:714
msgid "_Set spacing:"
msgstr ""
@@ -16758,25 +16728,25 @@ msgstr ""
msgid "Current: %s"
msgstr ""
-#: ../src/ui/dialog/icon-preview.cpp:159
+#: ../src/ui/dialog/icon-preview.cpp:155
#, c-format
msgid "%d x %d"
msgstr ""
-#: ../src/ui/dialog/icon-preview.cpp:171
+#: ../src/ui/dialog/icon-preview.cpp:167
msgid "Magnified:"
msgstr ""
-#: ../src/ui/dialog/icon-preview.cpp:240
+#: ../src/ui/dialog/icon-preview.cpp:236
msgid "Actual Size:"
msgstr ""
-#: ../src/ui/dialog/icon-preview.cpp:245
+#: ../src/ui/dialog/icon-preview.cpp:241
msgctxt "Icon preview window"
msgid "Sele_ction"
msgstr ""
-#: ../src/ui/dialog/icon-preview.cpp:247
+#: ../src/ui/dialog/icon-preview.cpp:243
msgid "Selection only or whole document"
msgstr ""
@@ -17102,7 +17072,7 @@ msgid "Zoom"
msgstr ""
#. Measure
-#: ../src/ui/dialog/inkscape-preferences.cpp:390 ../src/verbs.cpp:2761
+#: ../src/ui/dialog/inkscape-preferences.cpp:390 ../src/verbs.cpp:2730
msgctxt "ContextVerb"
msgid "Measure"
msgstr ""
@@ -17157,7 +17127,7 @@ msgid ""
msgstr ""
#. Text
-#: ../src/ui/dialog/inkscape-preferences.cpp:448 ../src/verbs.cpp:2753
+#: ../src/ui/dialog/inkscape-preferences.cpp:448 ../src/verbs.cpp:2722
msgctxt "ContextVerb"
msgid "Text"
msgstr ""
@@ -17240,8 +17210,8 @@ msgstr ""
#. Gradient
#: ../src/ui/dialog/inkscape-preferences.cpp:487
-#: ../src/widgets/gradient-selector.cpp:144
-#: ../src/widgets/gradient-selector.cpp:295
+#: ../src/widgets/gradient-selector.cpp:148
+#: ../src/widgets/gradient-selector.cpp:299
msgid "Gradient"
msgstr ""
@@ -17590,6 +17560,7 @@ msgstr ""
#: ../src/ui/dialog/inkscape-preferences.cpp:572
#: ../src/ui/dialog/inkscape-preferences.cpp:657
+#: ../src/ui/widget/font-variants.cpp:51
msgid "Small"
msgstr ""
@@ -18377,8 +18348,8 @@ msgid "Preserve K channel in CMYK -> CMYK transforms"
msgstr ""
#: ../src/ui/dialog/inkscape-preferences.cpp:1046
-#: ../src/widgets/sp-color-icc-selector.cpp:449
-#: ../src/widgets/sp-color-icc-selector.cpp:741
+#: ../src/ui/widget/color-icc-selector.cpp:395
+#: ../src/ui/widget/color-icc-selector.cpp:674
msgid "<none>"
msgstr ""
@@ -19116,7 +19087,7 @@ msgid "Rendering"
msgstr ""
#. Note: /options/bitmapoversample removed with Cairo renderer
-#: ../src/ui/dialog/inkscape-preferences.cpp:1434 ../src/verbs.cpp:157
+#: ../src/ui/dialog/inkscape-preferences.cpp:1434 ../src/verbs.cpp:156
#: ../src/widgets/calligraphy-toolbar.cpp:626
msgid "Edit"
msgstr ""
@@ -19134,7 +19105,7 @@ msgid "_Bitmap editor:"
msgstr ""
#: ../src/ui/dialog/inkscape-preferences.cpp:1441
-#: ../share/extensions/guillotine.inx.h:5 ../share/extensions/plotter.inx.h:57
+#: ../share/extensions/guillotine.inx.h:5 ../share/extensions/plotter.inx.h:67
#: ../share/extensions/print_win32_vector.inx.h:2
msgid "Export"
msgstr ""
@@ -19227,7 +19198,7 @@ msgid "Shortcut"
msgstr ""
#: ../src/ui/dialog/inkscape-preferences.cpp:1513
-#: ../src/ui/widget/page-sizer.cpp:260
+#: ../src/ui/widget/page-sizer.cpp:285
msgid "Description"
msgstr ""
@@ -19235,7 +19206,7 @@ msgstr ""
#: ../src/ui/dialog/pixelartdialog.cpp:296
#: ../src/ui/dialog/svg-fonts-dialog.cpp:699
#: ../src/ui/dialog/tracedialog.cpp:813
-#: ../src/ui/widget/preferences-widget.cpp:749
+#: ../src/ui/widget/preferences-widget.cpp:745
msgid "Reset"
msgstr ""
@@ -19454,7 +19425,7 @@ msgid "Link:"
msgstr ""
#: ../src/ui/dialog/input.cpp:742 ../src/ui/dialog/input.cpp:743
-#: ../src/ui/dialog/input.cpp:1571
+#: ../src/ui/dialog/input.cpp:1571 ../src/ui/widget/color-scales.cpp:46
msgid "None"
msgstr ""
@@ -19510,7 +19481,7 @@ msgid "Y tilt"
msgstr ""
#: ../src/ui/dialog/input.cpp:1616
-#: ../src/widgets/sp-color-wheel-selector.cpp:32
+#: ../src/ui/widget/color-wheel-selector.cpp:29
msgid "Wheel"
msgstr ""
@@ -19545,8 +19516,8 @@ msgstr ""
#. TODO: find an unused layer number, forming name from _("Layer ") + "%d"
#: ../src/ui/dialog/layer-properties.cpp:354
-#: ../src/ui/dialog/layer-properties.cpp:410 ../src/verbs.cpp:195
-#: ../src/verbs.cpp:2368
+#: ../src/ui/dialog/layer-properties.cpp:410 ../src/verbs.cpp:194
+#: ../src/verbs.cpp:2337
msgid "Layer"
msgstr ""
@@ -19554,7 +19525,7 @@ msgstr ""
msgid "_Rename"
msgstr ""
-#: ../src/ui/dialog/layer-properties.cpp:368 ../src/ui/dialog/layers.cpp:750
+#: ../src/ui/dialog/layer-properties.cpp:368 ../src/ui/dialog/layers.cpp:758
msgid "Rename layer"
msgstr ""
@@ -19580,8 +19551,8 @@ msgid "Move to Layer"
msgstr ""
#: ../src/ui/dialog/layer-properties.cpp:411
-#: ../src/ui/dialog/lpe-powerstroke-properties.cpp:120
-#: ../src/ui/dialog/transformation.cpp:112
+#: ../src/ui/dialog/lpe-powerstroke-properties.cpp:116
+#: ../src/ui/dialog/transformation.cpp:108
msgid "_Move"
msgstr ""
@@ -19601,41 +19572,41 @@ msgstr ""
msgid "Unlock layer"
msgstr ""
-#: ../src/ui/dialog/layers.cpp:624 ../src/ui/dialog/objects.cpp:843
-#: ../src/verbs.cpp:1438
+#: ../src/ui/dialog/layers.cpp:624 ../src/ui/dialog/objects.cpp:844
+#: ../src/verbs.cpp:1407
msgid "Toggle layer solo"
msgstr ""
-#: ../src/ui/dialog/layers.cpp:627 ../src/ui/dialog/objects.cpp:846
-#: ../src/verbs.cpp:1462
+#: ../src/ui/dialog/layers.cpp:627 ../src/ui/dialog/objects.cpp:847
+#: ../src/verbs.cpp:1431
msgid "Lock other layers"
msgstr ""
-#: ../src/ui/dialog/layers.cpp:721
+#: ../src/ui/dialog/layers.cpp:730
msgid "Moved layer"
msgstr ""
-#: ../src/ui/dialog/layers.cpp:884
+#: ../src/ui/dialog/layers.cpp:892
msgctxt "Layers"
msgid "New"
msgstr ""
-#: ../src/ui/dialog/layers.cpp:889
+#: ../src/ui/dialog/layers.cpp:897
msgctxt "Layers"
msgid "Bot"
msgstr ""
-#: ../src/ui/dialog/layers.cpp:895
+#: ../src/ui/dialog/layers.cpp:903
msgctxt "Layers"
msgid "Dn"
msgstr ""
-#: ../src/ui/dialog/layers.cpp:901
+#: ../src/ui/dialog/layers.cpp:909
msgctxt "Layers"
msgid "Up"
msgstr ""
-#: ../src/ui/dialog/layers.cpp:907
+#: ../src/ui/dialog/layers.cpp:915
msgctxt "Layers"
msgid "Top"
msgstr ""
@@ -19714,43 +19685,43 @@ msgstr ""
msgid "Deactivate path effect"
msgstr ""
-#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:57
+#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:52
msgid "Radius (pixels):"
msgstr ""
-#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:69
+#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:64
msgid "Chamfer subdivisions:"
msgstr ""
-#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:144
+#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:135
msgid "Modify Fillet-Chamfer"
msgstr ""
-#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:145
+#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:136
msgid "_Modify"
msgstr ""
-#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:210
+#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:200
msgid "Radius"
msgstr ""
-#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:212
+#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:202
msgid "Radius approximated"
msgstr ""
-#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:215
+#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:205
msgid "Knot distance"
msgstr ""
-#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:222
+#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:212
msgid "Position (%):"
msgstr ""
-#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:225
-msgid "%1 (%2):"
+#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:215
+msgid "%1:"
msgstr ""
-#: ../src/ui/dialog/lpe-powerstroke-properties.cpp:119
+#: ../src/ui/dialog/lpe-powerstroke-properties.cpp:115
msgid "Modify Node Position"
msgstr ""
@@ -19904,8 +19875,8 @@ msgid "Check to make the object insensitive (not selectable by mouse)"
msgstr ""
#. Button for setting the object's id, label, title and description.
-#: ../src/ui/dialog/object-properties.cpp:325 ../src/verbs.cpp:2711
-#: ../src/verbs.cpp:2717
+#: ../src/ui/dialog/object-properties.cpp:325 ../src/verbs.cpp:2680
+#: ../src/verbs.cpp:2686
msgid "_Set"
msgstr ""
@@ -19943,52 +19914,56 @@ msgstr ""
msgid "Set object description"
msgstr ""
-#: ../src/ui/dialog/object-properties.cpp:552
+#: ../src/ui/dialog/object-properties.cpp:535
+msgid "Set image rendering option"
+msgstr ""
+
+#: ../src/ui/dialog/object-properties.cpp:554
msgid "Lock object"
msgstr ""
-#: ../src/ui/dialog/object-properties.cpp:552
+#: ../src/ui/dialog/object-properties.cpp:554
msgid "Unlock object"
msgstr ""
-#: ../src/ui/dialog/object-properties.cpp:568
+#: ../src/ui/dialog/object-properties.cpp:570
msgid "Hide object"
msgstr ""
-#: ../src/ui/dialog/object-properties.cpp:568
+#: ../src/ui/dialog/object-properties.cpp:570
msgid "Unhide object"
msgstr ""
-#: ../src/ui/dialog/objects.cpp:873
+#: ../src/ui/dialog/objects.cpp:874
msgid "Unhide objects"
msgstr ""
-#: ../src/ui/dialog/objects.cpp:873
+#: ../src/ui/dialog/objects.cpp:874
msgid "Hide objects"
msgstr ""
-#: ../src/ui/dialog/objects.cpp:893
+#: ../src/ui/dialog/objects.cpp:894
msgid "Lock objects"
msgstr ""
-#: ../src/ui/dialog/objects.cpp:893
+#: ../src/ui/dialog/objects.cpp:894
msgid "Unlock objects"
msgstr ""
-#: ../src/ui/dialog/objects.cpp:905
+#: ../src/ui/dialog/objects.cpp:906
msgid "Layer to group"
msgstr ""
-#: ../src/ui/dialog/objects.cpp:905
+#: ../src/ui/dialog/objects.cpp:906
msgid "Group to layer"
msgstr ""
-#: ../src/ui/dialog/objects.cpp:1103
+#: ../src/ui/dialog/objects.cpp:1104
msgid "Moved objects"
msgstr ""
-#: ../src/ui/dialog/objects.cpp:1352 ../src/ui/dialog/tags.cpp:856
-#: ../src/ui/dialog/tags.cpp:863
+#: ../src/ui/dialog/objects.cpp:1353 ../src/ui/dialog/tags.cpp:857
+#: ../src/ui/dialog/tags.cpp:864
msgid "Rename object"
msgstr ""
@@ -20269,11 +20244,11 @@ msgstr ""
msgid "Rotate objects"
msgstr ""
-#: ../src/ui/dialog/polar-arrange-tab.cpp:338
+#: ../src/ui/dialog/polar-arrange-tab.cpp:336
msgid "Couldn't find an ellipse in selection"
msgstr ""
-#: ../src/ui/dialog/polar-arrange-tab.cpp:403
+#: ../src/ui/dialog/polar-arrange-tab.cpp:399
msgid "Arrange on ellipse"
msgstr ""
@@ -20537,7 +20512,7 @@ msgstr ""
#: ../src/ui/dialog/swatches.cpp:202 ../src/ui/tools/gradient-tool.cpp:360
#: ../src/ui/tools/gradient-tool.cpp:458
-#: ../src/widgets/gradient-vector.cpp:794
+#: ../src/widgets/gradient-vector.cpp:801
msgid "Add gradient stop"
msgstr ""
@@ -20565,69 +20540,69 @@ msgid "Palettes directory (%s) is unavailable."
msgstr ""
#. ******************* Symbol Sets ************************
-#: ../src/ui/dialog/symbols.cpp:139
+#: ../src/ui/dialog/symbols.cpp:135
msgid "Symbol set: "
msgstr ""
#. Fill in later
-#: ../src/ui/dialog/symbols.cpp:148 ../src/ui/dialog/symbols.cpp:149
+#: ../src/ui/dialog/symbols.cpp:144 ../src/ui/dialog/symbols.cpp:145
msgid "Current Document"
msgstr ""
-#: ../src/ui/dialog/symbols.cpp:216
+#: ../src/ui/dialog/symbols.cpp:212
msgid "Add Symbol from the current document."
msgstr ""
-#: ../src/ui/dialog/symbols.cpp:225
+#: ../src/ui/dialog/symbols.cpp:221
msgid "Remove Symbol from the current document."
msgstr ""
-#: ../src/ui/dialog/symbols.cpp:239
+#: ../src/ui/dialog/symbols.cpp:235
msgid "Display more icons in row."
msgstr ""
-#: ../src/ui/dialog/symbols.cpp:248
+#: ../src/ui/dialog/symbols.cpp:244
msgid "Display fewer icons in row."
msgstr ""
-#: ../src/ui/dialog/symbols.cpp:258
+#: ../src/ui/dialog/symbols.cpp:254
msgid "Toggle 'fit' symbols in icon space."
msgstr ""
-#: ../src/ui/dialog/symbols.cpp:270
+#: ../src/ui/dialog/symbols.cpp:266
msgid "Make symbols smaller by zooming out."
msgstr ""
-#: ../src/ui/dialog/symbols.cpp:280
+#: ../src/ui/dialog/symbols.cpp:276
msgid "Make symbols bigger by zooming in."
msgstr ""
-#: ../src/ui/dialog/symbols.cpp:641
+#: ../src/ui/dialog/symbols.cpp:637
msgid "Unnamed Symbols"
msgstr ""
-#: ../src/ui/dialog/tags.cpp:274 ../src/ui/dialog/tags.cpp:572
-#: ../src/ui/dialog/tags.cpp:686
+#: ../src/ui/dialog/tags.cpp:274 ../src/ui/dialog/tags.cpp:573
+#: ../src/ui/dialog/tags.cpp:687
msgid "Remove from selection set"
msgstr ""
-#: ../src/ui/dialog/tags.cpp:430
+#: ../src/ui/dialog/tags.cpp:431
msgid "Items"
msgstr ""
-#: ../src/ui/dialog/tags.cpp:669
+#: ../src/ui/dialog/tags.cpp:670
msgid "Add selection to set"
msgstr ""
-#: ../src/ui/dialog/tags.cpp:827
+#: ../src/ui/dialog/tags.cpp:828
msgid "Moved sets"
msgstr ""
-#: ../src/ui/dialog/tags.cpp:997
+#: ../src/ui/dialog/tags.cpp:998
msgid "Add a new selection set"
msgstr ""
-#: ../src/ui/dialog/tags.cpp:1006
+#: ../src/ui/dialog/tags.cpp:1007
msgid "Remove Item/Set"
msgstr ""
@@ -20656,51 +20631,55 @@ msgid "By: "
msgstr ""
#: ../src/ui/dialog/text-edit.cpp:72
+msgid "_Variants"
+msgstr ""
+
+#: ../src/ui/dialog/text-edit.cpp:73
msgid "Set as _default"
msgstr ""
-#: ../src/ui/dialog/text-edit.cpp:86
+#: ../src/ui/dialog/text-edit.cpp:87
msgid "AaBbCcIiPpQq12369$€±?.;/()"
msgstr ""
#. Align buttons
-#: ../src/ui/dialog/text-edit.cpp:96 ../src/widgets/text-toolbar.cpp:1333
-#: ../src/widgets/text-toolbar.cpp:1334
+#: ../src/ui/dialog/text-edit.cpp:97 ../src/widgets/text-toolbar.cpp:1339
+#: ../src/widgets/text-toolbar.cpp:1340
msgid "Align left"
msgstr ""
-#: ../src/ui/dialog/text-edit.cpp:97 ../src/widgets/text-toolbar.cpp:1341
-#: ../src/widgets/text-toolbar.cpp:1342
+#: ../src/ui/dialog/text-edit.cpp:98 ../src/widgets/text-toolbar.cpp:1347
+#: ../src/widgets/text-toolbar.cpp:1348
msgid "Align center"
msgstr ""
-#: ../src/ui/dialog/text-edit.cpp:98 ../src/widgets/text-toolbar.cpp:1349
-#: ../src/widgets/text-toolbar.cpp:1350
+#: ../src/ui/dialog/text-edit.cpp:99 ../src/widgets/text-toolbar.cpp:1355
+#: ../src/widgets/text-toolbar.cpp:1356
msgid "Align right"
msgstr ""
-#: ../src/ui/dialog/text-edit.cpp:99 ../src/widgets/text-toolbar.cpp:1358
+#: ../src/ui/dialog/text-edit.cpp:100 ../src/widgets/text-toolbar.cpp:1364
msgid "Justify (only flowed text)"
msgstr ""
#. Direction buttons
-#: ../src/ui/dialog/text-edit.cpp:108 ../src/widgets/text-toolbar.cpp:1393
+#: ../src/ui/dialog/text-edit.cpp:109 ../src/widgets/text-toolbar.cpp:1399
msgid "Horizontal text"
msgstr ""
-#: ../src/ui/dialog/text-edit.cpp:109 ../src/widgets/text-toolbar.cpp:1400
+#: ../src/ui/dialog/text-edit.cpp:110 ../src/widgets/text-toolbar.cpp:1406
msgid "Vertical text"
msgstr ""
-#: ../src/ui/dialog/text-edit.cpp:129 ../src/ui/dialog/text-edit.cpp:130
+#: ../src/ui/dialog/text-edit.cpp:130 ../src/ui/dialog/text-edit.cpp:131
msgid "Spacing between lines (percent of font size)"
msgstr ""
-#: ../src/ui/dialog/text-edit.cpp:146
+#: ../src/ui/dialog/text-edit.cpp:147
msgid "Text path offset"
msgstr ""
-#: ../src/ui/dialog/text-edit.cpp:586 ../src/ui/dialog/text-edit.cpp:660
+#: ../src/ui/dialog/text-edit.cpp:594 ../src/ui/dialog/text-edit.cpp:668
#: ../src/ui/tools/text-tool.cpp:1446
msgid "Set text style"
msgstr ""
@@ -20961,154 +20940,154 @@ msgstr ""
msgid "Preview"
msgstr ""
-#: ../src/ui/dialog/transformation.cpp:74
-#: ../src/ui/dialog/transformation.cpp:84
+#: ../src/ui/dialog/transformation.cpp:70
+#: ../src/ui/dialog/transformation.cpp:80
msgid "_Horizontal:"
msgstr ""
-#: ../src/ui/dialog/transformation.cpp:74
+#: ../src/ui/dialog/transformation.cpp:70
msgid "Horizontal displacement (relative) or position (absolute)"
msgstr ""
-#: ../src/ui/dialog/transformation.cpp:76
-#: ../src/ui/dialog/transformation.cpp:86
+#: ../src/ui/dialog/transformation.cpp:72
+#: ../src/ui/dialog/transformation.cpp:82
msgid "_Vertical:"
msgstr ""
-#: ../src/ui/dialog/transformation.cpp:76
+#: ../src/ui/dialog/transformation.cpp:72
msgid "Vertical displacement (relative) or position (absolute)"
msgstr ""
-#: ../src/ui/dialog/transformation.cpp:78
+#: ../src/ui/dialog/transformation.cpp:74
msgid "Horizontal size (absolute or percentage of current)"
msgstr ""
-#: ../src/ui/dialog/transformation.cpp:80
+#: ../src/ui/dialog/transformation.cpp:76
msgid "Vertical size (absolute or percentage of current)"
msgstr ""
-#: ../src/ui/dialog/transformation.cpp:82
+#: ../src/ui/dialog/transformation.cpp:78
msgid "A_ngle:"
msgstr ""
-#: ../src/ui/dialog/transformation.cpp:82
+#: ../src/ui/dialog/transformation.cpp:78
#: ../src/ui/dialog/transformation.cpp:1103
msgid "Rotation angle (positive = counterclockwise)"
msgstr ""
-#: ../src/ui/dialog/transformation.cpp:84
+#: ../src/ui/dialog/transformation.cpp:80
msgid ""
"Horizontal skew angle (positive = counterclockwise), or absolute "
"displacement, or percentage displacement"
msgstr ""
-#: ../src/ui/dialog/transformation.cpp:86
+#: ../src/ui/dialog/transformation.cpp:82
msgid ""
"Vertical skew angle (positive = counterclockwise), or absolute displacement, "
"or percentage displacement"
msgstr ""
-#: ../src/ui/dialog/transformation.cpp:89
+#: ../src/ui/dialog/transformation.cpp:85
msgid "Transformation matrix element A"
msgstr ""
-#: ../src/ui/dialog/transformation.cpp:90
+#: ../src/ui/dialog/transformation.cpp:86
msgid "Transformation matrix element B"
msgstr ""
-#: ../src/ui/dialog/transformation.cpp:91
+#: ../src/ui/dialog/transformation.cpp:87
msgid "Transformation matrix element C"
msgstr ""
-#: ../src/ui/dialog/transformation.cpp:92
+#: ../src/ui/dialog/transformation.cpp:88
msgid "Transformation matrix element D"
msgstr ""
-#: ../src/ui/dialog/transformation.cpp:93
+#: ../src/ui/dialog/transformation.cpp:89
msgid "Transformation matrix element E"
msgstr ""
-#: ../src/ui/dialog/transformation.cpp:94
+#: ../src/ui/dialog/transformation.cpp:90
msgid "Transformation matrix element F"
msgstr ""
-#: ../src/ui/dialog/transformation.cpp:99
+#: ../src/ui/dialog/transformation.cpp:95
msgid "Rela_tive move"
msgstr ""
-#: ../src/ui/dialog/transformation.cpp:99
+#: ../src/ui/dialog/transformation.cpp:95
msgid ""
"Add the specified relative displacement to the current position; otherwise, "
"edit the current absolute position directly"
msgstr ""
-#: ../src/ui/dialog/transformation.cpp:100
+#: ../src/ui/dialog/transformation.cpp:96
msgid "_Scale proportionally"
msgstr ""
-#: ../src/ui/dialog/transformation.cpp:100
+#: ../src/ui/dialog/transformation.cpp:96
msgid "Preserve the width/height ratio of the scaled objects"
msgstr ""
-#: ../src/ui/dialog/transformation.cpp:101
+#: ../src/ui/dialog/transformation.cpp:97
msgid "Apply to each _object separately"
msgstr ""
-#: ../src/ui/dialog/transformation.cpp:101
+#: ../src/ui/dialog/transformation.cpp:97
msgid ""
"Apply the scale/rotate/skew to each selected object separately; otherwise, "
"transform the selection as a whole"
msgstr ""
-#: ../src/ui/dialog/transformation.cpp:102
+#: ../src/ui/dialog/transformation.cpp:98
msgid "Edit c_urrent matrix"
msgstr ""
-#: ../src/ui/dialog/transformation.cpp:102
+#: ../src/ui/dialog/transformation.cpp:98
msgid ""
"Edit the current transform= matrix; otherwise, post-multiply transform= by "
"this matrix"
msgstr ""
-#: ../src/ui/dialog/transformation.cpp:115
+#: ../src/ui/dialog/transformation.cpp:111
msgid "_Scale"
msgstr ""
-#: ../src/ui/dialog/transformation.cpp:118
+#: ../src/ui/dialog/transformation.cpp:114
msgid "_Rotate"
msgstr ""
-#: ../src/ui/dialog/transformation.cpp:121
+#: ../src/ui/dialog/transformation.cpp:117
msgid "Ske_w"
msgstr ""
-#: ../src/ui/dialog/transformation.cpp:124
+#: ../src/ui/dialog/transformation.cpp:120
msgid "Matri_x"
msgstr ""
-#: ../src/ui/dialog/transformation.cpp:148
+#: ../src/ui/dialog/transformation.cpp:144
msgid "Reset the values on the current tab to defaults"
msgstr ""
-#: ../src/ui/dialog/transformation.cpp:155
+#: ../src/ui/dialog/transformation.cpp:151
msgid "Apply transformation to selection"
msgstr ""
-#: ../src/ui/dialog/transformation.cpp:331
+#: ../src/ui/dialog/transformation.cpp:327
msgid "Rotate in a counterclockwise direction"
msgstr ""
-#: ../src/ui/dialog/transformation.cpp:337
+#: ../src/ui/dialog/transformation.cpp:333
msgid "Rotate in a clockwise direction"
msgstr ""
-#: ../src/ui/dialog/transformation.cpp:907
-#: ../src/ui/dialog/transformation.cpp:918
-#: ../src/ui/dialog/transformation.cpp:932
-#: ../src/ui/dialog/transformation.cpp:951
-#: ../src/ui/dialog/transformation.cpp:962
-#: ../src/ui/dialog/transformation.cpp:972
-#: ../src/ui/dialog/transformation.cpp:996
+#: ../src/ui/dialog/transformation.cpp:906
+#: ../src/ui/dialog/transformation.cpp:917
+#: ../src/ui/dialog/transformation.cpp:931
+#: ../src/ui/dialog/transformation.cpp:950
+#: ../src/ui/dialog/transformation.cpp:961
+#: ../src/ui/dialog/transformation.cpp:971
+#: ../src/ui/dialog/transformation.cpp:995
msgid "Transform matrix is singular, <b>not used</b>."
msgstr ""
@@ -21306,7 +21285,7 @@ msgid "Enter group #%1"
msgstr ""
#. Item dialog
-#: ../src/ui/interface.cpp:1641 ../src/verbs.cpp:2932
+#: ../src/ui/interface.cpp:1641 ../src/verbs.cpp:2901
msgid "_Object Properties..."
msgstr ""
@@ -21379,7 +21358,7 @@ msgid "Release C_lip"
msgstr ""
#. Group
-#: ../src/ui/interface.cpp:1790 ../src/verbs.cpp:2565
+#: ../src/ui/interface.cpp:1790 ../src/verbs.cpp:2534
msgid "_Group"
msgstr ""
@@ -21388,165 +21367,165 @@ msgid "Create link"
msgstr ""
#. Ungroup
-#: ../src/ui/interface.cpp:1896 ../src/verbs.cpp:2567
+#: ../src/ui/interface.cpp:1896 ../src/verbs.cpp:2536
msgid "_Ungroup"
msgstr ""
#. Link dialog
-#: ../src/ui/interface.cpp:1921
+#: ../src/ui/interface.cpp:1920
msgid "Link _Properties..."
msgstr ""
#. Select item
-#: ../src/ui/interface.cpp:1927
+#: ../src/ui/interface.cpp:1926
msgid "_Follow Link"
msgstr ""
#. Reset transformations
-#: ../src/ui/interface.cpp:1933
+#: ../src/ui/interface.cpp:1932
msgid "_Remove Link"
msgstr ""
-#: ../src/ui/interface.cpp:1964
+#: ../src/ui/interface.cpp:1963
msgid "Remove link"
msgstr ""
#. Image properties
-#: ../src/ui/interface.cpp:1975
+#: ../src/ui/interface.cpp:1973
msgid "Image _Properties..."
msgstr ""
#. Edit externally
-#: ../src/ui/interface.cpp:1981
+#: ../src/ui/interface.cpp:1979
msgid "Edit Externally..."
msgstr ""
#. Trace Bitmap
#. TRANSLATORS: "to trace" means "to convert a bitmap to vector graphics" (to vectorize)
-#: ../src/ui/interface.cpp:1990 ../src/verbs.cpp:2628
+#: ../src/ui/interface.cpp:1988 ../src/verbs.cpp:2597
msgid "_Trace Bitmap..."
msgstr ""
#. Trace Pixel Art
-#: ../src/ui/interface.cpp:1999
+#: ../src/ui/interface.cpp:1997
msgid "Trace Pixel Art"
msgstr ""
-#: ../src/ui/interface.cpp:2009
+#: ../src/ui/interface.cpp:2007
msgctxt "Context menu"
msgid "Embed Image"
msgstr ""
-#: ../src/ui/interface.cpp:2020
+#: ../src/ui/interface.cpp:2018
msgctxt "Context menu"
msgid "Extract Image..."
msgstr ""
#. Item dialog
#. Fill and Stroke dialog
-#: ../src/ui/interface.cpp:2165 ../src/ui/interface.cpp:2185
-#: ../src/verbs.cpp:2895
+#: ../src/ui/interface.cpp:2162 ../src/ui/interface.cpp:2182
+#: ../src/verbs.cpp:2864
msgid "_Fill and Stroke..."
msgstr ""
#. Edit Text dialog
-#: ../src/ui/interface.cpp:2191 ../src/verbs.cpp:2914
+#: ../src/ui/interface.cpp:2188 ../src/verbs.cpp:2883
msgid "_Text and Font..."
msgstr ""
#. Spellcheck dialog
-#: ../src/ui/interface.cpp:2197 ../src/verbs.cpp:2922
+#: ../src/ui/interface.cpp:2194 ../src/verbs.cpp:2891
msgid "Check Spellin_g..."
msgstr ""
-#: ../src/ui/object-edit.cpp:464
+#: ../src/ui/object-edit.cpp:450
msgid ""
"Adjust the <b>horizontal rounding</b> radius; with <b>Ctrl</b> to make the "
"vertical radius the same"
msgstr ""
-#: ../src/ui/object-edit.cpp:469
+#: ../src/ui/object-edit.cpp:455
msgid ""
"Adjust the <b>vertical rounding</b> radius; with <b>Ctrl</b> to make the "
"horizontal radius the same"
msgstr ""
-#: ../src/ui/object-edit.cpp:474 ../src/ui/object-edit.cpp:479
+#: ../src/ui/object-edit.cpp:460 ../src/ui/object-edit.cpp:465
msgid ""
"Adjust the <b>width and height</b> of the rectangle; with <b>Ctrl</b> to "
"lock ratio or stretch in one dimension only"
msgstr ""
-#: ../src/ui/object-edit.cpp:726 ../src/ui/object-edit.cpp:730
-#: ../src/ui/object-edit.cpp:734 ../src/ui/object-edit.cpp:738
+#: ../src/ui/object-edit.cpp:712 ../src/ui/object-edit.cpp:716
+#: ../src/ui/object-edit.cpp:720 ../src/ui/object-edit.cpp:724
msgid ""
"Resize box in X/Y direction; with <b>Shift</b> along the Z axis; with "
"<b>Ctrl</b> to constrain to the directions of edges or diagonals"
msgstr ""
-#: ../src/ui/object-edit.cpp:742 ../src/ui/object-edit.cpp:746
-#: ../src/ui/object-edit.cpp:750 ../src/ui/object-edit.cpp:754
+#: ../src/ui/object-edit.cpp:728 ../src/ui/object-edit.cpp:732
+#: ../src/ui/object-edit.cpp:736 ../src/ui/object-edit.cpp:740
msgid ""
"Resize box along the Z axis; with <b>Shift</b> in X/Y direction; with "
"<b>Ctrl</b> to constrain to the directions of edges or diagonals"
msgstr ""
-#: ../src/ui/object-edit.cpp:758
+#: ../src/ui/object-edit.cpp:744
msgid "Move the box in perspective"
msgstr ""
-#: ../src/ui/object-edit.cpp:997
+#: ../src/ui/object-edit.cpp:983
msgid "Adjust ellipse <b>width</b>, with <b>Ctrl</b> to make circle"
msgstr ""
-#: ../src/ui/object-edit.cpp:1001
+#: ../src/ui/object-edit.cpp:987
msgid "Adjust ellipse <b>height</b>, with <b>Ctrl</b> to make circle"
msgstr ""
-#: ../src/ui/object-edit.cpp:1005
+#: ../src/ui/object-edit.cpp:991
msgid ""
"Position the <b>start point</b> of the arc or segment; with <b>Ctrl</b> to "
"snap angle; drag <b>inside</b> the ellipse for arc, <b>outside</b> for "
"segment"
msgstr ""
-#: ../src/ui/object-edit.cpp:1010
+#: ../src/ui/object-edit.cpp:996
msgid ""
"Position the <b>end point</b> of the arc or segment; with <b>Ctrl</b> to "
"snap angle; drag <b>inside</b> the ellipse for arc, <b>outside</b> for "
"segment"
msgstr ""
-#: ../src/ui/object-edit.cpp:1156
+#: ../src/ui/object-edit.cpp:1142
msgid ""
"Adjust the <b>tip radius</b> of the star or polygon; with <b>Shift</b> to "
"round; with <b>Alt</b> to randomize"
msgstr ""
-#: ../src/ui/object-edit.cpp:1164
+#: ../src/ui/object-edit.cpp:1150
msgid ""
"Adjust the <b>base radius</b> of the star; with <b>Ctrl</b> to keep star "
"rays radial (no skew); with <b>Shift</b> to round; with <b>Alt</b> to "
"randomize"
msgstr ""
-#: ../src/ui/object-edit.cpp:1359
+#: ../src/ui/object-edit.cpp:1345
msgid ""
"Roll/unroll the spiral from <b>inside</b>; with <b>Ctrl</b> to snap angle; "
"with <b>Alt</b> to converge/diverge"
msgstr ""
-#: ../src/ui/object-edit.cpp:1363
+#: ../src/ui/object-edit.cpp:1349
msgid ""
"Roll/unroll the spiral from <b>outside</b>; with <b>Ctrl</b> to snap angle; "
"with <b>Shift</b> to scale/rotate; with <b>Alt</b> to lock radius"
msgstr ""
-#: ../src/ui/object-edit.cpp:1410
+#: ../src/ui/object-edit.cpp:1396
msgid "Adjust the <b>offset distance</b>"
msgstr ""
-#: ../src/ui/object-edit.cpp:1447
+#: ../src/ui/object-edit.cpp:1433
msgid "Drag to resize the <b>flowed text frame</b>"
msgstr ""
@@ -21586,7 +21565,7 @@ msgstr ""
msgid "Retract handles"
msgstr ""
-#: ../src/ui/tool/multi-path-manipulator.cpp:315 ../src/ui/tool/node.cpp:296
+#: ../src/ui/tool/multi-path-manipulator.cpp:315 ../src/ui/tool/node.cpp:295
msgid "Change node type"
msgstr ""
@@ -21669,38 +21648,38 @@ msgstr ""
msgid "Flip nodes vertically"
msgstr ""
-#: ../src/ui/tool/node.cpp:271
+#: ../src/ui/tool/node.cpp:270
msgid "Cusp node handle"
msgstr ""
-#: ../src/ui/tool/node.cpp:272
+#: ../src/ui/tool/node.cpp:271
msgid "Smooth node handle"
msgstr ""
-#: ../src/ui/tool/node.cpp:273
+#: ../src/ui/tool/node.cpp:272
msgid "Symmetric node handle"
msgstr ""
-#: ../src/ui/tool/node.cpp:274
+#: ../src/ui/tool/node.cpp:273
msgid "Auto-smooth node handle"
msgstr ""
-#: ../src/ui/tool/node.cpp:493
+#: ../src/ui/tool/node.cpp:492
msgctxt "Path handle tip"
msgid "more: Shift, Ctrl, Alt"
msgstr ""
-#: ../src/ui/tool/node.cpp:495
+#: ../src/ui/tool/node.cpp:494
msgctxt "Path handle tip"
msgid "more: Ctrl"
msgstr ""
-#: ../src/ui/tool/node.cpp:497
+#: ../src/ui/tool/node.cpp:496
msgctxt "Path handle tip"
msgid "more: Ctrl, Alt"
msgstr ""
-#: ../src/ui/tool/node.cpp:503
+#: ../src/ui/tool/node.cpp:502
#, c-format
msgctxt "Path handle tip"
msgid ""
@@ -21708,24 +21687,24 @@ msgid ""
"increments while rotating both handles"
msgstr ""
-#: ../src/ui/tool/node.cpp:508
+#: ../src/ui/tool/node.cpp:507
#, c-format
msgctxt "Path handle tip"
msgid ""
"<b>Ctrl+Alt</b>: preserve length and snap rotation angle to %g° increments"
msgstr ""
-#: ../src/ui/tool/node.cpp:514
+#: ../src/ui/tool/node.cpp:513
msgctxt "Path handle tip"
msgid "<b>Shift+Alt</b>: preserve handle length and rotate both handles"
msgstr ""
-#: ../src/ui/tool/node.cpp:517
+#: ../src/ui/tool/node.cpp:516
msgctxt "Path handle tip"
msgid "<b>Alt</b>: preserve handle length while dragging"
msgstr ""
-#: ../src/ui/tool/node.cpp:524
+#: ../src/ui/tool/node.cpp:523
#, c-format
msgctxt "Path handle tip"
msgid ""
@@ -21733,85 +21712,87 @@ msgid ""
"handles"
msgstr ""
-#: ../src/ui/tool/node.cpp:528
+#: ../src/ui/tool/node.cpp:527
msgctxt "Path handle tip"
msgid "<b>Ctrl</b>: Move handle by his actual steps in BSpline Live Effect"
msgstr ""
-#: ../src/ui/tool/node.cpp:531
+#: ../src/ui/tool/node.cpp:530
#, c-format
msgctxt "Path handle tip"
msgid "<b>Ctrl</b>: snap rotation angle to %g° increments, click to retract"
msgstr ""
-#: ../src/ui/tool/node.cpp:536
+#: ../src/ui/tool/node.cpp:535
msgctxt "Path hande tip"
msgid "<b>Shift</b>: rotate both handles by the same angle"
msgstr ""
-#: ../src/ui/tool/node.cpp:539
+#: ../src/ui/tool/node.cpp:538
msgctxt "Path hande tip"
msgid "<b>Shift</b>: move handle"
msgstr ""
-#: ../src/ui/tool/node.cpp:546 ../src/ui/tool/node.cpp:550
+#: ../src/ui/tool/node.cpp:545 ../src/ui/tool/node.cpp:549
#, c-format
msgctxt "Path handle tip"
msgid "<b>Auto node handle</b>: drag to convert to smooth node (%s)"
msgstr ""
-#: ../src/ui/tool/node.cpp:553
+#: ../src/ui/tool/node.cpp:552
#, c-format
msgctxt "Path handle tip"
-msgid "<b>BSpline node handle</b>: Shift to drag, double click to reset (%s)"
+msgid ""
+"<b>BSpline node handle</b>: Shift to drag, double click to reset (%s). %g "
+"power"
msgstr ""
-#: ../src/ui/tool/node.cpp:573
+#: ../src/ui/tool/node.cpp:572
#, c-format
msgctxt "Path handle tip"
msgid "Move handle by %s, %s; angle %.2f°, length %s"
msgstr ""
-#: ../src/ui/tool/node.cpp:1447
+#: ../src/ui/tool/node.cpp:1448
msgctxt "Path node tip"
msgid "<b>Shift</b>: drag out a handle, click to toggle selection"
msgstr ""
-#: ../src/ui/tool/node.cpp:1449
+#: ../src/ui/tool/node.cpp:1450
msgctxt "Path node tip"
msgid "<b>Shift</b>: click to toggle selection"
msgstr ""
-#: ../src/ui/tool/node.cpp:1454
+#: ../src/ui/tool/node.cpp:1455
msgctxt "Path node tip"
msgid "<b>Ctrl+Alt</b>: move along handle lines, click to delete node"
msgstr ""
-#: ../src/ui/tool/node.cpp:1457
+#: ../src/ui/tool/node.cpp:1458
msgctxt "Path node tip"
msgid "<b>Ctrl</b>: move along axes, click to change node type"
msgstr ""
-#: ../src/ui/tool/node.cpp:1461
+#: ../src/ui/tool/node.cpp:1462
msgctxt "Path node tip"
msgid "<b>Alt</b>: sculpt nodes"
msgstr ""
-#: ../src/ui/tool/node.cpp:1469
+#: ../src/ui/tool/node.cpp:1470
#, c-format
msgctxt "Path node tip"
msgid "<b>%s</b>: drag to shape the path (more: Shift, Ctrl, Alt)"
msgstr ""
-#: ../src/ui/tool/node.cpp:1472
+#: ../src/ui/tool/node.cpp:1473
#, c-format
msgctxt "Path node tip"
msgid ""
-"<b>BSpline node</b>: %g weight, drag to shape the path (more: Shift, Ctrl, "
-"Alt)"
+"<b>BSpline node</b>: drag to shape the path (more: Shift, Ctrl, Alt). %g "
+"power"
msgstr ""
-#: ../src/ui/tool/node.cpp:1475
+#: ../src/ui/tool/node.cpp:1476
#, c-format
msgctxt "Path node tip"
msgid ""
@@ -21819,7 +21800,7 @@ msgid ""
"(more: Shift, Ctrl, Alt)"
msgstr ""
-#: ../src/ui/tool/node.cpp:1479
+#: ../src/ui/tool/node.cpp:1480
#, c-format
msgctxt "Path node tip"
msgid ""
@@ -21827,50 +21808,51 @@ msgid ""
"Shift, Ctrl, Alt)"
msgstr ""
-#: ../src/ui/tool/node.cpp:1482
+#: ../src/ui/tool/node.cpp:1483
+#, c-format
msgctxt "Path node tip"
msgid ""
"<b>BSpline node</b>: drag to shape the path, click to select only this node "
-"(more: Shift, Ctrl, Alt)"
+"(more: Shift, Ctrl, Alt). %g power"
msgstr ""
-#: ../src/ui/tool/node.cpp:1495
+#: ../src/ui/tool/node.cpp:1496
#, c-format
msgctxt "Path node tip"
msgid "Move node by %s, %s"
msgstr ""
-#: ../src/ui/tool/node.cpp:1506
+#: ../src/ui/tool/node.cpp:1507
msgid "Symmetric node"
msgstr ""
-#: ../src/ui/tool/node.cpp:1507
+#: ../src/ui/tool/node.cpp:1508
msgid "Auto-smooth node"
msgstr ""
-#: ../src/ui/tool/path-manipulator.cpp:836
+#: ../src/ui/tool/path-manipulator.cpp:837
msgid "Scale handle"
msgstr ""
-#: ../src/ui/tool/path-manipulator.cpp:860
+#: ../src/ui/tool/path-manipulator.cpp:861
msgid "Rotate handle"
msgstr ""
#. We need to call MPM's method because it could have been our last node
-#: ../src/ui/tool/path-manipulator.cpp:1524
+#: ../src/ui/tool/path-manipulator.cpp:1534
#: ../src/widgets/node-toolbar.cpp:397
msgid "Delete node"
msgstr ""
-#: ../src/ui/tool/path-manipulator.cpp:1532
+#: ../src/ui/tool/path-manipulator.cpp:1542
msgid "Cycle node type"
msgstr ""
-#: ../src/ui/tool/path-manipulator.cpp:1547
+#: ../src/ui/tool/path-manipulator.cpp:1557
msgid "Drag handle"
msgstr ""
-#: ../src/ui/tool/path-manipulator.cpp:1556
+#: ../src/ui/tool/path-manipulator.cpp:1566
msgid "Retract handle"
msgstr ""
@@ -22055,7 +22037,7 @@ msgid ""
"path. <b>Arrow keys</b> adjust width (left/right) and angle (up/down)."
msgstr ""
-#: ../src/ui/tools-switch.cpp:107 ../src/ui/tools/text-tool.cpp:1584
+#: ../src/ui/tools-switch.cpp:107 ../src/ui/tools/text-tool.cpp:1583
msgid ""
"<b>Click</b> to select or create text, <b>drag</b> to create flowed text; "
"then type."
@@ -22114,7 +22096,7 @@ msgid ""
"<b>Ctrl</b>: make circle or integer-ratio ellipse, snap arc/segment angle"
msgstr ""
-#: ../src/ui/tools/arc-tool.cpp:243 ../src/ui/tools/rect-tool.cpp:279
+#: ../src/ui/tools/arc-tool.cpp:243 ../src/ui/tools/rect-tool.cpp:278
msgid "<b>Shift</b>: draw around the starting point"
msgstr ""
@@ -22200,17 +22182,17 @@ msgstr ""
msgid "<b>Connector endpoint</b>: drag to reroute or connect to new shapes"
msgstr ""
-#: ../src/ui/tools/connector-tool.cpp:1326
+#: ../src/ui/tools/connector-tool.cpp:1324
msgid "Select <b>at least one non-connector object</b>."
msgstr ""
-#: ../src/ui/tools/connector-tool.cpp:1331
-#: ../src/widgets/connector-toolbar.cpp:314
+#: ../src/ui/tools/connector-tool.cpp:1329
+#: ../src/widgets/connector-toolbar.cpp:310
msgid "Make connectors avoid selected objects"
msgstr ""
-#: ../src/ui/tools/connector-tool.cpp:1332
-#: ../src/widgets/connector-toolbar.cpp:324
+#: ../src/ui/tools/connector-tool.cpp:1330
+#: ../src/widgets/connector-toolbar.cpp:320
msgid "Make connectors ignore selected objects"
msgstr ""
@@ -22244,39 +22226,39 @@ msgstr ""
msgid "<b>Drawing</b> an eraser stroke"
msgstr ""
-#: ../src/ui/tools/eraser-tool.cpp:760
+#: ../src/ui/tools/eraser-tool.cpp:753
msgid "Draw eraser stroke"
msgstr ""
-#: ../src/ui/tools/flood-tool.cpp:182
+#: ../src/ui/tools/flood-tool.cpp:90
msgid "Visible Colors"
msgstr ""
-#: ../src/ui/tools/flood-tool.cpp:200
+#: ../src/ui/tools/flood-tool.cpp:102
msgctxt "Flood autogap"
msgid "None"
msgstr ""
-#: ../src/ui/tools/flood-tool.cpp:201
+#: ../src/ui/tools/flood-tool.cpp:103
msgctxt "Flood autogap"
msgid "Small"
msgstr ""
-#: ../src/ui/tools/flood-tool.cpp:202
+#: ../src/ui/tools/flood-tool.cpp:104
msgctxt "Flood autogap"
msgid "Medium"
msgstr ""
-#: ../src/ui/tools/flood-tool.cpp:203
+#: ../src/ui/tools/flood-tool.cpp:105
msgctxt "Flood autogap"
msgid "Large"
msgstr ""
-#: ../src/ui/tools/flood-tool.cpp:425
+#: ../src/ui/tools/flood-tool.cpp:415
msgid "<b>Too much inset</b>, the result is empty."
msgstr ""
-#: ../src/ui/tools/flood-tool.cpp:466
+#: ../src/ui/tools/flood-tool.cpp:456
#, c-format
msgid ""
"Area filled, path with <b>%d</b> node created and unioned with selection."
@@ -22285,32 +22267,32 @@ msgid_plural ""
msgstr[0] ""
msgstr[1] ""
-#: ../src/ui/tools/flood-tool.cpp:472
+#: ../src/ui/tools/flood-tool.cpp:462
#, c-format
msgid "Area filled, path with <b>%d</b> node created."
msgid_plural "Area filled, path with <b>%d</b> nodes created."
msgstr[0] ""
msgstr[1] ""
-#: ../src/ui/tools/flood-tool.cpp:740 ../src/ui/tools/flood-tool.cpp:1050
+#: ../src/ui/tools/flood-tool.cpp:730 ../src/ui/tools/flood-tool.cpp:1040
msgid "<b>Area is not bounded</b>, cannot fill."
msgstr ""
-#: ../src/ui/tools/flood-tool.cpp:1055
+#: ../src/ui/tools/flood-tool.cpp:1045
msgid ""
"<b>Only the visible part of the bounded area was filled.</b> If you want to "
"fill all of the area, undo, zoom out, and fill again."
msgstr ""
-#: ../src/ui/tools/flood-tool.cpp:1073 ../src/ui/tools/flood-tool.cpp:1224
+#: ../src/ui/tools/flood-tool.cpp:1063 ../src/ui/tools/flood-tool.cpp:1214
msgid "Fill bounded area"
msgstr ""
-#: ../src/ui/tools/flood-tool.cpp:1089
+#: ../src/ui/tools/flood-tool.cpp:1079
msgid "Set style on object"
msgstr ""
-#: ../src/ui/tools/flood-tool.cpp:1149
+#: ../src/ui/tools/flood-tool.cpp:1139
msgid "<b>Draw over</b> areas to add to fill, hold <b>Alt</b> for touch fill"
msgstr ""
@@ -22391,30 +22373,30 @@ msgstr[1] ""
msgid "Simplify gradient"
msgstr ""
-#: ../src/ui/tools/gradient-tool.cpp:509
+#: ../src/ui/tools/gradient-tool.cpp:510
msgid "Create default gradient"
msgstr ""
-#: ../src/ui/tools/gradient-tool.cpp:568 ../src/ui/tools/mesh-tool.cpp:560
+#: ../src/ui/tools/gradient-tool.cpp:569 ../src/ui/tools/mesh-tool.cpp:561
msgid "<b>Draw around</b> handles to select them"
msgstr ""
-#: ../src/ui/tools/gradient-tool.cpp:691
+#: ../src/ui/tools/gradient-tool.cpp:692
msgid "<b>Ctrl</b>: snap gradient angle"
msgstr ""
-#: ../src/ui/tools/gradient-tool.cpp:692
+#: ../src/ui/tools/gradient-tool.cpp:693
msgid "<b>Shift</b>: draw gradient around the starting point"
msgstr ""
-#: ../src/ui/tools/gradient-tool.cpp:946 ../src/ui/tools/mesh-tool.cpp:983
+#: ../src/ui/tools/gradient-tool.cpp:947 ../src/ui/tools/mesh-tool.cpp:984
#, c-format
msgid "<b>Gradient</b> for %d object; with <b>Ctrl</b> to snap angle"
msgid_plural "<b>Gradient</b> for %d objects; with <b>Ctrl</b> to snap angle"
msgstr[0] ""
msgstr[1] ""
-#: ../src/ui/tools/gradient-tool.cpp:950 ../src/ui/tools/mesh-tool.cpp:987
+#: ../src/ui/tools/gradient-tool.cpp:951 ../src/ui/tools/mesh-tool.cpp:988
msgid "Select <b>objects</b> on which to create gradient."
msgstr ""
@@ -22469,70 +22451,70 @@ msgstr ""
msgid "Picked mesh corner color."
msgstr ""
-#: ../src/ui/tools/mesh-tool.cpp:488
+#: ../src/ui/tools/mesh-tool.cpp:489
msgid "Create default mesh"
msgstr ""
-#: ../src/ui/tools/mesh-tool.cpp:708
+#: ../src/ui/tools/mesh-tool.cpp:709
msgid "FIXME<b>Ctrl</b>: snap mesh angle"
msgstr ""
-#: ../src/ui/tools/mesh-tool.cpp:709
+#: ../src/ui/tools/mesh-tool.cpp:710
msgid "FIXME<b>Shift</b>: draw mesh around the starting point"
msgstr ""
-#: ../src/ui/tools/node-tool.cpp:602
+#: ../src/ui/tools/node-tool.cpp:601
msgctxt "Node tool tip"
msgid ""
"<b>Shift</b>: drag to add nodes to the selection, click to toggle object "
"selection"
msgstr ""
-#: ../src/ui/tools/node-tool.cpp:606
+#: ../src/ui/tools/node-tool.cpp:605
msgctxt "Node tool tip"
msgid "<b>Shift</b>: drag to add nodes to the selection"
msgstr ""
-#: ../src/ui/tools/node-tool.cpp:618
+#: ../src/ui/tools/node-tool.cpp:617
#, c-format
msgid "<b>%u of %u</b> node selected."
msgid_plural "<b>%u of %u</b> nodes selected."
msgstr[0] ""
msgstr[1] ""
-#: ../src/ui/tools/node-tool.cpp:624
+#: ../src/ui/tools/node-tool.cpp:623
#, c-format
msgctxt "Node tool tip"
msgid "%s Drag to select nodes, click to edit only this object (more: Shift)"
msgstr ""
-#: ../src/ui/tools/node-tool.cpp:630
+#: ../src/ui/tools/node-tool.cpp:629
#, c-format
msgctxt "Node tool tip"
msgid "%s Drag to select nodes, click clear the selection"
msgstr ""
-#: ../src/ui/tools/node-tool.cpp:639
+#: ../src/ui/tools/node-tool.cpp:638
msgctxt "Node tool tip"
msgid "Drag to select nodes, click to edit only this object"
msgstr ""
-#: ../src/ui/tools/node-tool.cpp:642
+#: ../src/ui/tools/node-tool.cpp:641
msgctxt "Node tool tip"
msgid "Drag to select nodes, click to clear the selection"
msgstr ""
-#: ../src/ui/tools/node-tool.cpp:647
+#: ../src/ui/tools/node-tool.cpp:646
msgctxt "Node tool tip"
msgid "Drag to select objects to edit, click to edit this object (more: Shift)"
msgstr ""
-#: ../src/ui/tools/node-tool.cpp:650
+#: ../src/ui/tools/node-tool.cpp:649
msgctxt "Node tool tip"
msgid "Drag to select objects to edit"
msgstr ""
-#: ../src/ui/tools/pen-tool.cpp:224 ../src/ui/tools/pencil-tool.cpp:457
+#: ../src/ui/tools/pen-tool.cpp:224 ../src/ui/tools/pencil-tool.cpp:454
msgid "Drawing cancelled"
msgstr ""
@@ -22635,55 +22617,55 @@ msgid "<b>Drag</b> to continue the path from this point."
msgstr ""
#. Write curves to object
-#: ../src/ui/tools/pencil-tool.cpp:403
+#: ../src/ui/tools/pencil-tool.cpp:401
msgid "Finishing freehand"
msgstr ""
-#: ../src/ui/tools/pencil-tool.cpp:506
+#: ../src/ui/tools/pencil-tool.cpp:503
msgid ""
"<b>Sketch mode</b>: holding <b>Alt</b> interpolates between sketched paths. "
"Release <b>Alt</b> to finalize."
msgstr ""
-#: ../src/ui/tools/pencil-tool.cpp:533
+#: ../src/ui/tools/pencil-tool.cpp:530
msgid "Finishing freehand sketch"
msgstr ""
-#: ../src/ui/tools/rect-tool.cpp:278
+#: ../src/ui/tools/rect-tool.cpp:277
msgid ""
"<b>Ctrl</b>: make square or integer-ratio rect, lock a rounded corner "
"circular"
msgstr ""
-#: ../src/ui/tools/rect-tool.cpp:439
+#: ../src/ui/tools/rect-tool.cpp:438
#, c-format
msgid ""
"<b>Rectangle</b>: %s &#215; %s (constrained to ratio %d:%d); with <b>Shift</"
"b> to draw around the starting point"
msgstr ""
-#: ../src/ui/tools/rect-tool.cpp:442
+#: ../src/ui/tools/rect-tool.cpp:441
#, c-format
msgid ""
"<b>Rectangle</b>: %s &#215; %s (constrained to golden ratio 1.618 : 1); with "
"<b>Shift</b> to draw around the starting point"
msgstr ""
-#: ../src/ui/tools/rect-tool.cpp:444
+#: ../src/ui/tools/rect-tool.cpp:443
#, c-format
msgid ""
"<b>Rectangle</b>: %s &#215; %s (constrained to golden ratio 1 : 1.618); with "
"<b>Shift</b> to draw around the starting point"
msgstr ""
-#: ../src/ui/tools/rect-tool.cpp:448
+#: ../src/ui/tools/rect-tool.cpp:447
#, c-format
msgid ""
"<b>Rectangle</b>: %s &#215; %s; with <b>Ctrl</b> to make square or integer-"
"ratio rectangle; with <b>Shift</b> to draw around the starting point"
msgstr ""
-#: ../src/ui/tools/rect-tool.cpp:471
+#: ../src/ui/tools/rect-tool.cpp:470
msgid "Create rectangle"
msgstr ""
@@ -22717,21 +22699,21 @@ msgid ""
"touch selection"
msgstr ""
-#: ../src/ui/tools/select-tool.cpp:941
+#: ../src/ui/tools/select-tool.cpp:939
msgid "<b>Ctrl</b>: click to select in groups; drag to move hor/vert"
msgstr ""
-#: ../src/ui/tools/select-tool.cpp:942
+#: ../src/ui/tools/select-tool.cpp:940
msgid "<b>Shift</b>: click to toggle select; drag for rubberband selection"
msgstr ""
-#: ../src/ui/tools/select-tool.cpp:943
+#: ../src/ui/tools/select-tool.cpp:941
msgid ""
"<b>Alt</b>: click to select under; scroll mouse-wheel to cycle-select; drag "
"to move selected or select by touch"
msgstr ""
-#: ../src/ui/tools/select-tool.cpp:1151
+#: ../src/ui/tools/select-tool.cpp:1149
msgid "Selected object is not a group. Cannot enter."
msgstr ""
@@ -22785,19 +22767,19 @@ msgid ""
"initial selection."
msgstr ""
-#: ../src/ui/tools/spray-tool.cpp:654
+#: ../src/ui/tools/spray-tool.cpp:648
msgid "<b>Nothing selected!</b> Select objects to spray."
msgstr ""
-#: ../src/ui/tools/spray-tool.cpp:729 ../src/widgets/spray-toolbar.cpp:166
+#: ../src/ui/tools/spray-tool.cpp:723 ../src/widgets/spray-toolbar.cpp:166
msgid "Spray with copies"
msgstr ""
-#: ../src/ui/tools/spray-tool.cpp:733 ../src/widgets/spray-toolbar.cpp:173
+#: ../src/ui/tools/spray-tool.cpp:727 ../src/widgets/spray-toolbar.cpp:173
msgid "Spray with clones"
msgstr ""
-#: ../src/ui/tools/spray-tool.cpp:737
+#: ../src/ui/tools/spray-tool.cpp:731
msgid "Spray in single path"
msgstr ""
@@ -22941,7 +22923,7 @@ msgstr ""
msgid "Paste text"
msgstr ""
-#: ../src/ui/tools/text-tool.cpp:1574
+#: ../src/ui/tools/text-tool.cpp:1573
#, c-format
msgid ""
"Type or edit flowed text (%d character%s); <b>Enter</b> to start new "
@@ -22952,7 +22934,7 @@ msgid_plural ""
msgstr[0] ""
msgstr[1] ""
-#: ../src/ui/tools/text-tool.cpp:1576
+#: ../src/ui/tools/text-tool.cpp:1575
#, c-format
msgid "Type or edit text (%d character%s); <b>Enter</b> to start new line."
msgid_plural ""
@@ -22960,11 +22942,11 @@ msgid_plural ""
msgstr[0] ""
msgstr[1] ""
-#: ../src/ui/tools/text-tool.cpp:1686
+#: ../src/ui/tools/text-tool.cpp:1685
msgid "Type text"
msgstr ""
-#: ../src/ui/tools/tool-base.cpp:705
+#: ../src/ui/tools/tool-base.cpp:701
msgid "<b>Space+mouse move</b> to pan canvas"
msgstr ""
@@ -23036,62 +23018,190 @@ msgid ""
"%s. Drag or click to <b>increase blur</b>; with Shift to <b>decrease</b>."
msgstr ""
-#: ../src/ui/tools/tweak-tool.cpp:1195
+#: ../src/ui/tools/tweak-tool.cpp:1192
msgid "<b>Nothing selected!</b> Select objects to tweak."
msgstr ""
-#: ../src/ui/tools/tweak-tool.cpp:1229
+#: ../src/ui/tools/tweak-tool.cpp:1226
msgid "Move tweak"
msgstr ""
-#: ../src/ui/tools/tweak-tool.cpp:1233
+#: ../src/ui/tools/tweak-tool.cpp:1230
msgid "Move in/out tweak"
msgstr ""
-#: ../src/ui/tools/tweak-tool.cpp:1237
+#: ../src/ui/tools/tweak-tool.cpp:1234
msgid "Move jitter tweak"
msgstr ""
-#: ../src/ui/tools/tweak-tool.cpp:1241
+#: ../src/ui/tools/tweak-tool.cpp:1238
msgid "Scale tweak"
msgstr ""
-#: ../src/ui/tools/tweak-tool.cpp:1245
+#: ../src/ui/tools/tweak-tool.cpp:1242
msgid "Rotate tweak"
msgstr ""
-#: ../src/ui/tools/tweak-tool.cpp:1249
+#: ../src/ui/tools/tweak-tool.cpp:1246
msgid "Duplicate/delete tweak"
msgstr ""
-#: ../src/ui/tools/tweak-tool.cpp:1253
+#: ../src/ui/tools/tweak-tool.cpp:1250
msgid "Push path tweak"
msgstr ""
-#: ../src/ui/tools/tweak-tool.cpp:1257
+#: ../src/ui/tools/tweak-tool.cpp:1254
msgid "Shrink/grow path tweak"
msgstr ""
-#: ../src/ui/tools/tweak-tool.cpp:1261
+#: ../src/ui/tools/tweak-tool.cpp:1258
msgid "Attract/repel path tweak"
msgstr ""
-#: ../src/ui/tools/tweak-tool.cpp:1265
+#: ../src/ui/tools/tweak-tool.cpp:1262
msgid "Roughen path tweak"
msgstr ""
-#: ../src/ui/tools/tweak-tool.cpp:1269
+#: ../src/ui/tools/tweak-tool.cpp:1266
msgid "Color paint tweak"
msgstr ""
-#: ../src/ui/tools/tweak-tool.cpp:1273
+#: ../src/ui/tools/tweak-tool.cpp:1270
msgid "Color jitter tweak"
msgstr ""
-#: ../src/ui/tools/tweak-tool.cpp:1277
+#: ../src/ui/tools/tweak-tool.cpp:1274
msgid "Blur tweak"
msgstr ""
+#: ../src/ui/widget/color-icc-selector.cpp:176
+#: ../src/ui/widget/color-scales.cpp:378
+msgid "_R:"
+msgstr ""
+
+#. TYPE_RGB_16
+#: ../src/ui/widget/color-icc-selector.cpp:177
+#: ../src/ui/widget/color-scales.cpp:381
+msgid "_G:"
+msgstr ""
+
+#: ../src/ui/widget/color-icc-selector.cpp:178
+#: ../src/ui/widget/color-scales.cpp:384
+msgid "_B:"
+msgstr ""
+
+#: ../src/ui/widget/color-icc-selector.cpp:180
+msgid "Gray"
+msgstr ""
+
+#. TYPE_GRAY_16
+#: ../src/ui/widget/color-icc-selector.cpp:182
+#: ../src/ui/widget/color-icc-selector.cpp:186
+#: ../src/ui/widget/color-scales.cpp:404
+msgid "_H:"
+msgstr ""
+
+#. TYPE_HSV_16
+#: ../src/ui/widget/color-icc-selector.cpp:183
+#: ../src/ui/widget/color-icc-selector.cpp:188
+#: ../src/ui/widget/color-scales.cpp:407
+msgid "_S:"
+msgstr ""
+
+#. TYPE_HLS_16
+#: ../src/ui/widget/color-icc-selector.cpp:187
+#: ../src/ui/widget/color-scales.cpp:410
+msgid "_L:"
+msgstr ""
+
+#: ../src/ui/widget/color-icc-selector.cpp:190
+#: ../src/ui/widget/color-icc-selector.cpp:195
+#: ../src/ui/widget/color-scales.cpp:432
+msgid "_C:"
+msgstr ""
+
+#. TYPE_CMYK_16
+#. TYPE_CMY_16
+#: ../src/ui/widget/color-icc-selector.cpp:191
+#: ../src/ui/widget/color-icc-selector.cpp:196
+#: ../src/ui/widget/color-scales.cpp:435
+msgid "_M:"
+msgstr ""
+
+#: ../src/ui/widget/color-icc-selector.cpp:192
+#: ../src/ui/widget/color-icc-selector.cpp:197
+#: ../src/ui/widget/color-scales.cpp:438
+msgid "_Y:"
+msgstr ""
+
+#: ../src/ui/widget/color-icc-selector.cpp:193
+#: ../src/ui/widget/color-scales.cpp:441
+msgid "_K:"
+msgstr ""
+
+#: ../src/ui/widget/color-icc-selector.cpp:310
+msgid "CMS"
+msgstr ""
+
+#: ../src/ui/widget/color-icc-selector.cpp:375
+msgid "Fix"
+msgstr ""
+
+#: ../src/ui/widget/color-icc-selector.cpp:379
+msgid "Fix RGB fallback to match icc-color() value."
+msgstr ""
+
+#. Label
+#: ../src/ui/widget/color-icc-selector.cpp:491
+#: ../src/ui/widget/color-scales.cpp:387 ../src/ui/widget/color-scales.cpp:413
+#: ../src/ui/widget/color-scales.cpp:444
+#: ../src/ui/widget/color-wheel-selector.cpp:83
+msgid "_A:"
+msgstr ""
+
+#: ../src/ui/widget/color-icc-selector.cpp:502
+#: ../src/ui/widget/color-icc-selector.cpp:513
+#: ../src/ui/widget/color-scales.cpp:388 ../src/ui/widget/color-scales.cpp:389
+#: ../src/ui/widget/color-scales.cpp:414 ../src/ui/widget/color-scales.cpp:415
+#: ../src/ui/widget/color-scales.cpp:445 ../src/ui/widget/color-scales.cpp:446
+#: ../src/ui/widget/color-wheel-selector.cpp:112
+#: ../src/ui/widget/color-wheel-selector.cpp:142
+msgid "Alpha (opacity)"
+msgstr ""
+
+#: ../src/ui/widget/color-notebook.cpp:182
+msgid "Color Managed"
+msgstr ""
+
+#: ../src/ui/widget/color-notebook.cpp:189
+msgid "Out of gamut!"
+msgstr ""
+
+#: ../src/ui/widget/color-notebook.cpp:196
+msgid "Too much ink!"
+msgstr ""
+
+#: ../src/ui/widget/color-notebook.cpp:207 ../src/verbs.cpp:2733
+msgid "Pick colors from image"
+msgstr ""
+
+#. Create RGBA entry and color preview
+#: ../src/ui/widget/color-notebook.cpp:212
+msgid "RGBA_:"
+msgstr ""
+
+#: ../src/ui/widget/color-scales.cpp:46
+msgid "RGB"
+msgstr ""
+
+#: ../src/ui/widget/color-scales.cpp:46
+msgid "HSL"
+msgstr ""
+
+#: ../src/ui/widget/color-scales.cpp:46
+msgid "CMYK"
+msgstr ""
+
#: ../src/ui/widget/filter-effect-chooser.cpp:26
msgid "_Blur:"
msgstr ""
@@ -23100,6 +23210,122 @@ msgstr ""
msgid "Blur (%)"
msgstr ""
+#: ../src/ui/widget/font-variants.cpp:38
+msgid "Ligatures"
+msgstr ""
+
+#: ../src/ui/widget/font-variants.cpp:39
+msgid "Common"
+msgstr ""
+
+#: ../src/ui/widget/font-variants.cpp:40
+msgid "Discretionary"
+msgstr ""
+
+#: ../src/ui/widget/font-variants.cpp:41
+msgid "Historical"
+msgstr ""
+
+#: ../src/ui/widget/font-variants.cpp:42
+msgid "Contextual"
+msgstr ""
+
+#: ../src/ui/widget/font-variants.cpp:46
+msgid "Subscript"
+msgstr ""
+
+#: ../src/ui/widget/font-variants.cpp:47
+msgid "Superscript"
+msgstr ""
+
+#: ../src/ui/widget/font-variants.cpp:49
+msgid "Capitals"
+msgstr ""
+
+#: ../src/ui/widget/font-variants.cpp:52
+msgid "All small"
+msgstr ""
+
+#: ../src/ui/widget/font-variants.cpp:53
+msgid "Petite"
+msgstr ""
+
+#: ../src/ui/widget/font-variants.cpp:54
+msgid "All petite"
+msgstr ""
+
+#: ../src/ui/widget/font-variants.cpp:55
+msgid "Unicase"
+msgstr ""
+
+#: ../src/ui/widget/font-variants.cpp:56
+msgid "Titling"
+msgstr ""
+
+#: ../src/ui/widget/font-variants.cpp:58
+msgid "Numeric"
+msgstr ""
+
+#: ../src/ui/widget/font-variants.cpp:59
+msgid "Lining"
+msgstr ""
+
+#: ../src/ui/widget/font-variants.cpp:60
+msgid "Old Style"
+msgstr ""
+
+#: ../src/ui/widget/font-variants.cpp:61
+msgid "Default Style"
+msgstr ""
+
+#: ../src/ui/widget/font-variants.cpp:62
+msgid "Proportional"
+msgstr ""
+
+#: ../src/ui/widget/font-variants.cpp:63
+msgid "Tabular"
+msgstr ""
+
+#: ../src/ui/widget/font-variants.cpp:64
+msgid "Default Width"
+msgstr ""
+
+#: ../src/ui/widget/font-variants.cpp:65
+msgid "Diagonal"
+msgstr ""
+
+#: ../src/ui/widget/font-variants.cpp:66
+msgid "Stacked"
+msgstr ""
+
+#: ../src/ui/widget/font-variants.cpp:67
+msgid "Default Fractions"
+msgstr ""
+
+#: ../src/ui/widget/font-variants.cpp:68
+msgid "Ordinal"
+msgstr ""
+
+#: ../src/ui/widget/font-variants.cpp:69
+msgid "Slashed Zero"
+msgstr ""
+
+#: ../src/ui/widget/font-variants.cpp:80
+msgid "Common ligatures. On by default. OpenType tables: 'liga', 'clig'"
+msgstr ""
+
+#: ../src/ui/widget/font-variants.cpp:82
+msgid "Discretionary ligatures. Off by default. OpenType table: 'dlig'"
+msgstr ""
+
+#: ../src/ui/widget/font-variants.cpp:84
+msgid "Historical ligatures. Off by default. OpenType table: 'hlig'"
+msgstr ""
+
+#: ../src/ui/widget/font-variants.cpp:86
+msgid "Contextual forms. On by default. OpenType table: 'calt'"
+msgstr ""
+
#: ../src/ui/widget/layer-selector.cpp:118
msgid "Toggle current layer visibility"
msgstr ""
@@ -23134,190 +23360,229 @@ msgstr ""
msgid "Opacity (%)"
msgstr ""
-#: ../src/ui/widget/object-composite-settings.cpp:159
+#: ../src/ui/widget/object-composite-settings.cpp:160
msgid "Change blur"
msgstr ""
-#: ../src/ui/widget/object-composite-settings.cpp:199
+#: ../src/ui/widget/object-composite-settings.cpp:200
#: ../src/ui/widget/selected-style.cpp:943
#: ../src/ui/widget/selected-style.cpp:1245
msgid "Change opacity"
msgstr ""
-#: ../src/ui/widget/page-sizer.cpp:235
+#: ../src/ui/widget/page-sizer.cpp:236
msgid "U_nits:"
msgstr ""
-#: ../src/ui/widget/page-sizer.cpp:236
+#: ../src/ui/widget/page-sizer.cpp:237
msgid "Width of paper"
msgstr ""
-#: ../src/ui/widget/page-sizer.cpp:237
+#: ../src/ui/widget/page-sizer.cpp:238
msgid "Height of paper"
msgstr ""
-#: ../src/ui/widget/page-sizer.cpp:238
+#: ../src/ui/widget/page-sizer.cpp:239
msgid "T_op margin:"
msgstr ""
-#: ../src/ui/widget/page-sizer.cpp:238
+#: ../src/ui/widget/page-sizer.cpp:239
msgid "Top margin"
msgstr ""
-#: ../src/ui/widget/page-sizer.cpp:239
+#: ../src/ui/widget/page-sizer.cpp:240
msgid "L_eft:"
msgstr ""
-#: ../src/ui/widget/page-sizer.cpp:239
+#: ../src/ui/widget/page-sizer.cpp:240
msgid "Left margin"
msgstr ""
-#: ../src/ui/widget/page-sizer.cpp:240
+#: ../src/ui/widget/page-sizer.cpp:241
msgid "Ri_ght:"
msgstr ""
-#: ../src/ui/widget/page-sizer.cpp:240
+#: ../src/ui/widget/page-sizer.cpp:241
msgid "Right margin"
msgstr ""
-#: ../src/ui/widget/page-sizer.cpp:241
+#: ../src/ui/widget/page-sizer.cpp:242
msgid "Botto_m:"
msgstr ""
-#: ../src/ui/widget/page-sizer.cpp:241
+#: ../src/ui/widget/page-sizer.cpp:242
msgid "Bottom margin"
msgstr ""
-#: ../src/ui/widget/page-sizer.cpp:296
+#: ../src/ui/widget/page-sizer.cpp:244
+msgid "Scale _x:"
+msgstr ""
+
+#: ../src/ui/widget/page-sizer.cpp:244
+msgid "Scale X"
+msgstr ""
+
+#: ../src/ui/widget/page-sizer.cpp:245
+msgid "Scale _y:"
+msgstr ""
+
+#: ../src/ui/widget/page-sizer.cpp:245
+msgid "Scale Y"
+msgstr ""
+
+#: ../src/ui/widget/page-sizer.cpp:321
msgid "Orientation:"
msgstr ""
-#: ../src/ui/widget/page-sizer.cpp:299
+#: ../src/ui/widget/page-sizer.cpp:324
msgid "_Landscape"
msgstr ""
-#: ../src/ui/widget/page-sizer.cpp:304
+#: ../src/ui/widget/page-sizer.cpp:329
msgid "_Portrait"
msgstr ""
#. ## Set up custom size frame
-#: ../src/ui/widget/page-sizer.cpp:322
+#: ../src/ui/widget/page-sizer.cpp:348
msgid "Custom size"
msgstr ""
-#: ../src/ui/widget/page-sizer.cpp:367
+#: ../src/ui/widget/page-sizer.cpp:393
msgid "Resi_ze page to content..."
msgstr ""
-#: ../src/ui/widget/page-sizer.cpp:419
+#: ../src/ui/widget/page-sizer.cpp:445
msgid "_Resize page to drawing or selection"
msgstr ""
-#: ../src/ui/widget/page-sizer.cpp:420
+#: ../src/ui/widget/page-sizer.cpp:446
msgid ""
"Resize the page to fit the current selection, or the entire drawing if there "
"is no selection"
msgstr ""
-#: ../src/ui/widget/page-sizer.cpp:489
+#: ../src/ui/widget/page-sizer.cpp:477
+msgid ""
+"While SVG allows non-uniform scaling it is recommended to use only uniform "
+"scaling in Inkscape. To set a non-uniform scaling, set the 'viewBox' "
+"directly."
+msgstr ""
+
+#: ../src/ui/widget/page-sizer.cpp:481
+msgid "_Viewbox..."
+msgstr ""
+
+#: ../src/ui/widget/page-sizer.cpp:588
msgid "Set page size"
msgstr ""
-#: ../src/ui/widget/panel.cpp:117
+#: ../src/ui/widget/page-sizer.cpp:834
+msgid "User units per "
+msgstr ""
+
+#: ../src/ui/widget/page-sizer.cpp:930
+msgid "Set page scale"
+msgstr ""
+
+#: ../src/ui/widget/page-sizer.cpp:956
+msgid "Set 'viewBox'"
+msgstr ""
+
+#: ../src/ui/widget/panel.cpp:113
msgid "List"
msgstr ""
-#: ../src/ui/widget/panel.cpp:140
+#: ../src/ui/widget/panel.cpp:136
msgctxt "Swatches"
msgid "Size"
msgstr ""
-#: ../src/ui/widget/panel.cpp:144
+#: ../src/ui/widget/panel.cpp:140
msgctxt "Swatches height"
msgid "Tiny"
msgstr ""
-#: ../src/ui/widget/panel.cpp:145
+#: ../src/ui/widget/panel.cpp:141
msgctxt "Swatches height"
msgid "Small"
msgstr ""
-#: ../src/ui/widget/panel.cpp:146
+#: ../src/ui/widget/panel.cpp:142
msgctxt "Swatches height"
msgid "Medium"
msgstr ""
-#: ../src/ui/widget/panel.cpp:147
+#: ../src/ui/widget/panel.cpp:143
msgctxt "Swatches height"
msgid "Large"
msgstr ""
-#: ../src/ui/widget/panel.cpp:148
+#: ../src/ui/widget/panel.cpp:144
msgctxt "Swatches height"
msgid "Huge"
msgstr ""
-#: ../src/ui/widget/panel.cpp:170
+#: ../src/ui/widget/panel.cpp:166
msgctxt "Swatches"
msgid "Width"
msgstr ""
-#: ../src/ui/widget/panel.cpp:174
+#: ../src/ui/widget/panel.cpp:170
msgctxt "Swatches width"
msgid "Narrower"
msgstr ""
-#: ../src/ui/widget/panel.cpp:175
+#: ../src/ui/widget/panel.cpp:171
msgctxt "Swatches width"
msgid "Narrow"
msgstr ""
-#: ../src/ui/widget/panel.cpp:176
+#: ../src/ui/widget/panel.cpp:172
msgctxt "Swatches width"
msgid "Medium"
msgstr ""
-#: ../src/ui/widget/panel.cpp:177
+#: ../src/ui/widget/panel.cpp:173
msgctxt "Swatches width"
msgid "Wide"
msgstr ""
-#: ../src/ui/widget/panel.cpp:178
+#: ../src/ui/widget/panel.cpp:174
msgctxt "Swatches width"
msgid "Wider"
msgstr ""
-#: ../src/ui/widget/panel.cpp:208
+#: ../src/ui/widget/panel.cpp:204
msgctxt "Swatches"
msgid "Border"
msgstr ""
-#: ../src/ui/widget/panel.cpp:212
+#: ../src/ui/widget/panel.cpp:208
msgctxt "Swatches border"
msgid "None"
msgstr ""
-#: ../src/ui/widget/panel.cpp:213
+#: ../src/ui/widget/panel.cpp:209
msgctxt "Swatches border"
msgid "Solid"
msgstr ""
-#: ../src/ui/widget/panel.cpp:214
+#: ../src/ui/widget/panel.cpp:210
msgctxt "Swatches border"
msgid "Wide"
msgstr ""
#. TRANSLATORS: "Wrap" indicates how colour swatches are displayed
-#: ../src/ui/widget/panel.cpp:245
+#: ../src/ui/widget/panel.cpp:241
msgctxt "Swatches"
msgid "Wrap"
msgstr ""
-#: ../src/ui/widget/preferences-widget.cpp:802
+#: ../src/ui/widget/preferences-widget.cpp:798
msgid "_Browse..."
msgstr ""
-#: ../src/ui/widget/preferences-widget.cpp:888
+#: ../src/ui/widget/preferences-widget.cpp:884
msgid "Select a bitmap editor"
msgstr ""
@@ -23377,7 +23642,7 @@ msgstr ""
#: ../src/ui/widget/selected-style.cpp:181
#: ../src/ui/widget/selected-style.cpp:1112
#: ../src/ui/widget/selected-style.cpp:1113
-#: ../src/widgets/gradient-toolbar.cpp:162
+#: ../src/widgets/gradient-toolbar.cpp:163
msgid "Nothing selected"
msgstr ""
@@ -23404,7 +23669,7 @@ msgid "No stroke"
msgstr ""
#: ../src/ui/widget/selected-style.cpp:192
-#: ../src/ui/widget/style-swatch.cpp:300 ../src/widgets/paint-selector.cpp:234
+#: ../src/ui/widget/style-swatch.cpp:300 ../src/widgets/paint-selector.cpp:231
msgid "Pattern"
msgstr ""
@@ -23479,14 +23744,14 @@ msgstr ""
#: ../src/ui/widget/selected-style.cpp:237
#: ../src/ui/widget/selected-style.cpp:295
#: ../src/ui/widget/selected-style.cpp:575
-#: ../src/ui/widget/style-swatch.cpp:326 ../src/widgets/fill-style.cpp:709
+#: ../src/ui/widget/style-swatch.cpp:326 ../src/widgets/fill-style.cpp:703
msgid "Unset fill"
msgstr ""
#: ../src/ui/widget/selected-style.cpp:237
#: ../src/ui/widget/selected-style.cpp:295
#: ../src/ui/widget/selected-style.cpp:591
-#: ../src/ui/widget/style-swatch.cpp:326 ../src/widgets/fill-style.cpp:709
+#: ../src/ui/widget/style-swatch.cpp:326 ../src/widgets/fill-style.cpp:703
msgid "Unset stroke"
msgstr ""
@@ -23564,12 +23829,12 @@ msgid "Make stroke opaque"
msgstr ""
#: ../src/ui/widget/selected-style.cpp:299
-#: ../src/ui/widget/selected-style.cpp:557 ../src/widgets/fill-style.cpp:508
+#: ../src/ui/widget/selected-style.cpp:557 ../src/widgets/fill-style.cpp:503
msgid "Remove fill"
msgstr ""
#: ../src/ui/widget/selected-style.cpp:299
-#: ../src/ui/widget/selected-style.cpp:566 ../src/widgets/fill-style.cpp:508
+#: ../src/ui/widget/selected-style.cpp:566 ../src/widgets/fill-style.cpp:503
msgid "Remove stroke"
msgstr ""
@@ -23760,7 +24025,7 @@ msgstr ""
msgid "3D box: Move vanishing point"
msgstr ""
-#: ../src/vanishing-point.cpp:327
+#: ../src/vanishing-point.cpp:328
#, c-format
msgid "<b>Finite</b> vanishing point shared by <b>%d</b> box"
msgid_plural ""
@@ -23771,7 +24036,7 @@ msgstr[1] ""
#. This won't make sense any more when infinite VPs are not shown on the canvas,
#. but currently we update the status message anyway
-#: ../src/vanishing-point.cpp:334
+#: ../src/vanishing-point.cpp:335
#, c-format
msgid "<b>Infinite</b> vanishing point shared by <b>%d</b> box"
msgid_plural ""
@@ -23780,2384 +24045,2375 @@ msgid_plural ""
msgstr[0] ""
msgstr[1] ""
-#: ../src/vanishing-point.cpp:342
+#: ../src/vanishing-point.cpp:343
#, c-format
msgid ""
"shared by <b>%d</b> box; drag with <b>Shift</b> to separate selected box(es)"
msgid_plural ""
-"shared by <b>%d</b> boxes; drag with <b>Shift</b> to separate selected box"
-"(es)"
+"shared by <b>%d</b> boxes; drag with <b>Shift</b> to separate selected "
+"box(es)"
msgstr[0] ""
msgstr[1] ""
-#: ../src/verbs.cpp:138
+#: ../src/verbs.cpp:137
msgid "File"
msgstr ""
-#: ../src/verbs.cpp:233 ../share/extensions/interp_att_g.inx.h:22
+#: ../src/verbs.cpp:232 ../share/extensions/interp_att_g.inx.h:22
msgid "Tag"
msgstr ""
-#: ../src/verbs.cpp:252
+#: ../src/verbs.cpp:251
msgid "Context"
msgstr ""
-#: ../src/verbs.cpp:271 ../src/verbs.cpp:2302
+#: ../src/verbs.cpp:270 ../src/verbs.cpp:2271
#: ../share/extensions/jessyInk_view.inx.h:1
#: ../share/extensions/polyhedron_3d.inx.h:26
msgid "View"
msgstr ""
-#: ../src/verbs.cpp:291
+#: ../src/verbs.cpp:290
msgid "Dialog"
msgstr ""
-#: ../src/verbs.cpp:1260
+#: ../src/verbs.cpp:1259
msgid "Switch to next layer"
msgstr ""
-#: ../src/verbs.cpp:1261
+#: ../src/verbs.cpp:1260
msgid "Switched to next layer."
msgstr ""
-#: ../src/verbs.cpp:1263
+#: ../src/verbs.cpp:1262
msgid "Cannot go past last layer."
msgstr ""
-#: ../src/verbs.cpp:1272
+#: ../src/verbs.cpp:1271
msgid "Switch to previous layer"
msgstr ""
-#: ../src/verbs.cpp:1273
+#: ../src/verbs.cpp:1272
msgid "Switched to previous layer."
msgstr ""
-#: ../src/verbs.cpp:1275
+#: ../src/verbs.cpp:1274
msgid "Cannot go before first layer."
msgstr ""
-#: ../src/verbs.cpp:1296 ../src/verbs.cpp:1393 ../src/verbs.cpp:1429
-#: ../src/verbs.cpp:1435 ../src/verbs.cpp:1459 ../src/verbs.cpp:1474
+#: ../src/verbs.cpp:1295 ../src/verbs.cpp:1362 ../src/verbs.cpp:1398
+#: ../src/verbs.cpp:1404 ../src/verbs.cpp:1428 ../src/verbs.cpp:1443
msgid "No current layer."
msgstr ""
-#: ../src/verbs.cpp:1325 ../src/verbs.cpp:1329
+#: ../src/verbs.cpp:1324 ../src/verbs.cpp:1328
#, c-format
msgid "Raised layer <b>%s</b>."
msgstr ""
-#: ../src/verbs.cpp:1326
+#: ../src/verbs.cpp:1325
msgid "Layer to top"
msgstr ""
-#: ../src/verbs.cpp:1330
+#: ../src/verbs.cpp:1329
msgid "Raise layer"
msgstr ""
-#: ../src/verbs.cpp:1333 ../src/verbs.cpp:1337
+#: ../src/verbs.cpp:1332 ../src/verbs.cpp:1336
#, c-format
msgid "Lowered layer <b>%s</b>."
msgstr ""
-#: ../src/verbs.cpp:1334
+#: ../src/verbs.cpp:1333
msgid "Layer to bottom"
msgstr ""
-#: ../src/verbs.cpp:1338
+#: ../src/verbs.cpp:1337
msgid "Lower layer"
msgstr ""
-#: ../src/verbs.cpp:1347
+#: ../src/verbs.cpp:1346
msgid "Cannot move layer any further."
msgstr ""
-#: ../src/verbs.cpp:1361 ../src/verbs.cpp:1380
-#, c-format
-msgid "%s copy"
-msgstr ""
-
-#: ../src/verbs.cpp:1388
+#: ../src/verbs.cpp:1357
msgid "Duplicate layer"
msgstr ""
#. TRANSLATORS: this means "The layer has been duplicated."
-#: ../src/verbs.cpp:1391
+#: ../src/verbs.cpp:1360
msgid "Duplicated layer."
msgstr ""
-#: ../src/verbs.cpp:1424
+#: ../src/verbs.cpp:1393
msgid "Delete layer"
msgstr ""
#. TRANSLATORS: this means "The layer has been deleted."
-#: ../src/verbs.cpp:1427
+#: ../src/verbs.cpp:1396
msgid "Deleted layer."
msgstr ""
-#: ../src/verbs.cpp:1444
+#: ../src/verbs.cpp:1413
msgid "Show all layers"
msgstr ""
-#: ../src/verbs.cpp:1449
+#: ../src/verbs.cpp:1418
msgid "Hide all layers"
msgstr ""
-#: ../src/verbs.cpp:1454
+#: ../src/verbs.cpp:1423
msgid "Lock all layers"
msgstr ""
-#: ../src/verbs.cpp:1468
+#: ../src/verbs.cpp:1437
msgid "Unlock all layers"
msgstr ""
-#: ../src/verbs.cpp:1552
+#: ../src/verbs.cpp:1521
msgid "Flip horizontally"
msgstr ""
-#: ../src/verbs.cpp:1557
+#: ../src/verbs.cpp:1526
msgid "Flip vertically"
msgstr ""
-#: ../src/verbs.cpp:1614 ../src/verbs.cpp:2727
+#: ../src/verbs.cpp:1583 ../src/verbs.cpp:2696
msgid "Create new selection set"
msgstr ""
#. TRANSLATORS: If you have translated the tutorial-basic.en.svgz file to your language,
#. then translate this string as "tutorial-basic.LANG.svgz" (where LANG is your language
#. code); otherwise leave as "tutorial-basic.svg".
-#: ../src/verbs.cpp:2184
+#: ../src/verbs.cpp:2153
msgid "tutorial-basic.svg"
msgstr ""
#. TRANSLATORS: See "tutorial-basic.svg" comment.
-#: ../src/verbs.cpp:2188
+#: ../src/verbs.cpp:2157
msgid "tutorial-shapes.svg"
msgstr ""
#. TRANSLATORS: See "tutorial-basic.svg" comment.
-#: ../src/verbs.cpp:2192
+#: ../src/verbs.cpp:2161
msgid "tutorial-advanced.svg"
msgstr ""
#. TRANSLATORS: See "tutorial-basic.svg" comment.
-#: ../src/verbs.cpp:2196
+#: ../src/verbs.cpp:2165
msgid "tutorial-tracing.svg"
msgstr ""
-#: ../src/verbs.cpp:2199
+#: ../src/verbs.cpp:2168
msgid "tutorial-tracing-pixelart.svg"
msgstr ""
#. TRANSLATORS: See "tutorial-basic.svg" comment.
-#: ../src/verbs.cpp:2203
+#: ../src/verbs.cpp:2172
msgid "tutorial-calligraphy.svg"
msgstr ""
#. TRANSLATORS: See "tutorial-basic.svg" comment.
-#: ../src/verbs.cpp:2207
+#: ../src/verbs.cpp:2176
msgid "tutorial-interpolate.svg"
msgstr ""
#. TRANSLATORS: See "tutorial-basic.svg" comment.
-#: ../src/verbs.cpp:2211
+#: ../src/verbs.cpp:2180
msgid "tutorial-elements.svg"
msgstr ""
#. TRANSLATORS: See "tutorial-basic.svg" comment.
-#: ../src/verbs.cpp:2215
+#: ../src/verbs.cpp:2184
msgid "tutorial-tips.svg"
msgstr ""
-#: ../src/verbs.cpp:2401 ../src/verbs.cpp:3000
+#: ../src/verbs.cpp:2370 ../src/verbs.cpp:2969
msgid "Unlock all objects in the current layer"
msgstr ""
-#: ../src/verbs.cpp:2405 ../src/verbs.cpp:3002
+#: ../src/verbs.cpp:2374 ../src/verbs.cpp:2971
msgid "Unlock all objects in all layers"
msgstr ""
-#: ../src/verbs.cpp:2409 ../src/verbs.cpp:3004
+#: ../src/verbs.cpp:2378 ../src/verbs.cpp:2973
msgid "Unhide all objects in the current layer"
msgstr ""
-#: ../src/verbs.cpp:2413 ../src/verbs.cpp:3006
+#: ../src/verbs.cpp:2382 ../src/verbs.cpp:2975
msgid "Unhide all objects in all layers"
msgstr ""
-#: ../src/verbs.cpp:2428
+#: ../src/verbs.cpp:2397
msgctxt "Verb"
msgid "None"
msgstr ""
-#: ../src/verbs.cpp:2428
+#: ../src/verbs.cpp:2397
msgid "Does nothing"
msgstr ""
#. File
#. Tag
-#: ../src/verbs.cpp:2431 ../src/verbs.cpp:2726
+#: ../src/verbs.cpp:2400 ../src/verbs.cpp:2695
msgid "_New"
msgstr ""
-#: ../src/verbs.cpp:2431
+#: ../src/verbs.cpp:2400
msgid "Create new document from the default template"
msgstr ""
-#: ../src/verbs.cpp:2433
+#: ../src/verbs.cpp:2402
msgid "_Open..."
msgstr ""
-#: ../src/verbs.cpp:2434
+#: ../src/verbs.cpp:2403
msgid "Open an existing document"
msgstr ""
-#: ../src/verbs.cpp:2435
+#: ../src/verbs.cpp:2404
msgid "Re_vert"
msgstr ""
-#: ../src/verbs.cpp:2436
+#: ../src/verbs.cpp:2405
msgid "Revert to the last saved version of document (changes will be lost)"
msgstr ""
-#: ../src/verbs.cpp:2437
+#: ../src/verbs.cpp:2406
msgid "Save document"
msgstr ""
-#: ../src/verbs.cpp:2439
+#: ../src/verbs.cpp:2408
msgid "Save _As..."
msgstr ""
-#: ../src/verbs.cpp:2440
+#: ../src/verbs.cpp:2409
msgid "Save document under a new name"
msgstr ""
-#: ../src/verbs.cpp:2441
+#: ../src/verbs.cpp:2410
msgid "Save a Cop_y..."
msgstr ""
-#: ../src/verbs.cpp:2442
+#: ../src/verbs.cpp:2411
msgid "Save a copy of the document under a new name"
msgstr ""
-#: ../src/verbs.cpp:2443
+#: ../src/verbs.cpp:2412
msgid "_Print..."
msgstr ""
-#: ../src/verbs.cpp:2443
+#: ../src/verbs.cpp:2412
msgid "Print document"
msgstr ""
#. TRANSLATORS: "Vacuum Defs" means "Clean up defs" (so as to remove unused definitions)
-#: ../src/verbs.cpp:2446
+#: ../src/verbs.cpp:2415
msgid "Clean _up document"
msgstr ""
-#: ../src/verbs.cpp:2446
+#: ../src/verbs.cpp:2415
msgid ""
"Remove unused definitions (such as gradients or clipping paths) from the &lt;"
"defs&gt; of the document"
msgstr ""
-#: ../src/verbs.cpp:2448
+#: ../src/verbs.cpp:2417
msgid "_Import..."
msgstr ""
-#: ../src/verbs.cpp:2449
+#: ../src/verbs.cpp:2418
msgid "Import a bitmap or SVG image into this document"
msgstr ""
#. new FileVerb(SP_VERB_FILE_EXPORT, "FileExport", N_("_Export Bitmap..."), N_("Export this document or a selection as a bitmap image"), INKSCAPE_ICON("document-export")),
-#: ../src/verbs.cpp:2451
+#: ../src/verbs.cpp:2420
msgid "Import Clip Art..."
msgstr ""
-#: ../src/verbs.cpp:2452
+#: ../src/verbs.cpp:2421
msgid "Import clipart from Open Clip Art Library"
msgstr ""
#. new FileVerb(SP_VERB_FILE_EXPORT_TO_OCAL, "FileExportToOCAL", N_("Export To Open Clip Art Library"), N_("Export this document to Open Clip Art Library"), INKSCAPE_ICON_DOCUMENT_EXPORT_OCAL),
-#: ../src/verbs.cpp:2454
+#: ../src/verbs.cpp:2423
msgid "N_ext Window"
msgstr ""
-#: ../src/verbs.cpp:2455
+#: ../src/verbs.cpp:2424
msgid "Switch to the next document window"
msgstr ""
-#: ../src/verbs.cpp:2456
+#: ../src/verbs.cpp:2425
msgid "P_revious Window"
msgstr ""
-#: ../src/verbs.cpp:2457
+#: ../src/verbs.cpp:2426
msgid "Switch to the previous document window"
msgstr ""
-#: ../src/verbs.cpp:2458
+#: ../src/verbs.cpp:2427
msgid "_Close"
msgstr ""
-#: ../src/verbs.cpp:2459
+#: ../src/verbs.cpp:2428
msgid "Close this document window"
msgstr ""
-#: ../src/verbs.cpp:2460
+#: ../src/verbs.cpp:2429
msgid "_Quit"
msgstr ""
-#: ../src/verbs.cpp:2460
+#: ../src/verbs.cpp:2429
msgid "Quit Inkscape"
msgstr ""
-#: ../src/verbs.cpp:2461
+#: ../src/verbs.cpp:2430
msgid "New from _Template..."
msgstr ""
-#: ../src/verbs.cpp:2462
+#: ../src/verbs.cpp:2431
msgid "Create new project from template"
msgstr ""
-#: ../src/verbs.cpp:2465
+#: ../src/verbs.cpp:2434
msgid "Undo last action"
msgstr ""
-#: ../src/verbs.cpp:2468
+#: ../src/verbs.cpp:2437
msgid "Do again the last undone action"
msgstr ""
-#: ../src/verbs.cpp:2469
+#: ../src/verbs.cpp:2438
msgid "Cu_t"
msgstr ""
-#: ../src/verbs.cpp:2470
+#: ../src/verbs.cpp:2439
msgid "Cut selection to clipboard"
msgstr ""
-#: ../src/verbs.cpp:2471
+#: ../src/verbs.cpp:2440
msgid "_Copy"
msgstr ""
-#: ../src/verbs.cpp:2472
+#: ../src/verbs.cpp:2441
msgid "Copy selection to clipboard"
msgstr ""
-#: ../src/verbs.cpp:2473
+#: ../src/verbs.cpp:2442
msgid "_Paste"
msgstr ""
-#: ../src/verbs.cpp:2474
+#: ../src/verbs.cpp:2443
msgid "Paste objects from clipboard to mouse point, or paste text"
msgstr ""
-#: ../src/verbs.cpp:2475
+#: ../src/verbs.cpp:2444
msgid "Paste _Style"
msgstr ""
-#: ../src/verbs.cpp:2476
+#: ../src/verbs.cpp:2445
msgid "Apply the style of the copied object to selection"
msgstr ""
-#: ../src/verbs.cpp:2478
+#: ../src/verbs.cpp:2447
msgid "Scale selection to match the size of the copied object"
msgstr ""
-#: ../src/verbs.cpp:2479
+#: ../src/verbs.cpp:2448
msgid "Paste _Width"
msgstr ""
-#: ../src/verbs.cpp:2480
+#: ../src/verbs.cpp:2449
msgid "Scale selection horizontally to match the width of the copied object"
msgstr ""
-#: ../src/verbs.cpp:2481
+#: ../src/verbs.cpp:2450
msgid "Paste _Height"
msgstr ""
-#: ../src/verbs.cpp:2482
+#: ../src/verbs.cpp:2451
msgid "Scale selection vertically to match the height of the copied object"
msgstr ""
-#: ../src/verbs.cpp:2483
+#: ../src/verbs.cpp:2452
msgid "Paste Size Separately"
msgstr ""
-#: ../src/verbs.cpp:2484
+#: ../src/verbs.cpp:2453
msgid "Scale each selected object to match the size of the copied object"
msgstr ""
-#: ../src/verbs.cpp:2485
+#: ../src/verbs.cpp:2454
msgid "Paste Width Separately"
msgstr ""
-#: ../src/verbs.cpp:2486
+#: ../src/verbs.cpp:2455
msgid ""
"Scale each selected object horizontally to match the width of the copied "
"object"
msgstr ""
-#: ../src/verbs.cpp:2487
+#: ../src/verbs.cpp:2456
msgid "Paste Height Separately"
msgstr ""
-#: ../src/verbs.cpp:2488
+#: ../src/verbs.cpp:2457
msgid ""
"Scale each selected object vertically to match the height of the copied "
"object"
msgstr ""
-#: ../src/verbs.cpp:2489
+#: ../src/verbs.cpp:2458
msgid "Paste _In Place"
msgstr ""
-#: ../src/verbs.cpp:2490
+#: ../src/verbs.cpp:2459
msgid "Paste objects from clipboard to the original location"
msgstr ""
-#: ../src/verbs.cpp:2491
+#: ../src/verbs.cpp:2460
msgid "Paste Path _Effect"
msgstr ""
-#: ../src/verbs.cpp:2492
+#: ../src/verbs.cpp:2461
msgid "Apply the path effect of the copied object to selection"
msgstr ""
-#: ../src/verbs.cpp:2493
+#: ../src/verbs.cpp:2462
msgid "Remove Path _Effect"
msgstr ""
-#: ../src/verbs.cpp:2494
+#: ../src/verbs.cpp:2463
msgid "Remove any path effects from selected objects"
msgstr ""
-#: ../src/verbs.cpp:2495
+#: ../src/verbs.cpp:2464
msgid "_Remove Filters"
msgstr ""
-#: ../src/verbs.cpp:2496
+#: ../src/verbs.cpp:2465
msgid "Remove any filters from selected objects"
msgstr ""
-#: ../src/verbs.cpp:2497
+#: ../src/verbs.cpp:2466
msgid "_Delete"
msgstr ""
-#: ../src/verbs.cpp:2498
+#: ../src/verbs.cpp:2467
msgid "Delete selection"
msgstr ""
-#: ../src/verbs.cpp:2499
+#: ../src/verbs.cpp:2468
msgid "Duplic_ate"
msgstr ""
-#: ../src/verbs.cpp:2500
+#: ../src/verbs.cpp:2469
msgid "Duplicate selected objects"
msgstr ""
-#: ../src/verbs.cpp:2501
+#: ../src/verbs.cpp:2470
msgid "Create Clo_ne"
msgstr ""
-#: ../src/verbs.cpp:2502
+#: ../src/verbs.cpp:2471
msgid "Create a clone (a copy linked to the original) of selected object"
msgstr ""
-#: ../src/verbs.cpp:2503
+#: ../src/verbs.cpp:2472
msgid "Unlin_k Clone"
msgstr ""
-#: ../src/verbs.cpp:2504
+#: ../src/verbs.cpp:2473
msgid ""
"Cut the selected clones' links to the originals, turning them into "
"standalone objects"
msgstr ""
-#: ../src/verbs.cpp:2505
+#: ../src/verbs.cpp:2474
msgid "Relink to Copied"
msgstr ""
-#: ../src/verbs.cpp:2506
+#: ../src/verbs.cpp:2475
msgid "Relink the selected clones to the object currently on the clipboard"
msgstr ""
-#: ../src/verbs.cpp:2507
+#: ../src/verbs.cpp:2476
msgid "Select _Original"
msgstr ""
-#: ../src/verbs.cpp:2508
+#: ../src/verbs.cpp:2477
msgid "Select the object to which the selected clone is linked"
msgstr ""
-#: ../src/verbs.cpp:2509
+#: ../src/verbs.cpp:2478
msgid "Clone original path (LPE)"
msgstr ""
-#: ../src/verbs.cpp:2510
+#: ../src/verbs.cpp:2479
msgid ""
"Creates a new path, applies the Clone original LPE, and refers it to the "
"selected path"
msgstr ""
-#: ../src/verbs.cpp:2511
+#: ../src/verbs.cpp:2480
msgid "Objects to _Marker"
msgstr ""
-#: ../src/verbs.cpp:2512
+#: ../src/verbs.cpp:2481
msgid "Convert selection to a line marker"
msgstr ""
-#: ../src/verbs.cpp:2513
+#: ../src/verbs.cpp:2482
msgid "Objects to Gu_ides"
msgstr ""
-#: ../src/verbs.cpp:2514
+#: ../src/verbs.cpp:2483
msgid ""
"Convert selected objects to a collection of guidelines aligned with their "
"edges"
msgstr ""
-#: ../src/verbs.cpp:2515
+#: ../src/verbs.cpp:2484
msgid "Objects to Patter_n"
msgstr ""
-#: ../src/verbs.cpp:2516
+#: ../src/verbs.cpp:2485
msgid "Convert selection to a rectangle with tiled pattern fill"
msgstr ""
-#: ../src/verbs.cpp:2517
+#: ../src/verbs.cpp:2486
msgid "Pattern to _Objects"
msgstr ""
-#: ../src/verbs.cpp:2518
+#: ../src/verbs.cpp:2487
msgid "Extract objects from a tiled pattern fill"
msgstr ""
-#: ../src/verbs.cpp:2519
+#: ../src/verbs.cpp:2488
msgid "Group to Symbol"
msgstr ""
-#: ../src/verbs.cpp:2520
+#: ../src/verbs.cpp:2489
msgid "Convert group to a symbol"
msgstr ""
-#: ../src/verbs.cpp:2521
+#: ../src/verbs.cpp:2490
msgid "Symbol to Group"
msgstr ""
-#: ../src/verbs.cpp:2522
+#: ../src/verbs.cpp:2491
msgid "Extract group from a symbol"
msgstr ""
-#: ../src/verbs.cpp:2523
+#: ../src/verbs.cpp:2492
msgid "Clea_r All"
msgstr ""
-#: ../src/verbs.cpp:2524
+#: ../src/verbs.cpp:2493
msgid "Delete all objects from document"
msgstr ""
-#: ../src/verbs.cpp:2525
+#: ../src/verbs.cpp:2494
msgid "Select Al_l"
msgstr ""
-#: ../src/verbs.cpp:2526
+#: ../src/verbs.cpp:2495
msgid "Select all objects or all nodes"
msgstr ""
-#: ../src/verbs.cpp:2527
+#: ../src/verbs.cpp:2496
msgid "Select All in All La_yers"
msgstr ""
-#: ../src/verbs.cpp:2528
+#: ../src/verbs.cpp:2497
msgid "Select all objects in all visible and unlocked layers"
msgstr ""
-#: ../src/verbs.cpp:2529
+#: ../src/verbs.cpp:2498
msgid "Fill _and Stroke"
msgstr ""
-#: ../src/verbs.cpp:2530
+#: ../src/verbs.cpp:2499
msgid ""
"Select all objects with the same fill and stroke as the selected objects"
msgstr ""
-#: ../src/verbs.cpp:2531
+#: ../src/verbs.cpp:2500
msgid "_Fill Color"
msgstr ""
-#: ../src/verbs.cpp:2532
+#: ../src/verbs.cpp:2501
msgid "Select all objects with the same fill as the selected objects"
msgstr ""
-#: ../src/verbs.cpp:2533
+#: ../src/verbs.cpp:2502
msgid "_Stroke Color"
msgstr ""
-#: ../src/verbs.cpp:2534
+#: ../src/verbs.cpp:2503
msgid "Select all objects with the same stroke as the selected objects"
msgstr ""
-#: ../src/verbs.cpp:2535
+#: ../src/verbs.cpp:2504
msgid "Stroke St_yle"
msgstr ""
-#: ../src/verbs.cpp:2536
+#: ../src/verbs.cpp:2505
msgid ""
"Select all objects with the same stroke style (width, dash, markers) as the "
"selected objects"
msgstr ""
-#: ../src/verbs.cpp:2537
+#: ../src/verbs.cpp:2506
msgid "_Object Type"
msgstr ""
-#: ../src/verbs.cpp:2538
+#: ../src/verbs.cpp:2507
msgid ""
"Select all objects with the same object type (rect, arc, text, path, bitmap "
"etc) as the selected objects"
msgstr ""
-#: ../src/verbs.cpp:2539
+#: ../src/verbs.cpp:2508
msgid "In_vert Selection"
msgstr ""
-#: ../src/verbs.cpp:2540
+#: ../src/verbs.cpp:2509
msgid "Invert selection (unselect what is selected and select everything else)"
msgstr ""
-#: ../src/verbs.cpp:2541
+#: ../src/verbs.cpp:2510
msgid "Invert in All Layers"
msgstr ""
-#: ../src/verbs.cpp:2542
+#: ../src/verbs.cpp:2511
msgid "Invert selection in all visible and unlocked layers"
msgstr ""
-#: ../src/verbs.cpp:2543
+#: ../src/verbs.cpp:2512
msgid "Select Next"
msgstr ""
-#: ../src/verbs.cpp:2544
+#: ../src/verbs.cpp:2513
msgid "Select next object or node"
msgstr ""
-#: ../src/verbs.cpp:2545
+#: ../src/verbs.cpp:2514
msgid "Select Previous"
msgstr ""
-#: ../src/verbs.cpp:2546
+#: ../src/verbs.cpp:2515
msgid "Select previous object or node"
msgstr ""
-#: ../src/verbs.cpp:2547
+#: ../src/verbs.cpp:2516
msgid "D_eselect"
msgstr ""
-#: ../src/verbs.cpp:2548
+#: ../src/verbs.cpp:2517
msgid "Deselect any selected objects or nodes"
msgstr ""
-#: ../src/verbs.cpp:2550
+#: ../src/verbs.cpp:2519
msgid "Delete all the guides in the document"
msgstr ""
-#: ../src/verbs.cpp:2551
+#: ../src/verbs.cpp:2520
msgid "Create _Guides Around the Page"
msgstr ""
-#: ../src/verbs.cpp:2552
+#: ../src/verbs.cpp:2521
msgid "Create four guides aligned with the page borders"
msgstr ""
-#: ../src/verbs.cpp:2553
+#: ../src/verbs.cpp:2522
msgid "Next path effect parameter"
msgstr ""
-#: ../src/verbs.cpp:2554
+#: ../src/verbs.cpp:2523
msgid "Show next editable path effect parameter"
msgstr ""
#. Selection
-#: ../src/verbs.cpp:2557
+#: ../src/verbs.cpp:2526
msgid "Raise to _Top"
msgstr ""
-#: ../src/verbs.cpp:2558
+#: ../src/verbs.cpp:2527
msgid "Raise selection to top"
msgstr ""
-#: ../src/verbs.cpp:2559
+#: ../src/verbs.cpp:2528
msgid "Lower to _Bottom"
msgstr ""
-#: ../src/verbs.cpp:2560
+#: ../src/verbs.cpp:2529
msgid "Lower selection to bottom"
msgstr ""
-#: ../src/verbs.cpp:2561
+#: ../src/verbs.cpp:2530
msgid "_Raise"
msgstr ""
-#: ../src/verbs.cpp:2562
+#: ../src/verbs.cpp:2531
msgid "Raise selection one step"
msgstr ""
-#: ../src/verbs.cpp:2563
+#: ../src/verbs.cpp:2532
msgid "_Lower"
msgstr ""
-#: ../src/verbs.cpp:2564
+#: ../src/verbs.cpp:2533
msgid "Lower selection one step"
msgstr ""
-#: ../src/verbs.cpp:2566
+#: ../src/verbs.cpp:2535
msgid "Group selected objects"
msgstr ""
-#: ../src/verbs.cpp:2568
+#: ../src/verbs.cpp:2537
msgid "Ungroup selected groups"
msgstr ""
-#: ../src/verbs.cpp:2570
+#: ../src/verbs.cpp:2539
msgid "_Put on Path"
msgstr ""
-#: ../src/verbs.cpp:2572
+#: ../src/verbs.cpp:2541
msgid "_Remove from Path"
msgstr ""
-#: ../src/verbs.cpp:2574
+#: ../src/verbs.cpp:2543
msgid "Remove Manual _Kerns"
msgstr ""
#. TRANSLATORS: "glyph": An image used in the visual representation of characters;
#. roughly speaking, how a character looks. A font is a set of glyphs.
-#: ../src/verbs.cpp:2577
+#: ../src/verbs.cpp:2546
msgid "Remove all manual kerns and glyph rotations from a text object"
msgstr ""
-#: ../src/verbs.cpp:2579
+#: ../src/verbs.cpp:2548
msgid "_Union"
msgstr ""
-#: ../src/verbs.cpp:2580
+#: ../src/verbs.cpp:2549
msgid "Create union of selected paths"
msgstr ""
-#: ../src/verbs.cpp:2581
+#: ../src/verbs.cpp:2550
msgid "_Intersection"
msgstr ""
-#: ../src/verbs.cpp:2582
+#: ../src/verbs.cpp:2551
msgid "Create intersection of selected paths"
msgstr ""
-#: ../src/verbs.cpp:2583
+#: ../src/verbs.cpp:2552
msgid "_Difference"
msgstr ""
-#: ../src/verbs.cpp:2584
+#: ../src/verbs.cpp:2553
msgid "Create difference of selected paths (bottom minus top)"
msgstr ""
-#: ../src/verbs.cpp:2585
+#: ../src/verbs.cpp:2554
msgid "E_xclusion"
msgstr ""
-#: ../src/verbs.cpp:2586
+#: ../src/verbs.cpp:2555
msgid ""
"Create exclusive OR of selected paths (those parts that belong to only one "
"path)"
msgstr ""
-#: ../src/verbs.cpp:2587
+#: ../src/verbs.cpp:2556
msgid "Di_vision"
msgstr ""
-#: ../src/verbs.cpp:2588
+#: ../src/verbs.cpp:2557
msgid "Cut the bottom path into pieces"
msgstr ""
#. TRANSLATORS: "to cut a path" is not the same as "to break a path apart" - see the
#. Advanced tutorial for more info
-#: ../src/verbs.cpp:2591
+#: ../src/verbs.cpp:2560
msgid "Cut _Path"
msgstr ""
-#: ../src/verbs.cpp:2592
+#: ../src/verbs.cpp:2561
msgid "Cut the bottom path's stroke into pieces, removing fill"
msgstr ""
#. TRANSLATORS: "outset": expand a shape by offsetting the object's path,
#. i.e. by displacing it perpendicular to the path in each point.
#. See also the Advanced Tutorial for explanation.
-#: ../src/verbs.cpp:2596
+#: ../src/verbs.cpp:2565
msgid "Outs_et"
msgstr ""
-#: ../src/verbs.cpp:2597
+#: ../src/verbs.cpp:2566
msgid "Outset selected paths"
msgstr ""
-#: ../src/verbs.cpp:2599
+#: ../src/verbs.cpp:2568
msgid "O_utset Path by 1 px"
msgstr ""
-#: ../src/verbs.cpp:2600
+#: ../src/verbs.cpp:2569
msgid "Outset selected paths by 1 px"
msgstr ""
-#: ../src/verbs.cpp:2602
+#: ../src/verbs.cpp:2571
msgid "O_utset Path by 10 px"
msgstr ""
-#: ../src/verbs.cpp:2603
+#: ../src/verbs.cpp:2572
msgid "Outset selected paths by 10 px"
msgstr ""
#. TRANSLATORS: "inset": contract a shape by offsetting the object's path,
#. i.e. by displacing it perpendicular to the path in each point.
#. See also the Advanced Tutorial for explanation.
-#: ../src/verbs.cpp:2607
+#: ../src/verbs.cpp:2576
msgid "I_nset"
msgstr ""
-#: ../src/verbs.cpp:2608
+#: ../src/verbs.cpp:2577
msgid "Inset selected paths"
msgstr ""
-#: ../src/verbs.cpp:2610
+#: ../src/verbs.cpp:2579
msgid "I_nset Path by 1 px"
msgstr ""
-#: ../src/verbs.cpp:2611
+#: ../src/verbs.cpp:2580
msgid "Inset selected paths by 1 px"
msgstr ""
-#: ../src/verbs.cpp:2613
+#: ../src/verbs.cpp:2582
msgid "I_nset Path by 10 px"
msgstr ""
-#: ../src/verbs.cpp:2614
+#: ../src/verbs.cpp:2583
msgid "Inset selected paths by 10 px"
msgstr ""
-#: ../src/verbs.cpp:2616
+#: ../src/verbs.cpp:2585
msgid "D_ynamic Offset"
msgstr ""
-#: ../src/verbs.cpp:2616
+#: ../src/verbs.cpp:2585
msgid "Create a dynamic offset object"
msgstr ""
-#: ../src/verbs.cpp:2618
+#: ../src/verbs.cpp:2587
msgid "_Linked Offset"
msgstr ""
-#: ../src/verbs.cpp:2619
+#: ../src/verbs.cpp:2588
msgid "Create a dynamic offset object linked to the original path"
msgstr ""
-#: ../src/verbs.cpp:2621
+#: ../src/verbs.cpp:2590
msgid "_Stroke to Path"
msgstr ""
-#: ../src/verbs.cpp:2622
+#: ../src/verbs.cpp:2591
msgid "Convert selected object's stroke to paths"
msgstr ""
-#: ../src/verbs.cpp:2623
+#: ../src/verbs.cpp:2592
msgid "Si_mplify"
msgstr ""
-#: ../src/verbs.cpp:2624
+#: ../src/verbs.cpp:2593
msgid "Simplify selected paths (remove extra nodes)"
msgstr ""
-#: ../src/verbs.cpp:2625
+#: ../src/verbs.cpp:2594
msgid "_Reverse"
msgstr ""
-#: ../src/verbs.cpp:2626
+#: ../src/verbs.cpp:2595
msgid "Reverse the direction of selected paths (useful for flipping markers)"
msgstr ""
-#: ../src/verbs.cpp:2629
+#: ../src/verbs.cpp:2598
msgid "Create one or more paths from a bitmap by tracing it"
msgstr ""
-#: ../src/verbs.cpp:2630
+#: ../src/verbs.cpp:2599
msgid "Trace Pixel Art..."
msgstr ""
-#: ../src/verbs.cpp:2631
+#: ../src/verbs.cpp:2600
msgid "Create paths using Kopf-Lischinski algorithm to vectorize pixel art"
msgstr ""
-#: ../src/verbs.cpp:2632
+#: ../src/verbs.cpp:2601
msgid "Make a _Bitmap Copy"
msgstr ""
-#: ../src/verbs.cpp:2633
+#: ../src/verbs.cpp:2602
msgid "Export selection to a bitmap and insert it into document"
msgstr ""
-#: ../src/verbs.cpp:2634
+#: ../src/verbs.cpp:2603
msgid "_Combine"
msgstr ""
-#: ../src/verbs.cpp:2635
+#: ../src/verbs.cpp:2604
msgid "Combine several paths into one"
msgstr ""
#. TRANSLATORS: "to cut a path" is not the same as "to break a path apart" - see the
#. Advanced tutorial for more info
-#: ../src/verbs.cpp:2638
+#: ../src/verbs.cpp:2607
msgid "Break _Apart"
msgstr ""
-#: ../src/verbs.cpp:2639
+#: ../src/verbs.cpp:2608
msgid "Break selected paths into subpaths"
msgstr ""
-#: ../src/verbs.cpp:2640
+#: ../src/verbs.cpp:2609
msgid "_Arrange..."
msgstr ""
-#: ../src/verbs.cpp:2641
+#: ../src/verbs.cpp:2610
msgid "Arrange selected objects in a table or circle"
msgstr ""
#. Layer
-#: ../src/verbs.cpp:2643
+#: ../src/verbs.cpp:2612
msgid "_Add Layer..."
msgstr ""
-#: ../src/verbs.cpp:2644
+#: ../src/verbs.cpp:2613
msgid "Create a new layer"
msgstr ""
-#: ../src/verbs.cpp:2645
+#: ../src/verbs.cpp:2614
msgid "Re_name Layer..."
msgstr ""
-#: ../src/verbs.cpp:2646
+#: ../src/verbs.cpp:2615
msgid "Rename the current layer"
msgstr ""
-#: ../src/verbs.cpp:2647
+#: ../src/verbs.cpp:2616
msgid "Switch to Layer Abov_e"
msgstr ""
-#: ../src/verbs.cpp:2648
+#: ../src/verbs.cpp:2617
msgid "Switch to the layer above the current"
msgstr ""
-#: ../src/verbs.cpp:2649
+#: ../src/verbs.cpp:2618
msgid "Switch to Layer Belo_w"
msgstr ""
-#: ../src/verbs.cpp:2650
+#: ../src/verbs.cpp:2619
msgid "Switch to the layer below the current"
msgstr ""
-#: ../src/verbs.cpp:2651
+#: ../src/verbs.cpp:2620
msgid "Move Selection to Layer Abo_ve"
msgstr ""
-#: ../src/verbs.cpp:2652
+#: ../src/verbs.cpp:2621
msgid "Move selection to the layer above the current"
msgstr ""
-#: ../src/verbs.cpp:2653
+#: ../src/verbs.cpp:2622
msgid "Move Selection to Layer Bel_ow"
msgstr ""
-#: ../src/verbs.cpp:2654
+#: ../src/verbs.cpp:2623
msgid "Move selection to the layer below the current"
msgstr ""
-#: ../src/verbs.cpp:2655
+#: ../src/verbs.cpp:2624
msgid "Move Selection to Layer..."
msgstr ""
-#: ../src/verbs.cpp:2657
+#: ../src/verbs.cpp:2626
msgid "Layer to _Top"
msgstr ""
-#: ../src/verbs.cpp:2658
+#: ../src/verbs.cpp:2627
msgid "Raise the current layer to the top"
msgstr ""
-#: ../src/verbs.cpp:2659
+#: ../src/verbs.cpp:2628
msgid "Layer to _Bottom"
msgstr ""
-#: ../src/verbs.cpp:2660
+#: ../src/verbs.cpp:2629
msgid "Lower the current layer to the bottom"
msgstr ""
-#: ../src/verbs.cpp:2661
+#: ../src/verbs.cpp:2630
msgid "_Raise Layer"
msgstr ""
-#: ../src/verbs.cpp:2662
+#: ../src/verbs.cpp:2631
msgid "Raise the current layer"
msgstr ""
-#: ../src/verbs.cpp:2663
+#: ../src/verbs.cpp:2632
msgid "_Lower Layer"
msgstr ""
-#: ../src/verbs.cpp:2664
+#: ../src/verbs.cpp:2633
msgid "Lower the current layer"
msgstr ""
-#: ../src/verbs.cpp:2665
+#: ../src/verbs.cpp:2634
msgid "D_uplicate Current Layer"
msgstr ""
-#: ../src/verbs.cpp:2666
+#: ../src/verbs.cpp:2635
msgid "Duplicate an existing layer"
msgstr ""
-#: ../src/verbs.cpp:2667
+#: ../src/verbs.cpp:2636
msgid "_Delete Current Layer"
msgstr ""
-#: ../src/verbs.cpp:2668
+#: ../src/verbs.cpp:2637
msgid "Delete the current layer"
msgstr ""
-#: ../src/verbs.cpp:2669
+#: ../src/verbs.cpp:2638
msgid "_Show/hide other layers"
msgstr ""
-#: ../src/verbs.cpp:2670
+#: ../src/verbs.cpp:2639
msgid "Solo the current layer"
msgstr ""
-#: ../src/verbs.cpp:2671
+#: ../src/verbs.cpp:2640
msgid "_Show all layers"
msgstr ""
-#: ../src/verbs.cpp:2672
+#: ../src/verbs.cpp:2641
msgid "Show all the layers"
msgstr ""
-#: ../src/verbs.cpp:2673
+#: ../src/verbs.cpp:2642
msgid "_Hide all layers"
msgstr ""
-#: ../src/verbs.cpp:2674
+#: ../src/verbs.cpp:2643
msgid "Hide all the layers"
msgstr ""
-#: ../src/verbs.cpp:2675
+#: ../src/verbs.cpp:2644
msgid "_Lock all layers"
msgstr ""
-#: ../src/verbs.cpp:2676
+#: ../src/verbs.cpp:2645
msgid "Lock all the layers"
msgstr ""
-#: ../src/verbs.cpp:2677
+#: ../src/verbs.cpp:2646
msgid "Lock/Unlock _other layers"
msgstr ""
-#: ../src/verbs.cpp:2678
+#: ../src/verbs.cpp:2647
msgid "Lock all the other layers"
msgstr ""
-#: ../src/verbs.cpp:2679
+#: ../src/verbs.cpp:2648
msgid "_Unlock all layers"
msgstr ""
-#: ../src/verbs.cpp:2680
+#: ../src/verbs.cpp:2649
msgid "Unlock all the layers"
msgstr ""
-#: ../src/verbs.cpp:2681
+#: ../src/verbs.cpp:2650
msgid "_Lock/Unlock Current Layer"
msgstr ""
-#: ../src/verbs.cpp:2682
+#: ../src/verbs.cpp:2651
msgid "Toggle lock on current layer"
msgstr ""
-#: ../src/verbs.cpp:2683
+#: ../src/verbs.cpp:2652
msgid "_Show/hide Current Layer"
msgstr ""
-#: ../src/verbs.cpp:2684
+#: ../src/verbs.cpp:2653
msgid "Toggle visibility of current layer"
msgstr ""
#. Object
-#: ../src/verbs.cpp:2687
+#: ../src/verbs.cpp:2656
msgid "Rotate _90° CW"
msgstr ""
#. This is shared between tooltips and statusbar, so they
#. must use UTF-8, not HTML entities for special characters.
-#: ../src/verbs.cpp:2690
+#: ../src/verbs.cpp:2659
msgid "Rotate selection 90° clockwise"
msgstr ""
-#: ../src/verbs.cpp:2691
+#: ../src/verbs.cpp:2660
msgid "Rotate 9_0° CCW"
msgstr ""
#. This is shared between tooltips and statusbar, so they
#. must use UTF-8, not HTML entities for special characters.
-#: ../src/verbs.cpp:2694
+#: ../src/verbs.cpp:2663
msgid "Rotate selection 90° counter-clockwise"
msgstr ""
-#: ../src/verbs.cpp:2695
+#: ../src/verbs.cpp:2664
msgid "Remove _Transformations"
msgstr ""
-#: ../src/verbs.cpp:2696
+#: ../src/verbs.cpp:2665
msgid "Remove transformations from object"
msgstr ""
-#: ../src/verbs.cpp:2697
+#: ../src/verbs.cpp:2666
msgid "_Object to Path"
msgstr ""
-#: ../src/verbs.cpp:2698
+#: ../src/verbs.cpp:2667
msgid "Convert selected object to path"
msgstr ""
-#: ../src/verbs.cpp:2699
+#: ../src/verbs.cpp:2668
msgid "_Flow into Frame"
msgstr ""
-#: ../src/verbs.cpp:2700
+#: ../src/verbs.cpp:2669
msgid ""
"Put text into a frame (path or shape), creating a flowed text linked to the "
"frame object"
msgstr ""
-#: ../src/verbs.cpp:2701
+#: ../src/verbs.cpp:2670
msgid "_Unflow"
msgstr ""
-#: ../src/verbs.cpp:2702
+#: ../src/verbs.cpp:2671
msgid "Remove text from frame (creates a single-line text object)"
msgstr ""
-#: ../src/verbs.cpp:2703
+#: ../src/verbs.cpp:2672
msgid "_Convert to Text"
msgstr ""
-#: ../src/verbs.cpp:2704
+#: ../src/verbs.cpp:2673
msgid "Convert flowed text to regular text object (preserves appearance)"
msgstr ""
-#: ../src/verbs.cpp:2706
+#: ../src/verbs.cpp:2675
msgid "Flip _Horizontal"
msgstr ""
-#: ../src/verbs.cpp:2706
+#: ../src/verbs.cpp:2675
msgid "Flip selected objects horizontally"
msgstr ""
-#: ../src/verbs.cpp:2709
+#: ../src/verbs.cpp:2678
msgid "Flip _Vertical"
msgstr ""
-#: ../src/verbs.cpp:2709
+#: ../src/verbs.cpp:2678
msgid "Flip selected objects vertically"
msgstr ""
-#: ../src/verbs.cpp:2712
+#: ../src/verbs.cpp:2681
msgid "Apply mask to selection (using the topmost object as mask)"
msgstr ""
-#: ../src/verbs.cpp:2714
+#: ../src/verbs.cpp:2683
msgid "Edit mask"
msgstr ""
-#: ../src/verbs.cpp:2715 ../src/verbs.cpp:2723
+#: ../src/verbs.cpp:2684 ../src/verbs.cpp:2692
msgid "_Release"
msgstr ""
-#: ../src/verbs.cpp:2716
+#: ../src/verbs.cpp:2685
msgid "Remove mask from selection"
msgstr ""
-#: ../src/verbs.cpp:2718
+#: ../src/verbs.cpp:2687
msgid ""
"Apply clipping path to selection (using the topmost object as clipping path)"
msgstr ""
-#: ../src/verbs.cpp:2719
+#: ../src/verbs.cpp:2688
msgid "Create Cl_ip Group"
msgstr ""
-#: ../src/verbs.cpp:2720
+#: ../src/verbs.cpp:2689
msgid "Creates a clip group using the selected objects as a base"
msgstr ""
-#: ../src/verbs.cpp:2722
+#: ../src/verbs.cpp:2691
msgid "Edit clipping path"
msgstr ""
-#: ../src/verbs.cpp:2724
+#: ../src/verbs.cpp:2693
msgid "Remove clipping path from selection"
msgstr ""
#. Tools
-#: ../src/verbs.cpp:2729
+#: ../src/verbs.cpp:2698
msgctxt "ContextVerb"
msgid "Select"
msgstr ""
-#: ../src/verbs.cpp:2730
+#: ../src/verbs.cpp:2699
msgid "Select and transform objects"
msgstr ""
-#: ../src/verbs.cpp:2731
+#: ../src/verbs.cpp:2700
msgctxt "ContextVerb"
msgid "Node Edit"
msgstr ""
-#: ../src/verbs.cpp:2732
+#: ../src/verbs.cpp:2701
msgid "Edit paths by nodes"
msgstr ""
-#: ../src/verbs.cpp:2733
+#: ../src/verbs.cpp:2702
msgctxt "ContextVerb"
msgid "Tweak"
msgstr ""
-#: ../src/verbs.cpp:2734
+#: ../src/verbs.cpp:2703
msgid "Tweak objects by sculpting or painting"
msgstr ""
-#: ../src/verbs.cpp:2735
+#: ../src/verbs.cpp:2704
msgctxt "ContextVerb"
msgid "Spray"
msgstr ""
-#: ../src/verbs.cpp:2736
+#: ../src/verbs.cpp:2705
msgid "Spray objects by sculpting or painting"
msgstr ""
-#: ../src/verbs.cpp:2737
+#: ../src/verbs.cpp:2706
msgctxt "ContextVerb"
msgid "Rectangle"
msgstr ""
-#: ../src/verbs.cpp:2738
+#: ../src/verbs.cpp:2707
msgid "Create rectangles and squares"
msgstr ""
-#: ../src/verbs.cpp:2739
+#: ../src/verbs.cpp:2708
msgctxt "ContextVerb"
msgid "3D Box"
msgstr ""
-#: ../src/verbs.cpp:2740
+#: ../src/verbs.cpp:2709
msgid "Create 3D boxes"
msgstr ""
-#: ../src/verbs.cpp:2741
+#: ../src/verbs.cpp:2710
msgctxt "ContextVerb"
msgid "Ellipse"
msgstr ""
-#: ../src/verbs.cpp:2742
+#: ../src/verbs.cpp:2711
msgid "Create circles, ellipses, and arcs"
msgstr ""
-#: ../src/verbs.cpp:2743
+#: ../src/verbs.cpp:2712
msgctxt "ContextVerb"
msgid "Star"
msgstr ""
-#: ../src/verbs.cpp:2744
+#: ../src/verbs.cpp:2713
msgid "Create stars and polygons"
msgstr ""
-#: ../src/verbs.cpp:2745
+#: ../src/verbs.cpp:2714
msgctxt "ContextVerb"
msgid "Spiral"
msgstr ""
-#: ../src/verbs.cpp:2746
+#: ../src/verbs.cpp:2715
msgid "Create spirals"
msgstr ""
-#: ../src/verbs.cpp:2747
+#: ../src/verbs.cpp:2716
msgctxt "ContextVerb"
msgid "Pencil"
msgstr ""
-#: ../src/verbs.cpp:2748
+#: ../src/verbs.cpp:2717
msgid "Draw freehand lines"
msgstr ""
-#: ../src/verbs.cpp:2749
+#: ../src/verbs.cpp:2718
msgctxt "ContextVerb"
msgid "Pen"
msgstr ""
-#: ../src/verbs.cpp:2750
+#: ../src/verbs.cpp:2719
msgid "Draw Bezier curves and straight lines"
msgstr ""
-#: ../src/verbs.cpp:2751
+#: ../src/verbs.cpp:2720
msgctxt "ContextVerb"
msgid "Calligraphy"
msgstr ""
-#: ../src/verbs.cpp:2752
+#: ../src/verbs.cpp:2721
msgid "Draw calligraphic or brush strokes"
msgstr ""
-#: ../src/verbs.cpp:2754
+#: ../src/verbs.cpp:2723
msgid "Create and edit text objects"
msgstr ""
-#: ../src/verbs.cpp:2755
+#: ../src/verbs.cpp:2724
msgctxt "ContextVerb"
msgid "Gradient"
msgstr ""
-#: ../src/verbs.cpp:2756
+#: ../src/verbs.cpp:2725
msgid "Create and edit gradients"
msgstr ""
-#: ../src/verbs.cpp:2757
+#: ../src/verbs.cpp:2726
msgctxt "ContextVerb"
msgid "Mesh"
msgstr ""
-#: ../src/verbs.cpp:2758
+#: ../src/verbs.cpp:2727
msgid "Create and edit meshes"
msgstr ""
-#: ../src/verbs.cpp:2759
+#: ../src/verbs.cpp:2728
msgctxt "ContextVerb"
msgid "Zoom"
msgstr ""
-#: ../src/verbs.cpp:2760
+#: ../src/verbs.cpp:2729
msgid "Zoom in or out"
msgstr ""
-#: ../src/verbs.cpp:2762
+#: ../src/verbs.cpp:2731
msgid "Measurement tool"
msgstr ""
-#: ../src/verbs.cpp:2763
+#: ../src/verbs.cpp:2732
msgctxt "ContextVerb"
msgid "Dropper"
msgstr ""
-#: ../src/verbs.cpp:2764 ../src/widgets/sp-color-notebook.cpp:396
-msgid "Pick colors from image"
-msgstr ""
-
-#: ../src/verbs.cpp:2765
+#: ../src/verbs.cpp:2734
msgctxt "ContextVerb"
msgid "Connector"
msgstr ""
-#: ../src/verbs.cpp:2766
+#: ../src/verbs.cpp:2735
msgid "Create diagram connectors"
msgstr ""
-#: ../src/verbs.cpp:2767
+#: ../src/verbs.cpp:2736
msgctxt "ContextVerb"
msgid "Paint Bucket"
msgstr ""
-#: ../src/verbs.cpp:2768
+#: ../src/verbs.cpp:2737
msgid "Fill bounded areas"
msgstr ""
-#: ../src/verbs.cpp:2769
+#: ../src/verbs.cpp:2738
msgctxt "ContextVerb"
msgid "LPE Edit"
msgstr ""
-#: ../src/verbs.cpp:2770
+#: ../src/verbs.cpp:2739
msgid "Edit Path Effect parameters"
msgstr ""
-#: ../src/verbs.cpp:2771
+#: ../src/verbs.cpp:2740
msgctxt "ContextVerb"
msgid "Eraser"
msgstr ""
-#: ../src/verbs.cpp:2772
+#: ../src/verbs.cpp:2741
msgid "Erase existing paths"
msgstr ""
-#: ../src/verbs.cpp:2773
+#: ../src/verbs.cpp:2742
msgctxt "ContextVerb"
msgid "LPE Tool"
msgstr ""
-#: ../src/verbs.cpp:2774
+#: ../src/verbs.cpp:2743
msgid "Do geometric constructions"
msgstr ""
#. Tool prefs
-#: ../src/verbs.cpp:2776
+#: ../src/verbs.cpp:2745
msgid "Selector Preferences"
msgstr ""
-#: ../src/verbs.cpp:2777
+#: ../src/verbs.cpp:2746
msgid "Open Preferences for the Selector tool"
msgstr ""
-#: ../src/verbs.cpp:2778
+#: ../src/verbs.cpp:2747
msgid "Node Tool Preferences"
msgstr ""
-#: ../src/verbs.cpp:2779
+#: ../src/verbs.cpp:2748
msgid "Open Preferences for the Node tool"
msgstr ""
-#: ../src/verbs.cpp:2780
+#: ../src/verbs.cpp:2749
msgid "Tweak Tool Preferences"
msgstr ""
-#: ../src/verbs.cpp:2781
+#: ../src/verbs.cpp:2750
msgid "Open Preferences for the Tweak tool"
msgstr ""
-#: ../src/verbs.cpp:2782
+#: ../src/verbs.cpp:2751
msgid "Spray Tool Preferences"
msgstr ""
-#: ../src/verbs.cpp:2783
+#: ../src/verbs.cpp:2752
msgid "Open Preferences for the Spray tool"
msgstr ""
-#: ../src/verbs.cpp:2784
+#: ../src/verbs.cpp:2753
msgid "Rectangle Preferences"
msgstr ""
-#: ../src/verbs.cpp:2785
+#: ../src/verbs.cpp:2754
msgid "Open Preferences for the Rectangle tool"
msgstr ""
-#: ../src/verbs.cpp:2786
+#: ../src/verbs.cpp:2755
msgid "3D Box Preferences"
msgstr ""
-#: ../src/verbs.cpp:2787
+#: ../src/verbs.cpp:2756
msgid "Open Preferences for the 3D Box tool"
msgstr ""
-#: ../src/verbs.cpp:2788
+#: ../src/verbs.cpp:2757
msgid "Ellipse Preferences"
msgstr ""
-#: ../src/verbs.cpp:2789
+#: ../src/verbs.cpp:2758
msgid "Open Preferences for the Ellipse tool"
msgstr ""
-#: ../src/verbs.cpp:2790
+#: ../src/verbs.cpp:2759
msgid "Star Preferences"
msgstr ""
-#: ../src/verbs.cpp:2791
+#: ../src/verbs.cpp:2760
msgid "Open Preferences for the Star tool"
msgstr ""
-#: ../src/verbs.cpp:2792
+#: ../src/verbs.cpp:2761
msgid "Spiral Preferences"
msgstr ""
-#: ../src/verbs.cpp:2793
+#: ../src/verbs.cpp:2762
msgid "Open Preferences for the Spiral tool"
msgstr ""
-#: ../src/verbs.cpp:2794
+#: ../src/verbs.cpp:2763
msgid "Pencil Preferences"
msgstr ""
-#: ../src/verbs.cpp:2795
+#: ../src/verbs.cpp:2764
msgid "Open Preferences for the Pencil tool"
msgstr ""
-#: ../src/verbs.cpp:2796
+#: ../src/verbs.cpp:2765
msgid "Pen Preferences"
msgstr ""
-#: ../src/verbs.cpp:2797
+#: ../src/verbs.cpp:2766
msgid "Open Preferences for the Pen tool"
msgstr ""
-#: ../src/verbs.cpp:2798
+#: ../src/verbs.cpp:2767
msgid "Calligraphic Preferences"
msgstr ""
-#: ../src/verbs.cpp:2799
+#: ../src/verbs.cpp:2768
msgid "Open Preferences for the Calligraphy tool"
msgstr ""
-#: ../src/verbs.cpp:2800
+#: ../src/verbs.cpp:2769
msgid "Text Preferences"
msgstr ""
-#: ../src/verbs.cpp:2801
+#: ../src/verbs.cpp:2770
msgid "Open Preferences for the Text tool"
msgstr ""
-#: ../src/verbs.cpp:2802
+#: ../src/verbs.cpp:2771
msgid "Gradient Preferences"
msgstr ""
-#: ../src/verbs.cpp:2803
+#: ../src/verbs.cpp:2772
msgid "Open Preferences for the Gradient tool"
msgstr ""
-#: ../src/verbs.cpp:2804
+#: ../src/verbs.cpp:2773
msgid "Mesh Preferences"
msgstr ""
-#: ../src/verbs.cpp:2805
+#: ../src/verbs.cpp:2774
msgid "Open Preferences for the Mesh tool"
msgstr ""
-#: ../src/verbs.cpp:2806
+#: ../src/verbs.cpp:2775
msgid "Zoom Preferences"
msgstr ""
-#: ../src/verbs.cpp:2807
+#: ../src/verbs.cpp:2776
msgid "Open Preferences for the Zoom tool"
msgstr ""
-#: ../src/verbs.cpp:2808
+#: ../src/verbs.cpp:2777
msgid "Measure Preferences"
msgstr ""
-#: ../src/verbs.cpp:2809
+#: ../src/verbs.cpp:2778
msgid "Open Preferences for the Measure tool"
msgstr ""
-#: ../src/verbs.cpp:2810
+#: ../src/verbs.cpp:2779
msgid "Dropper Preferences"
msgstr ""
-#: ../src/verbs.cpp:2811
+#: ../src/verbs.cpp:2780
msgid "Open Preferences for the Dropper tool"
msgstr ""
-#: ../src/verbs.cpp:2812
+#: ../src/verbs.cpp:2781
msgid "Connector Preferences"
msgstr ""
-#: ../src/verbs.cpp:2813
+#: ../src/verbs.cpp:2782
msgid "Open Preferences for the Connector tool"
msgstr ""
-#: ../src/verbs.cpp:2814
+#: ../src/verbs.cpp:2783
msgid "Paint Bucket Preferences"
msgstr ""
-#: ../src/verbs.cpp:2815
+#: ../src/verbs.cpp:2784
msgid "Open Preferences for the Paint Bucket tool"
msgstr ""
-#: ../src/verbs.cpp:2816
+#: ../src/verbs.cpp:2785
msgid "Eraser Preferences"
msgstr ""
-#: ../src/verbs.cpp:2817
+#: ../src/verbs.cpp:2786
msgid "Open Preferences for the Eraser tool"
msgstr ""
-#: ../src/verbs.cpp:2818
+#: ../src/verbs.cpp:2787
msgid "LPE Tool Preferences"
msgstr ""
-#: ../src/verbs.cpp:2819
+#: ../src/verbs.cpp:2788
msgid "Open Preferences for the LPETool tool"
msgstr ""
#. Zoom/View
-#: ../src/verbs.cpp:2821
+#: ../src/verbs.cpp:2790
msgid "Zoom In"
msgstr ""
-#: ../src/verbs.cpp:2821
+#: ../src/verbs.cpp:2790
msgid "Zoom in"
msgstr ""
-#: ../src/verbs.cpp:2822
+#: ../src/verbs.cpp:2791
msgid "Zoom Out"
msgstr ""
-#: ../src/verbs.cpp:2822
+#: ../src/verbs.cpp:2791
msgid "Zoom out"
msgstr ""
-#: ../src/verbs.cpp:2823
+#: ../src/verbs.cpp:2792
msgid "_Rulers"
msgstr ""
-#: ../src/verbs.cpp:2823
+#: ../src/verbs.cpp:2792
msgid "Show or hide the canvas rulers"
msgstr ""
-#: ../src/verbs.cpp:2824
+#: ../src/verbs.cpp:2793
msgid "Scroll_bars"
msgstr ""
-#: ../src/verbs.cpp:2824
+#: ../src/verbs.cpp:2793
msgid "Show or hide the canvas scrollbars"
msgstr ""
-#: ../src/verbs.cpp:2825
+#: ../src/verbs.cpp:2794
msgid "Page _Grid"
msgstr ""
-#: ../src/verbs.cpp:2825
+#: ../src/verbs.cpp:2794
msgid "Show or hide the page grid"
msgstr ""
-#: ../src/verbs.cpp:2826
+#: ../src/verbs.cpp:2795
msgid "G_uides"
msgstr ""
-#: ../src/verbs.cpp:2826
+#: ../src/verbs.cpp:2795
msgid "Show or hide guides (drag from a ruler to create a guide)"
msgstr ""
-#: ../src/verbs.cpp:2827
+#: ../src/verbs.cpp:2796
msgid "Enable snapping"
msgstr ""
-#: ../src/verbs.cpp:2828
+#: ../src/verbs.cpp:2797
msgid "_Commands Bar"
msgstr ""
-#: ../src/verbs.cpp:2828
+#: ../src/verbs.cpp:2797
msgid "Show or hide the Commands bar (under the menu)"
msgstr ""
-#: ../src/verbs.cpp:2829
+#: ../src/verbs.cpp:2798
msgid "Sn_ap Controls Bar"
msgstr ""
-#: ../src/verbs.cpp:2829
+#: ../src/verbs.cpp:2798
msgid "Show or hide the snapping controls"
msgstr ""
-#: ../src/verbs.cpp:2830
+#: ../src/verbs.cpp:2799
msgid "T_ool Controls Bar"
msgstr ""
-#: ../src/verbs.cpp:2830
+#: ../src/verbs.cpp:2799
msgid "Show or hide the Tool Controls bar"
msgstr ""
-#: ../src/verbs.cpp:2831
+#: ../src/verbs.cpp:2800
msgid "_Toolbox"
msgstr ""
-#: ../src/verbs.cpp:2831
+#: ../src/verbs.cpp:2800
msgid "Show or hide the main toolbox (on the left)"
msgstr ""
-#: ../src/verbs.cpp:2832
+#: ../src/verbs.cpp:2801
msgid "_Palette"
msgstr ""
-#: ../src/verbs.cpp:2832
+#: ../src/verbs.cpp:2801
msgid "Show or hide the color palette"
msgstr ""
-#: ../src/verbs.cpp:2833
+#: ../src/verbs.cpp:2802
msgid "_Statusbar"
msgstr ""
-#: ../src/verbs.cpp:2833
+#: ../src/verbs.cpp:2802
msgid "Show or hide the statusbar (at the bottom of the window)"
msgstr ""
-#: ../src/verbs.cpp:2834
+#: ../src/verbs.cpp:2803
msgid "Nex_t Zoom"
msgstr ""
-#: ../src/verbs.cpp:2834
+#: ../src/verbs.cpp:2803
msgid "Next zoom (from the history of zooms)"
msgstr ""
-#: ../src/verbs.cpp:2836
+#: ../src/verbs.cpp:2805
msgid "Pre_vious Zoom"
msgstr ""
-#: ../src/verbs.cpp:2836
+#: ../src/verbs.cpp:2805
msgid "Previous zoom (from the history of zooms)"
msgstr ""
-#: ../src/verbs.cpp:2838
+#: ../src/verbs.cpp:2807
msgid "Zoom 1:_1"
msgstr ""
-#: ../src/verbs.cpp:2838
+#: ../src/verbs.cpp:2807
msgid "Zoom to 1:1"
msgstr ""
-#: ../src/verbs.cpp:2840
+#: ../src/verbs.cpp:2809
msgid "Zoom 1:_2"
msgstr ""
-#: ../src/verbs.cpp:2840
+#: ../src/verbs.cpp:2809
msgid "Zoom to 1:2"
msgstr ""
-#: ../src/verbs.cpp:2842
+#: ../src/verbs.cpp:2811
msgid "_Zoom 2:1"
msgstr ""
-#: ../src/verbs.cpp:2842
+#: ../src/verbs.cpp:2811
msgid "Zoom to 2:1"
msgstr ""
-#: ../src/verbs.cpp:2845
+#: ../src/verbs.cpp:2814
msgid "_Fullscreen"
msgstr ""
-#: ../src/verbs.cpp:2845 ../src/verbs.cpp:2847
+#: ../src/verbs.cpp:2814 ../src/verbs.cpp:2816
msgid "Stretch this document window to full screen"
msgstr ""
-#: ../src/verbs.cpp:2847
+#: ../src/verbs.cpp:2816
msgid "Fullscreen & Focus Mode"
msgstr ""
-#: ../src/verbs.cpp:2850
+#: ../src/verbs.cpp:2819
msgid "Toggle _Focus Mode"
msgstr ""
-#: ../src/verbs.cpp:2850
+#: ../src/verbs.cpp:2819
msgid "Remove excess toolbars to focus on drawing"
msgstr ""
-#: ../src/verbs.cpp:2852
+#: ../src/verbs.cpp:2821
msgid "Duplic_ate Window"
msgstr ""
-#: ../src/verbs.cpp:2852
+#: ../src/verbs.cpp:2821
msgid "Open a new window with the same document"
msgstr ""
-#: ../src/verbs.cpp:2854
+#: ../src/verbs.cpp:2823
msgid "_New View Preview"
msgstr ""
-#: ../src/verbs.cpp:2855
+#: ../src/verbs.cpp:2824
msgid "New View Preview"
msgstr ""
#. "view_new_preview"
-#: ../src/verbs.cpp:2857 ../src/verbs.cpp:2865
+#: ../src/verbs.cpp:2826 ../src/verbs.cpp:2834
msgid "_Normal"
msgstr ""
-#: ../src/verbs.cpp:2858
+#: ../src/verbs.cpp:2827
msgid "Switch to normal display mode"
msgstr ""
-#: ../src/verbs.cpp:2859
+#: ../src/verbs.cpp:2828
msgid "No _Filters"
msgstr ""
-#: ../src/verbs.cpp:2860
+#: ../src/verbs.cpp:2829
msgid "Switch to normal display without filters"
msgstr ""
-#: ../src/verbs.cpp:2861
+#: ../src/verbs.cpp:2830
msgid "_Outline"
msgstr ""
-#: ../src/verbs.cpp:2862
+#: ../src/verbs.cpp:2831
msgid "Switch to outline (wireframe) display mode"
msgstr ""
#. new ZoomVerb(SP_VERB_VIEW_COLOR_MODE_PRINT_COLORS_PREVIEW, "ViewColorModePrintColorsPreview", N_("_Print Colors Preview"),
#. N_("Switch to print colors preview mode"), NULL),
-#: ../src/verbs.cpp:2863 ../src/verbs.cpp:2871
+#: ../src/verbs.cpp:2832 ../src/verbs.cpp:2840
msgid "_Toggle"
msgstr ""
-#: ../src/verbs.cpp:2864
+#: ../src/verbs.cpp:2833
msgid "Toggle between normal and outline display modes"
msgstr ""
-#: ../src/verbs.cpp:2866
+#: ../src/verbs.cpp:2835
msgid "Switch to normal color display mode"
msgstr ""
-#: ../src/verbs.cpp:2867
+#: ../src/verbs.cpp:2836
msgid "_Grayscale"
msgstr ""
-#: ../src/verbs.cpp:2868
+#: ../src/verbs.cpp:2837
msgid "Switch to grayscale display mode"
msgstr ""
-#: ../src/verbs.cpp:2872
+#: ../src/verbs.cpp:2841
msgid "Toggle between normal and grayscale color display modes"
msgstr ""
-#: ../src/verbs.cpp:2874
+#: ../src/verbs.cpp:2843
msgid "Color-managed view"
msgstr ""
-#: ../src/verbs.cpp:2875
+#: ../src/verbs.cpp:2844
msgid "Toggle color-managed display for this document window"
msgstr ""
-#: ../src/verbs.cpp:2877
+#: ../src/verbs.cpp:2846
msgid "Ico_n Preview..."
msgstr ""
-#: ../src/verbs.cpp:2878
+#: ../src/verbs.cpp:2847
msgid "Open a window to preview objects at different icon resolutions"
msgstr ""
-#: ../src/verbs.cpp:2880
+#: ../src/verbs.cpp:2849
msgid "Zoom to fit page in window"
msgstr ""
-#: ../src/verbs.cpp:2881
+#: ../src/verbs.cpp:2850
msgid "Page _Width"
msgstr ""
-#: ../src/verbs.cpp:2882
+#: ../src/verbs.cpp:2851
msgid "Zoom to fit page width in window"
msgstr ""
-#: ../src/verbs.cpp:2884
+#: ../src/verbs.cpp:2853
msgid "Zoom to fit drawing in window"
msgstr ""
-#: ../src/verbs.cpp:2886
+#: ../src/verbs.cpp:2855
msgid "Zoom to fit selection in window"
msgstr ""
#. Dialogs
-#: ../src/verbs.cpp:2889
+#: ../src/verbs.cpp:2858
msgid "P_references..."
msgstr ""
-#: ../src/verbs.cpp:2890
+#: ../src/verbs.cpp:2859
msgid "Edit global Inkscape preferences"
msgstr ""
-#: ../src/verbs.cpp:2891
+#: ../src/verbs.cpp:2860
msgid "_Document Properties..."
msgstr ""
-#: ../src/verbs.cpp:2892
+#: ../src/verbs.cpp:2861
msgid "Edit properties of this document (to be saved with the document)"
msgstr ""
-#: ../src/verbs.cpp:2893
+#: ../src/verbs.cpp:2862
msgid "Document _Metadata..."
msgstr ""
-#: ../src/verbs.cpp:2894
+#: ../src/verbs.cpp:2863
msgid "Edit document metadata (to be saved with the document)"
msgstr ""
-#: ../src/verbs.cpp:2896
+#: ../src/verbs.cpp:2865
msgid ""
"Edit objects' colors, gradients, arrowheads, and other fill and stroke "
"properties..."
msgstr ""
#. FIXME: Probably better to either use something from the icon naming spec or ship our own "select-font" icon
-#: ../src/verbs.cpp:2898
+#: ../src/verbs.cpp:2867
msgid "Gl_yphs..."
msgstr ""
-#: ../src/verbs.cpp:2899
+#: ../src/verbs.cpp:2868
msgid "Select characters from a glyphs palette"
msgstr ""
#. FIXME: Probably better to either use something from the icon naming spec or ship our own "select-color" icon
#. TRANSLATORS: "Swatches" means: color samples
-#: ../src/verbs.cpp:2902
+#: ../src/verbs.cpp:2871
msgid "S_watches..."
msgstr ""
-#: ../src/verbs.cpp:2903
+#: ../src/verbs.cpp:2872
msgid "Select colors from a swatches palette"
msgstr ""
-#: ../src/verbs.cpp:2904
+#: ../src/verbs.cpp:2873
msgid "S_ymbols..."
msgstr ""
-#: ../src/verbs.cpp:2905
+#: ../src/verbs.cpp:2874
msgid "Select symbol from a symbols palette"
msgstr ""
-#: ../src/verbs.cpp:2906
+#: ../src/verbs.cpp:2875
msgid "Transfor_m..."
msgstr ""
-#: ../src/verbs.cpp:2907
+#: ../src/verbs.cpp:2876
msgid "Precisely control objects' transformations"
msgstr ""
-#: ../src/verbs.cpp:2908
+#: ../src/verbs.cpp:2877
msgid "_Align and Distribute..."
msgstr ""
-#: ../src/verbs.cpp:2909
+#: ../src/verbs.cpp:2878
msgid "Align and distribute objects"
msgstr ""
-#: ../src/verbs.cpp:2910
+#: ../src/verbs.cpp:2879
msgid "_Spray options..."
msgstr ""
-#: ../src/verbs.cpp:2911
+#: ../src/verbs.cpp:2880
msgid "Some options for the spray"
msgstr ""
-#: ../src/verbs.cpp:2912
+#: ../src/verbs.cpp:2881
msgid "Undo _History..."
msgstr ""
-#: ../src/verbs.cpp:2913
+#: ../src/verbs.cpp:2882
msgid "Undo History"
msgstr ""
-#: ../src/verbs.cpp:2915
+#: ../src/verbs.cpp:2884
msgid "View and select font family, font size and other text properties"
msgstr ""
-#: ../src/verbs.cpp:2916
+#: ../src/verbs.cpp:2885
msgid "_XML Editor..."
msgstr ""
-#: ../src/verbs.cpp:2917
+#: ../src/verbs.cpp:2886
msgid "View and edit the XML tree of the document"
msgstr ""
-#: ../src/verbs.cpp:2918
+#: ../src/verbs.cpp:2887
msgid "_Find/Replace..."
msgstr ""
-#: ../src/verbs.cpp:2919
+#: ../src/verbs.cpp:2888
msgid "Find objects in document"
msgstr ""
-#: ../src/verbs.cpp:2920
+#: ../src/verbs.cpp:2889
msgid "Find and _Replace Text..."
msgstr ""
-#: ../src/verbs.cpp:2921
+#: ../src/verbs.cpp:2890
msgid "Find and replace text in document"
msgstr ""
-#: ../src/verbs.cpp:2923
+#: ../src/verbs.cpp:2892
msgid "Check spelling of text in document"
msgstr ""
-#: ../src/verbs.cpp:2924
+#: ../src/verbs.cpp:2893
msgid "_Messages..."
msgstr ""
-#: ../src/verbs.cpp:2925
+#: ../src/verbs.cpp:2894
msgid "View debug messages"
msgstr ""
-#: ../src/verbs.cpp:2926
+#: ../src/verbs.cpp:2895
msgid "Show/Hide D_ialogs"
msgstr ""
-#: ../src/verbs.cpp:2927
+#: ../src/verbs.cpp:2896
msgid "Show or hide all open dialogs"
msgstr ""
-#: ../src/verbs.cpp:2928
+#: ../src/verbs.cpp:2897
msgid "Create Tiled Clones..."
msgstr ""
-#: ../src/verbs.cpp:2929
+#: ../src/verbs.cpp:2898
msgid ""
"Create multiple clones of selected object, arranging them into a pattern or "
"scattering"
msgstr ""
-#: ../src/verbs.cpp:2930
+#: ../src/verbs.cpp:2899
msgid "_Object attributes..."
msgstr ""
-#: ../src/verbs.cpp:2931
+#: ../src/verbs.cpp:2900
msgid "Edit the object attributes..."
msgstr ""
-#: ../src/verbs.cpp:2933
+#: ../src/verbs.cpp:2902
msgid "Edit the ID, locked and visible status, and other object properties"
msgstr ""
-#: ../src/verbs.cpp:2934
+#: ../src/verbs.cpp:2903
msgid "_Input Devices..."
msgstr ""
-#: ../src/verbs.cpp:2935
+#: ../src/verbs.cpp:2904
msgid "Configure extended input devices, such as a graphics tablet"
msgstr ""
-#: ../src/verbs.cpp:2936
+#: ../src/verbs.cpp:2905
msgid "_Extensions..."
msgstr ""
-#: ../src/verbs.cpp:2937
+#: ../src/verbs.cpp:2906
msgid "Query information about extensions"
msgstr ""
-#: ../src/verbs.cpp:2938
+#: ../src/verbs.cpp:2907
msgid "Layer_s..."
msgstr ""
-#: ../src/verbs.cpp:2939
+#: ../src/verbs.cpp:2908
msgid "View Layers"
msgstr ""
-#: ../src/verbs.cpp:2940
+#: ../src/verbs.cpp:2909
msgid "Object_s..."
msgstr ""
-#: ../src/verbs.cpp:2941
+#: ../src/verbs.cpp:2910
msgid "View Objects"
msgstr ""
-#: ../src/verbs.cpp:2942
+#: ../src/verbs.cpp:2911
msgid "Selection se_ts..."
msgstr ""
-#: ../src/verbs.cpp:2943
+#: ../src/verbs.cpp:2912
msgid "View Tags"
msgstr ""
-#: ../src/verbs.cpp:2944
+#: ../src/verbs.cpp:2913
msgid "Path E_ffects ..."
msgstr ""
-#: ../src/verbs.cpp:2945
+#: ../src/verbs.cpp:2914
msgid "Manage, edit, and apply path effects"
msgstr ""
-#: ../src/verbs.cpp:2946
+#: ../src/verbs.cpp:2915
msgid "Filter _Editor..."
msgstr ""
-#: ../src/verbs.cpp:2947
+#: ../src/verbs.cpp:2916
msgid "Manage, edit, and apply SVG filters"
msgstr ""
-#: ../src/verbs.cpp:2948
+#: ../src/verbs.cpp:2917
msgid "SVG Font Editor..."
msgstr ""
-#: ../src/verbs.cpp:2949
+#: ../src/verbs.cpp:2918
msgid "Edit SVG fonts"
msgstr ""
-#: ../src/verbs.cpp:2950
+#: ../src/verbs.cpp:2919
msgid "Print Colors..."
msgstr ""
-#: ../src/verbs.cpp:2951
+#: ../src/verbs.cpp:2920
msgid ""
"Select which color separations to render in Print Colors Preview rendermode"
msgstr ""
-#: ../src/verbs.cpp:2952
+#: ../src/verbs.cpp:2921
msgid "_Export PNG Image..."
msgstr ""
-#: ../src/verbs.cpp:2953
+#: ../src/verbs.cpp:2922
msgid "Export this document or a selection as a PNG image"
msgstr ""
#. Help
-#: ../src/verbs.cpp:2955
+#: ../src/verbs.cpp:2924
msgid "About E_xtensions"
msgstr ""
-#: ../src/verbs.cpp:2956
+#: ../src/verbs.cpp:2925
msgid "Information on Inkscape extensions"
msgstr ""
-#: ../src/verbs.cpp:2957
+#: ../src/verbs.cpp:2926
msgid "About _Memory"
msgstr ""
-#: ../src/verbs.cpp:2958
+#: ../src/verbs.cpp:2927
msgid "Memory usage information"
msgstr ""
-#: ../src/verbs.cpp:2959
+#: ../src/verbs.cpp:2928
msgid "_About Inkscape"
msgstr ""
-#: ../src/verbs.cpp:2960
+#: ../src/verbs.cpp:2929
msgid "Inkscape version, authors, license"
msgstr ""
#. new HelpVerb(SP_VERB_SHOW_LICENSE, "ShowLicense", N_("_License"),
#. N_("Distribution terms"), /*"show_license"*/"inkscape_options"),
#. Tutorials
-#: ../src/verbs.cpp:2965
+#: ../src/verbs.cpp:2934
msgid "Inkscape: _Basic"
msgstr ""
-#: ../src/verbs.cpp:2966
+#: ../src/verbs.cpp:2935
msgid "Getting started with Inkscape"
msgstr ""
#. "tutorial_basic"
-#: ../src/verbs.cpp:2967
+#: ../src/verbs.cpp:2936
msgid "Inkscape: _Shapes"
msgstr ""
-#: ../src/verbs.cpp:2968
+#: ../src/verbs.cpp:2937
msgid "Using shape tools to create and edit shapes"
msgstr ""
-#: ../src/verbs.cpp:2969
+#: ../src/verbs.cpp:2938
msgid "Inkscape: _Advanced"
msgstr ""
-#: ../src/verbs.cpp:2970
+#: ../src/verbs.cpp:2939
msgid "Advanced Inkscape topics"
msgstr ""
#. "tutorial_advanced"
#. TRANSLATORS: "to trace" means "to convert a bitmap to vector graphics" (to vectorize)
-#: ../src/verbs.cpp:2972
+#: ../src/verbs.cpp:2941
msgid "Inkscape: T_racing"
msgstr ""
-#: ../src/verbs.cpp:2973
+#: ../src/verbs.cpp:2942
msgid "Using bitmap tracing"
msgstr ""
#. "tutorial_tracing"
-#: ../src/verbs.cpp:2974
+#: ../src/verbs.cpp:2943
msgid "Inkscape: Tracing Pixel Art"
msgstr ""
-#: ../src/verbs.cpp:2975
+#: ../src/verbs.cpp:2944
msgid "Using Trace Pixel Art dialog"
msgstr ""
-#: ../src/verbs.cpp:2976
+#: ../src/verbs.cpp:2945
msgid "Inkscape: _Calligraphy"
msgstr ""
-#: ../src/verbs.cpp:2977
+#: ../src/verbs.cpp:2946
msgid "Using the Calligraphy pen tool"
msgstr ""
-#: ../src/verbs.cpp:2978
+#: ../src/verbs.cpp:2947
msgid "Inkscape: _Interpolate"
msgstr ""
-#: ../src/verbs.cpp:2979
+#: ../src/verbs.cpp:2948
msgid "Using the interpolate extension"
msgstr ""
#. "tutorial_interpolate"
-#: ../src/verbs.cpp:2980
+#: ../src/verbs.cpp:2949
msgid "_Elements of Design"
msgstr ""
-#: ../src/verbs.cpp:2981
+#: ../src/verbs.cpp:2950
msgid "Principles of design in the tutorial form"
msgstr ""
#. "tutorial_design"
-#: ../src/verbs.cpp:2982
+#: ../src/verbs.cpp:2951
msgid "_Tips and Tricks"
msgstr ""
-#: ../src/verbs.cpp:2983
+#: ../src/verbs.cpp:2952
msgid "Miscellaneous tips and tricks"
msgstr ""
#. "tutorial_tips"
#. Effect -- renamed Extension
-#: ../src/verbs.cpp:2986
+#: ../src/verbs.cpp:2955
msgid "Previous Exte_nsion"
msgstr ""
-#: ../src/verbs.cpp:2987
+#: ../src/verbs.cpp:2956
msgid "Repeat the last extension with the same settings"
msgstr ""
-#: ../src/verbs.cpp:2988
+#: ../src/verbs.cpp:2957
msgid "_Previous Extension Settings..."
msgstr ""
-#: ../src/verbs.cpp:2989
+#: ../src/verbs.cpp:2958
msgid "Repeat the last extension with new settings"
msgstr ""
-#: ../src/verbs.cpp:2993
+#: ../src/verbs.cpp:2962
msgid "Fit the page to the current selection"
msgstr ""
-#: ../src/verbs.cpp:2995
+#: ../src/verbs.cpp:2964
msgid "Fit the page to the drawing"
msgstr ""
-#: ../src/verbs.cpp:2997
+#: ../src/verbs.cpp:2966
msgid ""
"Fit the page to the current selection or the drawing if there is no selection"
msgstr ""
#. LockAndHide
-#: ../src/verbs.cpp:2999
+#: ../src/verbs.cpp:2968
msgid "Unlock All"
msgstr ""
-#: ../src/verbs.cpp:3001
+#: ../src/verbs.cpp:2970
msgid "Unlock All in All Layers"
msgstr ""
-#: ../src/verbs.cpp:3003
+#: ../src/verbs.cpp:2972
msgid "Unhide All"
msgstr ""
-#: ../src/verbs.cpp:3005
+#: ../src/verbs.cpp:2974
msgid "Unhide All in All Layers"
msgstr ""
-#: ../src/verbs.cpp:3009
+#: ../src/verbs.cpp:2978
msgid "Link an ICC color profile"
msgstr ""
-#: ../src/verbs.cpp:3010
+#: ../src/verbs.cpp:2979
msgid "Remove Color Profile"
msgstr ""
-#: ../src/verbs.cpp:3011
+#: ../src/verbs.cpp:2980
msgid "Remove a linked ICC color profile"
msgstr ""
-#: ../src/verbs.cpp:3014
+#: ../src/verbs.cpp:2983
msgid "Add External Script"
msgstr ""
-#: ../src/verbs.cpp:3014
+#: ../src/verbs.cpp:2983
msgid "Add an external script"
msgstr ""
-#: ../src/verbs.cpp:3016
+#: ../src/verbs.cpp:2985
msgid "Add Embedded Script"
msgstr ""
-#: ../src/verbs.cpp:3016
+#: ../src/verbs.cpp:2985
msgid "Add an embedded script"
msgstr ""
-#: ../src/verbs.cpp:3018
+#: ../src/verbs.cpp:2987
msgid "Edit Embedded Script"
msgstr ""
-#: ../src/verbs.cpp:3018
+#: ../src/verbs.cpp:2987
msgid "Edit an embedded script"
msgstr ""
-#: ../src/verbs.cpp:3020
+#: ../src/verbs.cpp:2989
msgid "Remove External Script"
msgstr ""
-#: ../src/verbs.cpp:3020
+#: ../src/verbs.cpp:2989
msgid "Remove an external script"
msgstr ""
-#: ../src/verbs.cpp:3022
+#: ../src/verbs.cpp:2991
msgid "Remove Embedded Script"
msgstr ""
-#: ../src/verbs.cpp:3022
+#: ../src/verbs.cpp:2991
msgid "Remove an embedded script"
msgstr ""
-#: ../src/verbs.cpp:3044 ../src/verbs.cpp:3045
+#: ../src/verbs.cpp:3013 ../src/verbs.cpp:3014
msgid "Center on horizontal and vertical axis"
msgstr ""
-#: ../src/widgets/arc-toolbar.cpp:132
+#: ../src/widgets/arc-toolbar.cpp:129
msgid "Arc: Change start/end"
msgstr ""
-#: ../src/widgets/arc-toolbar.cpp:198
+#: ../src/widgets/arc-toolbar.cpp:191
msgid "Arc: Change open/closed"
msgstr ""
-#: ../src/widgets/arc-toolbar.cpp:289 ../src/widgets/arc-toolbar.cpp:319
+#: ../src/widgets/arc-toolbar.cpp:280 ../src/widgets/arc-toolbar.cpp:310
#: ../src/widgets/rect-toolbar.cpp:260 ../src/widgets/rect-toolbar.cpp:299
-#: ../src/widgets/spiral-toolbar.cpp:214 ../src/widgets/spiral-toolbar.cpp:238
-#: ../src/widgets/star-toolbar.cpp:384 ../src/widgets/star-toolbar.cpp:446
+#: ../src/widgets/spiral-toolbar.cpp:210 ../src/widgets/spiral-toolbar.cpp:234
+#: ../src/widgets/star-toolbar.cpp:382 ../src/widgets/star-toolbar.cpp:444
msgid "<b>New:</b>"
msgstr ""
#. FIXME: implement averaging of all parameters for multiple selected
#. gtk_label_set_markup(GTK_LABEL(l), _("<b>Average:</b>"));
-#: ../src/widgets/arc-toolbar.cpp:292 ../src/widgets/arc-toolbar.cpp:303
+#: ../src/widgets/arc-toolbar.cpp:283 ../src/widgets/arc-toolbar.cpp:294
#: ../src/widgets/rect-toolbar.cpp:268 ../src/widgets/rect-toolbar.cpp:286
-#: ../src/widgets/spiral-toolbar.cpp:216 ../src/widgets/spiral-toolbar.cpp:227
-#: ../src/widgets/star-toolbar.cpp:386
+#: ../src/widgets/spiral-toolbar.cpp:212 ../src/widgets/spiral-toolbar.cpp:223
+#: ../src/widgets/star-toolbar.cpp:384
msgid "<b>Change:</b>"
msgstr ""
-#: ../src/widgets/arc-toolbar.cpp:328
+#: ../src/widgets/arc-toolbar.cpp:319
msgid "Start:"
msgstr ""
-#: ../src/widgets/arc-toolbar.cpp:329
+#: ../src/widgets/arc-toolbar.cpp:320
msgid "The angle (in degrees) from the horizontal to the arc's start point"
msgstr ""
-#: ../src/widgets/arc-toolbar.cpp:341
+#: ../src/widgets/arc-toolbar.cpp:332
msgid "End:"
msgstr ""
-#: ../src/widgets/arc-toolbar.cpp:342
+#: ../src/widgets/arc-toolbar.cpp:333
msgid "The angle (in degrees) from the horizontal to the arc's end point"
msgstr ""
-#: ../src/widgets/arc-toolbar.cpp:358
+#: ../src/widgets/arc-toolbar.cpp:349
msgid "Closed arc"
msgstr ""
-#: ../src/widgets/arc-toolbar.cpp:359
+#: ../src/widgets/arc-toolbar.cpp:350
msgid "Switch to segment (closed shape with two radii)"
msgstr ""
-#: ../src/widgets/arc-toolbar.cpp:365
+#: ../src/widgets/arc-toolbar.cpp:356
msgid "Open Arc"
msgstr ""
-#: ../src/widgets/arc-toolbar.cpp:366
+#: ../src/widgets/arc-toolbar.cpp:357
msgid "Switch to arc (unclosed shape)"
msgstr ""
-#: ../src/widgets/arc-toolbar.cpp:389
+#: ../src/widgets/arc-toolbar.cpp:380
msgid "Make whole"
msgstr ""
-#: ../src/widgets/arc-toolbar.cpp:390
+#: ../src/widgets/arc-toolbar.cpp:381
msgid "Make the shape a whole ellipse, not arc or segment"
msgstr ""
@@ -26503,87 +26759,87 @@ msgstr ""
msgid "Add or edit calligraphic profile"
msgstr ""
-#: ../src/widgets/connector-toolbar.cpp:120
+#: ../src/widgets/connector-toolbar.cpp:118
msgid "Set connector type: orthogonal"
msgstr ""
-#: ../src/widgets/connector-toolbar.cpp:120
+#: ../src/widgets/connector-toolbar.cpp:118
msgid "Set connector type: polyline"
msgstr ""
-#: ../src/widgets/connector-toolbar.cpp:169
+#: ../src/widgets/connector-toolbar.cpp:165
msgid "Change connector curvature"
msgstr ""
-#: ../src/widgets/connector-toolbar.cpp:220
+#: ../src/widgets/connector-toolbar.cpp:216
msgid "Change connector spacing"
msgstr ""
-#: ../src/widgets/connector-toolbar.cpp:313
+#: ../src/widgets/connector-toolbar.cpp:309
msgid "Avoid"
msgstr ""
-#: ../src/widgets/connector-toolbar.cpp:323
+#: ../src/widgets/connector-toolbar.cpp:319
msgid "Ignore"
msgstr ""
-#: ../src/widgets/connector-toolbar.cpp:334
+#: ../src/widgets/connector-toolbar.cpp:330
msgid "Orthogonal"
msgstr ""
-#: ../src/widgets/connector-toolbar.cpp:335
+#: ../src/widgets/connector-toolbar.cpp:331
msgid "Make connector orthogonal or polyline"
msgstr ""
-#: ../src/widgets/connector-toolbar.cpp:349
+#: ../src/widgets/connector-toolbar.cpp:345
msgid "Connector Curvature"
msgstr ""
-#: ../src/widgets/connector-toolbar.cpp:349
+#: ../src/widgets/connector-toolbar.cpp:345
msgid "Curvature:"
msgstr ""
-#: ../src/widgets/connector-toolbar.cpp:350
+#: ../src/widgets/connector-toolbar.cpp:346
msgid "The amount of connectors curvature"
msgstr ""
-#: ../src/widgets/connector-toolbar.cpp:360
+#: ../src/widgets/connector-toolbar.cpp:356
msgid "Connector Spacing"
msgstr ""
-#: ../src/widgets/connector-toolbar.cpp:360
+#: ../src/widgets/connector-toolbar.cpp:356
msgid "Spacing:"
msgstr ""
-#: ../src/widgets/connector-toolbar.cpp:361
+#: ../src/widgets/connector-toolbar.cpp:357
msgid "The amount of space left around objects by auto-routing connectors"
msgstr ""
-#: ../src/widgets/connector-toolbar.cpp:372
+#: ../src/widgets/connector-toolbar.cpp:368
msgid "Graph"
msgstr ""
-#: ../src/widgets/connector-toolbar.cpp:382
+#: ../src/widgets/connector-toolbar.cpp:378
msgid "Connector Length"
msgstr ""
-#: ../src/widgets/connector-toolbar.cpp:382
+#: ../src/widgets/connector-toolbar.cpp:378
msgid "Length:"
msgstr ""
-#: ../src/widgets/connector-toolbar.cpp:383
+#: ../src/widgets/connector-toolbar.cpp:379
msgid "Ideal length for connectors when layout is applied"
msgstr ""
-#: ../src/widgets/connector-toolbar.cpp:395
+#: ../src/widgets/connector-toolbar.cpp:391
msgid "Downwards"
msgstr ""
-#: ../src/widgets/connector-toolbar.cpp:396
+#: ../src/widgets/connector-toolbar.cpp:392
msgid "Make connectors with end-markers (arrows) point downwards"
msgstr ""
-#: ../src/widgets/connector-toolbar.cpp:412
+#: ../src/widgets/connector-toolbar.cpp:408
msgid "Do not allow overlapping shapes"
msgstr ""
@@ -26754,36 +27010,36 @@ msgstr ""
msgid "The width of the eraser pen (relative to the visible canvas area)"
msgstr ""
-#: ../src/widgets/fill-style.cpp:360
+#: ../src/widgets/fill-style.cpp:356
msgid "Change fill rule"
msgstr ""
-#: ../src/widgets/fill-style.cpp:445 ../src/widgets/fill-style.cpp:524
+#: ../src/widgets/fill-style.cpp:440 ../src/widgets/fill-style.cpp:518
msgid "Set fill color"
msgstr ""
-#: ../src/widgets/fill-style.cpp:445 ../src/widgets/fill-style.cpp:524
+#: ../src/widgets/fill-style.cpp:440 ../src/widgets/fill-style.cpp:518
msgid "Set stroke color"
msgstr ""
-#: ../src/widgets/fill-style.cpp:622
+#: ../src/widgets/fill-style.cpp:616
msgid "Set gradient on fill"
msgstr ""
-#: ../src/widgets/fill-style.cpp:622
+#: ../src/widgets/fill-style.cpp:616
msgid "Set gradient on stroke"
msgstr ""
-#: ../src/widgets/fill-style.cpp:682
+#: ../src/widgets/fill-style.cpp:676
msgid "Set pattern on fill"
msgstr ""
-#: ../src/widgets/fill-style.cpp:683
+#: ../src/widgets/fill-style.cpp:677
msgid "Set pattern on stroke"
msgstr ""
-#: ../src/widgets/font-selector.cpp:120 ../src/widgets/text-toolbar.cpp:947
-#: ../src/widgets/text-toolbar.cpp:1259
+#: ../src/widgets/font-selector.cpp:120 ../src/widgets/text-toolbar.cpp:953
+#: ../src/widgets/text-toolbar.cpp:1265
msgid "Font size"
msgstr ""
@@ -26806,129 +27062,133 @@ msgstr ""
msgid "Font size:"
msgstr ""
-#: ../src/widgets/gradient-selector.cpp:201
+#: ../src/widgets/gradient-selector.cpp:205
msgid "Create a duplicate gradient"
msgstr ""
-#: ../src/widgets/gradient-selector.cpp:212
+#: ../src/widgets/gradient-selector.cpp:216
msgid "Edit gradient"
msgstr ""
-#: ../src/widgets/gradient-selector.cpp:281
-#: ../src/widgets/paint-selector.cpp:236
+#: ../src/widgets/gradient-selector.cpp:285
+#: ../src/widgets/paint-selector.cpp:233
msgid "Swatch"
msgstr ""
-#: ../src/widgets/gradient-selector.cpp:331
+#: ../src/widgets/gradient-selector.cpp:335
msgid "Rename gradient"
msgstr ""
-#: ../src/widgets/gradient-toolbar.cpp:156
-#: ../src/widgets/gradient-toolbar.cpp:169
-#: ../src/widgets/gradient-toolbar.cpp:758
-#: ../src/widgets/gradient-toolbar.cpp:1097
+#: ../src/widgets/gradient-toolbar.cpp:157
+#: ../src/widgets/gradient-toolbar.cpp:170
+#: ../src/widgets/gradient-toolbar.cpp:761
+#: ../src/widgets/gradient-toolbar.cpp:1100
msgid "No gradient"
msgstr ""
-#: ../src/widgets/gradient-toolbar.cpp:176
+#: ../src/widgets/gradient-toolbar.cpp:177
msgid "Multiple gradients"
msgstr ""
-#: ../src/widgets/gradient-toolbar.cpp:678
+#: ../src/widgets/gradient-toolbar.cpp:681
msgid "Multiple stops"
msgstr ""
-#: ../src/widgets/gradient-toolbar.cpp:776
-#: ../src/widgets/gradient-vector.cpp:609
+#: ../src/widgets/gradient-toolbar.cpp:779
+#: ../src/widgets/gradient-vector.cpp:614
msgid "No stops in gradient"
msgstr ""
-#: ../src/widgets/gradient-toolbar.cpp:930
+#: ../src/widgets/gradient-toolbar.cpp:933
msgid "Assign gradient to object"
msgstr ""
-#: ../src/widgets/gradient-toolbar.cpp:952
+#: ../src/widgets/gradient-toolbar.cpp:955
msgid "Set gradient repeat"
msgstr ""
-#: ../src/widgets/gradient-toolbar.cpp:990
-#: ../src/widgets/gradient-vector.cpp:720
+#: ../src/widgets/gradient-toolbar.cpp:993
+#: ../src/widgets/gradient-vector.cpp:727
msgid "Change gradient stop offset"
msgstr ""
-#: ../src/widgets/gradient-toolbar.cpp:1037
+#: ../src/widgets/gradient-toolbar.cpp:1040
msgid "linear"
msgstr ""
-#: ../src/widgets/gradient-toolbar.cpp:1037
+#: ../src/widgets/gradient-toolbar.cpp:1040
msgid "Create linear gradient"
msgstr ""
-#: ../src/widgets/gradient-toolbar.cpp:1041
+#: ../src/widgets/gradient-toolbar.cpp:1044
msgid "radial"
msgstr ""
-#: ../src/widgets/gradient-toolbar.cpp:1041
+#: ../src/widgets/gradient-toolbar.cpp:1044
msgid "Create radial (elliptic or circular) gradient"
msgstr ""
-#: ../src/widgets/gradient-toolbar.cpp:1044
-#: ../src/widgets/mesh-toolbar.cpp:341
+#: ../src/widgets/gradient-toolbar.cpp:1047
+#: ../src/widgets/mesh-toolbar.cpp:343
msgid "New:"
msgstr ""
-#: ../src/widgets/gradient-toolbar.cpp:1067
-#: ../src/widgets/mesh-toolbar.cpp:364
+#: ../src/widgets/gradient-toolbar.cpp:1070
+#: ../src/widgets/mesh-toolbar.cpp:366
msgid "fill"
msgstr ""
-#: ../src/widgets/gradient-toolbar.cpp:1067
-#: ../src/widgets/mesh-toolbar.cpp:364
+#: ../src/widgets/gradient-toolbar.cpp:1070
+#: ../src/widgets/mesh-toolbar.cpp:366
msgid "Create gradient in the fill"
msgstr ""
-#: ../src/widgets/gradient-toolbar.cpp:1071
-#: ../src/widgets/mesh-toolbar.cpp:368
+#: ../src/widgets/gradient-toolbar.cpp:1074
+#: ../src/widgets/mesh-toolbar.cpp:370
msgid "stroke"
msgstr ""
-#: ../src/widgets/gradient-toolbar.cpp:1071
-#: ../src/widgets/mesh-toolbar.cpp:368
+#: ../src/widgets/gradient-toolbar.cpp:1074
+#: ../src/widgets/mesh-toolbar.cpp:370
msgid "Create gradient in the stroke"
msgstr ""
-#: ../src/widgets/gradient-toolbar.cpp:1074
-#: ../src/widgets/mesh-toolbar.cpp:371
+#: ../src/widgets/gradient-toolbar.cpp:1077
+#: ../src/widgets/mesh-toolbar.cpp:373
msgid "on:"
msgstr ""
-#: ../src/widgets/gradient-toolbar.cpp:1099
+#: ../src/widgets/gradient-toolbar.cpp:1102
msgid "Select"
msgstr ""
-#: ../src/widgets/gradient-toolbar.cpp:1099
+#: ../src/widgets/gradient-toolbar.cpp:1102
msgid "Choose a gradient"
msgstr ""
-#: ../src/widgets/gradient-toolbar.cpp:1100
+#: ../src/widgets/gradient-toolbar.cpp:1103
msgid "Select:"
msgstr ""
-#: ../src/widgets/gradient-toolbar.cpp:1115
+#: ../src/widgets/gradient-toolbar.cpp:1118
msgctxt "Gradient repeat type"
msgid "None"
msgstr ""
#: ../src/widgets/gradient-toolbar.cpp:1121
+msgid "Reflected"
+msgstr ""
+
+#: ../src/widgets/gradient-toolbar.cpp:1124
msgid "Direct"
msgstr ""
-#: ../src/widgets/gradient-toolbar.cpp:1123
+#: ../src/widgets/gradient-toolbar.cpp:1126
msgid "Repeat"
msgstr ""
#. TRANSLATORS: for info, see http://www.w3.org/TR/2000/CR-SVG-20000802/pservers.html#LinearGradientSpreadMethodAttribute
-#: ../src/widgets/gradient-toolbar.cpp:1125
+#: ../src/widgets/gradient-toolbar.cpp:1128
msgid ""
"Whether to fill with flat color beyond the ends of the gradient vector "
"(spreadMethod=\"pad\"), or repeat the gradient in the same direction "
@@ -26936,97 +27196,97 @@ msgid ""
"directions (spreadMethod=\"reflect\")"
msgstr ""
-#: ../src/widgets/gradient-toolbar.cpp:1130
+#: ../src/widgets/gradient-toolbar.cpp:1133
msgid "Repeat:"
msgstr ""
-#: ../src/widgets/gradient-toolbar.cpp:1144
+#: ../src/widgets/gradient-toolbar.cpp:1147
msgid "No stops"
msgstr ""
-#: ../src/widgets/gradient-toolbar.cpp:1146
+#: ../src/widgets/gradient-toolbar.cpp:1149
msgid "Stops"
msgstr ""
-#: ../src/widgets/gradient-toolbar.cpp:1146
+#: ../src/widgets/gradient-toolbar.cpp:1149
msgid "Select a stop for the current gradient"
msgstr ""
-#: ../src/widgets/gradient-toolbar.cpp:1147
+#: ../src/widgets/gradient-toolbar.cpp:1150
msgid "Stops:"
msgstr ""
#. Label
-#: ../src/widgets/gradient-toolbar.cpp:1159
-#: ../src/widgets/gradient-vector.cpp:906
+#: ../src/widgets/gradient-toolbar.cpp:1162
+#: ../src/widgets/gradient-vector.cpp:915
msgctxt "Gradient"
msgid "Offset:"
msgstr ""
-#: ../src/widgets/gradient-toolbar.cpp:1159
+#: ../src/widgets/gradient-toolbar.cpp:1162
msgid "Offset of selected stop"
msgstr ""
-#: ../src/widgets/gradient-toolbar.cpp:1177
-#: ../src/widgets/gradient-toolbar.cpp:1178
+#: ../src/widgets/gradient-toolbar.cpp:1180
+#: ../src/widgets/gradient-toolbar.cpp:1181
msgid "Insert new stop"
msgstr ""
-#: ../src/widgets/gradient-toolbar.cpp:1191
-#: ../src/widgets/gradient-toolbar.cpp:1192
-#: ../src/widgets/gradient-vector.cpp:888
+#: ../src/widgets/gradient-toolbar.cpp:1194
+#: ../src/widgets/gradient-toolbar.cpp:1195
+#: ../src/widgets/gradient-vector.cpp:897
msgid "Delete stop"
msgstr ""
-#: ../src/widgets/gradient-toolbar.cpp:1206
+#: ../src/widgets/gradient-toolbar.cpp:1209
msgid "Reverse the direction of the gradient"
msgstr ""
-#: ../src/widgets/gradient-toolbar.cpp:1220
+#: ../src/widgets/gradient-toolbar.cpp:1223
msgid "Link gradients"
msgstr ""
-#: ../src/widgets/gradient-toolbar.cpp:1221
+#: ../src/widgets/gradient-toolbar.cpp:1224
msgid "Link gradients to change all related gradients"
msgstr ""
-#: ../src/widgets/gradient-vector.cpp:312
-#: ../src/widgets/paint-selector.cpp:947
+#: ../src/widgets/gradient-vector.cpp:317
+#: ../src/widgets/paint-selector.cpp:965
#: ../src/widgets/stroke-marker-selector.cpp:154
msgid "No document selected"
msgstr ""
-#: ../src/widgets/gradient-vector.cpp:316
+#: ../src/widgets/gradient-vector.cpp:321
msgid "No gradients in document"
msgstr ""
-#: ../src/widgets/gradient-vector.cpp:320
+#: ../src/widgets/gradient-vector.cpp:325
msgid "No gradient selected"
msgstr ""
#. TRANSLATORS: "Stop" means: a "phase" of a gradient
-#: ../src/widgets/gradient-vector.cpp:883
+#: ../src/widgets/gradient-vector.cpp:892
msgid "Add stop"
msgstr ""
-#: ../src/widgets/gradient-vector.cpp:886
+#: ../src/widgets/gradient-vector.cpp:895
msgid "Add another control stop to gradient"
msgstr ""
-#: ../src/widgets/gradient-vector.cpp:891
+#: ../src/widgets/gradient-vector.cpp:900
msgid "Delete current control stop from gradient"
msgstr ""
#. TRANSLATORS: "Stop" means: a "phase" of a gradient
-#: ../src/widgets/gradient-vector.cpp:959
+#: ../src/widgets/gradient-vector.cpp:968
msgid "Stop Color"
msgstr ""
-#: ../src/widgets/gradient-vector.cpp:987
+#: ../src/widgets/gradient-vector.cpp:1007
msgid "Gradient editor"
msgstr ""
-#: ../src/widgets/gradient-vector.cpp:1324
+#: ../src/widgets/gradient-vector.cpp:1359
msgid "Change gradient stop color"
msgstr ""
@@ -27086,7 +27346,7 @@ msgstr ""
#. Add the units menu.
#: ../src/widgets/lpe-toolbar.cpp:387 ../src/widgets/node-toolbar.cpp:613
-#: ../src/widgets/paintbucket-toolbar.cpp:168
+#: ../src/widgets/paintbucket-toolbar.cpp:167
#: ../src/widgets/rect-toolbar.cpp:378 ../src/widgets/select-toolbar.cpp:538
msgid "Units"
msgstr ""
@@ -27099,7 +27359,7 @@ msgstr ""
msgid "Open LPE dialog (to adapt parameters numerically)"
msgstr ""
-#: ../src/widgets/measure-toolbar.cpp:86 ../src/widgets/text-toolbar.cpp:1262
+#: ../src/widgets/measure-toolbar.cpp:86 ../src/widgets/text-toolbar.cpp:1268
msgid "Font Size"
msgstr ""
@@ -27116,99 +27376,99 @@ msgstr ""
msgid "The units to be used for the measurements"
msgstr ""
-#: ../src/widgets/mesh-toolbar.cpp:311
+#: ../src/widgets/mesh-toolbar.cpp:313
msgid "Set mesh type"
msgstr ""
-#: ../src/widgets/mesh-toolbar.cpp:334
+#: ../src/widgets/mesh-toolbar.cpp:336
msgid "normal"
msgstr ""
-#: ../src/widgets/mesh-toolbar.cpp:334
+#: ../src/widgets/mesh-toolbar.cpp:336
msgid "Create mesh gradient"
msgstr ""
-#: ../src/widgets/mesh-toolbar.cpp:338
+#: ../src/widgets/mesh-toolbar.cpp:340
msgid "conical"
msgstr ""
-#: ../src/widgets/mesh-toolbar.cpp:338
+#: ../src/widgets/mesh-toolbar.cpp:340
msgid "Create conical gradient"
msgstr ""
-#: ../src/widgets/mesh-toolbar.cpp:393
+#: ../src/widgets/mesh-toolbar.cpp:395
msgid "Rows"
msgstr ""
-#: ../src/widgets/mesh-toolbar.cpp:393
+#: ../src/widgets/mesh-toolbar.cpp:395
#: ../share/extensions/guides_creator.inx.h:5
#: ../share/extensions/layout_nup.inx.h:12
msgid "Rows:"
msgstr ""
-#: ../src/widgets/mesh-toolbar.cpp:393
+#: ../src/widgets/mesh-toolbar.cpp:395
msgid "Number of rows in new mesh"
msgstr ""
-#: ../src/widgets/mesh-toolbar.cpp:409
+#: ../src/widgets/mesh-toolbar.cpp:411
msgid "Columns"
msgstr ""
-#: ../src/widgets/mesh-toolbar.cpp:409
+#: ../src/widgets/mesh-toolbar.cpp:411
#: ../share/extensions/guides_creator.inx.h:4
msgid "Columns:"
msgstr ""
-#: ../src/widgets/mesh-toolbar.cpp:409
+#: ../src/widgets/mesh-toolbar.cpp:411
msgid "Number of columns in new mesh"
msgstr ""
-#: ../src/widgets/mesh-toolbar.cpp:423
+#: ../src/widgets/mesh-toolbar.cpp:425
msgid "Edit Fill"
msgstr ""
-#: ../src/widgets/mesh-toolbar.cpp:424
+#: ../src/widgets/mesh-toolbar.cpp:426
msgid "Edit fill mesh"
msgstr ""
-#: ../src/widgets/mesh-toolbar.cpp:435
+#: ../src/widgets/mesh-toolbar.cpp:437
msgid "Edit Stroke"
msgstr ""
-#: ../src/widgets/mesh-toolbar.cpp:436
+#: ../src/widgets/mesh-toolbar.cpp:438
msgid "Edit stroke mesh"
msgstr ""
-#: ../src/widgets/mesh-toolbar.cpp:447 ../src/widgets/node-toolbar.cpp:521
+#: ../src/widgets/mesh-toolbar.cpp:449 ../src/widgets/node-toolbar.cpp:521
msgid "Show Handles"
msgstr ""
-#: ../src/widgets/mesh-toolbar.cpp:448
+#: ../src/widgets/mesh-toolbar.cpp:450
msgid "Show side and tensor handles"
msgstr ""
-#: ../src/widgets/mesh-toolbar.cpp:463
+#: ../src/widgets/mesh-toolbar.cpp:465
msgid "WARNING: Mesh SVG Syntax Subject to Change"
msgstr ""
-#: ../src/widgets/mesh-toolbar.cpp:473
+#: ../src/widgets/mesh-toolbar.cpp:475
msgctxt "Type"
msgid "Coons"
msgstr ""
-#: ../src/widgets/mesh-toolbar.cpp:476
+#: ../src/widgets/mesh-toolbar.cpp:478
msgid "Bicubic"
msgstr ""
-#: ../src/widgets/mesh-toolbar.cpp:478
+#: ../src/widgets/mesh-toolbar.cpp:480
msgid "Coons"
msgstr ""
-#: ../src/widgets/mesh-toolbar.cpp:479
+#: ../src/widgets/mesh-toolbar.cpp:481
msgid "Coons: no smoothing. Bicubic: smoothing across patch boundaries."
msgstr ""
-#: ../src/widgets/mesh-toolbar.cpp:481 ../src/widgets/pencil-toolbar.cpp:278
+#: ../src/widgets/mesh-toolbar.cpp:483 ../src/widgets/pencil-toolbar.cpp:278
msgid "Smoothing:"
msgstr ""
@@ -27404,137 +27664,137 @@ msgstr ""
msgid "Y coordinate of selected node(s)"
msgstr ""
-#: ../src/widgets/paint-selector.cpp:222
+#: ../src/widgets/paint-selector.cpp:219
msgid "No paint"
msgstr ""
-#: ../src/widgets/paint-selector.cpp:224
+#: ../src/widgets/paint-selector.cpp:221
msgid "Flat color"
msgstr ""
-#: ../src/widgets/paint-selector.cpp:226
+#: ../src/widgets/paint-selector.cpp:223
msgid "Linear gradient"
msgstr ""
-#: ../src/widgets/paint-selector.cpp:228
+#: ../src/widgets/paint-selector.cpp:225
msgid "Radial gradient"
msgstr ""
-#: ../src/widgets/paint-selector.cpp:231
+#: ../src/widgets/paint-selector.cpp:228
msgid "Mesh gradient"
msgstr ""
-#: ../src/widgets/paint-selector.cpp:238
+#: ../src/widgets/paint-selector.cpp:235
msgid "Unset paint (make it undefined so it can be inherited)"
msgstr ""
#. TRANSLATORS: for info, see http://www.w3.org/TR/2000/CR-SVG-20000802/painting.html#FillRuleProperty
-#: ../src/widgets/paint-selector.cpp:255
+#: ../src/widgets/paint-selector.cpp:252
msgid ""
"Any path self-intersections or subpaths create holes in the fill (fill-rule: "
"evenodd)"
msgstr ""
#. TRANSLATORS: for info, see http://www.w3.org/TR/2000/CR-SVG-20000802/painting.html#FillRuleProperty
-#: ../src/widgets/paint-selector.cpp:266
+#: ../src/widgets/paint-selector.cpp:263
msgid ""
"Fill is solid unless a subpath is counterdirectional (fill-rule: nonzero)"
msgstr ""
-#: ../src/widgets/paint-selector.cpp:600
+#: ../src/widgets/paint-selector.cpp:605
msgid "<b>No objects</b>"
msgstr ""
-#: ../src/widgets/paint-selector.cpp:611
+#: ../src/widgets/paint-selector.cpp:616
msgid "<b>Multiple styles</b>"
msgstr ""
-#: ../src/widgets/paint-selector.cpp:622
+#: ../src/widgets/paint-selector.cpp:627
msgid "<b>Paint is undefined</b>"
msgstr ""
-#: ../src/widgets/paint-selector.cpp:633
+#: ../src/widgets/paint-selector.cpp:638
msgid "<b>No paint</b>"
msgstr ""
-#: ../src/widgets/paint-selector.cpp:704
+#: ../src/widgets/paint-selector.cpp:722
msgid "<b>Flat color</b>"
msgstr ""
#. sp_gradient_selector_set_mode(SP_GRADIENT_SELECTOR(gsel), SP_GRADIENT_SELECTOR_MODE_LINEAR);
-#: ../src/widgets/paint-selector.cpp:773
+#: ../src/widgets/paint-selector.cpp:791
msgid "<b>Linear gradient</b>"
msgstr ""
-#: ../src/widgets/paint-selector.cpp:776
+#: ../src/widgets/paint-selector.cpp:794
msgid "<b>Radial gradient</b>"
msgstr ""
-#: ../src/widgets/paint-selector.cpp:781
+#: ../src/widgets/paint-selector.cpp:799
msgid "<b>Mesh gradient</b>"
msgstr ""
-#: ../src/widgets/paint-selector.cpp:1080
+#: ../src/widgets/paint-selector.cpp:1098
msgid ""
"Use the <b>Node tool</b> to adjust position, scale, and rotation of the "
"pattern on canvas. Use <b>Object &gt; Pattern &gt; Objects to Pattern</b> to "
"create a new pattern from selection."
msgstr ""
-#: ../src/widgets/paint-selector.cpp:1093
+#: ../src/widgets/paint-selector.cpp:1111
msgid "<b>Pattern fill</b>"
msgstr ""
-#: ../src/widgets/paint-selector.cpp:1187
+#: ../src/widgets/paint-selector.cpp:1205
msgid "<b>Swatch fill</b>"
msgstr ""
-#: ../src/widgets/paintbucket-toolbar.cpp:135
+#: ../src/widgets/paintbucket-toolbar.cpp:134
msgid "Fill by"
msgstr ""
-#: ../src/widgets/paintbucket-toolbar.cpp:136
+#: ../src/widgets/paintbucket-toolbar.cpp:135
msgid "Fill by:"
msgstr ""
-#: ../src/widgets/paintbucket-toolbar.cpp:148
+#: ../src/widgets/paintbucket-toolbar.cpp:147
msgid "Fill Threshold"
msgstr ""
-#: ../src/widgets/paintbucket-toolbar.cpp:149
+#: ../src/widgets/paintbucket-toolbar.cpp:148
msgid ""
"The maximum allowed difference between the clicked pixel and the neighboring "
"pixels to be counted in the fill"
msgstr ""
-#: ../src/widgets/paintbucket-toolbar.cpp:176
+#: ../src/widgets/paintbucket-toolbar.cpp:175
msgid "Grow/shrink by"
msgstr ""
-#: ../src/widgets/paintbucket-toolbar.cpp:176
+#: ../src/widgets/paintbucket-toolbar.cpp:175
msgid "Grow/shrink by:"
msgstr ""
-#: ../src/widgets/paintbucket-toolbar.cpp:177
+#: ../src/widgets/paintbucket-toolbar.cpp:176
msgid ""
"The amount to grow (positive) or shrink (negative) the created fill path"
msgstr ""
-#: ../src/widgets/paintbucket-toolbar.cpp:202
+#: ../src/widgets/paintbucket-toolbar.cpp:199
msgid "Close gaps"
msgstr ""
-#: ../src/widgets/paintbucket-toolbar.cpp:203
+#: ../src/widgets/paintbucket-toolbar.cpp:200
msgid "Close gaps:"
msgstr ""
-#: ../src/widgets/paintbucket-toolbar.cpp:214
-#: ../src/widgets/pencil-toolbar.cpp:299 ../src/widgets/spiral-toolbar.cpp:289
-#: ../src/widgets/star-toolbar.cpp:566
+#: ../src/widgets/paintbucket-toolbar.cpp:211
+#: ../src/widgets/pencil-toolbar.cpp:299 ../src/widgets/spiral-toolbar.cpp:285
+#: ../src/widgets/star-toolbar.cpp:564
msgid "Defaults"
msgstr ""
-#: ../src/widgets/paintbucket-toolbar.cpp:215
+#: ../src/widgets/paintbucket-toolbar.cpp:212
msgid ""
"Reset paint bucket parameters to defaults (use Inkscape Preferences > Tools "
"to change defaults)"
@@ -27627,7 +27887,7 @@ msgid ""
"change defaults)"
msgstr ""
-#: ../src/widgets/rect-toolbar.cpp:124
+#: ../src/widgets/rect-toolbar.cpp:125
msgid "Change rectangle"
msgstr ""
@@ -27848,139 +28108,7 @@ msgstr ""
msgid "Set attribute"
msgstr ""
-#: ../src/widgets/sp-color-icc-selector.cpp:234
-msgid "CMS"
-msgstr ""
-
-#: ../src/widgets/sp-color-icc-selector.cpp:330
-#: ../src/widgets/sp-color-scales.cpp:414
-msgid "_R:"
-msgstr ""
-
-#. TYPE_RGB_16
-#: ../src/widgets/sp-color-icc-selector.cpp:331
-#: ../src/widgets/sp-color-scales.cpp:417
-msgid "_G:"
-msgstr ""
-
-#: ../src/widgets/sp-color-icc-selector.cpp:332
-#: ../src/widgets/sp-color-scales.cpp:420
-msgid "_B:"
-msgstr ""
-
-#: ../src/widgets/sp-color-icc-selector.cpp:334
-msgid "Gray"
-msgstr ""
-
-#. TYPE_GRAY_16
-#: ../src/widgets/sp-color-icc-selector.cpp:336
-#: ../src/widgets/sp-color-icc-selector.cpp:340
-#: ../src/widgets/sp-color-scales.cpp:440
-msgid "_H:"
-msgstr ""
-
-#. TYPE_HSV_16
-#: ../src/widgets/sp-color-icc-selector.cpp:337
-#: ../src/widgets/sp-color-icc-selector.cpp:342
-#: ../src/widgets/sp-color-scales.cpp:443
-msgid "_S:"
-msgstr ""
-
-#. TYPE_HLS_16
-#: ../src/widgets/sp-color-icc-selector.cpp:341
-#: ../src/widgets/sp-color-scales.cpp:446
-msgid "_L:"
-msgstr ""
-
-#: ../src/widgets/sp-color-icc-selector.cpp:344
-#: ../src/widgets/sp-color-icc-selector.cpp:349
-#: ../src/widgets/sp-color-scales.cpp:468
-msgid "_C:"
-msgstr ""
-
-#. TYPE_CMYK_16
-#. TYPE_CMY_16
-#: ../src/widgets/sp-color-icc-selector.cpp:345
-#: ../src/widgets/sp-color-icc-selector.cpp:350
-#: ../src/widgets/sp-color-scales.cpp:471
-msgid "_M:"
-msgstr ""
-
-#: ../src/widgets/sp-color-icc-selector.cpp:346
-#: ../src/widgets/sp-color-icc-selector.cpp:351
-#: ../src/widgets/sp-color-scales.cpp:474
-msgid "_Y:"
-msgstr ""
-
-#: ../src/widgets/sp-color-icc-selector.cpp:347
-#: ../src/widgets/sp-color-scales.cpp:477
-msgid "_K:"
-msgstr ""
-
-#: ../src/widgets/sp-color-icc-selector.cpp:430
-msgid "Fix"
-msgstr ""
-
-#: ../src/widgets/sp-color-icc-selector.cpp:433
-msgid "Fix RGB fallback to match icc-color() value."
-msgstr ""
-
-#. Label
-#: ../src/widgets/sp-color-icc-selector.cpp:536
-#: ../src/widgets/sp-color-scales.cpp:423
-#: ../src/widgets/sp-color-scales.cpp:449
-#: ../src/widgets/sp-color-scales.cpp:480
-#: ../src/widgets/sp-color-wheel-selector.cpp:111
-msgid "_A:"
-msgstr ""
-
-#: ../src/widgets/sp-color-icc-selector.cpp:547
-#: ../src/widgets/sp-color-icc-selector.cpp:560
-#: ../src/widgets/sp-color-scales.cpp:424
-#: ../src/widgets/sp-color-scales.cpp:425
-#: ../src/widgets/sp-color-scales.cpp:450
-#: ../src/widgets/sp-color-scales.cpp:451
-#: ../src/widgets/sp-color-scales.cpp:481
-#: ../src/widgets/sp-color-scales.cpp:482
-#: ../src/widgets/sp-color-wheel-selector.cpp:137
-#: ../src/widgets/sp-color-wheel-selector.cpp:166
-msgid "Alpha (opacity)"
-msgstr ""
-
-#: ../src/widgets/sp-color-notebook.cpp:370
-msgid "Color Managed"
-msgstr ""
-
-#: ../src/widgets/sp-color-notebook.cpp:377
-msgid "Out of gamut!"
-msgstr ""
-
-#: ../src/widgets/sp-color-notebook.cpp:384
-msgid "Too much ink!"
-msgstr ""
-
-#. Create RGBA entry and color preview
-#: ../src/widgets/sp-color-notebook.cpp:401
-msgid "RGBA_:"
-msgstr ""
-
-#: ../src/widgets/sp-color-notebook.cpp:409
-msgid "Hexadecimal RGBA value of the color"
-msgstr ""
-
-#: ../src/widgets/sp-color-scales.cpp:53
-msgid "RGB"
-msgstr ""
-
-#: ../src/widgets/sp-color-scales.cpp:53
-msgid "HSL"
-msgstr ""
-
-#: ../src/widgets/sp-color-scales.cpp:53
-msgid "CMYK"
-msgstr ""
-
-#: ../src/widgets/sp-color-selector.cpp:42
+#: ../src/widgets/sp-color-selector.cpp:47
msgid "Unnamed"
msgstr ""
@@ -27992,91 +28120,91 @@ msgstr ""
msgid "Type text in a text node"
msgstr ""
-#: ../src/widgets/spiral-toolbar.cpp:100
+#: ../src/widgets/spiral-toolbar.cpp:98
msgid "Change spiral"
msgstr ""
-#: ../src/widgets/spiral-toolbar.cpp:246
+#: ../src/widgets/spiral-toolbar.cpp:242
msgid "just a curve"
msgstr ""
-#: ../src/widgets/spiral-toolbar.cpp:246
+#: ../src/widgets/spiral-toolbar.cpp:242
msgid "one full revolution"
msgstr ""
-#: ../src/widgets/spiral-toolbar.cpp:249
+#: ../src/widgets/spiral-toolbar.cpp:245
msgid "Number of turns"
msgstr ""
-#: ../src/widgets/spiral-toolbar.cpp:249
+#: ../src/widgets/spiral-toolbar.cpp:245
msgid "Turns:"
msgstr ""
-#: ../src/widgets/spiral-toolbar.cpp:249
+#: ../src/widgets/spiral-toolbar.cpp:245
msgid "Number of revolutions"
msgstr ""
-#: ../src/widgets/spiral-toolbar.cpp:260
+#: ../src/widgets/spiral-toolbar.cpp:256
msgid "circle"
msgstr ""
-#: ../src/widgets/spiral-toolbar.cpp:260
+#: ../src/widgets/spiral-toolbar.cpp:256
msgid "edge is much denser"
msgstr ""
-#: ../src/widgets/spiral-toolbar.cpp:260
+#: ../src/widgets/spiral-toolbar.cpp:256
msgid "edge is denser"
msgstr ""
-#: ../src/widgets/spiral-toolbar.cpp:260
+#: ../src/widgets/spiral-toolbar.cpp:256
msgid "even"
msgstr ""
-#: ../src/widgets/spiral-toolbar.cpp:260
+#: ../src/widgets/spiral-toolbar.cpp:256
msgid "center is denser"
msgstr ""
-#: ../src/widgets/spiral-toolbar.cpp:260
+#: ../src/widgets/spiral-toolbar.cpp:256
msgid "center is much denser"
msgstr ""
-#: ../src/widgets/spiral-toolbar.cpp:263
+#: ../src/widgets/spiral-toolbar.cpp:259
msgid "Divergence"
msgstr ""
-#: ../src/widgets/spiral-toolbar.cpp:263
+#: ../src/widgets/spiral-toolbar.cpp:259
msgid "Divergence:"
msgstr ""
-#: ../src/widgets/spiral-toolbar.cpp:263
+#: ../src/widgets/spiral-toolbar.cpp:259
msgid "How much denser/sparser are outer revolutions; 1 = uniform"
msgstr ""
-#: ../src/widgets/spiral-toolbar.cpp:274
+#: ../src/widgets/spiral-toolbar.cpp:270
msgid "starts from center"
msgstr ""
-#: ../src/widgets/spiral-toolbar.cpp:274
+#: ../src/widgets/spiral-toolbar.cpp:270
msgid "starts mid-way"
msgstr ""
-#: ../src/widgets/spiral-toolbar.cpp:274
+#: ../src/widgets/spiral-toolbar.cpp:270
msgid "starts near edge"
msgstr ""
-#: ../src/widgets/spiral-toolbar.cpp:277
+#: ../src/widgets/spiral-toolbar.cpp:273
msgid "Inner radius"
msgstr ""
-#: ../src/widgets/spiral-toolbar.cpp:277
+#: ../src/widgets/spiral-toolbar.cpp:273
msgid "Inner radius:"
msgstr ""
-#: ../src/widgets/spiral-toolbar.cpp:277
+#: ../src/widgets/spiral-toolbar.cpp:273
msgid "Radius of the innermost revolution (relative to the spiral size)"
msgstr ""
-#: ../src/widgets/spiral-toolbar.cpp:290 ../src/widgets/star-toolbar.cpp:567
+#: ../src/widgets/spiral-toolbar.cpp:286 ../src/widgets/star-toolbar.cpp:565
msgid ""
"Reset shape parameters to defaults (use Inkscape Preferences > Tools to "
"change defaults)"
@@ -28240,149 +28368,149 @@ msgstr ""
msgid "Star: Change randomization"
msgstr ""
-#: ../src/widgets/star-toolbar.cpp:465
+#: ../src/widgets/star-toolbar.cpp:463
msgid "Regular polygon (with one handle) instead of a star"
msgstr ""
-#: ../src/widgets/star-toolbar.cpp:472
+#: ../src/widgets/star-toolbar.cpp:470
msgid "Star instead of a regular polygon (with one handle)"
msgstr ""
-#: ../src/widgets/star-toolbar.cpp:493
+#: ../src/widgets/star-toolbar.cpp:491
msgid "triangle/tri-star"
msgstr ""
-#: ../src/widgets/star-toolbar.cpp:493
+#: ../src/widgets/star-toolbar.cpp:491
msgid "square/quad-star"
msgstr ""
-#: ../src/widgets/star-toolbar.cpp:493
+#: ../src/widgets/star-toolbar.cpp:491
msgid "pentagon/five-pointed star"
msgstr ""
-#: ../src/widgets/star-toolbar.cpp:493
+#: ../src/widgets/star-toolbar.cpp:491
msgid "hexagon/six-pointed star"
msgstr ""
-#: ../src/widgets/star-toolbar.cpp:496
+#: ../src/widgets/star-toolbar.cpp:494
msgid "Corners"
msgstr ""
-#: ../src/widgets/star-toolbar.cpp:496
+#: ../src/widgets/star-toolbar.cpp:494
msgid "Corners:"
msgstr ""
-#: ../src/widgets/star-toolbar.cpp:496
+#: ../src/widgets/star-toolbar.cpp:494
msgid "Number of corners of a polygon or star"
msgstr ""
-#: ../src/widgets/star-toolbar.cpp:509
+#: ../src/widgets/star-toolbar.cpp:507
msgid "thin-ray star"
msgstr ""
-#: ../src/widgets/star-toolbar.cpp:509
+#: ../src/widgets/star-toolbar.cpp:507
msgid "pentagram"
msgstr ""
-#: ../src/widgets/star-toolbar.cpp:509
+#: ../src/widgets/star-toolbar.cpp:507
msgid "hexagram"
msgstr ""
-#: ../src/widgets/star-toolbar.cpp:509
+#: ../src/widgets/star-toolbar.cpp:507
msgid "heptagram"
msgstr ""
-#: ../src/widgets/star-toolbar.cpp:509
+#: ../src/widgets/star-toolbar.cpp:507
msgid "octagram"
msgstr ""
-#: ../src/widgets/star-toolbar.cpp:509
+#: ../src/widgets/star-toolbar.cpp:507
msgid "regular polygon"
msgstr ""
-#: ../src/widgets/star-toolbar.cpp:512
+#: ../src/widgets/star-toolbar.cpp:510
msgid "Spoke ratio"
msgstr ""
-#: ../src/widgets/star-toolbar.cpp:512
+#: ../src/widgets/star-toolbar.cpp:510
msgid "Spoke ratio:"
msgstr ""
#. TRANSLATORS: Tip radius of a star is the distance from the center to the farthest handle.
#. Base radius is the same for the closest handle.
-#: ../src/widgets/star-toolbar.cpp:515
+#: ../src/widgets/star-toolbar.cpp:513
msgid "Base radius to tip radius ratio"
msgstr ""
-#: ../src/widgets/star-toolbar.cpp:533
+#: ../src/widgets/star-toolbar.cpp:531
msgid "stretched"
msgstr ""
-#: ../src/widgets/star-toolbar.cpp:533
+#: ../src/widgets/star-toolbar.cpp:531
msgid "twisted"
msgstr ""
-#: ../src/widgets/star-toolbar.cpp:533
+#: ../src/widgets/star-toolbar.cpp:531
msgid "slightly pinched"
msgstr ""
-#: ../src/widgets/star-toolbar.cpp:533
+#: ../src/widgets/star-toolbar.cpp:531
msgid "NOT rounded"
msgstr ""
-#: ../src/widgets/star-toolbar.cpp:533
+#: ../src/widgets/star-toolbar.cpp:531
msgid "slightly rounded"
msgstr ""
-#: ../src/widgets/star-toolbar.cpp:533
+#: ../src/widgets/star-toolbar.cpp:531
msgid "visibly rounded"
msgstr ""
-#: ../src/widgets/star-toolbar.cpp:533
+#: ../src/widgets/star-toolbar.cpp:531
msgid "well rounded"
msgstr ""
-#: ../src/widgets/star-toolbar.cpp:533
+#: ../src/widgets/star-toolbar.cpp:531
msgid "amply rounded"
msgstr ""
-#: ../src/widgets/star-toolbar.cpp:533 ../src/widgets/star-toolbar.cpp:548
+#: ../src/widgets/star-toolbar.cpp:531 ../src/widgets/star-toolbar.cpp:546
msgid "blown up"
msgstr ""
-#: ../src/widgets/star-toolbar.cpp:536
+#: ../src/widgets/star-toolbar.cpp:534
msgid "Rounded:"
msgstr ""
-#: ../src/widgets/star-toolbar.cpp:536
+#: ../src/widgets/star-toolbar.cpp:534
msgid "How much rounded are the corners (0 for sharp)"
msgstr ""
-#: ../src/widgets/star-toolbar.cpp:548
+#: ../src/widgets/star-toolbar.cpp:546
msgid "NOT randomized"
msgstr ""
-#: ../src/widgets/star-toolbar.cpp:548
+#: ../src/widgets/star-toolbar.cpp:546
msgid "slightly irregular"
msgstr ""
-#: ../src/widgets/star-toolbar.cpp:548
+#: ../src/widgets/star-toolbar.cpp:546
msgid "visibly randomized"
msgstr ""
-#: ../src/widgets/star-toolbar.cpp:548
+#: ../src/widgets/star-toolbar.cpp:546
msgid "strongly randomized"
msgstr ""
-#: ../src/widgets/star-toolbar.cpp:551
+#: ../src/widgets/star-toolbar.cpp:549
msgid "Randomized"
msgstr ""
-#: ../src/widgets/star-toolbar.cpp:551
+#: ../src/widgets/star-toolbar.cpp:549
msgid "Randomized:"
msgstr ""
-#: ../src/widgets/star-toolbar.cpp:551
+#: ../src/widgets/star-toolbar.cpp:549
msgid "Scatter randomly the corners and angles"
msgstr ""
@@ -28480,7 +28608,7 @@ msgstr ""
msgid "Set markers"
msgstr ""
-#: ../src/widgets/stroke-style.cpp:1030 ../src/widgets/stroke-style.cpp:1114
+#: ../src/widgets/stroke-style.cpp:1029 ../src/widgets/stroke-style.cpp:1113
msgid "Set stroke style"
msgstr ""
@@ -28488,414 +28616,414 @@ msgstr ""
msgid "Set marker color"
msgstr ""
-#: ../src/widgets/swatch-selector.cpp:137
+#: ../src/widgets/swatch-selector.cpp:127
msgid "Change swatch color"
msgstr ""
-#: ../src/widgets/text-toolbar.cpp:169
+#: ../src/widgets/text-toolbar.cpp:173
msgid "Text: Change font family"
msgstr ""
-#: ../src/widgets/text-toolbar.cpp:233
+#: ../src/widgets/text-toolbar.cpp:239
msgid "Text: Change font size"
msgstr ""
-#: ../src/widgets/text-toolbar.cpp:269
+#: ../src/widgets/text-toolbar.cpp:275
msgid "Text: Change font style"
msgstr ""
-#: ../src/widgets/text-toolbar.cpp:347
+#: ../src/widgets/text-toolbar.cpp:353
msgid "Text: Change superscript or subscript"
msgstr ""
-#: ../src/widgets/text-toolbar.cpp:489
+#: ../src/widgets/text-toolbar.cpp:496
msgid "Text: Change alignment"
msgstr ""
-#: ../src/widgets/text-toolbar.cpp:532
+#: ../src/widgets/text-toolbar.cpp:539
msgid "Text: Change line-height"
msgstr ""
-#: ../src/widgets/text-toolbar.cpp:580
+#: ../src/widgets/text-toolbar.cpp:587
msgid "Text: Change word-spacing"
msgstr ""
-#: ../src/widgets/text-toolbar.cpp:620
+#: ../src/widgets/text-toolbar.cpp:627
msgid "Text: Change letter-spacing"
msgstr ""
-#: ../src/widgets/text-toolbar.cpp:658
+#: ../src/widgets/text-toolbar.cpp:665
msgid "Text: Change dx (kern)"
msgstr ""
-#: ../src/widgets/text-toolbar.cpp:692
+#: ../src/widgets/text-toolbar.cpp:699
msgid "Text: Change dy"
msgstr ""
-#: ../src/widgets/text-toolbar.cpp:727
+#: ../src/widgets/text-toolbar.cpp:734
msgid "Text: Change rotate"
msgstr ""
-#: ../src/widgets/text-toolbar.cpp:774
+#: ../src/widgets/text-toolbar.cpp:781
msgid "Text: Change orientation"
msgstr ""
-#: ../src/widgets/text-toolbar.cpp:1210
+#: ../src/widgets/text-toolbar.cpp:1216
msgid "Font Family"
msgstr ""
-#: ../src/widgets/text-toolbar.cpp:1211
+#: ../src/widgets/text-toolbar.cpp:1217
msgid "Select Font Family (Alt-X to access)"
msgstr ""
#. Focus widget
#. Enable entry completion
-#: ../src/widgets/text-toolbar.cpp:1221
+#: ../src/widgets/text-toolbar.cpp:1227
msgid "Select all text with this font-family"
msgstr ""
-#: ../src/widgets/text-toolbar.cpp:1225
+#: ../src/widgets/text-toolbar.cpp:1231
msgid "Font not found on system"
msgstr ""
-#: ../src/widgets/text-toolbar.cpp:1284
+#: ../src/widgets/text-toolbar.cpp:1290
msgid "Font Style"
msgstr ""
-#: ../src/widgets/text-toolbar.cpp:1285
+#: ../src/widgets/text-toolbar.cpp:1291
msgid "Font style"
msgstr ""
#. Name
-#: ../src/widgets/text-toolbar.cpp:1302
+#: ../src/widgets/text-toolbar.cpp:1308
msgid "Toggle Superscript"
msgstr ""
#. Label
-#: ../src/widgets/text-toolbar.cpp:1303
+#: ../src/widgets/text-toolbar.cpp:1309
msgid "Toggle superscript"
msgstr ""
#. Name
-#: ../src/widgets/text-toolbar.cpp:1315
+#: ../src/widgets/text-toolbar.cpp:1321
msgid "Toggle Subscript"
msgstr ""
#. Label
-#: ../src/widgets/text-toolbar.cpp:1316
+#: ../src/widgets/text-toolbar.cpp:1322
msgid "Toggle subscript"
msgstr ""
-#: ../src/widgets/text-toolbar.cpp:1357
+#: ../src/widgets/text-toolbar.cpp:1363
msgid "Justify"
msgstr ""
#. Name
-#: ../src/widgets/text-toolbar.cpp:1364
+#: ../src/widgets/text-toolbar.cpp:1370
msgid "Alignment"
msgstr ""
#. Label
-#: ../src/widgets/text-toolbar.cpp:1365
+#: ../src/widgets/text-toolbar.cpp:1371
msgid "Text alignment"
msgstr ""
-#: ../src/widgets/text-toolbar.cpp:1392
+#: ../src/widgets/text-toolbar.cpp:1398
msgid "Horizontal"
msgstr ""
-#: ../src/widgets/text-toolbar.cpp:1399
+#: ../src/widgets/text-toolbar.cpp:1405
msgid "Vertical"
msgstr ""
#. Label
-#: ../src/widgets/text-toolbar.cpp:1406
+#: ../src/widgets/text-toolbar.cpp:1412
msgid "Text orientation"
msgstr ""
#. Drop down menu
-#: ../src/widgets/text-toolbar.cpp:1429
+#: ../src/widgets/text-toolbar.cpp:1435
msgid "Smaller spacing"
msgstr ""
-#: ../src/widgets/text-toolbar.cpp:1429 ../src/widgets/text-toolbar.cpp:1460
-#: ../src/widgets/text-toolbar.cpp:1491
+#: ../src/widgets/text-toolbar.cpp:1435 ../src/widgets/text-toolbar.cpp:1466
+#: ../src/widgets/text-toolbar.cpp:1497
msgctxt "Text tool"
msgid "Normal"
msgstr ""
-#: ../src/widgets/text-toolbar.cpp:1429
+#: ../src/widgets/text-toolbar.cpp:1435
msgid "Larger spacing"
msgstr ""
#. name
-#: ../src/widgets/text-toolbar.cpp:1434
+#: ../src/widgets/text-toolbar.cpp:1440
msgid "Line Height"
msgstr ""
#. label
-#: ../src/widgets/text-toolbar.cpp:1435
+#: ../src/widgets/text-toolbar.cpp:1441
msgid "Line:"
msgstr ""
#. short label
-#: ../src/widgets/text-toolbar.cpp:1436
+#: ../src/widgets/text-toolbar.cpp:1442
msgid "Spacing between lines (times font size)"
msgstr ""
#. Drop down menu
-#: ../src/widgets/text-toolbar.cpp:1460 ../src/widgets/text-toolbar.cpp:1491
+#: ../src/widgets/text-toolbar.cpp:1466 ../src/widgets/text-toolbar.cpp:1497
msgid "Negative spacing"
msgstr ""
-#: ../src/widgets/text-toolbar.cpp:1460 ../src/widgets/text-toolbar.cpp:1491
+#: ../src/widgets/text-toolbar.cpp:1466 ../src/widgets/text-toolbar.cpp:1497
msgid "Positive spacing"
msgstr ""
#. name
-#: ../src/widgets/text-toolbar.cpp:1465
+#: ../src/widgets/text-toolbar.cpp:1471
msgid "Word spacing"
msgstr ""
#. label
-#: ../src/widgets/text-toolbar.cpp:1466
+#: ../src/widgets/text-toolbar.cpp:1472
msgid "Word:"
msgstr ""
#. short label
-#: ../src/widgets/text-toolbar.cpp:1467
+#: ../src/widgets/text-toolbar.cpp:1473
msgid "Spacing between words (px)"
msgstr ""
#. name
-#: ../src/widgets/text-toolbar.cpp:1496
+#: ../src/widgets/text-toolbar.cpp:1502
msgid "Letter spacing"
msgstr ""
#. label
-#: ../src/widgets/text-toolbar.cpp:1497
+#: ../src/widgets/text-toolbar.cpp:1503
msgid "Letter:"
msgstr ""
#. short label
-#: ../src/widgets/text-toolbar.cpp:1498
+#: ../src/widgets/text-toolbar.cpp:1504
msgid "Spacing between letters (px)"
msgstr ""
#. name
-#: ../src/widgets/text-toolbar.cpp:1527
+#: ../src/widgets/text-toolbar.cpp:1533
msgid "Kerning"
msgstr ""
#. label
-#: ../src/widgets/text-toolbar.cpp:1528
+#: ../src/widgets/text-toolbar.cpp:1534
msgid "Kern:"
msgstr ""
#. short label
-#: ../src/widgets/text-toolbar.cpp:1529
+#: ../src/widgets/text-toolbar.cpp:1535
msgid "Horizontal kerning (px)"
msgstr ""
#. name
-#: ../src/widgets/text-toolbar.cpp:1558
+#: ../src/widgets/text-toolbar.cpp:1564
msgid "Vertical Shift"
msgstr ""
#. label
-#: ../src/widgets/text-toolbar.cpp:1559
+#: ../src/widgets/text-toolbar.cpp:1565
msgid "Vert:"
msgstr ""
#. short label
-#: ../src/widgets/text-toolbar.cpp:1560
+#: ../src/widgets/text-toolbar.cpp:1566
msgid "Vertical shift (px)"
msgstr ""
#. name
-#: ../src/widgets/text-toolbar.cpp:1589
+#: ../src/widgets/text-toolbar.cpp:1595
msgid "Letter rotation"
msgstr ""
#. label
-#: ../src/widgets/text-toolbar.cpp:1590
+#: ../src/widgets/text-toolbar.cpp:1596
msgid "Rot:"
msgstr ""
#. short label
-#: ../src/widgets/text-toolbar.cpp:1591
+#: ../src/widgets/text-toolbar.cpp:1597
msgid "Character rotation (degrees)"
msgstr ""
-#: ../src/widgets/toolbox.cpp:181
+#: ../src/widgets/toolbox.cpp:177
msgid "Color/opacity used for color tweaking"
msgstr ""
-#: ../src/widgets/toolbox.cpp:189
+#: ../src/widgets/toolbox.cpp:185
msgid "Style of new stars"
msgstr ""
-#: ../src/widgets/toolbox.cpp:191
+#: ../src/widgets/toolbox.cpp:187
msgid "Style of new rectangles"
msgstr ""
-#: ../src/widgets/toolbox.cpp:193
+#: ../src/widgets/toolbox.cpp:189
msgid "Style of new 3D boxes"
msgstr ""
-#: ../src/widgets/toolbox.cpp:195
+#: ../src/widgets/toolbox.cpp:191
msgid "Style of new ellipses"
msgstr ""
-#: ../src/widgets/toolbox.cpp:197
+#: ../src/widgets/toolbox.cpp:193
msgid "Style of new spirals"
msgstr ""
-#: ../src/widgets/toolbox.cpp:199
+#: ../src/widgets/toolbox.cpp:195
msgid "Style of new paths created by Pencil"
msgstr ""
-#: ../src/widgets/toolbox.cpp:201
+#: ../src/widgets/toolbox.cpp:197
msgid "Style of new paths created by Pen"
msgstr ""
-#: ../src/widgets/toolbox.cpp:203
+#: ../src/widgets/toolbox.cpp:199
msgid "Style of new calligraphic strokes"
msgstr ""
-#: ../src/widgets/toolbox.cpp:205 ../src/widgets/toolbox.cpp:207
+#: ../src/widgets/toolbox.cpp:201 ../src/widgets/toolbox.cpp:203
msgid "TBD"
msgstr ""
-#: ../src/widgets/toolbox.cpp:219
+#: ../src/widgets/toolbox.cpp:215
msgid "Style of Paint Bucket fill objects"
msgstr ""
-#: ../src/widgets/toolbox.cpp:1683
+#: ../src/widgets/toolbox.cpp:1679
msgid "Bounding box"
msgstr ""
-#: ../src/widgets/toolbox.cpp:1683
+#: ../src/widgets/toolbox.cpp:1679
msgid "Snap bounding boxes"
msgstr ""
-#: ../src/widgets/toolbox.cpp:1692
+#: ../src/widgets/toolbox.cpp:1688
msgid "Bounding box edges"
msgstr ""
-#: ../src/widgets/toolbox.cpp:1692
+#: ../src/widgets/toolbox.cpp:1688
msgid "Snap to edges of a bounding box"
msgstr ""
-#: ../src/widgets/toolbox.cpp:1701
+#: ../src/widgets/toolbox.cpp:1697
msgid "Bounding box corners"
msgstr ""
-#: ../src/widgets/toolbox.cpp:1701
+#: ../src/widgets/toolbox.cpp:1697
msgid "Snap bounding box corners"
msgstr ""
-#: ../src/widgets/toolbox.cpp:1710
+#: ../src/widgets/toolbox.cpp:1706
msgid "BBox Edge Midpoints"
msgstr ""
-#: ../src/widgets/toolbox.cpp:1710
+#: ../src/widgets/toolbox.cpp:1706
msgid "Snap midpoints of bounding box edges"
msgstr ""
-#: ../src/widgets/toolbox.cpp:1720
+#: ../src/widgets/toolbox.cpp:1716
msgid "BBox Centers"
msgstr ""
-#: ../src/widgets/toolbox.cpp:1720
+#: ../src/widgets/toolbox.cpp:1716
msgid "Snapping centers of bounding boxes"
msgstr ""
-#: ../src/widgets/toolbox.cpp:1729
+#: ../src/widgets/toolbox.cpp:1725
msgid "Snap nodes, paths, and handles"
msgstr ""
-#: ../src/widgets/toolbox.cpp:1737
+#: ../src/widgets/toolbox.cpp:1733
msgid "Snap to paths"
msgstr ""
-#: ../src/widgets/toolbox.cpp:1746
+#: ../src/widgets/toolbox.cpp:1742
msgid "Path intersections"
msgstr ""
-#: ../src/widgets/toolbox.cpp:1746
+#: ../src/widgets/toolbox.cpp:1742
msgid "Snap to path intersections"
msgstr ""
-#: ../src/widgets/toolbox.cpp:1755
+#: ../src/widgets/toolbox.cpp:1751
msgid "To nodes"
msgstr ""
-#: ../src/widgets/toolbox.cpp:1755
+#: ../src/widgets/toolbox.cpp:1751
msgid "Snap cusp nodes, incl. rectangle corners"
msgstr ""
-#: ../src/widgets/toolbox.cpp:1764
+#: ../src/widgets/toolbox.cpp:1760
msgid "Smooth nodes"
msgstr ""
-#: ../src/widgets/toolbox.cpp:1764
+#: ../src/widgets/toolbox.cpp:1760
msgid "Snap smooth nodes, incl. quadrant points of ellipses"
msgstr ""
-#: ../src/widgets/toolbox.cpp:1773
+#: ../src/widgets/toolbox.cpp:1769
msgid "Line Midpoints"
msgstr ""
-#: ../src/widgets/toolbox.cpp:1773
+#: ../src/widgets/toolbox.cpp:1769
msgid "Snap midpoints of line segments"
msgstr ""
-#: ../src/widgets/toolbox.cpp:1782
+#: ../src/widgets/toolbox.cpp:1778
msgid "Others"
msgstr ""
-#: ../src/widgets/toolbox.cpp:1782
+#: ../src/widgets/toolbox.cpp:1778
msgid "Snap other points (centers, guide origins, gradient handles, etc.)"
msgstr ""
-#: ../src/widgets/toolbox.cpp:1790
+#: ../src/widgets/toolbox.cpp:1786
msgid "Object Centers"
msgstr ""
-#: ../src/widgets/toolbox.cpp:1790
+#: ../src/widgets/toolbox.cpp:1786
msgid "Snap centers of objects"
msgstr ""
-#: ../src/widgets/toolbox.cpp:1799
+#: ../src/widgets/toolbox.cpp:1795
msgid "Rotation Centers"
msgstr ""
-#: ../src/widgets/toolbox.cpp:1799
+#: ../src/widgets/toolbox.cpp:1795
msgid "Snap an item's rotation center"
msgstr ""
-#: ../src/widgets/toolbox.cpp:1808
+#: ../src/widgets/toolbox.cpp:1804
msgid "Text baseline"
msgstr ""
-#: ../src/widgets/toolbox.cpp:1808
+#: ../src/widgets/toolbox.cpp:1804
msgid "Snap text anchors and baselines"
msgstr ""
-#: ../src/widgets/toolbox.cpp:1818
+#: ../src/widgets/toolbox.cpp:1814
msgid "Page border"
msgstr ""
-#: ../src/widgets/toolbox.cpp:1818
+#: ../src/widgets/toolbox.cpp:1814
msgid "Snap to the page border"
msgstr ""
-#: ../src/widgets/toolbox.cpp:1827
+#: ../src/widgets/toolbox.cpp:1823
msgid "Snap to grids"
msgstr ""
-#: ../src/widgets/toolbox.cpp:1836
+#: ../src/widgets/toolbox.cpp:1832
msgid "Snap guides"
msgstr ""
@@ -29554,6 +29682,7 @@ msgid ""
msgstr ""
#: ../share/extensions/jessyInk_autoTexts.py:54
+#, python-brace-format
msgid ""
"Node with id '{0}' is not a suitable text node and was therefore ignored.\n"
"\n"
@@ -29580,6 +29709,7 @@ msgid ""
msgstr ""
#: ../share/extensions/jessyInk_summary.py:69
+#, python-brace-format
msgid "JessyInk script version {0} installed."
msgstr ""
@@ -29600,6 +29730,7 @@ msgid ""
msgstr ""
#: ../share/extensions/jessyInk_summary.py:94
+#, python-brace-format
msgid "{0}Layer name: {1}"
msgstr ""
@@ -29608,6 +29739,7 @@ msgid "{0}Transition in: {1} ({2!s} s)"
msgstr ""
#: ../share/extensions/jessyInk_summary.py:104
+#, python-brace-format
msgid "{0}Transition in: {1}"
msgstr ""
@@ -29616,20 +29748,24 @@ msgid "{0}Transition out: {1} ({2!s} s)"
msgstr ""
#: ../share/extensions/jessyInk_summary.py:113
+#, python-brace-format
msgid "{0}Transition out: {1}"
msgstr ""
#: ../share/extensions/jessyInk_summary.py:120
+#, python-brace-format
msgid ""
"\n"
"{0}Auto-texts:"
msgstr ""
#: ../share/extensions/jessyInk_summary.py:123
+#, python-brace-format
msgid "{0}\t\"{1}\" (object id \"{2}\") will be replaced by \"{3}\"."
msgstr ""
#: ../share/extensions/jessyInk_summary.py:168
+#, python-brace-format
msgid ""
"\n"
"{0}Initial effect (order number {1}):"
@@ -29642,10 +29778,12 @@ msgid ""
msgstr ""
#: ../share/extensions/jessyInk_summary.py:174
+#, python-brace-format
msgid "{0}\tView will be set according to object \"{1}\""
msgstr ""
#: ../share/extensions/jessyInk_summary.py:176
+#, python-brace-format
msgid "{0}\tObject \"{1}\""
msgstr ""
@@ -29658,6 +29796,7 @@ msgid " will disappear"
msgstr ""
#: ../share/extensions/jessyInk_summary.py:184
+#, python-brace-format
msgid " using effect \"{0}\""
msgstr ""
@@ -29782,16 +29921,23 @@ msgid ""
msgstr ""
#. issue error if no paths found
-#: ../share/extensions/plotter.py:67
+#: ../share/extensions/plotter.py:70
msgid ""
"No paths where found. Please convert all objects you want to plot into paths."
msgstr ""
-#: ../share/extensions/plotter.py:144
-msgid "pySerial is not installed."
+#: ../share/extensions/plotter.py:148
+msgid ""
+"pySerial is not installed.\n"
+"\n"
+"1. Download pySerial here (not the \".exe\"!): http://pypi.python.org/pypi/"
+"pyserial\n"
+"2. Extract the \"serial\" subfolder from the zip to the following folder: C:"
+"\\[Program files]\\inkscape\\python\\Lib\\\n"
+"3. Restart Inkscape."
msgstr ""
-#: ../share/extensions/plotter.py:164
+#: ../share/extensions/plotter.py:200
msgid ""
"Could not open port. Please check that your plotter is running, connected "
"and the settings are correct."
@@ -29917,7 +30063,12 @@ msgstr ""
#: ../share/extensions/uniconv-ext.py:56
#: ../share/extensions/uniconv_output.py:122
-msgid "You need to install the UniConvertor software.\n"
+msgid ""
+"You need to install the UniConvertor software.\n"
+"For GNU/Linux: install the package python-uniconvertor.\n"
+"For Windows: download it from\n"
+"http://sk1project.org/modules.php?name=Products&product=uniconvertor\n"
+"and install into your Inkscape's Python location\n"
msgstr ""
#: ../share/extensions/voronoi2svg.py:215
@@ -32295,13 +32446,13 @@ msgstr ""
#: ../share/extensions/hpgl_input.inx.h:3
#: ../share/extensions/hpgl_output.inx.h:4
-#: ../share/extensions/plotter.inx.h:25
+#: ../share/extensions/plotter.inx.h:34
msgid "Resolution X (dpi):"
msgstr ""
#: ../share/extensions/hpgl_input.inx.h:4
#: ../share/extensions/hpgl_output.inx.h:5
-#: ../share/extensions/plotter.inx.h:26
+#: ../share/extensions/plotter.inx.h:35
msgid ""
"The amount of steps the plotter moves if it moves for 1 inch on the X axis "
"(Default: 1016.0)"
@@ -32309,13 +32460,13 @@ msgstr ""
#: ../share/extensions/hpgl_input.inx.h:5
#: ../share/extensions/hpgl_output.inx.h:6
-#: ../share/extensions/plotter.inx.h:27
+#: ../share/extensions/plotter.inx.h:36
msgid "Resolution Y (dpi):"
msgstr ""
#: ../share/extensions/hpgl_input.inx.h:6
#: ../share/extensions/hpgl_output.inx.h:7
-#: ../share/extensions/plotter.inx.h:28
+#: ../share/extensions/plotter.inx.h:37
msgid ""
"The amount of steps the plotter moves if it moves for 1 inch on the Y axis "
"(Default: 1016.0)"
@@ -32330,7 +32481,7 @@ msgid "Check this to show movements between paths (Default: Unchecked)"
msgstr ""
#: ../share/extensions/hpgl_input.inx.h:9
-#: ../share/extensions/hpgl_output.inx.h:34
+#: ../share/extensions/hpgl_output.inx.h:35
msgid "HP Graphics Language file (*.hpgl)"
msgstr ""
@@ -32350,34 +32501,34 @@ msgid ""
msgstr ""
#: ../share/extensions/hpgl_output.inx.h:3
-#: ../share/extensions/plotter.inx.h:24
+#: ../share/extensions/plotter.inx.h:33
msgid "Plotter Settings "
msgstr ""
#: ../share/extensions/hpgl_output.inx.h:8
-#: ../share/extensions/plotter.inx.h:29
+#: ../share/extensions/plotter.inx.h:38
msgid "Pen number:"
msgstr ""
#: ../share/extensions/hpgl_output.inx.h:9
-#: ../share/extensions/plotter.inx.h:30
+#: ../share/extensions/plotter.inx.h:39
msgid "The number of the pen (tool) to use (Standard: '1')"
msgstr ""
#: ../share/extensions/hpgl_output.inx.h:10
-#: ../share/extensions/plotter.inx.h:31
+#: ../share/extensions/plotter.inx.h:40
msgid "Pen force (g):"
msgstr ""
#: ../share/extensions/hpgl_output.inx.h:11
-#: ../share/extensions/plotter.inx.h:32
+#: ../share/extensions/plotter.inx.h:41
msgid ""
"The amount of force pushing down the pen in grams, set to 0 to omit command; "
"most plotters ignore this command (Default: 0)"
msgstr ""
#: ../share/extensions/hpgl_output.inx.h:12
-#: ../share/extensions/plotter.inx.h:33
+#: ../share/extensions/plotter.inx.h:42
msgid "Pen speed (cm/s or mm/s):"
msgstr ""
@@ -32393,115 +32544,123 @@ msgid "Rotation (°, Clockwise):"
msgstr ""
#: ../share/extensions/hpgl_output.inx.h:15
-#: ../share/extensions/plotter.inx.h:36
+#: ../share/extensions/plotter.inx.h:45
msgid "Rotation of the drawing (Default: 0°)"
msgstr ""
#: ../share/extensions/hpgl_output.inx.h:16
-#: ../share/extensions/plotter.inx.h:37
+#: ../share/extensions/plotter.inx.h:46
msgid "Mirror X axis"
msgstr ""
#: ../share/extensions/hpgl_output.inx.h:17
-#: ../share/extensions/plotter.inx.h:38
+#: ../share/extensions/plotter.inx.h:47
msgid "Check this to mirror the X axis (Default: Unchecked)"
msgstr ""
#: ../share/extensions/hpgl_output.inx.h:18
-#: ../share/extensions/plotter.inx.h:39
+#: ../share/extensions/plotter.inx.h:48
msgid "Mirror Y axis"
msgstr ""
#: ../share/extensions/hpgl_output.inx.h:19
-#: ../share/extensions/plotter.inx.h:40
+#: ../share/extensions/plotter.inx.h:49
msgid "Check this to mirror the Y axis (Default: Unchecked)"
msgstr ""
#: ../share/extensions/hpgl_output.inx.h:20
-#: ../share/extensions/plotter.inx.h:41
+#: ../share/extensions/plotter.inx.h:50
msgid "Center zero point"
msgstr ""
#: ../share/extensions/hpgl_output.inx.h:21
-#: ../share/extensions/plotter.inx.h:42
+#: ../share/extensions/plotter.inx.h:51
msgid ""
"Check this if your plotter uses a centered zero point (Default: Unchecked)"
msgstr ""
#: ../share/extensions/hpgl_output.inx.h:22
-#: ../share/extensions/plotter.inx.h:43
-msgid "Plot Features "
+#: ../share/extensions/plotter.inx.h:52
+msgid ""
+"If you want to use multiple pens on your pen plotter create one layer for "
+"each pen, name the layers \"Pen 1\", \"Pen 2\", etc., and put your drawings "
+"in the corresponding layers. This overrules the pen number option above."
msgstr ""
#: ../share/extensions/hpgl_output.inx.h:23
-#: ../share/extensions/plotter.inx.h:44
-msgid "Overcut (mm):"
+#: ../share/extensions/plotter.inx.h:53
+msgid "Plot Features "
msgstr ""
#: ../share/extensions/hpgl_output.inx.h:24
-#: ../share/extensions/plotter.inx.h:45
+#: ../share/extensions/plotter.inx.h:54
+msgid "Overcut (mm):"
+msgstr ""
+
+#: ../share/extensions/hpgl_output.inx.h:25
+#: ../share/extensions/plotter.inx.h:55
msgid ""
"The distance in mm that will be cut over the starting point of the path to "
"prevent open paths, set to 0.0 to omit command (Default: 1.00)"
msgstr ""
-#: ../share/extensions/hpgl_output.inx.h:25
-#: ../share/extensions/plotter.inx.h:46
+#: ../share/extensions/hpgl_output.inx.h:26
+#: ../share/extensions/plotter.inx.h:56
msgid "Tool offset (mm):"
msgstr ""
-#: ../share/extensions/hpgl_output.inx.h:26
-#: ../share/extensions/plotter.inx.h:47
+#: ../share/extensions/hpgl_output.inx.h:27
+#: ../share/extensions/plotter.inx.h:57
msgid ""
"The offset from the tool tip to the tool axis in mm, set to 0.0 to omit "
"command (Default: 0.25)"
msgstr ""
-#: ../share/extensions/hpgl_output.inx.h:27
-#: ../share/extensions/plotter.inx.h:48
+#: ../share/extensions/hpgl_output.inx.h:28
+#: ../share/extensions/plotter.inx.h:58
msgid "Use precut"
msgstr ""
-#: ../share/extensions/hpgl_output.inx.h:28
-#: ../share/extensions/plotter.inx.h:49
+#: ../share/extensions/hpgl_output.inx.h:29
+#: ../share/extensions/plotter.inx.h:59
msgid ""
"Check this to cut a small line before the real drawing starts to correctly "
"align the tool orientation. (Default: Checked)"
msgstr ""
-#: ../share/extensions/hpgl_output.inx.h:29
-#: ../share/extensions/plotter.inx.h:50
+#: ../share/extensions/hpgl_output.inx.h:30
+#: ../share/extensions/plotter.inx.h:60
msgid "Curve flatness:"
msgstr ""
-#: ../share/extensions/hpgl_output.inx.h:30
-#: ../share/extensions/plotter.inx.h:51
+#: ../share/extensions/hpgl_output.inx.h:31
+#: ../share/extensions/plotter.inx.h:61
msgid ""
"Curves are divided into lines, this number controls how fine the curves will "
"be reproduced, the smaller the finer (Default: '1.2')"
msgstr ""
-#: ../share/extensions/hpgl_output.inx.h:31
-#: ../share/extensions/plotter.inx.h:52
+#: ../share/extensions/hpgl_output.inx.h:32
+#: ../share/extensions/plotter.inx.h:62
msgid "Auto align"
msgstr ""
-#: ../share/extensions/hpgl_output.inx.h:32
-#: ../share/extensions/plotter.inx.h:53
+#: ../share/extensions/hpgl_output.inx.h:33
+#: ../share/extensions/plotter.inx.h:63
msgid ""
"Check this to auto align the drawing to the zero point (Plus the tool offset "
"if used). If unchecked you have to make sure that all parts of your drawing "
"are within the document border! (Default: Checked)"
msgstr ""
-#: ../share/extensions/hpgl_output.inx.h:33
-#: ../share/extensions/plotter.inx.h:56
+#: ../share/extensions/hpgl_output.inx.h:34
+#: ../share/extensions/plotter.inx.h:66
msgid ""
"All these settings depend on the plotter you use, for more information "
"please consult the manual or homepage for your plotter."
msgstr ""
-#: ../share/extensions/hpgl_output.inx.h:35
+#: ../share/extensions/hpgl_output.inx.h:36
msgid "Export an HP Graphics Language file"
msgstr ""
@@ -33772,94 +33931,127 @@ msgid "The Baud rate of your serial connection (Default: 9600)"
msgstr ""
#: ../share/extensions/plotter.inx.h:8
-msgid "Flow control:"
+msgid "Serial byte size:"
+msgstr ""
+
+#: ../share/extensions/plotter.inx.h:10
+#, no-c-format
+msgid ""
+"The Byte size of your serial connection, 99% of all plotters use the default "
+"setting (Default: 8 Bits)"
+msgstr ""
+
+#: ../share/extensions/plotter.inx.h:11
+msgid "Serial stop bits:"
+msgstr ""
+
+#: ../share/extensions/plotter.inx.h:13
+#, no-c-format
+msgid ""
+"The Stop bits of your serial connection, 99% of all plotters use the default "
+"setting (Default: 1 Bit)"
+msgstr ""
+
+#: ../share/extensions/plotter.inx.h:14
+msgid "Serial parity:"
+msgstr ""
+
+#: ../share/extensions/plotter.inx.h:16
+#, no-c-format
+msgid ""
+"The Parity of your serial connection, 99% of all plotters use the default "
+"setting (Default: None)"
msgstr ""
-#: ../share/extensions/plotter.inx.h:9
+#: ../share/extensions/plotter.inx.h:17
+msgid "Serial flow control:"
+msgstr ""
+
+#: ../share/extensions/plotter.inx.h:18
msgid ""
"The Software / Hardware flow control of your serial connection (Default: "
"Software)"
msgstr ""
-#: ../share/extensions/plotter.inx.h:10
+#: ../share/extensions/plotter.inx.h:19
msgid "Command language:"
msgstr ""
-#: ../share/extensions/plotter.inx.h:11
+#: ../share/extensions/plotter.inx.h:20
msgid "The command language to use (Default: HPGL)"
msgstr ""
-#: ../share/extensions/plotter.inx.h:12
+#: ../share/extensions/plotter.inx.h:21
msgid "Initialization commands:"
msgstr ""
-#: ../share/extensions/plotter.inx.h:13
+#: ../share/extensions/plotter.inx.h:22
msgid ""
"Commands that will be sent to the plotter before the main data stream, only "
"use this if you know what you are doing! (Default: Empty)"
msgstr ""
-#: ../share/extensions/plotter.inx.h:14
+#: ../share/extensions/plotter.inx.h:23
msgid "Software (XON/XOFF)"
msgstr ""
-#: ../share/extensions/plotter.inx.h:15
+#: ../share/extensions/plotter.inx.h:24
msgid "Hardware (RTS/CTS)"
msgstr ""
-#: ../share/extensions/plotter.inx.h:16
+#: ../share/extensions/plotter.inx.h:25
msgid "Hardware (DSR/DTR + RTS/CTS)"
msgstr ""
-#: ../share/extensions/plotter.inx.h:17
+#: ../share/extensions/plotter.inx.h:26
msgctxt "Flow control"
msgid "None"
msgstr ""
-#: ../share/extensions/plotter.inx.h:18
+#: ../share/extensions/plotter.inx.h:27
msgid "HPGL"
msgstr ""
-#: ../share/extensions/plotter.inx.h:19
+#: ../share/extensions/plotter.inx.h:28
msgid "DMPL"
msgstr ""
-#: ../share/extensions/plotter.inx.h:20
+#: ../share/extensions/plotter.inx.h:29
msgid "KNK Plotter (HPGL variant)"
msgstr ""
-#: ../share/extensions/plotter.inx.h:21
+#: ../share/extensions/plotter.inx.h:30
msgid ""
"Using wrong settings can under certain circumstances cause Inkscape to "
"freeze. Always save your work before plotting!"
msgstr ""
-#: ../share/extensions/plotter.inx.h:22
+#: ../share/extensions/plotter.inx.h:31
msgid ""
"This can be a physical serial connection or a USB-to-Serial bridge. Ask your "
"plotter manufacturer for drivers if needed."
msgstr ""
-#: ../share/extensions/plotter.inx.h:23
+#: ../share/extensions/plotter.inx.h:32
msgid "Parallel (LPT) connections are not supported."
msgstr ""
-#: ../share/extensions/plotter.inx.h:34
+#: ../share/extensions/plotter.inx.h:43
msgid ""
"The speed the pen will move with in centimeters or millimeters per second "
"(depending on your plotter model), set to 0 to omit command. Most plotters "
"ignore this command. (Default: 0)"
msgstr ""
-#: ../share/extensions/plotter.inx.h:35
+#: ../share/extensions/plotter.inx.h:44
msgid "Rotation (°, clockwise):"
msgstr ""
-#: ../share/extensions/plotter.inx.h:54
+#: ../share/extensions/plotter.inx.h:64
msgid "Show debug information"
msgstr ""
-#: ../share/extensions/plotter.inx.h:55
+#: ../share/extensions/plotter.inx.h:65
msgid ""
"Check this to get verbose information about the plot without actually "
"sending something to the plotter (A.k.a. data dump) (Default: Unchecked)"
diff --git a/po/lv.po b/po/lv.po
index 8d6e1e11c..29bbc1ed5 100644
--- a/po/lv.po
+++ b/po/lv.po
@@ -7,8 +7,8 @@ msgid ""
msgstr ""
"Project-Id-Version: Inkscape\n"
"Report-Msgid-Bugs-To: inkscape-devel@lists.sourceforge.net\n"
-"POT-Creation-Date: 2015-03-10 09:10+0100\n"
-"PO-Revision-Date: 2015-03-22 14:04+0200\n"
+"POT-Creation-Date: 2015-05-11 18:05+0200\n"
+"PO-Revision-Date: 2015-05-17 17:29+0200\n"
"Last-Translator: Jānis Eisaks <je@dv.lv>\n"
"Language-Team: Latvian <lata-l10n@googlegroups.com>\n"
"Language: lv\n"
@@ -16,7 +16,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\n"
-"X-Generator: Poedit 1.7.4\n"
+"X-Generator: Poedit 1.7.6\n"
"X-Poedit-SourceCharset: UTF-8\n"
#: ../inkscape.desktop.in.h:1
@@ -3580,10 +3580,9 @@ msgstr "Izmantojot tālruni"
#. Symbols: ./BalloonSymbols.svg
#: ../share/symbols/symbols.h:139
-#, fuzzy
msgctxt "Symbol"
msgid "Hip Balloon"
-msgstr "Hip-Hop"
+msgstr "Jautrie baloni"
#. Symbols: ./BalloonSymbols.svg
#: ../share/symbols/symbols.h:140
@@ -3703,7 +3702,7 @@ msgstr "Tieƥsaistes krātuve"
#: ../share/symbols/symbols.h:159
msgctxt "Symbol"
msgid "Keying"
-msgstr ""
+msgstr "KejoĆĄana"
#. Symbols: ./FlowSymbols.svg
#: ../share/symbols/symbols.h:160
@@ -3725,10 +3724,9 @@ msgstr "Ārpuslapas savienotājs"
#. Symbols: ./FlowSymbols.svg
#: ../share/symbols/symbols.h:163
-#, fuzzy
msgctxt "Symbol"
msgid "Transmittal Tape"
-msgstr "Lenƥu iekārta"
+msgstr "Pārneses lenta"
#. Symbols: ./FlowSymbols.svg
#: ../share/symbols/symbols.h:164
@@ -3900,10 +3898,9 @@ msgstr "Velosipēdu celiƆơ"
#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:195 ../share/symbols/symbols.h:196
-#, fuzzy
msgctxt "Symbol"
msgid "Boat Launch"
-msgstr "Palaist (A)"
+msgstr "Laivu ielaiĆĄana"
#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:197 ../share/symbols/symbols.h:198
@@ -3933,7 +3930,7 @@ msgstr "Nometnes vieta"
#: ../share/symbols/symbols.h:205 ../share/symbols/symbols.h:206
msgctxt "Symbol"
msgid "CanoeAccess"
-msgstr ""
+msgstr "Laivu pietuvieta"
#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:207 ../share/symbols/symbols.h:208
@@ -4011,7 +4008,7 @@ msgstr "Atkritumu tvertne"
#: ../share/symbols/symbols.h:235 ../share/symbols/symbols.h:236
msgctxt "Symbol"
msgid "Lodging"
-msgstr ""
+msgstr "Gultasvieta"
#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:237 ../share/symbols/symbols.h:238
@@ -4063,10 +4060,9 @@ msgstr "Kārtībnieka birojs"
#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:255 ../share/symbols/symbols.h:256
-#, fuzzy
msgctxt "Symbol"
msgid "RV Campground"
-msgstr "Galu noapaÄŒoĆĄana"
+msgstr "Kempings kemperiem"
#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:257 ../share/symbols/symbols.h:258
@@ -4082,10 +4078,9 @@ msgstr "Burāƥana"
#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:261 ../share/symbols/symbols.h:262
-#, fuzzy
msgctxt "Symbol"
msgid "Sanitary Disposal Station"
-msgstr "Noklusētā kadru izmeơana:"
+msgstr "Sanitārais pukts"
#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:263 ../share/symbols/symbols.h:264
@@ -4095,10 +4090,9 @@ msgstr "NirĆĄana"
#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:265 ../share/symbols/symbols.h:266
-#, fuzzy
msgctxt "Symbol"
msgid "Self Guided Trail"
-msgstr "Aste:"
+msgstr "Taka uz paƥa atbildību"
#. Symbols: ./MapSymbolsNPS.svg
#: ../share/symbols/symbols.h:267 ../share/symbols/symbols.h:268
@@ -4272,135 +4266,135 @@ msgstr "Nav iepriekơējās tālummaiƆas."
msgid "No next zoom."
msgstr "Nav nākoơās tālummaiƆas."
-#: ../src/display/canvas-axonomgrid.cpp:361 ../src/display/canvas-grid.cpp:701
+#: ../src/display/canvas-axonomgrid.cpp:357 ../src/display/canvas-grid.cpp:697
msgid "Grid _units:"
msgstr "Tīkla _vienības"
-#: ../src/display/canvas-axonomgrid.cpp:363 ../src/display/canvas-grid.cpp:703
+#: ../src/display/canvas-axonomgrid.cpp:359 ../src/display/canvas-grid.cpp:699
msgid "_Origin X:"
msgstr "Sā_kums X:"
-#: ../src/display/canvas-axonomgrid.cpp:363 ../src/display/canvas-grid.cpp:703 ../src/ui/dialog/inkscape-preferences.cpp:746 ../src/ui/dialog/inkscape-preferences.cpp:771
+#: ../src/display/canvas-axonomgrid.cpp:359 ../src/display/canvas-grid.cpp:699 ../src/ui/dialog/inkscape-preferences.cpp:746 ../src/ui/dialog/inkscape-preferences.cpp:771
msgid "X coordinate of grid origin"
msgstr "ReĆŸÄŁa sākuma X koordināte"
-#: ../src/display/canvas-axonomgrid.cpp:366 ../src/display/canvas-grid.cpp:706
+#: ../src/display/canvas-axonomgrid.cpp:362 ../src/display/canvas-grid.cpp:702
msgid "O_rigin Y:"
msgstr "Sāku_ms Y:"
-#: ../src/display/canvas-axonomgrid.cpp:366 ../src/display/canvas-grid.cpp:706 ../src/ui/dialog/inkscape-preferences.cpp:747 ../src/ui/dialog/inkscape-preferences.cpp:772
+#: ../src/display/canvas-axonomgrid.cpp:362 ../src/display/canvas-grid.cpp:702 ../src/ui/dialog/inkscape-preferences.cpp:747 ../src/ui/dialog/inkscape-preferences.cpp:772
msgid "Y coordinate of grid origin"
msgstr "ReĆŸÄŁa sākuma Y koordināte"
-#: ../src/display/canvas-axonomgrid.cpp:369 ../src/display/canvas-grid.cpp:712
+#: ../src/display/canvas-axonomgrid.cpp:365 ../src/display/canvas-grid.cpp:708
msgid "Spacing _Y:"
msgstr "Atstarpe _Y:"
-#: ../src/display/canvas-axonomgrid.cpp:369 ../src/ui/dialog/inkscape-preferences.cpp:775
+#: ../src/display/canvas-axonomgrid.cpp:365 ../src/ui/dialog/inkscape-preferences.cpp:775
msgid "Base length of z-axis"
msgstr "Z ass bāzes garums"
-#: ../src/display/canvas-axonomgrid.cpp:372 ../src/ui/dialog/inkscape-preferences.cpp:778 ../src/widgets/box3d-toolbar.cpp:302
+#: ../src/display/canvas-axonomgrid.cpp:368 ../src/ui/dialog/inkscape-preferences.cpp:778 ../src/widgets/box3d-toolbar.cpp:302
msgid "Angle X:"
msgstr "LeƆķis X:"
-#: ../src/display/canvas-axonomgrid.cpp:372 ../src/ui/dialog/inkscape-preferences.cpp:778
+#: ../src/display/canvas-axonomgrid.cpp:368 ../src/ui/dialog/inkscape-preferences.cpp:778
msgid "Angle of x-axis"
msgstr "X ass leƆķis"
-#: ../src/display/canvas-axonomgrid.cpp:374 ../src/ui/dialog/inkscape-preferences.cpp:779 ../src/widgets/box3d-toolbar.cpp:381
+#: ../src/display/canvas-axonomgrid.cpp:370 ../src/ui/dialog/inkscape-preferences.cpp:779 ../src/widgets/box3d-toolbar.cpp:381
msgid "Angle Z:"
msgstr "LeƆķis Z:"
-#: ../src/display/canvas-axonomgrid.cpp:374 ../src/ui/dialog/inkscape-preferences.cpp:779
+#: ../src/display/canvas-axonomgrid.cpp:370 ../src/ui/dialog/inkscape-preferences.cpp:779
msgid "Angle of z-axis"
msgstr "Z ass leƆķis"
-#: ../src/display/canvas-axonomgrid.cpp:378 ../src/display/canvas-grid.cpp:717
+#: ../src/display/canvas-axonomgrid.cpp:374 ../src/display/canvas-grid.cpp:713
msgid "Minor grid line _color:"
msgstr "ReĆŸÄŁa palÄ«glÄ«niju _krāsa:"
-#: ../src/display/canvas-axonomgrid.cpp:378 ../src/display/canvas-grid.cpp:717 ../src/ui/dialog/inkscape-preferences.cpp:730
+#: ../src/display/canvas-axonomgrid.cpp:374 ../src/display/canvas-grid.cpp:713 ../src/ui/dialog/inkscape-preferences.cpp:730
msgid "Minor grid line color"
msgstr "ReĆŸÄŁa palÄ«glÄ«niju krāsa"
-#: ../src/display/canvas-axonomgrid.cpp:378 ../src/display/canvas-grid.cpp:717
+#: ../src/display/canvas-axonomgrid.cpp:374 ../src/display/canvas-grid.cpp:713
msgid "Color of the minor grid lines"
msgstr "ReĆŸÄŁa palÄ«glÄ«niju krāsa"
-#: ../src/display/canvas-axonomgrid.cpp:383 ../src/display/canvas-grid.cpp:722
+#: ../src/display/canvas-axonomgrid.cpp:379 ../src/display/canvas-grid.cpp:718
msgid "Ma_jor grid line color:"
msgstr "_Galveno reĆŸÄŁa lÄ«niju krāsa:"
-#: ../src/display/canvas-axonomgrid.cpp:383 ../src/display/canvas-grid.cpp:722 ../src/ui/dialog/inkscape-preferences.cpp:732
+#: ../src/display/canvas-axonomgrid.cpp:379 ../src/display/canvas-grid.cpp:718 ../src/ui/dialog/inkscape-preferences.cpp:732
msgid "Major grid line color"
msgstr "ReĆŸÄŁa pamatlÄ«niju krāsa"
-#: ../src/display/canvas-axonomgrid.cpp:384 ../src/display/canvas-grid.cpp:723
+#: ../src/display/canvas-axonomgrid.cpp:380 ../src/display/canvas-grid.cpp:719
msgid "Color of the major (highlighted) grid lines"
msgstr "ReĆŸÄŁa pamatlÄ«niju (izcelto) krāsa"
-#: ../src/display/canvas-axonomgrid.cpp:388 ../src/display/canvas-grid.cpp:727
+#: ../src/display/canvas-axonomgrid.cpp:384 ../src/display/canvas-grid.cpp:723
msgid "_Major grid line every:"
msgstr "ReĆŸÄŁa pa_matlÄ«nija ik pēc:"
-#: ../src/display/canvas-axonomgrid.cpp:388 ../src/display/canvas-grid.cpp:727
+#: ../src/display/canvas-axonomgrid.cpp:384 ../src/display/canvas-grid.cpp:723
msgid "lines"
msgstr "rindas"
-#: ../src/display/canvas-grid.cpp:64
+#: ../src/display/canvas-grid.cpp:60
msgid "Rectangular grid"
msgstr "TaisnstĆ«rveida reĆŸÄŁis"
-#: ../src/display/canvas-grid.cpp:65
+#: ../src/display/canvas-grid.cpp:61
msgid "Axonometric grid"
msgstr "Aksonometriskais reĆŸÄŁis"
-#: ../src/display/canvas-grid.cpp:250
+#: ../src/display/canvas-grid.cpp:246
msgid "Create new grid"
msgstr "Izveidot jaunu reĆŸÄŁi"
-#: ../src/display/canvas-grid.cpp:316
+#: ../src/display/canvas-grid.cpp:312
msgid "_Enabled"
msgstr "_Aktivēts"
-#: ../src/display/canvas-grid.cpp:317
+#: ../src/display/canvas-grid.cpp:313
msgid "Determines whether to snap to this grid or not. Can be 'on' for invisible grids."
msgstr "Nosaka, vai pievilkt ĆĄim reĆŸÄŁim vai nē. Var bĆ«t ieslēgts arÄ« neredzamiem reĆŸÄŁiem."
-#: ../src/display/canvas-grid.cpp:321
+#: ../src/display/canvas-grid.cpp:317
msgid "Snap to visible _grid lines only"
msgstr "Pievilkt tikai red_zamām reĆŸÄŁa lÄ«nijām"
-#: ../src/display/canvas-grid.cpp:322
+#: ../src/display/canvas-grid.cpp:318
msgid "When zoomed out, not all grid lines will be displayed. Only the visible ones will be snapped to"
msgstr "Tālinātā skatā visas reĆŸÄŁa lÄ«nijas nebĆ«s redzamas. Piesaiste tiks veikta tikai redzamām lÄ«nijām"
-#: ../src/display/canvas-grid.cpp:326
+#: ../src/display/canvas-grid.cpp:322
msgid "_Visible"
msgstr "_Redzams"
-#: ../src/display/canvas-grid.cpp:327
+#: ../src/display/canvas-grid.cpp:323
msgid "Determines whether the grid is displayed or not. Objects are still snapped to invisible grids."
msgstr "Nosaka, vai reĆŸÄŁis tiek rādÄ«ts vai nē. Objekti joprojām tiks piesaistÄ«ti neredzamajam reĆŸÄŁim."
-#: ../src/display/canvas-grid.cpp:709
+#: ../src/display/canvas-grid.cpp:705
msgid "Spacing _X:"
msgstr "Atstarpe _X:"
-#: ../src/display/canvas-grid.cpp:709 ../src/ui/dialog/inkscape-preferences.cpp:752
+#: ../src/display/canvas-grid.cpp:705 ../src/ui/dialog/inkscape-preferences.cpp:752
msgid "Distance between vertical grid lines"
msgstr "Attālums starp vertikālām reĆŸÄŁa lÄ«nijām."
-#: ../src/display/canvas-grid.cpp:712 ../src/ui/dialog/inkscape-preferences.cpp:753
+#: ../src/display/canvas-grid.cpp:708 ../src/ui/dialog/inkscape-preferences.cpp:753
msgid "Distance between horizontal grid lines"
msgstr "Attālums starp horizontālām reĆŸÄŁa lÄ«nijām."
-#: ../src/display/canvas-grid.cpp:744
+#: ../src/display/canvas-grid.cpp:740
msgid "_Show dots instead of lines"
msgstr "_Līniju vietā rādīt punktus "
-#: ../src/display/canvas-grid.cpp:745
+#: ../src/display/canvas-grid.cpp:741
msgid "If set, displays dots at gridpoints instead of gridlines"
msgstr "Ja iestatÄ«ts, reĆŸÄŁa krustpunktos lÄ«niju vietā tiks rādÄ«ti punkti"
@@ -4549,11 +4543,11 @@ msgstr "RobeĆŸrāmja viduspunkts"
msgid "Bounding box side midpoint"
msgstr "RobeĆŸrāmja malas viduspunkts"
-#: ../src/display/snap-indicator.cpp:196 ../src/ui/tool/node.cpp:1505
+#: ../src/display/snap-indicator.cpp:196 ../src/ui/tool/node.cpp:1506
msgid "Smooth node"
msgstr "Gludais mezgls"
-#: ../src/display/snap-indicator.cpp:199 ../src/ui/tool/node.cpp:1504
+#: ../src/display/snap-indicator.cpp:199 ../src/ui/tool/node.cpp:1505
msgid "Cusp node"
msgstr "Asais mezgls"
@@ -4623,7 +4617,7 @@ msgstr "AtmiƆas dokuments %d"
msgid "Memory document %1"
msgstr "AtmiƆas dokuments %1"
-#: ../src/document.cpp:855
+#: ../src/document.cpp:886
#, c-format
msgid "Unnamed document %d"
msgstr "Nenosaukts dokuments %d"
@@ -4633,11 +4627,11 @@ msgid "[Unchanged]"
msgstr "[Nemainīts]"
#. Edit
-#: ../src/event-log.cpp:371 ../src/event-log.cpp:374 ../src/verbs.cpp:2465
+#: ../src/event-log.cpp:371 ../src/event-log.cpp:374 ../src/verbs.cpp:2434
msgid "_Undo"
msgstr "_Atcelt"
-#: ../src/event-log.cpp:381 ../src/event-log.cpp:385 ../src/verbs.cpp:2467
+#: ../src/event-log.cpp:381 ../src/event-log.cpp:385 ../src/verbs.cpp:2436
msgid "_Redo"
msgstr "At_kārtot"
@@ -4665,7 +4659,7 @@ msgstr " apraksts: "
msgid " (No preferences)"
msgstr " (Nav iestatījumu)"
-#: ../src/extension/effect.h:70 ../src/verbs.cpp:2239
+#: ../src/extension/effect.h:70 ../src/verbs.cpp:2208
msgid "Extensions"
msgstr "Paplaƥinājumi"
@@ -4685,84 +4679,84 @@ msgstr ""
msgid "Show dialog on startup"
msgstr "Rādīt dialogu starta laikā"
-#: ../src/extension/execution-env.cpp:144
+#: ../src/extension/execution-env.cpp:138
#, c-format
msgid "'%s' working, please wait..."
msgstr "'%s' darbojas, lƫdzu, uzgaidiet..."
#. static int i = 0;
#. std::cout << "Checking module[" << i++ << "]: " << name << std::endl;
-#: ../src/extension/extension.cpp:271
+#: ../src/extension/extension.cpp:267
msgid " This is caused by an improper .inx file for this extension. An improper .inx file could have been caused by a faulty installation of Inkscape."
msgstr " Tā cēlonis ir nederÄ«ga datne ar paplaĆĄinājumu .inx. NederÄ«ga .inx datne varētu bĆ«t kÄŒĆ«dainais Inkscape uzstādīƥanas rezultāts."
-#: ../src/extension/extension.cpp:281
+#: ../src/extension/extension.cpp:277
msgid "the extension is designed for Windows only."
msgstr "paplaơinājums ir izstrādāts tikai lietoơanai Windows vidē."
-#: ../src/extension/extension.cpp:286
+#: ../src/extension/extension.cpp:282
msgid "an ID was not defined for it."
msgstr "tam nav definēts ID."
-#: ../src/extension/extension.cpp:290
+#: ../src/extension/extension.cpp:286
msgid "there was no name defined for it."
msgstr "tam nav definēts nosaukums."
-#: ../src/extension/extension.cpp:294
+#: ../src/extension/extension.cpp:290
msgid "the XML description of it got lost."
msgstr "tā XML apraksts ir zudis."
-#: ../src/extension/extension.cpp:298
+#: ../src/extension/extension.cpp:294
msgid "no implementation was defined for the extension."
msgstr "paplaƥinājumam nav noteikts pielietojums."
#. std::cout << "Failed: " << *(_deps[i]) << std::endl;
-#: ../src/extension/extension.cpp:305
+#: ../src/extension/extension.cpp:301
msgid "a dependency was not met."
msgstr "nav izpildīta atkarības prasība."
-#: ../src/extension/extension.cpp:325
+#: ../src/extension/extension.cpp:321
msgid "Extension \""
msgstr "Paplaƥinājums \""
-#: ../src/extension/extension.cpp:325
+#: ../src/extension/extension.cpp:321
msgid "\" failed to load because "
msgstr "\" neizdevās ielādēt, jo "
-#: ../src/extension/extension.cpp:674
+#: ../src/extension/extension.cpp:670
#, c-format
msgid "Could not create extension error log file '%s'"
msgstr "Nav iespējams izveidot paplaĆĄinājuma kÄŒĆ«du ĆŸurnāla datni '%s'"
-#: ../src/extension/extension.cpp:782 ../share/extensions/webslicer_create_rect.inx.h:2
+#: ../src/extension/extension.cpp:778 ../share/extensions/webslicer_create_rect.inx.h:2
msgid "Name:"
msgstr "Nosaukums:"
-#: ../src/extension/extension.cpp:783
+#: ../src/extension/extension.cpp:779
msgid "ID:"
msgstr "ID:"
-#: ../src/extension/extension.cpp:784
+#: ../src/extension/extension.cpp:780
msgid "State:"
msgstr "Stāvoklis:"
-#: ../src/extension/extension.cpp:784
+#: ../src/extension/extension.cpp:780
msgid "Loaded"
msgstr "Ielādēts"
-#: ../src/extension/extension.cpp:784
+#: ../src/extension/extension.cpp:780
msgid "Unloaded"
msgstr "Aizvākts no atmiƆas"
-#: ../src/extension/extension.cpp:784
+#: ../src/extension/extension.cpp:780
msgid "Deactivated"
msgstr "Deaktivēts"
-#: ../src/extension/extension.cpp:824
+#: ../src/extension/extension.cpp:820
msgid "Currently there is no help available for this Extension. Please look on the Inkscape website or ask on the mailing lists if you have questions regarding this extension."
msgstr "Ć obrÄ«d palÄ«dzÄ«ba par ĆĄo paplaĆĄinājumu nav pieejama. Apmeklējiet Inkscape mājas lapu vai jautājiet vēstuÄŒu kopās, ja Jums ir jautājumi par ĆĄo paplaĆĄinājumu."
-#: ../src/extension/implementation/script.cpp:1057
+#: ../src/extension/implementation/script.cpp:1063
msgid "Inkscape has received additional data from the script executed. The script did not return an error, but this may indicate the results will not be as expected."
msgstr "Inkscape ir saƆēmusi papildu datus no izpildÄ«tā skripta. Skripts nav nodevis kÄŒĆ«das paziƆojumu, taču tas var nozÄ«mēt, ka rezultāti var nebĆ«t gaidÄ«tie."
@@ -4779,14 +4773,14 @@ msgstr "ModuÄŒu mape (%s) nav pieejama. Ārējie moduÄŒi no ĆĄÄ« mapes netiks i
msgid "Adaptive Threshold"
msgstr "Pielāgojamais slieksnis"
-#: ../src/extension/internal/bitmap/adaptiveThreshold.cpp:41 ../src/extension/internal/bitmap/raise.cpp:42 ../src/extension/internal/bitmap/sample.cpp:41 ../src/extension/internal/bluredge.cpp:138
-#: ../src/ui/dialog/lpe-powerstroke-properties.cpp:63 ../src/ui/dialog/object-attributes.cpp:68 ../src/ui/dialog/object-attributes.cpp:77 ../src/widgets/calligraphy-toolbar.cpp:430 ../src/widgets/eraser-toolbar.cpp:128
-#: ../src/widgets/spray-toolbar.cpp:116 ../src/widgets/tweak-toolbar.cpp:128 ../share/extensions/foldablebox.inx.h:2
+#: ../src/extension/internal/bitmap/adaptiveThreshold.cpp:41 ../src/extension/internal/bitmap/raise.cpp:42 ../src/extension/internal/bitmap/sample.cpp:41 ../src/extension/internal/bluredge.cpp:136
+#: ../src/ui/dialog/lpe-powerstroke-properties.cpp:59 ../src/ui/dialog/object-attributes.cpp:68 ../src/ui/dialog/object-attributes.cpp:77 ../src/ui/widget/page-sizer.cpp:249 ../src/widgets/calligraphy-toolbar.cpp:430
+#: ../src/widgets/eraser-toolbar.cpp:128 ../src/widgets/spray-toolbar.cpp:116 ../src/widgets/tweak-toolbar.cpp:128 ../share/extensions/foldablebox.inx.h:2
msgid "Width:"
msgstr "Platums:"
#: ../src/extension/internal/bitmap/adaptiveThreshold.cpp:42 ../src/extension/internal/bitmap/raise.cpp:43 ../src/extension/internal/bitmap/sample.cpp:42 ../src/ui/dialog/object-attributes.cpp:69 ../src/ui/dialog/object-attributes.cpp:78
-#: ../share/extensions/foldablebox.inx.h:3
+#: ../src/ui/widget/page-sizer.cpp:250 ../share/extensions/foldablebox.inx.h:3
msgid "Height:"
msgstr "Augstums:"
@@ -4816,7 +4810,7 @@ msgstr "Pievienot troksni"
#. _settings->add_checkbutton(false, SP_ATTR_STITCHTILES, _("Stitch Tiles"), "stitch", "noStitch");
#: ../src/extension/internal/bitmap/addNoise.cpp:47 ../src/extension/internal/filter/color.h:501 ../src/extension/internal/filter/color.h:1572 ../src/extension/internal/filter/color.h:1660 ../src/extension/internal/filter/distort.h:69
-#: ../src/extension/internal/filter/morphology.h:60 ../src/rdf.cpp:244 ../src/ui/dialog/filter-effects-dialog.cpp:2842 ../src/ui/dialog/filter-effects-dialog.cpp:2916 ../src/ui/dialog/object-attributes.cpp:49
+#: ../src/extension/internal/filter/morphology.h:60 ../src/rdf.cpp:244 ../src/ui/dialog/filter-effects-dialog.cpp:2858 ../src/ui/dialog/filter-effects-dialog.cpp:2932 ../src/ui/dialog/object-attributes.cpp:49
#: ../share/extensions/jessyInk_effects.inx.h:5 ../share/extensions/jessyInk_export.inx.h:3 ../share/extensions/jessyInk_transitions.inx.h:5 ../share/extensions/webslicer_create_rect.inx.h:14
msgid "Type:"
msgstr "Tips:"
@@ -4854,7 +4848,7 @@ msgid "Blur"
msgstr "AizmigloĆĄana"
#: ../src/extension/internal/bitmap/blur.cpp:40 ../src/extension/internal/bitmap/charcoal.cpp:40 ../src/extension/internal/bitmap/edge.cpp:39 ../src/extension/internal/bitmap/emboss.cpp:40 ../src/extension/internal/bitmap/medianFilter.cpp:39
-#: ../src/extension/internal/bitmap/oilPaint.cpp:39 ../src/extension/internal/bitmap/sharpen.cpp:40 ../src/extension/internal/bitmap/unsharpmask.cpp:43 ../src/ui/dialog/filter-effects-dialog.cpp:2894
+#: ../src/extension/internal/bitmap/oilPaint.cpp:39 ../src/extension/internal/bitmap/sharpen.cpp:40 ../src/extension/internal/bitmap/unsharpmask.cpp:43 ../src/ui/dialog/filter-effects-dialog.cpp:2910
msgid "Radius:"
msgstr "Rādiuss:"
@@ -5128,7 +5122,7 @@ msgstr "Stilizēt atlasīto(-ās) bitkarti(-es), lai tās izskatītos kā glezno
msgid "Opacity"
msgstr "Necaurspīdība"
-#: ../src/extension/internal/bitmap/opacity.cpp:40 ../src/ui/dialog/filter-effects-dialog.cpp:2884 ../src/ui/dialog/objects.cpp:1619 ../src/widgets/dropper-toolbar.cpp:83
+#: ../src/extension/internal/bitmap/opacity.cpp:40 ../src/ui/dialog/filter-effects-dialog.cpp:2900 ../src/ui/dialog/objects.cpp:1619 ../src/widgets/dropper-toolbar.cpp:83
msgid "Opacity:"
msgstr "Necaurspīdība:"
@@ -5221,7 +5215,7 @@ msgstr "SavirpuČot atlasīto(-ās) bitkarti(-es) ap centru"
msgid "Threshold"
msgstr "Slieksnis"
-#: ../src/extension/internal/bitmap/threshold.cpp:40 ../src/extension/internal/bitmap/unsharpmask.cpp:46 ../src/widgets/paintbucket-toolbar.cpp:148
+#: ../src/extension/internal/bitmap/threshold.cpp:40 ../src/extension/internal/bitmap/unsharpmask.cpp:46 ../src/widgets/paintbucket-toolbar.cpp:147
msgid "Threshold:"
msgstr "Slieksnis:"
@@ -5253,23 +5247,23 @@ msgstr "ViÄŒĆ†a garums:"
msgid "Alter selected bitmap(s) along sine wave"
msgstr "Sinusoidāli mainīt atlasīto(-ās) bitkarti(-es) "
-#: ../src/extension/internal/bluredge.cpp:136
+#: ../src/extension/internal/bluredge.cpp:134
msgid "Inset/Outset Halo"
msgstr "Palielināt/samazināt oreolu"
-#: ../src/extension/internal/bluredge.cpp:138
+#: ../src/extension/internal/bluredge.cpp:136
msgid "Width in px of the halo"
msgstr "Oreola platums pikseÄŒos"
-#: ../src/extension/internal/bluredge.cpp:139
+#: ../src/extension/internal/bluredge.cpp:137
msgid "Number of steps:"
msgstr "SoÄŒu skaits:"
-#: ../src/extension/internal/bluredge.cpp:139
+#: ../src/extension/internal/bluredge.cpp:137
msgid "Number of inset/outset copies of the object to make"
msgstr "Izveidojamais objekta saīsināto/pagarināto kopiju skaits"
-#: ../src/extension/internal/bluredge.cpp:143 ../share/extensions/extrude.inx.h:5 ../share/extensions/generate_voronoi.inx.h:9 ../share/extensions/interp.inx.h:7 ../share/extensions/motion.inx.h:4 ../share/extensions/pathalongpath.inx.h:18
+#: ../src/extension/internal/bluredge.cpp:141 ../share/extensions/extrude.inx.h:5 ../share/extensions/generate_voronoi.inx.h:9 ../share/extensions/interp.inx.h:7 ../share/extensions/motion.inx.h:4 ../share/extensions/pathalongpath.inx.h:18
#: ../share/extensions/pathscatter.inx.h:20 ../share/extensions/voronoi2svg.inx.h:13
msgid "Generate from Path"
msgstr "Veidot no ceÄŒa"
@@ -5291,9 +5285,8 @@ msgid "PostScript level 2"
msgstr "PostScript level 2"
#: ../src/extension/internal/cairo-ps-out.cpp:333 ../src/extension/internal/cairo-ps-out.cpp:375 ../src/extension/internal/cairo-renderer-pdf-out.cpp:250
-#, fuzzy
msgid "Text output options:"
-msgstr "Teksta izvades opcijas:"
+msgstr "Teksta izvades papildiespējas:"
#: ../src/extension/internal/cairo-ps-out.cpp:334 ../src/extension/internal/cairo-ps-out.cpp:376 ../src/extension/internal/cairo-renderer-pdf-out.cpp:251
msgid "Embed fonts"
@@ -5437,71 +5430,71 @@ msgstr "Corel DRAW Presentation Exchange datnes (.cmx)"
msgid "Open presentation exchange files saved in Corel DRAW"
msgstr "Atver Corel DRAW saglabātos Presentation Exchange datnes"
-#: ../src/extension/internal/emf-inout.cpp:3562
+#: ../src/extension/internal/emf-inout.cpp:3584
msgid "EMF Input"
msgstr "EMF ievade"
-#: ../src/extension/internal/emf-inout.cpp:3567
+#: ../src/extension/internal/emf-inout.cpp:3589
msgid "Enhanced Metafiles (*.emf)"
msgstr "Enhanced Metafile (*.emf)"
-#: ../src/extension/internal/emf-inout.cpp:3568
+#: ../src/extension/internal/emf-inout.cpp:3590
msgid "Enhanced Metafiles"
msgstr "Enhanced metafaili"
-#: ../src/extension/internal/emf-inout.cpp:3576
+#: ../src/extension/internal/emf-inout.cpp:3598
msgid "EMF Output"
msgstr "EMF izvade"
-#: ../src/extension/internal/emf-inout.cpp:3578 ../src/extension/internal/wmf-inout.cpp:3152
+#: ../src/extension/internal/emf-inout.cpp:3600 ../src/extension/internal/wmf-inout.cpp:3174
msgid "Convert texts to paths"
msgstr "Pārvērst tekstus par ceÄŒiem"
-#: ../src/extension/internal/emf-inout.cpp:3579 ../src/extension/internal/wmf-inout.cpp:3153
+#: ../src/extension/internal/emf-inout.cpp:3601 ../src/extension/internal/wmf-inout.cpp:3175
msgid "Map Unicode to Symbol font"
msgstr "Kartēt Unicode pret Symbol fontu"
-#: ../src/extension/internal/emf-inout.cpp:3580 ../src/extension/internal/wmf-inout.cpp:3154
+#: ../src/extension/internal/emf-inout.cpp:3602 ../src/extension/internal/wmf-inout.cpp:3176
msgid "Map Unicode to Wingdings"
msgstr "Kartēt Unicode pret Wingdings"
-#: ../src/extension/internal/emf-inout.cpp:3581 ../src/extension/internal/wmf-inout.cpp:3155
+#: ../src/extension/internal/emf-inout.cpp:3603 ../src/extension/internal/wmf-inout.cpp:3177
msgid "Map Unicode to Zapf Dingbats"
msgstr "Kartēt Unicode pret Zapf Dingbats"
-#: ../src/extension/internal/emf-inout.cpp:3582 ../src/extension/internal/wmf-inout.cpp:3156
+#: ../src/extension/internal/emf-inout.cpp:3604 ../src/extension/internal/wmf-inout.cpp:3178
msgid "Use MS Unicode PUA (0xF020-0xF0FF) for converted characters"
msgstr "Lietot MS Unicode PUA (0xF020-0xF0FF) pārvērstajām rakstzīmēm"
-#: ../src/extension/internal/emf-inout.cpp:3583 ../src/extension/internal/wmf-inout.cpp:3157
+#: ../src/extension/internal/emf-inout.cpp:3605 ../src/extension/internal/wmf-inout.cpp:3179
msgid "Compensate for PPT font bug"
msgstr "Kompensēt PPT fontu kÄŒĆ«du"
-#: ../src/extension/internal/emf-inout.cpp:3584 ../src/extension/internal/wmf-inout.cpp:3158
+#: ../src/extension/internal/emf-inout.cpp:3606 ../src/extension/internal/wmf-inout.cpp:3180
msgid "Convert dashed/dotted lines to single lines"
msgstr "Pārvēst raustÄ«tas/punktētas lÄ«nijas par atseviƥķām lÄ«nijam"
-#: ../src/extension/internal/emf-inout.cpp:3585 ../src/extension/internal/wmf-inout.cpp:3159
+#: ../src/extension/internal/emf-inout.cpp:3607 ../src/extension/internal/wmf-inout.cpp:3181
msgid "Convert gradients to colored polygon series"
msgstr "Pārvērst krāsu pārejas krāsas izkrāsotu daudzstĆ«ru rindās"
-#: ../src/extension/internal/emf-inout.cpp:3586
+#: ../src/extension/internal/emf-inout.cpp:3608
msgid "Use native rectangular linear gradients"
msgstr "Izmantot iebĆ«vētās taisnstĆ«rainas lineārās krāsu pārejas"
-#: ../src/extension/internal/emf-inout.cpp:3587
+#: ../src/extension/internal/emf-inout.cpp:3609
msgid "Map all fill patterns to standard EMF hatches"
msgstr "Kartēt visas aizpildÄ«juma faktĆ«ras pret standarta EMF iesvÄ«trojumiem"
-#: ../src/extension/internal/emf-inout.cpp:3588
+#: ../src/extension/internal/emf-inout.cpp:3610
msgid "Ignore image rotations"
msgstr "NeƆemt vērā attēla grieơanu"
-#: ../src/extension/internal/emf-inout.cpp:3592
+#: ../src/extension/internal/emf-inout.cpp:3614
msgid "Enhanced Metafile (*.emf)"
msgstr "Enhanced Metafile (*.emf)"
-#: ../src/extension/internal/emf-inout.cpp:3593
+#: ../src/extension/internal/emf-inout.cpp:3615
msgid "Enhanced Metafile"
msgstr "Enhanced metafails"
@@ -5531,7 +5524,7 @@ msgstr "Gaismas krāsa"
#: ../src/extension/internal/filter/color.h:511 ../src/extension/internal/filter/color.h:606 ../src/extension/internal/filter/color.h:728 ../src/extension/internal/filter/color.h:825 ../src/extension/internal/filter/color.h:904
#: ../src/extension/internal/filter/color.h:995 ../src/extension/internal/filter/color.h:1123 ../src/extension/internal/filter/color.h:1193 ../src/extension/internal/filter/color.h:1286 ../src/extension/internal/filter/color.h:1398
#: ../src/extension/internal/filter/color.h:1503 ../src/extension/internal/filter/color.h:1579 ../src/extension/internal/filter/color.h:1690 ../src/extension/internal/filter/distort.h:95 ../src/extension/internal/filter/distort.h:204
-#: ../src/extension/internal/filter/filter-file.cpp:151 ../src/extension/internal/filter/filter.cpp:214 ../src/extension/internal/filter/image.h:61 ../src/extension/internal/filter/morphology.h:75
+#: ../src/extension/internal/filter/filter-file.cpp:151 ../src/extension/internal/filter/filter.cpp:212 ../src/extension/internal/filter/image.h:61 ../src/extension/internal/filter/morphology.h:75
#: ../src/extension/internal/filter/morphology.h:202 ../src/extension/internal/filter/overlays.h:79 ../src/extension/internal/filter/paint.h:112 ../src/extension/internal/filter/paint.h:243 ../src/extension/internal/filter/paint.h:362
#: ../src/extension/internal/filter/paint.h:506 ../src/extension/internal/filter/paint.h:601 ../src/extension/internal/filter/paint.h:724 ../src/extension/internal/filter/paint.h:876 ../src/extension/internal/filter/paint.h:980
#: ../src/extension/internal/filter/protrusions.h:54 ../src/extension/internal/filter/shadows.h:80 ../src/extension/internal/filter/textures.h:90 ../src/extension/internal/filter/transparency.h:69
@@ -5690,17 +5683,17 @@ msgid "Bump source"
msgstr "Reljefa avots"
#: ../src/extension/internal/filter/bumps.h:88 ../src/extension/internal/filter/bumps.h:317 ../src/extension/internal/filter/color.h:158 ../src/extension/internal/filter/color.h:712 ../src/extension/internal/filter/color.h:896
-#: ../src/extension/internal/filter/transparency.h:132 ../src/filter-enums.cpp:128 ../src/ui/tools/flood-tool.cpp:183 ../src/widgets/sp-color-icc-selector.cpp:330 ../src/widgets/sp-color-scales.cpp:415 ../src/widgets/sp-color-scales.cpp:416
+#: ../src/extension/internal/filter/transparency.h:132 ../src/filter-enums.cpp:128 ../src/ui/tools/flood-tool.cpp:91 ../src/widgets/sp-color-icc-selector.cpp:330 ../src/widgets/sp-color-scales.cpp:415 ../src/widgets/sp-color-scales.cpp:416
msgid "Red"
msgstr "Sarkans"
#: ../src/extension/internal/filter/bumps.h:89 ../src/extension/internal/filter/bumps.h:318 ../src/extension/internal/filter/color.h:159 ../src/extension/internal/filter/color.h:713 ../src/extension/internal/filter/color.h:897
-#: ../src/extension/internal/filter/transparency.h:133 ../src/filter-enums.cpp:129 ../src/ui/tools/flood-tool.cpp:184 ../src/widgets/sp-color-icc-selector.cpp:331 ../src/widgets/sp-color-scales.cpp:418 ../src/widgets/sp-color-scales.cpp:419
+#: ../src/extension/internal/filter/transparency.h:133 ../src/filter-enums.cpp:129 ../src/ui/tools/flood-tool.cpp:92 ../src/widgets/sp-color-icc-selector.cpp:331 ../src/widgets/sp-color-scales.cpp:418 ../src/widgets/sp-color-scales.cpp:419
msgid "Green"
msgstr "ZaÄŒĆĄ"
#: ../src/extension/internal/filter/bumps.h:90 ../src/extension/internal/filter/bumps.h:319 ../src/extension/internal/filter/color.h:160 ../src/extension/internal/filter/color.h:714 ../src/extension/internal/filter/color.h:898
-#: ../src/extension/internal/filter/transparency.h:134 ../src/filter-enums.cpp:130 ../src/ui/tools/flood-tool.cpp:185 ../src/widgets/sp-color-icc-selector.cpp:332 ../src/widgets/sp-color-scales.cpp:421 ../src/widgets/sp-color-scales.cpp:422
+#: ../src/extension/internal/filter/transparency.h:134 ../src/filter-enums.cpp:130 ../src/ui/tools/flood-tool.cpp:93 ../src/widgets/sp-color-icc-selector.cpp:332 ../src/widgets/sp-color-scales.cpp:421 ../src/widgets/sp-color-scales.cpp:422
msgid "Blue"
msgstr "Zils"
@@ -5720,12 +5713,13 @@ msgstr "Atspīdums"
msgid "Diffuse"
msgstr "Izkliedēt"
-#: ../src/extension/internal/filter/bumps.h:98 ../src/extension/internal/filter/bumps.h:329 ../src/libgdl/gdl-dock-placeholder.c:175 ../src/libgdl/gdl-dock.c:199 ../src/widgets/rect-toolbar.cpp:334 ../share/extensions/interp_att_g.inx.h:11
+#: ../src/extension/internal/filter/bumps.h:98 ../src/extension/internal/filter/bumps.h:329 ../src/libgdl/gdl-dock-placeholder.c:175 ../src/libgdl/gdl-dock.c:199 ../src/ui/widget/page-sizer.cpp:250 ../src/widgets/rect-toolbar.cpp:334
+#: ../share/extensions/interp_att_g.inx.h:11
msgid "Height"
msgstr "Augstums"
#: ../src/extension/internal/filter/bumps.h:99 ../src/extension/internal/filter/bumps.h:330 ../src/extension/internal/filter/color.h:77 ../src/extension/internal/filter/color.h:899 ../src/extension/internal/filter/color.h:1188
-#: ../src/extension/internal/filter/paint.h:86 ../src/extension/internal/filter/paint.h:592 ../src/extension/internal/filter/paint.h:707 ../src/ui/tools/flood-tool.cpp:188 ../src/widgets/sp-color-icc-selector.cpp:341
+#: ../src/extension/internal/filter/paint.h:86 ../src/extension/internal/filter/paint.h:592 ../src/extension/internal/filter/paint.h:707 ../src/ui/tools/flood-tool.cpp:96 ../src/widgets/sp-color-icc-selector.cpp:341
#: ../src/widgets/sp-color-scales.cpp:447 ../src/widgets/sp-color-scales.cpp:448 ../src/widgets/tweak-toolbar.cpp:318 ../share/extensions/color_randomize.inx.h:5
msgid "Lightness"
msgstr "GaiĆĄums"
@@ -5758,11 +5752,11 @@ msgstr "Vieta"
msgid "Distant light options"
msgstr "Attāla gaismas avota papildiespējas"
-#: ../src/extension/internal/filter/bumps.h:110 ../src/extension/internal/filter/bumps.h:332 ../src/ui/dialog/filter-effects-dialog.cpp:1195
+#: ../src/extension/internal/filter/bumps.h:110 ../src/extension/internal/filter/bumps.h:332 ../src/ui/dialog/filter-effects-dialog.cpp:1196
msgid "Azimuth"
msgstr "Azimuts"
-#: ../src/extension/internal/filter/bumps.h:111 ../src/extension/internal/filter/bumps.h:333 ../src/ui/dialog/filter-effects-dialog.cpp:1196
+#: ../src/extension/internal/filter/bumps.h:111 ../src/extension/internal/filter/bumps.h:333 ../src/ui/dialog/filter-effects-dialog.cpp:1197
msgid "Elevation"
msgstr "Pacēlums"
@@ -5896,12 +5890,12 @@ msgid "Channel Painting"
msgstr "Kanālu krāsosana"
#: ../src/extension/internal/filter/color.h:157 ../src/extension/internal/filter/color.h:332 ../src/extension/internal/filter/paint.h:87 ../src/filter-enums.cpp:66 ../src/ui/dialog/inkscape-preferences.cpp:952
-#: ../src/ui/tools/flood-tool.cpp:187 ../src/widgets/sp-color-icc-selector.cpp:337 ../src/widgets/sp-color-icc-selector.cpp:342 ../src/widgets/sp-color-scales.cpp:444 ../src/widgets/sp-color-scales.cpp:445 ../src/widgets/tweak-toolbar.cpp:302
+#: ../src/ui/tools/flood-tool.cpp:95 ../src/widgets/sp-color-icc-selector.cpp:337 ../src/widgets/sp-color-icc-selector.cpp:342 ../src/widgets/sp-color-scales.cpp:444 ../src/widgets/sp-color-scales.cpp:445 ../src/widgets/tweak-toolbar.cpp:302
#: ../share/extensions/color_randomize.inx.h:4
msgid "Saturation"
msgstr "Piesātinājums"
-#: ../src/extension/internal/filter/color.h:161 ../src/extension/internal/filter/transparency.h:135 ../src/filter-enums.cpp:131 ../src/ui/tools/flood-tool.cpp:189
+#: ../src/extension/internal/filter/color.h:161 ../src/extension/internal/filter/transparency.h:135 ../src/filter-enums.cpp:131 ../src/ui/tools/flood-tool.cpp:97
msgid "Alpha"
msgstr "Alfa"
@@ -5911,43 +5905,43 @@ msgstr "Aizvietot RGB ar jebkuru krāsu"
#: ../src/extension/internal/filter/color.h:254
msgid "Color Blindness"
-msgstr ""
+msgstr "Krāsu aklums"
#: ../src/extension/internal/filter/color.h:258
msgid "Blindness type:"
-msgstr ""
+msgstr "Akluma tips:"
#: ../src/extension/internal/filter/color.h:259
msgid "Rod monochromacy (atypical achromatopsia)"
-msgstr ""
+msgstr "NĆ«jiƆu monohromāzija (atipiskā ahromatopsija)"
#: ../src/extension/internal/filter/color.h:260
msgid "Cone monochromacy (typical achromatopsia)"
-msgstr ""
+msgstr "Vālīƥu monohromāzija (tipiskā ahromatopsija)"
#: ../src/extension/internal/filter/color.h:261
-msgid "Geen weak (deuteranomaly)"
-msgstr ""
+msgid "Green weak (deuteranomaly)"
+msgstr "ZaČā pavājinājums (deiteranomālija)"
#: ../src/extension/internal/filter/color.h:262
msgid "Green blind (deuteranopia)"
-msgstr ""
+msgstr "ZaČā aklums (deiteranopija)"
#: ../src/extension/internal/filter/color.h:263
msgid "Red weak (protanomaly)"
-msgstr ""
+msgstr "Sarkanā pavājinājums (protanomālija)"
#: ../src/extension/internal/filter/color.h:264
msgid "Red blind (protanopia)"
-msgstr ""
+msgstr "Sarkanā aklums (protanopija)"
#: ../src/extension/internal/filter/color.h:265
msgid "Blue weak (tritanomaly)"
-msgstr ""
+msgstr "Zilā pavājinājums (tritanomālija)"
#: ../src/extension/internal/filter/color.h:266
msgid "Blue blind (tritanopia)"
-msgstr ""
+msgstr "Zilā aklums (tritanopija)"
#: ../src/extension/internal/filter/color.h:286
msgid "Simulate color blindness"
@@ -5997,11 +5991,11 @@ msgstr "SastāvdaČu pārnese"
msgid "Identity"
msgstr "Identitāte"
-#: ../src/extension/internal/filter/color.h:503 ../src/extension/internal/filter/paint.h:498 ../src/filter-enums.cpp:111 ../src/ui/dialog/filter-effects-dialog.cpp:1050
+#: ../src/extension/internal/filter/color.h:503 ../src/extension/internal/filter/paint.h:498 ../src/filter-enums.cpp:111 ../src/ui/dialog/filter-effects-dialog.cpp:1051
msgid "Table"
msgstr "Tabula"
-#: ../src/extension/internal/filter/color.h:504 ../src/extension/internal/filter/paint.h:499 ../src/filter-enums.cpp:112 ../src/ui/dialog/filter-effects-dialog.cpp:1053
+#: ../src/extension/internal/filter/color.h:504 ../src/extension/internal/filter/paint.h:499 ../src/filter-enums.cpp:112 ../src/ui/dialog/filter-effects-dialog.cpp:1054
msgid "Discrete"
msgstr "AtseviĆĄÄ·s"
@@ -6169,8 +6163,8 @@ msgstr "Gaismas"
msgid "Shadows"
msgstr "Ēnas"
-#: ../src/extension/internal/filter/color.h:1119 ../src/extension/internal/filter/paint.h:356 ../src/filter-enums.cpp:33 ../src/live_effects/effect.cpp:110 ../src/ui/dialog/filter-effects-dialog.cpp:1047
-#: ../src/widgets/gradient-toolbar.cpp:1159
+#: ../src/extension/internal/filter/color.h:1119 ../src/extension/internal/filter/paint.h:356 ../src/filter-enums.cpp:33 ../src/live_effects/effect.cpp:110 ../src/ui/dialog/filter-effects-dialog.cpp:1048
+#: ../src/widgets/gradient-toolbar.cpp:1162
msgid "Offset"
msgstr "Nobīde"
@@ -6195,12 +6189,12 @@ msgid "Red offset"
msgstr "Sarkanā nobīde"
#: ../src/extension/internal/filter/color.h:1270 ../src/extension/internal/filter/color.h:1273 ../src/extension/internal/filter/color.h:1276 ../src/extension/internal/filter/color.h:1382 ../src/extension/internal/filter/color.h:1385
-#: ../src/extension/internal/filter/color.h:1388 ../src/ui/dialog/input.cpp:1616 ../src/ui/dialog/layers.cpp:917
+#: ../src/extension/internal/filter/color.h:1388 ../src/ui/dialog/input.cpp:1616 ../src/ui/dialog/layers.cpp:925 ../src/ui/widget/page-sizer.cpp:247
msgid "X"
msgstr "X"
#: ../src/extension/internal/filter/color.h:1271 ../src/extension/internal/filter/color.h:1274 ../src/extension/internal/filter/color.h:1277 ../src/extension/internal/filter/color.h:1383 ../src/extension/internal/filter/color.h:1386
-#: ../src/extension/internal/filter/color.h:1389 ../src/ui/dialog/input.cpp:1616
+#: ../src/extension/internal/filter/color.h:1389 ../src/ui/dialog/input.cpp:1616 ../src/ui/widget/page-sizer.cpp:248
msgid "Y"
msgstr "Y"
@@ -6441,8 +6435,8 @@ msgstr "Ārējs"
msgid "Open"
msgstr "Atvērt"
-#: ../src/extension/internal/filter/morphology.h:65 ../src/libgdl/gdl-dock-placeholder.c:167 ../src/libgdl/gdl-dock.c:191 ../src/widgets/rect-toolbar.cpp:317 ../src/widgets/spray-toolbar.cpp:116 ../src/widgets/tweak-toolbar.cpp:128
-#: ../share/extensions/interp_att_g.inx.h:10
+#: ../src/extension/internal/filter/morphology.h:65 ../src/libgdl/gdl-dock-placeholder.c:167 ../src/libgdl/gdl-dock.c:191 ../src/ui/widget/page-sizer.cpp:249 ../src/widgets/rect-toolbar.cpp:317 ../src/widgets/spray-toolbar.cpp:116
+#: ../src/widgets/tweak-toolbar.cpp:128 ../share/extensions/interp_att_g.inx.h:10
msgid "Width"
msgstr "Platums"
@@ -6482,7 +6476,7 @@ msgstr "Pāri"
msgid "XOR"
msgstr "XOR"
-#: ../src/extension/internal/filter/morphology.h:179 ../src/ui/dialog/layer-properties.cpp:185 ../src/ui/dialog/lpe-powerstroke-properties.cpp:59
+#: ../src/extension/internal/filter/morphology.h:179 ../src/ui/dialog/layer-properties.cpp:185 ../src/ui/dialog/lpe-powerstroke-properties.cpp:55
msgid "Position:"
msgstr "Pozīcija:"
@@ -6639,13 +6633,13 @@ msgstr "Garums"
msgid "Convert image to an engraving made of vertical and horizontal lines"
msgstr "Pārvērst attēlu par gravīru, kas sastāv no vertikālām un horizontālām līnijām"
-#: ../src/extension/internal/filter/paint.h:331 ../src/ui/dialog/align-and-distribute.cpp:1003 ../src/widgets/desktop-widget.cpp:1996
+#: ../src/extension/internal/filter/paint.h:331 ../src/ui/dialog/align-and-distribute.cpp:999 ../src/widgets/desktop-widget.cpp:1998
msgid "Drawing"
msgstr "Zīmējums"
#. 0.91
#: ../src/extension/internal/filter/paint.h:335 ../src/extension/internal/filter/paint.h:496 ../src/extension/internal/filter/paint.h:590 ../src/extension/internal/filter/paint.h:976 ../src/live_effects/effect.cpp:151
-#: ../src/splivarot.cpp:2212
+#: ../src/splivarot.cpp:2201
msgid "Simplify"
msgstr "Vienkārƥot"
@@ -6913,7 +6907,7 @@ msgstr "Avots:"
msgid "Background"
msgstr "Fons"
-#: ../src/extension/internal/filter/transparency.h:59 ../src/ui/dialog/filter-effects-dialog.cpp:2839 ../src/ui/dialog/input.cpp:1088 ../src/widgets/eraser-toolbar.cpp:106 ../src/widgets/pencil-toolbar.cpp:132
+#: ../src/extension/internal/filter/transparency.h:59 ../src/ui/dialog/filter-effects-dialog.cpp:2855 ../src/ui/dialog/input.cpp:1088 ../src/widgets/eraser-toolbar.cpp:106 ../src/widgets/pencil-toolbar.cpp:132
#: ../src/widgets/spray-toolbar.cpp:186 ../src/widgets/tweak-toolbar.cpp:254 ../share/extensions/extrude.inx.h:2 ../share/extensions/triangle.inx.h:8
msgid "Mode:"
msgstr "ReĆŸÄ«ms:"
@@ -7035,31 +7029,31 @@ msgstr "GIMP krāsu pāreja (*.ggr)"
msgid "Gradients used in GIMP"
msgstr "GIMP izmantotās krāsu pārejas"
-#: ../src/extension/internal/grid.cpp:212 ../src/ui/widget/panel.cpp:118
+#: ../src/extension/internal/grid.cpp:205 ../src/ui/widget/panel.cpp:114
msgid "Grid"
msgstr "ReĆŸÄŁis"
-#: ../src/extension/internal/grid.cpp:214
+#: ../src/extension/internal/grid.cpp:207
msgid "Line Width:"
msgstr "Līnijas platums:"
-#: ../src/extension/internal/grid.cpp:215
+#: ../src/extension/internal/grid.cpp:208
msgid "Horizontal Spacing:"
msgstr "Horizontālais attālums:"
-#: ../src/extension/internal/grid.cpp:216
+#: ../src/extension/internal/grid.cpp:209
msgid "Vertical Spacing:"
msgstr "Vertikālais attālums:"
-#: ../src/extension/internal/grid.cpp:217
+#: ../src/extension/internal/grid.cpp:210
msgid "Horizontal Offset:"
msgstr "Horizontālā nobīde"
-#: ../src/extension/internal/grid.cpp:218
+#: ../src/extension/internal/grid.cpp:211
msgid "Vertical Offset:"
msgstr "Vertikālā nobīde:"
-#: ../src/extension/internal/grid.cpp:222 ../src/ui/dialog/inkscape-preferences.cpp:1477 ../share/extensions/draw_from_triangle.inx.h:58 ../share/extensions/eqtexsvg.inx.h:4 ../share/extensions/foldablebox.inx.h:9
+#: ../src/extension/internal/grid.cpp:215 ../src/ui/dialog/inkscape-preferences.cpp:1477 ../share/extensions/draw_from_triangle.inx.h:58 ../share/extensions/eqtexsvg.inx.h:4 ../share/extensions/foldablebox.inx.h:9
#: ../share/extensions/funcplot.inx.h:38 ../share/extensions/grid_cartesian.inx.h:23 ../share/extensions/grid_isometric.inx.h:11 ../share/extensions/grid_polar.inx.h:22 ../share/extensions/guides_creator.inx.h:25
#: ../share/extensions/hershey.inx.h:52 ../share/extensions/layout_nup.inx.h:35 ../share/extensions/lindenmayer.inx.h:34 ../share/extensions/param_curves.inx.h:30 ../share/extensions/perfectboundcover.inx.h:19
#: ../share/extensions/polyhedron_3d.inx.h:56 ../share/extensions/printing_marks.inx.h:20 ../share/extensions/render_alphabetsoup.inx.h:5 ../share/extensions/render_barcode.inx.h:5 ../share/extensions/render_barcode_datamatrix.inx.h:5
@@ -7068,11 +7062,11 @@ msgstr "Vertikālā nobīde:"
msgid "Render"
msgstr "Renderēt"
-#: ../src/extension/internal/grid.cpp:223 ../src/ui/dialog/document-properties.cpp:162 ../src/ui/dialog/inkscape-preferences.cpp:787 ../src/widgets/toolbox.cpp:1827
+#: ../src/extension/internal/grid.cpp:216 ../src/ui/dialog/document-properties.cpp:162 ../src/ui/dialog/inkscape-preferences.cpp:787 ../src/widgets/toolbox.cpp:1823
msgid "Grids"
msgstr "ReĆŸÄŁi"
-#: ../src/extension/internal/grid.cpp:226
+#: ../src/extension/internal/grid.cpp:219
msgid "Draw a path which is a grid"
msgstr "ZÄ«mēt ceÄŒu, kas ir reĆŸÄŁis"
@@ -7352,31 +7346,31 @@ msgstr "VSDX ievade"
msgid "Microsoft Visio 2013 drawing (*.vsdx)"
msgstr "Microsoft Visio 2013 zīmējums (*.vsdx)"
-#: ../src/extension/internal/wmf-inout.cpp:3136
+#: ../src/extension/internal/wmf-inout.cpp:3158
msgid "WMF Input"
msgstr "WMF ievade"
-#: ../src/extension/internal/wmf-inout.cpp:3141
+#: ../src/extension/internal/wmf-inout.cpp:3163
msgid "Windows Metafiles (*.wmf)"
msgstr "Windows Metafile (*.wmf)"
-#: ../src/extension/internal/wmf-inout.cpp:3142
+#: ../src/extension/internal/wmf-inout.cpp:3164
msgid "Windows Metafiles"
msgstr "Windows metafaili"
-#: ../src/extension/internal/wmf-inout.cpp:3150
+#: ../src/extension/internal/wmf-inout.cpp:3172
msgid "WMF Output"
msgstr "WMF izvade"
-#: ../src/extension/internal/wmf-inout.cpp:3160
+#: ../src/extension/internal/wmf-inout.cpp:3182
msgid "Map all fill patterns to standard WMF hatches"
msgstr "Kartēt visas aizpildÄ«juma faktĆ«ras pret standarta WMF iesvÄ«trojumiem"
-#: ../src/extension/internal/wmf-inout.cpp:3164 ../share/extensions/wmf_input.inx.h:2 ../share/extensions/wmf_output.inx.h:2
+#: ../src/extension/internal/wmf-inout.cpp:3186 ../share/extensions/wmf_input.inx.h:2 ../share/extensions/wmf_output.inx.h:2
msgid "Windows Metafile (*.wmf)"
msgstr "Windows Metafile (*.wmf)"
-#: ../src/extension/internal/wmf-inout.cpp:3165
+#: ../src/extension/internal/wmf-inout.cpp:3187
msgid "Windows Metafile"
msgstr "Windows metafails"
@@ -7412,7 +7406,7 @@ msgstr "default.svg"
msgid "Broken links have been changed to point to existing files."
msgstr "NederÄ«gās saites ir izlabotas un norāda uz pastāvoƥām datnēm."
-#: ../src/file.cpp:339 ../src/file.cpp:1255
+#: ../src/file.cpp:339 ../src/file.cpp:1252
#, c-format
msgid "Failed to load the requested file %s"
msgstr "Neizdevās ielādēt pieprasīto datni %s"
@@ -7477,7 +7471,7 @@ msgid "Document saved."
msgstr "Dokuments saglabāts"
#. We are saving for the first time; create a unique default filename
-#: ../src/file.cpp:866 ../src/file.cpp:1414
+#: ../src/file.cpp:866 ../src/file.cpp:1411
msgid "drawing"
msgstr "zīmējums"
@@ -7501,19 +7495,19 @@ msgstr "Nav izmaiƆu, kuras vajadzētu saglabāt."
msgid "Saving document..."
msgstr "Saglabā dokumentu..."
-#: ../src/file.cpp:1252 ../src/ui/dialog/inkscape-preferences.cpp:1450 ../src/ui/dialog/ocaldialogs.cpp:1244
+#: ../src/file.cpp:1249 ../src/ui/dialog/inkscape-preferences.cpp:1450 ../src/ui/dialog/ocaldialogs.cpp:1244
msgid "Import"
msgstr "Importēt"
-#: ../src/file.cpp:1302
+#: ../src/file.cpp:1299
msgid "Select file to import"
msgstr "Izvēlieties importējamo datni"
-#: ../src/file.cpp:1435
+#: ../src/file.cpp:1432
msgid "Select file to export to"
msgstr "Izvēlieties datni, uz kuru eksportēt"
-#: ../src/file.cpp:1688
+#: ../src/file.cpp:1685
msgid "Import Clip Art"
msgstr "Importēt attēlu galeriju"
@@ -7606,7 +7600,7 @@ msgstr "Atƥķirība"
msgid "Exclusion"
msgstr "Izslēgơana"
-#: ../src/filter-enums.cpp:65 ../src/ui/tools/flood-tool.cpp:186 ../src/widgets/sp-color-icc-selector.cpp:336 ../src/widgets/sp-color-icc-selector.cpp:340 ../src/widgets/sp-color-scales.cpp:441 ../src/widgets/sp-color-scales.cpp:442
+#: ../src/filter-enums.cpp:65 ../src/ui/tools/flood-tool.cpp:94 ../src/widgets/sp-color-icc-selector.cpp:336 ../src/widgets/sp-color-icc-selector.cpp:340 ../src/widgets/sp-color-scales.cpp:441 ../src/widgets/sp-color-scales.cpp:442
#: ../src/widgets/tweak-toolbar.cpp:286 ../share/extensions/color_randomize.inx.h:3
msgid "Hue"
msgstr "Tonis"
@@ -7672,7 +7666,7 @@ msgstr "Padarīt gaiƥāku"
msgid "Arithmetic"
msgstr "Aritmētisks"
-#: ../src/filter-enums.cpp:120 ../src/selection-chemistry.cpp:546
+#: ../src/filter-enums.cpp:120 ../src/selection-chemistry.cpp:545
msgid "Duplicate"
msgstr "Dublēt"
@@ -7709,15 +7703,15 @@ msgstr "Punkta gaisma"
msgid "Spot Light"
msgstr "Starmetis"
-#: ../src/gradient-chemistry.cpp:1579
+#: ../src/gradient-chemistry.cpp:1580
msgid "Invert gradient colors"
msgstr "Invertēt krāsu pārejas krāsas"
-#: ../src/gradient-chemistry.cpp:1605
+#: ../src/gradient-chemistry.cpp:1607
msgid "Reverse gradient"
msgstr "Apgriezt krāsu pāreju otrādi"
-#: ../src/gradient-chemistry.cpp:1619 ../src/widgets/gradient-selector.cpp:222
+#: ../src/gradient-chemistry.cpp:1621 ../src/widgets/gradient-selector.cpp:222
msgid "Delete swatch"
msgstr "Dzēst paleti"
@@ -7776,7 +7770,7 @@ msgstr "Apvienot krāsu pārejas turus"
msgid "Move gradient handle"
msgstr "Pārvietot krāsu pārejas turi"
-#: ../src/gradient-drag.cpp:1164 ../src/widgets/gradient-vector.cpp:827
+#: ../src/gradient-drag.cpp:1164 ../src/widgets/gradient-vector.cpp:828
msgid "Delete gradient stop"
msgstr "Dzēst krāsu pārejas pieturpunktu"
@@ -7806,57 +7800,57 @@ msgstr[0] "Krāsu pārejas punkts ir kopējs <b>%d</b> krāsu pārejai; lai atda
msgstr[1] "Krāsu pārejas punkts ir kopējs <b>%d</b> krāsu pārejām; lai atdalītu, velciet ar nospiestu <b>Shift</b>"
msgstr[2] "Krāsu pārejas punkts ir kopējs <b>%d</b> krāsu pārejām; lai atdalītu, velciet ar nospiestu <b>Shift</b>"
-#: ../src/gradient-drag.cpp:2378
+#: ../src/gradient-drag.cpp:2379
msgid "Move gradient handle(s)"
msgstr "Pārvietot krāsu pārejas turi(-us)"
-#: ../src/gradient-drag.cpp:2414
+#: ../src/gradient-drag.cpp:2415
msgid "Move gradient mid stop(s)"
msgstr "Pārvietot krāsu pārejas viduspunktu(s)"
-#: ../src/gradient-drag.cpp:2703
+#: ../src/gradient-drag.cpp:2704
msgid "Delete gradient stop(s)"
msgstr "Dzēst krāsu pārejas pieturpunktu(s)"
-#: ../src/inkscape.cpp:246
+#: ../src/inkscape.cpp:242
msgid "Autosave failed! Cannot create directory %1."
msgstr "Automātiskās saglabāƥanas kÄŒĆ«da! Nevar izveidot mapi %1."
-#: ../src/inkscape.cpp:255
+#: ../src/inkscape.cpp:251
msgid "Autosave failed! Cannot open directory %1."
msgstr "Automātiskās saglabāƥanas kÄŒĆ«da! Nevar atvērt mapi %1."
-#: ../src/inkscape.cpp:271
+#: ../src/inkscape.cpp:267
msgid "Autosaving documents..."
msgstr "Automātiski saglabāju dokumentus"
-#: ../src/inkscape.cpp:339
+#: ../src/inkscape.cpp:335
msgid "Autosave failed! Could not find inkscape extension to save document."
msgstr "Neizdevās automātiski saglabāt! Nav iespējams atrast dokumenta saglabāơanai nepiecieơamo Inkscape paplaơinājumu."
-#: ../src/inkscape.cpp:342 ../src/inkscape.cpp:349
+#: ../src/inkscape.cpp:338 ../src/inkscape.cpp:345
#, c-format
msgid "Autosave failed! File %s could not be saved."
msgstr "Automātiskā saglabāƥana neizdevās! Datni %s neizdevās saglabāt."
-#: ../src/inkscape.cpp:364
+#: ../src/inkscape.cpp:360
msgid "Autosave complete."
msgstr "Automātiskā saglabāƥana pabeigta."
-#: ../src/inkscape.cpp:622
+#: ../src/inkscape.cpp:618
msgid "Untitled document"
msgstr "Nenosaukts dokuments"
#. Show nice dialog box
-#: ../src/inkscape.cpp:654
+#: ../src/inkscape.cpp:650
msgid "Inkscape encountered an internal error and will close now.\n"
msgstr "Inkscape radās iekơēja kÄŒĆ«da un tagad tiks aizvērta.\n"
-#: ../src/inkscape.cpp:655
+#: ../src/inkscape.cpp:651
msgid "Automatic backups of unsaved documents were done to the following locations:\n"
msgstr "Nesaglabāto dokumentu automātiskās rezerves kopijas tika saglabātas sekojoơās mapēs:\n"
-#: ../src/inkscape.cpp:656
+#: ../src/inkscape.cpp:652
msgid "Automatic backup of the following documents failed:\n"
msgstr "Sekojoơu dokumentu automātiskā rezerves kopēơana neizdevās:\n"
@@ -7864,24 +7858,24 @@ msgstr "Sekojoơu dokumentu automātiskā rezerves kopēơana neizdevās:\n"
msgid "Node or handle drag canceled."
msgstr "Mezgla vai tura vilkĆĄana atcelta."
-#: ../src/knotholder.cpp:170
+#: ../src/knotholder.cpp:171
msgid "Change handle"
msgstr "Mainīt turi"
-#: ../src/knotholder.cpp:257
+#: ../src/knotholder.cpp:258
msgid "Move handle"
msgstr "Pārvietot turi"
#. TRANSLATORS: This refers to the pattern that's inside the object
-#: ../src/knotholder.cpp:276 ../src/knotholder.cpp:298
+#: ../src/knotholder.cpp:277 ../src/knotholder.cpp:299
msgid "<b>Move</b> the pattern fill inside the object"
msgstr "<b>Pārvietot</b> faktĆ«ras aizpildÄ«jumu objekta iekĆĄpusē"
-#: ../src/knotholder.cpp:280 ../src/knotholder.cpp:302
+#: ../src/knotholder.cpp:281 ../src/knotholder.cpp:303
msgid "<b>Scale</b> the pattern fill; uniformly if with <b>Ctrl</b>"
msgstr "<b>Mērogot</b> faktĆ«ras aizpildÄ«jumu; vienādā mērā - ar <b>Ctrl</b>"
-#: ../src/knotholder.cpp:284 ../src/knotholder.cpp:306
+#: ../src/knotholder.cpp:285 ../src/knotholder.cpp:307
msgid "<b>Rotate</b> the pattern fill; with <b>Ctrl</b> to snap angle"
msgstr "<b>Griezt</b> faktĆ«ras aizpildÄ«jumu; ar <b>Ctrl</b> - pievilkt leƆķim"
@@ -7918,7 +7912,7 @@ msgid "Dockitem which 'owns' this grip"
msgstr "Dokojamais elements, kam 'pieder' ĆĄis turis"
#. Name
-#: ../src/libgdl/gdl-dock-item.c:298 ../src/widgets/ruler.cpp:192 ../src/widgets/text-toolbar.cpp:1405 ../share/extensions/gcodetools_graffiti.inx.h:9 ../share/extensions/gcodetools_orientation_points.inx.h:2
+#: ../src/libgdl/gdl-dock-item.c:298 ../src/widgets/ruler.cpp:192 ../src/widgets/text-toolbar.cpp:1411 ../share/extensions/gcodetools_graffiti.inx.h:9 ../share/extensions/gcodetools_orientation_points.inx.h:2
msgid "Orientation"
msgstr "Orientācija"
@@ -8031,7 +8025,7 @@ msgstr "pamatdoks %p: objektu %p[%s] nav iespējams pievienot heơam. Tas jau sa
msgid "The new dock controller %p is automatic. Only manual dock objects should be named controller."
msgstr "Jaunā doka vadīkla %p ir automātiska. Tikai ar roku dokojami objekti bƫtu saucami par vadīklām."
-#: ../src/libgdl/gdl-dock-notebook.c:132 ../src/ui/dialog/align-and-distribute.cpp:1002 ../src/ui/dialog/document-properties.cpp:160 ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1537 ../src/widgets/desktop-widget.cpp:1992
+#: ../src/libgdl/gdl-dock-notebook.c:132 ../src/ui/dialog/align-and-distribute.cpp:998 ../src/ui/dialog/document-properties.cpp:160 ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1537 ../src/widgets/desktop-widget.cpp:1994
#: ../share/extensions/empty_page.inx.h:1 ../share/extensions/voronoi2svg.inx.h:9
msgid "Page"
msgstr "Lapa"
@@ -8040,7 +8034,7 @@ msgstr "Lapa"
msgid "The index of the current page"
msgstr "Paơreizējās lapas indekss"
-#: ../src/libgdl/gdl-dock-object.c:125 ../src/live_effects/parameter/originalpatharray.cpp:86 ../src/ui/dialog/inkscape-preferences.cpp:1511 ../src/ui/widget/page-sizer.cpp:258 ../src/widgets/gradient-selector.cpp:150
+#: ../src/libgdl/gdl-dock-object.c:125 ../src/live_effects/parameter/originalpatharray.cpp:82 ../src/ui/dialog/inkscape-preferences.cpp:1511 ../src/ui/widget/page-sizer.cpp:283 ../src/widgets/gradient-selector.cpp:150
#: ../src/widgets/sp-xmlview-attr-list.cpp:49
msgid "Name"
msgstr "Nosaukums"
@@ -8393,7 +8387,7 @@ msgstr "Piestiprināt ceČu"
msgid "Fill between strokes"
msgstr "Aizpildīt starp apmalēm"
-#: ../src/live_effects/effect.cpp:147 ../src/selection-chemistry.cpp:2916
+#: ../src/live_effects/effect.cpp:147 ../src/selection-chemistry.cpp:2871
msgid "Fill between many"
msgstr "Aizpildīt starp vairājiem"
@@ -8429,21 +8423,21 @@ msgstr "Redzams?"
msgid "If unchecked, the effect remains applied to the object but is temporarily disabled on canvas"
msgstr "Ja nav atķeksēts, efekts paliek pielietots objektam, taču uz laiku ir atslēgts uz audekla"
-#: ../src/live_effects/effect.cpp:384
+#: ../src/live_effects/effect.cpp:387
msgid "No effect"
msgstr "Bez efektiem"
-#: ../src/live_effects/effect.cpp:492
+#: ../src/live_effects/effect.cpp:495
#, c-format
msgid "Please specify a parameter path for the LPE '%s' with %d mouse clicks"
msgstr "LĆ«dzu, norādiet parametru ceÄŒu LPE '%s' ar %d peles klikĆĄÄ·iem"
-#: ../src/live_effects/effect.cpp:759
+#: ../src/live_effects/effect.cpp:762
#, c-format
msgid "Editing parameter <b>%s</b>."
msgstr "Parametra <b>%s</b> laboĆĄana."
-#: ../src/live_effects/effect.cpp:764
+#: ../src/live_effects/effect.cpp:767
msgid "None of the applied path effect's parameters can be edited on-canvas."
msgstr "Neviens no pielietotā ceČa efekta parametriem nav labojams \"uz audekla\"."
@@ -8514,7 +8508,7 @@ msgstr "Liekt ceÄŒu:"
msgid "Path along which to bend the original path"
msgstr "CeÄŒĆĄ, gar kuru liekt sākotnējo ceÄŒu"
-#: ../src/live_effects/lpe-bendpath.cpp:54 ../src/live_effects/lpe-patternalongpath.cpp:62 ../src/ui/dialog/export.cpp:289 ../src/ui/dialog/transformation.cpp:78 ../src/ui/widget/page-sizer.cpp:236
+#: ../src/live_effects/lpe-bendpath.cpp:54 ../src/live_effects/lpe-patternalongpath.cpp:62 ../src/ui/dialog/export.cpp:285 ../src/ui/dialog/transformation.cpp:74 ../src/ui/widget/page-sizer.cpp:237
msgid "_Width:"
msgstr "_Platums:"
@@ -8554,52 +8548,49 @@ msgstr "Vizuālās robeĆŸas"
msgid "Uses the visual bounding box"
msgstr "Izmanto vizuālo robeĆŸrāmi"
-#: ../src/live_effects/lpe-bspline.cpp:57
+#: ../src/live_effects/lpe-bspline.cpp:25
msgid "Steps with CTRL:"
msgstr "SoÄŒi ar CTRL:"
-#: ../src/live_effects/lpe-bspline.cpp:57
+#: ../src/live_effects/lpe-bspline.cpp:25
msgid "Change number of steps with CTRL pressed"
msgstr "Mainiet soÄŒu skaitu, turot nospiestu CTRL"
-#: ../src/live_effects/lpe-bspline.cpp:58 ../src/live_effects/lpe-simplify.cpp:33
+#: ../src/live_effects/lpe-bspline.cpp:26 ../src/live_effects/lpe-simplify.cpp:33
#, fuzzy
msgid "Helper size:"
msgstr "Subversion palīgprogramma"
-#: ../src/live_effects/lpe-bspline.cpp:58 ../src/live_effects/lpe-simplify.cpp:33
+#: ../src/live_effects/lpe-bspline.cpp:26 ../src/live_effects/lpe-simplify.cpp:33
#, fuzzy
msgid "Helper size"
msgstr "Subversion palīgprogramma"
-#: ../src/live_effects/lpe-bspline.cpp:59
+#: ../src/live_effects/lpe-bspline.cpp:27
msgid "Ignore cusp nodes"
msgstr "NeƆemt vērā asos mezglus"
-#: ../src/live_effects/lpe-bspline.cpp:59
+#: ../src/live_effects/lpe-bspline.cpp:27
msgid "Change ignoring cusp nodes"
msgstr "MainÄ«t, neƆemot vērā asos mezglus"
-#: ../src/live_effects/lpe-bspline.cpp:60 ../src/live_effects/lpe-fillet-chamfer.cpp:57
+#: ../src/live_effects/lpe-bspline.cpp:28 ../src/live_effects/lpe-fillet-chamfer.cpp:56
msgid "Change only selected nodes"
msgstr "Mainīt tikai atlasītos mezglus"
-#: ../src/live_effects/lpe-bspline.cpp:61
-#, fuzzy
+#: ../src/live_effects/lpe-bspline.cpp:29
msgid "Change weight:"
-msgstr "Svars"
+msgstr "Mainīt intensitāti:"
-#: ../src/live_effects/lpe-bspline.cpp:61
-#, fuzzy
+#: ../src/live_effects/lpe-bspline.cpp:29
msgid "Change weight of the effect"
-msgstr "Filtra efektu apgabala augstums"
+msgstr "Mainīt efekta intensitāti"
-#: ../src/live_effects/lpe-bspline.cpp:290
-#, fuzzy
+#: ../src/live_effects/lpe-bspline.cpp:260
msgid "Default weight"
-msgstr "Noklusētais virsraksts"
+msgstr "Noklusētā intensitāte"
-#: ../src/live_effects/lpe-bspline.cpp:295
+#: ../src/live_effects/lpe-bspline.cpp:265
msgid "Make cusp"
msgstr "Pārvērst par aso"
@@ -8769,99 +8760,88 @@ msgstr "Ot_rādi"
msgid "Reverses the second path order"
msgstr "Pagriezt krāsu pārejas virzienu uz pretējo pusi"
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:42 ../share/extensions/render_barcode_qrcode.inx.h:5
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:41 ../share/extensions/render_barcode_qrcode.inx.h:5
msgid "Auto"
msgstr "Auto"
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:43
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:42
#, fuzzy
msgid "Force arc"
-msgstr "ar ĆĄo loku"
+msgstr "Spēks"
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:44
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:43
#, fuzzy
msgid "Force bezier"
msgstr "Bezjē"
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:54
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:53
msgid "Fillet point"
msgstr "ApciÄŒĆ†a punkts"
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:55
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:54
msgid "Hide knots"
msgstr "Slēpt mezglus"
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:56
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:55
msgid "Ignore 0 radius knots"
msgstr "NeƆemt vērā mezglus ar rādiusu = 0"
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:58
-#, fuzzy
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:57
msgid "Flexible radius size (%)"
-msgstr "Iesatīt elastīgu izmēru"
+msgstr "Elastīgā rādiusa lielums (%)"
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:59
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:58
msgid "Use knots distance instead radius"
msgstr "Rādiusa vietā izmantot attālumu starp mezgliem"
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:60 ../src/live_effects/lpe-ruler.cpp:42 ../share/extensions/foldablebox.inx.h:7 ../share/extensions/interp_att_g.inx.h:9 ../share/extensions/layout_nup.inx.h:3
-#: ../share/extensions/printing_marks.inx.h:11
-msgid "Unit:"
-msgstr "Vienība:"
-
-#. initialise your parameters here:
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:60 ../src/live_effects/lpe-roughen.cpp:39 ../src/live_effects/lpe-ruler.cpp:42 ../src/widgets/ruler.cpp:202
-msgid "Unit"
-msgstr "Vienība"
-
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:61
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:59
msgid "Method:"
msgstr "Metode:"
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:61
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:59
msgid "Fillets methods"
msgstr "ApciÄŒĆ†u metodes"
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:62
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:60
msgid "Radius (unit or %):"
msgstr "Rādiuss (vienības vai %):"
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:62
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:60
msgid "Radius, in unit or %"
msgstr "Rādiuss, vienībās vai %"
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:63
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:61
msgid "Chamfer steps:"
msgstr "Nokāpes fazītes soČi:"
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:63
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:61
msgid "Chamfer steps"
msgstr "Nokāpes fazītes soČi"
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:65
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:63
#, fuzzy
msgid "Helper size with direction:"
msgstr "ReĆŸÄŁa izmērs X virzienā."
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:65
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:63
#, fuzzy
msgid "Helper size with direction"
msgstr "ReĆŸÄŁa izmērs X virzienā."
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:157 ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:76
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:154 ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:71
msgid "Fillet"
msgstr "Apcilnis"
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:161 ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:78
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:158 ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:73
msgid "Inverse fillet"
msgstr "Otrādais apcilnis"
# http://termini.lza.lv/term.php?term=chamfer&list=&lang=&h=
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:166 ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:80
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:163 ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:75
msgid "Chamfer"
msgstr "Nokāpes fazīte"
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:170 ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:82
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:167 ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:77
msgid "Inverse chamfer"
msgstr "Otrādā nokāpes fazīte"
@@ -8918,9 +8898,8 @@ msgid "SpiroInterpolator"
msgstr "Spiro interpolators"
#: ../src/live_effects/lpe-interpolate_points.cpp:29 ../src/live_effects/lpe-powerstroke.cpp:198
-#, fuzzy
msgid "Centripetal Catmull-Rom"
-msgstr "CD-ROM/DVD-ROM"
+msgstr "CentrtiecoĆĄs Ketmula-Roma splains"
#: ../src/live_effects/lpe-interpolate_points.cpp:37 ../src/live_effects/lpe-powerstroke.cpp:240
msgid "Interpolator type:"
@@ -8930,11 +8909,11 @@ msgstr "Interpolēơanas tips:"
msgid "Determines which kind of interpolator will be used to interpolate between stroke width along the path"
msgstr "Nosaka interpolatora veidu, kas tiks izmantots apmales platuma interpolācijai gar ceČu"
-#: ../src/live_effects/lpe-jointype.cpp:31 ../src/live_effects/lpe-powerstroke.cpp:227 ../src/live_effects/lpe-taperstroke.cpp:63
+#: ../src/live_effects/lpe-jointype.cpp:31 ../src/live_effects/lpe-powerstroke.cpp:227 ../src/live_effects/lpe-taperstroke.cpp:64
msgid "Beveled"
msgstr "NoĆĄÄ·elts"
-#: ../src/live_effects/lpe-jointype.cpp:32 ../src/live_effects/lpe-jointype.cpp:40 ../src/live_effects/lpe-powerstroke.cpp:228 ../src/live_effects/lpe-taperstroke.cpp:64 ../src/widgets/star-toolbar.cpp:536
+#: ../src/live_effects/lpe-jointype.cpp:32 ../src/live_effects/lpe-jointype.cpp:40 ../src/live_effects/lpe-powerstroke.cpp:228 ../src/live_effects/lpe-taperstroke.cpp:65 ../src/widgets/star-toolbar.cpp:534
msgid "Rounded"
msgstr "NoapaÄŒots"
@@ -8942,9 +8921,10 @@ msgstr "NoapaÄŒots"
msgid "Miter"
msgstr "Salaidums"
-#: ../src/live_effects/lpe-jointype.cpp:34 ../src/live_effects/lpe-taperstroke.cpp:65 ../src/widgets/gradient-toolbar.cpp:1118
-msgid "Reflected"
-msgstr "AtspoguÄŒots"
+#: ../src/live_effects/lpe-jointype.cpp:34
+#, fuzzy
+msgid "Miter Clip"
+msgstr "Ć Ä·autƆu asums:"
#. {LINEJOIN_EXTRP_MITER, N_("Extrapolated"), "extrapolated"}, // disabled because doesn't work well
#: ../src/live_effects/lpe-jointype.cpp:35 ../src/live_effects/lpe-powerstroke.cpp:230
@@ -8963,11 +8943,6 @@ msgstr "Kvadrātisks"
msgid "Peak"
msgstr "Virsotne"
-#: ../src/live_effects/lpe-jointype.cpp:43
-#, fuzzy
-msgid "Leaned"
-msgstr "Leaned"
-
#: ../src/live_effects/lpe-jointype.cpp:51
msgid "Thickness of the stroke"
msgstr "Apmales biezums"
@@ -8991,16 +8966,8 @@ msgstr "Savienojums:"
msgid "Determines the shape of the path's corners"
msgstr "Nosaka ceÄŒa stĆ«ru formu"
-#: ../src/live_effects/lpe-jointype.cpp:54
-#, fuzzy
-msgid "Start path lean"
-msgstr "Nosaka ceČa sākuma formu"
-
-#: ../src/live_effects/lpe-jointype.cpp:55
-#, fuzzy
-msgid "End path lean"
-msgstr "ceČam jābeidzas ar ':/'"
-
+#. start_lean(_("Start path lean"), _("Start path lean"), "start_lean", &wr, this, 0.),
+#. end_lean(_("End path lean"), _("End path lean"), "end_lean", &wr, this, 0.),
#: ../src/live_effects/lpe-jointype.cpp:56 ../src/live_effects/lpe-powerstroke.cpp:244 ../src/live_effects/lpe-taperstroke.cpp:79
msgid "Miter limit:"
msgstr "Salaiduma ierobeĆŸojums"
@@ -9078,212 +9045,227 @@ msgstr "Velciet, lai atlasītu krustojumu, nomainiet tipu ar klikƥķi"
msgid "Change knot crossing"
msgstr "Mainīt mezglu ƥķērsoƥanu"
-#. initialise your parameters here:
-#: ../src/live_effects/lpe-lattice2.cpp:47
-msgid "Control handle 0:"
-msgstr "Vadības turis 0:"
-
-#: ../src/live_effects/lpe-lattice2.cpp:47
-msgid "Control handle 0 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
-msgstr ""
+#: ../src/live_effects/lpe-lattice2.cpp:47 ../src/live_effects/lpe-perspective-envelope.cpp:43
+msgid "Mirror movements in horizontal"
+msgstr "SpoguČot pārvietojumus pa horizontāli"
-#: ../src/live_effects/lpe-lattice2.cpp:48
-msgid "Control handle 1:"
-msgstr "Vadības turis 1:"
-
-#: ../src/live_effects/lpe-lattice2.cpp:48
-msgid "Control handle 1 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
-msgstr ""
+#: ../src/live_effects/lpe-lattice2.cpp:48 ../src/live_effects/lpe-perspective-envelope.cpp:44
+msgid "Mirror movements in vertical"
+msgstr "SpoguČot pārvietojumus pa vertikāli"
#: ../src/live_effects/lpe-lattice2.cpp:49
-msgid "Control handle 2:"
-msgstr "Vadības turis 2:"
+msgid "Control 0:"
+msgstr "Vadības turis 0:"
#: ../src/live_effects/lpe-lattice2.cpp:49
-msgid "Control handle 2 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
-msgstr ""
+msgid "Control 0 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
+msgstr "Vadības turis 0 - <b>Ctrl+Alt+Click</b>: atiestatīt, <b>Ctrl</b>: pārvietot gar asīm"
#: ../src/live_effects/lpe-lattice2.cpp:50
-msgid "Control handle 3:"
-msgstr "Vadības turis 3:"
+msgid "Control 1:"
+msgstr "Vadības turis 1:"
#: ../src/live_effects/lpe-lattice2.cpp:50
-msgid "Control handle 3 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
-msgstr ""
+msgid "Control 1 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
+msgstr "Vadības turis 1 - <b>Ctrl+Alt+Click</b>: atiestatīt, <b>Ctrl</b>: pārvietot gar asīm"
#: ../src/live_effects/lpe-lattice2.cpp:51
-msgid "Control handle 4:"
-msgstr "Vadības turis 4:"
+msgid "Control 2:"
+msgstr "Vadības turis 2:"
#: ../src/live_effects/lpe-lattice2.cpp:51
-msgid "Control handle 4 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
-msgstr ""
+msgid "Control 2 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
+msgstr "Vadības turis 2 - <b>Ctrl+Alt+Click</b>: atiestatīt, <b>Ctrl</b>: pārvietot gar asīm"
#: ../src/live_effects/lpe-lattice2.cpp:52
-msgid "Control handle 5:"
-msgstr "Vadības turis 5:"
+msgid "Control 3:"
+msgstr "Vadības turis 3:"
#: ../src/live_effects/lpe-lattice2.cpp:52
-msgid "Control handle 5 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
-msgstr ""
+msgid "Control 3 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
+msgstr "Vadības turis 3 - <b>Ctrl+Alt+Click</b>: atiestatīt, <b>Ctrl</b>: pārvietot gar asīm"
#: ../src/live_effects/lpe-lattice2.cpp:53
-msgid "Control handle 6:"
-msgstr "Vadības turis 6:"
+msgid "Control 4:"
+msgstr "Vadības turis 4:"
#: ../src/live_effects/lpe-lattice2.cpp:53
-msgid "Control handle 6 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
-msgstr ""
+msgid "Control 4 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
+msgstr "Vadības turis 4 - <b>Ctrl+Alt+Click</b>: atiestatīt, <b>Ctrl</b>: pārvietot gar asīm"
#: ../src/live_effects/lpe-lattice2.cpp:54
-msgid "Control handle 7:"
-msgstr "Vadības turis 7:"
+msgid "Control 5:"
+msgstr "Vadības turis 5:"
#: ../src/live_effects/lpe-lattice2.cpp:54
-msgid "Control handle 7 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
-msgstr ""
+msgid "Control 5 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
+msgstr "Vadības turis 5 - <b>Ctrl+Alt+Click</b>: atiestatīt, <b>Ctrl</b>: pārvietot gar asīm"
#: ../src/live_effects/lpe-lattice2.cpp:55
-msgid "Control handle 8x9:"
-msgstr "Vadības turis 8x9:"
+msgid "Control 6:"
+msgstr "Vadības turis 6:"
#: ../src/live_effects/lpe-lattice2.cpp:55
-msgid "Control handle 8x9 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
-msgstr ""
+msgid "Control 6 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
+msgstr "Vadības turis 6 - <b>Ctrl+Alt+Click</b>: atiestatīt, <b>Ctrl</b>: pārvietot gar asīm"
#: ../src/live_effects/lpe-lattice2.cpp:56
-msgid "Control handle 10x11:"
-msgstr "Vadības turis 10x11:"
+msgid "Control 7:"
+msgstr "Vadības turis 7:"
#: ../src/live_effects/lpe-lattice2.cpp:56
-msgid "Control handle 10x11 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
-msgstr ""
+msgid "Control 7 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
+msgstr "Vadības turis 7 - <b>Ctrl+Alt+Click</b>: atiestatīt, <b>Ctrl</b>: pārvietot gar asīm"
#: ../src/live_effects/lpe-lattice2.cpp:57
-msgid "Control handle 12:"
-msgstr "Vadības turis 12:"
+msgid "Control 8x9:"
+msgstr "Vadības turis 8x9:"
#: ../src/live_effects/lpe-lattice2.cpp:57
-msgid "Control handle 12 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
-msgstr ""
+msgid "Control 8x9 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
+msgstr "Vadības turis 8x9 - <b>Ctrl+Alt+Click</b>: atiestatīt, <b>Ctrl</b>: pārvietot gar asīm"
#: ../src/live_effects/lpe-lattice2.cpp:58
-msgid "Control handle 13:"
-msgstr "Vadības turis 13:"
+msgid "Control 10x11:"
+msgstr "Vadības turis 10x11:"
#: ../src/live_effects/lpe-lattice2.cpp:58
-msgid "Control handle 13 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
-msgstr ""
+msgid "Control 10x11 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
+msgstr "Vadības turis 10x11 - <b>Ctrl+Alt+Click</b>: atiestatīt, <b>Ctrl</b>: pārvietot gar asīm"
#: ../src/live_effects/lpe-lattice2.cpp:59
-msgid "Control handle 14:"
-msgstr "Vadības turis 14:"
+msgid "Control 12:"
+msgstr "Vadības turis 12:"
#: ../src/live_effects/lpe-lattice2.cpp:59
-msgid "Control handle 14 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
-msgstr ""
+msgid "Control 12 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
+msgstr "Vadības turis 12 - <b>Ctrl+Alt+Click</b>: atiestatīt, <b>Ctrl</b>: pārvietot gar asīm"
#: ../src/live_effects/lpe-lattice2.cpp:60
-msgid "Control handle 15:"
-msgstr "Vadības turis 15:"
+msgid "Control 13:"
+msgstr "Vadības turis 13:"
#: ../src/live_effects/lpe-lattice2.cpp:60
-msgid "Control handle 15 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
-msgstr ""
+msgid "Control 13 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
+msgstr "Vadības turis 13 - <b>Ctrl+Alt+Click</b>: atiestatīt, <b>Ctrl</b>: pārvietot gar asīm"
#: ../src/live_effects/lpe-lattice2.cpp:61
-msgid "Control handle 16:"
-msgstr "Vadības turis 16:"
+msgid "Control 14:"
+msgstr "Vadības turis 14:"
#: ../src/live_effects/lpe-lattice2.cpp:61
-msgid "Control handle 16 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
-msgstr ""
+msgid "Control 14 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
+msgstr "Vadības turis 14 - <b>Ctrl+Alt+Click</b>: atiestatīt, <b>Ctrl</b>: pārvietot gar asīm"
#: ../src/live_effects/lpe-lattice2.cpp:62
-msgid "Control handle 17:"
-msgstr "Vadības turis 17:"
+msgid "Control 15:"
+msgstr "Vadības turis 15:"
#: ../src/live_effects/lpe-lattice2.cpp:62
-msgid "Control handle 17 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
-msgstr ""
+msgid "Control 15 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
+msgstr "Vadības turis 15 - <b>Ctrl+Alt+Click</b>: atiestatīt, <b>Ctrl</b>: pārvietot gar asīm"
#: ../src/live_effects/lpe-lattice2.cpp:63
-msgid "Control handle 18:"
-msgstr "Vadības turis 18:"
+msgid "Control 16:"
+msgstr "Vadības turis 16:"
#: ../src/live_effects/lpe-lattice2.cpp:63
-msgid "Control handle 18 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
-msgstr ""
+msgid "Control 16 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
+msgstr "Vadības turis 16 - <b>Ctrl+Alt+Click</b>: atiestatīt, <b>Ctrl</b>: pārvietot gar asīm"
#: ../src/live_effects/lpe-lattice2.cpp:64
-msgid "Control handle 19:"
-msgstr "Vadības turis 19:"
+msgid "Control 17:"
+msgstr "Vadības turis 17:"
#: ../src/live_effects/lpe-lattice2.cpp:64
-msgid "Control handle 19 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
-msgstr ""
+msgid "Control 17 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
+msgstr "Vadības turis 17 - <b>Ctrl+Alt+Click</b>: atiestatīt, <b>Ctrl</b>: pārvietot gar asīm"
#: ../src/live_effects/lpe-lattice2.cpp:65
-msgid "Control handle 20x21:"
-msgstr "Vadības turis 20x21:"
+msgid "Control 18:"
+msgstr "Vadības turis 18:"
#: ../src/live_effects/lpe-lattice2.cpp:65
-msgid "Control handle 20x21 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
-msgstr ""
+msgid "Control 18 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
+msgstr "Vadības turis 18 - <b>Ctrl+Alt+Click</b>: atiestatīt, <b>Ctrl</b>: pārvietot gar asīm"
#: ../src/live_effects/lpe-lattice2.cpp:66
-msgid "Control handle 22x23:"
-msgstr "Vadības turis 22x23:"
+msgid "Control 19:"
+msgstr "Vadības turis 19:"
#: ../src/live_effects/lpe-lattice2.cpp:66
-msgid "Control handle 22x23 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
-msgstr ""
+msgid "Control 19 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
+msgstr "Vadības turis 19 - <b>Ctrl+Alt+Click</b>: atiestatīt, <b>Ctrl</b>: pārvietot gar asīm"
#: ../src/live_effects/lpe-lattice2.cpp:67
-msgid "Control handle 24x26:"
-msgstr "Vadības turis 24x26:"
+msgid "Control 20x21:"
+msgstr "Vadības turis 20x21:"
#: ../src/live_effects/lpe-lattice2.cpp:67
-msgid "Control handle 24x26 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
-msgstr ""
+msgid "Control 20x21 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
+msgstr "Vadības turis 20x21 - <b>Ctrl+Alt+Click</b>: atiestatīt, <b>Ctrl</b>: pārvietot gar asīm"
#: ../src/live_effects/lpe-lattice2.cpp:68
-msgid "Control handle 25x27:"
-msgstr "Vadības turis 25x27:"
+msgid "Control 22x23:"
+msgstr "Vadības turis 22x23:"
#: ../src/live_effects/lpe-lattice2.cpp:68
-msgid "Control handle 25x27 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
-msgstr ""
+msgid "Control 22x23 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
+msgstr "Vadības turis 22x23 - <b>Ctrl+Alt+Click</b>: atiestatīt, <b>Ctrl</b>: pārvietot gar asīm"
#: ../src/live_effects/lpe-lattice2.cpp:69
-msgid "Control handle 28x30:"
-msgstr "Vadības turis 28x30:"
+msgid "Control 24x26:"
+msgstr "Vadības turis 24x26:"
#: ../src/live_effects/lpe-lattice2.cpp:69
-msgid "Control handle 28x30 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
-msgstr ""
+msgid "Control 24x26 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
+msgstr "Vadības turis 24x26 - <b>Ctrl+Alt+Click</b>: atiestatīt, <b>Ctrl</b>: pārvietot gar asīm"
#: ../src/live_effects/lpe-lattice2.cpp:70
-msgid "Control handle 29x31:"
-msgstr "Vadības turis 29x31:"
+msgid "Control 25x27:"
+msgstr "Vadības turis 25x27:"
#: ../src/live_effects/lpe-lattice2.cpp:70
-msgid "Control handle 29x31 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
-msgstr ""
+msgid "Control 25x27 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
+msgstr "Vadības turis 25x27 - <b>Ctrl+Alt+Click</b>: atiestatīt, <b>Ctrl</b>: pārvietot gar asīm"
#: ../src/live_effects/lpe-lattice2.cpp:71
-msgid "Control handle 32x33x34x35:"
-msgstr "Vadības turis 32x33x34x35:"
+msgid "Control 28x30:"
+msgstr "Vadības turis 28x30:"
#: ../src/live_effects/lpe-lattice2.cpp:71
-msgid "Control handle 32x33x34x35 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
-msgstr ""
+msgid "Control 28x30 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
+msgstr "Vadības turis 28x30 - <b>Ctrl+Alt+Click</b>: atiestatīt, <b>Ctrl</b>: pārvietot gar asīm"
+
+#: ../src/live_effects/lpe-lattice2.cpp:72
+msgid "Control 29x31:"
+msgstr "Vadības turis 29x31:"
+
+#: ../src/live_effects/lpe-lattice2.cpp:72
+msgid "Control 29x31 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
+msgstr "Vadības turis 29x31 - <b>Ctrl+Alt+Click</b>: atiestatīt, <b>Ctrl</b>: pārvietot gar asīm"
+
+#: ../src/live_effects/lpe-lattice2.cpp:73
+msgid "Control 32x33x34x35:"
+msgstr "Vadības turis 32x33x34x35:"
-#: ../src/live_effects/lpe-lattice2.cpp:224
+#: ../src/live_effects/lpe-lattice2.cpp:73
+msgid "Control 32x33x34x35 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
+msgstr "Vadības turis 32x33x34x35 - <b>Ctrl+Alt+Click</b>: atiestatīt, <b>Ctrl</b>: pārvietot gar asīm"
+
+#: ../src/live_effects/lpe-lattice2.cpp:236
#, fuzzy
msgid "Reset grid"
msgstr "Atstatīt"
+#: ../src/live_effects/lpe-lattice2.cpp:268 ../src/live_effects/lpe-lattice2.cpp:283
+msgid "Show Points"
+msgstr "Rādīt punktus"
+
+#: ../src/live_effects/lpe-lattice2.cpp:281
+msgid "Hide Points"
+msgstr "Slēpt punktus"
+
#: ../src/live_effects/lpe-patternalongpath.cpp:50 ../share/extensions/pathalongpath.inx.h:10
msgid "Single"
msgstr "Viens"
@@ -9369,56 +9351,55 @@ msgstr "Sakausēt blakus esoơos galus:"
msgid "Fuse ends closer than this number. 0 means don't fuse."
msgstr "Sakausēt blakus esoĆĄos galus, kas ir tuvāki par norādÄ«to lielumu. 0 - nesakausēt."
-#: ../src/live_effects/lpe-perspective-envelope.cpp:37 ../share/extensions/perspective.inx.h:1
+#: ../src/live_effects/lpe-perspective-envelope.cpp:35 ../share/extensions/perspective.inx.h:1
msgid "Perspective"
msgstr "Perspektīva"
-#: ../src/live_effects/lpe-perspective-envelope.cpp:38
+#: ../src/live_effects/lpe-perspective-envelope.cpp:36
msgid "Envelope deformation"
msgstr "Aploksnes deformācija"
-#. initialise your parameters here:
-#: ../src/live_effects/lpe-perspective-envelope.cpp:46
+#: ../src/live_effects/lpe-perspective-envelope.cpp:45
msgid "Type"
msgstr "Tips"
-#: ../src/live_effects/lpe-perspective-envelope.cpp:46
+#: ../src/live_effects/lpe-perspective-envelope.cpp:45
msgid "Select the type of deformation"
msgstr "Izvēlieties deformācijas tipu"
-#: ../src/live_effects/lpe-perspective-envelope.cpp:47
+#: ../src/live_effects/lpe-perspective-envelope.cpp:46
msgid "Top Left"
msgstr "Augơējais kreisais"
-#: ../src/live_effects/lpe-perspective-envelope.cpp:47
+#: ../src/live_effects/lpe-perspective-envelope.cpp:46
msgid "Top Left - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
-msgstr ""
+msgstr "Augơējais kreisais - <b>Ctrl+Alt+Click</b>: atiestatÄ«t, <b>Ctrl</b>: pārvietot gar asÄ«m"
-#: ../src/live_effects/lpe-perspective-envelope.cpp:48
+#: ../src/live_effects/lpe-perspective-envelope.cpp:47
msgid "Top Right"
msgstr "Augơējais labais"
-#: ../src/live_effects/lpe-perspective-envelope.cpp:48
+#: ../src/live_effects/lpe-perspective-envelope.cpp:47
msgid "Top Right - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
-msgstr ""
+msgstr "Augơējais labais - <b>Ctrl+Alt+Click</b>: atiestatÄ«t, <b>Ctrl</b>: pārvietot gar asÄ«m"
-#: ../src/live_effects/lpe-perspective-envelope.cpp:49
+#: ../src/live_effects/lpe-perspective-envelope.cpp:48
msgid "Down Left"
msgstr "Apakơējais kreisais"
-#: ../src/live_effects/lpe-perspective-envelope.cpp:49
+#: ../src/live_effects/lpe-perspective-envelope.cpp:48
msgid "Down Left - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
-msgstr ""
+msgstr "Apakơējais kreisais - <b>Ctrl+Alt+Click</b>: atiestatÄ«t, <b>Ctrl</b>: pārvietot gar asÄ«m"
-#: ../src/live_effects/lpe-perspective-envelope.cpp:50
+#: ../src/live_effects/lpe-perspective-envelope.cpp:49
msgid "Down Right"
msgstr "Apakơējais labais"
-#: ../src/live_effects/lpe-perspective-envelope.cpp:50
+#: ../src/live_effects/lpe-perspective-envelope.cpp:49
msgid "Down Right - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
-msgstr ""
+msgstr "Apakơējais labais - <b>Ctrl+Alt+Click</b>: atiestatÄ«t, <b>Ctrl</b>: pārvietot gar asÄ«m"
-#: ../src/live_effects/lpe-perspective-envelope.cpp:257
+#: ../src/live_effects/lpe-perspective-envelope.cpp:268
msgid "Handles:"
msgstr "Turi:"
@@ -9634,67 +9615,61 @@ msgstr "Vispārējā liekơana"
msgid "Relative position to a reference point defines global bending direction and amount"
msgstr "Relatīvais novietojums pret atskaites punktu nosaka globālo liekuma virzienu un apjomu"
-#: ../src/live_effects/lpe-roughen.cpp:30 ../share/extensions/addnodes.inx.h:4
+#: ../src/live_effects/lpe-roughen.cpp:29 ../share/extensions/addnodes.inx.h:4
msgid "By number of segments"
msgstr "Pēc posmu skaita"
-#: ../src/live_effects/lpe-roughen.cpp:31
+#: ../src/live_effects/lpe-roughen.cpp:30
msgid "By max. segment size"
msgstr "Pēc maks. segmenta izmēra"
-#: ../src/live_effects/lpe-roughen.cpp:40
+#. initialise your parameters here:
+#: ../src/live_effects/lpe-roughen.cpp:38
msgid "Method"
msgstr "Metode"
-#: ../src/live_effects/lpe-roughen.cpp:40
+#: ../src/live_effects/lpe-roughen.cpp:38
msgid "Division method"
msgstr "Dalīƥanas metode"
-#: ../src/live_effects/lpe-roughen.cpp:42
+#: ../src/live_effects/lpe-roughen.cpp:40
msgid "Max. segment size"
msgstr "Maks. segmenta izmērs"
-#: ../src/live_effects/lpe-roughen.cpp:44
+#: ../src/live_effects/lpe-roughen.cpp:42
msgid "Number of segments"
msgstr "Segmentu skaits"
-#: ../src/live_effects/lpe-roughen.cpp:46
-#, fuzzy
+#: ../src/live_effects/lpe-roughen.cpp:44
msgid "Max. displacement in X"
-msgstr "_X pārvietojums"
+msgstr "Maks. pārvietojums gar X"
-#: ../src/live_effects/lpe-roughen.cpp:48
-#, fuzzy
+#: ../src/live_effects/lpe-roughen.cpp:46
msgid "Max. displacement in Y"
-msgstr "_Y pārvietojums:"
+msgstr "Maks. pārvietojums gar Y"
-#: ../src/live_effects/lpe-roughen.cpp:50
+#: ../src/live_effects/lpe-roughen.cpp:48
#, fuzzy
msgid "Global randomize"
msgstr "_Sajaukt"
-#: ../src/live_effects/lpe-roughen.cpp:52 ../share/extensions/radiusrand.inx.h:5
+#: ../src/live_effects/lpe-roughen.cpp:50 ../share/extensions/radiusrand.inx.h:5
msgid "Shift nodes"
msgstr "Pārbīdīt mezglus"
-#: ../src/live_effects/lpe-roughen.cpp:54 ../share/extensions/radiusrand.inx.h:6
+#: ../src/live_effects/lpe-roughen.cpp:52 ../share/extensions/radiusrand.inx.h:6
msgid "Shift node handles"
msgstr "Pārbīdīt mezglu turus"
-#: ../src/live_effects/lpe-roughen.cpp:103
-msgid "<b>Roughen unit</b>"
-msgstr "<b>Raupjoƥanas vienība</b>"
-
-#: ../src/live_effects/lpe-roughen.cpp:111
+#: ../src/live_effects/lpe-roughen.cpp:100
msgid "<b>Add nodes</b> Subdivide each segment"
msgstr "<b>Pievienot mezglus</b> sadalīt katru posmu sīkāk"
-#: ../src/live_effects/lpe-roughen.cpp:120
-#, fuzzy
+#: ../src/live_effects/lpe-roughen.cpp:109
msgid "<b>Jitter nodes</b> Move nodes/handles"
-msgstr "<b>Jitter nodes</b> Move nodes/handles"
+msgstr "<b>Tricināt mezglus</b> Pārvietot mezglus/turus"
-#: ../src/live_effects/lpe-roughen.cpp:129
+#: ../src/live_effects/lpe-roughen.cpp:118
msgid "<b>Extra roughen</b> Add a extra layer of rough"
msgstr "<b>Pastiprināt raupjumu</b> Pievienot papildu raupjuma slāni"
@@ -9715,11 +9690,11 @@ msgctxt "Border mark"
msgid "None"
msgstr "Neviena"
-#: ../src/live_effects/lpe-ruler.cpp:33 ../src/widgets/arc-toolbar.cpp:328
+#: ../src/live_effects/lpe-ruler.cpp:33 ../src/widgets/arc-toolbar.cpp:319
msgid "Start"
msgstr "Sākt"
-#: ../src/live_effects/lpe-ruler.cpp:34 ../src/widgets/arc-toolbar.cpp:341
+#: ../src/live_effects/lpe-ruler.cpp:34 ../src/widgets/arc-toolbar.cpp:332
msgid "End"
msgstr "End"
@@ -9731,6 +9706,14 @@ msgstr "Iezīmes attālu_ms:"
msgid "Distance between successive ruler marks"
msgstr "Attālums starp blakus esoƥām mērjoslas aizzÄ«mēm"
+#: ../src/live_effects/lpe-ruler.cpp:42 ../share/extensions/foldablebox.inx.h:7 ../share/extensions/interp_att_g.inx.h:9 ../share/extensions/layout_nup.inx.h:3 ../share/extensions/printing_marks.inx.h:11
+msgid "Unit:"
+msgstr "Vienība:"
+
+#: ../src/live_effects/lpe-ruler.cpp:42 ../src/widgets/ruler.cpp:202
+msgid "Unit"
+msgstr "Vienība"
+
#: ../src/live_effects/lpe-ruler.cpp:43
msgid "Ma_jor length:"
msgstr "Gal_venais garums:"
@@ -9818,11 +9801,11 @@ msgstr "Norādiet vienkārĆĄoĆĄanas soÄŒu skaitu"
#: ../src/live_effects/lpe-simplify.cpp:31
#, fuzzy
msgid "Roughly threshold:"
-msgstr "S_lieksnis..."
+msgstr "Apmēram iezīmējiet izvelkamo objektu"
#: ../src/live_effects/lpe-simplify.cpp:32
msgid "Smooth angles:"
-msgstr ""
+msgstr "Nogludināt leƆķus:"
#: ../src/live_effects/lpe-simplify.cpp:32
msgid "Max degree difference on handles to preform a smooth"
@@ -9830,39 +9813,19 @@ msgstr ""
#: ../src/live_effects/lpe-simplify.cpp:34
#, fuzzy
-msgid "Helper nodes"
-msgstr "Subversion palīgprogramma"
-
-#: ../src/live_effects/lpe-simplify.cpp:34
-#, fuzzy
-msgid "Show helper nodes"
-msgstr "Rādīt pārveidoƥanas turus atseviƥķiem mezgliem"
-
-#: ../src/live_effects/lpe-simplify.cpp:36
-#, fuzzy
-msgid "Helper handles"
-msgstr "Subversion palīgprogramma"
-
-#: ../src/live_effects/lpe-simplify.cpp:36
-#, fuzzy
-msgid "Show helper handles"
-msgstr "Rādīt turus"
-
-#: ../src/live_effects/lpe-simplify.cpp:38
-#, fuzzy
msgid "Paths separately"
-msgstr "VienkārĆĄo ceÄŒus (atseviĆĄÄ·i):"
+msgstr "VienkārĆĄo ceÄŒus (atseviĆĄÄ·i)"
-#: ../src/live_effects/lpe-simplify.cpp:38
+#: ../src/live_effects/lpe-simplify.cpp:34
msgid "Simplifying paths (separately)"
msgstr "VienkārĆĄo ceÄŒus (atseviĆĄÄ·i)"
-#: ../src/live_effects/lpe-simplify.cpp:40
+#: ../src/live_effects/lpe-simplify.cpp:36
#, fuzzy
msgid "Just coalesce"
msgstr "Tikai tagad..."
-#: ../src/live_effects/lpe-simplify.cpp:40
+#: ../src/live_effects/lpe-simplify.cpp:36
#, fuzzy
msgid "Simplify just coalesce"
msgstr "Vienkārƥot:"
@@ -9949,7 +9912,7 @@ msgstr "Palīglīnijas:"
msgid "How many construction lines (tangents) to draw"
msgstr "Cik daudz palÄ«glÄ«niju (tangenĆĄu) zÄ«mēt"
-#: ../src/live_effects/lpe-sketch.cpp:58 ../src/ui/dialog/filter-effects-dialog.cpp:2878 ../share/extensions/render_alphabetsoup.inx.h:3
+#: ../src/live_effects/lpe-sketch.cpp:58 ../src/ui/dialog/filter-effects-dialog.cpp:2894 ../share/extensions/render_alphabetsoup.inx.h:3
msgid "Scale:"
msgstr "Mērogs:"
@@ -10006,9 +9969,8 @@ msgid "Stroke width:"
msgstr "Apmales platums:"
#: ../src/live_effects/lpe-taperstroke.cpp:74
-#, fuzzy
msgid "The (non-tapered) width of the path"
-msgstr "CeÄŒa platums"
+msgstr "CeČa (nesmailināta) platums"
#: ../src/live_effects/lpe-taperstroke.cpp:75
msgid "Start offset:"
@@ -10023,19 +9985,16 @@ msgid "End offset:"
msgstr "Beigu nobīde:"
#: ../src/live_effects/lpe-taperstroke.cpp:76
-#, fuzzy
msgid "The ending position of the taper"
-msgstr "Pārsteidzoƥās beigas"
+msgstr "Smailinājuma gala pozīcija"
#: ../src/live_effects/lpe-taperstroke.cpp:77
-#, fuzzy
msgid "Taper smoothing:"
-msgstr "Gludināƥana:"
+msgstr "Smailinājuma gludinājums:"
#: ../src/live_effects/lpe-taperstroke.cpp:77
-#, fuzzy
msgid "Amount of smoothing to apply to the tapers"
-msgstr "Norāda, kādu gofrēơanas apjomu veikt attēlam (procentos)"
+msgstr "Smailinajuma gludinājuma lielums"
#: ../src/live_effects/lpe-taperstroke.cpp:78
#, fuzzy
@@ -10052,15 +10011,13 @@ msgstr "Auto-gludais mezgls"
msgid "Limit for miter joins"
msgstr "Ć Ä·autƆu asums:"
-#: ../src/live_effects/lpe-taperstroke.cpp:536
-#, fuzzy
+#: ../src/live_effects/lpe-taperstroke.cpp:448
msgid "Start point of the taper"
-msgstr "Sākt tranportu no ƥī līknes punkta"
+msgstr "Smailinājuma sākumpunkts"
-#: ../src/live_effects/lpe-taperstroke.cpp:540
-#, fuzzy
+#: ../src/live_effects/lpe-taperstroke.cpp:452
msgid "End point of the taper"
-msgstr "Beigu punkts"
+msgstr "Smailinājuma beigu punkts"
#: ../src/live_effects/lpe-vonkoch.cpp:46
msgid "N_r of generations:"
@@ -10123,59 +10080,59 @@ msgstr "Mainīt Bula parametru"
msgid "Change enumeration parameter"
msgstr "MainÄ«t numurēơanas parametru"
-#: ../src/live_effects/parameter/filletchamferpointarray.cpp:782 ../src/live_effects/parameter/filletchamferpointarray.cpp:843
+#: ../src/live_effects/parameter/filletchamferpointarray.cpp:771 ../src/live_effects/parameter/filletchamferpointarray.cpp:832
msgid "<b>Chamfer</b>: <b>Ctrl+Click</b> toggle type, <b>Shift+Click</b> open dialog, <b>Ctrl+Alt+Click</b> reset"
msgstr "<b>Nokāpes fazÄ«te</b>: <b>Ctrl+Click</b> pārslēgt tipu, <b>Shift+Click</b> atvērt dialoglodziƆu, <b>Ctrl+Alt+Click</b> atstatÄ«t"
-#: ../src/live_effects/parameter/filletchamferpointarray.cpp:786 ../src/live_effects/parameter/filletchamferpointarray.cpp:847
+#: ../src/live_effects/parameter/filletchamferpointarray.cpp:775 ../src/live_effects/parameter/filletchamferpointarray.cpp:836
msgid "<b>Inverse Chamfer</b>: <b>Ctrl+Click</b> toggle type, <b>Shift+Click</b> open dialog, <b>Ctrl+Alt+Click</b> reset"
msgstr "<b>Otrādā nokāpes fazÄ«te</b>: <b>Ctrl+Click</b> pārslēgt tipu, <b>Shift+Click</b> atvērt dialoglodziƆu, <b>Ctrl+Alt+Click</b> atstatÄ«t"
-#: ../src/live_effects/parameter/filletchamferpointarray.cpp:790 ../src/live_effects/parameter/filletchamferpointarray.cpp:851
+#: ../src/live_effects/parameter/filletchamferpointarray.cpp:779 ../src/live_effects/parameter/filletchamferpointarray.cpp:840
msgid "<b>Inverse Fillet</b>: <b>Ctrl+Click</b> toggle type, <b>Shift+Click</b> open dialog, <b>Ctrl+Alt+Click</b> reset"
msgstr "<b>Otrādais apcilnis</b>: <b>Ctrl+Click</b> pārslēgt tipu, <b>Shift+Click</b> atvērt dialoglodziƆu, <b>Ctrl+Alt+Click</b> atstatÄ«t"
-#: ../src/live_effects/parameter/filletchamferpointarray.cpp:794 ../src/live_effects/parameter/filletchamferpointarray.cpp:855
+#: ../src/live_effects/parameter/filletchamferpointarray.cpp:783 ../src/live_effects/parameter/filletchamferpointarray.cpp:844
msgid "<b>Fillet</b>: <b>Ctrl+Click</b> toggle type, <b>Shift+Click</b> open dialog, <b>Ctrl+Alt+Click</b> reset"
msgstr "<b>Apcilnis</b>: <b>Ctrl+Click</b> pārslēgt tipu, <b>Shift+Click</b> atvērt dialoglodziƆu, <b>Ctrl+Alt+Click</b> atstatÄ«t"
-#: ../src/live_effects/parameter/originalpath.cpp:71 ../src/live_effects/parameter/originalpatharray.cpp:159
+#: ../src/live_effects/parameter/originalpath.cpp:67 ../src/live_effects/parameter/originalpatharray.cpp:155
msgid "Link to path"
msgstr "Piesaistīt ceČam"
-#: ../src/live_effects/parameter/originalpath.cpp:83
+#: ../src/live_effects/parameter/originalpath.cpp:79
msgid "Select original"
msgstr "Atlasīt oriģinālu"
-#: ../src/live_effects/parameter/originalpatharray.cpp:94 ../src/widgets/gradient-toolbar.cpp:1205
+#: ../src/live_effects/parameter/originalpatharray.cpp:90 ../src/widgets/gradient-toolbar.cpp:1208
msgid "Reverse"
msgstr "Apgriezt"
-#: ../src/live_effects/parameter/originalpatharray.cpp:134 ../src/live_effects/parameter/originalpatharray.cpp:319 ../src/live_effects/parameter/path.cpp:475
+#: ../src/live_effects/parameter/originalpatharray.cpp:130 ../src/live_effects/parameter/originalpatharray.cpp:315 ../src/live_effects/parameter/path.cpp:481
msgid "Link path parameter to path"
msgstr "Piesaistīt ceČa parametru ceČam"
-#: ../src/live_effects/parameter/originalpatharray.cpp:171
+#: ../src/live_effects/parameter/originalpatharray.cpp:167
msgid "Remove Path"
msgstr "Aizvākt ceČu"
-#: ../src/live_effects/parameter/originalpatharray.cpp:183 ../src/ui/dialog/objects.cpp:1823
+#: ../src/live_effects/parameter/originalpatharray.cpp:179 ../src/ui/dialog/objects.cpp:1823
msgid "Move Down"
msgstr "Pārvietot lejup"
-#: ../src/live_effects/parameter/originalpatharray.cpp:195 ../src/ui/dialog/objects.cpp:1831
+#: ../src/live_effects/parameter/originalpatharray.cpp:191 ../src/ui/dialog/objects.cpp:1831
msgid "Move Up"
msgstr "Pārvietot augƥup"
-#: ../src/live_effects/parameter/originalpatharray.cpp:235
+#: ../src/live_effects/parameter/originalpatharray.cpp:231
msgid "Move path up"
msgstr "Pārvietot ceÄŒu augĆĄup"
-#: ../src/live_effects/parameter/originalpatharray.cpp:265
+#: ../src/live_effects/parameter/originalpatharray.cpp:261
msgid "Move path down"
msgstr "Pārvietot ceČu lejup"
-#: ../src/live_effects/parameter/originalpatharray.cpp:283
+#: ../src/live_effects/parameter/originalpatharray.cpp:279
msgid "Remove path"
msgstr "Aizvākt ceČu"
@@ -10199,11 +10156,11 @@ msgstr "IelÄ«mēt ceÄŒu"
msgid "Link to path on clipboard"
msgstr "PiesaistÄ«t ceÄŒam starpliktuvē"
-#: ../src/live_effects/parameter/path.cpp:443
+#: ../src/live_effects/parameter/path.cpp:449
msgid "Paste path parameter"
msgstr "IelÄ«mēt ceÄŒa parametru"
-#: ../src/live_effects/parameter/point.cpp:103
+#: ../src/live_effects/parameter/point.cpp:124
msgid "Change point parameter"
msgstr "Mainīt punkta parametru"
@@ -10478,7 +10435,7 @@ msgstr "OBJEKTA ID"
msgid "Start Inkscape in interactive shell mode."
msgstr "Palaist Inkscape interaktÄ«vās čaulas reĆŸÄ«mā"
-#: ../src/main.cpp:871 ../src/main.cpp:1283
+#: ../src/main.cpp:871 ../src/main.cpp:1280
msgid ""
"[OPTIONS...] [FILE...]\n"
"\n"
@@ -10489,17 +10446,17 @@ msgstr ""
"Pieejamās papildiespējas:"
#. ## Add a menu for clear()
-#: ../src/menus-skeleton.h:16 ../src/ui/dialog/debug.cpp:83
+#: ../src/menus-skeleton.h:16 ../src/ui/dialog/debug.cpp:79
msgid "_File"
msgstr "_Datne"
#. " <verb verb-id=\"FileExportToOCAL\" />\n"
#. " <verb verb-id=\"DialogMetadata\" />\n"
-#: ../src/menus-skeleton.h:41 ../src/verbs.cpp:2713 ../src/verbs.cpp:2721
+#: ../src/menus-skeleton.h:41 ../src/verbs.cpp:2682 ../src/verbs.cpp:2690
msgid "_Edit"
msgstr "Labot"
-#: ../src/menus-skeleton.h:51 ../src/verbs.cpp:2477
+#: ../src/menus-skeleton.h:51 ../src/verbs.cpp:2446
msgid "Paste Si_ze"
msgstr "Ielīmēt i_wzmēru"
@@ -10583,27 +10540,27 @@ msgstr "_Palīgs"
msgid "Tutorials"
msgstr "Pamācības"
-#: ../src/path-chemistry.cpp:54
+#: ../src/path-chemistry.cpp:63
msgid "Select <b>object(s)</b> to combine."
msgstr "Atlasiet apvienojamo(s) <b>objektu(s)</b>."
-#: ../src/path-chemistry.cpp:58
+#: ../src/path-chemistry.cpp:67
msgid "Combining paths..."
msgstr "Apvieno ceÄŒus..."
-#: ../src/path-chemistry.cpp:174
+#: ../src/path-chemistry.cpp:177
msgid "Combine"
msgstr "Kombinēt"
-#: ../src/path-chemistry.cpp:181
+#: ../src/path-chemistry.cpp:184
msgid "<b>No path(s)</b> to combine in the selection."
msgstr "Atlasītajā nav apvienojamu <b>ceČu</b>."
-#: ../src/path-chemistry.cpp:193
+#: ../src/path-chemistry.cpp:196
msgid "Select <b>path(s)</b> to break apart."
msgstr "Atlasiet saĆĄÄ·eÄŒamo(s) <b>ceÄŒu(s)</b>."
-#: ../src/path-chemistry.cpp:197
+#: ../src/path-chemistry.cpp:200
msgid "Breaking apart paths..."
msgstr "SaĆĄÄ·eÄŒ ceÄŒus..."
@@ -10623,27 +10580,27 @@ msgstr "Atlasiet par ceÄŒu pārvērĆĄamu(s) <b>objektu(s)</b>."
msgid "Converting objects to paths..."
msgstr "PārvērĆĄ objektus par ceÄŒiem..."
-#: ../src/path-chemistry.cpp:327
+#: ../src/path-chemistry.cpp:324
msgid "Object to path"
msgstr "Objekts par ceÄŒu"
-#: ../src/path-chemistry.cpp:329
+#: ../src/path-chemistry.cpp:326
msgid "<b>No objects</b> to convert to path in the selection."
msgstr "AtlasÄ«tajā <b>nav</b> par ceÄŒu pārvērĆĄamu <b>objektu</b>."
-#: ../src/path-chemistry.cpp:618
+#: ../src/path-chemistry.cpp:613
msgid "Select <b>path(s)</b> to reverse."
msgstr "Atlasiet otrādi apgrieĆŸamo(s) <b>ceÄŒu(s)</b>."
-#: ../src/path-chemistry.cpp:627
+#: ../src/path-chemistry.cpp:622
msgid "Reversing paths..."
msgstr "ApgrieĆŸ ceÄŒu otrādi..."
-#: ../src/path-chemistry.cpp:662
+#: ../src/path-chemistry.cpp:657
msgid "Reverse path"
msgstr "Apgriezt ceČu otrādi"
-#: ../src/path-chemistry.cpp:664
+#: ../src/path-chemistry.cpp:659
msgid "<b>No paths</b> to reverse in the selection."
msgstr "AtlasÄ«tajā nav otrādi apgrieĆŸamu <b>ceÄŒu</b>."
@@ -10765,7 +10722,7 @@ msgstr "Open Font licence"
#. Create the Title label and edit control
#. TRANSLATORS: for info, see http://www.w3.org/TR/2000/CR-SVG-20000802/linking.html#AElementXLinkTitleAttribute
-#: ../src/rdf.cpp:235 ../src/ui/dialog/filedialogimpl-win32.cpp:1952 ../src/ui/dialog/object-attributes.cpp:57
+#: ../src/rdf.cpp:235 ../src/ui/dialog/filedialogimpl-win32.cpp:1960 ../src/ui/dialog/object-attributes.cpp:57
msgid "Title:"
msgstr "Nosaukums:"
@@ -10903,45 +10860,50 @@ msgstr "XML fragments RDF 'License' sadaÄŒai"
msgid "Fixup broken links"
msgstr "Labot nederīgās saites"
-#: ../src/selection-chemistry.cpp:406
+#: ../src/selection-chemistry.cpp:401
msgid "Delete text"
msgstr "Dzēst tekstu"
-#: ../src/selection-chemistry.cpp:414
+#: ../src/selection-chemistry.cpp:409
msgid "<b>Nothing</b> was deleted."
msgstr "<b>Nekas</b> nav izdzēst."
-#: ../src/selection-chemistry.cpp:433 ../src/ui/dialog/calligraphic-profile-rename.cpp:75 ../src/ui/dialog/swatches.cpp:277 ../src/ui/tools/text-tool.cpp:965 ../src/widgets/eraser-toolbar.cpp:93 ../src/widgets/gradient-toolbar.cpp:1181
-#: ../src/widgets/gradient-toolbar.cpp:1195 ../src/widgets/gradient-toolbar.cpp:1209 ../src/widgets/node-toolbar.cpp:401
+#: ../src/selection-chemistry.cpp:426 ../src/ui/dialog/calligraphic-profile-rename.cpp:75 ../src/ui/dialog/swatches.cpp:277 ../src/ui/tools/text-tool.cpp:965 ../src/widgets/eraser-toolbar.cpp:93 ../src/widgets/gradient-toolbar.cpp:1184
+#: ../src/widgets/gradient-toolbar.cpp:1198 ../src/widgets/gradient-toolbar.cpp:1212 ../src/widgets/node-toolbar.cpp:401
msgid "Delete"
msgstr "Dzēst"
-#: ../src/selection-chemistry.cpp:461
+#: ../src/selection-chemistry.cpp:454
msgid "Select <b>object(s)</b> to duplicate."
msgstr "Atlasiet dublējamo(s) <b>objektu(s)</b>."
-#: ../src/selection-chemistry.cpp:572
+#: ../src/selection-chemistry.cpp:551
+#, c-format
+msgid "%s copy"
+msgstr "%s kopēt"
+
+#: ../src/selection-chemistry.cpp:574
msgid "Delete all"
msgstr "Dzēst visu"
-#: ../src/selection-chemistry.cpp:763
+#: ../src/selection-chemistry.cpp:762
msgid "Select <b>some objects</b> to group."
msgstr "Atlasiet <b>daĆŸus objektus</b> grupēơanai."
-#: ../src/selection-chemistry.cpp:778
+#: ../src/selection-chemistry.cpp:775
msgctxt "Verb"
msgid "Group"
msgstr "Grupēt"
-#: ../src/selection-chemistry.cpp:801
+#: ../src/selection-chemistry.cpp:798
msgid "Select a <b>group</b> to ungroup."
msgstr "Atlasiet atgrupējamo <b>grupu</b>."
-#: ../src/selection-chemistry.cpp:816
+#: ../src/selection-chemistry.cpp:813
msgid "<b>No groups</b> to ungroup in the selection."
msgstr "Atlasē <b>nav</b> atgrupējamu grupu."
-#: ../src/selection-chemistry.cpp:874 ../src/sp-item-group.cpp:575
+#: ../src/selection-chemistry.cpp:869 ../src/sp-item-group.cpp:554
msgid "Ungroup"
msgstr "Atgrupēt"
@@ -10949,344 +10911,344 @@ msgstr "Atgrupēt"
msgid "Select <b>object(s)</b> to raise."
msgstr "Atlasiet <b>objektu(s)</b>, kurus pacelt augstāk."
-#: ../src/selection-chemistry.cpp:962 ../src/selection-chemistry.cpp:1019 ../src/selection-chemistry.cpp:1047 ../src/selection-chemistry.cpp:1109
+#: ../src/selection-chemistry.cpp:962 ../src/selection-chemistry.cpp:1015 ../src/selection-chemistry.cpp:1041 ../src/selection-chemistry.cpp:1099
msgid "You cannot raise/lower objects from <b>different groups</b> or <b>layers</b>."
msgstr "JĆ«s nevarat pacelt/nolaist objektus no <b>daĆŸÄdām grupām</b> vai <b>slāƆiem</b>."
#. TRANSLATORS: "Raise" means "to raise an object" in the undo history
-#: ../src/selection-chemistry.cpp:1003
+#: ../src/selection-chemistry.cpp:999
msgctxt "Undo action"
msgid "Raise"
msgstr "Pacelt"
-#: ../src/selection-chemistry.cpp:1011
+#: ../src/selection-chemistry.cpp:1007
msgid "Select <b>object(s)</b> to raise to top."
msgstr "Atlasiet <b>objektu(s)</b>, kurus pacelt paƥā augƥā."
-#: ../src/selection-chemistry.cpp:1034
+#: ../src/selection-chemistry.cpp:1028
msgid "Raise to top"
msgstr "Pacelt paƥā augƥā"
-#: ../src/selection-chemistry.cpp:1041
+#: ../src/selection-chemistry.cpp:1035
msgid "Select <b>object(s)</b> to lower."
msgstr "Atlasiet <b>objektu(s)</b>, kurus nolaist zemāk."
#. TRANSLATORS: "Lower" means "to lower an object" in the undo history
-#: ../src/selection-chemistry.cpp:1093
+#: ../src/selection-chemistry.cpp:1083
msgctxt "Undo action"
msgid "Lower"
msgstr "Nolaist zemāk"
-#: ../src/selection-chemistry.cpp:1101
+#: ../src/selection-chemistry.cpp:1091
msgid "Select <b>object(s)</b> to lower to bottom."
msgstr "Atlasiet <b>objektu(s)</b>, kurus nolaist paƥā apakƥā."
-#: ../src/selection-chemistry.cpp:1136
+#: ../src/selection-chemistry.cpp:1122
msgid "Lower to bottom"
msgstr "Nolaist paƥā augƥā"
-#: ../src/selection-chemistry.cpp:1146
+#: ../src/selection-chemistry.cpp:1132
msgid "Nothing to undo."
msgstr "Nav ko atcelt."
-#: ../src/selection-chemistry.cpp:1157
+#: ../src/selection-chemistry.cpp:1143
msgid "Nothing to redo."
msgstr "Nav ko atkārtot."
-#: ../src/selection-chemistry.cpp:1229
+#: ../src/selection-chemistry.cpp:1215
msgid "Paste"
msgstr "Ielīmēt"
-#: ../src/selection-chemistry.cpp:1237
+#: ../src/selection-chemistry.cpp:1223
msgid "Paste style"
msgstr "Ielīmēt stilu"
-#: ../src/selection-chemistry.cpp:1247
+#: ../src/selection-chemistry.cpp:1233
msgid "Paste live path effect"
msgstr "IelÄ«mēt ceÄŒa (LPE) efektu"
-#: ../src/selection-chemistry.cpp:1269
+#: ../src/selection-chemistry.cpp:1255
msgid "Select <b>object(s)</b> to remove live path effects from."
msgstr "Atlasiet <b>objektu(s)</b>, no kuriem jāaizvāc ceČa (LPE) efekti."
-#: ../src/selection-chemistry.cpp:1281
+#: ../src/selection-chemistry.cpp:1267
msgid "Remove live path effect"
msgstr "Aizvākt ceČa (LPE) efektu"
-#: ../src/selection-chemistry.cpp:1292
+#: ../src/selection-chemistry.cpp:1278
msgid "Select <b>object(s)</b> to remove filters from."
msgstr "Atlasiet <b>objektu(s)</b>, no kuriem jāaizvāc filtri."
-#: ../src/selection-chemistry.cpp:1302 ../src/ui/dialog/filter-effects-dialog.cpp:1678
+#: ../src/selection-chemistry.cpp:1288 ../src/ui/dialog/filter-effects-dialog.cpp:1693
msgid "Remove filter"
msgstr "Aizvākt filtru"
-#: ../src/selection-chemistry.cpp:1311
+#: ../src/selection-chemistry.cpp:1297
msgid "Paste size"
msgstr "Ielīmēt izmērus"
-#: ../src/selection-chemistry.cpp:1320
+#: ../src/selection-chemistry.cpp:1306
msgid "Paste size separately"
msgstr "IelÄ«mēt izmērus atseviĆĄÄ·i"
-#: ../src/selection-chemistry.cpp:1349
+#: ../src/selection-chemistry.cpp:1335
msgid "Select <b>object(s)</b> to move to the layer above."
msgstr "Atlasiet <b>objektu(s)</b>, ko pārvietot uz slāni virs paơreizējā."
-#: ../src/selection-chemistry.cpp:1376
+#: ../src/selection-chemistry.cpp:1360
msgid "Raise to next layer"
msgstr "Pacelt uz nākoƥo slāni"
-#: ../src/selection-chemistry.cpp:1383
+#: ../src/selection-chemistry.cpp:1367
msgid "No more layers above."
msgstr "Nav augstāka slāƆa par ơo."
-#: ../src/selection-chemistry.cpp:1395
+#: ../src/selection-chemistry.cpp:1378
msgid "Select <b>object(s)</b> to move to the layer below."
msgstr "Atlasiet <b>objektu(s)</b>, ko pārvietot uz slāni zem paơreizējā."
-#: ../src/selection-chemistry.cpp:1422
+#: ../src/selection-chemistry.cpp:1403
msgid "Lower to previous layer"
msgstr "Nolaist uz iepriekơējo slāni"
-#: ../src/selection-chemistry.cpp:1429
+#: ../src/selection-chemistry.cpp:1410
msgid "No more layers below."
msgstr "Nav zemāka slāƆa par ơo."
-#: ../src/selection-chemistry.cpp:1441
+#: ../src/selection-chemistry.cpp:1420
msgid "Select <b>object(s)</b> to move."
msgstr "Atlasiet pārvietojamo(s) <b>objektu(s)</b>."
-#: ../src/selection-chemistry.cpp:1459 ../src/verbs.cpp:2656
+#: ../src/selection-chemistry.cpp:1437 ../src/verbs.cpp:2625
msgid "Move selection to layer"
msgstr "Pārvietot atlasīto uz slāni"
#. An SVG element cannot have a transform. We could change 'x' and 'y' in response
#. to a translation... but leave that for another day.
-#: ../src/selection-chemistry.cpp:1549 ../src/seltrans.cpp:388
+#: ../src/selection-chemistry.cpp:1526 ../src/seltrans.cpp:390
msgid "Cannot transform an embedded SVG."
msgstr "Nav iespējams pārveidot iegulto SVG."
-#: ../src/selection-chemistry.cpp:1720
+#: ../src/selection-chemistry.cpp:1696
msgid "Remove transform"
msgstr "Aizvākt pārveidojumu"
-#: ../src/selection-chemistry.cpp:1827
+#: ../src/selection-chemistry.cpp:1803
msgid "Rotate 90° CCW"
msgstr "Pagriezt par 90° CCW"
-#: ../src/selection-chemistry.cpp:1827
+#: ../src/selection-chemistry.cpp:1803
msgid "Rotate 90° CW"
msgstr "Pagriezt par 90° CW"
-#: ../src/selection-chemistry.cpp:1848 ../src/seltrans.cpp:483 ../src/ui/dialog/transformation.cpp:893
+#: ../src/selection-chemistry.cpp:1824 ../src/seltrans.cpp:483 ../src/ui/dialog/transformation.cpp:891
msgid "Rotate"
msgstr "Pagriezt"
-#: ../src/selection-chemistry.cpp:2204
+#: ../src/selection-chemistry.cpp:2173
msgid "Rotate by pixels"
msgstr "Pagriezt pa pikseÄŒiem"
-#: ../src/selection-chemistry.cpp:2234 ../src/seltrans.cpp:480 ../src/ui/dialog/transformation.cpp:868 ../share/extensions/interp_att_g.inx.h:12
+#: ../src/selection-chemistry.cpp:2203 ../src/seltrans.cpp:480 ../src/ui/dialog/transformation.cpp:865 ../src/ui/widget/page-sizer.cpp:448 ../share/extensions/interp_att_g.inx.h:12
msgid "Scale"
msgstr "Mērogot"
-#: ../src/selection-chemistry.cpp:2259
+#: ../src/selection-chemistry.cpp:2228
msgid "Scale by whole factor"
msgstr "Mērogot veselu skaitu reiĆŸu"
-#: ../src/selection-chemistry.cpp:2274
+#: ../src/selection-chemistry.cpp:2243
msgid "Move vertically"
msgstr "Pārvietot vertikāli"
-#: ../src/selection-chemistry.cpp:2277
+#: ../src/selection-chemistry.cpp:2246
msgid "Move horizontally"
msgstr "Pārvietot horizontāli"
-#: ../src/selection-chemistry.cpp:2280 ../src/selection-chemistry.cpp:2306 ../src/seltrans.cpp:477 ../src/ui/dialog/transformation.cpp:806
+#: ../src/selection-chemistry.cpp:2249 ../src/selection-chemistry.cpp:2275 ../src/seltrans.cpp:477 ../src/ui/dialog/transformation.cpp:802
msgid "Move"
msgstr "Pārvietot"
-#: ../src/selection-chemistry.cpp:2300
+#: ../src/selection-chemistry.cpp:2269
msgid "Move vertically by pixels"
msgstr "Pārvietot vertikāli pa pikseČiem"
-#: ../src/selection-chemistry.cpp:2303
+#: ../src/selection-chemistry.cpp:2272
msgid "Move horizontally by pixels"
msgstr "Pārvietot horizontāli pa pikseČiem"
-#: ../src/selection-chemistry.cpp:2435
+#: ../src/selection-chemistry.cpp:2475
msgid "The selection has no applied path effect."
msgstr "Atlasītajam nav pielietots neviens ceČa efekts."
-#: ../src/selection-chemistry.cpp:2607 ../src/ui/dialog/clonetiler.cpp:2223
+#: ../src/selection-chemistry.cpp:2567 ../src/ui/dialog/clonetiler.cpp:2221
msgid "Select an <b>object</b> to clone."
msgstr "Atlasiet klonējamo <b>objektu</b>."
-#: ../src/selection-chemistry.cpp:2643
+#: ../src/selection-chemistry.cpp:2602
msgctxt "Action"
msgid "Clone"
msgstr "Klonēt"
-#: ../src/selection-chemistry.cpp:2659
+#: ../src/selection-chemistry.cpp:2616
msgid "Select <b>clones</b> to relink."
msgstr "Atlasiet <b>klonus</b>, kuriem jāatjauno piesaiste."
-#: ../src/selection-chemistry.cpp:2666
+#: ../src/selection-chemistry.cpp:2623
msgid "Copy an <b>object</b> to clipboard to relink clones to."
msgstr "Nokopējiet uz starpliktuvi <b>objektu</b>, kuram jāatjauno klonu saites."
-#: ../src/selection-chemistry.cpp:2689
+#: ../src/selection-chemistry.cpp:2644
msgid "<b>No clones to relink</b> in the selection."
msgstr "Atlasītajā <b>nav klonu ar atjaunojamu piesaisti</b>."
-#: ../src/selection-chemistry.cpp:2692
+#: ../src/selection-chemistry.cpp:2647
msgid "Relink clone"
msgstr "Atjaunot klona piesaisti"
-#: ../src/selection-chemistry.cpp:2706
+#: ../src/selection-chemistry.cpp:2661
msgid "Select <b>clones</b> to unlink."
msgstr "Atlasiet atsaistāmos <b>klonus</b>."
-#: ../src/selection-chemistry.cpp:2762
+#: ../src/selection-chemistry.cpp:2714
msgid "<b>No clones to unlink</b> in the selection."
msgstr "Atlasītajā <b>nav atsaistāmu klonu</b>."
-#: ../src/selection-chemistry.cpp:2766
+#: ../src/selection-chemistry.cpp:2718
msgid "Unlink clone"
msgstr "Atsaistīt klonu"
-#: ../src/selection-chemistry.cpp:2779
+#: ../src/selection-chemistry.cpp:2731
msgid "Select a <b>clone</b> to go to its original. Select a <b>linked offset</b> to go to its source. Select a <b>text on path</b> to go to the path. Select a <b>flowed text</b> to go to its frame."
msgstr ""
"Atlasiet <b>klonu</b>, lai pārietu pie tā oriÄŁināla. Atlasiet <b>saistÄ«to nobÄ«di</b>, lai pārietu pie tās sākumpunkta. Atlasiet <b>tekstu gar ceÄŒu</b>, lai pārietu pie ceÄŒa. Atlasiet <b>aizpildoĆĄo tekstu</b>, lai pārietu pie tā rāmja."
-#: ../src/selection-chemistry.cpp:2827
+#: ../src/selection-chemistry.cpp:2781
msgid "<b>Cannot find</b> the object to select (orphaned clone, offset, textpath, flowed text?)"
msgstr "<b>Nevar atrast</b> atlasāmo objektu (pamests klons, nobÄ«de, teksta ceÄŒĆĄ, teksta aizpildÄ«jums?)"
-#: ../src/selection-chemistry.cpp:2833
+#: ../src/selection-chemistry.cpp:2787
msgid "The object you're trying to select is <b>not visible</b> (it is in &lt;defs&gt;)"
msgstr "Objekts, ko mēģināt atlasÄ«t, <b>nav redzams</b> (tas atrodas &lt;defs&gt;)"
-#: ../src/selection-chemistry.cpp:2922
+#: ../src/selection-chemistry.cpp:2877
msgid "Select path(s) to fill."
msgstr "Atlasiet aizpildāmo(s) ceČu(s)."
-#: ../src/selection-chemistry.cpp:2940
+#: ../src/selection-chemistry.cpp:2895
msgid "Select <b>object(s)</b> to convert to marker."
msgstr "Atlasiet <b>objektu(s)</b>, kurus vēlaties pārvērst par marķieriem."
-#: ../src/selection-chemistry.cpp:3015
+#: ../src/selection-chemistry.cpp:2969
msgid "Objects to marker"
msgstr "Objektus par marÄ·ieriem"
-#: ../src/selection-chemistry.cpp:3040
+#: ../src/selection-chemistry.cpp:2995
msgid "Select <b>object(s)</b> to convert to guides."
msgstr "Atlasiet <b>objektu(s)</b>, kurus vēlaties pārvērst par palīglīnijām."
-#: ../src/selection-chemistry.cpp:3063
+#: ../src/selection-chemistry.cpp:3016
msgid "Objects to guides"
msgstr "Objektus par palīglīnijam"
-#: ../src/selection-chemistry.cpp:3099
+#: ../src/selection-chemistry.cpp:3052
msgid "Select <b>objects</b> to convert to symbol."
msgstr "Atlasiet <b>objektus</b>, kurus vēlaties pārvērst par simbolu."
-#: ../src/selection-chemistry.cpp:3202
+#: ../src/selection-chemistry.cpp:3153
msgid "Group to symbol"
msgstr "Grupēt simbola virzienā"
-#: ../src/selection-chemistry.cpp:3221
+#: ../src/selection-chemistry.cpp:3172
msgid "Select a <b>symbol</b> to extract objects from."
msgstr "Atlasiet <b>simbolu</b>, no kura ekstraģēt objektus."
-#: ../src/selection-chemistry.cpp:3230
+#: ../src/selection-chemistry.cpp:3181
msgid "Select only one <b>symbol</b> in Symbol dialog to convert to group."
msgstr "Izvēlieties tikai vienu<b>simbolu</b> no Simbolu dialoglodziƆa,lai to pārvērstu par grupu."
-#: ../src/selection-chemistry.cpp:3288
+#: ../src/selection-chemistry.cpp:3237
msgid "Group from symbol"
msgstr "Grupēt virzienā no simbola"
-#: ../src/selection-chemistry.cpp:3306
+#: ../src/selection-chemistry.cpp:3255
msgid "Select <b>object(s)</b> to convert to pattern."
msgstr "Atlasiet <b>objektu(s)</b>, kurus vēlaties pārvērst par faktĆ«ru."
-#: ../src/selection-chemistry.cpp:3405
+#: ../src/selection-chemistry.cpp:3351
msgid "Objects to pattern"
msgstr "Objektus par faktƫru"
-#: ../src/selection-chemistry.cpp:3421
+#: ../src/selection-chemistry.cpp:3367
msgid "Select an <b>object with pattern fill</b> to extract objects from."
msgstr "Atlasiet <b>objektu ar faktĆ«ras aizpildÄ«jumu</b>, no kura ekstraģēt objektus."
-#: ../src/selection-chemistry.cpp:3482
+#: ../src/selection-chemistry.cpp:3426
msgid "<b>No pattern fills</b> in the selection."
msgstr "Atlasītajā nav objektu ar <b>faktƫras aizpildījumu</b>."
-#: ../src/selection-chemistry.cpp:3485
+#: ../src/selection-chemistry.cpp:3429
msgid "Pattern to objects"
msgstr "Faktƫru par objektiem"
-#: ../src/selection-chemistry.cpp:3576
+#: ../src/selection-chemistry.cpp:3516
msgid "Select <b>object(s)</b> to make a bitmap copy."
msgstr "Atlasiet <b>objektu(s)</b> bitkartes kopijas izveidoĆĄanai."
-#: ../src/selection-chemistry.cpp:3580
+#: ../src/selection-chemistry.cpp:3520
msgid "Rendering bitmap..."
msgstr "Renderē bitkarti..."
-#: ../src/selection-chemistry.cpp:3767
+#: ../src/selection-chemistry.cpp:3705
msgid "Create bitmap"
msgstr "Izveidot bitkarti"
-#: ../src/selection-chemistry.cpp:3792 ../src/selection-chemistry.cpp:3911
+#: ../src/selection-chemistry.cpp:3730 ../src/selection-chemistry.cpp:3842
msgid "Select <b>object(s)</b> to create clippath or mask from."
msgstr "Atlasiet <b>objektu(s)</b> izgrieĆĄanas ceÄŒa vai maskas izveidoĆĄanai."
-#: ../src/selection-chemistry.cpp:3885
+#: ../src/selection-chemistry.cpp:3816
msgid "Create Clip Group"
msgstr "Izveidot klipu grupu"
-#: ../src/selection-chemistry.cpp:3914
+#: ../src/selection-chemistry.cpp:3845
msgid "Select mask object and <b>object(s)</b> to apply clippath or mask to."
msgstr "Atlasiet maskas objektu un <b>objektu(s)</b>izgrieĆĄanas ceÄŒa vai maskas pielietoĆĄanai."
-#: ../src/selection-chemistry.cpp:4095
+#: ../src/selection-chemistry.cpp:3992
msgid "Set clipping path"
msgstr "Iestatiet izgrieĆĄanas ceÄŒu"
-#: ../src/selection-chemistry.cpp:4097
+#: ../src/selection-chemistry.cpp:3994
msgid "Set mask"
msgstr "Iestatīt masku"
-#: ../src/selection-chemistry.cpp:4112
+#: ../src/selection-chemistry.cpp:4009
msgid "Select <b>object(s)</b> to remove clippath or mask from."
msgstr "Atlasiet <b>objektu(s)</b>, kuram(-iem) noƆemt izgrieĆĄanas ceÄŒu vai masku."
-#: ../src/selection-chemistry.cpp:4232
+#: ../src/selection-chemistry.cpp:4125
msgid "Release clipping path"
msgstr "AtbrÄ«vot izgrieĆĄanas ceÄŒu"
-#: ../src/selection-chemistry.cpp:4234
+#: ../src/selection-chemistry.cpp:4127
msgid "Release mask"
msgstr "Atbrīvot masku"
-#: ../src/selection-chemistry.cpp:4253
+#: ../src/selection-chemistry.cpp:4146
msgid "Select <b>object(s)</b> to fit canvas to."
msgstr "Atlasiet <b>objektu(s)</b>, kuriem pielāgot audekla izmēru."
#. Fit Page
-#: ../src/selection-chemistry.cpp:4273 ../src/verbs.cpp:2992
+#: ../src/selection-chemistry.cpp:4166 ../src/verbs.cpp:2961
msgid "Fit Page to Selection"
msgstr "Pielāgot lapu atlasītajam"
-#: ../src/selection-chemistry.cpp:4302 ../src/verbs.cpp:2994
+#: ../src/selection-chemistry.cpp:4195 ../src/verbs.cpp:2963
msgid "Fit Page to Drawing"
msgstr "Pielāgot lapu zīmējumam"
-#: ../src/selection-chemistry.cpp:4323 ../src/verbs.cpp:2996
+#: ../src/selection-chemistry.cpp:4216 ../src/verbs.cpp:2965
msgid "Fit Page to Selection or Drawing"
msgstr "Pielāgojiet lapu atlasītajam vai zīmējumam"
@@ -11372,9 +11334,9 @@ msgstr "Izmantojiet <b>Shift+D</b>, lai sameklētu rāmi"
#, c-format
msgid "<b>%1$i</b> objects selected of type %2$s"
msgid_plural "<b>%1$i</b> objects selected of types %2$s"
-msgstr[0] ""
-msgstr[1] ""
-msgstr[2] ""
+msgstr[0] "Atlasīts <b>%1$i</b> %2$s tipa objekts"
+msgstr[1] "Atlasīti <b>%1$i</b> %2$s tipa objekti"
+msgstr[2] "Atlasīti <b>%1$i</b> %2$s tipa objekti"
#: ../src/selection-describer.cpp:246
#, c-format
@@ -11404,47 +11366,47 @@ msgstr "<b>Griezt</b> atlasÄ«to; ar <b>Ctrl</b> - pievilkt leƆķim; ar <b>Shift
msgid "<b>Center</b> of rotation and skewing: drag to reposition; scaling with Shift also uses this center"
msgstr "GrieĆĄanas un ĆĄÄ·iebĆĄanas <b>centrs</b>: velciet, lai manÄ«tu novietojumu; mērogoĆĄana ar Shift arÄ« lieto ĆĄo centru"
-#: ../src/seltrans.cpp:486 ../src/ui/dialog/transformation.cpp:981
+#: ../src/seltrans.cpp:486 ../src/ui/dialog/transformation.cpp:980
msgid "Skew"
msgstr "SaĆĄÄ·iebt"
-#: ../src/seltrans.cpp:499
+#: ../src/seltrans.cpp:500
msgid "Set center"
msgstr "Iestatīt centru"
-#: ../src/seltrans.cpp:574
+#: ../src/seltrans.cpp:573
msgid "Stamp"
msgstr "Zīmogs"
-#: ../src/seltrans.cpp:723
+#: ../src/seltrans.cpp:722
msgid "Reset center"
msgstr "Atiestatīt centru"
-#: ../src/seltrans.cpp:955 ../src/seltrans.cpp:1060
+#: ../src/seltrans.cpp:954 ../src/seltrans.cpp:1059
#, c-format
msgid "<b>Scale</b>: %0.2f%% x %0.2f%%; with <b>Ctrl</b> to lock ratio"
msgstr "<b>Mērogot</b>: %0.2f%% x %0.2f%%; ar <b>Ctrl</b> - slēgt attiecību"
#. TRANSLATORS: don't modify the first ";"
#. (it will NOT be displayed as ";" - only the second one will be)
-#: ../src/seltrans.cpp:1199
+#: ../src/seltrans.cpp:1198
#, c-format
msgid "<b>Skew</b>: %0.2f&#176;; with <b>Ctrl</b> to snap angle"
msgstr "<b>Ć Ä·iebt</b>: %0.2f&#176;; ar <b>Ctrl</b> - pievilkt leƆķim"
#. TRANSLATORS: don't modify the first ";"
#. (it will NOT be displayed as ";" - only the second one will be)
-#: ../src/seltrans.cpp:1274
+#: ../src/seltrans.cpp:1273
#, c-format
msgid "<b>Rotate</b>: %0.2f&#176;; with <b>Ctrl</b> to snap angle"
msgstr "<b>Griezt</b>: %0.2f&#176;; ar <b>Ctrl</b> - pievilkt leƆķim"
-#: ../src/seltrans.cpp:1311
+#: ../src/seltrans.cpp:1310
#, c-format
msgid "Move <b>center</b> to %s, %s"
msgstr "Pārvietot <b>centru</b> uz %s, %s"
-#: ../src/seltrans.cpp:1465
+#: ../src/seltrans.cpp:1464
#, c-format
msgid "<b>Move</b> by %s, %s; with <b>Ctrl</b> to restrict to horizontal/vertical; with <b>Shift</b> to disable snapping"
msgstr "<b>Pārvietot</b> par %s, %s; ar <b>Ctrl</b> - lai ierobeĆŸotu horizontāli/vertikāli; ar <b>Shift</b> - atslēgt piesaisti"
@@ -11454,7 +11416,7 @@ msgstr "<b>Pārvietot</b> par %s, %s; ar <b>Ctrl</b> - lai ierobeĆŸotu horizontÄ
msgid "Keyboard directory (%s) is unavailable."
msgstr "Klaviatƫras mape (%s) nav pieejama."
-#: ../src/shortcuts.cpp:337 ../src/ui/dialog/export.cpp:1298 ../src/ui/dialog/export.cpp:1332
+#: ../src/shortcuts.cpp:337 ../src/ui/dialog/export.cpp:1296 ../src/ui/dialog/export.cpp:1330
msgid "Select a filename for exporting"
msgstr "Izvēlieties eksportējamās datnes nosaukumu"
@@ -11471,20 +11433,20 @@ msgstr "līdz %s"
msgid "without URI"
msgstr "bez URI"
-#: ../src/sp-ellipse.cpp:344
+#: ../src/sp-ellipse.cpp:361
msgid "Segment"
msgstr "Segments"
-#: ../src/sp-ellipse.cpp:346
+#: ../src/sp-ellipse.cpp:363
msgid "Arc"
msgstr "Loks"
#. Ellipse
-#: ../src/sp-ellipse.cpp:349 ../src/sp-ellipse.cpp:356 ../src/ui/dialog/inkscape-preferences.cpp:412 ../src/widgets/pencil-toolbar.cpp:163
+#: ../src/sp-ellipse.cpp:366 ../src/sp-ellipse.cpp:373 ../src/ui/dialog/inkscape-preferences.cpp:412 ../src/widgets/pencil-toolbar.cpp:163
msgid "Ellipse"
msgstr "Elipse"
-#: ../src/sp-ellipse.cpp:353
+#: ../src/sp-ellipse.cpp:370
msgid "Circle"
msgstr "Aplis"
@@ -11509,7 +11471,7 @@ msgstr "Teksta aizpildījums"
msgid "Linked Flowed Text"
msgstr "Saistītais teksta aizpildījums"
-#: ../src/sp-flowtext.cpp:288 ../src/sp-text.cpp:367 ../src/ui/tools/text-tool.cpp:1557
+#: ../src/sp-flowtext.cpp:288 ../src/sp-text.cpp:367 ../src/ui/tools/text-tool.cpp:1556
msgid " [truncated]"
msgstr " [nogriezts]"
@@ -11525,7 +11487,7 @@ msgstr[2] "(%d rakstzīmes%s)"
msgid "Create Guides Around the Page"
msgstr "Izveidot palīglīnijas apkārt lapai"
-#: ../src/sp-guide.cpp:258 ../src/verbs.cpp:2549
+#: ../src/sp-guide.cpp:258 ../src/verbs.cpp:2518
msgid "Delete All Guides"
msgstr "Dzēst visas palīglīnijas"
@@ -11567,40 +11529,40 @@ msgstr "[nederīga atsauce]: %s"
msgid "%d &#215; %d: %s"
msgstr "%d &#215; %d: %s"
-#: ../src/sp-item-group.cpp:322
+#: ../src/sp-item-group.cpp:307
msgid "Group"
msgstr "Grupa"
-#: ../src/sp-item-group.cpp:328 ../src/sp-switch.cpp:68
+#: ../src/sp-item-group.cpp:313 ../src/sp-switch.cpp:69
#, c-format
msgid "of <b>%d</b> object"
msgstr "no <b>%d</b> objekta"
-#: ../src/sp-item-group.cpp:328 ../src/sp-switch.cpp:68
+#: ../src/sp-item-group.cpp:313 ../src/sp-switch.cpp:69
#, c-format
msgid "of <b>%d</b> objects"
msgstr "no <b>%d</b> objektiem"
-#: ../src/sp-item.cpp:1051 ../src/verbs.cpp:214
+#: ../src/sp-item.cpp:1030 ../src/verbs.cpp:213
msgid "Object"
msgstr "Objekts"
-#: ../src/sp-item.cpp:1063
+#: ../src/sp-item.cpp:1042
#, c-format
msgid "%s; <i>clipped</i>"
msgstr "%s; <i>izgriezts</i>"
-#: ../src/sp-item.cpp:1069
+#: ../src/sp-item.cpp:1048
#, c-format
msgid "%s; <i>masked</i>"
msgstr "%s; <i>maskēts</i>"
-#: ../src/sp-item.cpp:1079
+#: ../src/sp-item.cpp:1058
#, c-format
msgid "%s; <i>filtered (%s)</i>"
msgstr "%s; <i>filtrēts (%s)</i>"
-#: ../src/sp-item.cpp:1081
+#: ../src/sp-item.cpp:1060
#, c-format
msgid "%s; <i>filtered</i>"
msgstr "%s; <i>filtrēts</i>"
@@ -11663,7 +11625,7 @@ msgid "<b>Polyline</b>"
msgstr "<b>Lauzta līnija</b>"
#. Rectangle
-#: ../src/sp-rect.cpp:153 ../src/ui/dialog/inkscape-preferences.cpp:402
+#: ../src/sp-rect.cpp:161 ../src/ui/dialog/inkscape-preferences.cpp:402
msgid "Rectangle"
msgstr "Taisnstƫris"
@@ -11680,11 +11642,11 @@ msgid "with %3f turns"
msgstr "ar %3f vijumiem"
#. Star
-#: ../src/sp-star.cpp:246 ../src/ui/dialog/inkscape-preferences.cpp:416 ../src/widgets/star-toolbar.cpp:471
+#: ../src/sp-star.cpp:246 ../src/ui/dialog/inkscape-preferences.cpp:416 ../src/widgets/star-toolbar.cpp:469
msgid "Star"
msgstr "Zvaigzne"
-#: ../src/sp-star.cpp:247 ../src/widgets/star-toolbar.cpp:464
+#: ../src/sp-star.cpp:247 ../src/widgets/star-toolbar.cpp:462
msgid "Polygon"
msgstr "Daudzstƫris"
@@ -11701,11 +11663,11 @@ msgstr "ar %d virsotni"
msgid "with %d vertices"
msgstr "ar %d virsotnēm"
-#: ../src/sp-switch.cpp:62
+#: ../src/sp-switch.cpp:63
msgid "Conditional Group"
msgstr "Grupēơana pēc nosacÄ«juma"
-#: ../src/sp-text.cpp:351 ../src/verbs.cpp:348 ../share/extensions/lorem_ipsum.inx.h:8 ../share/extensions/replace_font.inx.h:11 ../share/extensions/split.inx.h:10 ../share/extensions/text_braille.inx.h:2
+#: ../src/sp-text.cpp:351 ../src/verbs.cpp:347 ../share/extensions/lorem_ipsum.inx.h:8 ../share/extensions/replace_font.inx.h:11 ../share/extensions/split.inx.h:10 ../share/extensions/text_braille.inx.h:2
#: ../share/extensions/text_extract.inx.h:14 ../share/extensions/text_flipcase.inx.h:2 ../share/extensions/text_lowercase.inx.h:2 ../share/extensions/text_merge.inx.h:16 ../share/extensions/text_randomcase.inx.h:2
#: ../share/extensions/text_sentencecase.inx.h:2 ../share/extensions/text_titlecase.inx.h:2 ../share/extensions/text_uppercase.inx.h:2
msgid "Text"
@@ -11729,7 +11691,7 @@ msgstr "Klonētās rakstzīmes dati"
msgid " from "
msgstr " no "
-#: ../src/sp-tref.cpp:240 ../src/sp-use.cpp:269
+#: ../src/sp-tref.cpp:240 ../src/sp-use.cpp:271
msgid "[orphaned]"
msgstr "[bārenis]"
@@ -11737,30 +11699,30 @@ msgstr "[bārenis]"
msgid "Text Span"
msgstr "Teksta platums"
-#: ../src/sp-use.cpp:232
+#: ../src/sp-use.cpp:234
msgid "Symbol"
msgstr "Simbols"
-#: ../src/sp-use.cpp:234
+#: ../src/sp-use.cpp:236
msgid "Clone"
msgstr "Klonēt"
-#: ../src/sp-use.cpp:242 ../src/sp-use.cpp:244 ../src/sp-use.cpp:246
+#: ../src/sp-use.cpp:244 ../src/sp-use.cpp:246 ../src/sp-use.cpp:248
#, c-format
msgid "called %s"
msgstr "izsauca %s"
-#: ../src/sp-use.cpp:246
+#: ../src/sp-use.cpp:248
msgid "Unnamed Symbol"
msgstr "Nenosaukts simbols"
#. TRANSLATORS: Used for statusbar description for long <use> chains:
#. * "Clone of: Clone of: ... in Layer 1".
-#: ../src/sp-use.cpp:255
+#: ../src/sp-use.cpp:257
msgid "..."
msgstr "..."
-#: ../src/sp-use.cpp:264
+#: ../src/sp-use.cpp:266
#, c-format
msgid "of: %s"
msgstr "no: %s"
@@ -11797,147 +11759,147 @@ msgstr "Atlasiet <b>tieĆĄi 2 ceÄŒus</b>, lai veiktu atƆemsanu, dalīƥanu vai c
msgid "Unable to determine the <b>z-order</b> of the objects selected for difference, XOR, division, or path cut."
msgstr "Nav iespējams noteikt kārtÄ«bu uz <b>z-ass</b> objektiem, kas atlasÄ«ti atƆemĆĄanai, XOR, dalīƥanai vai ceÄŒa grieĆĄanai."
-#: ../src/splivarot.cpp:407
+#: ../src/splivarot.cpp:406
msgid "One of the objects is <b>not a path</b>, cannot perform boolean operation."
msgstr "Viens no objektiem <b>nav ceÄŒĆĄ</b>, nav iespējams izpildÄ«t Bula darbÄ«bu."
-#: ../src/splivarot.cpp:1157
+#: ../src/splivarot.cpp:1150
msgid "Select <b>stroked path(s)</b> to convert stroke to path."
msgstr "Atlasiet <b>apmales ceČu(s)</b>, lai pārveidotu apmali par ceČu."
-#: ../src/splivarot.cpp:1516
+#: ../src/splivarot.cpp:1506
msgid "Convert stroke to path"
msgstr "Pārvērst apmali par ceÄŒu"
#. TRANSLATORS: "to outline" means "to convert stroke to path"
-#: ../src/splivarot.cpp:1519
+#: ../src/splivarot.cpp:1509
msgid "<b>No stroked paths</b> in the selection."
msgstr "Atlasītajā nav <b>vilktu ceČu</b>."
-#: ../src/splivarot.cpp:1590
+#: ../src/splivarot.cpp:1580
msgid "Selected object is <b>not a path</b>, cannot inset/outset."
msgstr "AtlasÄ«tais objekts <b>nav ceÄŒs</b>, nav iespējams saÄ«sināt/pagarināt."
-#: ../src/splivarot.cpp:1681 ../src/splivarot.cpp:1746
+#: ../src/splivarot.cpp:1671 ../src/splivarot.cpp:1738
msgid "Create linked offset"
msgstr "Izveidot saistīto nobīdi"
-#: ../src/splivarot.cpp:1682 ../src/splivarot.cpp:1747
+#: ../src/splivarot.cpp:1672 ../src/splivarot.cpp:1739
msgid "Create dynamic offset"
msgstr "Izveidot dinamisko nobīdi"
-#: ../src/splivarot.cpp:1772
+#: ../src/splivarot.cpp:1764
msgid "Select <b>path(s)</b> to inset/outset."
msgstr "Atlasiet saīsināmo(s)/pagarināmo(s) <b>ceČus</b>."
-#: ../src/splivarot.cpp:1968
+#: ../src/splivarot.cpp:1957
msgid "Outset path"
msgstr "Pagarināt ceČu"
-#: ../src/splivarot.cpp:1968
+#: ../src/splivarot.cpp:1957
msgid "Inset path"
msgstr "Saīsināt ceČu"
-#: ../src/splivarot.cpp:1970
+#: ../src/splivarot.cpp:1959
msgid "<b>No paths</b> to inset/outset in the selection."
msgstr "Atlasītajā <b>nav</b> saīsināmu/pagarināmu <b>ceČu</b>."
-#: ../src/splivarot.cpp:2132
+#: ../src/splivarot.cpp:2121
msgid "Simplifying paths (separately):"
msgstr "VienkārĆĄo ceÄŒus (atseviĆĄÄ·i):"
-#: ../src/splivarot.cpp:2134
+#: ../src/splivarot.cpp:2123
msgid "Simplifying paths:"
msgstr "VienkārĆĄo ceÄŒus:"
-#: ../src/splivarot.cpp:2171
+#: ../src/splivarot.cpp:2160
#, c-format
msgid "%s <b>%d</b> of <b>%d</b> paths simplified..."
msgstr "%s <b>%d</b> no <b>%d</b> ceÄŒiem vienkārĆĄoti..."
-#: ../src/splivarot.cpp:2184
+#: ../src/splivarot.cpp:2173
#, c-format
msgid "<b>%d</b> paths simplified."
msgstr "<b>%d</b> ceÄŒi vienkārĆĄoti."
-#: ../src/splivarot.cpp:2198
+#: ../src/splivarot.cpp:2187
msgid "Select <b>path(s)</b> to simplify."
msgstr "Atlasiet vienkārĆĄojamo(s) <b>ceÄŒu(s)</b>."
-#: ../src/splivarot.cpp:2214
+#: ../src/splivarot.cpp:2203
msgid "<b>No paths</b> to simplify in the selection."
msgstr "AtlasÄ«tajā <b>nav vienkārĆĄojamu ceÄŒu</b>."
-#: ../src/text-chemistry.cpp:94
+#: ../src/text-chemistry.cpp:91
msgid "Select <b>a text and a path</b> to put text on path."
msgstr "Atlasiet <b>tekstu un ceČu</b>, lai izkārtotu tekstu gar ceČu."
-#: ../src/text-chemistry.cpp:99
+#: ../src/text-chemistry.cpp:96
msgid "This text object is <b>already put on a path</b>. Remove it from the path first. Use <b>Shift+D</b> to look up its path."
msgstr "Ć is teksta objekts <b>jau ir izkārtots gar ceÄŒu</b>, aizvāciet to no ceÄŒa vispirms. Izmantojiet <b>Shift+D</b>, lai sameklētu tā ceÄŒu."
#. rect is the only SPShape which is not <path> yet, and thus SVG forbids us from putting text on it
-#: ../src/text-chemistry.cpp:105
+#: ../src/text-chemistry.cpp:102
msgid "You cannot put text on a rectangle in this version. Convert rectangle to path first."
msgstr "JĆ«s nevarat izkārtot tekstu gar taisnstĆ«ri ĆĄajā versijā. Vispirms pārveidojiet taisnstĆ«ri par ceÄŒu."
-#: ../src/text-chemistry.cpp:115
+#: ../src/text-chemistry.cpp:112
msgid "The flowed text(s) must be <b>visible</b> in order to be put on a path."
msgstr "Lai novietotu uz ceÄŒa, teksta aizpildÄ«jumam(-iem) jābĆ«t <b>redzamam (-iem)</b>."
-#: ../src/text-chemistry.cpp:185 ../src/verbs.cpp:2571
+#: ../src/text-chemistry.cpp:182 ../src/verbs.cpp:2540
msgid "Put text on path"
msgstr "Izkārtot tekstu gar ceČu"
-#: ../src/text-chemistry.cpp:197
+#: ../src/text-chemistry.cpp:194
msgid "Select <b>a text on path</b> to remove it from path."
msgstr "Atlasiet <b>gar ceČu izkārtotu tekstu</b>, lai aizvāktu to no ceČa."
-#: ../src/text-chemistry.cpp:218
+#: ../src/text-chemistry.cpp:213
msgid "<b>No texts-on-paths</b> in the selection."
msgstr "Atlasītajā <b>nav teksta gar ceČu</b>."
-#: ../src/text-chemistry.cpp:221 ../src/verbs.cpp:2573
+#: ../src/text-chemistry.cpp:216 ../src/verbs.cpp:2542
msgid "Remove text from path"
msgstr "Aizvākt tekstu no ceČa"
-#: ../src/text-chemistry.cpp:262 ../src/text-chemistry.cpp:283
+#: ../src/text-chemistry.cpp:257 ../src/text-chemistry.cpp:277
msgid "Select <b>text(s)</b> to remove kerns from."
msgstr "Atlasiet<b>tekstu(s)</b>, no kuriem jāaizvāc rakstsavirze."
-#: ../src/text-chemistry.cpp:286
+#: ../src/text-chemistry.cpp:280
msgid "Remove manual kerns"
msgstr "Aizvākt rokas rakstsavirzi"
-#: ../src/text-chemistry.cpp:306
+#: ../src/text-chemistry.cpp:300
msgid "Select <b>a text</b> and one or more <b>paths or shapes</b> to flow text into frame."
msgstr "Atlasiet <b>tekstu</b> un vienu vai vairākus <b>ceÄŒus vai figĆ«ras</b>, lai aizpildÄ«tu rāmi ar tekstu."
-#: ../src/text-chemistry.cpp:376
+#: ../src/text-chemistry.cpp:369
msgid "Flow text into shape"
msgstr "Aizpildīt figƫru ar tekstu"
-#: ../src/text-chemistry.cpp:398
+#: ../src/text-chemistry.cpp:391
msgid "Select <b>a flowed text</b> to unflow it."
msgstr "Atlasiet <b>aizpildoƥo tekstu</b>, lai aizvāktu to no objekta."
-#: ../src/text-chemistry.cpp:472
+#: ../src/text-chemistry.cpp:464
msgid "Unflow flowed text"
msgstr "Aizvākt teksta aizpildījumu"
-#: ../src/text-chemistry.cpp:484
+#: ../src/text-chemistry.cpp:476
msgid "Select <b>flowed text(s)</b> to convert."
msgstr "Atlasiet pārvērĆĄamo <b>teksta aizpildÄ«jumu</b>."
-#: ../src/text-chemistry.cpp:502
+#: ../src/text-chemistry.cpp:494
msgid "The flowed text(s) must be <b>visible</b> in order to be converted."
msgstr "Lai pārvērstu, teksta aizpildÄ«jumam(-iem) jābĆ«t <b>redzamam (-iem)</b>."
-#: ../src/text-chemistry.cpp:530
+#: ../src/text-chemistry.cpp:521
msgid "Convert flowed text to text"
msgstr "Pārvērst teksta aizpildījumu par tekstu"
-#: ../src/text-chemistry.cpp:535
+#: ../src/text-chemistry.cpp:526
msgid "<b>No flowed text(s)</b> to convert in the selection."
msgstr "AtlasÄ«tajā <b>nav</b> pārvērĆĄama(-u) <b>aizpildoƥā(-o) teksta(-u)</b>."
@@ -11996,7 +11958,7 @@ msgstr "Vektorizēơana: pabeigta. Izveidoti %ld mezgli"
msgid "Nothing was copied."
msgstr "Nekas nav nokopēts."
-#: ../src/ui/clipboard.cpp:393 ../src/ui/clipboard.cpp:605 ../src/ui/clipboard.cpp:634
+#: ../src/ui/clipboard.cpp:393 ../src/ui/clipboard.cpp:607 ../src/ui/clipboard.cpp:636
msgid "Nothing on the clipboard."
msgstr "Starpliktuvē nav nekā."
@@ -12016,16 +11978,16 @@ msgstr "Atlasiet <b>objektu(s)</b>, kuriem pielietot izmēru no starpliktuves."
msgid "No size on the clipboard."
msgstr "Izmērs nav atrodams starpliktuvē."
-#: ../src/ui/clipboard.cpp:567
+#: ../src/ui/clipboard.cpp:568
msgid "Select <b>object(s)</b> to paste live path effect to."
msgstr "Atlasiet <b>objektu(s)</b>, kuriem jāielÄ«mē ceÄŒa (LPE) efekts."
#. no_effect:
-#: ../src/ui/clipboard.cpp:592
+#: ../src/ui/clipboard.cpp:594
msgid "No effect on the clipboard."
msgstr "Starpliktuvē nav neviena efekta."
-#: ../src/ui/clipboard.cpp:611 ../src/ui/clipboard.cpp:648
+#: ../src/ui/clipboard.cpp:613 ../src/ui/clipboard.cpp:650
msgid "Clipboard does not contain a path."
msgstr "CeÄŒĆĄ nav atrodams starpliktuvē."
@@ -12073,229 +12035,229 @@ msgstr "about.svg"
msgid "translator-credits"
msgstr "Tulkotāji"
-#: ../src/ui/dialog/align-and-distribute.cpp:171 ../src/ui/dialog/align-and-distribute.cpp:851
+#: ../src/ui/dialog/align-and-distribute.cpp:170 ../src/ui/dialog/align-and-distribute.cpp:847
msgid "Align"
msgstr "Līdzināt"
-#: ../src/ui/dialog/align-and-distribute.cpp:341 ../src/ui/dialog/align-and-distribute.cpp:852
+#: ../src/ui/dialog/align-and-distribute.cpp:338 ../src/ui/dialog/align-and-distribute.cpp:848
msgid "Distribute"
msgstr "Izkārtot"
-#: ../src/ui/dialog/align-and-distribute.cpp:420
+#: ../src/ui/dialog/align-and-distribute.cpp:417
msgid "Minimum horizontal gap (in px units) between bounding boxes"
msgstr "Minimālais horizontālais atstatums (px vienÄ«bās) starp robeĆŸrāmjiem"
#. TRANSLATORS: "H:" stands for horizontal gap
-#: ../src/ui/dialog/align-and-distribute.cpp:422
+#: ../src/ui/dialog/align-and-distribute.cpp:419
msgctxt "Gap"
msgid "_H:"
msgstr "_H"
-#: ../src/ui/dialog/align-and-distribute.cpp:430
+#: ../src/ui/dialog/align-and-distribute.cpp:427
msgid "Minimum vertical gap (in px units) between bounding boxes"
msgstr "Minimālais vertikālais atstatums (px vienÄ«bās) starp robeĆŸrāmjiem"
#. TRANSLATORS: Vertical gap
-#: ../src/ui/dialog/align-and-distribute.cpp:432
+#: ../src/ui/dialog/align-and-distribute.cpp:429
msgctxt "Gap"
msgid "_V:"
msgstr "_V:"
-#: ../src/ui/dialog/align-and-distribute.cpp:467 ../src/ui/dialog/align-and-distribute.cpp:854 ../src/widgets/connector-toolbar.cpp:411
+#: ../src/ui/dialog/align-and-distribute.cpp:464 ../src/ui/dialog/align-and-distribute.cpp:850 ../src/widgets/connector-toolbar.cpp:407
msgid "Remove overlaps"
msgstr "Aizvākt pārklāƥanos"
-#: ../src/ui/dialog/align-and-distribute.cpp:498 ../src/widgets/connector-toolbar.cpp:240
+#: ../src/ui/dialog/align-and-distribute.cpp:495 ../src/widgets/connector-toolbar.cpp:236
msgid "Arrange connector network"
msgstr "Sakārtot savienotāju tīklu"
-#: ../src/ui/dialog/align-and-distribute.cpp:591
+#: ../src/ui/dialog/align-and-distribute.cpp:588
msgid "Exchange Positions"
msgstr "Samainīt atraƥanās vietas"
-#: ../src/ui/dialog/align-and-distribute.cpp:625
+#: ../src/ui/dialog/align-and-distribute.cpp:622
msgid "Unclump"
msgstr "Izretināt"
-#: ../src/ui/dialog/align-and-distribute.cpp:697
+#: ../src/ui/dialog/align-and-distribute.cpp:693
msgid "Randomize positions"
msgstr "DaĆŸÄdot atraĆĄanās vietas"
-#: ../src/ui/dialog/align-and-distribute.cpp:800
+#: ../src/ui/dialog/align-and-distribute.cpp:795
msgid "Distribute text baselines"
msgstr "Izkliedēt teksta bāzes līnijas"
-#: ../src/ui/dialog/align-and-distribute.cpp:823
+#: ../src/ui/dialog/align-and-distribute.cpp:819
msgid "Align text baselines"
msgstr "Līdzināt teksta bāzes līnijas"
-#: ../src/ui/dialog/align-and-distribute.cpp:853
+#: ../src/ui/dialog/align-and-distribute.cpp:849
msgid "Rearrange"
msgstr "Pārkārtot"
-#: ../src/ui/dialog/align-and-distribute.cpp:855 ../src/widgets/toolbox.cpp:1729
+#: ../src/ui/dialog/align-and-distribute.cpp:851 ../src/widgets/toolbox.cpp:1725
msgid "Nodes"
msgstr "Mezgli"
-#: ../src/ui/dialog/align-and-distribute.cpp:869
+#: ../src/ui/dialog/align-and-distribute.cpp:865
msgid "Relative to: "
msgstr "Attiecībā pret:"
-#: ../src/ui/dialog/align-and-distribute.cpp:870
+#: ../src/ui/dialog/align-and-distribute.cpp:866
msgid "_Treat selection as group: "
msgstr "Iz_turēties pret atlasīto kā pret grupu"
#. Align
-#: ../src/ui/dialog/align-and-distribute.cpp:876 ../src/verbs.cpp:3024 ../src/verbs.cpp:3025
+#: ../src/ui/dialog/align-and-distribute.cpp:872 ../src/verbs.cpp:2993 ../src/verbs.cpp:2994
msgid "Align right edges of objects to the left edge of the anchor"
msgstr "Sakārtot objektu labās malas gar enkura kreiso malu"
-#: ../src/ui/dialog/align-and-distribute.cpp:879 ../src/verbs.cpp:3026 ../src/verbs.cpp:3027
+#: ../src/ui/dialog/align-and-distribute.cpp:875 ../src/verbs.cpp:2995 ../src/verbs.cpp:2996
msgid "Align left edges"
msgstr "Līdzināt kreisās malas"
-#: ../src/ui/dialog/align-and-distribute.cpp:882 ../src/verbs.cpp:3028 ../src/verbs.cpp:3029
+#: ../src/ui/dialog/align-and-distribute.cpp:878 ../src/verbs.cpp:2997 ../src/verbs.cpp:2998
msgid "Center on vertical axis"
msgstr "Centrēt uz vertikālās ass"
-#: ../src/ui/dialog/align-and-distribute.cpp:885 ../src/verbs.cpp:3030 ../src/verbs.cpp:3031
+#: ../src/ui/dialog/align-and-distribute.cpp:881 ../src/verbs.cpp:2999 ../src/verbs.cpp:3000
msgid "Align right sides"
msgstr "Līdzināt labās malas"
-#: ../src/ui/dialog/align-and-distribute.cpp:888 ../src/verbs.cpp:3032 ../src/verbs.cpp:3033
+#: ../src/ui/dialog/align-and-distribute.cpp:884 ../src/verbs.cpp:3001 ../src/verbs.cpp:3002
msgid "Align left edges of objects to the right edge of the anchor"
msgstr "Sakārtot objektu kreisās malas gar enkura labo malu"
-#: ../src/ui/dialog/align-and-distribute.cpp:891 ../src/verbs.cpp:3034 ../src/verbs.cpp:3035
+#: ../src/ui/dialog/align-and-distribute.cpp:887 ../src/verbs.cpp:3003 ../src/verbs.cpp:3004
msgid "Align bottom edges of objects to the top edge of the anchor"
msgstr "Sakārtot objektu apakơējās malas gar enkura augơējo malu"
-#: ../src/ui/dialog/align-and-distribute.cpp:894 ../src/verbs.cpp:3036 ../src/verbs.cpp:3037
+#: ../src/ui/dialog/align-and-distribute.cpp:890 ../src/verbs.cpp:3005 ../src/verbs.cpp:3006
msgid "Align top edges"
msgstr "LÄ«dzināt augơējās malas"
-#: ../src/ui/dialog/align-and-distribute.cpp:897 ../src/verbs.cpp:3038 ../src/verbs.cpp:3039
+#: ../src/ui/dialog/align-and-distribute.cpp:893 ../src/verbs.cpp:3007 ../src/verbs.cpp:3008
msgid "Center on horizontal axis"
msgstr "Centrēt uz horizontālās ass"
-#: ../src/ui/dialog/align-and-distribute.cpp:900 ../src/verbs.cpp:3040 ../src/verbs.cpp:3041
+#: ../src/ui/dialog/align-and-distribute.cpp:896 ../src/verbs.cpp:3009 ../src/verbs.cpp:3010
msgid "Align bottom edges"
msgstr "LÄ«dzināt apakơējās malas"
-#: ../src/ui/dialog/align-and-distribute.cpp:903 ../src/verbs.cpp:3042 ../src/verbs.cpp:3043
+#: ../src/ui/dialog/align-and-distribute.cpp:899 ../src/verbs.cpp:3011 ../src/verbs.cpp:3012
msgid "Align top edges of objects to the bottom edge of the anchor"
msgstr "Sakārtot objektu augơējās malas gar enkura apakơējo malu"
-#: ../src/ui/dialog/align-and-distribute.cpp:908
+#: ../src/ui/dialog/align-and-distribute.cpp:904
msgid "Align baseline anchors of texts horizontally"
msgstr "Līdzināt teksta bāzes līnijas enkurus horizontāli"
-#: ../src/ui/dialog/align-and-distribute.cpp:911
+#: ../src/ui/dialog/align-and-distribute.cpp:907
msgid "Align baselines of texts"
msgstr "Līdzināt tekstu bāzes līnijas"
-#: ../src/ui/dialog/align-and-distribute.cpp:916
+#: ../src/ui/dialog/align-and-distribute.cpp:912
msgid "Make horizontal gaps between objects equal"
msgstr "Vienādot horizontālās atstarpes starp objektiem"
-#: ../src/ui/dialog/align-and-distribute.cpp:920
+#: ../src/ui/dialog/align-and-distribute.cpp:916
msgid "Distribute left edges equidistantly"
msgstr "Izkliedēt kreisās malas vienādos attālumos"
-#: ../src/ui/dialog/align-and-distribute.cpp:923
+#: ../src/ui/dialog/align-and-distribute.cpp:919
msgid "Distribute centers equidistantly horizontally"
msgstr "Izkliedēt centrus vienādos attālumos horizontāli"
-#: ../src/ui/dialog/align-and-distribute.cpp:926
+#: ../src/ui/dialog/align-and-distribute.cpp:922
msgid "Distribute right edges equidistantly"
msgstr "Izkliedēt labās malas vienādos attālumos"
-#: ../src/ui/dialog/align-and-distribute.cpp:930
+#: ../src/ui/dialog/align-and-distribute.cpp:926
msgid "Make vertical gaps between objects equal"
msgstr "Vienādot vertikālās atstarpes starp objektiem"
-#: ../src/ui/dialog/align-and-distribute.cpp:934
+#: ../src/ui/dialog/align-and-distribute.cpp:930
msgid "Distribute top edges equidistantly"
msgstr "Izkliedēt augơējās malas vienādos attālumos"
-#: ../src/ui/dialog/align-and-distribute.cpp:937
+#: ../src/ui/dialog/align-and-distribute.cpp:933
msgid "Distribute centers equidistantly vertically"
msgstr "Izkliedēt centrus vienādos attālumos vertikāli"
-#: ../src/ui/dialog/align-and-distribute.cpp:940
+#: ../src/ui/dialog/align-and-distribute.cpp:936
msgid "Distribute bottom edges equidistantly"
msgstr "Izkliedēt apakơējās malas vienādos attālumos"
-#: ../src/ui/dialog/align-and-distribute.cpp:945
+#: ../src/ui/dialog/align-and-distribute.cpp:941
msgid "Distribute baseline anchors of texts horizontally"
msgstr "Izklīdināt teksta bāzes līnijas enkurus horizontāli"
-#: ../src/ui/dialog/align-and-distribute.cpp:948
+#: ../src/ui/dialog/align-and-distribute.cpp:944
msgid "Distribute baselines of texts vertically"
msgstr "Izkliedēt tekstu bāzes līnijas vertikāli"
-#: ../src/ui/dialog/align-and-distribute.cpp:954 ../src/widgets/connector-toolbar.cpp:373
+#: ../src/ui/dialog/align-and-distribute.cpp:950 ../src/widgets/connector-toolbar.cpp:369
msgid "Nicely arrange selected connector network"
msgstr "Glīti sakārtot atlasīto savienotāju tīklu"
-#: ../src/ui/dialog/align-and-distribute.cpp:957
+#: ../src/ui/dialog/align-and-distribute.cpp:953
msgid "Exchange positions of selected objects - selection order"
msgstr "Mainīt atlasīto objektu pozīcijas - atlases secībā"
-#: ../src/ui/dialog/align-and-distribute.cpp:960
+#: ../src/ui/dialog/align-and-distribute.cpp:956
msgid "Exchange positions of selected objects - stacking order"
msgstr "Mainīt atlasīto objektu pozīcijas - krāvuma secībā"
-#: ../src/ui/dialog/align-and-distribute.cpp:963
+#: ../src/ui/dialog/align-and-distribute.cpp:959
msgid "Exchange positions of selected objects - clockwise rotate"
msgstr "MainÄ«t atlasÄ«to objektu pozÄ«cijas - mainÄ«t uz riƆki"
-#: ../src/ui/dialog/align-and-distribute.cpp:968
+#: ../src/ui/dialog/align-and-distribute.cpp:964
msgid "Randomize centers in both dimensions"
msgstr "DaĆŸÄdot centrus abās dimensijās"
-#: ../src/ui/dialog/align-and-distribute.cpp:971
+#: ../src/ui/dialog/align-and-distribute.cpp:967
msgid "Unclump objects: try to equalize edge-to-edge distances"
msgstr "Izretināt objektus: censties vienādot attālumu starp malām"
-#: ../src/ui/dialog/align-and-distribute.cpp:976
+#: ../src/ui/dialog/align-and-distribute.cpp:972
msgid "Move objects as little as possible so that their bounding boxes do not overlap"
msgstr "Pārvietot objektus cik maz vien iespējams, lai to robeĆŸrāmji nepārklātos"
-#: ../src/ui/dialog/align-and-distribute.cpp:984
+#: ../src/ui/dialog/align-and-distribute.cpp:980
msgid "Align selected nodes to a common horizontal line"
msgstr "Sakārtot atlasītos mezglus gar kopēju horizontālu līniju"
-#: ../src/ui/dialog/align-and-distribute.cpp:987
+#: ../src/ui/dialog/align-and-distribute.cpp:983
msgid "Align selected nodes to a common vertical line"
msgstr "Sakārtot atlasītos mezglus gar kopēju vertikālu līniju"
-#: ../src/ui/dialog/align-and-distribute.cpp:990
+#: ../src/ui/dialog/align-and-distribute.cpp:986
msgid "Distribute selected nodes horizontally"
msgstr "Izkliedēt atlasītos mezglus horizontāli"
-#: ../src/ui/dialog/align-and-distribute.cpp:993
+#: ../src/ui/dialog/align-and-distribute.cpp:989
msgid "Distribute selected nodes vertically"
msgstr "Izkliedēt atlasītos mezglus vertikāli"
#. Rest of the widgetry
-#: ../src/ui/dialog/align-and-distribute.cpp:998
+#: ../src/ui/dialog/align-and-distribute.cpp:994
msgid "Last selected"
msgstr "Pēdējais atlasītais"
-#: ../src/ui/dialog/align-and-distribute.cpp:999
+#: ../src/ui/dialog/align-and-distribute.cpp:995
msgid "First selected"
msgstr "Pirmais atlasītais"
-#: ../src/ui/dialog/align-and-distribute.cpp:1000
+#: ../src/ui/dialog/align-and-distribute.cpp:996
msgid "Biggest object"
msgstr "Lielākais objekts"
-#: ../src/ui/dialog/align-and-distribute.cpp:1001
+#: ../src/ui/dialog/align-and-distribute.cpp:997
msgid "Smallest object"
msgstr "Mazākais objekts"
-#: ../src/ui/dialog/align-and-distribute.cpp:1004
+#: ../src/ui/dialog/align-and-distribute.cpp:1000
msgid "Selection Area"
msgstr "Atlasītais laukums"
@@ -12953,88 +12915,88 @@ msgstr "<small>Objekts nesatur klonētus raksta elementus.</small>"
msgid "Select <b>one object</b> whose tiled clones to unclump."
msgstr "Atlasiet <b>vienu objektu</b>, kura klonu raksta elementus izretināt."
-#: ../src/ui/dialog/clonetiler.cpp:2122
+#: ../src/ui/dialog/clonetiler.cpp:2120
msgid "Unclump tiled clones"
msgstr "Izretināt klonētos raksta elementus"
-#: ../src/ui/dialog/clonetiler.cpp:2151
+#: ../src/ui/dialog/clonetiler.cpp:2149
msgid "Select <b>one object</b> whose tiled clones to remove."
msgstr "Atlasiet <b>vienu objektu</b>, kura klonētos raksta elementus vēlaties aizvākt."
-#: ../src/ui/dialog/clonetiler.cpp:2176
+#: ../src/ui/dialog/clonetiler.cpp:2174
msgid "Delete tiled clones"
msgstr "Dzēst klonētos raksta elementus"
-#: ../src/ui/dialog/clonetiler.cpp:2229
+#: ../src/ui/dialog/clonetiler.cpp:2227
msgid "If you want to clone several objects, <b>group</b> them and <b>clone the group</b>."
msgstr "Ja vēlaties klonēt vairākus objektus, <b>sagrupējiet</b> tos un <b>klonējiet grupu</b>."
-#: ../src/ui/dialog/clonetiler.cpp:2238
+#: ../src/ui/dialog/clonetiler.cpp:2236
msgid "<small>Creating tiled clones...</small>"
msgstr "<small>Veido klonētus raksta elementus...</small>"
-#: ../src/ui/dialog/clonetiler.cpp:2654
+#: ../src/ui/dialog/clonetiler.cpp:2652
msgid "Create tiled clones"
msgstr "Izveidot klonētos raksta elementus"
-#: ../src/ui/dialog/clonetiler.cpp:2887
+#: ../src/ui/dialog/clonetiler.cpp:2885
msgid "<small>Per row:</small>"
msgstr "<small>Vienā rindā:</small>"
-#: ../src/ui/dialog/clonetiler.cpp:2905
+#: ../src/ui/dialog/clonetiler.cpp:2903
msgid "<small>Per column:</small>"
msgstr "<small>Vienā slejā:</small>"
-#: ../src/ui/dialog/clonetiler.cpp:2913
+#: ../src/ui/dialog/clonetiler.cpp:2911
msgid "<small>Randomize:</small>"
msgstr "<small>DaĆŸÄdot:</small>"
-#: ../src/ui/dialog/color-item.cpp:131
+#: ../src/ui/dialog/color-item.cpp:127
#, c-format
msgid "Color: <b>%s</b>; <b>Click</b> to set fill, <b>Shift+click</b> to set stroke"
msgstr "Krāsa: <b>%s</b>; <b>Uzklikƥķiniet</b>, lai iestatītu aizpildījumu, <b>Shift+klikƥķis</b> - lai iestatītu apmali"
-#: ../src/ui/dialog/color-item.cpp:509
+#: ../src/ui/dialog/color-item.cpp:505
msgid "Change color definition"
msgstr "Mainiet krāsas definīciju"
-#: ../src/ui/dialog/color-item.cpp:679
+#: ../src/ui/dialog/color-item.cpp:675
msgid "Remove stroke color"
msgstr "Aizvākt apmales krāsu"
-#: ../src/ui/dialog/color-item.cpp:679
+#: ../src/ui/dialog/color-item.cpp:675
msgid "Remove fill color"
msgstr "Aizvākt aizpildījuma krāsu"
-#: ../src/ui/dialog/color-item.cpp:684
+#: ../src/ui/dialog/color-item.cpp:680
msgid "Set stroke color to none"
msgstr "Iestatīt apmales krāsu par nekādu"
-#: ../src/ui/dialog/color-item.cpp:684
+#: ../src/ui/dialog/color-item.cpp:680
msgid "Set fill color to none"
msgstr "Iestatīt aizpildījuma krāsu par nekādu"
-#: ../src/ui/dialog/color-item.cpp:702
+#: ../src/ui/dialog/color-item.cpp:698
msgid "Set stroke color from swatch"
msgstr "Iestatiet apmales krāsu no paletes"
-#: ../src/ui/dialog/color-item.cpp:702
+#: ../src/ui/dialog/color-item.cpp:698
msgid "Set fill color from swatch"
msgstr "Iestatiet aizpildījuma krāsu no paletes"
-#: ../src/ui/dialog/debug.cpp:73
+#: ../src/ui/dialog/debug.cpp:69
msgid "Messages"
msgstr "Vēstules"
-#: ../src/ui/dialog/debug.cpp:87 ../src/ui/dialog/messages.cpp:47
+#: ../src/ui/dialog/debug.cpp:83 ../src/ui/dialog/messages.cpp:47
msgid "_Clear"
msgstr "_Attīrīt"
-#: ../src/ui/dialog/debug.cpp:91 ../src/ui/dialog/messages.cpp:48
+#: ../src/ui/dialog/debug.cpp:87 ../src/ui/dialog/messages.cpp:48
msgid "Capture log messages"
msgstr "Pārtvert ĆŸurnāla ierakstus"
-#: ../src/ui/dialog/debug.cpp:95
+#: ../src/ui/dialog/debug.cpp:91
msgid "Release log messages"
msgstr "AtbrÄ«vot ĆŸurnāla ierakstus"
@@ -13263,11 +13225,11 @@ msgstr "_Aizvākt"
msgid "Remove selected grid."
msgstr "Aizvākt izvēlēto reĆŸÄŁi."
-#: ../src/ui/dialog/document-properties.cpp:161 ../src/widgets/toolbox.cpp:1836
+#: ../src/ui/dialog/document-properties.cpp:161 ../src/widgets/toolbox.cpp:1832
msgid "Guides"
msgstr "Palīglīnijas"
-#: ../src/ui/dialog/document-properties.cpp:163 ../src/verbs.cpp:2827
+#: ../src/ui/dialog/document-properties.cpp:163 ../src/verbs.cpp:2796
msgid "Snap"
msgstr "Pievilkt"
@@ -13311,7 +13273,7 @@ msgstr "<b>DaĆŸÄdi</b>"
#. Inkscape::GC::release(defsRepr);
#. inform the document, so we can undo
#. Color Management
-#: ../src/ui/dialog/document-properties.cpp:505 ../src/verbs.cpp:3008
+#: ../src/ui/dialog/document-properties.cpp:505 ../src/verbs.cpp:2977
msgid "Link Color Profile"
msgstr "Piesaistīt krāsu profilu"
@@ -13433,123 +13395,123 @@ msgstr "<b>IzveidoĆĄana</b>"
msgid "<b>Defined grids</b>"
msgstr "<b>Definētie reĆŸÄŁi</b>"
-#: ../src/ui/dialog/document-properties.cpp:1653
+#: ../src/ui/dialog/document-properties.cpp:1654
msgid "Remove grid"
msgstr "Aizvākt reĆŸÄŁi"
-#: ../src/ui/dialog/document-properties.cpp:1741
+#: ../src/ui/dialog/document-properties.cpp:1746
msgid "Changed default display unit"
msgstr "Mainītas noklusētās ekrāna vienības"
-#: ../src/ui/dialog/export.cpp:151 ../src/verbs.cpp:2879
+#: ../src/ui/dialog/export.cpp:147 ../src/verbs.cpp:2848
msgid "_Page"
msgstr "La_pa"
-#: ../src/ui/dialog/export.cpp:151 ../src/verbs.cpp:2883
+#: ../src/ui/dialog/export.cpp:147 ../src/verbs.cpp:2852
msgid "_Drawing"
msgstr "_Zīmējums"
-#: ../src/ui/dialog/export.cpp:151 ../src/verbs.cpp:2885
+#: ../src/ui/dialog/export.cpp:147 ../src/verbs.cpp:2854
msgid "_Selection"
msgstr "Atla_sītais"
-#: ../src/ui/dialog/export.cpp:151
+#: ../src/ui/dialog/export.cpp:147
msgid "_Custom"
msgstr "Izvēles"
-#: ../src/ui/dialog/export.cpp:169 ../src/widgets/measure-toolbar.cpp:99 ../src/widgets/measure-toolbar.cpp:107 ../share/extensions/render_gears.inx.h:6
+#: ../src/ui/dialog/export.cpp:165 ../src/widgets/measure-toolbar.cpp:99 ../src/widgets/measure-toolbar.cpp:107 ../share/extensions/render_gears.inx.h:6
msgid "Units:"
msgstr "Vienības:"
-#: ../src/ui/dialog/export.cpp:171
+#: ../src/ui/dialog/export.cpp:167
msgid "_Export As..."
msgstr "_Eksportēt kā..."
-#: ../src/ui/dialog/export.cpp:174
+#: ../src/ui/dialog/export.cpp:170
msgid "B_atch export all selected objects"
msgstr "Visu _atlasīto objektu secīgs eksports"
-#: ../src/ui/dialog/export.cpp:174
+#: ../src/ui/dialog/export.cpp:170
msgid "Export each selected object into its own PNG file, using export hints if any (caution, overwrites without asking!)"
msgstr "Eksportēt katru atlasÄ«to objektu atseviƥķā PNG datnē, izmantojot eksport padomus, ja tādi ir (UzmanÄ«bu: datnes tiek pārrakstÄ«tas bez jautāƥanas!)"
-#: ../src/ui/dialog/export.cpp:176
+#: ../src/ui/dialog/export.cpp:172
msgid "Hide a_ll except selected"
msgstr "Slēpt _visus, izƆemot atlasÄ«tos"
-#: ../src/ui/dialog/export.cpp:176
+#: ../src/ui/dialog/export.cpp:172
msgid "In the exported image, hide all objects except those that are selected"
msgstr "Eksportētajā attēla slēpt visus neatlasītos objektus"
-#: ../src/ui/dialog/export.cpp:177
+#: ../src/ui/dialog/export.cpp:173
msgid "Close when complete"
msgstr "Aizvērt pēc pabeigơanas"
-#: ../src/ui/dialog/export.cpp:177
+#: ../src/ui/dialog/export.cpp:173
msgid "Once the export completes, close this dialog"
msgstr "Pēc eksportēơanas pabeigơanas aizvērt ơo dialoglodziƆu."
-#: ../src/ui/dialog/export.cpp:179
+#: ../src/ui/dialog/export.cpp:175
msgid "_Export"
msgstr "_Eksportēt"
-#: ../src/ui/dialog/export.cpp:197
+#: ../src/ui/dialog/export.cpp:193
msgid "<b>Export area</b>"
msgstr "<b>Eksportējamais apgabals</b>"
-#: ../src/ui/dialog/export.cpp:236
+#: ../src/ui/dialog/export.cpp:232
msgid "_x0:"
msgstr "_x0:"
-#: ../src/ui/dialog/export.cpp:240
+#: ../src/ui/dialog/export.cpp:236
msgid "x_1:"
msgstr "x_1:"
-#: ../src/ui/dialog/export.cpp:244
+#: ../src/ui/dialog/export.cpp:240
msgid "Wid_th:"
msgstr "Pla_tums:"
-#: ../src/ui/dialog/export.cpp:248
+#: ../src/ui/dialog/export.cpp:244
msgid "_y0:"
msgstr "_y0:"
-#: ../src/ui/dialog/export.cpp:252
+#: ../src/ui/dialog/export.cpp:248
msgid "y_1:"
msgstr "y_1:"
-#: ../src/ui/dialog/export.cpp:256
+#: ../src/ui/dialog/export.cpp:252
msgid "Hei_ght:"
msgstr "Au_gstums:"
-#: ../src/ui/dialog/export.cpp:271
+#: ../src/ui/dialog/export.cpp:267
msgid "<b>Image size</b>"
msgstr "<b>Attēla izmērs</b>"
-#: ../src/ui/dialog/export.cpp:289 ../src/ui/dialog/export.cpp:300
+#: ../src/ui/dialog/export.cpp:285 ../src/ui/dialog/export.cpp:296
msgid "pixels at"
msgstr "pikseÄŒi ar"
-#: ../src/ui/dialog/export.cpp:295
+#: ../src/ui/dialog/export.cpp:291
msgid "dp_i"
msgstr "dp_i"
-#: ../src/ui/dialog/export.cpp:300 ../src/ui/dialog/transformation.cpp:80 ../src/ui/widget/page-sizer.cpp:237
+#: ../src/ui/dialog/export.cpp:296 ../src/ui/dialog/transformation.cpp:76 ../src/ui/widget/page-sizer.cpp:238
msgid "_Height:"
msgstr "_Augstums:"
-#: ../src/ui/dialog/export.cpp:308 ../src/ui/dialog/inkscape-preferences.cpp:1443 ../src/ui/dialog/inkscape-preferences.cpp:1447 ../src/ui/dialog/inkscape-preferences.cpp:1471
+#: ../src/ui/dialog/export.cpp:304 ../src/ui/dialog/inkscape-preferences.cpp:1443 ../src/ui/dialog/inkscape-preferences.cpp:1447 ../src/ui/dialog/inkscape-preferences.cpp:1471
msgid "dpi"
msgstr "dpi"
-#: ../src/ui/dialog/export.cpp:316
+#: ../src/ui/dialog/export.cpp:312
msgid "<b>_Filename</b>"
msgstr "<b>_Datnes nosaukums</b>"
-#: ../src/ui/dialog/export.cpp:358
+#: ../src/ui/dialog/export.cpp:354
msgid "Export the bitmap file with these settings"
msgstr "Eksportēt bitkartes attēlu ar ĆĄiem iestatÄ«jumiem"
-#: ../src/ui/dialog/export.cpp:611
+#: ../src/ui/dialog/export.cpp:607
#, c-format
msgid "B_atch export %d selected object"
msgid_plural "B_atch export %d selected objects"
@@ -13557,78 +13519,78 @@ msgstr[0] "Secīgs %d atlasītā objekta eksports"
msgstr[1] "Secīgs %d atlasīto objektu eksports"
msgstr[2] "Secīgs %d atlasīto objektu eksports"
-#: ../src/ui/dialog/export.cpp:927
+#: ../src/ui/dialog/export.cpp:923
msgid "Export in progress"
msgstr "Notiek eksports"
-#: ../src/ui/dialog/export.cpp:1017
+#: ../src/ui/dialog/export.cpp:1013
msgid "No items selected."
msgstr "Nav atlasītu objektu."
-#: ../src/ui/dialog/export.cpp:1021 ../src/ui/dialog/export.cpp:1023
+#: ../src/ui/dialog/export.cpp:1017 ../src/ui/dialog/export.cpp:1019
msgid "Exporting %1 files"
msgstr "Eksportē %1 datnes"
-#: ../src/ui/dialog/export.cpp:1063 ../src/ui/dialog/export.cpp:1065
+#: ../src/ui/dialog/export.cpp:1060 ../src/ui/dialog/export.cpp:1062
#, c-format
msgid "Exporting file <b>%s</b>..."
msgstr "Eksportē datni <b>%s</b>..."
-#: ../src/ui/dialog/export.cpp:1074 ../src/ui/dialog/export.cpp:1165
+#: ../src/ui/dialog/export.cpp:1071 ../src/ui/dialog/export.cpp:1163
#, c-format
msgid "Could not export to filename %s.\n"
msgstr "Nav iespējams eksportēt uz datni ar nosaukumu %s.\n"
-#: ../src/ui/dialog/export.cpp:1077
+#: ../src/ui/dialog/export.cpp:1074
#, c-format
msgid "Could not export to filename <b>%s</b>."
msgstr "Nav iespējams eksportēt uz datni ar nosaukumu <b>%s</b>."
-#: ../src/ui/dialog/export.cpp:1092
+#: ../src/ui/dialog/export.cpp:1089
#, c-format
msgid "Successfully exported <b>%d</b> files from <b>%d</b> selected items."
msgstr "Veiksmīgi eksportētas <b>%d</b> datnes no <b>%d</b> atlasītajiem objektiem."
-#: ../src/ui/dialog/export.cpp:1103
+#: ../src/ui/dialog/export.cpp:1100
msgid "You have to enter a filename."
msgstr "Jums jāievada datnes nosaukums."
-#: ../src/ui/dialog/export.cpp:1104
+#: ../src/ui/dialog/export.cpp:1101
msgid "You have to enter a filename"
msgstr "Jums jāievada datnes nosaukums"
-#: ../src/ui/dialog/export.cpp:1118
+#: ../src/ui/dialog/export.cpp:1115
msgid "The chosen area to be exported is invalid."
msgstr "Eksportēơanai izvēlētais apgabals nav derÄ«gs."
-#: ../src/ui/dialog/export.cpp:1119
+#: ../src/ui/dialog/export.cpp:1116
msgid "The chosen area to be exported is invalid"
msgstr "Eksportēơanai izvēlētais apgabals nav derÄ«gs"
-#: ../src/ui/dialog/export.cpp:1134
+#: ../src/ui/dialog/export.cpp:1131
#, c-format
msgid "Directory %s does not exist or is not a directory.\n"
msgstr "Mape%s nepastāv vai arī nemaz nav mape.\n"
#. TRANSLATORS: %1 will be the filename, %2 the width, and %3 the height of the image
-#: ../src/ui/dialog/export.cpp:1148 ../src/ui/dialog/export.cpp:1150
+#: ../src/ui/dialog/export.cpp:1145 ../src/ui/dialog/export.cpp:1147
msgid "Exporting %1 (%2 x %3)"
msgstr "Eksportē %1 (%2 x %3)"
-#: ../src/ui/dialog/export.cpp:1176
+#: ../src/ui/dialog/export.cpp:1174
#, c-format
msgid "Drawing exported to <b>%s</b>."
msgstr "Attēls eksportēts uz <b>%s</b>."
-#: ../src/ui/dialog/export.cpp:1180
+#: ../src/ui/dialog/export.cpp:1178
msgid "Export aborted."
msgstr "Eksportēơana pārtraukta."
-#: ../src/ui/dialog/export.cpp:1301 ../src/ui/interface.cpp:1392 ../src/widgets/desktop-widget.cpp:1122 ../src/widgets/desktop-widget.cpp:1184
+#: ../src/ui/dialog/export.cpp:1299 ../src/ui/interface.cpp:1392 ../src/widgets/desktop-widget.cpp:1122 ../src/widgets/desktop-widget.cpp:1184
msgid "_Cancel"
msgstr "At_celt"
-#: ../src/ui/dialog/export.cpp:1302 ../src/ui/dialog/input.cpp:1082 ../src/verbs.cpp:2437 ../src/widgets/desktop-widget.cpp:1123
+#: ../src/ui/dialog/export.cpp:1300 ../src/ui/dialog/input.cpp:1082 ../src/verbs.cpp:2406 ../src/widgets/desktop-widget.cpp:1123
msgid "_Save"
msgstr "_Saglabāt"
@@ -13636,7 +13598,7 @@ msgstr "_Saglabāt"
msgid "Information"
msgstr "Informācija"
-#: ../src/ui/dialog/extension-editor.cpp:82 ../src/verbs.cpp:310 ../src/verbs.cpp:329 ../share/extensions/color_HSL_adjust.inx.h:11 ../share/extensions/color_custom.inx.h:7 ../share/extensions/color_randomize.inx.h:6
+#: ../src/ui/dialog/extension-editor.cpp:82 ../src/verbs.cpp:309 ../src/verbs.cpp:328 ../share/extensions/color_HSL_adjust.inx.h:11 ../share/extensions/color_custom.inx.h:7 ../share/extensions/color_randomize.inx.h:6
#: ../share/extensions/dots.inx.h:7 ../share/extensions/draw_from_triangle.inx.h:35 ../share/extensions/dxf_input.inx.h:10 ../share/extensions/dxf_outlines.inx.h:24 ../share/extensions/gcodetools_about.inx.h:3
#: ../share/extensions/gcodetools_area.inx.h:53 ../share/extensions/gcodetools_check_for_updates.inx.h:3 ../share/extensions/gcodetools_dxf_points.inx.h:25 ../share/extensions/gcodetools_engraving.inx.h:31
#: ../share/extensions/gcodetools_graffiti.inx.h:42 ../share/extensions/gcodetools_lathe.inx.h:46 ../share/extensions/gcodetools_orientation_points.inx.h:14 ../share/extensions/gcodetools_path_to_gcode.inx.h:35
@@ -13668,23 +13630,23 @@ msgid "Enable preview"
msgstr "AtÄŒaut priekĆĄskatÄ«jumu"
#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:755 ../src/ui/dialog/filedialogimpl-gtkmm.cpp:768 ../src/ui/dialog/filedialogimpl-gtkmm.cpp:772 ../src/ui/dialog/filedialogimpl-gtkmm.cpp:775 ../src/ui/dialog/filedialogimpl-gtkmm.cpp:783
-#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:799 ../src/ui/dialog/filedialogimpl-gtkmm.cpp:814 ../src/ui/dialog/filedialogimpl-win32.cpp:282 ../src/ui/dialog/filedialogimpl-win32.cpp:413
+#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:799 ../src/ui/dialog/filedialogimpl-gtkmm.cpp:814 ../src/ui/dialog/filedialogimpl-win32.cpp:286 ../src/ui/dialog/filedialogimpl-win32.cpp:417
msgid "All Files"
msgstr "Visas datnes"
-#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:780 ../src/ui/dialog/filedialogimpl-gtkmm.cpp:796 ../src/ui/dialog/filedialogimpl-gtkmm.cpp:811 ../src/ui/dialog/filedialogimpl-win32.cpp:283
+#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:780 ../src/ui/dialog/filedialogimpl-gtkmm.cpp:796 ../src/ui/dialog/filedialogimpl-gtkmm.cpp:811 ../src/ui/dialog/filedialogimpl-win32.cpp:287
msgid "All Inkscape Files"
msgstr "Visas Inkscape datnes"
-#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:787 ../src/ui/dialog/filedialogimpl-gtkmm.cpp:803 ../src/ui/dialog/filedialogimpl-gtkmm.cpp:817 ../src/ui/dialog/filedialogimpl-win32.cpp:284
+#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:787 ../src/ui/dialog/filedialogimpl-gtkmm.cpp:803 ../src/ui/dialog/filedialogimpl-gtkmm.cpp:817 ../src/ui/dialog/filedialogimpl-win32.cpp:288
msgid "All Images"
msgstr "Visi attēli"
-#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:790 ../src/ui/dialog/filedialogimpl-gtkmm.cpp:806 ../src/ui/dialog/filedialogimpl-gtkmm.cpp:820 ../src/ui/dialog/filedialogimpl-win32.cpp:285
+#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:790 ../src/ui/dialog/filedialogimpl-gtkmm.cpp:806 ../src/ui/dialog/filedialogimpl-gtkmm.cpp:820 ../src/ui/dialog/filedialogimpl-win32.cpp:289
msgid "All Vectors"
msgstr "Visi vektori"
-#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:793 ../src/ui/dialog/filedialogimpl-gtkmm.cpp:809 ../src/ui/dialog/filedialogimpl-gtkmm.cpp:823 ../src/ui/dialog/filedialogimpl-win32.cpp:286
+#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:793 ../src/ui/dialog/filedialogimpl-gtkmm.cpp:809 ../src/ui/dialog/filedialogimpl-gtkmm.cpp:823 ../src/ui/dialog/filedialogimpl-win32.cpp:290
msgid "All Bitmaps"
msgstr "Visas bitkartes"
@@ -13742,7 +13704,7 @@ msgstr "IzĆĄÄ·irtspēja (punktos uz collu)"
msgid "Document"
msgstr "Dokuments"
-#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1541 ../src/verbs.cpp:176 ../src/widgets/desktop-widget.cpp:2000 ../share/extensions/printing_marks.inx.h:18
+#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1541 ../src/verbs.cpp:175 ../src/widgets/desktop-widget.cpp:2002 ../share/extensions/printing_marks.inx.h:18
msgid "Selection"
msgstr "Atlasītais"
@@ -13763,15 +13725,15 @@ msgstr "Kaira"
msgid "Antialias"
msgstr "KropÄŒojumnovērse"
-#: ../src/ui/dialog/filedialogimpl-win32.cpp:414
+#: ../src/ui/dialog/filedialogimpl-win32.cpp:418
msgid "All Executable Files"
msgstr "Visas izpildāmās datnes"
-#: ../src/ui/dialog/filedialogimpl-win32.cpp:606
+#: ../src/ui/dialog/filedialogimpl-win32.cpp:610
msgid "Show Preview"
msgstr "Rādīt priekƥskatījumu"
-#: ../src/ui/dialog/filedialogimpl-win32.cpp:744
+#: ../src/ui/dialog/filedialogimpl-win32.cpp:748
msgid "No file selected"
msgstr "Nav izvēlēta neviena datne"
@@ -13788,7 +13750,7 @@ msgid "Stroke st_yle"
msgstr "Apmales st_ils"
#. TRANSLATORS: this dialog is accessible via menu Filters - Filter editor
-#: ../src/ui/dialog/filter-effects-dialog.cpp:546
+#: ../src/ui/dialog/filter-effects-dialog.cpp:547
msgid ""
"This matrix determines a linear transform on color space. Each line affects one of the color components. Each column determines how much of each color component from the input is passed to the output. The last column does not depend on "
"input colors, so can be used to adjust a constant component value."
@@ -13796,290 +13758,290 @@ msgstr ""
"Ć Ä« matrica nosaka krāsu telpas lineāro pārveidojumu. Katra rinda ietekmē vienu no krāsas komponentiem. Katra sleja nosaka krāsas daudzumu, kas no sākotnējā objekta pāries uz rezultātu. Pēdējā sleja nav atkarÄ«ga un sākotnējām krāsām un ir "
"izmantojama konstanto komponentu vērtÄ«bu pieskaƆoĆĄanai."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:549 ../share/extensions/grid_polar.inx.h:4
+#: ../src/ui/dialog/filter-effects-dialog.cpp:550 ../share/extensions/grid_polar.inx.h:4
msgctxt "Label"
msgid "None"
msgstr "Neviena"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:656
+#: ../src/ui/dialog/filter-effects-dialog.cpp:657
msgid "Image File"
msgstr "Attēla datne"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:659
+#: ../src/ui/dialog/filter-effects-dialog.cpp:660
msgid "Selected SVG Element"
msgstr "Izvēlētais SVG elements"
#. TODO: any image, not just svg
-#: ../src/ui/dialog/filter-effects-dialog.cpp:729
+#: ../src/ui/dialog/filter-effects-dialog.cpp:730
msgid "Select an image to be used as feImage input"
msgstr "Izvēlieties attēlu, ko izmantot feImage ievadei"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:821
+#: ../src/ui/dialog/filter-effects-dialog.cpp:822
msgid "This SVG filter effect does not require any parameters."
msgstr "Ơim SVG efektam nav vajadzīgi parametri."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:827
+#: ../src/ui/dialog/filter-effects-dialog.cpp:828
msgid "This SVG filter effect is not yet implemented in Inkscape."
msgstr "Ơis SVG efekts vēl nav ieviests Inkscape."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1041
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1042
msgid "Slope"
msgstr "Slīpums"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1042
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1043
msgid "Intercept"
msgstr "Pārtvert"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1045
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1046
msgid "Amplitude"
msgstr "Amplitƫda"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1046
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1047
msgid "Exponent"
msgstr "Eksponente"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1143
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1144
msgid "New transfer function type"
msgstr "Jauns pārneses funkcijas tips"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1178
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1179
msgid "Light Source:"
msgstr "Gaismas avots:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1195
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1196
msgid "Direction angle for the light source on the XY plane, in degrees"
msgstr "KrÄ«toƥās gaismas leƆķis XY plaknē, grādos"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1196
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1197
msgid "Direction angle for the light source on the YZ plane, in degrees"
msgstr "KrÄ«toƥās gaismas leƆķis YZ plaknē, grādos"
#. default x:
#. default y:
#. default z:
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1199 ../src/ui/dialog/filter-effects-dialog.cpp:1202
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1200 ../src/ui/dialog/filter-effects-dialog.cpp:1203
msgid "Location:"
msgstr "Izvietojums:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1199 ../src/ui/dialog/filter-effects-dialog.cpp:1202 ../src/ui/dialog/filter-effects-dialog.cpp:1205
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1200 ../src/ui/dialog/filter-effects-dialog.cpp:1203 ../src/ui/dialog/filter-effects-dialog.cpp:1206
msgid "X coordinate"
msgstr "X koordināte"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1199 ../src/ui/dialog/filter-effects-dialog.cpp:1202 ../src/ui/dialog/filter-effects-dialog.cpp:1205
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1200 ../src/ui/dialog/filter-effects-dialog.cpp:1203 ../src/ui/dialog/filter-effects-dialog.cpp:1206
msgid "Y coordinate"
msgstr "Y koordināte"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1199 ../src/ui/dialog/filter-effects-dialog.cpp:1202 ../src/ui/dialog/filter-effects-dialog.cpp:1205
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1200 ../src/ui/dialog/filter-effects-dialog.cpp:1203 ../src/ui/dialog/filter-effects-dialog.cpp:1206
msgid "Z coordinate"
msgstr "X koordināte"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1205
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1206
msgid "Points At"
msgstr "Norāda uz"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1206
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1207
msgid "Specular Exponent"
msgstr "Atstaroƥanas pakāpe"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1206
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1207
msgid "Exponent value controlling the focus for the light source"
msgstr "Gaismas avota fokusu kontrolējoơais eksponenciālais lielums"
#. TODO: here I have used 100 degrees as default value. But spec says that if not specified, no limiting cone is applied. So, there should be a way for the user to set a "no limiting cone" option.
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1208
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1209
msgid "Cone Angle"
msgstr "Konusa leƆķis"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1208
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1209
msgid "This is the angle between the spot light axis (i.e. the axis between the light source and the point to which it is pointing at) and the spot light cone. No light is projected outside this cone."
msgstr "Ć is ir leƆķis starp proĆŸektora gaismas asi (t.i. ass starp gaismas avotu un punktu, uz ko tā norāda) un gaismas konusu. Ārpus ĆĄÄ« konusa gaisma netiek izstarota."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1274
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1275
msgid "New light source"
msgstr "Jauns gaismas avots"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1325
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1326
msgid "_Duplicate"
msgstr "_Dublēt"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1359
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1360
msgid "_Filter"
msgstr "_Filtrs"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1379
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1387
msgid "R_ename"
msgstr "Pār_dēvēt"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1512
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1521
msgid "Rename filter"
msgstr "Pārdēvēt filtru"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1565
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1573
msgid "Apply filter"
msgstr "Pielietot filtru"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1635
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1652
msgid "filter"
msgstr "filtrs"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1642
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1659
msgid "Add filter"
msgstr "Pievienot filtru"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1694
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1709
msgid "Duplicate filter"
msgstr "Dublēt filtru"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1793
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1808
msgid "_Effect"
msgstr "_Efekts"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1803
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1818
msgid "Connections"
msgstr "Savienojumi"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1941
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1956
msgid "Remove filter primitive"
msgstr "Aizvākt filtra primitīvu"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2529
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2543
msgid "Remove merge node"
msgstr "Aizvākt apvienoƥanas mezglu"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2649
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2663
msgid "Reorder filter primitive"
msgstr "Pārkārtot filtra primitīvu"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2729
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2743
msgid "Add Effect:"
msgstr "Pievienot efektu:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2730
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2744
msgid "No effect selected"
msgstr "Nav izvēlēts neviens efekts"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2731
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2745
msgid "No filter selected"
msgstr "Nav izvēlēts neviens filtrs"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2776
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2792
msgid "Effect parameters"
msgstr "Efekta parametri"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2777
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2793
msgid "Filter General Settings"
msgstr "Filtra vispārējie iestatījumi"
#. default x:
#. default y:
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2835
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2851
msgid "Coordinates:"
msgstr "Koordinātes:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2835
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2851
msgid "X coordinate of the left corners of filter effects region"
msgstr "Filtra efekta apgabala kreiso stƫru X koordināte"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2835
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2851
msgid "Y coordinate of the upper corners of filter effects region"
msgstr "Filtra efekta apgabala augơējo stĆ«ru Y koordināte"
#. default width:
#. default height:
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2836
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2852
msgid "Dimensions:"
msgstr "Izmēri:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2836
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2852
msgid "Width of filter effects region"
msgstr "Filtra efektu apgabala platums"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2836
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2852
msgid "Height of filter effects region"
msgstr "Filtra efektu apgabala augstums"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2842
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2858
msgid ""
"Indicates the type of matrix operation. The keyword 'matrix' indicates that a full 5x4 matrix of values will be provided. The other keywords represent convenience shortcuts to allow commonly used color operations to be performed without "
"specifying a complete matrix."
msgstr "Norāda uz matricu darbÄ«bas tipu. Atslēgvārds 'matrica' nozÄ«mē, ka tiek izmantota pilna, 5x4 vērtÄ«bu matrica. Citi atslēgvārdi kalpo par saÄ«snēm, kas ÄŒauj veikt bieĆŸÄk lietotās darbÄ«bas ar krāsām nenorādot pilnu matricu."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2843
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2859
msgid "Value(s):"
msgstr "Vērtība(s):"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2847
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2863
msgid "R:"
msgstr "R:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2848 ../src/widgets/sp-color-icc-selector.cpp:334
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2864 ../src/widgets/sp-color-icc-selector.cpp:334
msgid "G:"
msgstr "G:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2849
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2865
msgid "B:"
msgstr "B:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2850
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2866
msgid "A:"
msgstr "A:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2853 ../src/ui/dialog/filter-effects-dialog.cpp:2893
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2869 ../src/ui/dialog/filter-effects-dialog.cpp:2909
msgid "Operator:"
msgstr "Operators:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2854
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2870
msgid "K1:"
msgstr "K1:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2854 ../src/ui/dialog/filter-effects-dialog.cpp:2855 ../src/ui/dialog/filter-effects-dialog.cpp:2856 ../src/ui/dialog/filter-effects-dialog.cpp:2857
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2870 ../src/ui/dialog/filter-effects-dialog.cpp:2871 ../src/ui/dialog/filter-effects-dialog.cpp:2872 ../src/ui/dialog/filter-effects-dialog.cpp:2873
msgid "If the arithmetic operation is chosen, each result pixel is computed using the formula k1*i1*i2 + k2*i1 + k3*i2 + k4 where i1 and i2 are the pixel values of the first and second inputs respectively."
msgstr "Ja ir izvēlēta matemātiskā darbÄ«ba, katrs pikselis tiek aprēķināts saskaƆā ar formulu k1*i1*i2 + k2*i1 + k3*i2 + k4, kur i1 un i2 ir pikseÄŒu vērtÄ«bas, attiecÄ«gi, pirmajos un otrajos izejas datos."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2855
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2871
msgid "K2:"
msgstr "K2:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2856
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2872
msgid "K3:"
msgstr "K3:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2857
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2873
msgid "K4:"
msgstr "K4:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2860
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2876
msgid "Size:"
msgstr "Izmērs:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2860
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2876
msgid "width of the convolve matrix"
msgstr "konvolƫcijas matricas platums"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2860
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2876
msgid "height of the convolve matrix"
msgstr "konvolƫcijas matricas augstums"
#. default x:
#. default y:
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2861 ../src/ui/dialog/object-attributes.cpp:48
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2877 ../src/ui/dialog/object-attributes.cpp:48
msgid "Target:"
msgstr "Mērķis:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2861
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2877
msgid "X coordinate of the target point in the convolve matrix. The convolution is applied to pixels around this point."
msgstr "MērÄ·a punkta X koordināte konvolĆ«cijas matricā. KonvolĆ«cija tiks izpildÄ«ta pikseÄŒiem ap ĆĄo punktu."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2861
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2877
msgid "Y coordinate of the target point in the convolve matrix. The convolution is applied to pixels around this point."
msgstr "MērÄ·a punkta Y koordināte konvolĆ«cijas matricā. KonvolĆ«cija tiks izpildÄ«ta pikseÄŒiem ap ĆĄo punktu."
#. TRANSLATORS: for info on "Kernel", see http://en.wikipedia.org/wiki/Kernel_(matrix)
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2863
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2879
msgid "Kernel:"
msgstr "Kodols:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2863
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2879
msgid ""
"This matrix describes the convolve operation that is applied to the input image in order to calculate the pixel colors at the output. Different arrangements of values in this matrix result in various possible visual effects. An identity "
"matrix would lead to a motion blur effect (parallel to the matrix diagonal) while a matrix filled with a constant non-zero value would lead to a common blur effect."
@@ -14087,11 +14049,11 @@ msgstr ""
"Ć Ä« matrica apraksta konvolĆ«cijas darbÄ«bu, kas tiek pielietota attēlam ar nolĆ«ku noskaidrot rezultātā iegĆ«tā pikseÄŒa krāsa. DaĆŸÄdi vērtÄ«bu izkārtojumi ĆĄajā matricā rada atĆĄÄ·irÄ«gus vizuālos efektus. VienÄ«bas matrica rezultātā radÄ«s kustÄ«bas "
"izplĆ«duma efektu (paralēli matricas diagonālei), turpretÄ« ar konstantām, par nulli lielākām vērtÄ«bām aizpildÄ«ta matrica rezultātā radÄ«s vienkārĆĄa izplĆ«duma efektu."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2865
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2881
msgid "Divisor:"
msgstr "Dalītājs:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2865
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2881
msgid ""
"After applying the kernelMatrix to the input image to yield a number, that number is divided by divisor to yield the final destination color value. A divisor that is the sum of all the matrix values tends to have an evening effect on the "
"overall color intensity of the result."
@@ -14099,97 +14061,97 @@ msgstr ""
"Pēc kernelMatrix pielietoĆĄanas sākotnējam attēlam iegĆ«tais skaitlis tiek dalÄ«ts ar dalÄ«tāju gala krāsas vērtÄ«bas iegƫƥanai. DalÄ«tājam, kas ir visu matricas vērtÄ«bu summa, piemÄ«t vispārējās krāsu intensitātes izlÄ«dzinātāja efekts gala "
"attēlā. "
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2866
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2882
msgid "Bias:"
msgstr "Nobīde:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2866
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2882
msgid "This value is added to each component. This is useful to define a constant value as the zero response of the filter."
msgstr "Ć Ä« vērtÄ«ba tiek pievienota katram komponentam. Ir lietderÄ«gi noteikt nemainÄ«gu vērtÄ«bu kā filtra 'nulles' atbildi."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2867
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2883
msgid "Edge Mode:"
msgstr "Malu reĆŸÄ«ms:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2867
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2883
msgid "Determines how to extend the input image as necessary with color values so that the matrix operations can be applied when the kernel is positioned at or near the edge of the input image."
msgstr "Nosaka veidu, kādā pēc nepiecieĆĄamÄ«bas paplaĆĄināt sākotnējo attēlu ar krāsu vērtÄ«bām, lai matricu darbÄ«bas varētu izmantot gadÄ«jumos, kuros kodols ir novietots uz vai blakus sākotnējā attēla malai."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2868
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2884
msgid "Preserve Alpha"
msgstr "Saglabāt alfa"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2868
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2884
msgid "If set, the alpha channel won't be altered by this filter primitive."
msgstr "Ja iestatīts, ƥī filtra primitīvs nemainīs alfa kanālu."
#. default: white
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2871
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2887
msgid "Diffuse Color:"
msgstr "Difƫzijas krāsa:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2871 ../src/ui/dialog/filter-effects-dialog.cpp:2904
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2887 ../src/ui/dialog/filter-effects-dialog.cpp:2920
msgid "Defines the color of the light source"
msgstr "Nosaka gaismas avota krāsu"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2872 ../src/ui/dialog/filter-effects-dialog.cpp:2905
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2888 ../src/ui/dialog/filter-effects-dialog.cpp:2921
msgid "Surface Scale:"
msgstr "Virsmas mērogs:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2872 ../src/ui/dialog/filter-effects-dialog.cpp:2905
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2888 ../src/ui/dialog/filter-effects-dialog.cpp:2921
msgid "This value amplifies the heights of the bump map defined by the input alpha channel"
msgstr "Ć Ä« vērtÄ«ba pastiprina pumpu kartes augstumu, ko nosaka sākotnējais alfa kanāls"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2873 ../src/ui/dialog/filter-effects-dialog.cpp:2906
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2889 ../src/ui/dialog/filter-effects-dialog.cpp:2922
msgid "Constant:"
msgstr "Konstantes:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2873 ../src/ui/dialog/filter-effects-dialog.cpp:2906
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2889 ../src/ui/dialog/filter-effects-dialog.cpp:2922
msgid "This constant affects the Phong lighting model."
msgstr "Ć Ä« konstante ietekmē Fonga apgaismojuma modeli"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2874 ../src/ui/dialog/filter-effects-dialog.cpp:2908
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2890 ../src/ui/dialog/filter-effects-dialog.cpp:2924
msgid "Kernel Unit Length:"
msgstr "Kodola vienības garums:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2878
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2894
msgid "This defines the intensity of the displacement effect."
msgstr "Tas nosaka pārvietojuma efekta intensitāti."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2879
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2895
msgid "X displacement:"
msgstr "X nobīde:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2879
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2895
msgid "Color component that controls the displacement in the X direction"
msgstr "Krāsas komponents, kas nosaka pārvietojumu X virzienā"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2880
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2896
msgid "Y displacement:"
msgstr "Y nobīde:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2880
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2896
msgid "Color component that controls the displacement in the Y direction"
msgstr "Krāsas komponents, kas nosaka pārvietojumu Y virzienā"
#. default: black
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2883
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2899
msgid "Flood Color:"
msgstr "Pludināƥanas krāsa:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2883
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2899
msgid "The whole filter region will be filled with this color."
msgstr "Viss filtra apgabals tiks aizpildīts ar ƥo krāsu."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2887
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2903
msgid "Standard Deviation:"
msgstr "Standarta novirze:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2887
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2903
msgid "The standard deviation for the blur operation."
msgstr "Standarta novirze aizmigloƥanas darbībai."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2893
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2909
msgid ""
"Erode: performs \"thinning\" of input image.\n"
"Dilate: performs \"fattenning\" of input image."
@@ -14197,74 +14159,74 @@ msgstr ""
"Erozija: padara sākotnējo attēlu \"plānāku\".\n"
"Izpleơana: padara sākotnējo attēlu \"biezāku\"."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2897
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2913
msgid "Source of Image:"
msgstr "Attēla avots:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2900
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2916
msgid "Delta X:"
msgstr "Delta X:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2900
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2916
msgid "This is how far the input image gets shifted to the right"
msgstr "Cik tālu sākotnējais attēls tiks pārbīdīts pa labi"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2901
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2917
msgid "Delta Y:"
msgstr "Delta Y:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2901
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2917
msgid "This is how far the input image gets shifted downwards"
msgstr "Cik tālu sākotnējais attēls tiks pārbīdīts lejup"
#. default: white
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2904
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2920
msgid "Specular Color:"
msgstr "Atspīduma krāsa:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2907 ../share/extensions/interp.inx.h:2
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2923 ../share/extensions/interp.inx.h:2
msgid "Exponent:"
msgstr "Kāpinātājs:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2907
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2923
msgid "Exponent for specular term, larger is more \"shiny\"."
msgstr "AtstaroĆĄanas pakāpe, lielāks skaitlis nozÄ«mē vairāk \"spÄ«dÄ«gu\"."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2916
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2932
msgid "Indicates whether the filter primitive should perform a noise or turbulence function."
msgstr "AtspoguÄŒo, vai filtra primitÄ«vam jāveic trokơƆa vai nekārtÄ«bas funkcija."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2917
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2933
msgid "Base Frequency:"
msgstr "Pamata bieĆŸums:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2918
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2934
msgid "Octaves:"
msgstr "Oktāvas:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2919
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2935
msgid "Seed:"
msgstr "Gadījuma vērtība:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2919
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2935
msgid "The starting number for the pseudo random number generator."
msgstr "Sākuma skaitlis pseidogadÄ«juma skaitÄŒu ÄŁeneratoram."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2931
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2947
msgid "Add filter primitive"
msgstr "Pievienot filtra primitīvu"
# http://www.w3.org/TR/SVG/intro.html#TermFilterPrimitiveElement
# A filter primitive element is one that can be used as a child of a ‘filter’ element to specify a node in the filter graph.
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2948
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2964
msgid "The <b>feBlend</b> filter primitive provides 4 image blending modes: screen, multiply, darken and lighten."
msgstr "<b>feBlend</b> filtra primitÄ«vs nodroĆĄina 4 attēlu sajaukĆĄanas veidus: uz ekrāna, pavairot, padarÄ«t tumƥāku un padarÄ«t gaiƥāku."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2952
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2968
msgid "The <b>feColorMatrix</b> filter primitive applies a matrix transformation to color of each rendered pixel. This allows for effects like turning object to grayscale, modifying color saturation and changing color hue."
msgstr "<b>feColorMatrix</b> filtra primitÄ«vs pielieto matricas pārveidojumu katra renderētā pikseÄŒa krāsai. Tas padara iespējamus tādus efektus, kā pārvērĆĄanu par pelēktoƆu attēlu, krāsu piesātinājuma un nokrāsas maiƆu."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2956
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2972
msgid ""
"The <b>feComponentTransfer</b> filter primitive manipulates the input's color components (red, green, blue, and alpha) according to particular transfer functions, allowing operations like brightness and contrast adjustment, color balance, "
"and thresholding."
@@ -14272,7 +14234,7 @@ msgstr ""
"<b>feComponentTransfer</b> filtra primitÄ«vs darbojas ar sākotnējo krāsu komponentēm (sarkano, zaÄŒo, zilo un alfa) saskaƆā ar Ä«paƥām pārneses funkcijām, nodroĆĄinot tādas darbÄ«bas kā spilgtuma un kontrasta maiƆu, krāsu balansēơanu un krāsu "
"sliekơƆu iestatīƥanu."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2960
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2976
msgid ""
"The <b>feComposite</b> filter primitive composites two images using one of the Porter-Duff blending modes or the arithmetic mode described in SVG standard. Porter-Duff blending modes are essentially logical operations between the "
"corresponding pixel values of the images."
@@ -14282,7 +14244,7 @@ msgstr ""
# http://www.w3.org/TR/SVG/intro.html#TermFilterPrimitiveElement
# A filter primitive element is one that can be used as a child of a ‘filter’ element to specify a node in the filter graph.
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2964
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2980
msgid ""
"The <b>feConvolveMatrix</b> lets you specify a Convolution to be applied on the image. Common effects created using convolution matrices are blur, sharpening, embossing and edge detection. Note that while gaussian blur can be created using "
"this filter primitive, the special gaussian blur primitive is faster and resolution-independent."
@@ -14290,7 +14252,7 @@ msgstr ""
"<b>feConvolveMatrix</b> ÄŒauj norādÄ«t attēlam pielietojamo konvolĆ«ciju. Efekti, kurus iegĆ«st ar konvolĆ«cijas matricas palÄ«dzÄ«bu, ir aizmigloĆĄana, saasināƥana, ciÄŒĆ†oĆĄana un malas noteikĆĄana. ƅemiet vērā, ka lai arÄ« Gausa aizmigloĆĄana ar ĆĄo "
"filtra primitÄ«vu arÄ« ir iespējama, Ä«paĆĄais Gausa aizmigloĆĄanas primitÄ«vs ir ātrāks un nav atkarÄ«gs no izĆĄÄ·irtspējas."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2968
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2984
msgid ""
"The <b>feDiffuseLighting</b> and feSpecularLighting filter primitives create \"embossed\" shadings. The input's alpha channel is used to provide depth information: higher opacity areas are raised toward the viewer and lower opacity areas "
"recede away from the viewer."
@@ -14298,23 +14260,23 @@ msgstr ""
"<b>feDiffuseLighting</b> un <b>feSpecularLighting</b> filtru primitÄ«vi rada \"ciÄŒĆ†otu \" ēnojumu. Sākotnējā attēla alfa kanāls tiks izmantots dziÄŒuma informācijai: necaurspÄ«dÄ«gāki laukumi tiek tuvināti skatÄ«tājam, caurspÄ«dÄ«gāki - "
"attālinānti."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2972
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2988
msgid "The <b>feDisplacementMap</b> filter primitive displaces the pixels in the first input using the second input as a displacement map, that shows from how far the pixel should come from. Classical examples are whirl and pinch effects."
msgstr "<b>feDisplacementMap</b> filtra primitÄ«vs nobÄ«da pikseÄŒus pirmajā attēlā izmantojot otro attēlu kā nobÄ«ĆŸu karti, kas norāda no kāda attālumu pikseÄŒiem jānāk. Klasiski piemēri ir virpuÄŒa un knaibīƥanas efekti."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2976
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2992
msgid "The <b>feFlood</b> filter primitive fills the region with a given color and opacity. It is usually used as an input to other filters to apply color to a graphic."
msgstr "<b>feFlood</b> filtra primitīvs aizpilda laukumu ar norādīto krāsu un necaurspīdību. To parasti izmanto kā ievadi citiem filtriem, lai grafikai pieƥķirtu krāsas."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2980
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2996
msgid "The <b>feGaussianBlur</b> filter primitive uniformly blurs its input. It is commonly used together with feOffset to create a drop shadow effect."
msgstr "<b>feGaussianBlur</b> filtrs vienādā mērā aizmiglo sākotnējo objektu. VisbieĆŸÄk to lieto kopā ar feOffset, lai izvedotu krÄ«toĆĄas ēnas efektu."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2984
+#: ../src/ui/dialog/filter-effects-dialog.cpp:3000
msgid "The <b>feImage</b> filter primitive fills the region with an external image or another part of the document."
msgstr "<b>feImage</b> filtra primitÄ«vs aizpilda apgabalu ar ārējā attēla vai citu dokumenta daÄŒu kopijām."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2988
+#: ../src/ui/dialog/filter-effects-dialog.cpp:3004
msgid ""
"The <b>feMerge</b> filter primitive composites several temporary images inside the filter primitive to a single image. It uses normal alpha compositing for this. This is equivalent to using several feBlend primitives in 'normal' mode or "
"several feComposite primitives in 'over' mode."
@@ -14322,15 +14284,15 @@ msgstr ""
"<b>feMerge</b> filtra primitÄ«vs apvieno vairākus filtra primitÄ«vā esoĆĄus pagaidu attēlus vienā. Ć ai darbÄ«bai tiek izmantota vienkārĆĄa alfa salikĆĄana. Tas ir lÄ«dzÄ«gs daĆŸu feBlend filtru primitÄ«vu izmantoĆĄanai 'parastā' (normal) reĆŸÄ«mā vai "
"daĆŸu feComposite filtru primitÄ«vu - 'pāri' (over) reĆŸÄ«mā."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2992
+#: ../src/ui/dialog/filter-effects-dialog.cpp:3008
msgid "The <b>feMorphology</b> filter primitive provides erode and dilate effects. For single-color objects erode makes the object thinner and dilate makes it thicker."
msgstr "<b>feMorphology</b> filtra primitīvs nodroƥina erozijas un izpleƥanas efektus. Vienas krāsas objektu gadījumā erozija padara objektu plānāku, izpleƥana - biezāku."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2996
+#: ../src/ui/dialog/filter-effects-dialog.cpp:3012
msgid "The <b>feOffset</b> filter primitive offsets the image by an user-defined amount. For example, this is useful for drop shadows, where the shadow is in a slightly different position than the actual object."
msgstr "<b>feOffset</b> filtra primitÄ«vs nobÄ«da attēlu par lietotāja noteiktu lielumu. Piemēram, tas ir noderÄ«gs ēnu veidoĆĄanai, kurās ēna atrodas nedaudz citā stāvoklÄ« nekā pats objekts."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:3000
+#: ../src/ui/dialog/filter-effects-dialog.cpp:3016
msgid ""
"The <b>feDiffuseLighting</b> and <b>feSpecularLighting</b> filter primitives create \"embossed\" shadings. The input's alpha channel is used to provide depth information: higher opacity areas are raised toward the viewer and lower opacity "
"areas recede away from the viewer."
@@ -14338,19 +14300,19 @@ msgstr ""
"<b>feDiffuseLighting</b> un <b>feSpecularLighting</b> filtru primitÄ«vi rada \"ciÄŒĆ†otu \" ēnojumu. Sākotnējā attēla alfa kanāls tiks izmantots dziÄŒuma informācijai: necaurspÄ«dÄ«gāki laukumi tiek tuvināti skatÄ«tājam, caurspÄ«dÄ«gāki - "
"attālinānti."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:3004
+#: ../src/ui/dialog/filter-effects-dialog.cpp:3020
msgid "The <b>feTile</b> filter primitive tiles a region with its input graphic"
msgstr "<b>feTile</b> filtra primitīvs aizpilda apgabalu ar ievadītās grafikas kopijām."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:3008
+#: ../src/ui/dialog/filter-effects-dialog.cpp:3024
msgid "The <b>feTurbulence</b> filter primitive renders Perlin noise. This kind of noise is useful in simulating several nature phenomena like clouds, fire and smoke and in generating complex textures like marble or granite."
msgstr "<b>feTurbulence</b> filtra primitÄ«vs renderē Perlina troksni. Ć is trokơƆa veids ir noderÄ«gs daĆŸÄdu dabas parādÄ«bu atainoĆĄanai, piemēram - mākoƆu, uguns un dĆ«mu un tādu sareĆŸÄŁÄ«tu tekstĆ«ru veidoĆĄanai kā marmors vai granÄ«ts."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:3027
+#: ../src/ui/dialog/filter-effects-dialog.cpp:3043
msgid "Duplicate filter primitive"
msgstr "Kopēt filtra primitīvu"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:3080
+#: ../src/ui/dialog/filter-effects-dialog.cpp:3096
msgid "Set filter primitive attribute"
msgstr "Iestatīt filtra primitīva atribƫtu"
@@ -14534,7 +14496,7 @@ msgstr "Spirāles"
msgid "Search spirals"
msgstr "Meklēt spirāles"
-#: ../src/ui/dialog/find.cpp:103 ../src/widgets/toolbox.cpp:1737
+#: ../src/ui/dialog/find.cpp:103 ../src/widgets/toolbox.cpp:1733
msgid "Paths"
msgstr "CeÄŒi"
@@ -14661,7 +14623,7 @@ msgstr "Izvēlieties objekta tipu"
msgid "Select a property"
msgstr "Izvēlieties Ä«paĆĄÄ«bu"
-#: ../src/ui/dialog/font-substitution.cpp:87
+#: ../src/ui/dialog/font-substitution.cpp:79
msgid ""
"\n"
"Some fonts are not available and have been substituted."
@@ -14669,19 +14631,19 @@ msgstr ""
"\n"
"DaĆŸi fonti nav pieejami un ir aizvietoti."
-#: ../src/ui/dialog/font-substitution.cpp:90
+#: ../src/ui/dialog/font-substitution.cpp:82
msgid "Font substitution"
msgstr "Fontu aizvietojums"
-#: ../src/ui/dialog/font-substitution.cpp:109
+#: ../src/ui/dialog/font-substitution.cpp:101
msgid "Select all the affected items"
msgstr "Atlasīt visus ietekmētos objektus"
-#: ../src/ui/dialog/font-substitution.cpp:114
+#: ../src/ui/dialog/font-substitution.cpp:106
msgid "Don't show this warning again"
msgstr "Nerādīt atkārtoti ƥo brīdinājumu"
-#: ../src/ui/dialog/font-substitution.cpp:255
+#: ../src/ui/dialog/font-substitution.cpp:245
msgid "Font '%1' substituted with '%2'"
msgstr "Fonts '%1' aizvietots ar '%2'"
@@ -15406,7 +15368,7 @@ msgstr "Apgabals:"
msgid "Append"
msgstr "Pievienot"
-#: ../src/ui/dialog/glyphs.cpp:618
+#: ../src/ui/dialog/glyphs.cpp:619
msgid "Append text"
msgstr "Pievienot tekstu"
@@ -15414,66 +15376,66 @@ msgstr "Pievienot tekstu"
msgid "Arrange in a grid"
msgstr "Izkārtot reĆŸÄŁÄ«"
-#: ../src/ui/dialog/grid-arrange-tab.cpp:578 ../src/ui/dialog/object-attributes.cpp:66 ../src/ui/dialog/object-attributes.cpp:75 ../src/widgets/desktop-widget.cpp:666 ../src/widgets/node-toolbar.cpp:581
+#: ../src/ui/dialog/grid-arrange-tab.cpp:577 ../src/ui/dialog/object-attributes.cpp:66 ../src/ui/dialog/object-attributes.cpp:75 ../src/ui/widget/page-sizer.cpp:247 ../src/widgets/desktop-widget.cpp:666 ../src/widgets/node-toolbar.cpp:581
msgid "X:"
msgstr "X:"
-#: ../src/ui/dialog/grid-arrange-tab.cpp:578
+#: ../src/ui/dialog/grid-arrange-tab.cpp:577
msgid "Horizontal spacing between columns."
msgstr "Horizontālā atstarpe starp slejām."
-#: ../src/ui/dialog/grid-arrange-tab.cpp:579 ../src/ui/dialog/object-attributes.cpp:67 ../src/ui/dialog/object-attributes.cpp:76 ../src/widgets/desktop-widget.cpp:676 ../src/widgets/node-toolbar.cpp:599
+#: ../src/ui/dialog/grid-arrange-tab.cpp:578 ../src/ui/dialog/object-attributes.cpp:67 ../src/ui/dialog/object-attributes.cpp:76 ../src/ui/widget/page-sizer.cpp:248 ../src/widgets/desktop-widget.cpp:676 ../src/widgets/node-toolbar.cpp:599
msgid "Y:"
msgstr "Y:"
-#: ../src/ui/dialog/grid-arrange-tab.cpp:579
+#: ../src/ui/dialog/grid-arrange-tab.cpp:578
msgid "Vertical spacing between rows."
msgstr "Vertikālā atstarpe starp rindām."
-#: ../src/ui/dialog/grid-arrange-tab.cpp:626
+#: ../src/ui/dialog/grid-arrange-tab.cpp:624
msgid "_Rows:"
msgstr "_Rindas:"
-#: ../src/ui/dialog/grid-arrange-tab.cpp:635
+#: ../src/ui/dialog/grid-arrange-tab.cpp:633
msgid "Number of rows"
msgstr "Rindu skaits"
-#: ../src/ui/dialog/grid-arrange-tab.cpp:639
+#: ../src/ui/dialog/grid-arrange-tab.cpp:637
msgid "Equal _height"
msgstr "Vienāda _augstuma:"
-#: ../src/ui/dialog/grid-arrange-tab.cpp:650
+#: ../src/ui/dialog/grid-arrange-tab.cpp:648
msgid "If not set, each row has the height of the tallest object in it"
msgstr "Ja nav norādīts, katras rindas augstums atbilst augstākajam objektam tajā"
#. #### Number of columns ####
-#: ../src/ui/dialog/grid-arrange-tab.cpp:666
+#: ../src/ui/dialog/grid-arrange-tab.cpp:664
msgid "_Columns:"
msgstr "_Slejas:"
-#: ../src/ui/dialog/grid-arrange-tab.cpp:675
+#: ../src/ui/dialog/grid-arrange-tab.cpp:673
msgid "Number of columns"
msgstr "Sleju skaits"
-#: ../src/ui/dialog/grid-arrange-tab.cpp:679
+#: ../src/ui/dialog/grid-arrange-tab.cpp:677
msgid "Equal _width"
msgstr "Vienāda platuma:"
-#: ../src/ui/dialog/grid-arrange-tab.cpp:689
+#: ../src/ui/dialog/grid-arrange-tab.cpp:687
msgid "If not set, each column has the width of the widest object in it"
msgstr "Ja nav norādīts, katras slejas platums atbilst platākajam objektam tajā"
#. Anchor selection widget
-#: ../src/ui/dialog/grid-arrange-tab.cpp:700
+#: ../src/ui/dialog/grid-arrange-tab.cpp:698
msgid "Alignment:"
msgstr "Izlīdzinājums"
#. #### Radio buttons to control spacing manually or to fit selection bbox ####
-#: ../src/ui/dialog/grid-arrange-tab.cpp:709
+#: ../src/ui/dialog/grid-arrange-tab.cpp:707
msgid "_Fit into selection box"
msgstr "Ietilpināt atlasīƥanas rāmī"
-#: ../src/ui/dialog/grid-arrange-tab.cpp:716
+#: ../src/ui/dialog/grid-arrange-tab.cpp:714
msgid "_Set spacing:"
msgstr "Ie_statīt atstarpes:"
@@ -15525,25 +15487,25 @@ msgstr "Palīglīnijas ID: %s"
msgid "Current: %s"
msgstr "Paơreizējais: %s"
-#: ../src/ui/dialog/icon-preview.cpp:159
+#: ../src/ui/dialog/icon-preview.cpp:155
#, c-format
msgid "%d x %d"
msgstr "%d x %d"
-#: ../src/ui/dialog/icon-preview.cpp:171
+#: ../src/ui/dialog/icon-preview.cpp:167
msgid "Magnified:"
msgstr "Palielināts:"
-#: ../src/ui/dialog/icon-preview.cpp:240
+#: ../src/ui/dialog/icon-preview.cpp:236
msgid "Actual Size:"
msgstr "Patiesais izmērs:"
-#: ../src/ui/dialog/icon-preview.cpp:245
+#: ../src/ui/dialog/icon-preview.cpp:241
msgctxt "Icon preview window"
msgid "Sele_ction"
msgstr "At_lasītais"
-#: ../src/ui/dialog/icon-preview.cpp:247
+#: ../src/ui/dialog/icon-preview.cpp:243
msgid "Selection only or whole document"
msgstr "Tikai iezīmēto vai visu dokumentu."
@@ -15846,7 +15808,7 @@ msgid "Zoom"
msgstr "TālummaiƆa"
#. Measure
-#: ../src/ui/dialog/inkscape-preferences.cpp:390 ../src/verbs.cpp:2761
+#: ../src/ui/dialog/inkscape-preferences.cpp:390 ../src/verbs.cpp:2730
msgctxt "ContextVerb"
msgid "Measure"
msgstr "Mērīt"
@@ -15891,7 +15853,7 @@ msgid "If on, each newly created object will be selected (deselecting previous s
msgstr "Ja ieslēgts, tiks atlasÄ«ts katrs jaunizveidotais objekts (atceÄŒot iepriekơējo atlasi)"
#. Text
-#: ../src/ui/dialog/inkscape-preferences.cpp:448 ../src/verbs.cpp:2753
+#: ../src/ui/dialog/inkscape-preferences.cpp:448 ../src/verbs.cpp:2722
msgctxt "ContextVerb"
msgid "Text"
msgstr "Teksts"
@@ -17661,7 +17623,7 @@ msgid "Rendering"
msgstr "Renderēơana"
#. Note: /options/bitmapoversample removed with Cairo renderer
-#: ../src/ui/dialog/inkscape-preferences.cpp:1434 ../src/verbs.cpp:157 ../src/widgets/calligraphy-toolbar.cpp:626
+#: ../src/ui/dialog/inkscape-preferences.cpp:1434 ../src/verbs.cpp:156 ../src/widgets/calligraphy-toolbar.cpp:626
msgid "Edit"
msgstr "Labot"
@@ -17677,7 +17639,7 @@ msgstr "Automātiski pārlādēt saistÄ«tos attēlus, ja datne uz diska ir mainÄ
msgid "_Bitmap editor:"
msgstr "_Bitkartes redaktors:"
-#: ../src/ui/dialog/inkscape-preferences.cpp:1441 ../share/extensions/guillotine.inx.h:5 ../share/extensions/plotter.inx.h:57 ../share/extensions/print_win32_vector.inx.h:2
+#: ../src/ui/dialog/inkscape-preferences.cpp:1441 ../share/extensions/guillotine.inx.h:5 ../share/extensions/plotter.inx.h:67 ../share/extensions/print_win32_vector.inx.h:2
msgid "Export"
msgstr "Eksportēt"
@@ -17762,11 +17724,11 @@ msgstr "Meklēt:"
msgid "Shortcut"
msgstr "Saīsne"
-#: ../src/ui/dialog/inkscape-preferences.cpp:1513 ../src/ui/widget/page-sizer.cpp:260
+#: ../src/ui/dialog/inkscape-preferences.cpp:1513 ../src/ui/widget/page-sizer.cpp:285
msgid "Description"
msgstr "Apraksts"
-#: ../src/ui/dialog/inkscape-preferences.cpp:1568 ../src/ui/dialog/pixelartdialog.cpp:296 ../src/ui/dialog/svg-fonts-dialog.cpp:699 ../src/ui/dialog/tracedialog.cpp:813 ../src/ui/widget/preferences-widget.cpp:749
+#: ../src/ui/dialog/inkscape-preferences.cpp:1568 ../src/ui/dialog/pixelartdialog.cpp:296 ../src/ui/dialog/svg-fonts-dialog.cpp:699 ../src/ui/dialog/tracedialog.cpp:813 ../src/ui/widget/preferences-widget.cpp:745
msgid "Reset"
msgstr "Atiestatīt"
@@ -18059,7 +18021,7 @@ msgid "Rename Layer"
msgstr "Pārdēvēt slāni"
#. TODO: find an unused layer number, forming name from _("Layer ") + "%d"
-#: ../src/ui/dialog/layer-properties.cpp:354 ../src/ui/dialog/layer-properties.cpp:410 ../src/verbs.cpp:195 ../src/verbs.cpp:2368
+#: ../src/ui/dialog/layer-properties.cpp:354 ../src/ui/dialog/layer-properties.cpp:410 ../src/verbs.cpp:194 ../src/verbs.cpp:2337
msgid "Layer"
msgstr "Slānis"
@@ -18067,7 +18029,7 @@ msgstr "Slānis"
msgid "_Rename"
msgstr "_Pārdēvēt"
-#: ../src/ui/dialog/layer-properties.cpp:368 ../src/ui/dialog/layers.cpp:750
+#: ../src/ui/dialog/layer-properties.cpp:368 ../src/ui/dialog/layers.cpp:758
msgid "Rename layer"
msgstr "Pārdēvēt slāni"
@@ -18092,7 +18054,7 @@ msgstr "Izveidots jauns slānis."
msgid "Move to Layer"
msgstr "Pārvietot uz slāni"
-#: ../src/ui/dialog/layer-properties.cpp:411 ../src/ui/dialog/lpe-powerstroke-properties.cpp:120 ../src/ui/dialog/transformation.cpp:112
+#: ../src/ui/dialog/layer-properties.cpp:411 ../src/ui/dialog/lpe-powerstroke-properties.cpp:116 ../src/ui/dialog/transformation.cpp:108
msgid "_Move"
msgstr "Pār_vietot"
@@ -18112,39 +18074,39 @@ msgstr "Slēgt slāni"
msgid "Unlock layer"
msgstr "Atslēgt slāni"
-#: ../src/ui/dialog/layers.cpp:624 ../src/ui/dialog/objects.cpp:843 ../src/verbs.cpp:1438
+#: ../src/ui/dialog/layers.cpp:624 ../src/ui/dialog/objects.cpp:843 ../src/verbs.cpp:1407
msgid "Toggle layer solo"
msgstr "Pārslēgt tikai ơo slāni"
-#: ../src/ui/dialog/layers.cpp:627 ../src/ui/dialog/objects.cpp:846 ../src/verbs.cpp:1462
+#: ../src/ui/dialog/layers.cpp:627 ../src/ui/dialog/objects.cpp:846 ../src/verbs.cpp:1431
msgid "Lock other layers"
msgstr "Slēdz citus slāƆus"
-#: ../src/ui/dialog/layers.cpp:721
+#: ../src/ui/dialog/layers.cpp:730
msgid "Moved layer"
msgstr "Pārvietotais slānis"
-#: ../src/ui/dialog/layers.cpp:884
+#: ../src/ui/dialog/layers.cpp:892
msgctxt "Layers"
msgid "New"
msgstr "Jauns"
-#: ../src/ui/dialog/layers.cpp:889
+#: ../src/ui/dialog/layers.cpp:897
msgctxt "Layers"
msgid "Bot"
msgstr "ApakĆĄa"
-#: ../src/ui/dialog/layers.cpp:895
+#: ../src/ui/dialog/layers.cpp:903
msgctxt "Layers"
msgid "Dn"
msgstr "Dn"
-#: ../src/ui/dialog/layers.cpp:901
+#: ../src/ui/dialog/layers.cpp:909
msgctxt "Layers"
msgid "Up"
msgstr "Uz augĆĄu"
-#: ../src/ui/dialog/layers.cpp:907
+#: ../src/ui/dialog/layers.cpp:915
msgctxt "Layers"
msgid "Top"
msgstr "AugĆĄa"
@@ -18221,43 +18183,43 @@ msgstr "Ieslēgt ceÄŒa efektu"
msgid "Deactivate path effect"
msgstr "Atslēgt ceÄŒa efektu"
-#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:57
+#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:52
msgid "Radius (pixels):"
msgstr "Rādiuss (pikseČos):"
-#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:69
+#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:64
msgid "Chamfer subdivisions:"
msgstr "Nokāpes fazÄ«tes apakĆĄiedaÄŒas:"
-#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:144
+#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:135
msgid "Modify Fillet-Chamfer"
msgstr "Mainīt nokāpi/apcilni"
-#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:145
+#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:136
msgid "_Modify"
msgstr "_Mainīt"
-#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:210
+#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:200
msgid "Radius"
msgstr "Rādiuss"
-#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:212
+#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:202
msgid "Radius approximated"
msgstr "Rādiuss aproksimēts"
-#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:215
+#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:205
msgid "Knot distance"
msgstr "Mezgla attālums"
-#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:222
+#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:212
msgid "Position (%):"
msgstr "Pozīcija (%):"
-#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:225
-msgid "%1 (%2):"
-msgstr "%1 (%2):"
+#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:215
+msgid "%1:"
+msgstr "%1:"
-#: ../src/ui/dialog/lpe-powerstroke-properties.cpp:119
+#: ../src/ui/dialog/lpe-powerstroke-properties.cpp:115
msgid "Modify Node Position"
msgstr "Mainīt mezgla pozīciju"
@@ -18409,7 +18371,7 @@ msgid "Check to make the object insensitive (not selectable by mouse)"
msgstr "AtzÄ«mējiet, lai padarÄ«tu objektu nejĆ«tÄ«gu (neatlasāmu ar peli)"
#. Button for setting the object's id, label, title and description.
-#: ../src/ui/dialog/object-properties.cpp:325 ../src/verbs.cpp:2711 ../src/verbs.cpp:2717
+#: ../src/ui/dialog/object-properties.cpp:325 ../src/verbs.cpp:2680 ../src/verbs.cpp:2686
msgid "_Set"
msgstr "Ie_statīt"
@@ -18446,19 +18408,23 @@ msgstr "Iestatīt objekta nosaukumu"
msgid "Set object description"
msgstr "Iestatīt objekta aprakstu"
-#: ../src/ui/dialog/object-properties.cpp:552
+#: ../src/ui/dialog/object-properties.cpp:535
+msgid "Set image rendering option"
+msgstr "Iestatiet attēla renderēơanas papildiespēju"
+
+#: ../src/ui/dialog/object-properties.cpp:554
msgid "Lock object"
msgstr "Slēgt objektu"
-#: ../src/ui/dialog/object-properties.cpp:552
+#: ../src/ui/dialog/object-properties.cpp:554
msgid "Unlock object"
msgstr "Atslēgt objektu"
-#: ../src/ui/dialog/object-properties.cpp:568
+#: ../src/ui/dialog/object-properties.cpp:570
msgid "Hide object"
msgstr "Paslēpt objektu"
-#: ../src/ui/dialog/object-properties.cpp:568
+#: ../src/ui/dialog/object-properties.cpp:570
msgid "Unhide object"
msgstr "Rādīt objektu"
@@ -18490,7 +18456,7 @@ msgstr "Grupu par slāni"
msgid "Moved objects"
msgstr "Pārvietotie objekti"
-#: ../src/ui/dialog/objects.cpp:1352 ../src/ui/dialog/tags.cpp:856 ../src/ui/dialog/tags.cpp:863
+#: ../src/ui/dialog/objects.cpp:1352 ../src/ui/dialog/tags.cpp:857 ../src/ui/dialog/tags.cpp:864
msgid "Rename object"
msgstr "Pārdēvēt objektu"
@@ -18769,11 +18735,11 @@ msgstr "LeƆķis X/Y:"
msgid "Rotate objects"
msgstr "Pagriezt objektus"
-#: ../src/ui/dialog/polar-arrange-tab.cpp:338
+#: ../src/ui/dialog/polar-arrange-tab.cpp:336
msgid "Couldn't find an ellipse in selection"
msgstr "Atlasītajā nav atrasta elipse."
-#: ../src/ui/dialog/polar-arrange-tab.cpp:403
+#: ../src/ui/dialog/polar-arrange-tab.cpp:399
msgid "Arrange on ellipse"
msgstr "Izkārtot gar elipsi"
@@ -19031,7 +18997,7 @@ msgstr "Parauga teksts"
msgid "Preview Text:"
msgstr "Teksta priekƥskatījums:"
-#: ../src/ui/dialog/swatches.cpp:202 ../src/ui/tools/gradient-tool.cpp:360 ../src/ui/tools/gradient-tool.cpp:458 ../src/widgets/gradient-vector.cpp:794
+#: ../src/ui/dialog/swatches.cpp:202 ../src/ui/tools/gradient-tool.cpp:360 ../src/ui/tools/gradient-tool.cpp:458 ../src/widgets/gradient-vector.cpp:795
msgid "Add gradient stop"
msgstr "Pievienot krāsu pārejas pieturpunktu"
@@ -19059,76 +19025,70 @@ msgid "Palettes directory (%s) is unavailable."
msgstr "PaleĆĄu mape (%s) nav pieejama."
#. ******************* Symbol Sets ************************
-#: ../src/ui/dialog/symbols.cpp:139
+#: ../src/ui/dialog/symbols.cpp:135
msgid "Symbol set: "
msgstr "Simbolu kopa:"
#. Fill in later
-#: ../src/ui/dialog/symbols.cpp:148 ../src/ui/dialog/symbols.cpp:149
+#: ../src/ui/dialog/symbols.cpp:144 ../src/ui/dialog/symbols.cpp:145
msgid "Current Document"
msgstr "Paơreizējais dokuments"
-#: ../src/ui/dialog/symbols.cpp:216
+#: ../src/ui/dialog/symbols.cpp:212
msgid "Add Symbol from the current document."
msgstr "Pievienot simbolu no paơreizējā dokumenta."
-#: ../src/ui/dialog/symbols.cpp:225
+#: ../src/ui/dialog/symbols.cpp:221
msgid "Remove Symbol from the current document."
msgstr "Aizvāklt simbolu no paơreizējā dokumenta."
-#: ../src/ui/dialog/symbols.cpp:239
+#: ../src/ui/dialog/symbols.cpp:235
msgid "Display more icons in row."
msgstr "Rādīt vairāk ikonu vienā rindā."
-#: ../src/ui/dialog/symbols.cpp:248
+#: ../src/ui/dialog/symbols.cpp:244
msgid "Display fewer icons in row."
msgstr "Rādīt mazāk ikonu vienā rindā."
-#: ../src/ui/dialog/symbols.cpp:258
+#: ../src/ui/dialog/symbols.cpp:254
msgid "Toggle 'fit' symbols in icon space."
msgstr "Ieslēdziet simbolu \"ietilpināơanu\" ikonu laukā. "
-#: ../src/ui/dialog/symbols.cpp:270
+#: ../src/ui/dialog/symbols.cpp:266
msgid "Make symbols smaller by zooming out."
msgstr "Samaziniet simbolus tālinot."
-#: ../src/ui/dialog/symbols.cpp:280
+#: ../src/ui/dialog/symbols.cpp:276
msgid "Make symbols bigger by zooming in."
msgstr "Palieliniet simbolus tuvinot."
-#: ../src/ui/dialog/symbols.cpp:641
+#: ../src/ui/dialog/symbols.cpp:637
msgid "Unnamed Symbols"
msgstr "Nenosaukti simboli"
-#: ../src/ui/dialog/tags.cpp:274 ../src/ui/dialog/tags.cpp:572 ../src/ui/dialog/tags.cpp:686
-#, fuzzy
+#: ../src/ui/dialog/tags.cpp:274 ../src/ui/dialog/tags.cpp:573 ../src/ui/dialog/tags.cpp:687
msgid "Remove from selection set"
-msgstr "Izpludinātās iezīmējuma malas padarīt atkal asas"
+msgstr "Aizvākt no atlases kopas"
-#: ../src/ui/dialog/tags.cpp:430
-#, fuzzy
+#: ../src/ui/dialog/tags.cpp:431
msgid "Items"
-msgstr "vienības"
+msgstr "Vienumi"
-#: ../src/ui/dialog/tags.cpp:669
-#, fuzzy
+#: ../src/ui/dialog/tags.cpp:670
msgid "Add selection to set"
-msgstr "Pievienot iezīmējum_am"
+msgstr "Pievienot atlasīto kopai"
-#: ../src/ui/dialog/tags.cpp:827
-#, fuzzy
+#: ../src/ui/dialog/tags.cpp:828
msgid "Moved sets"
-msgstr "Pārvietots"
+msgstr "Pārvietotās kopas"
-#: ../src/ui/dialog/tags.cpp:997
-#, fuzzy
+#: ../src/ui/dialog/tags.cpp:998
msgid "Add a new selection set"
-msgstr "Pacelt izvēlēto par vienu soli uz augơu"
+msgstr "Pievienot jaunu atlases kopu"
-#: ../src/ui/dialog/tags.cpp:1006
-#, fuzzy
+#: ../src/ui/dialog/tags.cpp:1007
msgid "Remove Item/Set"
-msgstr "IzƆemt ĆĄo vienÄ«bu"
+msgstr "Aizvākt vienumu/kopu"
#: ../src/ui/dialog/template-widget.cpp:37
msgid "More info"
@@ -19163,28 +19123,28 @@ msgid "AaBbCcIiPpQq12369$€±?.;/()"
msgstr "AaBbCcIiPpQq12369$€±?.;/()"
#. Align buttons
-#: ../src/ui/dialog/text-edit.cpp:96 ../src/widgets/text-toolbar.cpp:1333 ../src/widgets/text-toolbar.cpp:1334
+#: ../src/ui/dialog/text-edit.cpp:96 ../src/widgets/text-toolbar.cpp:1339 ../src/widgets/text-toolbar.cpp:1340
msgid "Align left"
msgstr "Izlīdzināt pa kreisi"
-#: ../src/ui/dialog/text-edit.cpp:97 ../src/widgets/text-toolbar.cpp:1341 ../src/widgets/text-toolbar.cpp:1342
+#: ../src/ui/dialog/text-edit.cpp:97 ../src/widgets/text-toolbar.cpp:1347 ../src/widgets/text-toolbar.cpp:1348
msgid "Align center"
msgstr "Izlīdzināt pret centru"
-#: ../src/ui/dialog/text-edit.cpp:98 ../src/widgets/text-toolbar.cpp:1349 ../src/widgets/text-toolbar.cpp:1350
+#: ../src/ui/dialog/text-edit.cpp:98 ../src/widgets/text-toolbar.cpp:1355 ../src/widgets/text-toolbar.cpp:1356
msgid "Align right"
msgstr "Izlīdzināt pa labi"
-#: ../src/ui/dialog/text-edit.cpp:99 ../src/widgets/text-toolbar.cpp:1358
+#: ../src/ui/dialog/text-edit.cpp:99 ../src/widgets/text-toolbar.cpp:1364
msgid "Justify (only flowed text)"
msgstr "Izlīdzināt (tikai teksta aizpildījumam)"
#. Direction buttons
-#: ../src/ui/dialog/text-edit.cpp:108 ../src/widgets/text-toolbar.cpp:1393
+#: ../src/ui/dialog/text-edit.cpp:108 ../src/widgets/text-toolbar.cpp:1399
msgid "Horizontal text"
msgstr "Horizontāls teksts"
-#: ../src/ui/dialog/text-edit.cpp:109 ../src/widgets/text-toolbar.cpp:1400
+#: ../src/ui/dialog/text-edit.cpp:109 ../src/widgets/text-toolbar.cpp:1406
msgid "Vertical text"
msgstr "Vertikāls teksts"
@@ -19196,7 +19156,7 @@ msgstr "Atstarpe starp rindām (procentos no fonta izmēra)"
msgid "Text path offset"
msgstr "Teksta ceČa nobīde"
-#: ../src/ui/dialog/text-edit.cpp:586 ../src/ui/dialog/text-edit.cpp:660 ../src/ui/tools/text-tool.cpp:1446
+#: ../src/ui/dialog/text-edit.cpp:584 ../src/ui/dialog/text-edit.cpp:658 ../src/ui/tools/text-tool.cpp:1446
msgid "Set text style"
msgstr "Iestatīt teksta stilu"
@@ -19455,136 +19415,136 @@ msgstr "PriekĆĄskatÄ«t starpposma bitkarti ar paĆĄreizējiem iestatÄ«jumiem, nev
msgid "Preview"
msgstr "Priekƥskatījums"
-#: ../src/ui/dialog/transformation.cpp:74 ../src/ui/dialog/transformation.cpp:84
+#: ../src/ui/dialog/transformation.cpp:70 ../src/ui/dialog/transformation.cpp:80
msgid "_Horizontal:"
msgstr "_Horizontālā:"
-#: ../src/ui/dialog/transformation.cpp:74
+#: ../src/ui/dialog/transformation.cpp:70
msgid "Horizontal displacement (relative) or position (absolute)"
msgstr "Horizontālais pārvietojums (relatīvais) vai pozīcija (absolƫtais)"
-#: ../src/ui/dialog/transformation.cpp:76 ../src/ui/dialog/transformation.cpp:86
+#: ../src/ui/dialog/transformation.cpp:72 ../src/ui/dialog/transformation.cpp:82
msgid "_Vertical:"
msgstr "_Vertikālā:"
-#: ../src/ui/dialog/transformation.cpp:76
+#: ../src/ui/dialog/transformation.cpp:72
msgid "Vertical displacement (relative) or position (absolute)"
msgstr "Vertikālais pārvietojums (relatīvais) vai pozīcija (absolƫtais)"
-#: ../src/ui/dialog/transformation.cpp:78
+#: ../src/ui/dialog/transformation.cpp:74
msgid "Horizontal size (absolute or percentage of current)"
msgstr "Horizontālais izmērs (absolĆ«tais vai procentos no paĆĄreizējā)"
-#: ../src/ui/dialog/transformation.cpp:80
+#: ../src/ui/dialog/transformation.cpp:76
msgid "Vertical size (absolute or percentage of current)"
msgstr "Vertikālais izmērs (absolĆ«tais vai procentos no paĆĄreizējā)"
-#: ../src/ui/dialog/transformation.cpp:82
+#: ../src/ui/dialog/transformation.cpp:78
msgid "A_ngle:"
msgstr "L_eƆķis:"
-#: ../src/ui/dialog/transformation.cpp:82 ../src/ui/dialog/transformation.cpp:1103
+#: ../src/ui/dialog/transformation.cpp:78 ../src/ui/dialog/transformation.cpp:1103
msgid "Rotation angle (positive = counterclockwise)"
msgstr "Pagrieziena leƆķis (pozitÄ«vs = pretēji pulksteƆrādÄ«tājam)"
-#: ../src/ui/dialog/transformation.cpp:84
+#: ../src/ui/dialog/transformation.cpp:80
msgid "Horizontal skew angle (positive = counterclockwise), or absolute displacement, or percentage displacement"
msgstr "Horizontālās ĆĄÄ·iebĆĄanas leƆķis (pozÄ«tÄ«vs = pretēji pulksteƆrādÄ«tājam), vai absolĆ«tais pārvietojums, vai procentuālais pārvietojums"
-#: ../src/ui/dialog/transformation.cpp:86
+#: ../src/ui/dialog/transformation.cpp:82
msgid "Vertical skew angle (positive = counterclockwise), or absolute displacement, or percentage displacement"
msgstr "Vertikālās ĆĄÄ·iebĆĄanas leƆķis (pozÄ«tÄ«vs = pretēji pulksteƆrādÄ«tājam), vai absolĆ«tais pārvietojums, vai procentuālais pārvietojums"
-#: ../src/ui/dialog/transformation.cpp:89
+#: ../src/ui/dialog/transformation.cpp:85
msgid "Transformation matrix element A"
msgstr "Pārveidoƥanas matricas elements A"
-#: ../src/ui/dialog/transformation.cpp:90
+#: ../src/ui/dialog/transformation.cpp:86
msgid "Transformation matrix element B"
msgstr "Pārveidoƥanas matricas elements B"
-#: ../src/ui/dialog/transformation.cpp:91
+#: ../src/ui/dialog/transformation.cpp:87
msgid "Transformation matrix element C"
msgstr "Pārveidoƥanas matricas elements C"
-#: ../src/ui/dialog/transformation.cpp:92
+#: ../src/ui/dialog/transformation.cpp:88
msgid "Transformation matrix element D"
msgstr "Pārveidoƥanas matricas elements D"
-#: ../src/ui/dialog/transformation.cpp:93
+#: ../src/ui/dialog/transformation.cpp:89
msgid "Transformation matrix element E"
msgstr "Pārveidoƥanas matricas elements E"
-#: ../src/ui/dialog/transformation.cpp:94
+#: ../src/ui/dialog/transformation.cpp:90
msgid "Transformation matrix element F"
msgstr "Pārveidoƥanas matricas elements F"
-#: ../src/ui/dialog/transformation.cpp:99
+#: ../src/ui/dialog/transformation.cpp:95
msgid "Rela_tive move"
msgstr "Rela_tīvais pārvietojums"
-#: ../src/ui/dialog/transformation.cpp:99
+#: ../src/ui/dialog/transformation.cpp:95
msgid "Add the specified relative displacement to the current position; otherwise, edit the current absolute position directly"
msgstr "Pievienot paĆĄreizējam novietojumam norādÄ«to relatÄ«vo nobÄ«di; pretējā gadÄ«jumā labot paĆĄreizējo absolĆ«to novietojumu"
-#: ../src/ui/dialog/transformation.cpp:100
+#: ../src/ui/dialog/transformation.cpp:96
msgid "_Scale proportionally"
msgstr "Mērogot _proporcionāli"
-#: ../src/ui/dialog/transformation.cpp:100
+#: ../src/ui/dialog/transformation.cpp:96
msgid "Preserve the width/height ratio of the scaled objects"
msgstr "Saglabāt platuma/augstuma attiecību mērogotajiem objektiem"
-#: ../src/ui/dialog/transformation.cpp:101
+#: ../src/ui/dialog/transformation.cpp:97
msgid "Apply to each _object separately"
msgstr "Pielietot katram _objektam atseviĆĄÄ·i"
-#: ../src/ui/dialog/transformation.cpp:101
+#: ../src/ui/dialog/transformation.cpp:97
msgid "Apply the scale/rotate/skew to each selected object separately; otherwise, transform the selection as a whole"
msgstr "Pielietot mērogoĆĄanu/grieĆĄanu/ĆĄÄ·iebĆĄanu katram atlasÄ«tajam objektam atseviĆĄÄ·i; pretējā gadÄ«jumā - pārveidot atlasÄ«to kā vienu veselu"
-#: ../src/ui/dialog/transformation.cpp:102
+#: ../src/ui/dialog/transformation.cpp:98
msgid "Edit c_urrent matrix"
msgstr "Labot paơreizējo matric_u"
-#: ../src/ui/dialog/transformation.cpp:102
+#: ../src/ui/dialog/transformation.cpp:98
msgid "Edit the current transform= matrix; otherwise, post-multiply transform= by this matrix"
msgstr "Labojiet paĆĄreizējo transform= matricu; pretējā gadÄ«jumā - vēlāk reiziniet transform= ar ĆĄo matricu"
-#: ../src/ui/dialog/transformation.cpp:115
+#: ../src/ui/dialog/transformation.cpp:111
msgid "_Scale"
msgstr "_Mērogot"
-#: ../src/ui/dialog/transformation.cpp:118
+#: ../src/ui/dialog/transformation.cpp:114
msgid "_Rotate"
msgstr "Pag_riezt"
-#: ../src/ui/dialog/transformation.cpp:121
+#: ../src/ui/dialog/transformation.cpp:117
msgid "Ske_w"
msgstr "Ć Ä·ie_bt"
-#: ../src/ui/dialog/transformation.cpp:124
+#: ../src/ui/dialog/transformation.cpp:120
msgid "Matri_x"
msgstr "Matri_ca"
-#: ../src/ui/dialog/transformation.cpp:148
+#: ../src/ui/dialog/transformation.cpp:144
msgid "Reset the values on the current tab to defaults"
msgstr "AtiestatÄ«t vērtÄ«bas paĆĄreizējā ĆĄÄ·irklÄ« uz noklusētajām"
-#: ../src/ui/dialog/transformation.cpp:155
+#: ../src/ui/dialog/transformation.cpp:151
msgid "Apply transformation to selection"
msgstr "Pielietot pārveidojumu atlasītajam"
-#: ../src/ui/dialog/transformation.cpp:331
+#: ../src/ui/dialog/transformation.cpp:327
msgid "Rotate in a counterclockwise direction"
msgstr "Pagriezt pretēji pulksteƆrādÄ«tājam"
-#: ../src/ui/dialog/transformation.cpp:337
+#: ../src/ui/dialog/transformation.cpp:333
msgid "Rotate in a clockwise direction"
msgstr "Pagriezt pa pulksteƆrādÄ«tājam"
-#: ../src/ui/dialog/transformation.cpp:907 ../src/ui/dialog/transformation.cpp:918 ../src/ui/dialog/transformation.cpp:932 ../src/ui/dialog/transformation.cpp:951 ../src/ui/dialog/transformation.cpp:962 ../src/ui/dialog/transformation.cpp:972
-#: ../src/ui/dialog/transformation.cpp:996
+#: ../src/ui/dialog/transformation.cpp:906 ../src/ui/dialog/transformation.cpp:917 ../src/ui/dialog/transformation.cpp:931 ../src/ui/dialog/transformation.cpp:950 ../src/ui/dialog/transformation.cpp:961 ../src/ui/dialog/transformation.cpp:971
+#: ../src/ui/dialog/transformation.cpp:995
msgid "Transform matrix is singular, <b>not used</b>."
msgstr "Pārveidoƥanas matrica ir singulāra, <b>netiek izmantota</b>."
@@ -19774,7 +19734,7 @@ msgid "Enter group #%1"
msgstr "Ievadiet (ieejiet) grupu(ā) #%1"
#. Item dialog
-#: ../src/ui/interface.cpp:1641 ../src/verbs.cpp:2932
+#: ../src/ui/interface.cpp:1641 ../src/verbs.cpp:2901
msgid "_Object Properties..."
msgstr "_Objekta īpaƥības..."
@@ -19847,7 +19807,7 @@ msgid "Release C_lip"
msgstr "Atbrīvot apgrieƥanas kontƫru"
#. Group
-#: ../src/ui/interface.cpp:1790 ../src/verbs.cpp:2565
+#: ../src/ui/interface.cpp:1790 ../src/verbs.cpp:2534
msgid "_Group"
msgstr "_Grupēt"
@@ -19856,137 +19816,137 @@ msgid "Create link"
msgstr "Izveidot saiti"
#. Ungroup
-#: ../src/ui/interface.cpp:1896 ../src/verbs.cpp:2567
+#: ../src/ui/interface.cpp:1896 ../src/verbs.cpp:2536
msgid "_Ungroup"
msgstr "_Atgrupēt"
#. Link dialog
-#: ../src/ui/interface.cpp:1921
+#: ../src/ui/interface.cpp:1920
msgid "Link _Properties..."
msgstr "Saites ī_paƥības..."
#. Select item
-#: ../src/ui/interface.cpp:1927
+#: ../src/ui/interface.cpp:1926
msgid "_Follow Link"
msgstr "Se_kot saitei"
#. Reset transformations
-#: ../src/ui/interface.cpp:1933
+#: ../src/ui/interface.cpp:1932
msgid "_Remove Link"
msgstr "_Aizvākt saiti"
-#: ../src/ui/interface.cpp:1964
+#: ../src/ui/interface.cpp:1963
msgid "Remove link"
msgstr "Aizvākt saiti"
#. Image properties
-#: ../src/ui/interface.cpp:1975
+#: ../src/ui/interface.cpp:1973
msgid "Image _Properties..."
msgstr "Attēla Ä«_paĆĄÄ«bas..."
#. Edit externally
-#: ../src/ui/interface.cpp:1981
+#: ../src/ui/interface.cpp:1979
msgid "Edit Externally..."
msgstr "Labot ārējā redaktorā..."
#. Trace Bitmap
#. TRANSLATORS: "to trace" means "to convert a bitmap to vector graphics" (to vectorize)
-#: ../src/ui/interface.cpp:1990 ../src/verbs.cpp:2628
+#: ../src/ui/interface.cpp:1988 ../src/verbs.cpp:2597
msgid "_Trace Bitmap..."
msgstr "Vek_torizēt bitkarti..."
#. Trace Pixel Art
-#: ../src/ui/interface.cpp:1999
+#: ../src/ui/interface.cpp:1997
msgid "Trace Pixel Art"
msgstr "Vektorizēt punktu attēlu"
-#: ../src/ui/interface.cpp:2009
+#: ../src/ui/interface.cpp:2007
msgctxt "Context menu"
msgid "Embed Image"
msgstr "Iegult attēlu"
-#: ../src/ui/interface.cpp:2020
+#: ../src/ui/interface.cpp:2018
msgctxt "Context menu"
msgid "Extract Image..."
msgstr "Ekstraģēt attēlu..."
#. Item dialog
#. Fill and Stroke dialog
-#: ../src/ui/interface.cpp:2165 ../src/ui/interface.cpp:2185 ../src/verbs.cpp:2895
+#: ../src/ui/interface.cpp:2162 ../src/ui/interface.cpp:2182 ../src/verbs.cpp:2864
msgid "_Fill and Stroke..."
msgstr "_Aizpildījums un apmale..."
#. Edit Text dialog
-#: ../src/ui/interface.cpp:2191 ../src/verbs.cpp:2914
+#: ../src/ui/interface.cpp:2188 ../src/verbs.cpp:2883
msgid "_Text and Font..."
msgstr "_Teksts un fonts"
#. Spellcheck dialog
-#: ../src/ui/interface.cpp:2197 ../src/verbs.cpp:2922
+#: ../src/ui/interface.cpp:2194 ../src/verbs.cpp:2891
msgid "Check Spellin_g..."
msgstr "Pārbaudīt pareizrakstību"
-#: ../src/ui/object-edit.cpp:464
+#: ../src/ui/object-edit.cpp:450
msgid "Adjust the <b>horizontal rounding</b> radius; with <b>Ctrl</b> to make the vertical radius the same"
msgstr "PieskaƆot <b>horizontālā noapaÄŒojuma</b> rādiusu; ar <b>Ctrl</b> - pieĆĄÄ·irt vertikālajam rādiusam to paĆĄu vērtÄ«bu"
-#: ../src/ui/object-edit.cpp:469
+#: ../src/ui/object-edit.cpp:455
msgid "Adjust the <b>vertical rounding</b> radius; with <b>Ctrl</b> to make the horizontal radius the same"
msgstr "PieskaƆot <b>vertikālā noapaÄŒojuma</b> rādiusu; ar <b>Ctrl</b> - pieĆĄÄ·irt horizontālajam rādiusam to paĆĄu vērtÄ«bu"
-#: ../src/ui/object-edit.cpp:474 ../src/ui/object-edit.cpp:479
+#: ../src/ui/object-edit.cpp:460 ../src/ui/object-edit.cpp:465
msgid "Adjust the <b>width and height</b> of the rectangle; with <b>Ctrl</b> to lock ratio or stretch in one dimension only"
msgstr "PieskaƆot taisnstĆ«ra <b>augstumu un platumu</b>; ar <b>Ctrl</b> - saglabāt malu attiecÄ«bas vai mainÄ«t tikai vienu no lielumiem"
-#: ../src/ui/object-edit.cpp:726 ../src/ui/object-edit.cpp:730 ../src/ui/object-edit.cpp:734 ../src/ui/object-edit.cpp:738
+#: ../src/ui/object-edit.cpp:712 ../src/ui/object-edit.cpp:716 ../src/ui/object-edit.cpp:720 ../src/ui/object-edit.cpp:724
msgid "Resize box in X/Y direction; with <b>Shift</b> along the Z axis; with <b>Ctrl</b> to constrain to the directions of edges or diagonals"
msgstr "MainÄ«t paralēlskaldƆa izmērus X/Y virzienos; ar <b>Shift</b> - gar Z asi; ar <b>Ctrl</b> - ierobeĆŸot ar malu vai diagonāČu virzienu"
-#: ../src/ui/object-edit.cpp:742 ../src/ui/object-edit.cpp:746 ../src/ui/object-edit.cpp:750 ../src/ui/object-edit.cpp:754
+#: ../src/ui/object-edit.cpp:728 ../src/ui/object-edit.cpp:732 ../src/ui/object-edit.cpp:736 ../src/ui/object-edit.cpp:740
msgid "Resize box along the Z axis; with <b>Shift</b> in X/Y direction; with <b>Ctrl</b> to constrain to the directions of edges or diagonals"
msgstr "MainÄ«t paralēlskaldƆa izmērus Z virzienā; ar <b>Shift</b> - gar X/Y asÄ«m; ar <b>Ctrl</b> - ierobeĆŸot ar malu vai diagonāČu virzienu"
-#: ../src/ui/object-edit.cpp:758
+#: ../src/ui/object-edit.cpp:744
msgid "Move the box in perspective"
msgstr "Pārvietot paralēlskaldni perspektīvā"
-#: ../src/ui/object-edit.cpp:997
+#: ../src/ui/object-edit.cpp:983
msgid "Adjust ellipse <b>width</b>, with <b>Ctrl</b> to make circle"
msgstr "MainÄ«t elipses <b>platumu</b>, ar <b>Ctrl</b> - pārveidot par riƆķi"
-#: ../src/ui/object-edit.cpp:1001
+#: ../src/ui/object-edit.cpp:987
msgid "Adjust ellipse <b>height</b>, with <b>Ctrl</b> to make circle"
msgstr "MainÄ«t elipses <b>augstumu</b>, ar <b>Ctrl</b> - pārveidot par riƆķi"
-#: ../src/ui/object-edit.cpp:1005
+#: ../src/ui/object-edit.cpp:991
msgid "Position the <b>start point</b> of the arc or segment; with <b>Ctrl</b> to snap angle; drag <b>inside</b> the ellipse for arc, <b>outside</b> for segment"
msgstr "Novietojiet loka vai segmenta <b>sākumpunktu</b>; ar <b>Ctrl</b> - pievilkt leƆķim; lai iegĆ«tu loku, velciet elipses <b>iekĆĄpusē</b>; lai iegĆ«tu sektoru - <b>ārpusē</b>"
-#: ../src/ui/object-edit.cpp:1010
+#: ../src/ui/object-edit.cpp:996
msgid "Position the <b>end point</b> of the arc or segment; with <b>Ctrl</b> to snap angle; drag <b>inside</b> the ellipse for arc, <b>outside</b> for segment"
msgstr "Novietojiet loka vai segmenta <b>beigu punktu</b>; ar <b>Ctrl</b> - pievilkt leƆķim; lai iegĆ«tu loku, velciet elipses <b>iekĆĄpusē</b>; lai iegĆ«tu sektoru - <b>ārpusē</b>"
-#: ../src/ui/object-edit.cpp:1156
+#: ../src/ui/object-edit.cpp:1142
msgid "Adjust the <b>tip radius</b> of the star or polygon; with <b>Shift</b> to round; with <b>Alt</b> to randomize"
msgstr "PieskaƆot zvaigznes vai daudzstĆ«ra <b>galotƆu rādiusu</b>; ar <b>Shift</b> - noapaÄŒot; ar <b>Alt</b> - daĆŸÄdot"
-#: ../src/ui/object-edit.cpp:1164
+#: ../src/ui/object-edit.cpp:1150
msgid "Adjust the <b>base radius</b> of the star; with <b>Ctrl</b> to keep star rays radial (no skew); with <b>Shift</b> to round; with <b>Alt</b> to randomize"
msgstr "PieskaƆot zvaigznes <b>bāzes rādiusu</b>; ar <b>Ctrl</b> - saglabāt starus radiālus (nenoĆĄÄ·iebtus); ar <b>Shift</b> - noapaÄŒot; ar <b>Alt</b> - daĆŸÄdot"
-#: ../src/ui/object-edit.cpp:1359
+#: ../src/ui/object-edit.cpp:1345
msgid "Roll/unroll the spiral from <b>inside</b>; with <b>Ctrl</b> to snap angle; with <b>Alt</b> to converge/diverge"
msgstr "SatÄ«t/attÄ«t spirāli no <b>iekĆĄpuses</b>; ar <b>Ctrl</b> - pievilkt leƆķim; ar <b>Alt</b> - savirzÄ«t/atvirzÄ«t"
-#: ../src/ui/object-edit.cpp:1363
+#: ../src/ui/object-edit.cpp:1349
msgid "Roll/unroll the spiral from <b>outside</b>; with <b>Ctrl</b> to snap angle; with <b>Shift</b> to scale/rotate; with <b>Alt</b> to lock radius"
msgstr "SatÄ«t/attÄ«t spirāli no <b>ārpuses</b>; ar <b>Ctrl</b> - pievilkt leƆķim; ar <b>Shift</b> - mērogot/griezt; ar <b>Alt</b> - fiksēt rādiusu"
-#: ../src/ui/object-edit.cpp:1410
+#: ../src/ui/object-edit.cpp:1396
msgid "Adjust the <b>offset distance</b>"
msgstr "PieskaƆojiet <b>pārbÄ«des attālumu</b>"
-#: ../src/ui/object-edit.cpp:1447
+#: ../src/ui/object-edit.cpp:1433
msgid "Drag to resize the <b>flowed text frame</b>"
msgstr "Velciet, lai mainītu <b>ar tekstu aizpildītā rāmja</b> izmēru."
@@ -20022,7 +19982,7 @@ msgstr "<b>Bezjē posms</b>: velciet, lai veidotu posmu, dubultklikĆĄÄ·is - lai
msgid "Retract handles"
msgstr "Ievilkt mezglus"
-#: ../src/ui/tool/multi-path-manipulator.cpp:315 ../src/ui/tool/node.cpp:296
+#: ../src/ui/tool/multi-path-manipulator.cpp:315 ../src/ui/tool/node.cpp:295
msgid "Change node type"
msgstr "Mainīt mezgla tipu"
@@ -20102,196 +20062,196 @@ msgstr "Apmest mezglus horizontāli"
msgid "Flip nodes vertically"
msgstr "Apmest mezglus vertikāli"
-#: ../src/ui/tool/node.cpp:271
+#: ../src/ui/tool/node.cpp:270
msgid "Cusp node handle"
msgstr "Stƫra mezgla turis"
-#: ../src/ui/tool/node.cpp:272
+#: ../src/ui/tool/node.cpp:271
msgid "Smooth node handle"
msgstr "Gludā mezgla turis"
-#: ../src/ui/tool/node.cpp:273
+#: ../src/ui/tool/node.cpp:272
msgid "Symmetric node handle"
msgstr "Simetriskā mezgla turis"
-#: ../src/ui/tool/node.cpp:274
+#: ../src/ui/tool/node.cpp:273
msgid "Auto-smooth node handle"
msgstr "Auto-gludā mezgla turis"
-#: ../src/ui/tool/node.cpp:493
+#: ../src/ui/tool/node.cpp:492
msgctxt "Path handle tip"
msgid "more: Shift, Ctrl, Alt"
msgstr "vairāk: Shift, Ctrl, Alt"
-#: ../src/ui/tool/node.cpp:495
+#: ../src/ui/tool/node.cpp:494
msgctxt "Path handle tip"
msgid "more: Ctrl"
msgstr "vairāk: Ctrl"
-#: ../src/ui/tool/node.cpp:497
+#: ../src/ui/tool/node.cpp:496
msgctxt "Path handle tip"
msgid "more: Ctrl, Alt"
msgstr "vairāk: Ctrl, Alt"
-#: ../src/ui/tool/node.cpp:503
+#: ../src/ui/tool/node.cpp:502
#, c-format
msgctxt "Path handle tip"
msgid "<b>Shift+Ctrl+Alt</b>: preserve length and snap rotation angle to %g° increments while rotating both handles"
msgstr "<b>Shift+Ctrl+Alt</b>: saglabāt garumu un pievilkt grieĆĄanas leƆķi ik %g° pieaugumam, grieĆŸot abus turus"
-#: ../src/ui/tool/node.cpp:508
+#: ../src/ui/tool/node.cpp:507
#, c-format
msgctxt "Path handle tip"
msgid "<b>Ctrl+Alt</b>: preserve length and snap rotation angle to %g° increments"
msgstr "<b>Ctrl+Alt</b>: saglabāt garumu un pievilkt grieĆĄanas leƆķi ik %g° pieaugumam"
-#: ../src/ui/tool/node.cpp:514
+#: ../src/ui/tool/node.cpp:513
msgctxt "Path handle tip"
msgid "<b>Shift+Alt</b>: preserve handle length and rotate both handles"
msgstr "<b>Shift+Alt</b>: saglabāt turu garumu un griezt abus turus"
-#: ../src/ui/tool/node.cpp:517
+#: ../src/ui/tool/node.cpp:516
msgctxt "Path handle tip"
msgid "<b>Alt</b>: preserve handle length while dragging"
msgstr "<b>Alt</b>: velkot saglabāt tura garumu"
-#: ../src/ui/tool/node.cpp:524
+#: ../src/ui/tool/node.cpp:523
#, c-format
msgctxt "Path handle tip"
msgid "<b>Shift+Ctrl</b>: snap rotation angle to %g° increments and rotate both handles"
msgstr "<b>Shift+Ctrl</b>: pievilkt grieĆĄanas leƆķi ik %g° pieaugumam un griezt abus turus"
-#: ../src/ui/tool/node.cpp:528
+#: ../src/ui/tool/node.cpp:527
#, fuzzy
msgctxt "Path handle tip"
msgid "<b>Ctrl</b>: Move handle by his actual steps in BSpline Live Effect"
msgstr "<b>Ctrl</b>: Move handle by his actual steps in BSpline Live Effect"
-#: ../src/ui/tool/node.cpp:531
+#: ../src/ui/tool/node.cpp:530
#, c-format
msgctxt "Path handle tip"
msgid "<b>Ctrl</b>: snap rotation angle to %g° increments, click to retract"
msgstr "<b>Ctrl</b>: pievilkt grieĆĄanas leƆķi ik %g° pieaugumam, uzklikĆĄÄ·iniet - lai atsauktu"
-#: ../src/ui/tool/node.cpp:536
+#: ../src/ui/tool/node.cpp:535
msgctxt "Path hande tip"
msgid "<b>Shift</b>: rotate both handles by the same angle"
msgstr "<b>Shift</b>: pagriezt abus turus par vienādu leƆķi"
-#: ../src/ui/tool/node.cpp:539
+#: ../src/ui/tool/node.cpp:538
msgctxt "Path hande tip"
msgid "<b>Shift</b>: move handle"
msgstr "<b>Shift</b>: pārvietot turi"
-#: ../src/ui/tool/node.cpp:546 ../src/ui/tool/node.cpp:550
+#: ../src/ui/tool/node.cpp:545 ../src/ui/tool/node.cpp:549
#, c-format
msgctxt "Path handle tip"
msgid "<b>Auto node handle</b>: drag to convert to smooth node (%s)"
msgstr "<b>Auto mezgla turis</b>: velciet, lai pārvērstu par gludo mezglu (%s)"
-#: ../src/ui/tool/node.cpp:553
+#: ../src/ui/tool/node.cpp:552
#, fuzzy, c-format
msgctxt "Path handle tip"
-msgid "<b>BSpline node handle</b>: Shift to drag, double click to reset (%s)"
+msgid "<b>BSpline node handle</b>: Shift to drag, double click to reset (%s). %g power"
msgstr "<b>Auto mezgla turis</b>: velciet, lai pārvērstu par gludo mezglu (%s)"
-#: ../src/ui/tool/node.cpp:573
+#: ../src/ui/tool/node.cpp:572
#, c-format
msgctxt "Path handle tip"
msgid "Move handle by %s, %s; angle %.2f°, length %s"
msgstr "Pārvietot turi par %s, %s; leƆki - %.2f°, garumu - %s"
-#: ../src/ui/tool/node.cpp:1447
+#: ../src/ui/tool/node.cpp:1448
msgctxt "Path node tip"
msgid "<b>Shift</b>: drag out a handle, click to toggle selection"
msgstr "<b>Shift</b>: izvilkt turi; klikĆĄÄ·iniet, lai pārslēgtu atlasi"
-#: ../src/ui/tool/node.cpp:1449
+#: ../src/ui/tool/node.cpp:1450
msgctxt "Path node tip"
msgid "<b>Shift</b>: click to toggle selection"
msgstr "<b>Shift</b>: klikĆĄÄ·is, lai pārslēgtu atlasi"
-#: ../src/ui/tool/node.cpp:1454
+#: ../src/ui/tool/node.cpp:1455
msgctxt "Path node tip"
msgid "<b>Ctrl+Alt</b>: move along handle lines, click to delete node"
msgstr "<b>Ctrl+Alt</b>: pārvietoties gar tura lÄ«nijām, uzklikĆĄÄ·iniet, lai dzēstu mezglu"
-#: ../src/ui/tool/node.cpp:1457
+#: ../src/ui/tool/node.cpp:1458
msgctxt "Path node tip"
msgid "<b>Ctrl</b>: move along axes, click to change node type"
msgstr "<b>Ctrl</b>: pārvietoties gar asīm, uzklikƥķiniet, lai mainītu mezgla tipu"
-#: ../src/ui/tool/node.cpp:1461
+#: ../src/ui/tool/node.cpp:1462
msgctxt "Path node tip"
msgid "<b>Alt</b>: sculpt nodes"
msgstr "<b>Alt</b>: veidoĆĄanas mezgli"
-#: ../src/ui/tool/node.cpp:1469
+#: ../src/ui/tool/node.cpp:1470
#, c-format
msgctxt "Path node tip"
msgid "<b>%s</b>: drag to shape the path (more: Shift, Ctrl, Alt)"
msgstr "<b>%s</b>: velciet, lai veidotu ceČu (vairāk: Shift, Ctrl, Alt)"
-#: ../src/ui/tool/node.cpp:1472
+#: ../src/ui/tool/node.cpp:1473
#, fuzzy, c-format
msgctxt "Path node tip"
-msgid "<b>BSpline node</b>: %g weight, drag to shape the path (more: Shift, Ctrl, Alt)"
+msgid "<b>BSpline node</b>: drag to shape the path (more: Shift, Ctrl, Alt). %g power"
msgstr "<b>%s</b>: velciet, lai veidotu ceČu (vairāk: Shift, Ctrl, Alt)"
-#: ../src/ui/tool/node.cpp:1475
+#: ../src/ui/tool/node.cpp:1476
#, c-format
msgctxt "Path node tip"
msgid "<b>%s</b>: drag to shape the path, click to toggle scale/rotation handles (more: Shift, Ctrl, Alt)"
msgstr "<b>%s</b>: velciet, lai veidotu ceÄŒu; uzklikĆĄÄ·iniet, lai pārslēgtu mērogoĆĄanas/grieĆĄanas turus (vairāk: Shift, Ctrl, Alt)"
-#: ../src/ui/tool/node.cpp:1479
+#: ../src/ui/tool/node.cpp:1480
#, c-format
msgctxt "Path node tip"
msgid "<b>%s</b>: drag to shape the path, click to select only this node (more: Shift, Ctrl, Alt)"
msgstr "<b>%s</b>: velciet, lai veidotu ceÄŒu; uzklikĆĄÄ·iniet, lai atlasÄ«tu tikai ĆĄo mezglu (vairāk: Shift, Ctrl, Alt)"
-#: ../src/ui/tool/node.cpp:1482
-#, fuzzy
+#: ../src/ui/tool/node.cpp:1483
+#, fuzzy, c-format
msgctxt "Path node tip"
-msgid "<b>BSpline node</b>: drag to shape the path, click to select only this node (more: Shift, Ctrl, Alt)"
+msgid "<b>BSpline node</b>: drag to shape the path, click to select only this node (more: Shift, Ctrl, Alt). %g power"
msgstr "<b>%s</b>: velciet, lai veidotu ceÄŒu; uzklikĆĄÄ·iniet, lai atlasÄ«tu tikai ĆĄo mezglu (vairāk: Shift, Ctrl, Alt)"
-#: ../src/ui/tool/node.cpp:1495
+#: ../src/ui/tool/node.cpp:1496
#, c-format
msgctxt "Path node tip"
msgid "Move node by %s, %s"
msgstr "Pārvietot mezglu par %s, %s"
-#: ../src/ui/tool/node.cpp:1506
+#: ../src/ui/tool/node.cpp:1507
msgid "Symmetric node"
msgstr "Simetrisks mezgls"
-#: ../src/ui/tool/node.cpp:1507
+#: ../src/ui/tool/node.cpp:1508
msgid "Auto-smooth node"
msgstr "Auto-gludais mezgls"
-#: ../src/ui/tool/path-manipulator.cpp:836
+#: ../src/ui/tool/path-manipulator.cpp:837
msgid "Scale handle"
msgstr "Mērogoơanas turis"
-#: ../src/ui/tool/path-manipulator.cpp:860
+#: ../src/ui/tool/path-manipulator.cpp:861
msgid "Rotate handle"
msgstr "GrieĆĄanas turis "
#. We need to call MPM's method because it could have been our last node
-#: ../src/ui/tool/path-manipulator.cpp:1524 ../src/widgets/node-toolbar.cpp:397
+#: ../src/ui/tool/path-manipulator.cpp:1534 ../src/widgets/node-toolbar.cpp:397
msgid "Delete node"
msgstr "Dzēst mezglu"
-#: ../src/ui/tool/path-manipulator.cpp:1532
+#: ../src/ui/tool/path-manipulator.cpp:1542
msgid "Cycle node type"
msgstr "MainÄ«t mezgla tipu uz riƆķi"
-#: ../src/ui/tool/path-manipulator.cpp:1547
+#: ../src/ui/tool/path-manipulator.cpp:1557
msgid "Drag handle"
msgstr "VilkĆĄanas turis"
-#: ../src/ui/tool/path-manipulator.cpp:1556
+#: ../src/ui/tool/path-manipulator.cpp:1566
msgid "Retract handle"
msgstr "Atsaukt turi"
@@ -20447,7 +20407,7 @@ msgstr "<b>Uzklikƥķiniet</b> vai <b>uzklikƥķiniet un velciet</b>, lai sāktu
msgid "<b>Drag</b> to draw a calligraphic stroke; with <b>Ctrl</b> to track a guide path. <b>Arrow keys</b> adjust width (left/right) and angle (up/down)."
msgstr "<b>Velciet</b>, lai izveidotu kaligrāfisku apmali; ar <b>Ctrl</b> - sekot palÄ«glÄ«nijas ceÄŒam. <b>Ar bultiƆām</b> pieskaƆojiet platumu (kreisā/labā) un leƆķi (augĆĄup/lejup)."
-#: ../src/ui/tools-switch.cpp:107 ../src/ui/tools/text-tool.cpp:1584
+#: ../src/ui/tools-switch.cpp:107 ../src/ui/tools/text-tool.cpp:1583
msgid "<b>Click</b> to select or create text, <b>drag</b> to create flowed text; then type."
msgstr "<b>Uzklikƥķiniet</b>, lai atlasītu vai izveidotu tekstu, <b>velciet</b>, lai izveidotu teksta aizpildījumu un tad rakstiet."
@@ -20493,7 +20453,7 @@ msgstr "Izvēlieties apakĆĄrÄ«ku no rÄ«kjoslas"
msgid "<b>Ctrl</b>: make circle or integer-ratio ellipse, snap arc/segment angle"
msgstr "<b>Ctrl</b>: izveidot riƆķi vai veselu skaitÄŒu attiecÄ«bu elipsi, pievilkt loka/segmenta leƆķi"
-#: ../src/ui/tools/arc-tool.cpp:243 ../src/ui/tools/rect-tool.cpp:279
+#: ../src/ui/tools/arc-tool.cpp:243 ../src/ui/tools/rect-tool.cpp:278
msgid "<b>Shift</b>: draw around the starting point"
msgstr "<b>Shift</b>: zīmēt apkārt sākumpunktam"
@@ -20572,15 +20532,15 @@ msgstr "Pabeidz savienotāju"
msgid "<b>Connector endpoint</b>: drag to reroute or connect to new shapes"
msgstr "<b>Savienotāja beigu punkts</b>: velciet, lai manītu marƥrutu vai savienotu ar jaunām figƫrām"
-#: ../src/ui/tools/connector-tool.cpp:1326
+#: ../src/ui/tools/connector-tool.cpp:1324
msgid "Select <b>at least one non-connector object</b>."
msgstr "Atlasiet <b>vismaz vienu objektu, kas nav savienotājs</b>."
-#: ../src/ui/tools/connector-tool.cpp:1331 ../src/widgets/connector-toolbar.cpp:314
+#: ../src/ui/tools/connector-tool.cpp:1329 ../src/widgets/connector-toolbar.cpp:310
msgid "Make connectors avoid selected objects"
msgstr "Likt savienotājiem izvairīties no atlasītajiem objektiem"
-#: ../src/ui/tools/connector-tool.cpp:1332 ../src/widgets/connector-toolbar.cpp:324
+#: ../src/ui/tools/connector-tool.cpp:1330 ../src/widgets/connector-toolbar.cpp:320
msgid "Make connectors ignore selected objects"
msgstr "Likt savienotājiem neƆemt vērā atlasÄ«tos objektus"
@@ -20614,39 +20574,39 @@ msgstr "Pielietot izvēlēto krāsu"
msgid "<b>Drawing</b> an eraser stroke"
msgstr "<b>ZÄ«mē</b> dzēơgumijas lÄ«niju"
-#: ../src/ui/tools/eraser-tool.cpp:760
+#: ../src/ui/tools/eraser-tool.cpp:753
msgid "Draw eraser stroke"
msgstr "ZÄ«mēt dzēơgumijas lÄ«niju"
-#: ../src/ui/tools/flood-tool.cpp:182
+#: ../src/ui/tools/flood-tool.cpp:90
msgid "Visible Colors"
msgstr "Redzamās krāsas"
-#: ../src/ui/tools/flood-tool.cpp:200
+#: ../src/ui/tools/flood-tool.cpp:102
msgctxt "Flood autogap"
msgid "None"
msgstr "Nekas"
-#: ../src/ui/tools/flood-tool.cpp:201
+#: ../src/ui/tools/flood-tool.cpp:103
msgctxt "Flood autogap"
msgid "Small"
msgstr "Mazs"
-#: ../src/ui/tools/flood-tool.cpp:202
+#: ../src/ui/tools/flood-tool.cpp:104
msgctxt "Flood autogap"
msgid "Medium"
msgstr "Vidējs"
-#: ../src/ui/tools/flood-tool.cpp:203
+#: ../src/ui/tools/flood-tool.cpp:105
msgctxt "Flood autogap"
msgid "Large"
msgstr "Liels"
-#: ../src/ui/tools/flood-tool.cpp:425
+#: ../src/ui/tools/flood-tool.cpp:415
msgid "<b>Too much inset</b>, the result is empty."
msgstr "<b>Saīsināts par daudz</b>, rezultāts ir tukƥs."
-#: ../src/ui/tools/flood-tool.cpp:466
+#: ../src/ui/tools/flood-tool.cpp:456
#, c-format
msgid "Area filled, path with <b>%d</b> node created and unioned with selection."
msgid_plural "Area filled, path with <b>%d</b> nodes created and unioned with selection."
@@ -20654,7 +20614,7 @@ msgstr[0] "Laukums aizpildÄ«ts, izveidots ceÄŒĆĄ ar <b>%d</b> mezglu un apvienot
msgstr[1] "Laukums aizpildÄ«ts, izveidots ceÄŒĆĄ ar <b>%d</b> mezgliem un apvienots ar atlasÄ«to."
msgstr[2] "Laukums aizpildÄ«ts, izveidots ceÄŒĆĄ ar <b>%d</b> mezgliem un apvienots ar atlasÄ«to."
-#: ../src/ui/tools/flood-tool.cpp:472
+#: ../src/ui/tools/flood-tool.cpp:462
#, c-format
msgid "Area filled, path with <b>%d</b> node created."
msgid_plural "Area filled, path with <b>%d</b> nodes created."
@@ -20662,23 +20622,23 @@ msgstr[0] "Laukums aizpildÄ«ts, izveidots ceÄŒĆĄ ar <b>%d</b> mezglu."
msgstr[1] "Laukums aizpildÄ«ts, izveidots ceÄŒĆĄ ar <b>%d</b> mezgliem."
msgstr[2] "Laukums aizpildÄ«ts, izveidots ceÄŒĆĄ ar <b>%d</b> mezgliem."
-#: ../src/ui/tools/flood-tool.cpp:740 ../src/ui/tools/flood-tool.cpp:1050
+#: ../src/ui/tools/flood-tool.cpp:730 ../src/ui/tools/flood-tool.cpp:1040
msgid "<b>Area is not bounded</b>, cannot fill."
msgstr "<b>Laukums nav norobeĆŸots</b>, nav iespējams aizpildÄ«t."
-#: ../src/ui/tools/flood-tool.cpp:1055
+#: ../src/ui/tools/flood-tool.cpp:1045
msgid "<b>Only the visible part of the bounded area was filled.</b> If you want to fill all of the area, undo, zoom out, and fill again."
msgstr "<b>AizpildÄ«ta tikai redzamā norobeĆŸotā laukuma daÄŒa.</b> Ja vēlaties aizpildÄ«t visu laukumu, atsauciet darbÄ«bu, tāliniet un aizpildiet vēlreiz."
-#: ../src/ui/tools/flood-tool.cpp:1073 ../src/ui/tools/flood-tool.cpp:1224
+#: ../src/ui/tools/flood-tool.cpp:1063 ../src/ui/tools/flood-tool.cpp:1214
msgid "Fill bounded area"
msgstr "AizpildÄ«t norobeĆŸoto laukumu"
-#: ../src/ui/tools/flood-tool.cpp:1089
+#: ../src/ui/tools/flood-tool.cpp:1079
msgid "Set style on object"
msgstr "Iestatiet objekta stilu"
-#: ../src/ui/tools/flood-tool.cpp:1149
+#: ../src/ui/tools/flood-tool.cpp:1139
msgid "<b>Draw over</b> areas to add to fill, hold <b>Alt</b> for touch fill"
msgstr "<b>Velciet pāri</b> aizpildāmajiem laukumiem, turiet <b>Alt</b> aizpildīƥanai ar pieskārieniem"
@@ -20759,23 +20719,23 @@ msgstr[2] "Nav atlasīts <b>neviens</b> krāsu pārejas turis no %d %d atlasī
msgid "Simplify gradient"
msgstr "Vienkārƥot krāsu pāreju"
-#: ../src/ui/tools/gradient-tool.cpp:509
+#: ../src/ui/tools/gradient-tool.cpp:510
msgid "Create default gradient"
msgstr "Izveidot noklusēto krāsu pāreju"
-#: ../src/ui/tools/gradient-tool.cpp:568 ../src/ui/tools/mesh-tool.cpp:560
+#: ../src/ui/tools/gradient-tool.cpp:569 ../src/ui/tools/mesh-tool.cpp:561
msgid "<b>Draw around</b> handles to select them"
msgstr "<b>Velciet apkārt</b> turiem, lai tos atlasītu"
-#: ../src/ui/tools/gradient-tool.cpp:691
+#: ../src/ui/tools/gradient-tool.cpp:692
msgid "<b>Ctrl</b>: snap gradient angle"
msgstr "<b>Ctrl</b>: pievilkt krāsu pārejas leƆķi"
-#: ../src/ui/tools/gradient-tool.cpp:692
+#: ../src/ui/tools/gradient-tool.cpp:693
msgid "<b>Shift</b>: draw gradient around the starting point"
msgstr "<b>Shift</b>: zīmēt krāsu pāreju apkārt sākumpunktam"
-#: ../src/ui/tools/gradient-tool.cpp:946 ../src/ui/tools/mesh-tool.cpp:983
+#: ../src/ui/tools/gradient-tool.cpp:947 ../src/ui/tools/mesh-tool.cpp:984
#, c-format
msgid "<b>Gradient</b> for %d object; with <b>Ctrl</b> to snap angle"
msgid_plural "<b>Gradient</b> for %d objects; with <b>Ctrl</b> to snap angle"
@@ -20783,7 +20743,7 @@ msgstr[0] "<b>Krāsu pāreja</b> %d objektam; ar <b>Ctrl</b> pievilkt leƆķi"
msgstr[1] "<b>Krāsu pāreja</b> %d objektiem; ar <b>Ctrl</b> pievilkt leƆķi"
msgstr[2] "<b>Krāsu pāreja</b> %d objektiem; ar <b>Ctrl</b> pievilkt leƆķi"
-#: ../src/ui/tools/gradient-tool.cpp:950 ../src/ui/tools/mesh-tool.cpp:987
+#: ../src/ui/tools/gradient-tool.cpp:951 ../src/ui/tools/mesh-tool.cpp:988
msgid "Select <b>objects</b> on which to create gradient."
msgstr "Atlasiet <b>objektus</b>, kuriem izveidot krāsu pāreju."
@@ -20841,29 +20801,29 @@ msgstr "Nogludinātā tīkla stƫra krāsa."
msgid "Picked mesh corner color."
msgstr "Izvēlētā tÄ«kla stĆ«ra krāsa."
-#: ../src/ui/tools/mesh-tool.cpp:488
+#: ../src/ui/tools/mesh-tool.cpp:489
msgid "Create default mesh"
msgstr "Izveidot noklusēto tīklu"
-#: ../src/ui/tools/mesh-tool.cpp:708
+#: ../src/ui/tools/mesh-tool.cpp:709
msgid "FIXME<b>Ctrl</b>: snap mesh angle"
msgstr "LABOT<b>Ctrl</b>: piesaistes tÄ«kla leƆķis"
-#: ../src/ui/tools/mesh-tool.cpp:709
+#: ../src/ui/tools/mesh-tool.cpp:710
msgid "FIXME<b>Shift</b>: draw mesh around the starting point"
msgstr "LABOT<b>Shift</b>: zīmēt tīklu apkārt sākumpunktam"
-#: ../src/ui/tools/node-tool.cpp:602
+#: ../src/ui/tools/node-tool.cpp:601
msgctxt "Node tool tip"
msgid "<b>Shift</b>: drag to add nodes to the selection, click to toggle object selection"
msgstr "<b>Shift</b>: velciet, lai atlasÄ«tajam pievienotu mezglus, klikĆĄÄ·iniet, lai pārslēgtu objektu atlasi"
-#: ../src/ui/tools/node-tool.cpp:606
+#: ../src/ui/tools/node-tool.cpp:605
msgctxt "Node tool tip"
msgid "<b>Shift</b>: drag to add nodes to the selection"
msgstr "<b>Shift</b>: velciet, lai pievienotu mezglus atlasītajam"
-#: ../src/ui/tools/node-tool.cpp:618
+#: ../src/ui/tools/node-tool.cpp:617
#, c-format
msgid "<b>%u of %u</b> node selected."
msgid_plural "<b>%u of %u</b> nodes selected."
@@ -20871,39 +20831,39 @@ msgstr[0] "Izvēlēts <b>%u no %u</b>mezgliem."
msgstr[1] "Izvēlēti <b>%u no %u</b>mezgliem."
msgstr[2] "Izvēlēti <b>%u no %u</b>mezgliem."
-#: ../src/ui/tools/node-tool.cpp:624
+#: ../src/ui/tools/node-tool.cpp:623
#, c-format
msgctxt "Node tool tip"
msgid "%s Drag to select nodes, click to edit only this object (more: Shift)"
msgstr "%s Velciet, lai atlasītu mezglus, uzklikƥķiniet, lai labotu tikai ƥo objektu (vairāk: Shift)"
-#: ../src/ui/tools/node-tool.cpp:630
+#: ../src/ui/tools/node-tool.cpp:629
#, c-format
msgctxt "Node tool tip"
msgid "%s Drag to select nodes, click clear the selection"
msgstr "%s Velciet, lai atlasītu mezglus; lai atceltu atlasi, uzklikƥķiniet"
-#: ../src/ui/tools/node-tool.cpp:639
+#: ../src/ui/tools/node-tool.cpp:638
msgctxt "Node tool tip"
msgid "Drag to select nodes, click to edit only this object"
msgstr "Velciet, lai atlasītu mezglus, uzklikƥķiniet, lai labotu tikai ƥo objektu"
-#: ../src/ui/tools/node-tool.cpp:642
+#: ../src/ui/tools/node-tool.cpp:641
msgctxt "Node tool tip"
msgid "Drag to select nodes, click to clear the selection"
msgstr "Velciet, lai atlasītu mezglus; lai atceltu atlasi, uzklikƥķiniet"
-#: ../src/ui/tools/node-tool.cpp:647
+#: ../src/ui/tools/node-tool.cpp:646
msgctxt "Node tool tip"
msgid "Drag to select objects to edit, click to edit this object (more: Shift)"
msgstr "Velciet, lai atlasītu labojamos objektus, uzklikƥķiniet, lai labotu ƥo objektu (vairāk - Shift)"
-#: ../src/ui/tools/node-tool.cpp:650
+#: ../src/ui/tools/node-tool.cpp:649
msgctxt "Node tool tip"
msgid "Drag to select objects to edit"
msgstr "Velciet, lai atlasītu labojamos objektus"
-#: ../src/ui/tools/pen-tool.cpp:224 ../src/ui/tools/pencil-tool.cpp:457
+#: ../src/ui/tools/pen-tool.cpp:224 ../src/ui/tools/pencil-tool.cpp:454
msgid "Drawing cancelled"
msgstr "ZÄ«mēơana atcelta"
@@ -20924,18 +20884,16 @@ msgid "<b>Click</b> or <b>click and drag</b> to close and finish the path."
msgstr "<b>UzklikĆĄÄ·iniet</b> vai <b>uzklikĆĄÄ·iniet un velciet</b>, lai noslēgtu un pabeigtu ceÄŒu."
#: ../src/ui/tools/pen-tool.cpp:639
-#, fuzzy
msgid "<b>Click</b> or <b>click and drag</b> to close and finish the path. Shift+Click make a cusp node"
-msgstr "<b>UzklikĆĄÄ·iniet</b> vai <b>uzklikĆĄÄ·iniet un velciet</b>, lai noslēgtu un pabeigtu ceÄŒu."
+msgstr "<b>UzklikĆĄÄ·iniet</b> vai <b>uzklikĆĄÄ·iniet un velciet</b>, lai noslēgtu un pabeigtu ceÄŒu. Shift+klikĆĄÄ·is izveido aso mezglu."
#: ../src/ui/tools/pen-tool.cpp:651
msgid "<b>Click</b> or <b>click and drag</b> to continue the path from this point."
msgstr "<b>UzklikĆĄÄ·iniet</b> vai <b>uzklikĆĄÄ·iniet un velciet</b>, lai turpinātu ceÄŒu no ĆĄÄ« punkta."
#: ../src/ui/tools/pen-tool.cpp:653
-#, fuzzy
msgid "<b>Click</b> or <b>click and drag</b> to continue the path from this point. Shift+Click make a cusp node"
-msgstr "<b>UzklikĆĄÄ·iniet</b> vai <b>uzklikĆĄÄ·iniet un velciet</b>, lai turpinātu ceÄŒu no ĆĄÄ« punkta."
+msgstr "<b>UzklikĆĄÄ·iniet</b> vai <b>uzklikĆĄÄ·iniet un velciet</b>, lai turpinātu ceÄŒu no ĆĄÄ« punkta. Shift+klikĆĄÄ·is izveido aso mezglu."
#: ../src/ui/tools/pen-tool.cpp:2027
#, c-format
@@ -20948,14 +20906,14 @@ msgid "<b>Line segment</b>: angle %3.2f&#176;, distance %s; with <b>Ctrl</b> to
msgstr "<b>LÄ«nijas posms</b>: leƆķis %3.2f&#176;, attālums %s; ar <b>Ctrl</b> - pievilkt leƆķim, <b>Enter</b> - pabeigt ceÄŒu"
#: ../src/ui/tools/pen-tool.cpp:2031
-#, fuzzy, c-format
+#, c-format
msgid "<b>Curve segment</b>: angle %3.2f&#176;, distance %s; with <b>Shift+Click</b> make a cusp node, <b>Enter</b> to finish the path"
-msgstr "<b>LÄ«knes posms</b>: leƆķis %3.2f&#176;, attālums %s; ar <b>Ctrl</b>-pievilkt leƆķim, <b>Enter</b> - pabeigt ceÄŒu"
+msgstr "<b>LÄ«knes posms</b>: leƆķis %3.2f&#176;, attālums %s; <b>Shift+klikĆĄÄ·i</b> izveido aso mezglu, <b>Enter</b> - pabeigt ceÄŒu"
#: ../src/ui/tools/pen-tool.cpp:2032
-#, fuzzy, c-format
+#, c-format
msgid "<b>Line segment</b>: angle %3.2f&#176;, distance %s; with <b>Shift+Click</b> make a cusp node, <b>Enter</b> to finish the path"
-msgstr "<b>LÄ«nijas posms</b>: leƆķis %3.2f&#176;, attālums %s; ar <b>Ctrl</b> - pievilkt leƆķim, <b>Enter</b> - pabeigt ceÄŒu"
+msgstr "<b>LÄ«nijas posms</b>: leƆķis %3.2f&#176;, attālums %s; <b>Shift+klikĆĄÄ·i</b> izveido aso mezglu, <b>Enter</b> - pabeigt ceÄŒu"
#: ../src/ui/tools/pen-tool.cpp:2049
#, c-format
@@ -20989,43 +20947,43 @@ msgid "<b>Drag</b> to continue the path from this point."
msgstr "<b>Velciet</b>, lai turpinātu ceÄŒu no ĆĄÄ« punkta."
#. Write curves to object
-#: ../src/ui/tools/pencil-tool.cpp:403
+#: ../src/ui/tools/pencil-tool.cpp:401
msgid "Finishing freehand"
msgstr "Beidz brÄ«vrokas zÄ«mēơanu"
-#: ../src/ui/tools/pencil-tool.cpp:506
+#: ../src/ui/tools/pencil-tool.cpp:503
msgid "<b>Sketch mode</b>: holding <b>Alt</b> interpolates between sketched paths. Release <b>Alt</b> to finalize."
msgstr "<b>Skices reĆŸÄ«ms</b>: turot <b>Alt</b> interpolē starp ieskicētajiem ceÄŒiem. Atlaidiet <b>Alt</b>, lai pabeigtu."
-#: ../src/ui/tools/pencil-tool.cpp:533
+#: ../src/ui/tools/pencil-tool.cpp:530
msgid "Finishing freehand sketch"
msgstr "Beidz brīvrokas uzmetumu"
-#: ../src/ui/tools/rect-tool.cpp:278
+#: ../src/ui/tools/rect-tool.cpp:277
msgid "<b>Ctrl</b>: make square or integer-ratio rect, lock a rounded corner circular"
msgstr "<b>Ctrl</b>: izveidot kvadrātu vai taisnstĆ«ri ar veselu skaitÄŒu malu attiecÄ«bām, saglabāt noapaÄŒotos stĆ«rus apaÄŒus"
-#: ../src/ui/tools/rect-tool.cpp:439
+#: ../src/ui/tools/rect-tool.cpp:438
#, c-format
msgid "<b>Rectangle</b>: %s &#215; %s (constrained to ratio %d:%d); with <b>Shift</b> to draw around the starting point"
msgstr "<b>TaisnstĆ«ris</b>: %s &#215; %s (ierobeĆŸots ar proporcijām %d:%d); ar <b>Shift</b> - zÄ«mēt apkārt sākumpunktam"
-#: ../src/ui/tools/rect-tool.cpp:442
+#: ../src/ui/tools/rect-tool.cpp:441
#, c-format
msgid "<b>Rectangle</b>: %s &#215; %s (constrained to golden ratio 1.618 : 1); with <b>Shift</b> to draw around the starting point"
msgstr "<b>TaisnstĆ«ris</b>: %s &#215; %s (ierobeĆŸots zelta ĆĄÄ·Ä“luma proporcijās 1.618 : 1); ar <b>Shift</b> - zÄ«mēt apkārt sākumpunktam"
-#: ../src/ui/tools/rect-tool.cpp:444
+#: ../src/ui/tools/rect-tool.cpp:443
#, c-format
msgid "<b>Rectangle</b>: %s &#215; %s (constrained to golden ratio 1 : 1.618); with <b>Shift</b> to draw around the starting point"
msgstr "<b>TaisnstĆ«ris</b>: %s &#215; %s (ierobeĆŸots zelta ĆĄÄ·Ä“luma proporcijās 1.618 : 1); ar <b>Shift</b> - zÄ«mēt apkārt sākumpunktam"
-#: ../src/ui/tools/rect-tool.cpp:448
+#: ../src/ui/tools/rect-tool.cpp:447
#, c-format
msgid "<b>Rectangle</b>: %s &#215; %s; with <b>Ctrl</b> to make square or integer-ratio rectangle; with <b>Shift</b> to draw around the starting point"
msgstr "<b>TaisnstĆ«ris</b>: %s &#215; %s; ar <b>Ctrl</b> - izveidot kvadrātu vai taisnstĆ«ri ar veselu skaitÄŒu malu proporcijām; ar <b>Shift</b> - zÄ«mēt apkārt sākumpunktam"
-#: ../src/ui/tools/rect-tool.cpp:471
+#: ../src/ui/tools/rect-tool.cpp:470
msgid "Create rectangle"
msgstr "Izveidot taisnstƫri"
@@ -21053,19 +21011,19 @@ msgstr "<b>Velciet pāri</b> objektiem lai tos atlasītu; atlaidiet <b>Alt</b>,
msgid "<b>Drag around</b> objects to select them; press <b>Alt</b> to switch to touch selection"
msgstr "<b>Valciet apkāart</b> objektiem, lai tos atlasītu; nospiediet <b>Alt</b>, lai pārslēgtos uz atlasi ar pieskārienu"
-#: ../src/ui/tools/select-tool.cpp:941
+#: ../src/ui/tools/select-tool.cpp:939
msgid "<b>Ctrl</b>: click to select in groups; drag to move hor/vert"
msgstr "<b>Ctrl</b>: klikƥķiniet, lai atlasītu grupās; velciet, lai pārvietotu horizontāli/vertikāli"
-#: ../src/ui/tools/select-tool.cpp:942
+#: ../src/ui/tools/select-tool.cpp:940
msgid "<b>Shift</b>: click to toggle select; drag for rubberband selection"
msgstr "<b>Shift</b>: uzklikƥķiniet, lai manītu atlasi, velciet laso atlasei"
-#: ../src/ui/tools/select-tool.cpp:943
+#: ../src/ui/tools/select-tool.cpp:941
msgid "<b>Alt</b>: click to select under; scroll mouse-wheel to cycle-select; drag to move selected or select by touch"
msgstr "<b>Alt</b>: klikƥķis, lai atlasītu zem kursora esoƥo; ritiniet ar peles ritenīti, lai cikliski mainītu atlasīto; velciet, lai pārvietotu atlasīto vai atlasītu ar pieskārienu"
-#: ../src/ui/tools/select-tool.cpp:1151
+#: ../src/ui/tools/select-tool.cpp:1149
msgid "Selected object is not a group. Cannot enter."
msgstr "Izvēlētais objekts nav grupa. Nav iespējams ieiet."
@@ -21113,19 +21071,19 @@ msgstr "%s. Velciet, uzklikĆĄÄ·iniet vai uzklikĆĄÄ·iniet un ritiniet, lai izsmid
msgid "%s. Drag, click or click and scroll to spray in a <b>single path</b> of the initial selection."
msgstr "%s. Velciet, uzklikĆĄÄ·iniet vai uzklikĆĄÄ·iniet un ritiniet, lai izsmidzinātu sākotnēji atlasÄ«to <b>vienā ceČā</b>."
-#: ../src/ui/tools/spray-tool.cpp:654
+#: ../src/ui/tools/spray-tool.cpp:648
msgid "<b>Nothing selected!</b> Select objects to spray."
msgstr "<b>Nekas nav atlasīts!</b> Atlasiet izsmidzināmos objektus."
-#: ../src/ui/tools/spray-tool.cpp:729 ../src/widgets/spray-toolbar.cpp:166
+#: ../src/ui/tools/spray-tool.cpp:723 ../src/widgets/spray-toolbar.cpp:166
msgid "Spray with copies"
msgstr "Smidzināt kopijas"
-#: ../src/ui/tools/spray-tool.cpp:733 ../src/widgets/spray-toolbar.cpp:173
+#: ../src/ui/tools/spray-tool.cpp:727 ../src/widgets/spray-toolbar.cpp:173
msgid "Spray with clones"
msgstr "Smidzināt klonus"
-#: ../src/ui/tools/spray-tool.cpp:737
+#: ../src/ui/tools/spray-tool.cpp:731
msgid "Spray in single path"
msgstr "Izsmidzināt vienā ceČā"
@@ -21265,7 +21223,7 @@ msgstr "Paplaƥināt burtu atstatumus"
msgid "Paste text"
msgstr "Ielīmet tekstu"
-#: ../src/ui/tools/text-tool.cpp:1574
+#: ../src/ui/tools/text-tool.cpp:1573
#, c-format
msgid "Type or edit flowed text (%d character%s); <b>Enter</b> to start new paragraph."
msgid_plural "Type or edit flowed text (%d characters%s); <b>Enter</b> to start new paragraph."
@@ -21273,7 +21231,7 @@ msgstr[0] "Ievadiet vai labojiet teksta aizpildījumu (%d zīme%s); <b>Enter</b>
msgstr[1] "Ievadiet vai labojiet teksta aizpildījumu (%d zīmes%s); <b>Enter</b> - lai sāktu jaunu rindkopu."
msgstr[2] "Ievadiet vai labojiet teksta aizpildījumu (%d zīmes%s); <b>Enter</b> - lai sāktu jaunu rindkopu."
-#: ../src/ui/tools/text-tool.cpp:1576
+#: ../src/ui/tools/text-tool.cpp:1575
#, c-format
msgid "Type or edit text (%d character%s); <b>Enter</b> to start new line."
msgid_plural "Type or edit text (%d characters%s); <b>Enter</b> to start new line."
@@ -21281,11 +21239,11 @@ msgstr[0] "Ievadiet vai labojiet tekstu (%d rakstzīme%s); nospiediet <b>Enter</
msgstr[1] "Ievadiet vai labojiet tekstu (%d rakstzīmes%s); nospiediet <b>Enter</b> jaunas rindas sākƥanai."
msgstr[2] "Ievadiet vai labojiet tekstu (%d rakstzīmes%s); nospiediet <b>Enter</b> jaunas rindas sākƥanai."
-#: ../src/ui/tools/text-tool.cpp:1686
+#: ../src/ui/tools/text-tool.cpp:1685
msgid "Type text"
msgstr "Ievadiet tekstu"
-#: ../src/ui/tools/tool-base.cpp:705
+#: ../src/ui/tools/tool-base.cpp:701
msgid "<b>Space+mouse move</b> to pan canvas"
msgstr "<b>Atstarpēơanas taustiƆơ+peles kustÄ«ba</b>, lai pārvietotos pa audeklu"
@@ -21354,59 +21312,59 @@ msgstr "%s. Velciet vai uzklikĆĄÄ·iniet, lai <b>daĆŸÄdotu krāsas</b>."
msgid "%s. Drag or click to <b>increase blur</b>; with Shift to <b>decrease</b>."
msgstr "%s. Velciet vai uzklikƥķiniet, lai<b>palielinātu aizmiglojumu</b>; ar Shift t - <b>lai samazinātu</b>."
-#: ../src/ui/tools/tweak-tool.cpp:1195
+#: ../src/ui/tools/tweak-tool.cpp:1192
msgid "<b>Nothing selected!</b> Select objects to tweak."
msgstr "<b>Nekas nav atlasÄ«ts!</b> Atlasiet pieskaƆojamos objektus."
-#: ../src/ui/tools/tweak-tool.cpp:1229
+#: ../src/ui/tools/tweak-tool.cpp:1226
msgid "Move tweak"
msgstr "Pārvietoơanas pieskƆoơana"
-#: ../src/ui/tools/tweak-tool.cpp:1233
+#: ../src/ui/tools/tweak-tool.cpp:1230
msgid "Move in/out tweak"
msgstr "Pārvietot iekơā/ārā pieskaƆoơana"
-#: ../src/ui/tools/tweak-tool.cpp:1237
+#: ../src/ui/tools/tweak-tool.cpp:1234
msgid "Move jitter tweak"
msgstr "PārvietoĆĄanas trÄ«ces pieskaƆoĆĄana"
-#: ../src/ui/tools/tweak-tool.cpp:1241
+#: ../src/ui/tools/tweak-tool.cpp:1238
msgid "Scale tweak"
msgstr "Mērogoơanas pieskaƆoơana"
-#: ../src/ui/tools/tweak-tool.cpp:1245
+#: ../src/ui/tools/tweak-tool.cpp:1242
msgid "Rotate tweak"
msgstr "Grieơanas pieskaƆoơana"
-#: ../src/ui/tools/tweak-tool.cpp:1249
+#: ../src/ui/tools/tweak-tool.cpp:1246
msgid "Duplicate/delete tweak"
msgstr "Dublēt/dzēst pieskaƆoơana"
-#: ../src/ui/tools/tweak-tool.cpp:1253
+#: ../src/ui/tools/tweak-tool.cpp:1250
msgid "Push path tweak"
msgstr "CeÄŒa pagrƫƥanas pieskaƆoĆĄana"
-#: ../src/ui/tools/tweak-tool.cpp:1257
+#: ../src/ui/tools/tweak-tool.cpp:1254
msgid "Shrink/grow path tweak"
msgstr "CeÄŒa samazinājuma/palielinājuma pieskaƆosana"
-#: ../src/ui/tools/tweak-tool.cpp:1261
+#: ../src/ui/tools/tweak-tool.cpp:1258
msgid "Attract/repel path tweak"
msgstr "CeÄŒa pieskaƆoĆĄana pievelkot/atgrĆ«ĆŸot"
-#: ../src/ui/tools/tweak-tool.cpp:1265
+#: ../src/ui/tools/tweak-tool.cpp:1262
msgid "Roughen path tweak"
msgstr "CeÄŒa raupjoĆĄanas pieskaƆoĆĄana"
-#: ../src/ui/tools/tweak-tool.cpp:1269
+#: ../src/ui/tools/tweak-tool.cpp:1266
msgid "Color paint tweak"
msgstr "Krāsokuma pieskaƆoơana"
-#: ../src/ui/tools/tweak-tool.cpp:1273
+#: ../src/ui/tools/tweak-tool.cpp:1270
msgid "Color jitter tweak"
msgstr "Krāsu trÄ«ces pieskaƆoĆĄana"
-#: ../src/ui/tools/tweak-tool.cpp:1277
+#: ../src/ui/tools/tweak-tool.cpp:1274
msgid "Blur tweak"
msgstr "PieskaƆot aizmiglojumu"
@@ -21450,186 +21408,225 @@ msgstr "Dokumenta licence atsvaidzināta"
msgid "Opacity (%)"
msgstr "Necaurspīdība (%)"
-#: ../src/ui/widget/object-composite-settings.cpp:159
+#: ../src/ui/widget/object-composite-settings.cpp:160
msgid "Change blur"
msgstr "Mainīt aizmiglojumu"
-#: ../src/ui/widget/object-composite-settings.cpp:199 ../src/ui/widget/selected-style.cpp:943 ../src/ui/widget/selected-style.cpp:1245
+#: ../src/ui/widget/object-composite-settings.cpp:200 ../src/ui/widget/selected-style.cpp:943 ../src/ui/widget/selected-style.cpp:1245
msgid "Change opacity"
msgstr "Mainīt necaurspīdību"
-#: ../src/ui/widget/page-sizer.cpp:235
+#: ../src/ui/widget/page-sizer.cpp:236
msgid "U_nits:"
msgstr "Vie_nības:"
-#: ../src/ui/widget/page-sizer.cpp:236
+#: ../src/ui/widget/page-sizer.cpp:237
msgid "Width of paper"
msgstr "Papīra platums"
-#: ../src/ui/widget/page-sizer.cpp:237
+#: ../src/ui/widget/page-sizer.cpp:238
msgid "Height of paper"
msgstr "Papīra augstums"
-#: ../src/ui/widget/page-sizer.cpp:238
+#: ../src/ui/widget/page-sizer.cpp:239
msgid "T_op margin:"
msgstr "Au_gơējā mala:"
-#: ../src/ui/widget/page-sizer.cpp:238
+#: ../src/ui/widget/page-sizer.cpp:239
msgid "Top margin"
msgstr "Augơējā mala"
-#: ../src/ui/widget/page-sizer.cpp:239
+#: ../src/ui/widget/page-sizer.cpp:240
msgid "L_eft:"
msgstr "K_reisā:"
-#: ../src/ui/widget/page-sizer.cpp:239
+#: ../src/ui/widget/page-sizer.cpp:240
msgid "Left margin"
msgstr "Kreisā mala"
-#: ../src/ui/widget/page-sizer.cpp:240
+#: ../src/ui/widget/page-sizer.cpp:241
msgid "Ri_ght:"
msgstr "La_bā:"
-#: ../src/ui/widget/page-sizer.cpp:240
+#: ../src/ui/widget/page-sizer.cpp:241
msgid "Right margin"
msgstr "Labā mala"
-#: ../src/ui/widget/page-sizer.cpp:241
+#: ../src/ui/widget/page-sizer.cpp:242
msgid "Botto_m:"
msgstr "Apakơē_jais:"
-#: ../src/ui/widget/page-sizer.cpp:241
+#: ../src/ui/widget/page-sizer.cpp:242
msgid "Bottom margin"
msgstr "Apakơējā mala"
-#: ../src/ui/widget/page-sizer.cpp:296
+#: ../src/ui/widget/page-sizer.cpp:244
+msgid "Scale _x:"
+msgstr "Mērogs _x:"
+
+#: ../src/ui/widget/page-sizer.cpp:244
+msgid "Scale X"
+msgstr "Mērogs X"
+
+#: ../src/ui/widget/page-sizer.cpp:245
+msgid "Scale _y:"
+msgstr "Mērogs _y:"
+
+#: ../src/ui/widget/page-sizer.cpp:245
+msgid "Scale Y"
+msgstr "Mērogs Y"
+
+#: ../src/ui/widget/page-sizer.cpp:321
msgid "Orientation:"
msgstr "Orientācija:"
-#: ../src/ui/widget/page-sizer.cpp:299
+#: ../src/ui/widget/page-sizer.cpp:324
msgid "_Landscape"
msgstr "_Ainava"
-#: ../src/ui/widget/page-sizer.cpp:304
+#: ../src/ui/widget/page-sizer.cpp:329
msgid "_Portrait"
msgstr "_Portrets"
#. ## Set up custom size frame
-#: ../src/ui/widget/page-sizer.cpp:322
+#: ../src/ui/widget/page-sizer.cpp:348
msgid "Custom size"
msgstr "Pielāgots izmērs"
-#: ../src/ui/widget/page-sizer.cpp:367
+#: ../src/ui/widget/page-sizer.cpp:393
msgid "Resi_ze page to content..."
msgstr "Pie_lāgot lapu saturam..."
-#: ../src/ui/widget/page-sizer.cpp:419
+#: ../src/ui/widget/page-sizer.cpp:445
msgid "_Resize page to drawing or selection"
msgstr "_Pielāgot lapas izmēru zīmējuma vai iezīmētajam"
-#: ../src/ui/widget/page-sizer.cpp:420
+#: ../src/ui/widget/page-sizer.cpp:446
msgid "Resize the page to fit the current selection, or the entire drawing if there is no selection"
msgstr "Pielāgot lapas izmēru paĆĄreiz iezÄ«mētajam vai arÄ« visas zÄ«mējumam, ja nekas nav iezÄ«mēts"
-#: ../src/ui/widget/page-sizer.cpp:489
+#: ../src/ui/widget/page-sizer.cpp:477
+msgid "While SVG allows non-uniform scaling it is recommended to use only uniform scaling in Inkscape. To set a non-uniform scaling, set the 'viewBox' directly."
+msgstr ""
+
+#: ../src/ui/widget/page-sizer.cpp:481
+#, fuzzy
+msgid "_Viewbox..."
+msgstr "Skatīt"
+
+#: ../src/ui/widget/page-sizer.cpp:588
msgid "Set page size"
msgstr "Iestatiet lapas izmēru"
-#: ../src/ui/widget/panel.cpp:117
+#: ../src/ui/widget/page-sizer.cpp:834
+msgid "User units per "
+msgstr "Lietotāja vienības katrā"
+
+#: ../src/ui/widget/page-sizer.cpp:930
+#, fuzzy
+msgid "Set page scale"
+msgstr "Lapu komplekts"
+
+#: ../src/ui/widget/page-sizer.cpp:956
+#, fuzzy
+msgid "Set 'viewBox'"
+msgstr "-- Nav uzstādīts --"
+
+#: ../src/ui/widget/panel.cpp:113
msgid "List"
msgstr "Saraksts"
-#: ../src/ui/widget/panel.cpp:140
+#: ../src/ui/widget/panel.cpp:136
msgctxt "Swatches"
msgid "Size"
msgstr "Lielums"
-#: ../src/ui/widget/panel.cpp:144
+#: ../src/ui/widget/panel.cpp:140
msgctxt "Swatches height"
msgid "Tiny"
msgstr "Sīks"
-#: ../src/ui/widget/panel.cpp:145
+#: ../src/ui/widget/panel.cpp:141
msgctxt "Swatches height"
msgid "Small"
msgstr "Mazs"
-#: ../src/ui/widget/panel.cpp:146
+#: ../src/ui/widget/panel.cpp:142
msgctxt "Swatches height"
msgid "Medium"
msgstr "Vidējs"
-#: ../src/ui/widget/panel.cpp:147
+#: ../src/ui/widget/panel.cpp:143
msgctxt "Swatches height"
msgid "Large"
msgstr "Liels"
-#: ../src/ui/widget/panel.cpp:148
+#: ../src/ui/widget/panel.cpp:144
msgctxt "Swatches height"
msgid "Huge"
msgstr "Ļoti liels"
-#: ../src/ui/widget/panel.cpp:170
+#: ../src/ui/widget/panel.cpp:166
msgctxt "Swatches"
msgid "Width"
msgstr "Platums"
-#: ../src/ui/widget/panel.cpp:174
+#: ../src/ui/widget/panel.cpp:170
msgctxt "Swatches width"
msgid "Narrower"
msgstr "Ơaurāks"
-#: ../src/ui/widget/panel.cpp:175
+#: ../src/ui/widget/panel.cpp:171
msgctxt "Swatches width"
msgid "Narrow"
msgstr "Ć aurs"
-#: ../src/ui/widget/panel.cpp:176
+#: ../src/ui/widget/panel.cpp:172
msgctxt "Swatches width"
msgid "Medium"
msgstr "Vidējs"
-#: ../src/ui/widget/panel.cpp:177
+#: ../src/ui/widget/panel.cpp:173
msgctxt "Swatches width"
msgid "Wide"
msgstr "Plats"
-#: ../src/ui/widget/panel.cpp:178
+#: ../src/ui/widget/panel.cpp:174
msgctxt "Swatches width"
msgid "Wider"
msgstr "Platāks"
-#: ../src/ui/widget/panel.cpp:208
+#: ../src/ui/widget/panel.cpp:204
msgctxt "Swatches"
msgid "Border"
msgstr "RobeĆŸa"
-#: ../src/ui/widget/panel.cpp:212
+#: ../src/ui/widget/panel.cpp:208
msgctxt "Swatches border"
msgid "None"
msgstr "Nekas"
-#: ../src/ui/widget/panel.cpp:213
+#: ../src/ui/widget/panel.cpp:209
msgctxt "Swatches border"
msgid "Solid"
msgstr "Vienlaidus"
-#: ../src/ui/widget/panel.cpp:214
+#: ../src/ui/widget/panel.cpp:210
msgctxt "Swatches border"
msgid "Wide"
msgstr "Plats"
#. TRANSLATORS: "Wrap" indicates how colour swatches are displayed
-#: ../src/ui/widget/panel.cpp:245
+#: ../src/ui/widget/panel.cpp:241
msgctxt "Swatches"
msgid "Wrap"
msgstr "Aplauzt"
-#: ../src/ui/widget/preferences-widget.cpp:802
+#: ../src/ui/widget/preferences-widget.cpp:798
msgid "_Browse..."
msgstr "_Pārlƫkot..."
-#: ../src/ui/widget/preferences-widget.cpp:888
+#: ../src/ui/widget/preferences-widget.cpp:884
msgid "Select a bitmap editor"
msgstr "Izvēlieties bitkartes redaktoru"
@@ -21677,7 +21674,7 @@ msgstr "O:"
msgid "N/A"
msgstr "n/z"
-#: ../src/ui/widget/selected-style.cpp:181 ../src/ui/widget/selected-style.cpp:1112 ../src/ui/widget/selected-style.cpp:1113 ../src/widgets/gradient-toolbar.cpp:162
+#: ../src/ui/widget/selected-style.cpp:181 ../src/ui/widget/selected-style.cpp:1112 ../src/ui/widget/selected-style.cpp:1113 ../src/widgets/gradient-toolbar.cpp:163
msgid "Nothing selected"
msgstr "Nekas nav izvēlēts"
@@ -21701,7 +21698,7 @@ msgctxt "Fill and stroke"
msgid "No stroke"
msgstr "Nav apmales"
-#: ../src/ui/widget/selected-style.cpp:192 ../src/ui/widget/style-swatch.cpp:300 ../src/widgets/paint-selector.cpp:234
+#: ../src/ui/widget/selected-style.cpp:192 ../src/ui/widget/style-swatch.cpp:300 ../src/widgets/paint-selector.cpp:231
msgid "Pattern"
msgstr "Faktƫra"
@@ -21766,11 +21763,11 @@ msgid "<b>Unset</b>"
msgstr "<b>atiestatīts</b>"
#. TRANSLATORS COMMENT: unset is a verb here
-#: ../src/ui/widget/selected-style.cpp:237 ../src/ui/widget/selected-style.cpp:295 ../src/ui/widget/selected-style.cpp:575 ../src/ui/widget/style-swatch.cpp:326 ../src/widgets/fill-style.cpp:709
+#: ../src/ui/widget/selected-style.cpp:237 ../src/ui/widget/selected-style.cpp:295 ../src/ui/widget/selected-style.cpp:575 ../src/ui/widget/style-swatch.cpp:326 ../src/widgets/fill-style.cpp:705
msgid "Unset fill"
msgstr "Atiestatīt aizpildījumu"
-#: ../src/ui/widget/selected-style.cpp:237 ../src/ui/widget/selected-style.cpp:295 ../src/ui/widget/selected-style.cpp:591 ../src/ui/widget/style-swatch.cpp:326 ../src/widgets/fill-style.cpp:709
+#: ../src/ui/widget/selected-style.cpp:237 ../src/ui/widget/selected-style.cpp:295 ../src/ui/widget/selected-style.cpp:591 ../src/ui/widget/style-swatch.cpp:326 ../src/widgets/fill-style.cpp:705
msgid "Unset stroke"
msgstr "Atiestatīt apmali"
@@ -21844,11 +21841,11 @@ msgstr "Padarīt aizpildījumu necaurspīdīgu"
msgid "Make stroke opaque"
msgstr "Padarīt apmali necaurspīdīgu"
-#: ../src/ui/widget/selected-style.cpp:299 ../src/ui/widget/selected-style.cpp:557 ../src/widgets/fill-style.cpp:508
+#: ../src/ui/widget/selected-style.cpp:299 ../src/ui/widget/selected-style.cpp:557 ../src/widgets/fill-style.cpp:504
msgid "Remove fill"
msgstr "Aizvākt aizpildījumu"
-#: ../src/ui/widget/selected-style.cpp:299 ../src/ui/widget/selected-style.cpp:566 ../src/widgets/fill-style.cpp:508
+#: ../src/ui/widget/selected-style.cpp:299 ../src/ui/widget/selected-style.cpp:566 ../src/widgets/fill-style.cpp:504
msgid "Remove stroke"
msgstr "Aizvākt apmali"
@@ -22026,7 +22023,7 @@ msgstr "Apvienot saplƫƥanas punktus"
msgid "3D box: Move vanishing point"
msgstr "3D paralēlskaldnis: pārvietot saplƫƥanas punktu"
-#: ../src/vanishing-point.cpp:327
+#: ../src/vanishing-point.cpp:328
#, c-format
msgid "<b>Finite</b> vanishing point shared by <b>%d</b> box"
msgid_plural "<b>Finite</b> vanishing point shared by <b>%d</b> boxes; drag with <b>Shift</b> to separate selected box(es)"
@@ -22036,7 +22033,7 @@ msgstr[2] "<b>GalÄ«gs</b> saplƫƥanas punkts, kopējs <b>%d</b> paralēlskaldƆ
#. This won't make sense any more when infinite VPs are not shown on the canvas,
#. but currently we update the status message anyway
-#: ../src/vanishing-point.cpp:334
+#: ../src/vanishing-point.cpp:335
#, c-format
msgid "<b>Infinite</b> vanishing point shared by <b>%d</b> box"
msgid_plural "<b>Infinite</b> vanishing point shared by <b>%d</b> boxes; drag with <b>Shift</b> to separate selected box(es)"
@@ -22044,7 +22041,7 @@ msgstr[0] "<b>BezalÄ«gs</b> saplƫƥanas punkts, kopējs <b>%d</b> paralēlskald
msgstr[1] "<b>BezgalÄ«gs</b> saplƫƥanas punkts, kopējs <b>%d</b> paralēlskaldƆiem; velciet ar <b>Shift</b>, lai atdalÄ«tu atlasÄ«to(s) paralēlskaldni (-Ɔus)"
msgstr[2] "<b>BezgalÄ«gs</b> saplƫƥanas punkts, kopējs <b>%d</b> paralēlskaldƆiem; velciet ar <b>Shift</b>, lai atdalÄ«tu atlasÄ«to(s) paralēlskaldni (-Ɔus)"
-#: ../src/vanishing-point.cpp:342
+#: ../src/vanishing-point.cpp:343
#, c-format
msgid "shared by <b>%d</b> box; drag with <b>Shift</b> to separate selected box(es)"
msgid_plural "shared by <b>%d</b> boxes; drag with <b>Shift</b> to separate selected box(es)"
@@ -22052,2341 +22049,2334 @@ msgstr[0] "kopējs <b>%d</b> paralēlskaldnim; velciet ar <b>Shift</b>, lai atda
msgstr[1] "kopējs <b>%d</b> paralēlskaldƆiem; velciet ar <b>Shift</b>, lai atdalÄ«tu atlasÄ«to(s) paralēlskaldni (-Ɔus)"
msgstr[2] ", kopējs <b>%d</b> paralēlskaldƆiem; velciet ar <b>Shift</b>, lai atdalÄ«tu atlasÄ«to(s) paralēlskaldni (-Ɔus)"
-#: ../src/verbs.cpp:138
+#: ../src/verbs.cpp:137
msgid "File"
msgstr "Datne"
-#: ../src/verbs.cpp:233 ../share/extensions/interp_att_g.inx.h:22
+#: ../src/verbs.cpp:232 ../share/extensions/interp_att_g.inx.h:22
msgid "Tag"
msgstr "Tags"
-#: ../src/verbs.cpp:252
+#: ../src/verbs.cpp:251
msgid "Context"
msgstr "Konteksts"
-#: ../src/verbs.cpp:271 ../src/verbs.cpp:2302 ../share/extensions/jessyInk_view.inx.h:1 ../share/extensions/polyhedron_3d.inx.h:26
+#: ../src/verbs.cpp:270 ../src/verbs.cpp:2271 ../share/extensions/jessyInk_view.inx.h:1 ../share/extensions/polyhedron_3d.inx.h:26
msgid "View"
msgstr "Skatīt"
-#: ../src/verbs.cpp:291
+#: ../src/verbs.cpp:290
msgid "Dialog"
msgstr "DialoglodziƆơ"
-#: ../src/verbs.cpp:1260
+#: ../src/verbs.cpp:1259
msgid "Switch to next layer"
msgstr "Pārslēgties uz nākoơo slāni"
-#: ../src/verbs.cpp:1261
+#: ../src/verbs.cpp:1260
msgid "Switched to next layer."
msgstr "Pārslēgts uz nākoơo slāni."
-#: ../src/verbs.cpp:1263
+#: ../src/verbs.cpp:1262
msgid "Cannot go past last layer."
msgstr "Nevar pārvietoties tālāk par pēdējo slāni."
-#: ../src/verbs.cpp:1272
+#: ../src/verbs.cpp:1271
msgid "Switch to previous layer"
msgstr "Pārslēgties uz iepriekơējo slāni"
-#: ../src/verbs.cpp:1273
+#: ../src/verbs.cpp:1272
msgid "Switched to previous layer."
msgstr "Pārslēgts uz iepriekơējo slāni."
-#: ../src/verbs.cpp:1275
+#: ../src/verbs.cpp:1274
msgid "Cannot go before first layer."
msgstr "Nevar pārvietoties pirms pirmā slāƆa."
-#: ../src/verbs.cpp:1296 ../src/verbs.cpp:1393 ../src/verbs.cpp:1429 ../src/verbs.cpp:1435 ../src/verbs.cpp:1459 ../src/verbs.cpp:1474
+#: ../src/verbs.cpp:1295 ../src/verbs.cpp:1362 ../src/verbs.cpp:1398 ../src/verbs.cpp:1404 ../src/verbs.cpp:1428 ../src/verbs.cpp:1443
msgid "No current layer."
msgstr "Nav paơreizējā slāƆa."
-#: ../src/verbs.cpp:1325 ../src/verbs.cpp:1329
+#: ../src/verbs.cpp:1324 ../src/verbs.cpp:1328
#, c-format
msgid "Raised layer <b>%s</b>."
msgstr "Līmenis <b>%s</b> pacelts."
-#: ../src/verbs.cpp:1326
+#: ../src/verbs.cpp:1325
msgid "Layer to top"
msgstr "Slāni uz virspusi"
-#: ../src/verbs.cpp:1330
+#: ../src/verbs.cpp:1329
msgid "Raise layer"
msgstr "Pacelt slāni"
-#: ../src/verbs.cpp:1333 ../src/verbs.cpp:1337
+#: ../src/verbs.cpp:1332 ../src/verbs.cpp:1336
#, c-format
msgid "Lowered layer <b>%s</b>."
msgstr "Nolaistais slānis <b>%s</b>."
-#: ../src/verbs.cpp:1334
+#: ../src/verbs.cpp:1333
msgid "Layer to bottom"
msgstr "Slāni uz apakƥu"
-#: ../src/verbs.cpp:1338
+#: ../src/verbs.cpp:1337
msgid "Lower layer"
msgstr "Zemākais slānis"
-#: ../src/verbs.cpp:1347
+#: ../src/verbs.cpp:1346
msgid "Cannot move layer any further."
msgstr "Slāni tālāk pārvietot nav iespējams."
-#: ../src/verbs.cpp:1361 ../src/verbs.cpp:1380
-#, c-format
-msgid "%s copy"
-msgstr "%s kopēt"
-
-#: ../src/verbs.cpp:1388
+#: ../src/verbs.cpp:1357
msgid "Duplicate layer"
msgstr "Dublēt slāni"
#. TRANSLATORS: this means "The layer has been duplicated."
-#: ../src/verbs.cpp:1391
+#: ../src/verbs.cpp:1360
msgid "Duplicated layer."
msgstr "Dublētais slānis."
-#: ../src/verbs.cpp:1424
+#: ../src/verbs.cpp:1393
msgid "Delete layer"
msgstr "Dzēst slāni"
#. TRANSLATORS: this means "The layer has been deleted."
-#: ../src/verbs.cpp:1427
+#: ../src/verbs.cpp:1396
msgid "Deleted layer."
msgstr "Dzēstais slānis."
-#: ../src/verbs.cpp:1444
+#: ../src/verbs.cpp:1413
msgid "Show all layers"
msgstr "RādÄ«t visus slāƆus"
-#: ../src/verbs.cpp:1449
+#: ../src/verbs.cpp:1418
msgid "Hide all layers"
msgstr "Slēpt visus slāƆus"
-#: ../src/verbs.cpp:1454
+#: ../src/verbs.cpp:1423
msgid "Lock all layers"
msgstr "Slēgt visus slāƆus"
-#: ../src/verbs.cpp:1468
+#: ../src/verbs.cpp:1437
msgid "Unlock all layers"
msgstr "Atslēgt visus slāƆus"
-#: ../src/verbs.cpp:1552
+#: ../src/verbs.cpp:1521
msgid "Flip horizontally"
msgstr "Apmest horizontāli"
-#: ../src/verbs.cpp:1557
+#: ../src/verbs.cpp:1526
msgid "Flip vertically"
msgstr "Apmest vertikāli"
-#: ../src/verbs.cpp:1614 ../src/verbs.cpp:2727
-#, fuzzy
+#: ../src/verbs.cpp:1583 ../src/verbs.cpp:2696
msgid "Create new selection set"
-msgstr "Nospiediet, lai izveidotu jaunu kopu."
+msgstr "Izveidot jaunu atlases kopu"
#. TRANSLATORS: If you have translated the tutorial-basic.en.svgz file to your language,
#. then translate this string as "tutorial-basic.LANG.svgz" (where LANG is your language
#. code); otherwise leave as "tutorial-basic.svg".
-#: ../src/verbs.cpp:2184
+#: ../src/verbs.cpp:2153
msgid "tutorial-basic.svg"
msgstr "tutorial-basic.svg"
#. TRANSLATORS: See "tutorial-basic.svg" comment.
-#: ../src/verbs.cpp:2188
+#: ../src/verbs.cpp:2157
msgid "tutorial-shapes.svg"
msgstr "tutorial-shapes.svg"
#. TRANSLATORS: See "tutorial-basic.svg" comment.
-#: ../src/verbs.cpp:2192
+#: ../src/verbs.cpp:2161
msgid "tutorial-advanced.svg"
msgstr "tutorial-advanced.svg"
#. TRANSLATORS: See "tutorial-basic.svg" comment.
-#: ../src/verbs.cpp:2196
+#: ../src/verbs.cpp:2165
msgid "tutorial-tracing.svg"
msgstr "tutorial-tracing.svg"
-#: ../src/verbs.cpp:2199
+#: ../src/verbs.cpp:2168
msgid "tutorial-tracing-pixelart.svg"
msgstr "tutorial-tracing-pixelart.svg"
#. TRANSLATORS: See "tutorial-basic.svg" comment.
-#: ../src/verbs.cpp:2203
+#: ../src/verbs.cpp:2172
msgid "tutorial-calligraphy.svg"
msgstr "tutorial-calligraphy.svg"
#. TRANSLATORS: See "tutorial-basic.svg" comment.
-#: ../src/verbs.cpp:2207
+#: ../src/verbs.cpp:2176
msgid "tutorial-interpolate.svg"
msgstr "tutorial-interpolate.svg"
#. TRANSLATORS: See "tutorial-basic.svg" comment.
-#: ../src/verbs.cpp:2211
+#: ../src/verbs.cpp:2180
msgid "tutorial-elements.svg"
msgstr "tutorial-elements.svg"
#. TRANSLATORS: See "tutorial-basic.svg" comment.
-#: ../src/verbs.cpp:2215
+#: ../src/verbs.cpp:2184
msgid "tutorial-tips.svg"
msgstr "tutorial-tips.svg"
-#: ../src/verbs.cpp:2401 ../src/verbs.cpp:3000
+#: ../src/verbs.cpp:2370 ../src/verbs.cpp:2969
msgid "Unlock all objects in the current layer"
msgstr "Atslēgt visus objektus paĆĄreizējā slānÄ«"
-#: ../src/verbs.cpp:2405 ../src/verbs.cpp:3002
+#: ../src/verbs.cpp:2374 ../src/verbs.cpp:2971
msgid "Unlock all objects in all layers"
msgstr "Atslēgt visus objektus visos slāƆos"
-#: ../src/verbs.cpp:2409 ../src/verbs.cpp:3004
+#: ../src/verbs.cpp:2378 ../src/verbs.cpp:2973
msgid "Unhide all objects in the current layer"
msgstr "ParādÄ«t visus objektus paĆĄreizējā slānÄ«"
-#: ../src/verbs.cpp:2413 ../src/verbs.cpp:3006
+#: ../src/verbs.cpp:2382 ../src/verbs.cpp:2975
msgid "Unhide all objects in all layers"
msgstr "Parādīt visus objektus visos slānī"
-#: ../src/verbs.cpp:2428
+#: ../src/verbs.cpp:2397
msgctxt "Verb"
msgid "None"
msgstr "Neko"
-#: ../src/verbs.cpp:2428
+#: ../src/verbs.cpp:2397
msgid "Does nothing"
msgstr "Nedara neko"
#. File
#. Tag
-#: ../src/verbs.cpp:2431 ../src/verbs.cpp:2726
+#: ../src/verbs.cpp:2400 ../src/verbs.cpp:2695
msgid "_New"
msgstr "Jau_ns"
-#: ../src/verbs.cpp:2431
+#: ../src/verbs.cpp:2400
msgid "Create new document from the default template"
msgstr "Izveidot jaunu dokumentu no noklusētās veidnes"
-#: ../src/verbs.cpp:2433
+#: ../src/verbs.cpp:2402
msgid "_Open..."
msgstr "_Atvērt..."
-#: ../src/verbs.cpp:2434
+#: ../src/verbs.cpp:2403
msgid "Open an existing document"
msgstr "Atvērt jau esoơu dokumentu"
-#: ../src/verbs.cpp:2435
+#: ../src/verbs.cpp:2404
msgid "Re_vert"
msgstr "Ielādēt iepriekơ saglabāto"
-#: ../src/verbs.cpp:2436
+#: ../src/verbs.cpp:2405
msgid "Revert to the last saved version of document (changes will be lost)"
msgstr "Atgriezties pie pēdējās saglabātās versijas (visas izmaiƆas tiks zaudētas)"
-#: ../src/verbs.cpp:2437
+#: ../src/verbs.cpp:2406
msgid "Save document"
msgstr "Saglabāt dokumentu"
-#: ../src/verbs.cpp:2439
+#: ../src/verbs.cpp:2408
msgid "Save _As..."
msgstr "S_aglabāt kā..."
-#: ../src/verbs.cpp:2440
+#: ../src/verbs.cpp:2409
msgid "Save document under a new name"
msgstr "Saglabāt programmu ar citu nosaukumu"
-#: ../src/verbs.cpp:2441
+#: ../src/verbs.cpp:2410
msgid "Save a Cop_y..."
msgstr "Saglabāt kopi_ju..."
-#: ../src/verbs.cpp:2442
+#: ../src/verbs.cpp:2411
msgid "Save a copy of the document under a new name"
msgstr "Saglabāt paơreizējā dokumenta kopiju ar jaunu nosaukumu"
-#: ../src/verbs.cpp:2443
+#: ../src/verbs.cpp:2412
msgid "_Print..."
msgstr "_Drukāt..."
-#: ../src/verbs.cpp:2443
+#: ../src/verbs.cpp:2412
msgid "Print document"
msgstr "Drukāt dokumentu"
#. TRANSLATORS: "Vacuum Defs" means "Clean up defs" (so as to remove unused definitions)
-#: ../src/verbs.cpp:2446
+#: ../src/verbs.cpp:2415
msgid "Clean _up document"
msgstr "Uzkopt dokumentu"
-#: ../src/verbs.cpp:2446
+#: ../src/verbs.cpp:2415
msgid "Remove unused definitions (such as gradients or clipping paths) from the &lt;defs&gt; of the document"
msgstr "Aizvākt neizmantotos iestatÄ«jumus (piemēram, krāsu pārejas vai izgrieĆĄanas ceÄŒus) no dokumenta &lt;defs&gt;"
-#: ../src/verbs.cpp:2448
+#: ../src/verbs.cpp:2417
msgid "_Import..."
msgstr "_Importēt..."
-#: ../src/verbs.cpp:2449
+#: ../src/verbs.cpp:2418
msgid "Import a bitmap or SVG image into this document"
msgstr "Importēt bitkartes vai SVG attēlu ơajā dokumentā"
#. new FileVerb(SP_VERB_FILE_EXPORT, "FileExport", N_("_Export Bitmap..."), N_("Export this document or a selection as a bitmap image"), INKSCAPE_ICON("document-export")),
-#: ../src/verbs.cpp:2451
+#: ../src/verbs.cpp:2420
msgid "Import Clip Art..."
msgstr "Importēt attēlu galeriju..."
-#: ../src/verbs.cpp:2452
+#: ../src/verbs.cpp:2421
msgid "Import clipart from Open Clip Art Library"
msgstr "Importēt attēlu no Open Clip Art bibliotēkas"
#. new FileVerb(SP_VERB_FILE_EXPORT_TO_OCAL, "FileExportToOCAL", N_("Export To Open Clip Art Library"), N_("Export this document to Open Clip Art Library"), INKSCAPE_ICON_DOCUMENT_EXPORT_OCAL),
-#: ../src/verbs.cpp:2454
+#: ../src/verbs.cpp:2423
msgid "N_ext Window"
msgstr "_Nākoƥais logs"
-#: ../src/verbs.cpp:2455
+#: ../src/verbs.cpp:2424
msgid "Switch to the next document window"
msgstr "Pārslēgties uz nākoơā dokumenta logu"
-#: ../src/verbs.cpp:2456
+#: ../src/verbs.cpp:2425
msgid "P_revious Window"
msgstr "Ie_priekơējais logs"
-#: ../src/verbs.cpp:2457
+#: ../src/verbs.cpp:2426
msgid "Switch to the previous document window"
msgstr "Pārslēgties uz iepriekơējā dokumenta logu"
-#: ../src/verbs.cpp:2458
+#: ../src/verbs.cpp:2427
msgid "_Close"
msgstr "_Aizvērt"
-#: ../src/verbs.cpp:2459
+#: ../src/verbs.cpp:2428
msgid "Close this document window"
msgstr "Aizvērt patreizējā dokumenta logu"
-#: ../src/verbs.cpp:2460
+#: ../src/verbs.cpp:2429
msgid "_Quit"
msgstr "_Iziet"
-#: ../src/verbs.cpp:2460
+#: ../src/verbs.cpp:2429
msgid "Quit Inkscape"
msgstr "Iziet no Inkscape"
-#: ../src/verbs.cpp:2461
+#: ../src/verbs.cpp:2430
msgid "New from _Template..."
msgstr "Jaunu no saga_taves..."
-#: ../src/verbs.cpp:2462
+#: ../src/verbs.cpp:2431
msgid "Create new project from template"
msgstr "Izveidot jaunu projektu no veidnes"
-#: ../src/verbs.cpp:2465
+#: ../src/verbs.cpp:2434
msgid "Undo last action"
msgstr "Atsaukt pēdējo darbību"
-#: ../src/verbs.cpp:2468
+#: ../src/verbs.cpp:2437
msgid "Do again the last undone action"
msgstr "Atkārtot pēdējo atsaukto darbību"
-#: ../src/verbs.cpp:2469
+#: ../src/verbs.cpp:2438
msgid "Cu_t"
msgstr "Griez_t"
-#: ../src/verbs.cpp:2470
+#: ../src/verbs.cpp:2439
msgid "Cut selection to clipboard"
msgstr "Izgriezt atlasīto uz starpliktuvi"
-#: ../src/verbs.cpp:2471
+#: ../src/verbs.cpp:2440
msgid "_Copy"
msgstr "_Kopēt"
-#: ../src/verbs.cpp:2472
+#: ../src/verbs.cpp:2441
msgid "Copy selection to clipboard"
msgstr "Kopēt atlasīto uz starpliktuvi"
-#: ../src/verbs.cpp:2473
+#: ../src/verbs.cpp:2442
msgid "_Paste"
msgstr "_Ielīmēt"
-#: ../src/verbs.cpp:2474
+#: ../src/verbs.cpp:2443
msgid "Paste objects from clipboard to mouse point, or paste text"
msgstr "Ielīmēt objektus vai tekstu no starpliktuves peles kursora norādītajā vietā"
-#: ../src/verbs.cpp:2475
+#: ../src/verbs.cpp:2444
msgid "Paste _Style"
msgstr "Ielīmēt stilu"
-#: ../src/verbs.cpp:2476
+#: ../src/verbs.cpp:2445
msgid "Apply the style of the copied object to selection"
msgstr "Pielietot atlasītajam nokopētā objekta stilu"
-#: ../src/verbs.cpp:2478
+#: ../src/verbs.cpp:2447
msgid "Scale selection to match the size of the copied object"
msgstr "Mērogot atlasīto, lai atbilstu nokopētā objekta izmēram"
-#: ../src/verbs.cpp:2479
+#: ../src/verbs.cpp:2448
msgid "Paste _Width"
msgstr "Ielīmēt pla_tumu"
-#: ../src/verbs.cpp:2480
+#: ../src/verbs.cpp:2449
msgid "Scale selection horizontally to match the width of the copied object"
msgstr "Mērogot atlasīto horizontāli, lai atbilstu nokopētā objekta platumam"
-#: ../src/verbs.cpp:2481
+#: ../src/verbs.cpp:2450
msgid "Paste _Height"
msgstr "Ielīmēt au_gstumu"
-#: ../src/verbs.cpp:2482
+#: ../src/verbs.cpp:2451
msgid "Scale selection vertically to match the height of the copied object"
msgstr "Mērogot atlasīto vertikāli, lai atbilstu nokopētā objekta augstumam"
-#: ../src/verbs.cpp:2483
+#: ../src/verbs.cpp:2452
msgid "Paste Size Separately"
msgstr "IelÄ«mēt izmērus atseviĆĄÄ·i"
-#: ../src/verbs.cpp:2484
+#: ../src/verbs.cpp:2453
msgid "Scale each selected object to match the size of the copied object"
msgstr "Mērogot katru atlasīto objektu, lai atbilstu nokopētā objekta izmēram"
-#: ../src/verbs.cpp:2485
+#: ../src/verbs.cpp:2454
msgid "Paste Width Separately"
msgstr "IelÄ«mēt platumu atseviĆĄÄ·i"
-#: ../src/verbs.cpp:2486
+#: ../src/verbs.cpp:2455
msgid "Scale each selected object horizontally to match the width of the copied object"
msgstr "Mērogot katru atlasīto objektu horizontāli, lai atbilstu nokopētā objekta platumam"
-#: ../src/verbs.cpp:2487
+#: ../src/verbs.cpp:2456
msgid "Paste Height Separately"
msgstr "IelÄ«mēt augstumu atseviĆĄÄ·i"
-#: ../src/verbs.cpp:2488
+#: ../src/verbs.cpp:2457
msgid "Scale each selected object vertically to match the height of the copied object"
msgstr "Mērogot katru atlasīto objektu vertikāli, lai atbilstu nokopētā objekta augstumam"
-#: ../src/verbs.cpp:2489
+#: ../src/verbs.cpp:2458
msgid "Paste _In Place"
msgstr "Ielīmēt vietā"
-#: ../src/verbs.cpp:2490
+#: ../src/verbs.cpp:2459
msgid "Paste objects from clipboard to the original location"
msgstr "IelÄ«mēt objektus no starpliktuves to sākotnējā atraĆĄanās vietā"
-#: ../src/verbs.cpp:2491
+#: ../src/verbs.cpp:2460
msgid "Paste Path _Effect"
msgstr "IelÄ«mēt ceÄŒa _efektu"
-#: ../src/verbs.cpp:2492
+#: ../src/verbs.cpp:2461
msgid "Apply the path effect of the copied object to selection"
msgstr "Pielietot nokopētā objekta ceÄŒa efektu atlasÄ«tajam"
-#: ../src/verbs.cpp:2493
+#: ../src/verbs.cpp:2462
msgid "Remove Path _Effect"
msgstr "Aizvākt ceČa _efektu"
-#: ../src/verbs.cpp:2494
+#: ../src/verbs.cpp:2463
msgid "Remove any path effects from selected objects"
msgstr "Aizvākt visus ceČa efektus no atlasītajiem objektiem"
-#: ../src/verbs.cpp:2495
+#: ../src/verbs.cpp:2464
msgid "_Remove Filters"
msgstr "IzƆemt filt_rus"
-#: ../src/verbs.cpp:2496
+#: ../src/verbs.cpp:2465
msgid "Remove any filters from selected objects"
msgstr "Aizvākt visus filtrus no atlasītajiem objektiem"
-#: ../src/verbs.cpp:2497
+#: ../src/verbs.cpp:2466
msgid "_Delete"
msgstr "_Dzēst"
-#: ../src/verbs.cpp:2498
+#: ../src/verbs.cpp:2467
msgid "Delete selection"
msgstr "Dzēst iezīmēto"
-#: ../src/verbs.cpp:2499
+#: ../src/verbs.cpp:2468
msgid "Duplic_ate"
msgstr "Du_blēt"
-#: ../src/verbs.cpp:2500
+#: ../src/verbs.cpp:2469
msgid "Duplicate selected objects"
msgstr "Dublēt iezīmētos objektus"
-#: ../src/verbs.cpp:2501
+#: ../src/verbs.cpp:2470
msgid "Create Clo_ne"
msgstr "Izveidot klo_nu"
-#: ../src/verbs.cpp:2502
+#: ../src/verbs.cpp:2471
msgid "Create a clone (a copy linked to the original) of selected object"
msgstr "Izveidot atlasÄ«tā objekta klonus (vai kopēt, piesaistot oriÄŁinālam)"
-#: ../src/verbs.cpp:2503
+#: ../src/verbs.cpp:2472
msgid "Unlin_k Clone"
msgstr "Atsaistīt _klonu"
-#: ../src/verbs.cpp:2504
+#: ../src/verbs.cpp:2473
msgid "Cut the selected clones' links to the originals, turning them into standalone objects"
msgstr "Saraut atlasīto klonu saites ar oriģināliem, pārveidojot tos par neatkarīgiem objektiem"
-#: ../src/verbs.cpp:2505
+#: ../src/verbs.cpp:2474
msgid "Relink to Copied"
msgstr "No jauna piesaistīt kopetajam"
-#: ../src/verbs.cpp:2506
+#: ../src/verbs.cpp:2475
msgid "Relink the selected clones to the object currently on the clipboard"
msgstr "Atjaunot atlasÄ«to klonu saites uz paĆĄreiz starpliktuvē atrodoĆĄos objektu"
-#: ../src/verbs.cpp:2507
+#: ../src/verbs.cpp:2476
msgid "Select _Original"
msgstr "Atlasīt _oriģinālu"
-#: ../src/verbs.cpp:2508
+#: ../src/verbs.cpp:2477
msgid "Select the object to which the selected clone is linked"
msgstr "Atlasīt objektu, kuram ir piesaistīts atlasītais klons"
-#: ../src/verbs.cpp:2509
+#: ../src/verbs.cpp:2478
msgid "Clone original path (LPE)"
msgstr "Klonēt sākotnējo ceÄŒu (LPE)"
-#: ../src/verbs.cpp:2510
+#: ../src/verbs.cpp:2479
msgid "Creates a new path, applies the Clone original LPE, and refers it to the selected path"
msgstr "Izveido jaunu ceÄŒu, pielieto Klonēt sākotnējo LPE un izveido atsauci uz atlasÄ«to ceÄŒu"
-#: ../src/verbs.cpp:2511
+#: ../src/verbs.cpp:2480
msgid "Objects to _Marker"
msgstr "Objektus par _marÄ·ieriem"
-#: ../src/verbs.cpp:2512
+#: ../src/verbs.cpp:2481
msgid "Convert selection to a line marker"
msgstr "Pārvērst atlasīto par līnijas marķieri"
-#: ../src/verbs.cpp:2513
+#: ../src/verbs.cpp:2482
msgid "Objects to Gu_ides"
msgstr "Objektus par palīglīn_ijām"
-#: ../src/verbs.cpp:2514
+#: ../src/verbs.cpp:2483
msgid "Convert selected objects to a collection of guidelines aligned with their edges"
msgstr "Pārveidot atlasītos objektus par gar objektu malām izkārtotu palīglīniju kopu"
-#: ../src/verbs.cpp:2515
+#: ../src/verbs.cpp:2484
msgid "Objects to Patter_n"
msgstr "Objektus par _faktƫru"
-#: ../src/verbs.cpp:2516
+#: ../src/verbs.cpp:2485
msgid "Convert selection to a rectangle with tiled pattern fill"
msgstr "Pārvērst atlasÄ«to par ar faktĆ«ras elementiem aizpildÄ«tu taisnstĆ«ri"
-#: ../src/verbs.cpp:2517
+#: ../src/verbs.cpp:2486
msgid "Pattern to _Objects"
msgstr "Faktƫru par _objektiem"
-#: ../src/verbs.cpp:2518
+#: ../src/verbs.cpp:2487
msgid "Extract objects from a tiled pattern fill"
msgstr "Ekstraģēt objektus no faktĆ«ras aizpildÄ«juma"
-#: ../src/verbs.cpp:2519
+#: ../src/verbs.cpp:2488
msgid "Group to Symbol"
msgstr "Grupu par simbolu"
-#: ../src/verbs.cpp:2520
+#: ../src/verbs.cpp:2489
msgid "Convert group to a symbol"
msgstr "Pārvērst grupu par simbolu"
-#: ../src/verbs.cpp:2521
+#: ../src/verbs.cpp:2490
msgid "Symbol to Group"
msgstr "Simbolu par grupu"
-#: ../src/verbs.cpp:2522
+#: ../src/verbs.cpp:2491
msgid "Extract group from a symbol"
msgstr "Ekstraģēt grupu no simbola"
-#: ../src/verbs.cpp:2523
+#: ../src/verbs.cpp:2492
msgid "Clea_r All"
msgstr "Notī_rīt visu"
-#: ../src/verbs.cpp:2524
+#: ../src/verbs.cpp:2493
msgid "Delete all objects from document"
msgstr "Dzēst visus objektus dokumentā"
-#: ../src/verbs.cpp:2525
+#: ../src/verbs.cpp:2494
msgid "Select Al_l"
msgstr "Atlasīt _visu"
-#: ../src/verbs.cpp:2526
+#: ../src/verbs.cpp:2495
msgid "Select all objects or all nodes"
msgstr "Atlasīt visus objektus vai mezglus"
-#: ../src/verbs.cpp:2527
+#: ../src/verbs.cpp:2496
msgid "Select All in All La_yers"
msgstr "AtlasÄ«t visu visos s_lāƆos"
-#: ../src/verbs.cpp:2528
+#: ../src/verbs.cpp:2497
msgid "Select all objects in all visible and unlocked layers"
msgstr "AtlasÄ«t visus objektus visos redzamajos un atvērtajos slāƆos"
-#: ../src/verbs.cpp:2529
+#: ../src/verbs.cpp:2498
msgid "Fill _and Stroke"
msgstr "Aizpildījums un apmale"
-#: ../src/verbs.cpp:2530
+#: ../src/verbs.cpp:2499
msgid "Select all objects with the same fill and stroke as the selected objects"
msgstr "Atlasīt visus objektus ar līdzīgu aizpildījumu un apmales platumu, kā jau atlasītajiem"
-#: ../src/verbs.cpp:2531
+#: ../src/verbs.cpp:2500
msgid "_Fill Color"
msgstr "_Pildījuma krāsa"
-#: ../src/verbs.cpp:2532
+#: ../src/verbs.cpp:2501
msgid "Select all objects with the same fill as the selected objects"
msgstr "Atlasīt visus objektus ar līdzīgu aizpildījumu, kā jau atlasītajiem"
-#: ../src/verbs.cpp:2533
+#: ../src/verbs.cpp:2502
msgid "_Stroke Color"
msgstr "_Apmales krāsa"
-#: ../src/verbs.cpp:2534
+#: ../src/verbs.cpp:2503
msgid "Select all objects with the same stroke as the selected objects"
msgstr "Atlasīt visus objektus ar līdzīgu apmales platumu, kā jau atlasītajiem"
-#: ../src/verbs.cpp:2535
+#: ../src/verbs.cpp:2504
msgid "Stroke St_yle"
msgstr "Apmales sti_ls"
-#: ../src/verbs.cpp:2536
+#: ../src/verbs.cpp:2505
msgid "Select all objects with the same stroke style (width, dash, markers) as the selected objects"
msgstr "Atlasīt visus objektus ar līdzīgu apmales stilu (platums, dalījumu, marķieri), kā jau atlasītajiem"
-#: ../src/verbs.cpp:2537
+#: ../src/verbs.cpp:2506
msgid "_Object Type"
msgstr "_Objekta tips"
-#: ../src/verbs.cpp:2538
+#: ../src/verbs.cpp:2507
msgid "Select all objects with the same object type (rect, arc, text, path, bitmap etc) as the selected objects"
msgstr "AtlasÄ«t visus objektus ar lÄ«dzÄ«gu tipu, kā jau atlasÄ«tajiem (taisnstĆ«ris, loks, teksts, bitkarte, ceÄŒĆĄ utml.)"
-#: ../src/verbs.cpp:2539
+#: ../src/verbs.cpp:2508
msgid "In_vert Selection"
msgstr "In_vertēt izvēlēto"
-#: ../src/verbs.cpp:2540
+#: ../src/verbs.cpp:2509
msgid "Invert selection (unselect what is selected and select everything else)"
msgstr "Invertēt atlasÄ«to (atceÄŒ iepriekơējo atlasi un atlasa visu pārējo)"
-#: ../src/verbs.cpp:2541
+#: ../src/verbs.cpp:2510
msgid "Invert in All Layers"
msgstr "Invertēt visus slāƆus"
-#: ../src/verbs.cpp:2542
+#: ../src/verbs.cpp:2511
msgid "Invert selection in all visible and unlocked layers"
msgstr "Invertēt atlasÄ«to visos redzamajos un atvērtajos slāƆos"
-#: ../src/verbs.cpp:2543
+#: ../src/verbs.cpp:2512
msgid "Select Next"
msgstr "Atlasīt nākoƥo"
-#: ../src/verbs.cpp:2544
+#: ../src/verbs.cpp:2513
msgid "Select next object or node"
msgstr "Atlasīt nākoƥo objektu vai mezglu"
-#: ../src/verbs.cpp:2545
+#: ../src/verbs.cpp:2514
msgid "Select Previous"
msgstr "AtlasÄ«t iepriekơējo"
-#: ../src/verbs.cpp:2546
+#: ../src/verbs.cpp:2515
msgid "Select previous object or node"
msgstr "AtlasÄ«t iepriekơējo objektu vai mezglu"
-#: ../src/verbs.cpp:2547
+#: ../src/verbs.cpp:2516
msgid "D_eselect"
msgstr "Atc_elt atlasi"
-#: ../src/verbs.cpp:2548
+#: ../src/verbs.cpp:2517
msgid "Deselect any selected objects or nodes"
msgstr "Atcelt visu objektu vai mezglu atlasi"
-#: ../src/verbs.cpp:2550
+#: ../src/verbs.cpp:2519
msgid "Delete all the guides in the document"
msgstr "Dzēst visas dokumentā esoƥās palÄ«glÄ«nijas"
-#: ../src/verbs.cpp:2551
+#: ../src/verbs.cpp:2520
msgid "Create _Guides Around the Page"
msgstr "Izveidot palī_glīnijas apkārt lapai"
-#: ../src/verbs.cpp:2552
+#: ../src/verbs.cpp:2521
msgid "Create four guides aligned with the page borders"
msgstr "Izveidojiet četras gar lapas malām novietotas palīglīnijas"
-#: ../src/verbs.cpp:2553
+#: ../src/verbs.cpp:2522
msgid "Next path effect parameter"
msgstr "NākoĆĄais ceÄŒa efekta parametrs"
-#: ../src/verbs.cpp:2554
+#: ../src/verbs.cpp:2523
msgid "Show next editable path effect parameter"
msgstr "RādÄ«t nākoĆĄo labojamo ceÄŒa efekta parametru"
#. Selection
-#: ../src/verbs.cpp:2557
+#: ../src/verbs.cpp:2526
msgid "Raise to _Top"
msgstr "Pacelt _virspusē"
-#: ../src/verbs.cpp:2558
+#: ../src/verbs.cpp:2527
msgid "Raise selection to top"
msgstr "Pacelt izvēlēto paơā augơā"
-#: ../src/verbs.cpp:2559
+#: ../src/verbs.cpp:2528
msgid "Lower to _Bottom"
msgstr "Nolaist paƥā apakƥā"
-#: ../src/verbs.cpp:2560
+#: ../src/verbs.cpp:2529
msgid "Lower selection to bottom"
msgstr "Nolaist izvēlēto paơā apakơā"
-#: ../src/verbs.cpp:2561
+#: ../src/verbs.cpp:2530
msgid "_Raise"
msgstr "Pacelt"
-#: ../src/verbs.cpp:2562
+#: ../src/verbs.cpp:2531
msgid "Raise selection one step"
msgstr "Pacelt izvēlēto par vienu soli uz augơu"
-#: ../src/verbs.cpp:2563
+#: ../src/verbs.cpp:2532
msgid "_Lower"
msgstr "_Nolaist"
-#: ../src/verbs.cpp:2564
+#: ../src/verbs.cpp:2533
msgid "Lower selection one step"
msgstr "Pacelt izvēlēto par vienu soli uz leju"
-#: ../src/verbs.cpp:2566
+#: ../src/verbs.cpp:2535
msgid "Group selected objects"
msgstr "Grupēt iezīmētos objektus"
-#: ../src/verbs.cpp:2568
+#: ../src/verbs.cpp:2537
msgid "Ungroup selected groups"
msgstr "Atgrupēt iezīmētās grupas"
-#: ../src/verbs.cpp:2570
+#: ../src/verbs.cpp:2539
msgid "_Put on Path"
msgstr "Izvietot gar ceÄŒu"
-#: ../src/verbs.cpp:2572
+#: ../src/verbs.cpp:2541
msgid "_Remove from Path"
msgstr "Aizvākt no ceČa"
-#: ../src/verbs.cpp:2574
+#: ../src/verbs.cpp:2543
msgid "Remove Manual _Kerns"
msgstr "aizvākt rokas rakstasavirzi"
#. TRANSLATORS: "glyph": An image used in the visual representation of characters;
#. roughly speaking, how a character looks. A font is a set of glyphs.
-#: ../src/verbs.cpp:2577
+#: ../src/verbs.cpp:2546
msgid "Remove all manual kerns and glyph rotations from a text object"
msgstr "Aizvākt no teksta objekta visas ar roku iestatītās rakstavirzes un glifu pagriezienus"
-#: ../src/verbs.cpp:2579
+#: ../src/verbs.cpp:2548
msgid "_Union"
msgstr "Ap_vienot"
-#: ../src/verbs.cpp:2580
+#: ../src/verbs.cpp:2549
msgid "Create union of selected paths"
msgstr "Apvienots atlasītos ceČus"
-#: ../src/verbs.cpp:2581
+#: ../src/verbs.cpp:2550
msgid "_Intersection"
msgstr "_Ơķēlums"
-#: ../src/verbs.cpp:2582
+#: ../src/verbs.cpp:2551
msgid "Create intersection of selected paths"
msgstr "Izveidot atlasīto ceČu krustpunktu"
-#: ../src/verbs.cpp:2583
+#: ../src/verbs.cpp:2552
msgid "_Difference"
msgstr "_Atƥķirība"
-#: ../src/verbs.cpp:2584
+#: ../src/verbs.cpp:2553
msgid "Create difference of selected paths (bottom minus top)"
msgstr "Izveidot atlasÄ«to ceÄŒu starpÄ«bu (apakơējais mÄ«nus augơējais)"
-#: ../src/verbs.cpp:2585
+#: ../src/verbs.cpp:2554
msgid "E_xclusion"
msgstr "I_zƆēmums"
-#: ../src/verbs.cpp:2586
+#: ../src/verbs.cpp:2555
msgid "Create exclusive OR of selected paths (those parts that belong to only one path)"
msgstr "No atlasÄ«tajiem ceÄŒiem izveidot izslēdzoĆĄo VAI (tās daÄŒas, kas pieder tikai vienam ceÄŒam)"
-#: ../src/verbs.cpp:2587
+#: ../src/verbs.cpp:2556
msgid "Di_vision"
msgstr "Ie_daÄŒas"
-#: ../src/verbs.cpp:2588
+#: ../src/verbs.cpp:2557
msgid "Cut the bottom path into pieces"
msgstr "Sagriezt apakơējo ceÄŒu gabalos"
#. TRANSLATORS: "to cut a path" is not the same as "to break a path apart" - see the
#. Advanced tutorial for more info
-#: ../src/verbs.cpp:2591
+#: ../src/verbs.cpp:2560
msgid "Cut _Path"
msgstr "Pārgriezt _ceČu"
-#: ../src/verbs.cpp:2592
+#: ../src/verbs.cpp:2561
msgid "Cut the bottom path's stroke into pieces, removing fill"
msgstr "Sagriezt apakơējā ceÄŒa apmali posmos, aizvācot aizpildÄ«jumu"
#. TRANSLATORS: "outset": expand a shape by offsetting the object's path,
#. i.e. by displacing it perpendicular to the path in each point.
#. See also the Advanced Tutorial for explanation.
-#: ../src/verbs.cpp:2596
+#: ../src/verbs.cpp:2565
msgid "Outs_et"
msgstr "Paga_rināt"
-#: ../src/verbs.cpp:2597
+#: ../src/verbs.cpp:2566
msgid "Outset selected paths"
msgstr "Pagarināt atlasīto ceČu"
-#: ../src/verbs.cpp:2599
+#: ../src/verbs.cpp:2568
msgid "O_utset Path by 1 px"
msgstr "Pagarināt atlasīto ceČ_u par 1 px"
-#: ../src/verbs.cpp:2600
+#: ../src/verbs.cpp:2569
msgid "Outset selected paths by 1 px"
msgstr "Pagarināt atlasīto ceČu par 1 px"
-#: ../src/verbs.cpp:2602
+#: ../src/verbs.cpp:2571
msgid "O_utset Path by 10 px"
msgstr "Pagarināt atlasīto ceČu par 10 px"
-#: ../src/verbs.cpp:2603
+#: ../src/verbs.cpp:2572
msgid "Outset selected paths by 10 px"
msgstr "Pagarināt atlasīto ceČu par 10 px"
#. TRANSLATORS: "inset": contract a shape by offsetting the object's path,
#. i.e. by displacing it perpendicular to the path in each point.
#. See also the Advanced Tutorial for explanation.
-#: ../src/verbs.cpp:2607
+#: ../src/verbs.cpp:2576
msgid "I_nset"
msgstr "Saīsi_nāt"
-#: ../src/verbs.cpp:2608
+#: ../src/verbs.cpp:2577
msgid "Inset selected paths"
msgstr "Pārvietot atlasÄ«tos ceÄŒus uz iekĆĄu"
-#: ../src/verbs.cpp:2610
+#: ../src/verbs.cpp:2579
msgid "I_nset Path by 1 px"
msgstr "Saīsi_nāt ceČu par 1 px"
-#: ../src/verbs.cpp:2611
+#: ../src/verbs.cpp:2580
msgid "Inset selected paths by 1 px"
msgstr "Saīsināt atlasīto ceČu par 1 px"
-#: ../src/verbs.cpp:2613
+#: ../src/verbs.cpp:2582
msgid "I_nset Path by 10 px"
msgstr "Saīsi_nāt ceČu par 10 px"
-#: ../src/verbs.cpp:2614
+#: ../src/verbs.cpp:2583
msgid "Inset selected paths by 10 px"
msgstr "Saīsināt atlasīto ceČu par 10 px"
-#: ../src/verbs.cpp:2616
+#: ../src/verbs.cpp:2585
msgid "D_ynamic Offset"
msgstr "Dinamiskā nobīde"
-#: ../src/verbs.cpp:2616
+#: ../src/verbs.cpp:2585
msgid "Create a dynamic offset object"
msgstr "Izveidot dinamiski nobīdītu objektu"
-#: ../src/verbs.cpp:2618
+#: ../src/verbs.cpp:2587
msgid "_Linked Offset"
msgstr "Saistītā nobīde"
-#: ../src/verbs.cpp:2619
+#: ../src/verbs.cpp:2588
msgid "Create a dynamic offset object linked to the original path"
msgstr "Izveidot pie sākotnējā ceÄŒa piesaistÄ«tu dinamisko nobÄ«dÄ«tu objektu"
-#: ../src/verbs.cpp:2621
+#: ../src/verbs.cpp:2590
msgid "_Stroke to Path"
msgstr "Vilku_mu par ceÄŒu"
-#: ../src/verbs.cpp:2622
+#: ../src/verbs.cpp:2591
msgid "Convert selected object's stroke to paths"
msgstr "Pārvērst atlasÄ«tā objekta apmali ceÄŒos"
-#: ../src/verbs.cpp:2623
+#: ../src/verbs.cpp:2592
msgid "Si_mplify"
msgstr "V_ienkārƥot"
-#: ../src/verbs.cpp:2624
+#: ../src/verbs.cpp:2593
msgid "Simplify selected paths (remove extra nodes)"
msgstr "VienkārĆĄo atlasÄ«tos ceÄŒus (aizvāc liekos mezglus)"
-#: ../src/verbs.cpp:2625
+#: ../src/verbs.cpp:2594
msgid "_Reverse"
msgstr "Apg_rieztā secībā"
-#: ../src/verbs.cpp:2626
+#: ../src/verbs.cpp:2595
msgid "Reverse the direction of selected paths (useful for flipping markers)"
msgstr "Pagriezt atlasÄ«tos ceÄŒus pretējā virzienā (noderÄ«gs marÄ·ieru apgrieĆĄanai)"
-#: ../src/verbs.cpp:2629
+#: ../src/verbs.cpp:2598
msgid "Create one or more paths from a bitmap by tracing it"
msgstr "Vektorizējot izveido no bitkartes vienu vai vairākus ceÄŒus"
-#: ../src/verbs.cpp:2630
+#: ../src/verbs.cpp:2599
msgid "Trace Pixel Art..."
msgstr "Vektorizēt pikseÄŒu attēlu..."
-#: ../src/verbs.cpp:2631
+#: ../src/verbs.cpp:2600
msgid "Create paths using Kopf-Lischinski algorithm to vectorize pixel art"
msgstr "Vektorizējot pikseÄŒu attēlus veidot ceÄŒus izmantojot Kopfa-LiĆĄinska algoritmu"
-#: ../src/verbs.cpp:2632
+#: ../src/verbs.cpp:2601
msgid "Make a _Bitmap Copy"
msgstr "Izveidot _bitkartes kopiju"
-#: ../src/verbs.cpp:2633
+#: ../src/verbs.cpp:2602
msgid "Export selection to a bitmap and insert it into document"
msgstr "Eksportēt atlasīto uz bitkarti un ievietot to dokumentā"
-#: ../src/verbs.cpp:2634
+#: ../src/verbs.cpp:2603
msgid "_Combine"
msgstr "_Kombinēt"
-#: ../src/verbs.cpp:2635
+#: ../src/verbs.cpp:2604
msgid "Combine several paths into one"
msgstr "Apvieno vairākus ceČus vienā"
#. TRANSLATORS: "to cut a path" is not the same as "to break a path apart" - see the
#. Advanced tutorial for more info
-#: ../src/verbs.cpp:2638
+#: ../src/verbs.cpp:2607
msgid "Break _Apart"
msgstr "S_aĆĄÄ·elt"
-#: ../src/verbs.cpp:2639
+#: ../src/verbs.cpp:2608
msgid "Break selected paths into subpaths"
msgstr "SaĆĄÄ·elt atlasÄ«tos ceÄŒus apakĆĄceÄŒos"
-#: ../src/verbs.cpp:2640
+#: ../src/verbs.cpp:2609
msgid "_Arrange..."
msgstr "S_akārtot..."
-#: ../src/verbs.cpp:2641
+#: ../src/verbs.cpp:2610
msgid "Arrange selected objects in a table or circle"
msgstr "Sakārtot atlasītos objektus tabulā vai aplī"
#. Layer
-#: ../src/verbs.cpp:2643
+#: ../src/verbs.cpp:2612
msgid "_Add Layer..."
msgstr "Pie_vienot slāni..."
-#: ../src/verbs.cpp:2644
+#: ../src/verbs.cpp:2613
msgid "Create a new layer"
msgstr "Izveidot jaunu slāni"
-#: ../src/verbs.cpp:2645
+#: ../src/verbs.cpp:2614
msgid "Re_name Layer..."
msgstr "Pārdēvēt slā_ni..."
-#: ../src/verbs.cpp:2646
+#: ../src/verbs.cpp:2615
msgid "Rename the current layer"
msgstr "Pārdēvēt paơreizējo slāni"
-#: ../src/verbs.cpp:2647
+#: ../src/verbs.cpp:2616
msgid "Switch to Layer Abov_e"
msgstr "Pārslēgties uz virsējo slāni"
-#: ../src/verbs.cpp:2648
+#: ../src/verbs.cpp:2617
msgid "Switch to the layer above the current"
msgstr "Pārslēgties uz slāni virs paơreizējā"
-#: ../src/verbs.cpp:2649
+#: ../src/verbs.cpp:2618
msgid "Switch to Layer Belo_w"
msgstr "Pārslēgties uz apakơējo slāni"
-#: ../src/verbs.cpp:2650
+#: ../src/verbs.cpp:2619
msgid "Switch to the layer below the current"
msgstr "Pārslēgties uz slāni zem paơreizējā"
-#: ../src/verbs.cpp:2651
+#: ../src/verbs.cpp:2620
msgid "Move Selection to Layer Abo_ve"
msgstr "Pārvietot atlasīto uz slāni _virs ƥī"
-#: ../src/verbs.cpp:2652
+#: ../src/verbs.cpp:2621
msgid "Move selection to the layer above the current"
msgstr "Pārvietot izvēlēto uz slāni virs paơreizējā"
-#: ../src/verbs.cpp:2653
+#: ../src/verbs.cpp:2622
msgid "Move Selection to Layer Bel_ow"
msgstr "Pārvietot atlasīto uz slāni _zem ƥī"
-#: ../src/verbs.cpp:2654
+#: ../src/verbs.cpp:2623
msgid "Move selection to the layer below the current"
msgstr "Pārvietot izvēlēto uz slāni zem paơreizējā"
-#: ../src/verbs.cpp:2655
+#: ../src/verbs.cpp:2624
msgid "Move Selection to Layer..."
msgstr "Pārvietot atlasīto uz slāni..."
-#: ../src/verbs.cpp:2657
+#: ../src/verbs.cpp:2626
msgid "Layer to _Top"
msgstr "Slāni uz _virspusi"
-#: ../src/verbs.cpp:2658
+#: ../src/verbs.cpp:2627
msgid "Raise the current layer to the top"
msgstr "Pacelt paơreizējo slāni virspusē"
-#: ../src/verbs.cpp:2659
+#: ../src/verbs.cpp:2628
msgid "Layer to _Bottom"
msgstr "Slāni uz a_pakƥu"
-#: ../src/verbs.cpp:2660
+#: ../src/verbs.cpp:2629
msgid "Lower the current layer to the bottom"
msgstr "Nolaist paơreizējo slāni apakơā"
-#: ../src/verbs.cpp:2661
+#: ../src/verbs.cpp:2630
msgid "_Raise Layer"
msgstr "_Pacelt slāni"
-#: ../src/verbs.cpp:2662
+#: ../src/verbs.cpp:2631
msgid "Raise the current layer"
msgstr "Pacelt paơreizējo slāni"
-#: ../src/verbs.cpp:2663
+#: ../src/verbs.cpp:2632
msgid "_Lower Layer"
msgstr "No_laist slāni"
-#: ../src/verbs.cpp:2664
+#: ../src/verbs.cpp:2633
msgid "Lower the current layer"
msgstr "Nolaist paơreizējo slāni"
-#: ../src/verbs.cpp:2665
+#: ../src/verbs.cpp:2634
msgid "D_uplicate Current Layer"
msgstr "Dublēt paơreizējo slāni"
-#: ../src/verbs.cpp:2666
+#: ../src/verbs.cpp:2635
msgid "Duplicate an existing layer"
msgstr "Dublēt esoơu slāni"
-#: ../src/verbs.cpp:2667
+#: ../src/verbs.cpp:2636
msgid "_Delete Current Layer"
msgstr "_Dzēst paơreizējo slāni"
-#: ../src/verbs.cpp:2668
+#: ../src/verbs.cpp:2637
msgid "Delete the current layer"
msgstr "Dzēst paơreizējo slāni"
-#: ../src/verbs.cpp:2669
+#: ../src/verbs.cpp:2638
msgid "_Show/hide other layers"
msgstr "_RādÄ«t/slēpt citus slāƆus"
-#: ../src/verbs.cpp:2670
+#: ../src/verbs.cpp:2639
msgid "Solo the current layer"
msgstr "Tikai ƥo slāni"
-#: ../src/verbs.cpp:2671
+#: ../src/verbs.cpp:2640
msgid "_Show all layers"
msgstr "RādÄ«t vi_sus slāƆus"
-#: ../src/verbs.cpp:2672
+#: ../src/verbs.cpp:2641
msgid "Show all the layers"
msgstr "RādÄ«t visus slāƆus"
-#: ../src/verbs.cpp:2673
+#: ../src/verbs.cpp:2642
msgid "_Hide all layers"
msgstr "Slē_pt visus slāƆus"
-#: ../src/verbs.cpp:2674
+#: ../src/verbs.cpp:2643
msgid "Hide all the layers"
msgstr "Slēpt visus slāƆus"
-#: ../src/verbs.cpp:2675
+#: ../src/verbs.cpp:2644
msgid "_Lock all layers"
msgstr "S_lēgt visus slāƆus"
-#: ../src/verbs.cpp:2676
+#: ../src/verbs.cpp:2645
msgid "Lock all the layers"
msgstr "Slēdz visus slāƆus"
-#: ../src/verbs.cpp:2677
+#: ../src/verbs.cpp:2646
msgid "Lock/Unlock _other layers"
msgstr "Aizslēgt/atslēgt citus slāƆus"
-#: ../src/verbs.cpp:2678
+#: ../src/verbs.cpp:2647
msgid "Lock all the other layers"
msgstr "Slēdz visus citus slāƆus"
-#: ../src/verbs.cpp:2679
+#: ../src/verbs.cpp:2648
msgid "_Unlock all layers"
msgstr "Atslēgt visus slāƆ_us"
-#: ../src/verbs.cpp:2680
+#: ../src/verbs.cpp:2649
msgid "Unlock all the layers"
msgstr "Atslēdz visus slāƆus"
-#: ../src/verbs.cpp:2681
+#: ../src/verbs.cpp:2650
msgid "_Lock/Unlock Current Layer"
msgstr "Slē_gt/atslēgt paơreizējo slāni"
-#: ../src/verbs.cpp:2682
+#: ../src/verbs.cpp:2651
msgid "Toggle lock on current layer"
msgstr "Pārslēdz paơreizējā slāƆa slēdzeni"
-#: ../src/verbs.cpp:2683
+#: ../src/verbs.cpp:2652
msgid "_Show/hide Current Layer"
msgstr "Paslēpt/rādÄ«t paĆĄreizējo slāni"
-#: ../src/verbs.cpp:2684
+#: ../src/verbs.cpp:2653
msgid "Toggle visibility of current layer"
msgstr "Pārslēdz paĆĄreizējā slāƆa redzamÄ«bu"
#. Object
-#: ../src/verbs.cpp:2687
+#: ../src/verbs.cpp:2656
msgid "Rotate _90° CW"
msgstr "Pagriezt _90° CW"
#. This is shared between tooltips and statusbar, so they
#. must use UTF-8, not HTML entities for special characters.
-#: ../src/verbs.cpp:2690
+#: ../src/verbs.cpp:2659
msgid "Rotate selection 90° clockwise"
msgstr "Pagriezt izvēlēto par 90° pulksteƆrādÄ«tāja virzienā"
-#: ../src/verbs.cpp:2691
+#: ../src/verbs.cpp:2660
msgid "Rotate 9_0° CCW"
msgstr "Pagriezt 9_0° CCW"
#. This is shared between tooltips and statusbar, so they
#. must use UTF-8, not HTML entities for special characters.
-#: ../src/verbs.cpp:2694
+#: ../src/verbs.cpp:2663
msgid "Rotate selection 90° counter-clockwise"
msgstr "Pagriezt izvēlēto par 90° pretēji pulksteƆrādÄ«tāja virzienam"
-#: ../src/verbs.cpp:2695
+#: ../src/verbs.cpp:2664
msgid "Remove _Transformations"
msgstr "Aizvāk_t pārveidojumus"
-#: ../src/verbs.cpp:2696
+#: ../src/verbs.cpp:2665
msgid "Remove transformations from object"
msgstr "Aizvākt pārveidojumus no objekta"
-#: ../src/verbs.cpp:2697
+#: ../src/verbs.cpp:2666
msgid "_Object to Path"
msgstr "_Objektu par ceÄŒu"
-#: ../src/verbs.cpp:2698
+#: ../src/verbs.cpp:2667
msgid "Convert selected object to path"
msgstr "Pārvērst atlasÄ«to objektu par ceÄŒu"
-#: ../src/verbs.cpp:2699
+#: ../src/verbs.cpp:2668
msgid "_Flow into Frame"
msgstr "_Aizpildīt rāmi"
-#: ../src/verbs.cpp:2700
+#: ../src/verbs.cpp:2669
msgid "Put text into a frame (path or shape), creating a flowed text linked to the frame object"
msgstr "Ievietojiet tekstu rāmÄ« (ceČā vai figĆ«rā), izveidojot ar tekstu aizpildÄ«tu rāmja objektu"
-#: ../src/verbs.cpp:2701
+#: ../src/verbs.cpp:2670
msgid "_Unflow"
msgstr "Aizvākt teksta aizpildīj_umu"
-#: ../src/verbs.cpp:2702
+#: ../src/verbs.cpp:2671
msgid "Remove text from frame (creates a single-line text object)"
msgstr "IzƆemt tekstu no rāmja (izveido vienas rindas teksta objektu)"
-#: ../src/verbs.cpp:2703
+#: ../src/verbs.cpp:2672
msgid "_Convert to Text"
msgstr "_Pārveidot par tekstu"
-#: ../src/verbs.cpp:2704
+#: ../src/verbs.cpp:2673
msgid "Convert flowed text to regular text object (preserves appearance)"
msgstr "PārvērĆĄ teksta aizpildÄ«jumu par vienkārĆĄu teksta objektu (saglabājot izskatu)"
-#: ../src/verbs.cpp:2706
+#: ../src/verbs.cpp:2675
msgid "Flip _Horizontal"
msgstr "Apmest horizontāli"
-#: ../src/verbs.cpp:2706
+#: ../src/verbs.cpp:2675
msgid "Flip selected objects horizontally"
msgstr "Apmest izvēlēto objektu horizontāli"
-#: ../src/verbs.cpp:2709
+#: ../src/verbs.cpp:2678
msgid "Flip _Vertical"
msgstr "Apmest vertikāli"
-#: ../src/verbs.cpp:2709
+#: ../src/verbs.cpp:2678
msgid "Flip selected objects vertically"
msgstr "Apmest izvēlēto objektu vertikāli"
-#: ../src/verbs.cpp:2712
+#: ../src/verbs.cpp:2681
msgid "Apply mask to selection (using the topmost object as mask)"
msgstr "Uzlieciet masku atlasÄ«tajam (izmantojot augơējo objektu kā masku)"
-#: ../src/verbs.cpp:2714
+#: ../src/verbs.cpp:2683
msgid "Edit mask"
msgstr "Labot masku"
-#: ../src/verbs.cpp:2715 ../src/verbs.cpp:2723
+#: ../src/verbs.cpp:2684 ../src/verbs.cpp:2692
msgid "_Release"
msgstr "At_laist"
-#: ../src/verbs.cpp:2716
+#: ../src/verbs.cpp:2685
msgid "Remove mask from selection"
msgstr "NoƆemt maskas no atlasÄ«tā"
-#: ../src/verbs.cpp:2718
+#: ../src/verbs.cpp:2687
msgid "Apply clipping path to selection (using the topmost object as clipping path)"
msgstr "Pielietot atlasÄ«tajam izgrieĆĄanas ceÄŒu (par izgrieĆĄanas ceÄŒu izmantojot augĆĄpusē esoĆĄo objektu)"
-#: ../src/verbs.cpp:2719
+#: ../src/verbs.cpp:2688
msgid "Create Cl_ip Group"
msgstr "Izveidot kl_ipu grupu"
-#: ../src/verbs.cpp:2720
+#: ../src/verbs.cpp:2689
msgid "Creates a clip group using the selected objects as a base"
msgstr "Izveidot klipu grupu, izmantojot par pamatu atlasītos objektus"
-#: ../src/verbs.cpp:2722
+#: ../src/verbs.cpp:2691
msgid "Edit clipping path"
msgstr "Labot izgrieĆĄanas ceÄŒu"
-#: ../src/verbs.cpp:2724
+#: ../src/verbs.cpp:2693
msgid "Remove clipping path from selection"
msgstr "Aizvākt izgrieĆĄanas ceÄŒu no atlasÄ«tā"
#. Tools
-#: ../src/verbs.cpp:2729
+#: ../src/verbs.cpp:2698
msgctxt "ContextVerb"
msgid "Select"
msgstr "Iezīmēt"
-#: ../src/verbs.cpp:2730
+#: ../src/verbs.cpp:2699
msgid "Select and transform objects"
msgstr "Atlasīt un pārveidot objektus"
-#: ../src/verbs.cpp:2731
+#: ../src/verbs.cpp:2700
msgctxt "ContextVerb"
msgid "Node Edit"
msgstr "Labot mezglu"
-#: ../src/verbs.cpp:2732
+#: ../src/verbs.cpp:2701
msgid "Edit paths by nodes"
msgstr "Labot ceÄŒus pa mezgliem"
-#: ../src/verbs.cpp:2733
+#: ../src/verbs.cpp:2702
msgctxt "ContextVerb"
msgid "Tweak"
msgstr "PieskaƆot"
-#: ../src/verbs.cpp:2734
+#: ../src/verbs.cpp:2703
msgid "Tweak objects by sculpting or painting"
msgstr "PieskaƆot objektus veidojot vai krāsojot"
-#: ../src/verbs.cpp:2735
+#: ../src/verbs.cpp:2704
msgctxt "ContextVerb"
msgid "Spray"
msgstr "Smidzināt"
-#: ../src/verbs.cpp:2736
+#: ../src/verbs.cpp:2705
msgid "Spray objects by sculpting or painting"
msgstr "Izsmidzināt objektus veidojot vai krāsojot"
-#: ../src/verbs.cpp:2737
+#: ../src/verbs.cpp:2706
msgctxt "ContextVerb"
msgid "Rectangle"
msgstr "Taisnstƫris"
-#: ../src/verbs.cpp:2738
+#: ../src/verbs.cpp:2707
msgid "Create rectangles and squares"
msgstr "ZÄ«mēt taisnstĆ«rus un kvadrātus"
-#: ../src/verbs.cpp:2739
+#: ../src/verbs.cpp:2708
msgctxt "ContextVerb"
msgid "3D Box"
msgstr "3D paralēlskaldnis"
-#: ../src/verbs.cpp:2740
+#: ../src/verbs.cpp:2709
msgid "Create 3D boxes"
msgstr "Izveidot 3D paralēlskaldƆus"
-#: ../src/verbs.cpp:2741
+#: ../src/verbs.cpp:2710
msgctxt "ContextVerb"
msgid "Ellipse"
msgstr "Elipse"
-#: ../src/verbs.cpp:2742
+#: ../src/verbs.cpp:2711
msgid "Create circles, ellipses, and arcs"
msgstr "Izveidot riƆķus, elipses un lokus"
-#: ../src/verbs.cpp:2743
+#: ../src/verbs.cpp:2712
msgctxt "ContextVerb"
msgid "Star"
msgstr "Zvaigzne"
-#: ../src/verbs.cpp:2744
+#: ../src/verbs.cpp:2713
msgid "Create stars and polygons"
msgstr "Izveidot zvaigznes un daudzstƫrus"
-#: ../src/verbs.cpp:2745
+#: ../src/verbs.cpp:2714
msgctxt "ContextVerb"
msgid "Spiral"
msgstr "Spirāle"
-#: ../src/verbs.cpp:2746
+#: ../src/verbs.cpp:2715
msgid "Create spirals"
msgstr "Izveidot spirāles"
-#: ../src/verbs.cpp:2747
+#: ../src/verbs.cpp:2716
msgctxt "ContextVerb"
msgid "Pencil"
msgstr "Zīmulis"
-#: ../src/verbs.cpp:2748
+#: ../src/verbs.cpp:2717
msgid "Draw freehand lines"
msgstr "Zīmēt brīvas rokas līnijas"
-#: ../src/verbs.cpp:2749
+#: ../src/verbs.cpp:2718
msgctxt "ContextVerb"
msgid "Pen"
msgstr "Spalva"
-#: ../src/verbs.cpp:2750
+#: ../src/verbs.cpp:2719
msgid "Draw Bezier curves and straight lines"
msgstr "Zīmējiet Bezjē līknes un taisnas līnijas"
-#: ../src/verbs.cpp:2751
+#: ../src/verbs.cpp:2720
msgctxt "ContextVerb"
msgid "Calligraphy"
msgstr "Kaligrāfija"
-#: ../src/verbs.cpp:2752
+#: ../src/verbs.cpp:2721
msgid "Draw calligraphic or brush strokes"
msgstr "Zīmējiet kaligrāfiskās vai otas līnijas"
-#: ../src/verbs.cpp:2754
+#: ../src/verbs.cpp:2723
msgid "Create and edit text objects"
msgstr "Izveidot un labot teksta objektus"
-#: ../src/verbs.cpp:2755
+#: ../src/verbs.cpp:2724
msgctxt "ContextVerb"
msgid "Gradient"
msgstr "Krāsu pāreja"
-#: ../src/verbs.cpp:2756
+#: ../src/verbs.cpp:2725
msgid "Create and edit gradients"
msgstr "Izveidot un labot krāsu pārejas"
-#: ../src/verbs.cpp:2757
+#: ../src/verbs.cpp:2726
msgctxt "ContextVerb"
msgid "Mesh"
msgstr "Tīkls"
-#: ../src/verbs.cpp:2758
+#: ../src/verbs.cpp:2727
msgid "Create and edit meshes"
msgstr "Izveidot un labot tīklus"
-#: ../src/verbs.cpp:2759
+#: ../src/verbs.cpp:2728
msgctxt "ContextVerb"
msgid "Zoom"
msgstr "Tuvināt/tālināt"
-#: ../src/verbs.cpp:2760
+#: ../src/verbs.cpp:2729
msgid "Zoom in or out"
msgstr "Tuvināt vai tālināt"
-#: ../src/verbs.cpp:2762
+#: ../src/verbs.cpp:2731
msgid "Measurement tool"
msgstr "Mērinstruments"
-#: ../src/verbs.cpp:2763
+#: ../src/verbs.cpp:2732
msgctxt "ContextVerb"
msgid "Dropper"
msgstr "Pipete"
-#: ../src/verbs.cpp:2764 ../src/widgets/sp-color-notebook.cpp:396
+#: ../src/verbs.cpp:2733 ../src/widgets/sp-color-notebook.cpp:396
msgid "Pick colors from image"
msgstr "Izvēlēties krāsas no attēla"
-#: ../src/verbs.cpp:2765
+#: ../src/verbs.cpp:2734
msgctxt "ContextVerb"
msgid "Connector"
msgstr "Savienotājs"
-#: ../src/verbs.cpp:2766
+#: ../src/verbs.cpp:2735
msgid "Create diagram connectors"
msgstr "Izveidot diagrammu savienotājus"
-#: ../src/verbs.cpp:2767
+#: ../src/verbs.cpp:2736
msgctxt "ContextVerb"
msgid "Paint Bucket"
msgstr "Krāsas spainis"
-#: ../src/verbs.cpp:2768
+#: ../src/verbs.cpp:2737
msgid "Fill bounded areas"
msgstr "Aizpildīt noslēgtos apgabalus"
-#: ../src/verbs.cpp:2769
+#: ../src/verbs.cpp:2738
msgctxt "ContextVerb"
msgid "LPE Edit"
msgstr "LPE laboĆĄana"
-#: ../src/verbs.cpp:2770
+#: ../src/verbs.cpp:2739
msgid "Edit Path Effect parameters"
msgstr "Labot ceÄŒa efekta parametrus"
-#: ../src/verbs.cpp:2771
+#: ../src/verbs.cpp:2740
msgctxt "ContextVerb"
msgid "Eraser"
msgstr "Dzēơgumija"
-#: ../src/verbs.cpp:2772
+#: ../src/verbs.cpp:2741
msgid "Erase existing paths"
msgstr "Dzēst pastāvoĆĄos ceÄŒus"
-#: ../src/verbs.cpp:2773
+#: ../src/verbs.cpp:2742
msgctxt "ContextVerb"
msgid "LPE Tool"
msgstr "LPE rīks"
-#: ../src/verbs.cpp:2774
+#: ../src/verbs.cpp:2743
msgid "Do geometric constructions"
msgstr "Izveidot ģeometriskas figƫras"
#. Tool prefs
-#: ../src/verbs.cpp:2776
+#: ../src/verbs.cpp:2745
msgid "Selector Preferences"
msgstr "Atlasītāja iestatījumi"
-#: ../src/verbs.cpp:2777
+#: ../src/verbs.cpp:2746
msgid "Open Preferences for the Selector tool"
msgstr "Atvērt iestatÄ«jumus atlasīƥanas rÄ«kam"
-#: ../src/verbs.cpp:2778
+#: ../src/verbs.cpp:2747
msgid "Node Tool Preferences"
msgstr "Mezglu rīka iestatījumi"
-#: ../src/verbs.cpp:2779
+#: ../src/verbs.cpp:2748
msgid "Open Preferences for the Node tool"
msgstr "Atvērt iestatījumus mezglu rīkam"
-#: ../src/verbs.cpp:2780
+#: ../src/verbs.cpp:2749
msgid "Tweak Tool Preferences"
msgstr "PieskaƆoĆĄanas rÄ«ka iestatÄ«jumi"
-#: ../src/verbs.cpp:2781
+#: ../src/verbs.cpp:2750
msgid "Open Preferences for the Tweak tool"
msgstr "Atvērt iestatÄ«jumus pieskaƆoĆĄanas rÄ«kam"
-#: ../src/verbs.cpp:2782
+#: ../src/verbs.cpp:2751
msgid "Spray Tool Preferences"
msgstr "Smidzinātāja iestatījumi"
-#: ../src/verbs.cpp:2783
+#: ../src/verbs.cpp:2752
msgid "Open Preferences for the Spray tool"
msgstr "Atvērt iestatÄ«jumus smidzināƥanas rÄ«kam"
-#: ../src/verbs.cpp:2784
+#: ../src/verbs.cpp:2753
msgid "Rectangle Preferences"
msgstr "Taisnstƫra iestatījumi"
-#: ../src/verbs.cpp:2785
+#: ../src/verbs.cpp:2754
msgid "Open Preferences for the Rectangle tool"
msgstr "Atvērt iestatÄ«jumus taisnstĆ«ru rÄ«kam"
-#: ../src/verbs.cpp:2786
+#: ../src/verbs.cpp:2755
msgid "3D Box Preferences"
msgstr "3D paralēlskaldƆa iestatÄ«jumi"
-#: ../src/verbs.cpp:2787
+#: ../src/verbs.cpp:2756
msgid "Open Preferences for the 3D Box tool"
msgstr "Atvērt iestatÄ«jumus 3D paralēlskaldƆa rÄ«kam"
-#: ../src/verbs.cpp:2788
+#: ../src/verbs.cpp:2757
msgid "Ellipse Preferences"
msgstr "Elipses iestatījumi"
-#: ../src/verbs.cpp:2789
+#: ../src/verbs.cpp:2758
msgid "Open Preferences for the Ellipse tool"
msgstr "Atvērt iestatījumus elipses rīkam"
-#: ../src/verbs.cpp:2790
+#: ../src/verbs.cpp:2759
msgid "Star Preferences"
msgstr "Zvaigznes iestatījumi"
-#: ../src/verbs.cpp:2791
+#: ../src/verbs.cpp:2760
msgid "Open Preferences for the Star tool"
msgstr "Atvērt iestatījumus zvaigznes rīkam"
-#: ../src/verbs.cpp:2792
+#: ../src/verbs.cpp:2761
msgid "Spiral Preferences"
msgstr "Spirāles iestatījumi"
-#: ../src/verbs.cpp:2793
+#: ../src/verbs.cpp:2762
msgid "Open Preferences for the Spiral tool"
msgstr "Atvērt iestatījumus spirāles rīkam"
-#: ../src/verbs.cpp:2794
+#: ../src/verbs.cpp:2763
msgid "Pencil Preferences"
msgstr "ZīmuČa iestatījumi"
-#: ../src/verbs.cpp:2795
+#: ../src/verbs.cpp:2764
msgid "Open Preferences for the Pencil tool"
msgstr "Atvērt iestatÄ«jumus zÄ«muÄŒa rÄ«kam"
-#: ../src/verbs.cpp:2796
+#: ../src/verbs.cpp:2765
msgid "Pen Preferences"
msgstr "Spalvas iestatījumi"
-#: ../src/verbs.cpp:2797
+#: ../src/verbs.cpp:2766
msgid "Open Preferences for the Pen tool"
msgstr "Atvērt iestatījumus spalvas rīkam"
-#: ../src/verbs.cpp:2798
+#: ../src/verbs.cpp:2767
msgid "Calligraphic Preferences"
msgstr "Kaligrāfijas iestatījumi"
-#: ../src/verbs.cpp:2799
+#: ../src/verbs.cpp:2768
msgid "Open Preferences for the Calligraphy tool"
msgstr "Atvērt iestatījumus kaligrāfijas rīkam"
-#: ../src/verbs.cpp:2800
+#: ../src/verbs.cpp:2769
msgid "Text Preferences"
msgstr "Teksta iestatījumi"
-#: ../src/verbs.cpp:2801
+#: ../src/verbs.cpp:2770
msgid "Open Preferences for the Text tool"
msgstr "Atvērt iestatījumus teksta rīkam"
-#: ../src/verbs.cpp:2802
+#: ../src/verbs.cpp:2771
msgid "Gradient Preferences"
msgstr "Krāsu pārejas iestatījumi"
-#: ../src/verbs.cpp:2803
+#: ../src/verbs.cpp:2772
msgid "Open Preferences for the Gradient tool"
msgstr "Atvērt iestatījumus krāsu pārejas rīkam "
-#: ../src/verbs.cpp:2804
+#: ../src/verbs.cpp:2773
msgid "Mesh Preferences"
msgstr "Tīkla iestatījumi"
-#: ../src/verbs.cpp:2805
+#: ../src/verbs.cpp:2774
msgid "Open Preferences for the Mesh tool"
msgstr "Atvērt iestatījumus tīkla rīkam"
-#: ../src/verbs.cpp:2806
+#: ../src/verbs.cpp:2775
msgid "Zoom Preferences"
msgstr "TālummaiƆas iestatÄ«jumi"
-#: ../src/verbs.cpp:2807
+#: ../src/verbs.cpp:2776
msgid "Open Preferences for the Zoom tool"
msgstr "Atvērt iestatÄ«jumus tālummaiƆas rÄ«kam"
-#: ../src/verbs.cpp:2808
+#: ../src/verbs.cpp:2777
msgid "Measure Preferences"
msgstr "Mērīƥanas iestatÄ«jumi"
-#: ../src/verbs.cpp:2809
+#: ../src/verbs.cpp:2778
msgid "Open Preferences for the Measure tool"
msgstr "Atvērt iestatÄ«jumus mērīƥanas rÄ«kam"
-#: ../src/verbs.cpp:2810
+#: ../src/verbs.cpp:2779
msgid "Dropper Preferences"
msgstr "Pipetes iestatījumi"
-#: ../src/verbs.cpp:2811
+#: ../src/verbs.cpp:2780
msgid "Open Preferences for the Dropper tool"
msgstr "Atvērt pipetes rīka iestatījumus"
-#: ../src/verbs.cpp:2812
+#: ../src/verbs.cpp:2781
msgid "Connector Preferences"
msgstr "Savienotāja iestatījumi"
-#: ../src/verbs.cpp:2813
+#: ../src/verbs.cpp:2782
msgid "Open Preferences for the Connector tool"
msgstr "Atvērt iestatījumus savienotāju rīkam"
-#: ../src/verbs.cpp:2814
+#: ../src/verbs.cpp:2783
msgid "Paint Bucket Preferences"
msgstr "Krāsas spaiƆa iestatÄ«jumi"
-#: ../src/verbs.cpp:2815
+#: ../src/verbs.cpp:2784
msgid "Open Preferences for the Paint Bucket tool"
msgstr "Atvērt iestatÄ«jumus kāras spaiƆa rÄ«kam"
-#: ../src/verbs.cpp:2816
+#: ../src/verbs.cpp:2785
msgid "Eraser Preferences"
msgstr "Dzēơgumijas iestatÄ«jumi"
-#: ../src/verbs.cpp:2817
+#: ../src/verbs.cpp:2786
msgid "Open Preferences for the Eraser tool"
msgstr "Atvērt iestatÄ«jumus dzēơgumijas rÄ«kam"
-#: ../src/verbs.cpp:2818
+#: ../src/verbs.cpp:2787
msgid "LPE Tool Preferences"
msgstr "LPE rīka iestatījumi"
-#: ../src/verbs.cpp:2819
+#: ../src/verbs.cpp:2788
msgid "Open Preferences for the LPETool tool"
msgstr "Atvērt iestatījumus LPE rīkam"
#. Zoom/View
-#: ../src/verbs.cpp:2821
+#: ../src/verbs.cpp:2790
msgid "Zoom In"
msgstr "Tuvināt"
-#: ../src/verbs.cpp:2821
+#: ../src/verbs.cpp:2790
msgid "Zoom in"
msgstr "Tuvināt"
-#: ../src/verbs.cpp:2822
+#: ../src/verbs.cpp:2791
msgid "Zoom Out"
msgstr "Tālināt"
-#: ../src/verbs.cpp:2822
+#: ../src/verbs.cpp:2791
msgid "Zoom out"
msgstr "Tālināt"
-#: ../src/verbs.cpp:2823
+#: ../src/verbs.cpp:2792
msgid "_Rulers"
msgstr "_Lineāli"
-#: ../src/verbs.cpp:2823
+#: ../src/verbs.cpp:2792
msgid "Show or hide the canvas rulers"
msgstr "Parādīt vai paslēpt audekla ritjoslas"
-#: ../src/verbs.cpp:2824
+#: ../src/verbs.cpp:2793
msgid "Scroll_bars"
msgstr "Rit_joslas"
-#: ../src/verbs.cpp:2824
+#: ../src/verbs.cpp:2793
msgid "Show or hide the canvas scrollbars"
msgstr "Parādīt vai paslēpt audekla ritjoslas"
-#: ../src/verbs.cpp:2825
+#: ../src/verbs.cpp:2794
msgid "Page _Grid"
msgstr "Lapas _reĆŸÄŁis"
-#: ../src/verbs.cpp:2825
+#: ../src/verbs.cpp:2794
msgid "Show or hide the page grid"
msgstr "RādÄ«t vai slēpt lapas reĆŸÄŁi."
-#: ../src/verbs.cpp:2826
+#: ../src/verbs.cpp:2795
msgid "G_uides"
msgstr "Palīglīnijas"
-#: ../src/verbs.cpp:2826
+#: ../src/verbs.cpp:2795
msgid "Show or hide guides (drag from a ruler to create a guide)"
msgstr "Rādīt vai slēpt palīglīnijas (lai izveidotu palīglīniju, velciet no lineāla)"
-#: ../src/verbs.cpp:2827
+#: ../src/verbs.cpp:2796
msgid "Enable snapping"
msgstr "Ieslēgt piesaistīƥanu"
-#: ../src/verbs.cpp:2828
+#: ../src/verbs.cpp:2797
msgid "_Commands Bar"
msgstr "_Komandu josla"
-#: ../src/verbs.cpp:2828
+#: ../src/verbs.cpp:2797
msgid "Show or hide the Commands bar (under the menu)"
msgstr "Rādīt vai slēpt komandu joslu (zem izvēlnes)"
-#: ../src/verbs.cpp:2829
+#: ../src/verbs.cpp:2798
msgid "Sn_ap Controls Bar"
msgstr "Pies_aistes vadīklu josla"
-#: ../src/verbs.cpp:2829
+#: ../src/verbs.cpp:2798
msgid "Show or hide the snapping controls"
msgstr "Rādīt vai slēpt piesaistes vadīklu joslu"
-#: ../src/verbs.cpp:2830
+#: ../src/verbs.cpp:2799
msgid "T_ool Controls Bar"
msgstr "Rīku vadīklu j_osla"
-#: ../src/verbs.cpp:2830
+#: ../src/verbs.cpp:2799
msgid "Show or hide the Tool Controls bar"
msgstr "Rādīt vai slēpt rīku vadīklu joslu"
-#: ../src/verbs.cpp:2831
+#: ../src/verbs.cpp:2800
msgid "_Toolbox"
msgstr "_Rīkjosla"
-#: ../src/verbs.cpp:2831
+#: ../src/verbs.cpp:2800
msgid "Show or hide the main toolbox (on the left)"
msgstr "Rādīt vai slēpt galveno rīku kasti (kreisajā malā)"
-#: ../src/verbs.cpp:2832
+#: ../src/verbs.cpp:2801
msgid "_Palette"
msgstr "_Palete"
-#: ../src/verbs.cpp:2832
+#: ../src/verbs.cpp:2801
msgid "Show or hide the color palette"
msgstr "Rādīt vai slēpt krāsu paleti"
-#: ../src/verbs.cpp:2833
+#: ../src/verbs.cpp:2802
msgid "_Statusbar"
msgstr "_Statusa josla"
-#: ../src/verbs.cpp:2833
+#: ../src/verbs.cpp:2802
msgid "Show or hide the statusbar (at the bottom of the window)"
msgstr "RādÄ«t vai slēpt stāvokÄŒa joslu (loga apakƥā)"
-#: ../src/verbs.cpp:2834
+#: ../src/verbs.cpp:2803
msgid "Nex_t Zoom"
msgstr "_Nākoơā tālummaiƆa"
-#: ../src/verbs.cpp:2834
+#: ../src/verbs.cpp:2803
msgid "Next zoom (from the history of zooms)"
msgstr "Nākoơā tālummaiƆa (no tālummaiƆas vēstures)"
-#: ../src/verbs.cpp:2836
+#: ../src/verbs.cpp:2805
msgid "Pre_vious Zoom"
msgstr "Ie_priekơējā tālummaiƆa"
-#: ../src/verbs.cpp:2836
+#: ../src/verbs.cpp:2805
msgid "Previous zoom (from the history of zooms)"
msgstr "Iepriekơējā tālummaiƆa (no tālummaiƆas vēstures)"
-#: ../src/verbs.cpp:2838
+#: ../src/verbs.cpp:2807
msgid "Zoom 1:_1"
msgstr "TālummaiƆa 1:_1"
-#: ../src/verbs.cpp:2838
+#: ../src/verbs.cpp:2807
msgid "Zoom to 1:1"
msgstr "Tālummainīt 1:1"
-#: ../src/verbs.cpp:2840
+#: ../src/verbs.cpp:2809
msgid "Zoom 1:_2"
msgstr "TālummaiƆa 1:_2"
-#: ../src/verbs.cpp:2840
+#: ../src/verbs.cpp:2809
msgid "Zoom to 1:2"
msgstr "Tālummainīt 1:2"
-#: ../src/verbs.cpp:2842
+#: ../src/verbs.cpp:2811
msgid "_Zoom 2:1"
msgstr "_TālummaiƆa 2:1"
-#: ../src/verbs.cpp:2842
+#: ../src/verbs.cpp:2811
msgid "Zoom to 2:1"
msgstr "Tālummainīt 2:1"
-#: ../src/verbs.cpp:2845
+#: ../src/verbs.cpp:2814
msgid "_Fullscreen"
msgstr "_Pilnekrāna"
-#: ../src/verbs.cpp:2845 ../src/verbs.cpp:2847
+#: ../src/verbs.cpp:2814 ../src/verbs.cpp:2816
msgid "Stretch this document window to full screen"
msgstr "Izplest ƥī dokumenta logu pa visu ekrānu"
-#: ../src/verbs.cpp:2847
+#: ../src/verbs.cpp:2816
msgid "Fullscreen & Focus Mode"
msgstr "Pilnekrāna un fokusēơanas reĆŸÄ«ms"
-#: ../src/verbs.cpp:2850
+#: ../src/verbs.cpp:2819
msgid "Toggle _Focus Mode"
msgstr "Pārslēgt fokusēơanas reĆŸÄ«mu"
-#: ../src/verbs.cpp:2850
+#: ../src/verbs.cpp:2819
msgid "Remove excess toolbars to focus on drawing"
msgstr "Aizvākt liekās rīkjoslas, lai atbrīvotu lielāku laukumu zīmējumam"
-#: ../src/verbs.cpp:2852
+#: ../src/verbs.cpp:2821
msgid "Duplic_ate Window"
msgstr "Dublēt logu"
-#: ../src/verbs.cpp:2852
+#: ../src/verbs.cpp:2821
msgid "Open a new window with the same document"
msgstr "Atvērt ơo paơu dokumentu jaunā logā"
-#: ../src/verbs.cpp:2854
+#: ../src/verbs.cpp:2823
msgid "_New View Preview"
msgstr "Jau_na skata priekƥskatījums"
-#: ../src/verbs.cpp:2855
+#: ../src/verbs.cpp:2824
msgid "New View Preview"
msgstr "Jauna skata priekƥskatījums"
#. "view_new_preview"
-#: ../src/verbs.cpp:2857 ../src/verbs.cpp:2865
+#: ../src/verbs.cpp:2826 ../src/verbs.cpp:2834
msgid "_Normal"
msgstr "_Normāls"
-#: ../src/verbs.cpp:2858
+#: ../src/verbs.cpp:2827
msgid "Switch to normal display mode"
msgstr "Pārslēgt uz normālu ekrāna reĆŸÄ«mu"
-#: ../src/verbs.cpp:2859
+#: ../src/verbs.cpp:2828
msgid "No _Filters"
msgstr "Nav _filtru"
-#: ../src/verbs.cpp:2860
+#: ../src/verbs.cpp:2829
msgid "Switch to normal display without filters"
msgstr "Pārslēgt uz normālu ekrānu bez filtriem"
-#: ../src/verbs.cpp:2861
+#: ../src/verbs.cpp:2830
msgid "_Outline"
msgstr "Ār_līnija"
-#: ../src/verbs.cpp:2862
+#: ../src/verbs.cpp:2831
msgid "Switch to outline (wireframe) display mode"
msgstr "Pārslēgt uz apriĆĄu (karkasa) ekrāna reĆŸÄ«mu"
#. new ZoomVerb(SP_VERB_VIEW_COLOR_MODE_PRINT_COLORS_PREVIEW, "ViewColorModePrintColorsPreview", N_("_Print Colors Preview"),
#. N_("Switch to print colors preview mode"), NULL),
-#: ../src/verbs.cpp:2863 ../src/verbs.cpp:2871
+#: ../src/verbs.cpp:2832 ../src/verbs.cpp:2840
msgid "_Toggle"
msgstr "Pārslēg_t"
-#: ../src/verbs.cpp:2864
+#: ../src/verbs.cpp:2833
msgid "Toggle between normal and outline display modes"
msgstr "Pārslēgties starp parasto un apriĆĄu ekrāna reĆŸÄ«mu"
-#: ../src/verbs.cpp:2866
+#: ../src/verbs.cpp:2835
msgid "Switch to normal color display mode"
msgstr "Pārslēgt uz normālu krāsu ekrāna reĆŸÄ«mu"
-#: ../src/verbs.cpp:2867
+#: ../src/verbs.cpp:2836
msgid "_Grayscale"
msgstr "_PelēktoƆu"
-#: ../src/verbs.cpp:2868
+#: ../src/verbs.cpp:2837
msgid "Switch to grayscale display mode"
msgstr "Pārslēgt uz pelēktoƆu ekrāna reĆŸÄ«mu"
-#: ../src/verbs.cpp:2872
+#: ../src/verbs.cpp:2841
msgid "Toggle between normal and grayscale color display modes"
msgstr "Pārslēgt starp parasto un pelēktoƆu ekrāna reĆŸÄ«mu"
-#: ../src/verbs.cpp:2874
+#: ../src/verbs.cpp:2843
msgid "Color-managed view"
msgstr "Skats ar krāsu vadību"
-#: ../src/verbs.cpp:2875
+#: ../src/verbs.cpp:2844
msgid "Toggle color-managed display for this document window"
msgstr "Ieslēgt ekrāna krāsu vadÄ«bu ĆĄÄ« dokumenta logam"
-#: ../src/verbs.cpp:2877
+#: ../src/verbs.cpp:2846
msgid "Ico_n Preview..."
msgstr "Ikonu priekƥskatījums..."
-#: ../src/verbs.cpp:2878
+#: ../src/verbs.cpp:2847
msgid "Open a window to preview objects at different icon resolutions"
msgstr "Atveriet logu, lai priekĆĄskatÄ«tu objektus atĆĄÄ·irÄ«gā ikonu izĆĄÄ·irtspējā"
-#: ../src/verbs.cpp:2880
+#: ../src/verbs.cpp:2849
msgid "Zoom to fit page in window"
msgstr "Tālummainīt, lai Ietilpināt lapu logā"
-#: ../src/verbs.cpp:2881
+#: ../src/verbs.cpp:2850
msgid "Page _Width"
msgstr "Lapas _platums"
-#: ../src/verbs.cpp:2882
+#: ../src/verbs.cpp:2851
msgid "Zoom to fit page width in window"
msgstr "Tālummainīt, lai ietilpinātu lapu logā tās pilnā platumā."
-#: ../src/verbs.cpp:2884
+#: ../src/verbs.cpp:2853
msgid "Zoom to fit drawing in window"
msgstr "Tālummainīt, lai Ietilpinātu zīmējumu logā"
-#: ../src/verbs.cpp:2886
+#: ../src/verbs.cpp:2855
msgid "Zoom to fit selection in window"
msgstr "Tālummainīt, lai ietilpinātu atlasīto logā"
#. Dialogs
-#: ../src/verbs.cpp:2889
+#: ../src/verbs.cpp:2858
msgid "P_references..."
msgstr "Iestatījumi..."
-#: ../src/verbs.cpp:2890
+#: ../src/verbs.cpp:2859
msgid "Edit global Inkscape preferences"
msgstr "Labot globālos Inkscape iestatījumus"
-#: ../src/verbs.cpp:2891
+#: ../src/verbs.cpp:2860
msgid "_Document Properties..."
msgstr "_Dokumenta īpaƥības..."
-#: ../src/verbs.cpp:2892
+#: ../src/verbs.cpp:2861
msgid "Edit properties of this document (to be saved with the document)"
msgstr "Labot ƥī dokumenta īpaƥības (tiks saglabātas kopā ar dokumentu)"
-#: ../src/verbs.cpp:2893
+#: ../src/verbs.cpp:2862
msgid "Document _Metadata..."
msgstr "Dokumenta _metadati..."
-#: ../src/verbs.cpp:2894
+#: ../src/verbs.cpp:2863
msgid "Edit document metadata (to be saved with the document)"
msgstr "Labot ƥī dokumenta matadatus (tiks saglabāti kopā ar dokumentu)"
-#: ../src/verbs.cpp:2896
+#: ../src/verbs.cpp:2865
msgid "Edit objects' colors, gradients, arrowheads, and other fill and stroke properties..."
msgstr "Labojiet objekta krāsas, krāsu pārejas, bultu galus un citas aizpildījuma un apmales īpaƥības..."
#. FIXME: Probably better to either use something from the icon naming spec or ship our own "select-font" icon
-#: ../src/verbs.cpp:2898
+#: ../src/verbs.cpp:2867
msgid "Gl_yphs..."
msgstr "Glifi..."
-#: ../src/verbs.cpp:2899
+#: ../src/verbs.cpp:2868
msgid "Select characters from a glyphs palette"
msgstr "Izvēlieties simbolus no glifu paletes"
#. FIXME: Probably better to either use something from the icon naming spec or ship our own "select-color" icon
#. TRANSLATORS: "Swatches" means: color samples
-#: ../src/verbs.cpp:2902
+#: ../src/verbs.cpp:2871
msgid "S_watches..."
msgstr "Krāsu paraugi..."
-#: ../src/verbs.cpp:2903
+#: ../src/verbs.cpp:2872
msgid "Select colors from a swatches palette"
msgstr "Izvēlieties krāsas no krāsu paraugu paletes"
-#: ../src/verbs.cpp:2904
+#: ../src/verbs.cpp:2873
msgid "S_ymbols..."
msgstr "S_imboli..."
-#: ../src/verbs.cpp:2905
+#: ../src/verbs.cpp:2874
msgid "Select symbol from a symbols palette"
msgstr "Izvēlieties simbolu no simbolu paletes"
-#: ../src/verbs.cpp:2906
+#: ../src/verbs.cpp:2875
msgid "Transfor_m..."
msgstr "Pārveidot..."
-#: ../src/verbs.cpp:2907
+#: ../src/verbs.cpp:2876
msgid "Precisely control objects' transformations"
msgstr "Precīzi kontrolēt objekta pārveidojumus"
-#: ../src/verbs.cpp:2908
+#: ../src/verbs.cpp:2877
msgid "_Align and Distribute..."
msgstr "Lī_dzināt un izkliedēt..."
-#: ../src/verbs.cpp:2909
+#: ../src/verbs.cpp:2878
msgid "Align and distribute objects"
msgstr "Līdzināt un izkliedēt objektus"
-#: ../src/verbs.cpp:2910
+#: ../src/verbs.cpp:2879
msgid "_Spray options..."
msgstr "_Smidzināơanas papildiespējas..."
-#: ../src/verbs.cpp:2911
+#: ../src/verbs.cpp:2880
msgid "Some options for the spray"
msgstr "DaĆŸas smidzināƥanas papildiespējas"
-#: ../src/verbs.cpp:2912
+#: ../src/verbs.cpp:2881
msgid "Undo _History..."
msgstr "Atsaukumu _vēsture..."
-#: ../src/verbs.cpp:2913
+#: ../src/verbs.cpp:2882
msgid "Undo History"
msgstr "Atsaukumu vēsture"
-#: ../src/verbs.cpp:2915
+#: ../src/verbs.cpp:2884
msgid "View and select font family, font size and other text properties"
msgstr "AplĆ«kojiet un izvēlieties fontu saimi, fonta izmēru un citas teksta Ä«paĆĄÄ«bas"
-#: ../src/verbs.cpp:2916
+#: ../src/verbs.cpp:2885
msgid "_XML Editor..."
msgstr "XML redaktors..."
-#: ../src/verbs.cpp:2917
+#: ../src/verbs.cpp:2886
msgid "View and edit the XML tree of the document"
msgstr "Aplƫkot un labot dokumenta XML koku"
-#: ../src/verbs.cpp:2918
+#: ../src/verbs.cpp:2887
msgid "_Find/Replace..."
msgstr "_Meklēt/aizvietot..."
-#: ../src/verbs.cpp:2919
+#: ../src/verbs.cpp:2888
msgid "Find objects in document"
msgstr "Meklēt objektus dokumentā "
-#: ../src/verbs.cpp:2920
+#: ../src/verbs.cpp:2889
msgid "Find and _Replace Text..."
msgstr "Meklēt un aizvietot tekstu..."
-#: ../src/verbs.cpp:2921
+#: ../src/verbs.cpp:2890
msgid "Find and replace text in document"
msgstr "Meklēt un aizvietot tekstu"
-#: ../src/verbs.cpp:2923
+#: ../src/verbs.cpp:2892
msgid "Check spelling of text in document"
msgstr "Pārbaudīt teksta pareizrakstību dokumentā"
-#: ../src/verbs.cpp:2924
+#: ../src/verbs.cpp:2893
msgid "_Messages..."
msgstr "_Vēstules..."
-#: ../src/verbs.cpp:2925
+#: ../src/verbs.cpp:2894
msgid "View debug messages"
msgstr "SkatÄ«t atkÄŒĆ«doĆĄanas paziƆojumus"
-#: ../src/verbs.cpp:2926
+#: ../src/verbs.cpp:2895
msgid "Show/Hide D_ialogs"
msgstr "Rādīt/slēpt dialogus"
-#: ../src/verbs.cpp:2927
+#: ../src/verbs.cpp:2896
msgid "Show or hide all open dialogs"
msgstr "Rādīt vai paslēpt visus atvērtos dialogus"
-#: ../src/verbs.cpp:2928
+#: ../src/verbs.cpp:2897
msgid "Create Tiled Clones..."
msgstr "Izveidot klonu rakstu..."
-#: ../src/verbs.cpp:2929
+#: ../src/verbs.cpp:2898
msgid "Create multiple clones of selected object, arranging them into a pattern or scattering"
msgstr "Izveidot vairākus objekta klonus, izkārtojot tos rakstā (faktĆ«rā) vai izkliedējot"
-#: ../src/verbs.cpp:2930
+#: ../src/verbs.cpp:2899
msgid "_Object attributes..."
msgstr "_Objekta atribƫti..."
-#: ../src/verbs.cpp:2931
+#: ../src/verbs.cpp:2900
msgid "Edit the object attributes..."
msgstr "Labot objekta atribƫtus..."
-#: ../src/verbs.cpp:2933
+#: ../src/verbs.cpp:2902
msgid "Edit the ID, locked and visible status, and other object properties"
msgstr "Labojiet ID, slēgĆĄanas un redzamÄ«bas stāvokli un citas objekta Ä«paĆĄÄ«bas"
-#: ../src/verbs.cpp:2934
+#: ../src/verbs.cpp:2903
msgid "_Input Devices..."
msgstr "_Ievadierīces..."
-#: ../src/verbs.cpp:2935
+#: ../src/verbs.cpp:2904
msgid "Configure extended input devices, such as a graphics tablet"
msgstr "Konfigurējiet paplaĆĄināto iespēju ievades ierÄ«ces, piem. grafiskās planĆĄetes"
-#: ../src/verbs.cpp:2936
+#: ../src/verbs.cpp:2905
msgid "_Extensions..."
msgstr "_Paplaƥinājumi..."
-#: ../src/verbs.cpp:2937
+#: ../src/verbs.cpp:2906
msgid "Query information about extensions"
msgstr "Vaicājuma informācija par paplaƥinājumiem"
-#: ../src/verbs.cpp:2938
+#: ../src/verbs.cpp:2907
msgid "Layer_s..."
msgstr "_SlāƆi..."
-#: ../src/verbs.cpp:2939
+#: ../src/verbs.cpp:2908
msgid "View Layers"
msgstr "SkatÄ«t slāƆus"
-#: ../src/verbs.cpp:2940
+#: ../src/verbs.cpp:2909
msgid "Object_s..."
msgstr "_Objekti..."
-#: ../src/verbs.cpp:2941
+#: ../src/verbs.cpp:2910
msgid "View Objects"
msgstr "Skatīt objektus"
-#: ../src/verbs.cpp:2942
-#, fuzzy
+#: ../src/verbs.cpp:2911
msgid "Selection se_ts..."
-msgstr "Ts"
+msgstr "A_tlases kopas..."
-#: ../src/verbs.cpp:2943
+#: ../src/verbs.cpp:2912
msgid "View Tags"
msgstr "Skatīt birkas"
-#: ../src/verbs.cpp:2944
+#: ../src/verbs.cpp:2913
msgid "Path E_ffects ..."
msgstr "CeÄŒa e_fekti..."
-#: ../src/verbs.cpp:2945
+#: ../src/verbs.cpp:2914
msgid "Manage, edit, and apply path effects"
msgstr "Vadīt, labot un pielietot ceČa efektus"
-#: ../src/verbs.cpp:2946
+#: ../src/verbs.cpp:2915
msgid "Filter _Editor..."
msgstr "Filtru r_edaktors"
-#: ../src/verbs.cpp:2947
+#: ../src/verbs.cpp:2916
msgid "Manage, edit, and apply SVG filters"
msgstr "Vadīt, labot un pielietot SVG filtrus"
-#: ../src/verbs.cpp:2948
+#: ../src/verbs.cpp:2917
msgid "SVG Font Editor..."
msgstr "SVG fontu redaktors"
-#: ../src/verbs.cpp:2949
+#: ../src/verbs.cpp:2918
msgid "Edit SVG fonts"
msgstr "Labot SVG fontus"
-#: ../src/verbs.cpp:2950
+#: ../src/verbs.cpp:2919
msgid "Print Colors..."
msgstr "Drukāt krāsas..."
-#: ../src/verbs.cpp:2951
+#: ../src/verbs.cpp:2920
msgid "Select which color separations to render in Print Colors Preview rendermode"
msgstr "Izvēlieties, kuru krāsu dalÄ«jumus renderēt Krāsu drukas priekĆĄskatÄ«juma renderēơanas reĆŸÄ«mā"
-#: ../src/verbs.cpp:2952
+#: ../src/verbs.cpp:2921
msgid "_Export PNG Image..."
msgstr "_Eksportēt PNG attēlu..."
-#: ../src/verbs.cpp:2953
+#: ../src/verbs.cpp:2922
msgid "Export this document or a selection as a PNG image"
msgstr "Eksportēt ĆĄo dokumentu vai atlasÄ«to kā PNG attēlu"
#. Help
-#: ../src/verbs.cpp:2955
+#: ../src/verbs.cpp:2924
msgid "About E_xtensions"
msgstr "Par _paplaƥinājumiem"
-#: ../src/verbs.cpp:2956
+#: ../src/verbs.cpp:2925
msgid "Information on Inkscape extensions"
msgstr "Informācija par Inkscape paplaƥinājumiem"
-#: ../src/verbs.cpp:2957
+#: ../src/verbs.cpp:2926
msgid "About _Memory"
msgstr "Par at_miƆu"
-#: ../src/verbs.cpp:2958
+#: ../src/verbs.cpp:2927
msgid "Memory usage information"
msgstr "AtmiƆas izmantoơanas informācija"
-#: ../src/verbs.cpp:2959
+#: ../src/verbs.cpp:2928
msgid "_About Inkscape"
msgstr "P_ar Inkscape"
-#: ../src/verbs.cpp:2960
+#: ../src/verbs.cpp:2929
msgid "Inkscape version, authors, license"
msgstr "Inkscape versija, autori, licence"
#. new HelpVerb(SP_VERB_SHOW_LICENSE, "ShowLicense", N_("_License"),
#. N_("Distribution terms"), /*"show_license"*/"inkscape_options"),
#. Tutorials
-#: ../src/verbs.cpp:2965
+#: ../src/verbs.cpp:2934
msgid "Inkscape: _Basic"
msgstr "Inkscape: pamati"
-#: ../src/verbs.cpp:2966
+#: ../src/verbs.cpp:2935
msgid "Getting started with Inkscape"
msgstr "Sākt darbu ar Inkscape"
#. "tutorial_basic"
-#: ../src/verbs.cpp:2967
+#: ../src/verbs.cpp:2936
msgid "Inkscape: _Shapes"
msgstr "Inkscape: figƫra_s"
-#: ../src/verbs.cpp:2968
+#: ../src/verbs.cpp:2937
msgid "Using shape tools to create and edit shapes"
msgstr "Figƫru rīku izmantoƥana figƫru izveidoƥanai un laboƥanai"
-#: ../src/verbs.cpp:2969
+#: ../src/verbs.cpp:2938
msgid "Inkscape: _Advanced"
msgstr "Inkscape: PadziČināti"
-#: ../src/verbs.cpp:2970
+#: ../src/verbs.cpp:2939
msgid "Advanced Inkscape topics"
msgstr "PadziČinātie Inkscape temati"
#. "tutorial_advanced"
#. TRANSLATORS: "to trace" means "to convert a bitmap to vector graphics" (to vectorize)
-#: ../src/verbs.cpp:2972
+#: ../src/verbs.cpp:2941
msgid "Inkscape: T_racing"
msgstr "Inkscape: vekto_rizēơana"
-#: ../src/verbs.cpp:2973
+#: ../src/verbs.cpp:2942
msgid "Using bitmap tracing"
msgstr "Izmanto bitkartes vektorizēơanu"
#. "tutorial_tracing"
-#: ../src/verbs.cpp:2974
+#: ../src/verbs.cpp:2943
msgid "Inkscape: Tracing Pixel Art"
msgstr "Inkscape: punktu attēla vektorizēơana"
-#: ../src/verbs.cpp:2975
+#: ../src/verbs.cpp:2944
msgid "Using Trace Pixel Art dialog"
msgstr "Punktu attēla dialoglodziƆa lietoơana"
-#: ../src/verbs.cpp:2976
+#: ../src/verbs.cpp:2945
msgid "Inkscape: _Calligraphy"
msgstr "Inkscape: kaligrāfija"
-#: ../src/verbs.cpp:2977
+#: ../src/verbs.cpp:2946
msgid "Using the Calligraphy pen tool"
msgstr "Kaligrāfiskās spalvas lietoƥana"
-#: ../src/verbs.cpp:2978
+#: ../src/verbs.cpp:2947
msgid "Inkscape: _Interpolate"
msgstr "Inkscape: _interpolēt"
-#: ../src/verbs.cpp:2979
+#: ../src/verbs.cpp:2948
msgid "Using the interpolate extension"
msgstr "Izmanto interpolācijas paplaƥinājumu"
#. "tutorial_interpolate"
-#: ../src/verbs.cpp:2980
+#: ../src/verbs.cpp:2949
msgid "_Elements of Design"
msgstr "Dizaina _elementi"
-#: ../src/verbs.cpp:2981
+#: ../src/verbs.cpp:2950
msgid "Principles of design in the tutorial form"
msgstr "Dizaina principi mācību materiālu formā"
#. "tutorial_design"
-#: ../src/verbs.cpp:2982
+#: ../src/verbs.cpp:2951
msgid "_Tips and Tricks"
msgstr "Padomi un vil_tības"
-#: ../src/verbs.cpp:2983
+#: ../src/verbs.cpp:2952
msgid "Miscellaneous tips and tricks"
msgstr "DaĆŸÄdi padomi un triki"
#. "tutorial_tips"
#. Effect -- renamed Extension
-#: ../src/verbs.cpp:2986
+#: ../src/verbs.cpp:2955
msgid "Previous Exte_nsion"
msgstr "Iepriekơējais paplaơi_nājums"
-#: ../src/verbs.cpp:2987
+#: ../src/verbs.cpp:2956
msgid "Repeat the last extension with the same settings"
msgstr "Atkārtot pēdējo paplaĆĄinājumu ar tiem paĆĄiem iestatÄ«jumiem"
-#: ../src/verbs.cpp:2988
+#: ../src/verbs.cpp:2957
msgid "_Previous Extension Settings..."
msgstr "Ie_priekơējā paplaĆĄinājuma iestatÄ«jumi"
-#: ../src/verbs.cpp:2989
+#: ../src/verbs.cpp:2958
msgid "Repeat the last extension with new settings"
msgstr "Atkārtot pēdējo paplaĆĄinājumu ar jaunajiem iestatÄ«jumiem"
-#: ../src/verbs.cpp:2993
+#: ../src/verbs.cpp:2962
msgid "Fit the page to the current selection"
msgstr "Pielāgot lapu paƥreiz atlasītajam"
-#: ../src/verbs.cpp:2995
+#: ../src/verbs.cpp:2964
msgid "Fit the page to the drawing"
msgstr "Pielāgot lapu zīmējumam"
-#: ../src/verbs.cpp:2997
+#: ../src/verbs.cpp:2966
msgid "Fit the page to the current selection or the drawing if there is no selection"
msgstr "Pielāgot lapu iezīmētajam apgabalam vai zīmējumam, ja nekas nav iezīmēts"
#. LockAndHide
-#: ../src/verbs.cpp:2999
+#: ../src/verbs.cpp:2968
msgid "Unlock All"
msgstr "Atslēgt visus"
-#: ../src/verbs.cpp:3001
+#: ../src/verbs.cpp:2970
msgid "Unlock All in All Layers"
msgstr "Atslēgt visus visos slāƆos"
-#: ../src/verbs.cpp:3003
+#: ../src/verbs.cpp:2972
msgid "Unhide All"
msgstr "Rādīt visus"
-#: ../src/verbs.cpp:3005
+#: ../src/verbs.cpp:2974
msgid "Unhide All in All Layers"
msgstr "RādÄ«t visus visos slāƆos"
-#: ../src/verbs.cpp:3009
+#: ../src/verbs.cpp:2978
msgid "Link an ICC color profile"
msgstr "Piesaistīt ICC krāsu profilu"
-#: ../src/verbs.cpp:3010
+#: ../src/verbs.cpp:2979
msgid "Remove Color Profile"
msgstr "Aizvākt krāsu profilu"
-#: ../src/verbs.cpp:3011
+#: ../src/verbs.cpp:2980
msgid "Remove a linked ICC color profile"
msgstr "Aizvākt piesaistīto ICC krāsu profilu"
-#: ../src/verbs.cpp:3014
+#: ../src/verbs.cpp:2983
msgid "Add External Script"
msgstr "Pievienot ārējo skriptu"
-#: ../src/verbs.cpp:3014
+#: ../src/verbs.cpp:2983
msgid "Add an external script"
msgstr "Pievienot ārēju skriptu"
-#: ../src/verbs.cpp:3016
+#: ../src/verbs.cpp:2985
msgid "Add Embedded Script"
msgstr "Pievienot iegulto skriptu"
-#: ../src/verbs.cpp:3016
+#: ../src/verbs.cpp:2985
msgid "Add an embedded script"
msgstr "Pievienot iegultu skriptu"
-#: ../src/verbs.cpp:3018
+#: ../src/verbs.cpp:2987
msgid "Edit Embedded Script"
msgstr "Labot iegulto skriptu"
-#: ../src/verbs.cpp:3018
+#: ../src/verbs.cpp:2987
msgid "Edit an embedded script"
msgstr "Labot iegultu skriptu"
-#: ../src/verbs.cpp:3020
+#: ../src/verbs.cpp:2989
msgid "Remove External Script"
msgstr "Aizvākt ārējo skriptu"
-#: ../src/verbs.cpp:3020
+#: ../src/verbs.cpp:2989
msgid "Remove an external script"
msgstr "Aizvākt ārēju skriptu"
-#: ../src/verbs.cpp:3022
+#: ../src/verbs.cpp:2991
msgid "Remove Embedded Script"
msgstr "Aizvākt iegulto skriptu"
-#: ../src/verbs.cpp:3022
+#: ../src/verbs.cpp:2991
msgid "Remove an embedded script"
msgstr "Aizvākt iegultu skriptu"
-#: ../src/verbs.cpp:3044 ../src/verbs.cpp:3045
+#: ../src/verbs.cpp:3013 ../src/verbs.cpp:3014
msgid "Center on horizontal and vertical axis"
msgstr "Centrēt uz horizontālās un vertikālās ass"
-#: ../src/widgets/arc-toolbar.cpp:132
+#: ../src/widgets/arc-toolbar.cpp:129
msgid "Arc: Change start/end"
msgstr "Loks: mainīt sākumu/beigas"
-#: ../src/widgets/arc-toolbar.cpp:198
+#: ../src/widgets/arc-toolbar.cpp:191
msgid "Arc: Change open/closed"
msgstr "Loks: mainīt uz atvērtu/slēgtu"
-#: ../src/widgets/arc-toolbar.cpp:289 ../src/widgets/arc-toolbar.cpp:319 ../src/widgets/rect-toolbar.cpp:260 ../src/widgets/rect-toolbar.cpp:299 ../src/widgets/spiral-toolbar.cpp:214 ../src/widgets/spiral-toolbar.cpp:238
-#: ../src/widgets/star-toolbar.cpp:384 ../src/widgets/star-toolbar.cpp:446
+#: ../src/widgets/arc-toolbar.cpp:280 ../src/widgets/arc-toolbar.cpp:310 ../src/widgets/rect-toolbar.cpp:260 ../src/widgets/rect-toolbar.cpp:299 ../src/widgets/spiral-toolbar.cpp:210 ../src/widgets/spiral-toolbar.cpp:234
+#: ../src/widgets/star-toolbar.cpp:382 ../src/widgets/star-toolbar.cpp:444
msgid "<b>New:</b>"
msgstr "<b>Jauns:</b>"
#. FIXME: implement averaging of all parameters for multiple selected
#. gtk_label_set_markup(GTK_LABEL(l), _("<b>Average:</b>"));
-#: ../src/widgets/arc-toolbar.cpp:292 ../src/widgets/arc-toolbar.cpp:303 ../src/widgets/rect-toolbar.cpp:268 ../src/widgets/rect-toolbar.cpp:286 ../src/widgets/spiral-toolbar.cpp:216 ../src/widgets/spiral-toolbar.cpp:227
-#: ../src/widgets/star-toolbar.cpp:386
+#: ../src/widgets/arc-toolbar.cpp:283 ../src/widgets/arc-toolbar.cpp:294 ../src/widgets/rect-toolbar.cpp:268 ../src/widgets/rect-toolbar.cpp:286 ../src/widgets/spiral-toolbar.cpp:212 ../src/widgets/spiral-toolbar.cpp:223
+#: ../src/widgets/star-toolbar.cpp:384
msgid "<b>Change:</b>"
msgstr "<b>Mainīt:</b>"
-#: ../src/widgets/arc-toolbar.cpp:328
+#: ../src/widgets/arc-toolbar.cpp:319
msgid "Start:"
msgstr "Sākums:"
-#: ../src/widgets/arc-toolbar.cpp:329
+#: ../src/widgets/arc-toolbar.cpp:320
msgid "The angle (in degrees) from the horizontal to the arc's start point"
msgstr "LeƆķis (grādos) no horizontāles lÄ«dz loka sākumpunktam"
-#: ../src/widgets/arc-toolbar.cpp:341
+#: ../src/widgets/arc-toolbar.cpp:332
msgid "End:"
msgstr "Beigas:"
-#: ../src/widgets/arc-toolbar.cpp:342
+#: ../src/widgets/arc-toolbar.cpp:333
msgid "The angle (in degrees) from the horizontal to the arc's end point"
msgstr "LeƆķis (grādos) no horizontāles lÄ«dz loka sākumpunktam"
-#: ../src/widgets/arc-toolbar.cpp:358
+#: ../src/widgets/arc-toolbar.cpp:349
msgid "Closed arc"
msgstr "Slēgts loks"
-#: ../src/widgets/arc-toolbar.cpp:359
+#: ../src/widgets/arc-toolbar.cpp:350
msgid "Switch to segment (closed shape with two radii)"
msgstr "Pārslēgt uz segmentu (slēgta figĆ«ra ar diviem rādiusiem)"
-#: ../src/widgets/arc-toolbar.cpp:365
+#: ../src/widgets/arc-toolbar.cpp:356
msgid "Open Arc"
msgstr "VaČējs loks"
-#: ../src/widgets/arc-toolbar.cpp:366
+#: ../src/widgets/arc-toolbar.cpp:357
msgid "Switch to arc (unclosed shape)"
msgstr "Pārslēgt uz loku (nenoslēgta figĆ«ra)"
-#: ../src/widgets/arc-toolbar.cpp:389
+#: ../src/widgets/arc-toolbar.cpp:380
msgid "Make whole"
msgstr "Izveidot veselu"
-#: ../src/widgets/arc-toolbar.cpp:390
+#: ../src/widgets/arc-toolbar.cpp:381
msgid "Make the shape a whole ellipse, not arc or segment"
msgstr "Izveidot figƫru kā pilnu elipsi. nevis loku vai segmentu"
@@ -24711,87 +24701,87 @@ msgstr "Pievienot/labot profilu"
msgid "Add or edit calligraphic profile"
msgstr "Pievienot vai labot kaligrāfisko profilu"
-#: ../src/widgets/connector-toolbar.cpp:120
+#: ../src/widgets/connector-toolbar.cpp:118
msgid "Set connector type: orthogonal"
msgstr "IestatÄ«t savienotāja tipu: taisnleƆķa"
-#: ../src/widgets/connector-toolbar.cpp:120
+#: ../src/widgets/connector-toolbar.cpp:118
msgid "Set connector type: polyline"
msgstr "Iestatīt savienotāja tipu: daudzlīniju"
-#: ../src/widgets/connector-toolbar.cpp:169
+#: ../src/widgets/connector-toolbar.cpp:165
msgid "Change connector curvature"
msgstr "Mainīt savienotāja izliekumu"
-#: ../src/widgets/connector-toolbar.cpp:220
+#: ../src/widgets/connector-toolbar.cpp:216
msgid "Change connector spacing"
msgstr "Mainīt savienotāja atstarpi"
-#: ../src/widgets/connector-toolbar.cpp:313
+#: ../src/widgets/connector-toolbar.cpp:309
msgid "Avoid"
msgstr "Izvairīties"
-#: ../src/widgets/connector-toolbar.cpp:323
+#: ../src/widgets/connector-toolbar.cpp:319
msgid "Ignore"
msgstr "Ignorēt"
-#: ../src/widgets/connector-toolbar.cpp:334
+#: ../src/widgets/connector-toolbar.cpp:330
msgid "Orthogonal"
msgstr "Ortogonāls"
-#: ../src/widgets/connector-toolbar.cpp:335
+#: ../src/widgets/connector-toolbar.cpp:331
msgid "Make connector orthogonal or polyline"
msgstr "IestatÄ«t noklusēto savienotāja tipu - taisnstĆ«ra vai daudzlÄ«niju"
-#: ../src/widgets/connector-toolbar.cpp:349
+#: ../src/widgets/connector-toolbar.cpp:345
msgid "Connector Curvature"
msgstr "Savienotāja izliekums"
-#: ../src/widgets/connector-toolbar.cpp:349
+#: ../src/widgets/connector-toolbar.cpp:345
msgid "Curvature:"
msgstr "Izliekums:"
-#: ../src/widgets/connector-toolbar.cpp:350
+#: ../src/widgets/connector-toolbar.cpp:346
msgid "The amount of connectors curvature"
msgstr "Savienotāja izliekuma lielums"
-#: ../src/widgets/connector-toolbar.cpp:360
+#: ../src/widgets/connector-toolbar.cpp:356
msgid "Connector Spacing"
msgstr "Savienotāja atstarpe"
-#: ../src/widgets/connector-toolbar.cpp:360
+#: ../src/widgets/connector-toolbar.cpp:356
msgid "Spacing:"
msgstr "Intervāls:"
-#: ../src/widgets/connector-toolbar.cpp:361
+#: ../src/widgets/connector-toolbar.cpp:357
msgid "The amount of space left around objects by auto-routing connectors"
msgstr "Atstājamā brīvā vieta ap objektiem, izmantojot automātisko savienotāju izvietoƥanu"
-#: ../src/widgets/connector-toolbar.cpp:372
+#: ../src/widgets/connector-toolbar.cpp:368
msgid "Graph"
msgstr "Grafs"
-#: ../src/widgets/connector-toolbar.cpp:382
+#: ../src/widgets/connector-toolbar.cpp:378
msgid "Connector Length"
msgstr "Savienotāja garums"
-#: ../src/widgets/connector-toolbar.cpp:382
+#: ../src/widgets/connector-toolbar.cpp:378
msgid "Length:"
msgstr "Garums:"
-#: ../src/widgets/connector-toolbar.cpp:383
+#: ../src/widgets/connector-toolbar.cpp:379
msgid "Ideal length for connectors when layout is applied"
msgstr "Ideālais savienotāju garums pēc izkārtojuma pielietoơanas"
-#: ../src/widgets/connector-toolbar.cpp:395
+#: ../src/widgets/connector-toolbar.cpp:391
msgid "Downwards"
msgstr "Lejup"
-#: ../src/widgets/connector-toolbar.cpp:396
+#: ../src/widgets/connector-toolbar.cpp:392
msgid "Make connectors with end-markers (arrows) point downwards"
msgstr "Izveidot savienotājus ar galu marÄ·ieriem (bultiƆām) vērstiem lejup"
-#: ../src/widgets/connector-toolbar.cpp:412
+#: ../src/widgets/connector-toolbar.cpp:408
msgid "Do not allow overlapping shapes"
msgstr "NepieÄŒaut figĆ«ru pārklāƥanos"
@@ -24960,35 +24950,35 @@ msgstr "Izgriezt no objektiem"
msgid "The width of the eraser pen (relative to the visible canvas area)"
msgstr "Dzēơgumijas platums (attiecÄ«bā pret redzamo auduma laukumu)"
-#: ../src/widgets/fill-style.cpp:360
+#: ../src/widgets/fill-style.cpp:356
msgid "Change fill rule"
msgstr "Mainiet aizpildīƥanas noteikumu"
-#: ../src/widgets/fill-style.cpp:445 ../src/widgets/fill-style.cpp:524
+#: ../src/widgets/fill-style.cpp:441 ../src/widgets/fill-style.cpp:520
msgid "Set fill color"
msgstr "Iestatīt aizpildījuma krāsu"
-#: ../src/widgets/fill-style.cpp:445 ../src/widgets/fill-style.cpp:524
+#: ../src/widgets/fill-style.cpp:441 ../src/widgets/fill-style.cpp:520
msgid "Set stroke color"
msgstr "Iestatīt apmales krāsu"
-#: ../src/widgets/fill-style.cpp:622
+#: ../src/widgets/fill-style.cpp:618
msgid "Set gradient on fill"
msgstr "Iestatīt aizpildījuma krāsu pāreju"
-#: ../src/widgets/fill-style.cpp:622
+#: ../src/widgets/fill-style.cpp:618
msgid "Set gradient on stroke"
msgstr "Iestatīt apmales krāsu pāreju"
-#: ../src/widgets/fill-style.cpp:682
+#: ../src/widgets/fill-style.cpp:678
msgid "Set pattern on fill"
msgstr "Iestatīt aizpildījuma faktƫru"
-#: ../src/widgets/fill-style.cpp:683
+#: ../src/widgets/fill-style.cpp:679
msgid "Set pattern on stroke"
msgstr "Iestatīt apmales faktƫru"
-#: ../src/widgets/font-selector.cpp:120 ../src/widgets/text-toolbar.cpp:947 ../src/widgets/text-toolbar.cpp:1259
+#: ../src/widgets/font-selector.cpp:120 ../src/widgets/text-toolbar.cpp:953 ../src/widgets/text-toolbar.cpp:1265
msgid "Font size"
msgstr "Fonta izmērs"
@@ -25004,9 +24994,8 @@ msgid "Style"
msgstr "Stils"
#: ../src/widgets/font-selector.cpp:211
-#, fuzzy
msgid "Face"
-msgstr "Seja"
+msgstr "Skaldne"
#: ../src/widgets/font-selector.cpp:240 ../share/extensions/dots.inx.h:3
msgid "Font size:"
@@ -25020,7 +25009,7 @@ msgstr "Dublēt ơo krāsu pāreju"
msgid "Edit gradient"
msgstr "Labot krāsu pāreju"
-#: ../src/widgets/gradient-selector.cpp:281 ../src/widgets/paint-selector.cpp:236
+#: ../src/widgets/gradient-selector.cpp:281 ../src/widgets/paint-selector.cpp:233
msgid "Swatch"
msgstr "Palete"
@@ -25028,158 +25017,162 @@ msgstr "Palete"
msgid "Rename gradient"
msgstr "Pārdēvēt krāsu pāreju"
-#: ../src/widgets/gradient-toolbar.cpp:156 ../src/widgets/gradient-toolbar.cpp:169 ../src/widgets/gradient-toolbar.cpp:758 ../src/widgets/gradient-toolbar.cpp:1097
+#: ../src/widgets/gradient-toolbar.cpp:157 ../src/widgets/gradient-toolbar.cpp:170 ../src/widgets/gradient-toolbar.cpp:761 ../src/widgets/gradient-toolbar.cpp:1100
msgid "No gradient"
msgstr "Nav krāsu pārejas"
-#: ../src/widgets/gradient-toolbar.cpp:176
+#: ../src/widgets/gradient-toolbar.cpp:177
msgid "Multiple gradients"
msgstr "Vairākas krāsu pārejas"
-#: ../src/widgets/gradient-toolbar.cpp:678
+#: ../src/widgets/gradient-toolbar.cpp:681
msgid "Multiple stops"
msgstr "Vairākas pieturvietas"
-#: ../src/widgets/gradient-toolbar.cpp:776 ../src/widgets/gradient-vector.cpp:609
+#: ../src/widgets/gradient-toolbar.cpp:779 ../src/widgets/gradient-vector.cpp:610
msgid "No stops in gradient"
msgstr "Krāsu pārejā nav pieturvietu"
-#: ../src/widgets/gradient-toolbar.cpp:930
+#: ../src/widgets/gradient-toolbar.cpp:933
msgid "Assign gradient to object"
msgstr "Pieƥķirt objektam krāsu pāreju"
-#: ../src/widgets/gradient-toolbar.cpp:952
+#: ../src/widgets/gradient-toolbar.cpp:955
msgid "Set gradient repeat"
msgstr "Iestatīt krāsu pārejas atkārtojumu"
-#: ../src/widgets/gradient-toolbar.cpp:990 ../src/widgets/gradient-vector.cpp:720
+#: ../src/widgets/gradient-toolbar.cpp:993 ../src/widgets/gradient-vector.cpp:721
msgid "Change gradient stop offset"
msgstr "Mainīt krāsu pārejas pieturpunkta nobīdi"
-#: ../src/widgets/gradient-toolbar.cpp:1037
+#: ../src/widgets/gradient-toolbar.cpp:1040
msgid "linear"
msgstr "lineārs"
-#: ../src/widgets/gradient-toolbar.cpp:1037
+#: ../src/widgets/gradient-toolbar.cpp:1040
msgid "Create linear gradient"
msgstr "Izveidot lineāru krāsu pāreju"
-#: ../src/widgets/gradient-toolbar.cpp:1041
+#: ../src/widgets/gradient-toolbar.cpp:1044
msgid "radial"
msgstr "radiāls"
-#: ../src/widgets/gradient-toolbar.cpp:1041
+#: ../src/widgets/gradient-toolbar.cpp:1044
msgid "Create radial (elliptic or circular) gradient"
msgstr "Izveidot radiālu (eliptisku vai riƆķveida) krāsu pāreju"
-#: ../src/widgets/gradient-toolbar.cpp:1044 ../src/widgets/mesh-toolbar.cpp:341
+#: ../src/widgets/gradient-toolbar.cpp:1047 ../src/widgets/mesh-toolbar.cpp:343
msgid "New:"
msgstr "Jauns:"
-#: ../src/widgets/gradient-toolbar.cpp:1067 ../src/widgets/mesh-toolbar.cpp:364
+#: ../src/widgets/gradient-toolbar.cpp:1070 ../src/widgets/mesh-toolbar.cpp:366
msgid "fill"
msgstr "aizpildīt"
-#: ../src/widgets/gradient-toolbar.cpp:1067 ../src/widgets/mesh-toolbar.cpp:364
+#: ../src/widgets/gradient-toolbar.cpp:1070 ../src/widgets/mesh-toolbar.cpp:366
msgid "Create gradient in the fill"
msgstr "Izveidot krāsu pāreju aizpildījumā"
-#: ../src/widgets/gradient-toolbar.cpp:1071 ../src/widgets/mesh-toolbar.cpp:368
+#: ../src/widgets/gradient-toolbar.cpp:1074 ../src/widgets/mesh-toolbar.cpp:370
msgid "stroke"
msgstr "apmale"
-#: ../src/widgets/gradient-toolbar.cpp:1071 ../src/widgets/mesh-toolbar.cpp:368
+#: ../src/widgets/gradient-toolbar.cpp:1074 ../src/widgets/mesh-toolbar.cpp:370
msgid "Create gradient in the stroke"
msgstr "Izveidot krāsu pāreju uz apmales"
-#: ../src/widgets/gradient-toolbar.cpp:1074 ../src/widgets/mesh-toolbar.cpp:371
+#: ../src/widgets/gradient-toolbar.cpp:1077 ../src/widgets/mesh-toolbar.cpp:373
msgid "on:"
msgstr "uz:"
-#: ../src/widgets/gradient-toolbar.cpp:1099
+#: ../src/widgets/gradient-toolbar.cpp:1102
msgid "Select"
msgstr "Atlasīt"
-#: ../src/widgets/gradient-toolbar.cpp:1099
+#: ../src/widgets/gradient-toolbar.cpp:1102
msgid "Choose a gradient"
msgstr "Izvēlieties krāsu pāreju"
-#: ../src/widgets/gradient-toolbar.cpp:1100
+#: ../src/widgets/gradient-toolbar.cpp:1103
msgid "Select:"
msgstr "Atlasīt:"
-#: ../src/widgets/gradient-toolbar.cpp:1115
+#: ../src/widgets/gradient-toolbar.cpp:1118
msgctxt "Gradient repeat type"
msgid "None"
msgstr "Neviens"
#: ../src/widgets/gradient-toolbar.cpp:1121
+msgid "Reflected"
+msgstr "AtspoguÄŒots"
+
+#: ../src/widgets/gradient-toolbar.cpp:1124
msgid "Direct"
msgstr "TieĆĄi"
-#: ../src/widgets/gradient-toolbar.cpp:1123
+#: ../src/widgets/gradient-toolbar.cpp:1126
msgid "Repeat"
msgstr "Atkārtot"
#. TRANSLATORS: for info, see http://www.w3.org/TR/2000/CR-SVG-20000802/pservers.html#LinearGradientSpreadMethodAttribute
-#: ../src/widgets/gradient-toolbar.cpp:1125
+#: ../src/widgets/gradient-toolbar.cpp:1128
msgid ""
"Whether to fill with flat color beyond the ends of the gradient vector (spreadMethod=\"pad\"), or repeat the gradient in the same direction (spreadMethod=\"repeat\"), or repeat the gradient in alternating opposite directions (spreadMethod="
"\"reflect\")"
msgstr ""
"Turpināt aizpildÄ«jumu aiz krāsu pārejas vektora galiem ar vienkārĆĄu krāsu (spreadMethod=\"pad\"), atkārtot krāsu pāreju tajā paƥā virzienā (spreadMethod=\"repeat\"), vai atkārtot krāsu pāreju pretējā virzienā (spreadMethod=\"reflect\")"
-#: ../src/widgets/gradient-toolbar.cpp:1130
+#: ../src/widgets/gradient-toolbar.cpp:1133
msgid "Repeat:"
msgstr "Atkārtot:"
-#: ../src/widgets/gradient-toolbar.cpp:1144
+#: ../src/widgets/gradient-toolbar.cpp:1147
msgid "No stops"
msgstr "Nav pieturpunktu"
-#: ../src/widgets/gradient-toolbar.cpp:1146
+#: ../src/widgets/gradient-toolbar.cpp:1149
msgid "Stops"
msgstr "atbalsta punkti"
-#: ../src/widgets/gradient-toolbar.cpp:1146
+#: ../src/widgets/gradient-toolbar.cpp:1149
msgid "Select a stop for the current gradient"
msgstr "Atlasiet paơreizējās krāsu pārejas pieturpunktu"
-#: ../src/widgets/gradient-toolbar.cpp:1147
+#: ../src/widgets/gradient-toolbar.cpp:1150
msgid "Stops:"
msgstr "Atbalsta punkti:"
#. Label
-#: ../src/widgets/gradient-toolbar.cpp:1159 ../src/widgets/gradient-vector.cpp:906
+#: ../src/widgets/gradient-toolbar.cpp:1162 ../src/widgets/gradient-vector.cpp:907
msgctxt "Gradient"
msgid "Offset:"
msgstr "Nobīde:"
-#: ../src/widgets/gradient-toolbar.cpp:1159
+#: ../src/widgets/gradient-toolbar.cpp:1162
msgid "Offset of selected stop"
msgstr "Atlasītā pieturpunkta nobīde"
-#: ../src/widgets/gradient-toolbar.cpp:1177 ../src/widgets/gradient-toolbar.cpp:1178
+#: ../src/widgets/gradient-toolbar.cpp:1180 ../src/widgets/gradient-toolbar.cpp:1181
msgid "Insert new stop"
msgstr "Ievietot jaunu pieturpunktu"
-#: ../src/widgets/gradient-toolbar.cpp:1191 ../src/widgets/gradient-toolbar.cpp:1192 ../src/widgets/gradient-vector.cpp:888
+#: ../src/widgets/gradient-toolbar.cpp:1194 ../src/widgets/gradient-toolbar.cpp:1195 ../src/widgets/gradient-vector.cpp:889
msgid "Delete stop"
msgstr "Dzēst pieturpunktu"
-#: ../src/widgets/gradient-toolbar.cpp:1206
+#: ../src/widgets/gradient-toolbar.cpp:1209
msgid "Reverse the direction of the gradient"
msgstr "Pagriezt krāsu pārejas virzienu uz pretējo pusi"
-#: ../src/widgets/gradient-toolbar.cpp:1220
+#: ../src/widgets/gradient-toolbar.cpp:1223
msgid "Link gradients"
msgstr "Saistīt krāsu pārejas"
-#: ../src/widgets/gradient-toolbar.cpp:1221
+#: ../src/widgets/gradient-toolbar.cpp:1224
msgid "Link gradients to change all related gradients"
msgstr "Sasaistīt krāsu pārejas, lai mainītu visas saistītās krāsu pārejas"
-#: ../src/widgets/gradient-vector.cpp:312 ../src/widgets/paint-selector.cpp:947 ../src/widgets/stroke-marker-selector.cpp:154
+#: ../src/widgets/gradient-vector.cpp:312 ../src/widgets/paint-selector.cpp:957 ../src/widgets/stroke-marker-selector.cpp:154
msgid "No document selected"
msgstr "Nav izvēlēts neviens dokuments"
@@ -25192,28 +25185,28 @@ msgid "No gradient selected"
msgstr "Nav atlasītu krāsu pāreju"
#. TRANSLATORS: "Stop" means: a "phase" of a gradient
-#: ../src/widgets/gradient-vector.cpp:883
+#: ../src/widgets/gradient-vector.cpp:884
msgid "Add stop"
msgstr "Pievienot pieturpunktu"
-#: ../src/widgets/gradient-vector.cpp:886
+#: ../src/widgets/gradient-vector.cpp:887
msgid "Add another control stop to gradient"
msgstr "Pievienot vēl vienu krāsu pārejas pieturpunktu"
-#: ../src/widgets/gradient-vector.cpp:891
+#: ../src/widgets/gradient-vector.cpp:892
msgid "Delete current control stop from gradient"
msgstr "Dzēst paơreizējo krāsu pārejas pieturpunktu"
#. TRANSLATORS: "Stop" means: a "phase" of a gradient
-#: ../src/widgets/gradient-vector.cpp:959
+#: ../src/widgets/gradient-vector.cpp:960
msgid "Stop Color"
msgstr "Pieturpunkta krāsa"
-#: ../src/widgets/gradient-vector.cpp:987
+#: ../src/widgets/gradient-vector.cpp:988
msgid "Gradient editor"
msgstr "Krāsu pāreju redaktors"
-#: ../src/widgets/gradient-vector.cpp:1324
+#: ../src/widgets/gradient-vector.cpp:1325
msgid "Change gradient stop color"
msgstr "Mainīt krāsu pārejas pieturpunkta krāsu"
@@ -25270,7 +25263,7 @@ msgid "Display measuring info for selected items"
msgstr "Rādīt atlasīto objektu mērījumu informāciju"
#. Add the units menu.
-#: ../src/widgets/lpe-toolbar.cpp:387 ../src/widgets/node-toolbar.cpp:613 ../src/widgets/paintbucket-toolbar.cpp:168 ../src/widgets/rect-toolbar.cpp:378 ../src/widgets/select-toolbar.cpp:538
+#: ../src/widgets/lpe-toolbar.cpp:387 ../src/widgets/node-toolbar.cpp:613 ../src/widgets/paintbucket-toolbar.cpp:167 ../src/widgets/rect-toolbar.cpp:378 ../src/widgets/select-toolbar.cpp:538
msgid "Units"
msgstr "Mērvienības"
@@ -25282,7 +25275,7 @@ msgstr "Atvērt LPE dialoglodziƆu"
msgid "Open LPE dialog (to adapt parameters numerically)"
msgstr "Atvērt LPE dialoglodziƆu (lai pieskaƆotu parametrus skaitliski)"
-#: ../src/widgets/measure-toolbar.cpp:86 ../src/widgets/text-toolbar.cpp:1262
+#: ../src/widgets/measure-toolbar.cpp:86 ../src/widgets/text-toolbar.cpp:1268
msgid "Font Size"
msgstr "Fonta izmērs"
@@ -25298,96 +25291,96 @@ msgstr "Izmēru iezīmēs izmantojamā fonta lielums"
msgid "The units to be used for the measurements"
msgstr "Mērīƥanai izmantojamās mērvienÄ«bas"
-#: ../src/widgets/mesh-toolbar.cpp:311
+#: ../src/widgets/mesh-toolbar.cpp:313
msgid "Set mesh type"
msgstr ""
-#: ../src/widgets/mesh-toolbar.cpp:334
+#: ../src/widgets/mesh-toolbar.cpp:336
msgid "normal"
msgstr "normāls"
-#: ../src/widgets/mesh-toolbar.cpp:334
+#: ../src/widgets/mesh-toolbar.cpp:336
msgid "Create mesh gradient"
msgstr "Izveidot tīkla krāsu pāreju"
-#: ../src/widgets/mesh-toolbar.cpp:338
+#: ../src/widgets/mesh-toolbar.cpp:340
msgid "conical"
msgstr "konisks"
-#: ../src/widgets/mesh-toolbar.cpp:338
+#: ../src/widgets/mesh-toolbar.cpp:340
msgid "Create conical gradient"
msgstr "Izveidot konisku krāsu pāreju"
-#: ../src/widgets/mesh-toolbar.cpp:393
+#: ../src/widgets/mesh-toolbar.cpp:395
msgid "Rows"
msgstr "Rindas"
-#: ../src/widgets/mesh-toolbar.cpp:393 ../share/extensions/guides_creator.inx.h:5 ../share/extensions/layout_nup.inx.h:12
+#: ../src/widgets/mesh-toolbar.cpp:395 ../share/extensions/guides_creator.inx.h:5 ../share/extensions/layout_nup.inx.h:12
msgid "Rows:"
msgstr "Rindas:"
-#: ../src/widgets/mesh-toolbar.cpp:393
+#: ../src/widgets/mesh-toolbar.cpp:395
msgid "Number of rows in new mesh"
msgstr "Rindu skaits jaunajā tīklā"
-#: ../src/widgets/mesh-toolbar.cpp:409
+#: ../src/widgets/mesh-toolbar.cpp:411
msgid "Columns"
msgstr "Slejas"
-#: ../src/widgets/mesh-toolbar.cpp:409 ../share/extensions/guides_creator.inx.h:4
+#: ../src/widgets/mesh-toolbar.cpp:411 ../share/extensions/guides_creator.inx.h:4
msgid "Columns:"
msgstr "Slejas:"
-#: ../src/widgets/mesh-toolbar.cpp:409
+#: ../src/widgets/mesh-toolbar.cpp:411
msgid "Number of columns in new mesh"
msgstr "Sleju skaits jaunajā tīklā"
-#: ../src/widgets/mesh-toolbar.cpp:423
+#: ../src/widgets/mesh-toolbar.cpp:425
msgid "Edit Fill"
msgstr "Labot aizpildījumu"
-#: ../src/widgets/mesh-toolbar.cpp:424
+#: ../src/widgets/mesh-toolbar.cpp:426
msgid "Edit fill mesh"
msgstr "Labot aizpildījuma tīklu"
-#: ../src/widgets/mesh-toolbar.cpp:435
+#: ../src/widgets/mesh-toolbar.cpp:437
msgid "Edit Stroke"
msgstr "Labot apmali"
-#: ../src/widgets/mesh-toolbar.cpp:436
+#: ../src/widgets/mesh-toolbar.cpp:438
msgid "Edit stroke mesh"
msgstr "Labot apmales tīklu"
-#: ../src/widgets/mesh-toolbar.cpp:447 ../src/widgets/node-toolbar.cpp:521
+#: ../src/widgets/mesh-toolbar.cpp:449 ../src/widgets/node-toolbar.cpp:521
msgid "Show Handles"
msgstr "Rādīt turus"
-#: ../src/widgets/mesh-toolbar.cpp:448
+#: ../src/widgets/mesh-toolbar.cpp:450
msgid "Show side and tensor handles"
msgstr "Rādīt malas un tenzora turus"
-#: ../src/widgets/mesh-toolbar.cpp:463
+#: ../src/widgets/mesh-toolbar.cpp:465
msgid "WARNING: Mesh SVG Syntax Subject to Change"
msgstr ""
-#: ../src/widgets/mesh-toolbar.cpp:473
+#: ../src/widgets/mesh-toolbar.cpp:475
msgctxt "Type"
msgid "Coons"
msgstr ""
-#: ../src/widgets/mesh-toolbar.cpp:476
+#: ../src/widgets/mesh-toolbar.cpp:478
msgid "Bicubic"
-msgstr ""
+msgstr "Bikubisks"
-#: ../src/widgets/mesh-toolbar.cpp:478
+#: ../src/widgets/mesh-toolbar.cpp:480
msgid "Coons"
msgstr ""
-#: ../src/widgets/mesh-toolbar.cpp:479
+#: ../src/widgets/mesh-toolbar.cpp:481
msgid "Coons: no smoothing. Bicubic: smoothing across patch boundaries."
msgstr ""
-#: ../src/widgets/mesh-toolbar.cpp:481 ../src/widgets/pencil-toolbar.cpp:278
+#: ../src/widgets/mesh-toolbar.cpp:483 ../src/widgets/pencil-toolbar.cpp:278
msgid "Smoothing:"
msgstr "Nogludināƥana:"
@@ -25583,126 +25576,126 @@ msgstr "Y koordināte:"
msgid "Y coordinate of selected node(s)"
msgstr "Izvēlētā(-o) mezgla(-u) Y koordināte"
-#: ../src/widgets/paint-selector.cpp:222
+#: ../src/widgets/paint-selector.cpp:219
msgid "No paint"
msgstr "Nav krāsas"
-#: ../src/widgets/paint-selector.cpp:224
+#: ../src/widgets/paint-selector.cpp:221
msgid "Flat color"
msgstr "Vienlaidu krāsa"
-#: ../src/widgets/paint-selector.cpp:226
+#: ../src/widgets/paint-selector.cpp:223
msgid "Linear gradient"
msgstr "Lineāra krāsu pāreja"
-#: ../src/widgets/paint-selector.cpp:228
+#: ../src/widgets/paint-selector.cpp:225
msgid "Radial gradient"
msgstr "Radiāla krāsu pāreja"
-#: ../src/widgets/paint-selector.cpp:231
+#: ../src/widgets/paint-selector.cpp:228
msgid "Mesh gradient"
msgstr "ReĆŸÄŁtÄ«kla krāsu pāreja"
-#: ../src/widgets/paint-selector.cpp:238
+#: ../src/widgets/paint-selector.cpp:235
msgid "Unset paint (make it undefined so it can be inherited)"
msgstr "AtiestatÄ«t krāsu (iestatÄ«t to kā nenoteiktu, lai to bĆ«tu iespējams pārmantot)"
#. TRANSLATORS: for info, see http://www.w3.org/TR/2000/CR-SVG-20000802/painting.html#FillRuleProperty
-#: ../src/widgets/paint-selector.cpp:255
+#: ../src/widgets/paint-selector.cpp:252
msgid "Any path self-intersections or subpaths create holes in the fill (fill-rule: evenodd)"
msgstr "Jebkura ceÄŒa paĆĄkrustoĆĄanās vai apakĆĄceÄŒi radÄ«s caurumus aizpildÄ«jumā (fill-rule: evenodd)"
#. TRANSLATORS: for info, see http://www.w3.org/TR/2000/CR-SVG-20000802/painting.html#FillRuleProperty
-#: ../src/widgets/paint-selector.cpp:266
+#: ../src/widgets/paint-selector.cpp:263
msgid "Fill is solid unless a subpath is counterdirectional (fill-rule: nonzero)"
msgstr "AizpildÄ«jums ir vienlaidu, ja vien apakĆĄceÄŒa virziens nav pretējs (fill-rule: nonzero)"
-#: ../src/widgets/paint-selector.cpp:600
+#: ../src/widgets/paint-selector.cpp:597
msgid "<b>No objects</b>"
msgstr "<b>Nav objektu</b>"
-#: ../src/widgets/paint-selector.cpp:611
+#: ../src/widgets/paint-selector.cpp:608
msgid "<b>Multiple styles</b>"
msgstr "<b>Vairāki stili</b>"
-#: ../src/widgets/paint-selector.cpp:622
+#: ../src/widgets/paint-selector.cpp:619
msgid "<b>Paint is undefined</b>"
msgstr "<b>Krāsa nav noteikta</b>"
-#: ../src/widgets/paint-selector.cpp:633
+#: ../src/widgets/paint-selector.cpp:630
msgid "<b>No paint</b>"
msgstr "<b>Nav krāsas</b>"
-#: ../src/widgets/paint-selector.cpp:704
+#: ../src/widgets/paint-selector.cpp:714
msgid "<b>Flat color</b>"
msgstr "<b>Vienlaidu krāsa</b>"
#. sp_gradient_selector_set_mode(SP_GRADIENT_SELECTOR(gsel), SP_GRADIENT_SELECTOR_MODE_LINEAR);
-#: ../src/widgets/paint-selector.cpp:773
+#: ../src/widgets/paint-selector.cpp:783
msgid "<b>Linear gradient</b>"
msgstr "<b>Lineāra krāsu pāreja</b>"
-#: ../src/widgets/paint-selector.cpp:776
+#: ../src/widgets/paint-selector.cpp:786
msgid "<b>Radial gradient</b>"
msgstr "<b>Radiāla krāsu pāreja</b>"
-#: ../src/widgets/paint-selector.cpp:781
+#: ../src/widgets/paint-selector.cpp:791
msgid "<b>Mesh gradient</b>"
msgstr "<b>ReĆŸÄŁtÄ«kla krāsu pāreja</b>"
-#: ../src/widgets/paint-selector.cpp:1080
+#: ../src/widgets/paint-selector.cpp:1090
msgid "Use the <b>Node tool</b> to adjust position, scale, and rotation of the pattern on canvas. Use <b>Object &gt; Pattern &gt; Objects to Pattern</b> to create a new pattern from selection."
msgstr "Izmantojiet <b>Mezglu rÄ«ks</b>, lai pielāgotu faktĆ«ras novietojumu, mērogu un pagriezienu uz audekla. Izmantojiet <b>Objekts &gt; FaktĆ«ra &gt; Objektus par faktĆ«ru</b>, lai no atlasÄ«tā izveidotu jaunu faktĆ«ru."
-#: ../src/widgets/paint-selector.cpp:1093
+#: ../src/widgets/paint-selector.cpp:1103
msgid "<b>Pattern fill</b>"
msgstr "<b>Aizpildījums ar faktƫru</b>"
-#: ../src/widgets/paint-selector.cpp:1187
+#: ../src/widgets/paint-selector.cpp:1197
msgid "<b>Swatch fill</b>"
msgstr "<b>Paletes aizpildījums</b>"
-#: ../src/widgets/paintbucket-toolbar.cpp:135
+#: ../src/widgets/paintbucket-toolbar.cpp:134
msgid "Fill by"
msgstr "Aizpildīt ar"
-#: ../src/widgets/paintbucket-toolbar.cpp:136
+#: ../src/widgets/paintbucket-toolbar.cpp:135
msgid "Fill by:"
msgstr "Aizpildīt ar:"
-#: ../src/widgets/paintbucket-toolbar.cpp:148
+#: ../src/widgets/paintbucket-toolbar.cpp:147
msgid "Fill Threshold"
msgstr "Aizpildīƥanas slieksnis"
-#: ../src/widgets/paintbucket-toolbar.cpp:149
+#: ../src/widgets/paintbucket-toolbar.cpp:148
msgid "The maximum allowed difference between the clicked pixel and the neighboring pixels to be counted in the fill"
msgstr "Maksimālā pieÄŒaujamā atĆĄÄ·irÄ«ba aizpildÄ«jumā starp izvēlēto pikseli un apkārtējiem pikseÄŒiem"
-#: ../src/widgets/paintbucket-toolbar.cpp:176
+#: ../src/widgets/paintbucket-toolbar.cpp:175
msgid "Grow/shrink by"
msgstr "Palielināt/samazināt par"
-#: ../src/widgets/paintbucket-toolbar.cpp:176
+#: ../src/widgets/paintbucket-toolbar.cpp:175
msgid "Grow/shrink by:"
msgstr "Palielināt/samazināt par:"
-#: ../src/widgets/paintbucket-toolbar.cpp:177
+#: ../src/widgets/paintbucket-toolbar.cpp:176
msgid "The amount to grow (positive) or shrink (negative) the created fill path"
msgstr "Izveidotā aizpildÄ«juma ceÄŒa paplaĆĄinājums (pozitÄ«vs) vai saĆĄaurinājums (negatÄ«vs)"
-#: ../src/widgets/paintbucket-toolbar.cpp:202
+#: ../src/widgets/paintbucket-toolbar.cpp:199
msgid "Close gaps"
msgstr "Aizpildīt spraugas"
-#: ../src/widgets/paintbucket-toolbar.cpp:203
+#: ../src/widgets/paintbucket-toolbar.cpp:200
msgid "Close gaps:"
msgstr "Aizpildīt spraugas:"
-#: ../src/widgets/paintbucket-toolbar.cpp:214 ../src/widgets/pencil-toolbar.cpp:299 ../src/widgets/spiral-toolbar.cpp:289 ../src/widgets/star-toolbar.cpp:566
+#: ../src/widgets/paintbucket-toolbar.cpp:211 ../src/widgets/pencil-toolbar.cpp:299 ../src/widgets/spiral-toolbar.cpp:285 ../src/widgets/star-toolbar.cpp:564
msgid "Defaults"
msgstr "Noklusētie"
-#: ../src/widgets/paintbucket-toolbar.cpp:215
+#: ../src/widgets/paintbucket-toolbar.cpp:212
msgid "Reset paint bucket parameters to defaults (use Inkscape Preferences > Tools to change defaults)"
msgstr "AtiestatÄ«t krāsas spaiƆa parametrus uz noklusētajiem (izmantojiet Inkscape IestatÄ«jumi > RÄ«ki, lai manÄ«tu noklusētās vērtÄ«bas)"
@@ -25792,7 +25785,7 @@ msgstr "Cik liela nogludināƥana (vienkārƥoƥana) tiek pielietota līnijai"
msgid "Reset pencil parameters to defaults (use Inkscape Preferences > Tools to change defaults)"
msgstr "AtiestatÄ«t zÄ«muÄŒa parametrus uz noklusētajiem (izmantojiet Inkscape IestatÄ«jumi > RÄ«ki, lai mainÄ«tu noklusētos)"
-#: ../src/widgets/rect-toolbar.cpp:124
+#: ../src/widgets/rect-toolbar.cpp:125
msgid "Change rectangle"
msgstr "Izveidot taisnstƫri"
@@ -26118,91 +26111,91 @@ msgstr "Vērtība"
msgid "Type text in a text node"
msgstr "Ierakstiet tekstu teksta mezglā"
-#: ../src/widgets/spiral-toolbar.cpp:100
+#: ../src/widgets/spiral-toolbar.cpp:98
msgid "Change spiral"
msgstr "Mainīt spirāli"
-#: ../src/widgets/spiral-toolbar.cpp:246
+#: ../src/widgets/spiral-toolbar.cpp:242
msgid "just a curve"
msgstr "tikai līkne"
-#: ../src/widgets/spiral-toolbar.cpp:246
+#: ../src/widgets/spiral-toolbar.cpp:242
msgid "one full revolution"
msgstr "vienu pilnu apgriezienu"
-#: ../src/widgets/spiral-toolbar.cpp:249
+#: ../src/widgets/spiral-toolbar.cpp:245
msgid "Number of turns"
msgstr "Pilnu apgriezienu skaits"
-#: ../src/widgets/spiral-toolbar.cpp:249
+#: ../src/widgets/spiral-toolbar.cpp:245
msgid "Turns:"
msgstr "Apgriezieni:"
-#: ../src/widgets/spiral-toolbar.cpp:249
+#: ../src/widgets/spiral-toolbar.cpp:245
msgid "Number of revolutions"
msgstr "Apgriezienu skaits"
-#: ../src/widgets/spiral-toolbar.cpp:260
+#: ../src/widgets/spiral-toolbar.cpp:256
msgid "circle"
msgstr "riƆķis"
-#: ../src/widgets/spiral-toolbar.cpp:260
+#: ../src/widgets/spiral-toolbar.cpp:256
msgid "edge is much denser"
msgstr "malas ir daudz blīvākas"
-#: ../src/widgets/spiral-toolbar.cpp:260
+#: ../src/widgets/spiral-toolbar.cpp:256
msgid "edge is denser"
msgstr "malas ir blīvākas"
-#: ../src/widgets/spiral-toolbar.cpp:260
+#: ../src/widgets/spiral-toolbar.cpp:256
msgid "even"
msgstr "pāra"
-#: ../src/widgets/spiral-toolbar.cpp:260
+#: ../src/widgets/spiral-toolbar.cpp:256
msgid "center is denser"
msgstr "centrs ir blīvāks"
-#: ../src/widgets/spiral-toolbar.cpp:260
+#: ../src/widgets/spiral-toolbar.cpp:256
msgid "center is much denser"
msgstr "centrs ir daudz blīvāks"
-#: ../src/widgets/spiral-toolbar.cpp:263
+#: ../src/widgets/spiral-toolbar.cpp:259
msgid "Divergence"
msgstr "Novirze"
-#: ../src/widgets/spiral-toolbar.cpp:263
+#: ../src/widgets/spiral-toolbar.cpp:259
msgid "Divergence:"
msgstr "Novirze:"
-#: ../src/widgets/spiral-toolbar.cpp:263
+#: ../src/widgets/spiral-toolbar.cpp:259
msgid "How much denser/sparser are outer revolutions; 1 = uniform"
msgstr "Cik blīvāki/retāki ir ārējie vijumi; 1 - vienādi nemainīgi"
-#: ../src/widgets/spiral-toolbar.cpp:274
+#: ../src/widgets/spiral-toolbar.cpp:270
msgid "starts from center"
msgstr "sākas no centra"
-#: ../src/widgets/spiral-toolbar.cpp:274
+#: ../src/widgets/spiral-toolbar.cpp:270
msgid "starts mid-way"
msgstr "sākas pusceČā"
-#: ../src/widgets/spiral-toolbar.cpp:274
+#: ../src/widgets/spiral-toolbar.cpp:270
msgid "starts near edge"
msgstr "sākas pie malas"
-#: ../src/widgets/spiral-toolbar.cpp:277
+#: ../src/widgets/spiral-toolbar.cpp:273
msgid "Inner radius"
msgstr "Iekơējais rādiuss"
-#: ../src/widgets/spiral-toolbar.cpp:277
+#: ../src/widgets/spiral-toolbar.cpp:273
msgid "Inner radius:"
msgstr "Iekơējais rādiuss:"
-#: ../src/widgets/spiral-toolbar.cpp:277
+#: ../src/widgets/spiral-toolbar.cpp:273
msgid "Radius of the innermost revolution (relative to the spiral size)"
msgstr "Iekơējā vijuma rādiuss (attiecÄ«bā pret spirāles izmēru)"
-#: ../src/widgets/spiral-toolbar.cpp:290 ../src/widgets/star-toolbar.cpp:567
+#: ../src/widgets/spiral-toolbar.cpp:286 ../src/widgets/star-toolbar.cpp:565
msgid "Reset shape parameters to defaults (use Inkscape Preferences > Tools to change defaults)"
msgstr "AtiestatÄ«t figĆ«ras parametrus uz noklusētajiem (izmantojiet Inkscape IestatÄ«jumi > RÄ«ki, lai mainÄ«tu noklusētos)"
@@ -26359,149 +26352,149 @@ msgstr "Zvaigzne: manīt noapaČojumu"
msgid "Star: Change randomization"
msgstr "Zvaigzne: manÄ«t daĆŸÄdoĆĄanu"
-#: ../src/widgets/star-toolbar.cpp:465
+#: ../src/widgets/star-toolbar.cpp:463
msgid "Regular polygon (with one handle) instead of a star"
msgstr "Vienādmalu daudzstƫris (ar vienu turi) zvaigznes vietā"
-#: ../src/widgets/star-toolbar.cpp:472
+#: ../src/widgets/star-toolbar.cpp:470
msgid "Star instead of a regular polygon (with one handle)"
msgstr "Zvaigzne regulāra daudzstƫra vietā (ar vienu turi)"
-#: ../src/widgets/star-toolbar.cpp:493
+#: ../src/widgets/star-toolbar.cpp:491
msgid "triangle/tri-star"
msgstr "trīsstƫra/trīsstaru"
-#: ../src/widgets/star-toolbar.cpp:493
+#: ../src/widgets/star-toolbar.cpp:491
msgid "square/quad-star"
msgstr "četrstĆ«ra/četrstaru"
-#: ../src/widgets/star-toolbar.cpp:493
+#: ../src/widgets/star-toolbar.cpp:491
msgid "pentagon/five-pointed star"
msgstr "piecstƫris/piecu staru zvaigzne"
-#: ../src/widgets/star-toolbar.cpp:493
+#: ../src/widgets/star-toolbar.cpp:491
msgid "hexagon/six-pointed star"
msgstr "seƥstƫris/seƥuu staru zvaigzne"
-#: ../src/widgets/star-toolbar.cpp:496
+#: ../src/widgets/star-toolbar.cpp:494
msgid "Corners"
msgstr "Stƫri"
-#: ../src/widgets/star-toolbar.cpp:496
+#: ../src/widgets/star-toolbar.cpp:494
msgid "Corners:"
msgstr "Stƫri:"
-#: ../src/widgets/star-toolbar.cpp:496
+#: ../src/widgets/star-toolbar.cpp:494
msgid "Number of corners of a polygon or star"
msgstr "Daudzstƫra stƫru vai zvaigznes staru skaits"
-#: ../src/widgets/star-toolbar.cpp:509
+#: ../src/widgets/star-toolbar.cpp:507
msgid "thin-ray star"
msgstr "zvaigzne ar tieviem stariem"
-#: ../src/widgets/star-toolbar.cpp:509
+#: ../src/widgets/star-toolbar.cpp:507
msgid "pentagram"
msgstr "pentagramma"
-#: ../src/widgets/star-toolbar.cpp:509
+#: ../src/widgets/star-toolbar.cpp:507
msgid "hexagram"
msgstr "heksagramma"
-#: ../src/widgets/star-toolbar.cpp:509
+#: ../src/widgets/star-toolbar.cpp:507
msgid "heptagram"
msgstr "heptagramma"
-#: ../src/widgets/star-toolbar.cpp:509
+#: ../src/widgets/star-toolbar.cpp:507
msgid "octagram"
msgstr "octagramma"
-#: ../src/widgets/star-toolbar.cpp:509
+#: ../src/widgets/star-toolbar.cpp:507
msgid "regular polygon"
msgstr "regulārs daudzstƫris"
-#: ../src/widgets/star-toolbar.cpp:512
+#: ../src/widgets/star-toolbar.cpp:510
msgid "Spoke ratio"
msgstr "Rādiusu attiecība"
-#: ../src/widgets/star-toolbar.cpp:512
+#: ../src/widgets/star-toolbar.cpp:510
msgid "Spoke ratio:"
msgstr "Rādiusu attiecība:"
#. TRANSLATORS: Tip radius of a star is the distance from the center to the farthest handle.
#. Base radius is the same for the closest handle.
-#: ../src/widgets/star-toolbar.cpp:515
+#: ../src/widgets/star-toolbar.cpp:513
msgid "Base radius to tip radius ratio"
msgstr "Bāzes un virsotnes rādiusu attiecība"
-#: ../src/widgets/star-toolbar.cpp:533
+#: ../src/widgets/star-toolbar.cpp:531
msgid "stretched"
msgstr "izstiepts"
-#: ../src/widgets/star-toolbar.cpp:533
+#: ../src/widgets/star-toolbar.cpp:531
msgid "twisted"
msgstr "savīts"
-#: ../src/widgets/star-toolbar.cpp:533
+#: ../src/widgets/star-toolbar.cpp:531
msgid "slightly pinched"
msgstr "viegli saknaibīts"
-#: ../src/widgets/star-toolbar.cpp:533
+#: ../src/widgets/star-toolbar.cpp:531
msgid "NOT rounded"
msgstr "NenopaÄŒoti"
-#: ../src/widgets/star-toolbar.cpp:533
+#: ../src/widgets/star-toolbar.cpp:531
msgid "slightly rounded"
msgstr "viegli noapaÄŒoti"
-#: ../src/widgets/star-toolbar.cpp:533
+#: ../src/widgets/star-toolbar.cpp:531
msgid "visibly rounded"
msgstr "redzami noapaÄŒoti"
-#: ../src/widgets/star-toolbar.cpp:533
+#: ../src/widgets/star-toolbar.cpp:531
msgid "well rounded"
msgstr "labi noapaÄŒoti"
-#: ../src/widgets/star-toolbar.cpp:533
+#: ../src/widgets/star-toolbar.cpp:531
msgid "amply rounded"
msgstr "pilnīgi noapaČoti"
-#: ../src/widgets/star-toolbar.cpp:533 ../src/widgets/star-toolbar.cpp:548
+#: ../src/widgets/star-toolbar.cpp:531 ../src/widgets/star-toolbar.cpp:546
msgid "blown up"
msgstr "uzpƫsts"
-#: ../src/widgets/star-toolbar.cpp:536
+#: ../src/widgets/star-toolbar.cpp:534
msgid "Rounded:"
msgstr "NoapaÄŒots:"
-#: ../src/widgets/star-toolbar.cpp:536
+#: ../src/widgets/star-toolbar.cpp:534
msgid "How much rounded are the corners (0 for sharp)"
msgstr "Cik noapaÄŒoti ir stĆ«ri (0 - asi)"
-#: ../src/widgets/star-toolbar.cpp:548
+#: ../src/widgets/star-toolbar.cpp:546
msgid "NOT randomized"
msgstr "Nav daĆŸÄdots"
-#: ../src/widgets/star-toolbar.cpp:548
+#: ../src/widgets/star-toolbar.cpp:546
msgid "slightly irregular"
msgstr "viegli neregulārs"
-#: ../src/widgets/star-toolbar.cpp:548
+#: ../src/widgets/star-toolbar.cpp:546
msgid "visibly randomized"
msgstr "ievērojami daĆŸÄdots"
-#: ../src/widgets/star-toolbar.cpp:548
+#: ../src/widgets/star-toolbar.cpp:546
msgid "strongly randomized"
msgstr "stipri daĆŸÄdots"
-#: ../src/widgets/star-toolbar.cpp:551
+#: ../src/widgets/star-toolbar.cpp:549
msgid "Randomized"
msgstr "DaĆŸÄdots"
-#: ../src/widgets/star-toolbar.cpp:551
+#: ../src/widgets/star-toolbar.cpp:549
msgid "Randomized:"
msgstr "DaĆŸÄdots:"
-#: ../src/widgets/star-toolbar.cpp:551
+#: ../src/widgets/star-toolbar.cpp:549
msgid "Scatter randomly the corners and angles"
msgstr "BrÄ«vi izkliedēt stĆ«rus un leƆķus"
@@ -26597,7 +26590,7 @@ msgstr "Beigu marÄ·ieri tiek pievienoti ceÄŒa vai figĆ«ras pēdējam mezglam"
msgid "Set markers"
msgstr "Iestatīt marķierus"
-#: ../src/widgets/stroke-style.cpp:1030 ../src/widgets/stroke-style.cpp:1114
+#: ../src/widgets/stroke-style.cpp:1029 ../src/widgets/stroke-style.cpp:1113
msgid "Set stroke style"
msgstr "Iestatīt apmales stilu"
@@ -26609,409 +26602,409 @@ msgstr "Iestatīt marķiera krāsu"
msgid "Change swatch color"
msgstr "Mainiet krāsu paraugu krāsu"
-#: ../src/widgets/text-toolbar.cpp:169
+#: ../src/widgets/text-toolbar.cpp:173
msgid "Text: Change font family"
msgstr "Teksts: mainīt fonta saimi"
-#: ../src/widgets/text-toolbar.cpp:233
+#: ../src/widgets/text-toolbar.cpp:239
msgid "Text: Change font size"
msgstr "Teksts: mainīt fonta izmēru"
-#: ../src/widgets/text-toolbar.cpp:269
+#: ../src/widgets/text-toolbar.cpp:275
msgid "Text: Change font style"
msgstr "Teksts: mainīt fonta stilu"
-#: ../src/widgets/text-toolbar.cpp:347
+#: ../src/widgets/text-toolbar.cpp:353
msgid "Text: Change superscript or subscript"
msgstr "Teksts: mainīt uz augƥrakstu vai apakƥrakstu"
-#: ../src/widgets/text-toolbar.cpp:489
+#: ../src/widgets/text-toolbar.cpp:496
msgid "Text: Change alignment"
msgstr "Teksts: mainīt līdzināƥanu"
-#: ../src/widgets/text-toolbar.cpp:532
+#: ../src/widgets/text-toolbar.cpp:539
msgid "Text: Change line-height"
msgstr "Teksts: mainīt rindas augstumu"
-#: ../src/widgets/text-toolbar.cpp:580
+#: ../src/widgets/text-toolbar.cpp:587
msgid "Text: Change word-spacing"
msgstr "Teksts: mainīt attālumu starp vārdiem"
-#: ../src/widgets/text-toolbar.cpp:620
+#: ../src/widgets/text-toolbar.cpp:627
msgid "Text: Change letter-spacing"
msgstr "Teksts: mainīt attālumu starp burtiem"
-#: ../src/widgets/text-toolbar.cpp:658
+#: ../src/widgets/text-toolbar.cpp:665
msgid "Text: Change dx (kern)"
msgstr "Teksts: mainīt dx (rakstsavirzi)"
-#: ../src/widgets/text-toolbar.cpp:692
+#: ../src/widgets/text-toolbar.cpp:699
msgid "Text: Change dy"
msgstr "Teksts: mainīt dy"
-#: ../src/widgets/text-toolbar.cpp:727
+#: ../src/widgets/text-toolbar.cpp:734
msgid "Text: Change rotate"
msgstr "Teksts: mainīt pagriezienu"
-#: ../src/widgets/text-toolbar.cpp:774
+#: ../src/widgets/text-toolbar.cpp:781
msgid "Text: Change orientation"
msgstr "Teksts: mainīt orientāciju"
-#: ../src/widgets/text-toolbar.cpp:1210
+#: ../src/widgets/text-toolbar.cpp:1216
msgid "Font Family"
msgstr "Fonta saime"
-#: ../src/widgets/text-toolbar.cpp:1211
+#: ../src/widgets/text-toolbar.cpp:1217
msgid "Select Font Family (Alt-X to access)"
msgstr "Izvēlieties fontu ÄŁimeni (saÄ«sne - Alt-X)"
#. Focus widget
#. Enable entry completion
-#: ../src/widgets/text-toolbar.cpp:1221
+#: ../src/widgets/text-toolbar.cpp:1227
msgid "Select all text with this font-family"
msgstr "AtlasÄ«t visu tekstu, kas formatēts ar ĆĄo fontu grupu"
-#: ../src/widgets/text-toolbar.cpp:1225
+#: ../src/widgets/text-toolbar.cpp:1231
msgid "Font not found on system"
msgstr "Fonts nav atrasts"
-#: ../src/widgets/text-toolbar.cpp:1284
+#: ../src/widgets/text-toolbar.cpp:1290
msgid "Font Style"
msgstr "Fonta stils"
-#: ../src/widgets/text-toolbar.cpp:1285
+#: ../src/widgets/text-toolbar.cpp:1291
msgid "Font style"
msgstr "Fonta stils"
#. Name
-#: ../src/widgets/text-toolbar.cpp:1302
+#: ../src/widgets/text-toolbar.cpp:1308
msgid "Toggle Superscript"
msgstr "Ieslēgt augơrakstu"
#. Label
-#: ../src/widgets/text-toolbar.cpp:1303
+#: ../src/widgets/text-toolbar.cpp:1309
msgid "Toggle superscript"
msgstr "Ieslēgt augơrakstu"
#. Name
-#: ../src/widgets/text-toolbar.cpp:1315
+#: ../src/widgets/text-toolbar.cpp:1321
msgid "Toggle Subscript"
msgstr "Ieslēgt apakơrakstu"
#. Label
-#: ../src/widgets/text-toolbar.cpp:1316
+#: ../src/widgets/text-toolbar.cpp:1322
msgid "Toggle subscript"
msgstr "Ieslēgt apakơrakstu"
-#: ../src/widgets/text-toolbar.cpp:1357
+#: ../src/widgets/text-toolbar.cpp:1363
msgid "Justify"
msgstr "Izlīdzināt"
#. Name
-#: ../src/widgets/text-toolbar.cpp:1364
+#: ../src/widgets/text-toolbar.cpp:1370
msgid "Alignment"
msgstr "Izlīdzinājums"
#. Label
-#: ../src/widgets/text-toolbar.cpp:1365
+#: ../src/widgets/text-toolbar.cpp:1371
msgid "Text alignment"
msgstr "Teksta līdzināƥana"
-#: ../src/widgets/text-toolbar.cpp:1392
+#: ../src/widgets/text-toolbar.cpp:1398
msgid "Horizontal"
msgstr "Horizontāls"
-#: ../src/widgets/text-toolbar.cpp:1399
+#: ../src/widgets/text-toolbar.cpp:1405
msgid "Vertical"
msgstr "Vertikāls"
#. Label
-#: ../src/widgets/text-toolbar.cpp:1406
+#: ../src/widgets/text-toolbar.cpp:1412
msgid "Text orientation"
msgstr "Teksta orientācija"
#. Drop down menu
-#: ../src/widgets/text-toolbar.cpp:1429
+#: ../src/widgets/text-toolbar.cpp:1435
msgid "Smaller spacing"
msgstr "Mazāka atstarpe"
-#: ../src/widgets/text-toolbar.cpp:1429 ../src/widgets/text-toolbar.cpp:1460 ../src/widgets/text-toolbar.cpp:1491
+#: ../src/widgets/text-toolbar.cpp:1435 ../src/widgets/text-toolbar.cpp:1466 ../src/widgets/text-toolbar.cpp:1497
msgctxt "Text tool"
msgid "Normal"
msgstr "Parasts"
-#: ../src/widgets/text-toolbar.cpp:1429
+#: ../src/widgets/text-toolbar.cpp:1435
msgid "Larger spacing"
msgstr "Lielāka atstarpe"
#. name
-#: ../src/widgets/text-toolbar.cpp:1434
+#: ../src/widgets/text-toolbar.cpp:1440
msgid "Line Height"
msgstr "Rindas augstums"
#. label
-#: ../src/widgets/text-toolbar.cpp:1435
+#: ../src/widgets/text-toolbar.cpp:1441
msgid "Line:"
msgstr "Rinda:"
#. short label
-#: ../src/widgets/text-toolbar.cpp:1436
+#: ../src/widgets/text-toolbar.cpp:1442
msgid "Spacing between lines (times font size)"
msgstr "Atstarpe starp rindām (fonta izmēra reizēs)"
#. Drop down menu
-#: ../src/widgets/text-toolbar.cpp:1460 ../src/widgets/text-toolbar.cpp:1491
+#: ../src/widgets/text-toolbar.cpp:1466 ../src/widgets/text-toolbar.cpp:1497
msgid "Negative spacing"
msgstr "Negatīva atstarpe"
-#: ../src/widgets/text-toolbar.cpp:1460 ../src/widgets/text-toolbar.cpp:1491
+#: ../src/widgets/text-toolbar.cpp:1466 ../src/widgets/text-toolbar.cpp:1497
msgid "Positive spacing"
msgstr "Pozitīva atstarpe"
#. name
-#: ../src/widgets/text-toolbar.cpp:1465
+#: ../src/widgets/text-toolbar.cpp:1471
msgid "Word spacing"
msgstr "Vārdu atstatums"
#. label
-#: ../src/widgets/text-toolbar.cpp:1466
+#: ../src/widgets/text-toolbar.cpp:1472
msgid "Word:"
msgstr "Vārds:"
#. short label
-#: ../src/widgets/text-toolbar.cpp:1467
+#: ../src/widgets/text-toolbar.cpp:1473
msgid "Spacing between words (px)"
msgstr "Atstarpe starp vārdiem (px)"
#. name
-#: ../src/widgets/text-toolbar.cpp:1496
+#: ../src/widgets/text-toolbar.cpp:1502
msgid "Letter spacing"
msgstr "Burtu atstatums"
#. label
-#: ../src/widgets/text-toolbar.cpp:1497
+#: ../src/widgets/text-toolbar.cpp:1503
msgid "Letter:"
msgstr "Burts:"
#. short label
-#: ../src/widgets/text-toolbar.cpp:1498
+#: ../src/widgets/text-toolbar.cpp:1504
msgid "Spacing between letters (px)"
msgstr "Atstarpe starp burtiem (px)"
#. name
-#: ../src/widgets/text-toolbar.cpp:1527
+#: ../src/widgets/text-toolbar.cpp:1533
msgid "Kerning"
msgstr "Rakstsavirze"
#. label
-#: ../src/widgets/text-toolbar.cpp:1528
+#: ../src/widgets/text-toolbar.cpp:1534
msgid "Kern:"
msgstr "Rakstsavirze:"
#. short label
-#: ../src/widgets/text-toolbar.cpp:1529
+#: ../src/widgets/text-toolbar.cpp:1535
msgid "Horizontal kerning (px)"
msgstr "Horizontālā rakstsavirze (px)"
#. name
-#: ../src/widgets/text-toolbar.cpp:1558
+#: ../src/widgets/text-toolbar.cpp:1564
msgid "Vertical Shift"
msgstr "Vertikālā pārbīde"
#. label
-#: ../src/widgets/text-toolbar.cpp:1559
+#: ../src/widgets/text-toolbar.cpp:1565
msgid "Vert:"
msgstr "Vert:"
#. short label
-#: ../src/widgets/text-toolbar.cpp:1560
+#: ../src/widgets/text-toolbar.cpp:1566
msgid "Vertical shift (px)"
msgstr "Vertikālā pārbīde (px)"
#. name
-#: ../src/widgets/text-toolbar.cpp:1589
+#: ../src/widgets/text-toolbar.cpp:1595
msgid "Letter rotation"
msgstr "Burta pagrieziens"
#. label
-#: ../src/widgets/text-toolbar.cpp:1590
+#: ../src/widgets/text-toolbar.cpp:1596
msgid "Rot:"
msgstr "Pagr.:"
#. short label
-#: ../src/widgets/text-toolbar.cpp:1591
+#: ../src/widgets/text-toolbar.cpp:1597
msgid "Character rotation (degrees)"
msgstr "Rakstzīmju pagrieziens (grādos)"
-#: ../src/widgets/toolbox.cpp:181
+#: ../src/widgets/toolbox.cpp:177
msgid "Color/opacity used for color tweaking"
msgstr "Krāsu korekcijai izmantojamā krāsa/necauspīdība"
-#: ../src/widgets/toolbox.cpp:189
+#: ../src/widgets/toolbox.cpp:185
msgid "Style of new stars"
msgstr "Jauno zvaigĆŸĆ†u stils"
-#: ../src/widgets/toolbox.cpp:191
+#: ../src/widgets/toolbox.cpp:187
msgid "Style of new rectangles"
msgstr "Jauno taisnstƫru stils"
-#: ../src/widgets/toolbox.cpp:193
+#: ../src/widgets/toolbox.cpp:189
msgid "Style of new 3D boxes"
msgstr "Jauno 3D paralēlskaldƆu stils"
-#: ../src/widgets/toolbox.cpp:195
+#: ../src/widgets/toolbox.cpp:191
msgid "Style of new ellipses"
msgstr "Jauno elipĆĄu stils"
-#: ../src/widgets/toolbox.cpp:197
+#: ../src/widgets/toolbox.cpp:193
msgid "Style of new spirals"
msgstr "Jauno spirāČu stils"
-#: ../src/widgets/toolbox.cpp:199
+#: ../src/widgets/toolbox.cpp:195
msgid "Style of new paths created by Pencil"
msgstr "Jauno, ar zīmuČa rīku veidoto ceČu stils"
-#: ../src/widgets/toolbox.cpp:201
+#: ../src/widgets/toolbox.cpp:197
msgid "Style of new paths created by Pen"
msgstr "Jauno, ar spalvas rīku veidoto ceČu stils"
-#: ../src/widgets/toolbox.cpp:203
+#: ../src/widgets/toolbox.cpp:199
msgid "Style of new calligraphic strokes"
msgstr "Jauno kaligrāfisko apmaČu stils"
-#: ../src/widgets/toolbox.cpp:205 ../src/widgets/toolbox.cpp:207
+#: ../src/widgets/toolbox.cpp:201 ../src/widgets/toolbox.cpp:203
msgid "TBD"
msgstr "TBD"
-#: ../src/widgets/toolbox.cpp:219
+#: ../src/widgets/toolbox.cpp:215
msgid "Style of Paint Bucket fill objects"
msgstr "Krāsas spaiƆa objektu aizpildÄ«juma stils"
-#: ../src/widgets/toolbox.cpp:1683
+#: ../src/widgets/toolbox.cpp:1679
msgid "Bounding box"
msgstr "RobeĆŸrāmis"
-#: ../src/widgets/toolbox.cpp:1683
+#: ../src/widgets/toolbox.cpp:1679
msgid "Snap bounding boxes"
msgstr "Pievilkt robeĆŸrāmjus"
-#: ../src/widgets/toolbox.cpp:1692
+#: ../src/widgets/toolbox.cpp:1688
msgid "Bounding box edges"
msgstr "RobeĆŸrāmju malas"
-#: ../src/widgets/toolbox.cpp:1692
+#: ../src/widgets/toolbox.cpp:1688
msgid "Snap to edges of a bounding box"
msgstr "Pievilkt robeĆŸrāmju malām"
-#: ../src/widgets/toolbox.cpp:1701
+#: ../src/widgets/toolbox.cpp:1697
msgid "Bounding box corners"
msgstr "RobeĆŸrāmju stĆ«ri"
-#: ../src/widgets/toolbox.cpp:1701
+#: ../src/widgets/toolbox.cpp:1697
msgid "Snap bounding box corners"
msgstr "Pievilkt robeĆŸrāmju stĆ«riem"
-#: ../src/widgets/toolbox.cpp:1710
+#: ../src/widgets/toolbox.cpp:1706
msgid "BBox Edge Midpoints"
msgstr "RobeĆŸrāmju malu viduspunktiem"
-#: ../src/widgets/toolbox.cpp:1710
+#: ../src/widgets/toolbox.cpp:1706
msgid "Snap midpoints of bounding box edges"
msgstr "Pievilkt robeĆŸrāmju malu viduspunktiem"
-#: ../src/widgets/toolbox.cpp:1720
+#: ../src/widgets/toolbox.cpp:1716
msgid "BBox Centers"
msgstr "RobeĆŸrāmju centriem"
-#: ../src/widgets/toolbox.cpp:1720
+#: ../src/widgets/toolbox.cpp:1716
msgid "Snapping centers of bounding boxes"
msgstr "Pievilkt robeĆŸrāmju centriem"
-#: ../src/widgets/toolbox.cpp:1729
+#: ../src/widgets/toolbox.cpp:1725
msgid "Snap nodes, paths, and handles"
msgstr "Pievilkt mezglus, ceÄŒus un turus"
-#: ../src/widgets/toolbox.cpp:1737
+#: ../src/widgets/toolbox.cpp:1733
msgid "Snap to paths"
msgstr "Pievilkt ceÄŒiem"
-#: ../src/widgets/toolbox.cpp:1746
+#: ../src/widgets/toolbox.cpp:1742
msgid "Path intersections"
msgstr "CeÄŒu krustpunkti"
-#: ../src/widgets/toolbox.cpp:1746
+#: ../src/widgets/toolbox.cpp:1742
msgid "Snap to path intersections"
msgstr "Pievilkt ceÄŒu krustpunktiem"
-#: ../src/widgets/toolbox.cpp:1755
+#: ../src/widgets/toolbox.cpp:1751
msgid "To nodes"
msgstr "Pie mezgliem"
-#: ../src/widgets/toolbox.cpp:1755
+#: ../src/widgets/toolbox.cpp:1751
msgid "Snap cusp nodes, incl. rectangle corners"
msgstr "Pievilkt asos mezglus, ieskaitot taisnstƫru stƫrus"
-#: ../src/widgets/toolbox.cpp:1764
+#: ../src/widgets/toolbox.cpp:1760
msgid "Smooth nodes"
msgstr "Gludi mezgli"
-#: ../src/widgets/toolbox.cpp:1764
+#: ../src/widgets/toolbox.cpp:1760
msgid "Snap smooth nodes, incl. quadrant points of ellipses"
msgstr "Pievilkt gludos mezglus, ieskaitot elipĆĄu kvadrantu punktus"
-#: ../src/widgets/toolbox.cpp:1773
+#: ../src/widgets/toolbox.cpp:1769
msgid "Line Midpoints"
msgstr "Līnijas viduspunkti"
-#: ../src/widgets/toolbox.cpp:1773
+#: ../src/widgets/toolbox.cpp:1769
msgid "Snap midpoints of line segments"
msgstr "Pievilkt līnijas posmu viduspunktus"
-#: ../src/widgets/toolbox.cpp:1782
+#: ../src/widgets/toolbox.cpp:1778
msgid "Others"
msgstr "Citi"
-#: ../src/widgets/toolbox.cpp:1782
+#: ../src/widgets/toolbox.cpp:1778
msgid "Snap other points (centers, guide origins, gradient handles, etc.)"
msgstr "Pievilkt citus punktus (centrus, vadlīniju sākumus, krāsu pāreju turus utt.)"
-#: ../src/widgets/toolbox.cpp:1790
+#: ../src/widgets/toolbox.cpp:1786
msgid "Object Centers"
msgstr "Objekta centri"
-#: ../src/widgets/toolbox.cpp:1790
+#: ../src/widgets/toolbox.cpp:1786
msgid "Snap centers of objects"
msgstr "Pievilkt objektu centrus"
-#: ../src/widgets/toolbox.cpp:1799
+#: ../src/widgets/toolbox.cpp:1795
msgid "Rotation Centers"
msgstr "Grieƥanās centrs"
-#: ../src/widgets/toolbox.cpp:1799
+#: ../src/widgets/toolbox.cpp:1795
msgid "Snap an item's rotation center"
msgstr "Pievilkt objekta grieƥanās centram"
-#: ../src/widgets/toolbox.cpp:1808
+#: ../src/widgets/toolbox.cpp:1804
msgid "Text baseline"
msgstr "Teksta bāzes līnija"
-#: ../src/widgets/toolbox.cpp:1808
+#: ../src/widgets/toolbox.cpp:1804
msgid "Snap text anchors and baselines"
msgstr "Pievilkt teksta enkurus un bāzes līnijas"
-#: ../src/widgets/toolbox.cpp:1818
+#: ../src/widgets/toolbox.cpp:1814
msgid "Page border"
msgstr "Lapas robeĆŸa"
-#: ../src/widgets/toolbox.cpp:1818
+#: ../src/widgets/toolbox.cpp:1814
msgid "Snap to the page border"
msgstr "Pievilkt lapas robeĆŸÄm"
-#: ../src/widgets/toolbox.cpp:1827
+#: ../src/widgets/toolbox.cpp:1823
msgid "Snap to grids"
msgstr "Pievilkt reĆŸÄŁim"
-#: ../src/widgets/toolbox.cpp:1836
+#: ../src/widgets/toolbox.cpp:1832
msgid "Snap guides"
msgstr "Piesaistes palīglīnijas"
@@ -27322,9 +27315,8 @@ msgid "x-interval cannot be zero. Please modify 'Start X value' or 'End X value'
msgstr "x-intervāls nevar bĆ«t nulle. LĆ«dzu, mainiet 'Sākuma X' vai 'Beigu X' vērtÄ«bas"
#: ../share/extensions/funcplot.py:60
-#, fuzzy
msgid "y-interval cannot be zero. Please modify 'Y value of rectangle's top' or 'Y value of rectangle's bottom'"
-msgstr "y-intervāls nevar bƫt nulle. Lƫdzu, mainiet ..."
+msgstr "y-intervāls nevar bĆ«t nulle. LĆ«dzu, mainiet 'TaisnstĆ«ra augĆĄmalas Y vērtÄ«ba' vai 'TaisnstĆ«ra apakĆĄmalas Y vērtÄ«ba'"
#: ../share/extensions/funcplot.py:315
msgid "Please select a rectangle"
@@ -27853,15 +27845,15 @@ msgstr ""
"Mēģiniet izmantot darbÄ«bu CeÄŒĆĄ->Objektu par ceÄŒu."
#. issue error if no paths found
-#: ../share/extensions/plotter.py:67
+#: ../share/extensions/plotter.py:70
msgid "No paths where found. Please convert all objects you want to plot into paths."
msgstr "Nav atrasts neviens ceÄŒĆĄ. LĆ«dzu pārveidojiet visus objektus, kurus vēlaties plotēt, par ceÄŒiem."
-#: ../share/extensions/plotter.py:144
+#: ../share/extensions/plotter.py:148
msgid "pySerial is not installed."
msgstr "pySerial nav uzstādīts."
-#: ../share/extensions/plotter.py:164
+#: ../share/extensions/plotter.py:200
msgid "Could not open port. Please check that your plotter is running, connected and the settings are correct."
msgstr "Nav iespējams atvērt portu. LĆ«dzu, pārliecinieties, vai ploteris ir ieslēgts, pievienots un iestatÄ«jumi ir korekti."
@@ -29975,7 +29967,7 @@ msgstr "Regulāras palīglīnijas"
#: ../share/extensions/guides_creator.inx.h:3
#, fuzzy
msgid "Guides preset:"
-msgstr "Palīglīniju iestatījumi"
+msgstr "Palīglīniju priekƥiestatījumi:"
#: ../share/extensions/guides_creator.inx.h:6
msgid "Start from edges"
@@ -30245,19 +30237,19 @@ msgstr "HPGL ievade"
msgid "Please note that you can only open HPGL files written by Inkscape, to open other HPGL files please change their file extension to .plt, make sure you have UniConverter installed and open them again."
msgstr "LĆ«dzu, Ɔemiet vērā, ka ir iespējams atvērt tikai ar Inkscape izveidotās HPGL datness. Lai atvērtu citas HPGL formāta datnes, pārdēvējiet tās par .plt, pārliecinieties, ka ir uzstādÄ«ts UniConverter un tad mēģiniet atvērt vēlreiz."
-#: ../share/extensions/hpgl_input.inx.h:3 ../share/extensions/hpgl_output.inx.h:4 ../share/extensions/plotter.inx.h:25
+#: ../share/extensions/hpgl_input.inx.h:3 ../share/extensions/hpgl_output.inx.h:4 ../share/extensions/plotter.inx.h:34
msgid "Resolution X (dpi):"
msgstr "IzĆĄÄ·irtspēja X (dpi):"
-#: ../share/extensions/hpgl_input.inx.h:4 ../share/extensions/hpgl_output.inx.h:5 ../share/extensions/plotter.inx.h:26
+#: ../share/extensions/hpgl_input.inx.h:4 ../share/extensions/hpgl_output.inx.h:5 ../share/extensions/plotter.inx.h:35
msgid "The amount of steps the plotter moves if it moves for 1 inch on the X axis (Default: 1016.0)"
msgstr "SoÄŒu skaits vienā collā ploterim pārvietojoties gar X asi (Noklusētais: 1016.0)"
-#: ../share/extensions/hpgl_input.inx.h:5 ../share/extensions/hpgl_output.inx.h:6 ../share/extensions/plotter.inx.h:27
+#: ../share/extensions/hpgl_input.inx.h:5 ../share/extensions/hpgl_output.inx.h:6 ../share/extensions/plotter.inx.h:36
msgid "Resolution Y (dpi):"
msgstr "IzĆĄÄ·irtspēja Y (dpi):"
-#: ../share/extensions/hpgl_input.inx.h:6 ../share/extensions/hpgl_output.inx.h:7 ../share/extensions/plotter.inx.h:28
+#: ../share/extensions/hpgl_input.inx.h:6 ../share/extensions/hpgl_output.inx.h:7 ../share/extensions/plotter.inx.h:37
msgid "The amount of steps the plotter moves if it moves for 1 inch on the Y axis (Default: 1016.0)"
msgstr "SoÄŒu skaits vienā collā ploterim pārvietojoties gar Y asi (Noklusētais: 1016.0)"
@@ -30269,7 +30261,7 @@ msgstr "Rādīt pārvietojumus starp ceČiem"
msgid "Check this to show movements between paths (Default: Unchecked)"
msgstr "AtzÄ«mējit ĆĄo, lai rādÄ«tu pārvietojumus starp ceÄŒiem. (Noklusētais: neatzÄ«mēts)"
-#: ../share/extensions/hpgl_input.inx.h:9 ../share/extensions/hpgl_output.inx.h:34
+#: ../share/extensions/hpgl_input.inx.h:9 ../share/extensions/hpgl_output.inx.h:35
msgid "HP Graphics Language file (*.hpgl)"
msgstr "HP Graphics Language datne (*.hpgl)"
@@ -30285,27 +30277,27 @@ msgstr "HPGL Izvade"
msgid "Please make sure that all objects you want to save are converted to paths. Please use the plotter extension (Extensions menu) to plot directly over a serial connection."
msgstr "LĆ«dzu, pārliecinieties, ka visi saglabājamie objekti ir pārvērsti par ceÄŒiem. LĆ«dzu, izmantojiet plotera paplaĆĄinājumu (PaplaĆĄinājumu izvēlnē), lai plotētu tieĆĄi ploteri izmantojot seriālo savienojumu."
-#: ../share/extensions/hpgl_output.inx.h:3 ../share/extensions/plotter.inx.h:24
+#: ../share/extensions/hpgl_output.inx.h:3 ../share/extensions/plotter.inx.h:33
msgid "Plotter Settings "
msgstr "Plotera iestatījumi"
-#: ../share/extensions/hpgl_output.inx.h:8 ../share/extensions/plotter.inx.h:29
+#: ../share/extensions/hpgl_output.inx.h:8 ../share/extensions/plotter.inx.h:38
msgid "Pen number:"
msgstr "Spalvas numurs:"
-#: ../share/extensions/hpgl_output.inx.h:9 ../share/extensions/plotter.inx.h:30
+#: ../share/extensions/hpgl_output.inx.h:9 ../share/extensions/plotter.inx.h:39
msgid "The number of the pen (tool) to use (Standard: '1')"
msgstr "Izmantojamās spalvas (rīka) numurs. (Noklusētais: '1')"
-#: ../share/extensions/hpgl_output.inx.h:10 ../share/extensions/plotter.inx.h:31
+#: ../share/extensions/hpgl_output.inx.h:10 ../share/extensions/plotter.inx.h:40
msgid "Pen force (g):"
msgstr "Spalvas spiediena spēks (g):"
-#: ../share/extensions/hpgl_output.inx.h:11 ../share/extensions/plotter.inx.h:32
+#: ../share/extensions/hpgl_output.inx.h:11 ../share/extensions/plotter.inx.h:41
msgid "The amount of force pushing down the pen in grams, set to 0 to omit command; most plotters ignore this command (Default: 0)"
msgstr "Spēks, ar kādu tiks piespiesta spalva, gramos. Ievadiet 0, lai to apietu. Lielākā ploteru daÄŒa ĆĄo komandu neƆem vērā. (Noklusētais: 0)"
-#: ../share/extensions/hpgl_output.inx.h:12 ../share/extensions/plotter.inx.h:33
+#: ../share/extensions/hpgl_output.inx.h:12 ../share/extensions/plotter.inx.h:42
msgid "Pen speed (cm/s or mm/s):"
msgstr "Spalvas ātrums (cm/s vai mm/s):"
@@ -30317,83 +30309,89 @@ msgstr "Spalvas pārvietoơanās ātrums centimetros vai milimetros sekundē (at
msgid "Rotation (°, Clockwise):"
msgstr "PagrieĆĄana (°) pulksteƆrādÄ«tāja virzienā:"
-#: ../share/extensions/hpgl_output.inx.h:15 ../share/extensions/plotter.inx.h:36
+#: ../share/extensions/hpgl_output.inx.h:15 ../share/extensions/plotter.inx.h:45
msgid "Rotation of the drawing (Default: 0°)"
msgstr "ZÄ«mējuma pagrieĆĄana. (Noklusētais: 0°)"
-#: ../share/extensions/hpgl_output.inx.h:16 ../share/extensions/plotter.inx.h:37
+#: ../share/extensions/hpgl_output.inx.h:16 ../share/extensions/plotter.inx.h:46
msgid "Mirror X axis"
msgstr "AtspoguÄŒot X asi"
-#: ../share/extensions/hpgl_output.inx.h:17 ../share/extensions/plotter.inx.h:38
+#: ../share/extensions/hpgl_output.inx.h:17 ../share/extensions/plotter.inx.h:47
msgid "Check this to mirror the X axis (Default: Unchecked)"
msgstr "AtzÄ«mējiet ĆĄo, lai atspoguÄŒotu X asi. (Noklusētais - neatzÄ«mēts)"
-#: ../share/extensions/hpgl_output.inx.h:18 ../share/extensions/plotter.inx.h:39
+#: ../share/extensions/hpgl_output.inx.h:18 ../share/extensions/plotter.inx.h:48
msgid "Mirror Y axis"
msgstr "AtspoguÄŒot Y asi"
-#: ../share/extensions/hpgl_output.inx.h:19 ../share/extensions/plotter.inx.h:40
+#: ../share/extensions/hpgl_output.inx.h:19 ../share/extensions/plotter.inx.h:49
msgid "Check this to mirror the Y axis (Default: Unchecked)"
msgstr "AtzÄ«mējiet ĆĄo, lai atspoguÄŒotu Y asi. (Noklusētais - neatzÄ«mēts)"
-#: ../share/extensions/hpgl_output.inx.h:20 ../share/extensions/plotter.inx.h:41
+#: ../share/extensions/hpgl_output.inx.h:20 ../share/extensions/plotter.inx.h:50
msgid "Center zero point"
msgstr "Centrēt nulles punktu"
-#: ../share/extensions/hpgl_output.inx.h:21 ../share/extensions/plotter.inx.h:42
+#: ../share/extensions/hpgl_output.inx.h:21 ../share/extensions/plotter.inx.h:51
msgid "Check this if your plotter uses a centered zero point (Default: Unchecked)"
msgstr "AtzÄ«mējiet ĆĄo, ja JĆ«su ploteris izmantot centrēto nulles punktu. (Noklusētais: neatzÄ«mēts)"
-#: ../share/extensions/hpgl_output.inx.h:22 ../share/extensions/plotter.inx.h:43
+#: ../share/extensions/hpgl_output.inx.h:22 ../share/extensions/plotter.inx.h:52
+msgid "If you want to use multiple pens on your pen plotter create one layer for each pen, name the layers \"Pen 1\", \"Pen 2\", etc., and put your drawings in the corresponding layers. This overrules the pen number option above."
+msgstr ""
+"Ja vēlaties izmantot vairākas plotera spalvas, izveidojiet atseviĆĄÄ·u slāni katrai spalvai, nosaucot tos \"Pen 1\", \"Pen 2\", utt., un novietojies savus zÄ«mējumus atbilstoĆĄajos slāƆos. Tas apies augstāk norādÄ«to spalvas numura "
+"papildiespēju."
+
+#: ../share/extensions/hpgl_output.inx.h:23 ../share/extensions/plotter.inx.h:53
msgid "Plot Features "
msgstr "Plotēơanas Ä«patnÄ«bas"
-#: ../share/extensions/hpgl_output.inx.h:23 ../share/extensions/plotter.inx.h:44
+#: ../share/extensions/hpgl_output.inx.h:24 ../share/extensions/plotter.inx.h:54
msgid "Overcut (mm):"
msgstr "Pārgriezums (mm):"
-#: ../share/extensions/hpgl_output.inx.h:24 ../share/extensions/plotter.inx.h:45
+#: ../share/extensions/hpgl_output.inx.h:25 ../share/extensions/plotter.inx.h:55
msgid "The distance in mm that will be cut over the starting point of the path to prevent open paths, set to 0.0 to omit command (Default: 1.00)"
msgstr "Attālums mm, kas tiks griezts pāri ceÄŒa sākumpunktam, lai nepieÄŒautu nenoslēgtus ceÄŒus; ievadiet 0.0, lai izlaistu ĆĄo komandu. (noklusētais: 1.00)"
-#: ../share/extensions/hpgl_output.inx.h:25 ../share/extensions/plotter.inx.h:46
+#: ../share/extensions/hpgl_output.inx.h:26 ../share/extensions/plotter.inx.h:56
msgid "Tool offset (mm):"
msgstr "Rīka nobīde (mm):"
-#: ../share/extensions/hpgl_output.inx.h:26 ../share/extensions/plotter.inx.h:47
+#: ../share/extensions/hpgl_output.inx.h:27 ../share/extensions/plotter.inx.h:57
msgid "The offset from the tool tip to the tool axis in mm, set to 0.0 to omit command (Default: 0.25)"
msgstr "RÄ«ka gala nobÄ«de pret rÄ«ka asi mm; ievadiet 0.0, lai izlaistu ĆĄo komandu. (Noklusētais: 0.25)"
-#: ../share/extensions/hpgl_output.inx.h:27 ../share/extensions/plotter.inx.h:48
+#: ../share/extensions/hpgl_output.inx.h:28 ../share/extensions/plotter.inx.h:58
msgid "Use precut"
msgstr "Izmantot priekĆĄgriezumu"
-#: ../share/extensions/hpgl_output.inx.h:28 ../share/extensions/plotter.inx.h:49
+#: ../share/extensions/hpgl_output.inx.h:29 ../share/extensions/plotter.inx.h:59
msgid "Check this to cut a small line before the real drawing starts to correctly align the tool orientation. (Default: Checked)"
msgstr "AtzÄ«mējiet ĆĄo, lai iegrieztu tievu lÄ«niju rÄ«ka orientācijai pirms Ä«stā plotējuma. (Noklusētais - atzÄ«mēts)"
-#: ../share/extensions/hpgl_output.inx.h:29 ../share/extensions/plotter.inx.h:50
+#: ../share/extensions/hpgl_output.inx.h:30 ../share/extensions/plotter.inx.h:60
msgid "Curve flatness:"
msgstr "Līknes plakanums:"
-#: ../share/extensions/hpgl_output.inx.h:30 ../share/extensions/plotter.inx.h:51
+#: ../share/extensions/hpgl_output.inx.h:31 ../share/extensions/plotter.inx.h:61
msgid "Curves are divided into lines, this number controls how fine the curves will be reproduced, the smaller the finer (Default: '1.2')"
msgstr "LÄ«knes tiek sadalÄ«tas lÄ«nijās, ĆĄis skaitlis nosaka, cik precÄ«zi lÄ«knes tiks reproducētas; jo mazāks skaitlis, jo precÄ«zāk. (Noklusētais: '1.2')"
-#: ../share/extensions/hpgl_output.inx.h:31 ../share/extensions/plotter.inx.h:52
+#: ../share/extensions/hpgl_output.inx.h:32 ../share/extensions/plotter.inx.h:62
msgid "Auto align"
msgstr "Automātiski līdzināt"
-#: ../share/extensions/hpgl_output.inx.h:32 ../share/extensions/plotter.inx.h:53
+#: ../share/extensions/hpgl_output.inx.h:33 ../share/extensions/plotter.inx.h:63
msgid "Check this to auto align the drawing to the zero point (Plus the tool offset if used). If unchecked you have to make sure that all parts of your drawing are within the document border! (Default: Checked)"
msgstr "AtzÄ«mējiet ĆĄo, lai automātiski pieskaƆotu zÄ«mējumu nulles punktam (plus rÄ«ka nobÄ«de, ja tiek izmantota). Ja nav atzÄ«mēts, Jums ir jāpārliecinās, ka visas zÄ«mējuma daÄŒas atrodas dokumenta robeĆŸÄs (noklusētais - atzÄ«mēts)"
-#: ../share/extensions/hpgl_output.inx.h:33 ../share/extensions/plotter.inx.h:56
+#: ../share/extensions/hpgl_output.inx.h:34 ../share/extensions/plotter.inx.h:66
msgid "All these settings depend on the plotter you use, for more information please consult the manual or homepage for your plotter."
msgstr "Visi ĆĄie iestatÄ«jumi ir atkarÄ«gi no izmantojamā plotera. Plaƥākai informācijai izmantojiet plotera pamācÄ«bu vai raĆŸotāja mājas lapu."
-#: ../share/extensions/hpgl_output.inx.h:35
+#: ../share/extensions/hpgl_output.inx.h:36
msgid "Export an HP Graphics Language file"
msgstr "Eksportēt HP Graphics Language datni"
@@ -31607,83 +31605,114 @@ msgid "The Baud rate of your serial connection (Default: 9600)"
msgstr "Jƫsu seriālā savienojuma ātrums bodos (standarts: '9600')"
#: ../share/extensions/plotter.inx.h:8
-msgid "Flow control:"
+#, fuzzy
+msgid "Serial byte size:"
+msgstr "Paletes izmērs:"
+
+#: ../share/extensions/plotter.inx.h:10
+#, no-c-format
+msgid "The Byte size of your serial connection, 99% of all plotters use the default setting (Default: 8 Bits)"
+msgstr ""
+
+#: ../share/extensions/plotter.inx.h:11
+#, fuzzy
+msgid "Serial stop bits:"
+msgstr "Seriālais ports:"
+
+#: ../share/extensions/plotter.inx.h:13
+#, no-c-format
+msgid "The Stop bits of your serial connection, 99% of all plotters use the default setting (Default: 1 Bit)"
+msgstr ""
+
+#: ../share/extensions/plotter.inx.h:14
+#, fuzzy
+msgid "Serial parity:"
+msgstr "Seriālais ports:"
+
+#: ../share/extensions/plotter.inx.h:16
+#, no-c-format
+msgid "The Parity of your serial connection, 99% of all plotters use the default setting (Default: None)"
+msgstr ""
+
+#: ../share/extensions/plotter.inx.h:17
+#, fuzzy
+msgid "Serial flow control:"
msgstr "Plƫsmas kontrole:"
-#: ../share/extensions/plotter.inx.h:9
+#: ../share/extensions/plotter.inx.h:18
msgid "The Software / Hardware flow control of your serial connection (Default: Software)"
msgstr "Seriālā savienojuma programmātiskā/aparātiskā plĆ«smas vadÄ«ba. (Noklusētā - programmātiskā)"
-#: ../share/extensions/plotter.inx.h:10
+#: ../share/extensions/plotter.inx.h:19
msgid "Command language:"
msgstr "Komandu valoda:"
-#: ../share/extensions/plotter.inx.h:11
+#: ../share/extensions/plotter.inx.h:20
msgid "The command language to use (Default: HPGL)"
msgstr "Izmantojamā komandu valoda. (Noklusētā: HPGL)"
-#: ../share/extensions/plotter.inx.h:12
+#: ../share/extensions/plotter.inx.h:21
msgid "Initialization commands:"
msgstr "Inicializēơanas komandas:"
-#: ../share/extensions/plotter.inx.h:13
+#: ../share/extensions/plotter.inx.h:22
msgid "Commands that will be sent to the plotter before the main data stream, only use this if you know what you are doing! (Default: Empty)"
msgstr "Komandas, kas tiks nosĆ«tÄ«tas ploterim pirms galvenās datu plĆ«smas, izmantojiet to tikai gadÄ«jumā, ja saprotat, ko darāt (Noklusētais: tukĆĄs)"
-#: ../share/extensions/plotter.inx.h:14
+#: ../share/extensions/plotter.inx.h:23
msgid "Software (XON/XOFF)"
msgstr "Programmātiski (XON/XOFF)"
-#: ../share/extensions/plotter.inx.h:15
+#: ../share/extensions/plotter.inx.h:24
msgid "Hardware (RTS/CTS)"
msgstr "Aparatƫras (RTS/CTS)"
-#: ../share/extensions/plotter.inx.h:16
+#: ../share/extensions/plotter.inx.h:25
msgid "Hardware (DSR/DTR + RTS/CTS)"
msgstr "Aparatƫras (DSR/DTR + RTS/CTS)"
-#: ../share/extensions/plotter.inx.h:17
+#: ../share/extensions/plotter.inx.h:26
msgctxt "Flow control"
msgid "None"
msgstr "Neviena"
-#: ../share/extensions/plotter.inx.h:18
+#: ../share/extensions/plotter.inx.h:27
msgid "HPGL"
msgstr "HPGL"
-#: ../share/extensions/plotter.inx.h:19
+#: ../share/extensions/plotter.inx.h:28
msgid "DMPL"
msgstr "DMPL"
-#: ../share/extensions/plotter.inx.h:20
+#: ../share/extensions/plotter.inx.h:29
msgid "KNK Plotter (HPGL variant)"
msgstr "KNK ploteris (HPGL variants)"
-#: ../share/extensions/plotter.inx.h:21
+#: ../share/extensions/plotter.inx.h:30
msgid "Using wrong settings can under certain circumstances cause Inkscape to freeze. Always save your work before plotting!"
msgstr "Nepareizu iestatÄ«jumu izmantoĆĄana atseviĆĄÄ·os gadÄ«jumos var izsaukt Inkscape apstāƥanos. Vienmēr saglabājiet savu darbu pirms plotēơanas uzsākĆĄanas."
-#: ../share/extensions/plotter.inx.h:22
+#: ../share/extensions/plotter.inx.h:31
msgid "This can be a physical serial connection or a USB-to-Serial bridge. Ask your plotter manufacturer for drivers if needed."
msgstr "Tās var bĆ«t fizisks seriālais savienojums vai USB-To-Serial konvertors. NepiecieĆĄamÄ«bas gadÄ«jumā meklējiet nepiecieĆĄamos dziƆus plotera raĆŸotāja mājas lapā."
-#: ../share/extensions/plotter.inx.h:23
+#: ../share/extensions/plotter.inx.h:32
msgid "Parallel (LPT) connections are not supported."
msgstr "LĆ«dzu, Ɔemiet vērā, ka paralēlais ports (LPT) nav atbalstÄ«ts."
-#: ../share/extensions/plotter.inx.h:34
+#: ../share/extensions/plotter.inx.h:43
msgid "The speed the pen will move with in centimeters or millimeters per second (depending on your plotter model), set to 0 to omit command. Most plotters ignore this command. (Default: 0)"
msgstr "Spalvas pārvietoĆĄanās ātrums centimetros vai milimetros sekundē (atkarÄ«gs no plotera modeÄŒa). Norādiet 0, lai apietu komandu. Vairums ploteru ĆĄo komandu neƆem vērā. (Noklusētais - 0)"
-#: ../share/extensions/plotter.inx.h:35
+#: ../share/extensions/plotter.inx.h:44
msgid "Rotation (°, clockwise):"
msgstr "PagrieĆĄana (°, pulksteƆrādÄ«tāja virzienā):"
-#: ../share/extensions/plotter.inx.h:54
+#: ../share/extensions/plotter.inx.h:64
msgid "Show debug information"
msgstr "RādÄ«t atkÄŒĆ«doĆĄanas informāciju"
-#: ../share/extensions/plotter.inx.h:55
+#: ../share/extensions/plotter.inx.h:65
msgid "Check this to get verbose information about the plot without actually sending something to the plotter (A.k.a. data dump) (Default: Unchecked)"
msgstr "AtzÄ«mējiet ĆĄo, lai saƆemtu plaĆĄu informāciju par plotējamo darbu, nenosĆ«tot neko uz ploteri (t.s. datu izvade). (Noklusētais: neatzÄ«mēts)"
@@ -33285,6 +33314,40 @@ msgid "XAML Input"
msgstr "XAML ievade"
#, fuzzy
+#~ msgid "Leaned"
+#~ msgstr "Leaned"
+
+#, fuzzy
+#~ msgid "Start path lean"
+#~ msgstr "Nosaka ceČa sākuma formu"
+
+#, fuzzy
+#~ msgid "End path lean"
+#~ msgstr "ceČam jābeidzas ar ':/'"
+
+#~ msgid "<b>Roughen unit</b>"
+#~ msgstr "<b>Raupjoƥanas vienība</b>"
+
+#, fuzzy
+#~ msgid "Helper nodes"
+#~ msgstr "Subversion palīgprogramma"
+
+#, fuzzy
+#~ msgid "Show helper nodes"
+#~ msgstr "Rādīt pārveidoƥanas turus atseviƥķiem mezgliem"
+
+#, fuzzy
+#~ msgid "Helper handles"
+#~ msgstr "Subversion palīgprogramma"
+
+#, fuzzy
+#~ msgid "Show helper handles"
+#~ msgstr "Rādīt turus"
+
+#~ msgid "%1 (%2):"
+#~ msgstr "%1 (%2):"
+
+#, fuzzy
#~ msgid "Show helper paths"
#~ msgstr "Rādīt pārvietojumus starp ceČiem"
@@ -33315,9 +33378,6 @@ msgstr "XAML ievade"
#~ msgid "Control handle 8x9 - Ctrl+Alt+Click to reset"
#~ msgstr "Vadības turis 8x9 - Ctrl+Alt+Click, lai atiestatītu"
-#~ msgid "Control handle 10x11 - Ctrl+Alt+Click to reset"
-#~ msgstr "Vadības turis 10x11 - Ctrl+Alt+Click, lai atiestatītu"
-
#~ msgid "Control handle 12 - Ctrl+Alt+Click to reset"
#~ msgstr "Vadības turis 12 - Ctrl+Alt+Click, lai atiestatītu"
@@ -33342,27 +33402,6 @@ msgstr "XAML ievade"
#~ msgid "Control handle 19 - Ctrl+Alt+Click to reset"
#~ msgstr "Vadības turis 19 - Ctrl+Alt+Click, lai atiestatītu"
-#~ msgid "Control handle 20x21 - Ctrl+Alt+Click to reset"
-#~ msgstr "Vadības turis 20x21 - Ctrl+Alt+Click, lai atiestatītu"
-
-#~ msgid "Control handle 22x23 - Ctrl+Alt+Click to reset"
-#~ msgstr "Vadības turis 22x23 - Ctrl+Alt+Click, lai atiestatītu"
-
-#~ msgid "Control handle 24x26 - Ctrl+Alt+Click to reset"
-#~ msgstr "Vadības turis 24x26 - Ctrl+Alt+Click, lai atiestatītu"
-
-#~ msgid "Control handle 25x27 - Ctrl+Alt+Click to reset"
-#~ msgstr "Vadības turis 25x27 - Ctrl+Alt+Click, lai atiestatītu"
-
-#~ msgid "Control handle 28x30 - Ctrl+Alt+Click to reset"
-#~ msgstr "Vadības turis 28x30 - Ctrl+Alt+Click, lai atiestatītu"
-
-#~ msgid "Control handle 29x31 - Ctrl+Alt+Click to reset"
-#~ msgstr "Vadības turis 29x31 - Ctrl+Alt+Click, lai atiestatītu"
-
-#~ msgid "Control handle 32x33x34x35 - Ctrl+Alt+Click to reset"
-#~ msgstr "Vadības turis 32x33x34x35 - Ctrl+Alt+Click, lai atiestatītu"
-
#~ msgid "Top Left - Ctrl+Alt+Click to reset"
#~ msgstr "Augơējais kreisais - Ctrl+Alt+Click, lai atiestatÄ«tu"
@@ -33417,10 +33456,6 @@ msgstr "XAML ievade"
#~ msgid "_Templates..."
#~ msgstr "Saga_taves..."
-#, fuzzy
-#~ msgid "Miter limit"
-#~ msgstr "Ć Ä·autƆu asums:"
-
#~ msgid "Default _units:"
#~ msgstr "Nokl_usētās vienības:"
@@ -34431,15 +34466,9 @@ msgstr "XAML ievade"
#~ msgid "Print unit after path length"
#~ msgstr "RādÄ«t vienÄ«bas pēc ceÄŒa garuma"
-#~ msgid "Scale x"
-#~ msgstr "Mērogs x"
-
#~ msgid "Scale factor in x direction"
#~ msgstr "Mērogoơanas koeficients gar x asi"
-#~ msgid "Scale y"
-#~ msgstr "Mērogs y"
-
#~ msgid "Scale factor in y direction"
#~ msgstr "Mērogoơanas koeficients gar y asi"
diff --git a/po/uk.po b/po/uk.po
index 4ee869eef..aa2e5e4d0 100644
--- a/po/uk.po
+++ b/po/uk.po
@@ -11,8 +11,8 @@ msgid ""
msgstr ""
"Project-Id-Version: uk\n"
"Report-Msgid-Bugs-To: inkscape-devel@lists.sourceforge.net\n"
-"POT-Creation-Date: 2015-03-08 13:33+0200\n"
-"PO-Revision-Date: 2015-03-08 15:38+0200\n"
+"POT-Creation-Date: 2015-05-09 20:40+0300\n"
+"PO-Revision-Date: 2015-05-09 21:04+0300\n"
"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
"Language-Team: Ukrainian <translation@linux.org.ua>\n"
"Language: uk\n"
@@ -1060,26 +1060,27 @@ msgstr "Đ§ĐŸŃ€ĐœĐ” сĐČŃ–Ń‚Đ»ĐŸ"
#: ../src/extension/internal/filter/bumps.h:101
#: ../src/extension/internal/filter/bumps.h:321
#: ../src/extension/internal/filter/bumps.h:328
-#: ../src/extension/internal/filter/color.h:82
-#: ../src/extension/internal/filter/color.h:164
-#: ../src/extension/internal/filter/color.h:171
-#: ../src/extension/internal/filter/color.h:262
-#: ../src/extension/internal/filter/color.h:340
-#: ../src/extension/internal/filter/color.h:347
-#: ../src/extension/internal/filter/color.h:437
-#: ../src/extension/internal/filter/color.h:532
-#: ../src/extension/internal/filter/color.h:654
-#: ../src/extension/internal/filter/color.h:751
-#: ../src/extension/internal/filter/color.h:830
-#: ../src/extension/internal/filter/color.h:921
-#: ../src/extension/internal/filter/color.h:1049
-#: ../src/extension/internal/filter/color.h:1119
-#: ../src/extension/internal/filter/color.h:1212
-#: ../src/extension/internal/filter/color.h:1324
-#: ../src/extension/internal/filter/color.h:1429
-#: ../src/extension/internal/filter/color.h:1505
-#: ../src/extension/internal/filter/color.h:1609
-#: ../src/extension/internal/filter/color.h:1616
+#: ../src/extension/internal/filter/color.h:83
+#: ../src/extension/internal/filter/color.h:165
+#: ../src/extension/internal/filter/color.h:172
+#: ../src/extension/internal/filter/color.h:283
+#: ../src/extension/internal/filter/color.h:337
+#: ../src/extension/internal/filter/color.h:415
+#: ../src/extension/internal/filter/color.h:422
+#: ../src/extension/internal/filter/color.h:512
+#: ../src/extension/internal/filter/color.h:607
+#: ../src/extension/internal/filter/color.h:729
+#: ../src/extension/internal/filter/color.h:826
+#: ../src/extension/internal/filter/color.h:905
+#: ../src/extension/internal/filter/color.h:996
+#: ../src/extension/internal/filter/color.h:1124
+#: ../src/extension/internal/filter/color.h:1194
+#: ../src/extension/internal/filter/color.h:1287
+#: ../src/extension/internal/filter/color.h:1399
+#: ../src/extension/internal/filter/color.h:1504
+#: ../src/extension/internal/filter/color.h:1580
+#: ../src/extension/internal/filter/color.h:1684
+#: ../src/extension/internal/filter/color.h:1691
#: ../src/extension/internal/filter/morphology.h:194
#: ../src/extension/internal/filter/overlays.h:73
#: ../src/extension/internal/filter/paint.h:99
@@ -4514,112 +4515,112 @@ msgstr "ĐĐ”ĐŒĐ°Ń” ĐżĐŸĐżĐ”Ń€Đ”ĐŽĐœŃŒĐŸĐłĐŸ ĐŒĐ°ŃŃˆŃ‚Đ°Đ±Ńƒ."
msgid "No next zoom."
msgstr "ĐĐ”ĐŒĐ°Ń” ĐœĐ°ŃŃ‚ŃƒĐżĐœĐŸĐłĐŸ ĐŒĐ°ŃŃˆŃ‚Đ°Đ±Ńƒ."
-#: ../src/display/canvas-axonomgrid.cpp:361 ../src/display/canvas-grid.cpp:701
+#: ../src/display/canvas-axonomgrid.cpp:357 ../src/display/canvas-grid.cpp:697
msgid "Grid _units:"
msgstr "О_ĐŽĐžĐœĐžŃ†Ń– сітĐșĐž:"
-#: ../src/display/canvas-axonomgrid.cpp:363 ../src/display/canvas-grid.cpp:703
+#: ../src/display/canvas-axonomgrid.cpp:359 ../src/display/canvas-grid.cpp:699
msgid "_Origin X:"
msgstr "_ĐŸĐŸŃ‡Đ°Ń‚ĐŸĐș за X:"
-#: ../src/display/canvas-axonomgrid.cpp:363 ../src/display/canvas-grid.cpp:703
+#: ../src/display/canvas-axonomgrid.cpp:359 ../src/display/canvas-grid.cpp:699
#: ../src/ui/dialog/inkscape-preferences.cpp:746
#: ../src/ui/dialog/inkscape-preferences.cpp:771
msgid "X coordinate of grid origin"
msgstr "ĐšĐŸĐŸŃ€ĐŽĐžĐœĐ°Ń‚Đ° X ĐżĐŸŃ‡Đ°Ń‚Đșу сітĐșĐž"
-#: ../src/display/canvas-axonomgrid.cpp:366 ../src/display/canvas-grid.cpp:706
+#: ../src/display/canvas-axonomgrid.cpp:362 ../src/display/canvas-grid.cpp:702
msgid "O_rigin Y:"
msgstr "П_ĐŸŃ‡Đ°Ń‚ĐŸĐș ĐżĐŸ Y:"
-#: ../src/display/canvas-axonomgrid.cpp:366 ../src/display/canvas-grid.cpp:706
+#: ../src/display/canvas-axonomgrid.cpp:362 ../src/display/canvas-grid.cpp:702
#: ../src/ui/dialog/inkscape-preferences.cpp:747
#: ../src/ui/dialog/inkscape-preferences.cpp:772
msgid "Y coordinate of grid origin"
msgstr "ĐšĐŸĐŸŃ€ĐŽĐžĐœĐ°Ń‚Đ° Y ĐżĐŸŃ‡Đ°Ń‚Đșу сітĐșĐž"
-#: ../src/display/canvas-axonomgrid.cpp:369 ../src/display/canvas-grid.cpp:712
+#: ../src/display/canvas-axonomgrid.cpp:365 ../src/display/canvas-grid.cpp:708
msgid "Spacing _Y:"
msgstr "Đ†ĐœŃ‚Đ”Ń€ĐČал за _Y:"
-#: ../src/display/canvas-axonomgrid.cpp:369
+#: ../src/display/canvas-axonomgrid.cpp:365
#: ../src/ui/dialog/inkscape-preferences.cpp:775
msgid "Base length of z-axis"
msgstr "Đ‘Đ°Đ·ĐŸĐČа ĐŽĐŸĐČĐ¶ĐžĐœĐ° ĐČісі z"
-#: ../src/display/canvas-axonomgrid.cpp:372
+#: ../src/display/canvas-axonomgrid.cpp:368
#: ../src/ui/dialog/inkscape-preferences.cpp:778
#: ../src/widgets/box3d-toolbar.cpp:302
msgid "Angle X:"
msgstr "Кут X:"
-#: ../src/display/canvas-axonomgrid.cpp:372
+#: ../src/display/canvas-axonomgrid.cpp:368
#: ../src/ui/dialog/inkscape-preferences.cpp:778
msgid "Angle of x-axis"
msgstr "Кут ĐČісі x"
-#: ../src/display/canvas-axonomgrid.cpp:374
+#: ../src/display/canvas-axonomgrid.cpp:370
#: ../src/ui/dialog/inkscape-preferences.cpp:779
#: ../src/widgets/box3d-toolbar.cpp:381
msgid "Angle Z:"
msgstr "Кут Z:"
-#: ../src/display/canvas-axonomgrid.cpp:374
+#: ../src/display/canvas-axonomgrid.cpp:370
#: ../src/ui/dialog/inkscape-preferences.cpp:779
msgid "Angle of z-axis"
msgstr "Кут ĐČісі z"
-#: ../src/display/canvas-axonomgrid.cpp:378 ../src/display/canvas-grid.cpp:717
+#: ../src/display/canvas-axonomgrid.cpp:374 ../src/display/canvas-grid.cpp:713
msgid "Minor grid line _color:"
msgstr "ĐšĐŸĐ»Ń–Ń€ _ĐŽŃ€ŃƒĐłĐŸŃ€ŃĐŽĐœĐŸŃ— Đ»Ń–ĐœŃ–Ń— сітĐșĐž:"
-#: ../src/display/canvas-axonomgrid.cpp:378 ../src/display/canvas-grid.cpp:717
+#: ../src/display/canvas-axonomgrid.cpp:374 ../src/display/canvas-grid.cpp:713
#: ../src/ui/dialog/inkscape-preferences.cpp:730
msgid "Minor grid line color"
msgstr "ĐšĐŸĐ»Ń–Ń€ ĐŽŃ€ŃƒĐłĐŸŃ€ŃĐŽĐœĐžŃ… Đ»Ń–ĐœŃ–Đč сітĐșĐž"
-#: ../src/display/canvas-axonomgrid.cpp:378 ../src/display/canvas-grid.cpp:717
+#: ../src/display/canvas-axonomgrid.cpp:374 ../src/display/canvas-grid.cpp:713
msgid "Color of the minor grid lines"
msgstr "ĐšĐŸĐ»Ń–Ń€ ĐŽŃ€ŃƒĐłĐŸŃ€ŃĐŽĐœĐžŃ… Đ»Ń–ĐœŃ–Đč сітĐșĐž"
-#: ../src/display/canvas-axonomgrid.cpp:383 ../src/display/canvas-grid.cpp:722
+#: ../src/display/canvas-axonomgrid.cpp:379 ../src/display/canvas-grid.cpp:718
msgid "Ma_jor grid line color:"
msgstr "ĐšĐŸĐ»Ń–Ń€ ĐŸ_ŃĐœĐŸĐČĐœĐŸŃ— Đ»Ń–ĐœŃ–Ń— сітĐșĐž:"
-#: ../src/display/canvas-axonomgrid.cpp:383 ../src/display/canvas-grid.cpp:722
+#: ../src/display/canvas-axonomgrid.cpp:379 ../src/display/canvas-grid.cpp:718
#: ../src/ui/dialog/inkscape-preferences.cpp:732
msgid "Major grid line color"
msgstr "ĐšĐŸĐ»Ń–Ń€ ĐŸŃĐœĐŸĐČĐœĐžŃ… Đ»Ń–ĐœŃ–Đč сітĐșĐž"
-#: ../src/display/canvas-axonomgrid.cpp:384 ../src/display/canvas-grid.cpp:723
+#: ../src/display/canvas-axonomgrid.cpp:380 ../src/display/canvas-grid.cpp:719
msgid "Color of the major (highlighted) grid lines"
msgstr "ĐšĐŸĐ»Ń–Ń€ ĐŸŃĐœĐŸĐČĐœĐžŃ… (піЮсĐČŃ–Ń‡Đ”ĐœĐžŃ…) Đ»Ń–ĐœŃ–Đč сітĐșĐž"
-#: ../src/display/canvas-axonomgrid.cpp:388 ../src/display/canvas-grid.cpp:727
+#: ../src/display/canvas-axonomgrid.cpp:384 ../src/display/canvas-grid.cpp:723
msgid "_Major grid line every:"
msgstr "ĐžŃĐœĐŸ_ĐČĐœĐ° Đ»Ń–ĐœŃ–Ń чДрДз ĐșĐŸĐ¶ĐœŃ–:"
-#: ../src/display/canvas-axonomgrid.cpp:388 ../src/display/canvas-grid.cpp:727
+#: ../src/display/canvas-axonomgrid.cpp:384 ../src/display/canvas-grid.cpp:723
msgid "lines"
msgstr "Đ»Ń–ĐœŃ–Đč"
-#: ../src/display/canvas-grid.cpp:64
+#: ../src/display/canvas-grid.cpp:60
msgid "Rectangular grid"
msgstr "ĐŸŃ€ŃĐŒĐŸĐșŃƒŃ‚ĐœĐ° сітĐșа"
-#: ../src/display/canvas-grid.cpp:65
+#: ../src/display/canvas-grid.cpp:61
msgid "Axonometric grid"
msgstr "АĐșŃĐŸĐœĐŸĐŒĐ”Ń‚Ń€ĐžŃ‡ĐœĐ° сітĐșа"
-#: ../src/display/canvas-grid.cpp:250
+#: ../src/display/canvas-grid.cpp:246
msgid "Create new grid"
msgstr "СтĐČĐŸŃ€ĐžŃ‚Đž ĐœĐŸĐČу сітĐșу"
-#: ../src/display/canvas-grid.cpp:316
+#: ../src/display/canvas-grid.cpp:312
msgid "_Enabled"
msgstr "_ĐŁĐČŃ–ĐŒĐșĐœĐ”ĐœĐŸ"
-#: ../src/display/canvas-grid.cpp:317
+#: ../src/display/canvas-grid.cpp:313
msgid ""
"Determines whether to snap to this grid or not. Can be 'on' for invisible "
"grids."
@@ -4627,11 +4628,11 @@ msgstr ""
"Đ’ĐžĐ·ĐœĐ°Ń‡Đ°Ń” чо Đ±ŃƒĐŽŃƒŃ‚ŃŒ ĐŸĐ±'єĐșто прОлОпатО ĐŽĐŸ цієї сітĐșĐž, чо ĐœŃ–. ĐœĐŸĐ¶Đ” Đ±ŃƒŃ‚Đž "
"уĐČŃ–ĐŒĐșĐœĐ”ĐœĐŸ ĐŽĐ»Ń ĐœĐ”ĐČĐžĐŽĐžĐŒĐŸŃ— сітĐșĐž."
-#: ../src/display/canvas-grid.cpp:321
+#: ../src/display/canvas-grid.cpp:317
msgid "Snap to visible _grid lines only"
msgstr "ĐŸŃ€ĐžĐ»ĐžĐżĐ°Ń‚Đž лОшД ĐŽĐŸ ĐČ_ĐžĐŽĐžĐŒĐžŃ… Đ»Ń–ĐœŃ–Đč сітĐșĐž"
-#: ../src/display/canvas-grid.cpp:322
+#: ../src/display/canvas-grid.cpp:318
msgid ""
"When zoomed out, not all grid lines will be displayed. Only the visible ones "
"will be snapped to"
@@ -4639,11 +4640,11 @@ msgstr ""
"ПіЮ час Đ·ĐŒĐ”ĐœŃˆĐ”ĐœĐœŃ ĐŒĐ°ŃŃˆŃ‚Đ°Đ±Ńƒ ĐżŃ€ĐŸĐłŃ€Đ°ĐŒĐ° Đ·ĐŒĐ”ĐœŃˆŃƒĐČĐ°Ń‚ĐžĐŒĐ” ĐșŃ–Đ»ŃŒĐșість ĐżĐŸĐșĐ°Đ·Đ°ĐœĐžŃ… Đ»Ń–ĐœŃ–Đč "
"сітĐșĐž. ĐŸŃ€ĐžĐ»ĐžĐżĐ°ĐœĐœŃ ĐČŃ–ĐŽĐ±ŃƒĐČĐ°Ń‚ĐžĐŒĐ”Ń‚ŃŒŃŃ лОшД ĐŽĐŸ ĐČĐžĐŽĐžĐŒĐžŃ… Đ»Ń–ĐœŃ–Đč."
-#: ../src/display/canvas-grid.cpp:326
+#: ../src/display/canvas-grid.cpp:322
msgid "_Visible"
msgstr "_Đ’ĐžĐŽĐžĐŒŃ–ŃŃ‚ŃŒ"
-#: ../src/display/canvas-grid.cpp:327
+#: ../src/display/canvas-grid.cpp:323
msgid ""
"Determines whether the grid is displayed or not. Objects are still snapped "
"to invisible grids."
@@ -4651,25 +4652,25 @@ msgstr ""
"Đ’ĐžĐ·ĐœĐ°Ń‡Đ°Ń” чо буЎД ĐżĐŸĐșĐ°Đ·Đ°ĐœĐŸ сітĐșу, чо ĐœŃ–. Об'єĐșто, яĐș і Ń€Đ°ĐœŃ–ŃˆĐ”, буЎД "
"проĐČ'ŃĐ·Đ°ĐœĐŸ ĐŽĐŸ ĐœĐ”ĐČĐžĐŽĐžĐŒĐŸŃ— сітĐșĐž."
-#: ../src/display/canvas-grid.cpp:709
+#: ../src/display/canvas-grid.cpp:705
msgid "Spacing _X:"
msgstr "Đ†ĐœŃ‚Đ”Ń€ĐČал за _X:"
-#: ../src/display/canvas-grid.cpp:709
+#: ../src/display/canvas-grid.cpp:705
#: ../src/ui/dialog/inkscape-preferences.cpp:752
msgid "Distance between vertical grid lines"
msgstr "Đ’Ń–ĐŽŃŃ‚Đ°ĐœŃŒ ĐŒŃ–Đ¶ ĐČДртОĐșĐ°Đ»ŃŒĐœĐžĐŒĐž Đ»Ń–ĐœŃ–ŃĐŒĐž сітĐșĐž"
-#: ../src/display/canvas-grid.cpp:712
+#: ../src/display/canvas-grid.cpp:708
#: ../src/ui/dialog/inkscape-preferences.cpp:753
msgid "Distance between horizontal grid lines"
msgstr "Đ’Ń–ĐŽŃŃ‚Đ°ĐœŃŒ ĐŒŃ–Đ¶ ĐłĐŸŃ€ĐžĐ·ĐŸĐœŃ‚Đ°Đ»ŃŒĐœĐžĐŒĐž Đ»Ń–ĐœŃ–ŃĐŒĐž сітĐșĐž"
-#: ../src/display/canvas-grid.cpp:744
+#: ../src/display/canvas-grid.cpp:740
msgid "_Show dots instead of lines"
msgstr "_ĐŸĐŸĐșазуĐČато Ń‚ĐŸŃ‡ĐșĐž Đ·Đ°ĐŒŃ–ŃŃ‚ŃŒ Đ»Ń–ĐœŃ–Đč"
-#: ../src/display/canvas-grid.cpp:745
+#: ../src/display/canvas-grid.cpp:741
msgid "If set, displays dots at gridpoints instead of gridlines"
msgstr "ĐŻĐșŃ‰ĐŸ ĐČŃŃ‚Đ°ĐœĐŸĐČĐ»Đ”ĐœĐŸ, Đ·Đ°ĐŒŃ–ŃŃ‚ŃŒ ĐœĐ°ĐżŃ€ŃĐŒĐœĐžŃ… ĐČŃ–ĐŽĐŸĐ±Ń€Đ°Đ¶Đ°ŃŽŃ‚ŃŒŃŃ Ń‚ĐŸŃ‡ĐșĐž сітĐșĐž"
@@ -4819,11 +4820,11 @@ msgstr "ĐĄĐ”Ń€Đ”ĐŽĐœŃ Ń‚ĐŸŃ‡Đșа Ń€Đ°ĐŒĐșĐž-ĐŸĐ±ĐłĐŸŃ€Ń‚ĐșĐž"
msgid "Bounding box side midpoint"
msgstr "Đ‘ĐŸĐșĐŸĐČа ŃĐ”Ń€Đ”ĐŽĐœŃ Ń‚ĐŸŃ‡Đșа Ń€Đ°ĐŒĐșĐž-ĐŸĐ±ĐłĐŸŃ€Ń‚ĐșĐž"
-#: ../src/display/snap-indicator.cpp:196 ../src/ui/tool/node.cpp:1505
+#: ../src/display/snap-indicator.cpp:196 ../src/ui/tool/node.cpp:1506
msgid "Smooth node"
msgstr "ГлаЎĐșĐžĐč ĐČŃƒĐ·ĐŸĐ»"
-#: ../src/display/snap-indicator.cpp:199 ../src/ui/tool/node.cpp:1504
+#: ../src/display/snap-indicator.cpp:199 ../src/ui/tool/node.cpp:1505
msgid "Cusp node"
msgstr "Đ“ĐŸŃŃ‚Ń€ĐžĐč ĐČŃƒĐ·ĐŸĐ»"
@@ -4893,7 +4894,7 @@ msgstr "Đ”ĐŸĐșŃƒĐŒĐ”ĐœŃ‚ у ĐżĐ°ĐŒ'яті %d"
msgid "Memory document %1"
msgstr "Đ”ĐŸĐșŃƒĐŒĐ”ĐœŃ‚ у ĐżĐ°ĐŒ'яті %1"
-#: ../src/document.cpp:855
+#: ../src/document.cpp:886
#, c-format
msgid "Unnamed document %d"
msgstr "Đ”ĐŸĐșŃƒĐŒĐ”ĐœŃ‚ бДз ĐœĐ°Đ·ĐČĐž %d"
@@ -4903,11 +4904,11 @@ msgid "[Unchanged]"
msgstr "(ĐĐ” Đ·ĐŒŃ–ĐœĐ”ĐœĐŸ)"
#. Edit
-#: ../src/event-log.cpp:371 ../src/event-log.cpp:374 ../src/verbs.cpp:2465
+#: ../src/event-log.cpp:371 ../src/event-log.cpp:374 ../src/verbs.cpp:2434
msgid "_Undo"
msgstr "В_Đ”Ń€ĐœŃƒŃ‚Đž"
-#: ../src/event-log.cpp:381 ../src/event-log.cpp:385 ../src/verbs.cpp:2467
+#: ../src/event-log.cpp:381 ../src/event-log.cpp:385 ../src/verbs.cpp:2436
msgid "_Redo"
msgstr "ĐŸĐŸĐČт_ĐŸŃ€ĐžŃ‚Đž"
@@ -4935,7 +4936,7 @@ msgstr " ĐŸĐżĐžŃ: "
msgid " (No preferences)"
msgstr " (ĐĐ”ĐŒĐ°Ń” ŃƒĐżĐŸĐŽĐŸĐ±Đ°ĐœŃŒ)"
-#: ../src/extension/effect.h:70 ../src/verbs.cpp:2239
+#: ../src/extension/effect.h:70 ../src/verbs.cpp:2208
msgid "Extensions"
msgstr "Đ”ĐŸĐŽĐ°Ń‚ĐșĐž"
@@ -4961,14 +4962,14 @@ msgstr ""
msgid "Show dialog on startup"
msgstr "ĐŸĐŸĐșазуĐČато ĐŽŃ–Đ°Đ»ĐŸĐłĐŸĐČĐ” ĐČіĐșĐœĐŸ про запусĐșу"
-#: ../src/extension/execution-env.cpp:144
+#: ../src/extension/execution-env.cpp:138
#, c-format
msgid "'%s' working, please wait..."
msgstr "Đ—Đ°ŃŃ‚ĐŸŃĐŸĐČується ДфДĐșт '%s', зачДĐșаĐčтД "
#. static int i = 0;
#. std::cout << "Checking module[" << i++ << "]: " << name << std::endl;
-#: ../src/extension/extension.cpp:271
+#: ../src/extension/extension.cpp:267
msgid ""
" This is caused by an improper .inx file for this extension. An improper ."
"inx file could have been caused by a faulty installation of Inkscape."
@@ -4976,70 +4977,70 @@ msgstr ""
" ĐŠĐ” ĐČĐžĐșлОĐșĐ°ĐœĐŸ ĐœĐ”ĐżŃ€Đ°ĐČĐžĐ»ŃŒĐœĐžĐŒ фаĐčĐ»ĐŸĐŒ .inx ĐŽĐ»Ń Ń†ŃŒĐŸĐłĐŸ ĐŽĐŸĐŽĐ°Ń‚Đșу. ĐŸŃ€ĐžŃ‡ĐžĐœĐŸŃŽ ĐżĐŸŃĐČĐž "
"ĐœĐ”ĐżŃ€Đ°ĐČĐžĐ»ŃŒĐœĐŸĐłĐŸ фаĐčла .inx ĐŒĐŸĐ¶Đ” Đ±ŃƒŃ‚Đž ĐœĐ”ĐșĐŸŃ€Đ”ĐșŃ‚ĐœĐ” ĐČŃŃ‚Đ°ĐœĐŸĐČĐ»Đ”ĐœĐœŃ Inkscape."
-#: ../src/extension/extension.cpp:281
+#: ../src/extension/extension.cpp:277
msgid "the extension is designed for Windows only."
msgstr "Ń€ĐŸĐ·ŃˆĐžŃ€Đ”ĐœĐœŃ Ń€ĐŸĐ·Ń€ĐŸĐ±Đ»Đ”ĐœĐŸ лОшД ĐŽĐ»Ń Windows."
-#: ../src/extension/extension.cpp:286
+#: ../src/extension/extension.cpp:282
msgid "an ID was not defined for it."
msgstr "ĐŽĐ»Ń ĐœŃŒĐŸĐłĐŸ ĐœĐ” ĐČĐșĐ°Đ·Đ°ĐœĐŸ Ń–ĐŽĐ”ĐœŃ‚ĐžŃ„Ń–ĐșĐ°Ń‚ĐŸŃ€ ID."
-#: ../src/extension/extension.cpp:290
+#: ../src/extension/extension.cpp:286
msgid "there was no name defined for it."
msgstr "ĐŽĐ»Ń ĐœŃŒĐŸĐłĐŸ ĐœĐ” ĐČĐșĐ°Đ·Đ°ĐœĐŸ ĐœĐ°Đ·ĐČĐž."
-#: ../src/extension/extension.cpp:294
+#: ../src/extension/extension.cpp:290
msgid "the XML description of it got lost."
msgstr "ĐČŃ‚Ń€Đ°Ń‡Đ”ĐœĐŸ ĐčĐŸĐłĐŸ XML ĐŸĐżĐžŃ."
-#: ../src/extension/extension.cpp:298
+#: ../src/extension/extension.cpp:294
msgid "no implementation was defined for the extension."
msgstr "ĐŽĐ»Ń ĐŽĐŸĐŽĐ°Ń‚Đșу ĐœĐ” ĐČĐșĐ°Đ·Đ°ĐœĐŸ рДалізацію."
#. std::cout << "Failed: " << *(_deps[i]) << std::endl;
-#: ../src/extension/extension.cpp:305
+#: ../src/extension/extension.cpp:301
msgid "a dependency was not met."
msgstr "Đ·Đ°Đ»Đ”Đ¶ĐœŃ–ŃŃ‚ŃŒ ĐœĐ” Đ±ŃƒĐ»ĐŸ Đ·Đ°ĐŽĐŸĐČĐŸĐ»Đ”ĐœĐŸ."
-#: ../src/extension/extension.cpp:325
+#: ../src/extension/extension.cpp:321
msgid "Extension \""
msgstr "ĐŸĐŸĐŒĐžĐ»Đșа у ĐŽĐŸĐŽĐ°Ń‚Đșу «"
-#: ../src/extension/extension.cpp:325
+#: ../src/extension/extension.cpp:321
msgid "\" failed to load because "
msgstr "». ĐŸŃ€ĐžŃ‡ĐžĐœĐ°: "
-#: ../src/extension/extension.cpp:674
+#: ../src/extension/extension.cpp:670
#, c-format
msgid "Could not create extension error log file '%s'"
msgstr "ĐĐ” ĐČЮається стĐČĐŸŃ€ĐžŃ‚Đž фаĐčĐ» Đ¶ŃƒŃ€ĐœĐ°Đ»Ńƒ ĐżĐŸĐŒĐžĐ»ĐŸĐș ĐŽĐŸĐŽĐ°Ń‚ĐșіĐČ Â«%s»"
-#: ../src/extension/extension.cpp:782
+#: ../src/extension/extension.cpp:778
#: ../share/extensions/webslicer_create_rect.inx.h:2
msgid "Name:"
msgstr "ĐĐ°Đ·ĐČа:"
-#: ../src/extension/extension.cpp:783
+#: ../src/extension/extension.cpp:779
msgid "ID:"
msgstr "Đ†ĐŽĐ”ĐœŃ‚ĐžŃ„Ń–ĐșĐ°Ń‚ĐŸŃ€:"
-#: ../src/extension/extension.cpp:784
+#: ../src/extension/extension.cpp:780
msgid "State:"
msgstr "ĐĄŃ‚Đ°Đœ:"
-#: ../src/extension/extension.cpp:784
+#: ../src/extension/extension.cpp:780
msgid "Loaded"
msgstr "ЗаĐČĐ°ĐœŃ‚Đ°Đ¶Đ”ĐœĐŸ"
-#: ../src/extension/extension.cpp:784
+#: ../src/extension/extension.cpp:780
msgid "Unloaded"
msgstr "Đ ĐŸĐ·ĐČĐ°ĐœŃ‚Đ°Đ¶Đ”ĐœĐŸ"
-#: ../src/extension/extension.cpp:784
+#: ../src/extension/extension.cpp:780
msgid "Deactivated"
msgstr "Đ’ĐžĐŒĐșĐœĐ”ĐœĐŸ"
-#: ../src/extension/extension.cpp:824
+#: ../src/extension/extension.cpp:820
msgid ""
"Currently there is no help available for this Extension. Please look on the "
"Inkscape website or ask on the mailing lists if you have questions regarding "
@@ -5049,7 +5050,7 @@ msgstr ""
"ĐČіЮĐČіЮаĐčтД саĐčт Inkscape Đ°Đ±ĐŸ запОтаĐčтД у спОсĐșах Đ»ĐžŃŃ‚ŃƒĐČĐ°ĐœĐœŃ, яĐșŃ‰ĐŸ у ĐČас "
"ĐČĐžĐœĐžĐșлО ĐżĐžŃ‚Đ°ĐœĐœŃ, Ń‰ĐŸ ŃŃ‚ĐŸŃŃƒŃŽŃ‚ŃŒŃŃ Ń†ŃŒĐŸĐłĐŸ ĐŽĐŸĐŽĐ°Ń‚Đșа."
-#: ../src/extension/implementation/script.cpp:1057
+#: ../src/extension/implementation/script.cpp:1063
msgid ""
"Inkscape has received additional data from the script executed. The script "
"did not return an error, but this may indicate the results will not be as "
@@ -5082,10 +5083,11 @@ msgstr "АЮаптоĐČĐœĐ° ĐżĐŸŃŃ‚Đ”Ń€ĐžĐ·Đ°Ń†Ń–Ń"
#: ../src/extension/internal/bitmap/adaptiveThreshold.cpp:41
#: ../src/extension/internal/bitmap/raise.cpp:42
#: ../src/extension/internal/bitmap/sample.cpp:41
-#: ../src/extension/internal/bluredge.cpp:138
-#: ../src/ui/dialog/lpe-powerstroke-properties.cpp:63
+#: ../src/extension/internal/bluredge.cpp:136
+#: ../src/ui/dialog/lpe-powerstroke-properties.cpp:59
#: ../src/ui/dialog/object-attributes.cpp:68
#: ../src/ui/dialog/object-attributes.cpp:77
+#: ../src/ui/widget/page-sizer.cpp:249
#: ../src/widgets/calligraphy-toolbar.cpp:430
#: ../src/widgets/eraser-toolbar.cpp:128 ../src/widgets/spray-toolbar.cpp:116
#: ../src/widgets/tweak-toolbar.cpp:128
@@ -5098,7 +5100,7 @@ msgstr "ĐšĐžŃ€ĐžĐœĐ°:"
#: ../src/extension/internal/bitmap/sample.cpp:42
#: ../src/ui/dialog/object-attributes.cpp:69
#: ../src/ui/dialog/object-attributes.cpp:78
-#: ../share/extensions/foldablebox.inx.h:3
+#: ../src/ui/widget/page-sizer.cpp:250 ../share/extensions/foldablebox.inx.h:3
msgid "Height:"
msgstr "Đ’ĐžŃĐŸŃ‚Đ°:"
@@ -5155,13 +5157,13 @@ msgstr "Đ”ĐŸĐŽĐ°Ń‚Đž ŃˆŃƒĐŒ"
#. _settings->add_checkbutton(false, SP_ATTR_STITCHTILES, _("Stitch Tiles"), "stitch", "noStitch");
#: ../src/extension/internal/bitmap/addNoise.cpp:47
-#: ../src/extension/internal/filter/color.h:426
-#: ../src/extension/internal/filter/color.h:1497
-#: ../src/extension/internal/filter/color.h:1585
+#: ../src/extension/internal/filter/color.h:501
+#: ../src/extension/internal/filter/color.h:1572
+#: ../src/extension/internal/filter/color.h:1660
#: ../src/extension/internal/filter/distort.h:69
#: ../src/extension/internal/filter/morphology.h:60 ../src/rdf.cpp:244
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2842
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2916
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2858
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2932
#: ../src/ui/dialog/object-attributes.cpp:49
#: ../share/extensions/jessyInk_effects.inx.h:5
#: ../share/extensions/jessyInk_export.inx.h:3
@@ -5213,7 +5215,7 @@ msgstr "Đ ĐŸĐ·ĐŒĐžŃ‚Ń‚Ń"
#: ../src/extension/internal/bitmap/oilPaint.cpp:39
#: ../src/extension/internal/bitmap/sharpen.cpp:40
#: ../src/extension/internal/bitmap/unsharpmask.cpp:43
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2894
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2910
msgid "Radius:"
msgstr "РаЮіус:"
@@ -5296,7 +5298,7 @@ msgid "Apply charcoal stylization to selected bitmap(s)"
msgstr "Đ—Đ°ŃŃ‚ĐŸŃŃƒĐČато стОлізацію піЮ ĐŒĐ°Đ»ŃŽĐœĐŸĐș ĐČŃƒĐłŃ–Đ»Đ»ŃĐŒ ĐŽĐŸ ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐžŃ… ĐșĐ°Ń€Ń‚ĐžĐœĐŸĐș"
#: ../src/extension/internal/bitmap/colorize.cpp:50
-#: ../src/extension/internal/filter/color.h:317
+#: ../src/extension/internal/filter/color.h:392
msgid "Colorize"
msgstr "Đ—Ń€ĐŸĐ±ĐžŃ‚Đž ĐșĐŸĐ»ŃŒĐŸŃ€ĐŸĐČĐžĐŒ"
@@ -5307,7 +5309,7 @@ msgstr ""
"ĐœĐ”ĐżŃ€ĐŸĐ·ĐŸŃ€Ń–ŃŃ‚ŃŒ"
#: ../src/extension/internal/bitmap/contrast.cpp:40
-#: ../src/extension/internal/filter/color.h:1114
+#: ../src/extension/internal/filter/color.h:1189
msgid "Contrast"
msgstr "ĐšĐŸĐœŃ‚Ń€Đ°ŃŃ‚"
@@ -5428,7 +5430,7 @@ msgid "Implode selected bitmap(s)"
msgstr "Đ—Đ°ŃŃ‚ĐŸŃŃƒĐČато ДфДĐșт «ĐșĐŸĐœŃ†Đ”ĐœŃ‚Ń€Đ°Ń†Ń–ŃÂ» ĐŽĐŸ ĐČĐžĐ±Ń€Đ°ĐœĐžŃ… Ń€Đ°ŃŃ‚Ń€ĐŸĐČох Đ·ĐŸĐ±Ń€Đ°Đ¶Đ”ĐœŃŒ"
#: ../src/extension/internal/bitmap/level.cpp:41
-#: ../src/extension/internal/filter/color.h:742
+#: ../src/extension/internal/filter/color.h:817
#: ../src/extension/internal/filter/image.h:56
#: ../src/extension/internal/filter/morphology.h:66
#: ../src/extension/internal/filter/paint.h:345
@@ -5463,7 +5465,7 @@ msgid "Level (with Channel)"
msgstr "РіĐČĐ”ĐœŃŒ (Đ· ĐșĐ°ĐœĐ°Đ»ĐŸĐŒ)"
#: ../src/extension/internal/bitmap/levelChannel.cpp:54
-#: ../src/extension/internal/filter/color.h:636
+#: ../src/extension/internal/filter/color.h:711
msgid "Channel:"
msgstr "ĐšĐ°ĐœĐ°Đ»:"
@@ -5549,7 +5551,7 @@ msgid "Opacity"
msgstr "ĐĐ”ĐżŃ€ĐŸĐ·ĐŸŃ€Ń–ŃŃ‚ŃŒ"
#: ../src/extension/internal/bitmap/opacity.cpp:40
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2884
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2900
#: ../src/ui/dialog/objects.cpp:1619 ../src/widgets/dropper-toolbar.cpp:83
msgid "Opacity:"
msgstr "ĐĐ”ĐżŃ€ĐŸĐ·ĐŸŃ€Ń–ŃŃ‚ŃŒ:"
@@ -5627,8 +5629,8 @@ msgid "Sharpen selected bitmap(s)"
msgstr "ПіЮĐČощото різĐșість ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐžŃ… Ń€Đ°ŃŃ‚Ń€ĐŸĐČох ĐșĐ°Ń€Ń‚ĐžĐœĐŸĐș"
#: ../src/extension/internal/bitmap/solarize.cpp:39
-#: ../src/extension/internal/filter/color.h:1494
-#: ../src/extension/internal/filter/color.h:1498
+#: ../src/extension/internal/filter/color.h:1569
+#: ../src/extension/internal/filter/color.h:1573
msgid "Solarize"
msgstr "ĐĄĐŸĐœŃŃ‡ĐœĐ” сĐČŃ–Ń‚Đ»ĐŸ"
@@ -5667,7 +5669,7 @@ msgstr "ĐŸĐŸŃŃ‚Đ”Ń€ĐžĐ·Đ°Ń†Ń–Ń"
#: ../src/extension/internal/bitmap/threshold.cpp:40
#: ../src/extension/internal/bitmap/unsharpmask.cpp:46
-#: ../src/widgets/paintbucket-toolbar.cpp:148
+#: ../src/widgets/paintbucket-toolbar.cpp:147
msgid "Threshold:"
msgstr "ĐŸĐŸŃ€Ń–Đł:"
@@ -5700,23 +5702,23 @@ msgstr "Đ”ĐŸĐČĐ¶ĐžĐœĐ° хĐČОлі:"
msgid "Alter selected bitmap(s) along sine wave"
msgstr "Đ—ĐŒŃ–ĐœĐžŃ‚Đž ĐČĐžĐ±Ń€Đ°ĐœŃ– Ń€Đ°ŃŃ‚Ń€ĐŸĐČі Đ·ĐŸĐ±Ń€Đ°Đ¶Đ”ĐœĐœŃ за хĐČОлДю ŃĐžĐœŃƒŃĐŸŃ—ĐŽĐž"
-#: ../src/extension/internal/bluredge.cpp:136
+#: ../src/extension/internal/bluredge.cpp:134
msgid "Inset/Outset Halo"
msgstr "ВтягуĐČĐ°ĐœĐœŃ/Đ ĐŸĐ·Ń‚ŃĐłŃƒĐČĐ°ĐœĐœŃ ĐŸŃ€Đ”ĐŸĐ»Đ°"
-#: ../src/extension/internal/bluredge.cpp:138
+#: ../src/extension/internal/bluredge.cpp:136
msgid "Width in px of the halo"
msgstr "ĐšĐžŃ€ĐžĐœĐ° ĐŸŃ€Đ”ĐŸĐ»Ńƒ у Ń‚ĐŸŃ‡Đșах"
-#: ../src/extension/internal/bluredge.cpp:139
+#: ../src/extension/internal/bluredge.cpp:137
msgid "Number of steps:"
msgstr "ĐšŃ–Đ»ŃŒĐșість ĐșŃ€ĐŸĐșіĐČ:"
-#: ../src/extension/internal/bluredge.cpp:139
+#: ../src/extension/internal/bluredge.cpp:137
msgid "Number of inset/outset copies of the object to make"
msgstr "ĐšŃ–Đ»ŃŒĐșість ĐșĐŸĐżŃ–Đč ĐČтягуĐČĐ°ĐœĐœŃ/Ń€ĐŸĐ·Ń‚ŃĐłŃƒĐČĐ°ĐœĐœŃ ĐŸĐ±'єĐșта"
-#: ../src/extension/internal/bluredge.cpp:143
+#: ../src/extension/internal/bluredge.cpp:141
#: ../share/extensions/extrude.inx.h:5
#: ../share/extensions/generate_voronoi.inx.h:9
#: ../share/extensions/interp.inx.h:7 ../share/extensions/motion.inx.h:4
@@ -5920,80 +5922,80 @@ msgstr "ЀаĐčлО ĐŸĐ±ĐŒŃ–ĐœŃƒ ĐżŃ€Đ”Đ·Đ”ĐœŃ‚Đ°Ń†Ń–ŃĐŒĐž Corel DRAW (*.cmx)"
msgid "Open presentation exchange files saved in Corel DRAW"
msgstr "ВіЮĐșрото фаĐčлО ĐŸĐ±ĐŒŃ–ĐœŃƒ ĐżŃ€Đ”Đ·Đ”ĐœŃ‚Đ°Ń†Ń–ŃĐŒĐž, Đ·Đ±Đ”Ń€Đ”Đ¶Đ”ĐœŃ– за ĐŽĐŸĐżĐŸĐŒĐŸĐłĐŸŃŽ Corel DRAW"
-#: ../src/extension/internal/emf-inout.cpp:3562
+#: ../src/extension/internal/emf-inout.cpp:3584
msgid "EMF Input"
msgstr "Đ†ĐŒĐżĐŸŃ€Ń‚ EMF"
-#: ../src/extension/internal/emf-inout.cpp:3567
+#: ../src/extension/internal/emf-inout.cpp:3589
msgid "Enhanced Metafiles (*.emf)"
msgstr "Đ ĐŸĐ·ŃˆĐžŃ€Đ”ĐœĐžĐč ĐŒĐ”Ń‚Đ°Ń„Đ°ĐčĐ» (*.emf)"
-#: ../src/extension/internal/emf-inout.cpp:3568
+#: ../src/extension/internal/emf-inout.cpp:3590
msgid "Enhanced Metafiles"
msgstr "Đ ĐŸĐ·ŃˆĐžŃ€Đ”ĐœŃ– ĐŒĐ”Ń‚Đ°Ń„Đ°ĐčлО"
-#: ../src/extension/internal/emf-inout.cpp:3576
+#: ../src/extension/internal/emf-inout.cpp:3598
msgid "EMF Output"
msgstr "ЕĐșŃĐżĐŸŃ€Ń‚ ĐŽĐŸ EMF"
-#: ../src/extension/internal/emf-inout.cpp:3578
-#: ../src/extension/internal/wmf-inout.cpp:3152
+#: ../src/extension/internal/emf-inout.cpp:3600
+#: ../src/extension/internal/wmf-inout.cpp:3174
msgid "Convert texts to paths"
msgstr "ĐŸĐ”Ń€Đ”Ń‚ĐČĐŸŃ€ĐžŃ‚Đž тДĐșст ĐœĐ° ĐșĐŸĐœŃ‚ŃƒŃ€Đž"
-#: ../src/extension/internal/emf-inout.cpp:3579
-#: ../src/extension/internal/wmf-inout.cpp:3153
+#: ../src/extension/internal/emf-inout.cpp:3601
+#: ../src/extension/internal/wmf-inout.cpp:3175
msgid "Map Unicode to Symbol font"
msgstr "ĐŸĐŸĐČâ€™ŃĐ·Đ°Ń‚Đž Unicode Đ·Ń– ŃˆŃ€ĐžŃ„Ń‚ĐŸĐŒ Symbol"
-#: ../src/extension/internal/emf-inout.cpp:3580
-#: ../src/extension/internal/wmf-inout.cpp:3154
+#: ../src/extension/internal/emf-inout.cpp:3602
+#: ../src/extension/internal/wmf-inout.cpp:3176
msgid "Map Unicode to Wingdings"
msgstr "ĐŸĐŸĐČâ€™ŃĐ·Đ°Ń‚Đž Unicode Đ· Wingdings"
-#: ../src/extension/internal/emf-inout.cpp:3581
-#: ../src/extension/internal/wmf-inout.cpp:3155
+#: ../src/extension/internal/emf-inout.cpp:3603
+#: ../src/extension/internal/wmf-inout.cpp:3177
msgid "Map Unicode to Zapf Dingbats"
msgstr "ĐŸĐŸĐČâ€™ŃĐ·Đ°Ń‚Đž Unicode Đ· Zapf Dingbats"
-#: ../src/extension/internal/emf-inout.cpp:3582
-#: ../src/extension/internal/wmf-inout.cpp:3156
+#: ../src/extension/internal/emf-inout.cpp:3604
+#: ../src/extension/internal/wmf-inout.cpp:3178
msgid "Use MS Unicode PUA (0xF020-0xF0FF) for converted characters"
msgstr ""
"ВоĐșĐŸŃ€ĐžŃŃ‚ĐŸĐČуĐČато ĐŽĐ»Ń пДрДтĐČĐŸŃ€Đ”ĐœĐžŃ… ŃĐžĐŒĐČĐŸĐ»Ń–ĐČ MS Unicode PUA (0xF020-0xF0FF)"
-#: ../src/extension/internal/emf-inout.cpp:3583
-#: ../src/extension/internal/wmf-inout.cpp:3157
+#: ../src/extension/internal/emf-inout.cpp:3605
+#: ../src/extension/internal/wmf-inout.cpp:3179
msgid "Compensate for PPT font bug"
msgstr "ĐšĐŸĐŒĐżĐ”ĐœŃŃƒĐČато ĐČаЎу Ń‰ĐŸĐŽĐŸ шрофтіĐČ Ńƒ PPT"
-#: ../src/extension/internal/emf-inout.cpp:3584
-#: ../src/extension/internal/wmf-inout.cpp:3158
+#: ../src/extension/internal/emf-inout.cpp:3606
+#: ../src/extension/internal/wmf-inout.cpp:3180
msgid "Convert dashed/dotted lines to single lines"
msgstr "ĐŸĐ”Ń€Đ”Ń‚ĐČĐŸŃ€ŃŽĐČато ŃˆŃ‚Ń€ĐžŃ…ĐŸĐČу та ĐżŃƒĐœĐșтор у ĐŸĐŽĐœŃƒ Đ»Ń–ĐœŃ–ŃŽ"
-#: ../src/extension/internal/emf-inout.cpp:3585
-#: ../src/extension/internal/wmf-inout.cpp:3159
+#: ../src/extension/internal/emf-inout.cpp:3607
+#: ../src/extension/internal/wmf-inout.cpp:3181
msgid "Convert gradients to colored polygon series"
msgstr "ĐŸĐ”Ń€Đ”Ń‚ĐČĐŸŃ€ĐžŃ‚Đž ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚Đž ĐœĐ° ĐżĐŸŃĐ»Ń–ĐŽĐŸĐČĐœŃ–ŃŃ‚ŃŒ ĐșĐŸĐ»ŃŒĐŸŃ€ĐŸĐČох Đ±Đ°ĐłĐ°Ń‚ĐŸĐșŃƒŃ‚ĐœĐžĐșіĐČ"
-#: ../src/extension/internal/emf-inout.cpp:3586
+#: ../src/extension/internal/emf-inout.cpp:3608
msgid "Use native rectangular linear gradients"
msgstr "ВоĐșĐŸŃ€ĐžŃŃ‚ĐŸĐČуĐČато ĐżŃ€ĐžŃ€ĐŸĐŽĐœŃ– ĐżŃ€ŃĐŒĐŸĐșŃƒŃ‚ĐœŃ– Đ»Ń–ĐœŃ–ĐčĐœŃ– ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚Đž"
-#: ../src/extension/internal/emf-inout.cpp:3587
+#: ../src/extension/internal/emf-inout.cpp:3609
msgid "Map all fill patterns to standard EMF hatches"
msgstr "ĐŸĐŸĐČâ€™ŃĐ·Đ°Ń‚Đž усі Đ·Đ°ĐżĐŸĐČĐœĐ”ĐœĐœŃ ĐČŃ–Đ·Đ”Ń€ŃƒĐœĐșĐ°ĐŒĐž Đ·Ń– ŃŃ‚Đ°ĐœĐŽĐ°Ń€Ń‚ĐœĐžĐŒĐž ŃˆĐ°Đ±Đ»ĐŸĐœĐ°ĐŒĐž EMF"
-#: ../src/extension/internal/emf-inout.cpp:3588
+#: ../src/extension/internal/emf-inout.cpp:3610
msgid "Ignore image rotations"
msgstr "Đ†ĐłĐœĐŸŃ€ŃƒĐČато ĐŸĐ±Đ”Ń€Ń‚Đ°ĐœĐœŃ Đ·ĐŸĐ±Ń€Đ°Đ¶Đ”ĐœĐœŃ"
-#: ../src/extension/internal/emf-inout.cpp:3592
+#: ../src/extension/internal/emf-inout.cpp:3614
msgid "Enhanced Metafile (*.emf)"
msgstr "Đ ĐŸĐ·ŃˆĐžŃ€Đ”ĐœĐžĐč ĐŒĐ”Ń‚Đ°Ń„Đ°ĐčĐ» (*.emf)"
-#: ../src/extension/internal/emf-inout.cpp:3593
+#: ../src/extension/internal/emf-inout.cpp:3615
msgid "Enhanced Metafile"
msgstr "Đ ĐŸĐ·ŃˆĐžŃ€Đ”ĐœĐžĐč ĐŒĐ”Ń‚Đ°Ń„Đ°ĐčĐ»"
@@ -6037,27 +6039,28 @@ msgstr "ĐšĐŸĐ»Ń–Ń€ піЮсĐČŃ–Ń‡Đ”ĐœĐœŃ"
#: ../src/extension/internal/filter/blurs.h:350
#: ../src/extension/internal/filter/bumps.h:141
#: ../src/extension/internal/filter/bumps.h:361
-#: ../src/extension/internal/filter/color.h:81
-#: ../src/extension/internal/filter/color.h:170
-#: ../src/extension/internal/filter/color.h:261
-#: ../src/extension/internal/filter/color.h:346
-#: ../src/extension/internal/filter/color.h:436
-#: ../src/extension/internal/filter/color.h:531
-#: ../src/extension/internal/filter/color.h:653
-#: ../src/extension/internal/filter/color.h:750
-#: ../src/extension/internal/filter/color.h:829
-#: ../src/extension/internal/filter/color.h:920
-#: ../src/extension/internal/filter/color.h:1048
-#: ../src/extension/internal/filter/color.h:1118
-#: ../src/extension/internal/filter/color.h:1211
-#: ../src/extension/internal/filter/color.h:1323
-#: ../src/extension/internal/filter/color.h:1428
-#: ../src/extension/internal/filter/color.h:1504
-#: ../src/extension/internal/filter/color.h:1615
+#: ../src/extension/internal/filter/color.h:82
+#: ../src/extension/internal/filter/color.h:171
+#: ../src/extension/internal/filter/color.h:282
+#: ../src/extension/internal/filter/color.h:336
+#: ../src/extension/internal/filter/color.h:421
+#: ../src/extension/internal/filter/color.h:511
+#: ../src/extension/internal/filter/color.h:606
+#: ../src/extension/internal/filter/color.h:728
+#: ../src/extension/internal/filter/color.h:825
+#: ../src/extension/internal/filter/color.h:904
+#: ../src/extension/internal/filter/color.h:995
+#: ../src/extension/internal/filter/color.h:1123
+#: ../src/extension/internal/filter/color.h:1193
+#: ../src/extension/internal/filter/color.h:1286
+#: ../src/extension/internal/filter/color.h:1398
+#: ../src/extension/internal/filter/color.h:1503
+#: ../src/extension/internal/filter/color.h:1579
+#: ../src/extension/internal/filter/color.h:1690
#: ../src/extension/internal/filter/distort.h:95
#: ../src/extension/internal/filter/distort.h:204
#: ../src/extension/internal/filter/filter-file.cpp:151
-#: ../src/extension/internal/filter/filter.cpp:214
+#: ../src/extension/internal/filter/filter.cpp:212
#: ../src/extension/internal/filter/image.h:61
#: ../src/extension/internal/filter/morphology.h:75
#: ../src/extension/internal/filter/morphology.h:202
@@ -6094,7 +6097,7 @@ msgstr "ĐœĐ°Ń‚ĐŸĐČĐ” ĐżĐŸĐșроття"
#: ../src/extension/internal/filter/bevels.h:136
#: ../src/extension/internal/filter/bevels.h:220
#: ../src/extension/internal/filter/blurs.h:187
-#: ../src/extension/internal/filter/color.h:74
+#: ../src/extension/internal/filter/color.h:75
msgid "Brightness"
msgstr "ЯсĐșраĐČість"
@@ -6166,11 +6169,11 @@ msgstr "НаĐșĐ»Đ°ĐŽĐ”ĐœĐœŃ:"
#: ../src/extension/internal/filter/bumps.h:131
#: ../src/extension/internal/filter/bumps.h:337
#: ../src/extension/internal/filter/bumps.h:344
-#: ../src/extension/internal/filter/color.h:329
-#: ../src/extension/internal/filter/color.h:336
-#: ../src/extension/internal/filter/color.h:1423
-#: ../src/extension/internal/filter/color.h:1596
-#: ../src/extension/internal/filter/color.h:1602
+#: ../src/extension/internal/filter/color.h:404
+#: ../src/extension/internal/filter/color.h:411
+#: ../src/extension/internal/filter/color.h:1498
+#: ../src/extension/internal/filter/color.h:1671
+#: ../src/extension/internal/filter/color.h:1677
#: ../src/extension/internal/filter/paint.h:705
#: ../src/extension/internal/filter/transparency.h:63
#: ../src/filter-enums.cpp:55
@@ -6182,12 +6185,12 @@ msgstr "ĐąĐ”ĐŒĐœŃ–ŃˆĐ”"
#: ../src/extension/internal/filter/bumps.h:132
#: ../src/extension/internal/filter/bumps.h:335
#: ../src/extension/internal/filter/bumps.h:342
-#: ../src/extension/internal/filter/color.h:327
-#: ../src/extension/internal/filter/color.h:332
-#: ../src/extension/internal/filter/color.h:647
-#: ../src/extension/internal/filter/color.h:1415
-#: ../src/extension/internal/filter/color.h:1420
-#: ../src/extension/internal/filter/color.h:1594
+#: ../src/extension/internal/filter/color.h:402
+#: ../src/extension/internal/filter/color.h:407
+#: ../src/extension/internal/filter/color.h:722
+#: ../src/extension/internal/filter/color.h:1490
+#: ../src/extension/internal/filter/color.h:1495
+#: ../src/extension/internal/filter/color.h:1669
#: ../src/extension/internal/filter/paint.h:703
#: ../src/extension/internal/filter/transparency.h:62
#: ../src/filter-enums.cpp:54 ../src/ui/dialog/input.cpp:382
@@ -6199,13 +6202,13 @@ msgstr "ĐšĐžŃ€ĐŒĐ°"
#: ../src/extension/internal/filter/bumps.h:133
#: ../src/extension/internal/filter/bumps.h:338
#: ../src/extension/internal/filter/bumps.h:345
-#: ../src/extension/internal/filter/color.h:325
-#: ../src/extension/internal/filter/color.h:333
-#: ../src/extension/internal/filter/color.h:645
-#: ../src/extension/internal/filter/color.h:1414
-#: ../src/extension/internal/filter/color.h:1421
-#: ../src/extension/internal/filter/color.h:1595
-#: ../src/extension/internal/filter/color.h:1601
+#: ../src/extension/internal/filter/color.h:400
+#: ../src/extension/internal/filter/color.h:408
+#: ../src/extension/internal/filter/color.h:720
+#: ../src/extension/internal/filter/color.h:1489
+#: ../src/extension/internal/filter/color.h:1496
+#: ../src/extension/internal/filter/color.h:1670
+#: ../src/extension/internal/filter/color.h:1676
#: ../src/extension/internal/filter/paint.h:701
#: ../src/extension/internal/filter/transparency.h:60
#: ../src/filter-enums.cpp:53
@@ -6217,10 +6220,10 @@ msgstr "ĐœĐœĐŸĐ¶Đ”ĐœĐœŃ"
#: ../src/extension/internal/filter/bumps.h:134
#: ../src/extension/internal/filter/bumps.h:339
#: ../src/extension/internal/filter/bumps.h:346
-#: ../src/extension/internal/filter/color.h:328
-#: ../src/extension/internal/filter/color.h:335
-#: ../src/extension/internal/filter/color.h:1422
-#: ../src/extension/internal/filter/color.h:1593
+#: ../src/extension/internal/filter/color.h:403
+#: ../src/extension/internal/filter/color.h:410
+#: ../src/extension/internal/filter/color.h:1497
+#: ../src/extension/internal/filter/color.h:1668
#: ../src/extension/internal/filter/paint.h:704
#: ../src/extension/internal/filter/transparency.h:64
#: ../src/filter-enums.cpp:56
@@ -6265,8 +6268,8 @@ msgid "Erosion"
msgstr "Đ•Ń€ĐŸĐ·Ń–Ń"
#: ../src/extension/internal/filter/blurs.h:336
-#: ../src/extension/internal/filter/color.h:1205
-#: ../src/extension/internal/filter/color.h:1317
+#: ../src/extension/internal/filter/color.h:1280
+#: ../src/extension/internal/filter/color.h:1392
#: ../src/ui/dialog/document-properties.cpp:122
msgid "Background color"
msgstr "ĐšĐŸĐ»Ń–Ń€ тла"
@@ -6280,13 +6283,13 @@ msgstr "йОп Đ·ĐŒŃ–ŃˆŃƒĐČĐ°ĐœĐœŃ:"
#: ../src/extension/internal/filter/bumps.h:130
#: ../src/extension/internal/filter/bumps.h:336
#: ../src/extension/internal/filter/bumps.h:343
-#: ../src/extension/internal/filter/color.h:326
-#: ../src/extension/internal/filter/color.h:334
-#: ../src/extension/internal/filter/color.h:646
-#: ../src/extension/internal/filter/color.h:1413
-#: ../src/extension/internal/filter/color.h:1419
-#: ../src/extension/internal/filter/color.h:1586
-#: ../src/extension/internal/filter/color.h:1600
+#: ../src/extension/internal/filter/color.h:401
+#: ../src/extension/internal/filter/color.h:409
+#: ../src/extension/internal/filter/color.h:721
+#: ../src/extension/internal/filter/color.h:1488
+#: ../src/extension/internal/filter/color.h:1494
+#: ../src/extension/internal/filter/color.h:1661
+#: ../src/extension/internal/filter/color.h:1675
#: ../src/extension/internal/filter/distort.h:78
#: ../src/extension/internal/filter/paint.h:702
#: ../src/extension/internal/filter/textures.h:77
@@ -6324,11 +6327,11 @@ msgstr "ВотосĐșĐ°ĐœĐœŃ ЎжДрДла"
#: ../src/extension/internal/filter/bumps.h:88
#: ../src/extension/internal/filter/bumps.h:317
-#: ../src/extension/internal/filter/color.h:157
-#: ../src/extension/internal/filter/color.h:637
-#: ../src/extension/internal/filter/color.h:821
+#: ../src/extension/internal/filter/color.h:158
+#: ../src/extension/internal/filter/color.h:712
+#: ../src/extension/internal/filter/color.h:896
#: ../src/extension/internal/filter/transparency.h:132
-#: ../src/filter-enums.cpp:128 ../src/ui/tools/flood-tool.cpp:183
+#: ../src/filter-enums.cpp:128 ../src/ui/tools/flood-tool.cpp:91
#: ../src/widgets/sp-color-icc-selector.cpp:330
#: ../src/widgets/sp-color-scales.cpp:415
#: ../src/widgets/sp-color-scales.cpp:416
@@ -6337,11 +6340,11 @@ msgstr "ЧДрĐČĐŸĐœĐžĐč"
#: ../src/extension/internal/filter/bumps.h:89
#: ../src/extension/internal/filter/bumps.h:318
-#: ../src/extension/internal/filter/color.h:158
-#: ../src/extension/internal/filter/color.h:638
-#: ../src/extension/internal/filter/color.h:822
+#: ../src/extension/internal/filter/color.h:159
+#: ../src/extension/internal/filter/color.h:713
+#: ../src/extension/internal/filter/color.h:897
#: ../src/extension/internal/filter/transparency.h:133
-#: ../src/filter-enums.cpp:129 ../src/ui/tools/flood-tool.cpp:184
+#: ../src/filter-enums.cpp:129 ../src/ui/tools/flood-tool.cpp:92
#: ../src/widgets/sp-color-icc-selector.cpp:331
#: ../src/widgets/sp-color-scales.cpp:418
#: ../src/widgets/sp-color-scales.cpp:419
@@ -6350,11 +6353,11 @@ msgstr "Đ—Đ”Đ»Đ”ĐœĐžĐč"
#: ../src/extension/internal/filter/bumps.h:90
#: ../src/extension/internal/filter/bumps.h:319
-#: ../src/extension/internal/filter/color.h:159
-#: ../src/extension/internal/filter/color.h:639
-#: ../src/extension/internal/filter/color.h:823
+#: ../src/extension/internal/filter/color.h:160
+#: ../src/extension/internal/filter/color.h:714
+#: ../src/extension/internal/filter/color.h:898
#: ../src/extension/internal/filter/transparency.h:134
-#: ../src/filter-enums.cpp:130 ../src/ui/tools/flood-tool.cpp:185
+#: ../src/filter-enums.cpp:130 ../src/ui/tools/flood-tool.cpp:93
#: ../src/widgets/sp-color-icc-selector.cpp:332
#: ../src/widgets/sp-color-scales.cpp:421
#: ../src/widgets/sp-color-scales.cpp:422
@@ -6380,20 +6383,20 @@ msgstr "Đ ĐŸĐ·ŃŃ–ŃĐœĐžĐč"
#: ../src/extension/internal/filter/bumps.h:98
#: ../src/extension/internal/filter/bumps.h:329
#: ../src/libgdl/gdl-dock-placeholder.c:175 ../src/libgdl/gdl-dock.c:199
-#: ../src/widgets/rect-toolbar.cpp:334
+#: ../src/ui/widget/page-sizer.cpp:250 ../src/widgets/rect-toolbar.cpp:334
#: ../share/extensions/interp_att_g.inx.h:11
msgid "Height"
msgstr "Đ’ĐžŃĐŸŃ‚Đ°"
#: ../src/extension/internal/filter/bumps.h:99
#: ../src/extension/internal/filter/bumps.h:330
-#: ../src/extension/internal/filter/color.h:76
-#: ../src/extension/internal/filter/color.h:824
-#: ../src/extension/internal/filter/color.h:1113
+#: ../src/extension/internal/filter/color.h:77
+#: ../src/extension/internal/filter/color.h:899
+#: ../src/extension/internal/filter/color.h:1188
#: ../src/extension/internal/filter/paint.h:86
#: ../src/extension/internal/filter/paint.h:592
#: ../src/extension/internal/filter/paint.h:707
-#: ../src/ui/tools/flood-tool.cpp:188
+#: ../src/ui/tools/flood-tool.cpp:96
#: ../src/widgets/sp-color-icc-selector.cpp:341
#: ../src/widgets/sp-color-scales.cpp:447
#: ../src/widgets/sp-color-scales.cpp:448 ../src/widgets/tweak-toolbar.cpp:318
@@ -6433,13 +6436,13 @@ msgstr "ĐŸĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Đž ĐČŃ–ĐŽĐŽĐ°Đ»Đ”ĐœĐŸĐłĐŸ ЎжДрДла"
#: ../src/extension/internal/filter/bumps.h:110
#: ../src/extension/internal/filter/bumps.h:332
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1195
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1196
msgid "Azimuth"
msgstr "ĐĐ·ĐžĐŒŃƒŃ‚"
#: ../src/extension/internal/filter/bumps.h:111
#: ../src/extension/internal/filter/bumps.h:333
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1196
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1197
msgid "Elevation"
msgstr "Đ’ĐžŃĐŸŃ‚Đ°"
@@ -6521,7 +6524,7 @@ msgid "Background opacity"
msgstr "ĐĐ”ĐżŃ€ĐŸĐ·ĐŸŃ€Ń–ŃŃ‚ŃŒ тла"
#: ../src/extension/internal/filter/bumps.h:327
-#: ../src/extension/internal/filter/color.h:1040
+#: ../src/extension/internal/filter/color.h:1115
msgid "Lighting"
msgstr "ПіЮсĐČічуĐČĐ°ĐœĐœŃ"
@@ -6562,17 +6565,17 @@ msgstr "ВхіЮ"
msgid "Turns an image to jelly"
msgstr "ĐŸĐ”Ń€Đ”Ń‚ĐČĐŸŃ€ŃŽŃ” Đ·ĐŸĐ±Ń€Đ°Đ¶Đ”ĐœĐœŃ ĐœĐ° жДлД"
-#: ../src/extension/internal/filter/color.h:72
+#: ../src/extension/internal/filter/color.h:73
msgid "Brilliance"
msgstr "БлОсĐșучість"
-#: ../src/extension/internal/filter/color.h:75
-#: ../src/extension/internal/filter/color.h:1417
+#: ../src/extension/internal/filter/color.h:76
+#: ../src/extension/internal/filter/color.h:1492
msgid "Over-saturation"
msgstr "ĐŸĐ”Ń€Đ”ĐœĐ°ŃĐžŃ‡Đ”ĐœŃ–ŃŃ‚ŃŒ"
-#: ../src/extension/internal/filter/color.h:77
-#: ../src/extension/internal/filter/color.h:161
+#: ../src/extension/internal/filter/color.h:78
+#: ../src/extension/internal/filter/color.h:162
#: ../src/extension/internal/filter/overlays.h:70
#: ../src/extension/internal/filter/paint.h:85
#: ../src/extension/internal/filter/paint.h:502
@@ -6581,19 +6584,19 @@ msgstr "ĐŸĐ”Ń€Đ”ĐœĐ°ŃĐžŃ‡Đ”ĐœŃ–ŃŃ‚ŃŒ"
msgid "Inverted"
msgstr "Đ†ĐœĐČĐ”Ń€Ń‚ŃƒĐČĐ°ĐœĐœŃ"
-#: ../src/extension/internal/filter/color.h:85
+#: ../src/extension/internal/filter/color.h:86
msgid "Brightness filter"
msgstr "Đ€Ń–Đ»ŃŒŃ‚Ń€ ясĐșраĐČĐŸŃŃ‚Ń–"
-#: ../src/extension/internal/filter/color.h:152
+#: ../src/extension/internal/filter/color.h:153
msgid "Channel Painting"
msgstr "ĐœĐ°Đ»ŃŽĐČĐ°ĐœĐœŃ за ĐșĐ°ĐœĐ°Đ»Đ°ĐŒĐž"
-#: ../src/extension/internal/filter/color.h:156
-#: ../src/extension/internal/filter/color.h:257
+#: ../src/extension/internal/filter/color.h:157
+#: ../src/extension/internal/filter/color.h:332
#: ../src/extension/internal/filter/paint.h:87 ../src/filter-enums.cpp:66
#: ../src/ui/dialog/inkscape-preferences.cpp:952
-#: ../src/ui/tools/flood-tool.cpp:187
+#: ../src/ui/tools/flood-tool.cpp:95
#: ../src/widgets/sp-color-icc-selector.cpp:337
#: ../src/widgets/sp-color-icc-selector.cpp:342
#: ../src/widgets/sp-color-scales.cpp:444
@@ -6602,133 +6605,177 @@ msgstr "ĐœĐ°Đ»ŃŽĐČĐ°ĐœĐœŃ за ĐșĐ°ĐœĐ°Đ»Đ°ĐŒĐž"
msgid "Saturation"
msgstr "ĐĐ°ŃĐžŃ‡Đ”ĐœŃ–ŃŃ‚ŃŒ"
-#: ../src/extension/internal/filter/color.h:160
+#: ../src/extension/internal/filter/color.h:161
#: ../src/extension/internal/filter/transparency.h:135
-#: ../src/filter-enums.cpp:131 ../src/ui/tools/flood-tool.cpp:189
+#: ../src/filter-enums.cpp:131 ../src/ui/tools/flood-tool.cpp:97
msgid "Alpha"
msgstr "ĐĐ»ŃŒŃ„Đ°-ĐșĐ°ĐœĐ°Đ»"
-#: ../src/extension/internal/filter/color.h:174
+#: ../src/extension/internal/filter/color.h:175
msgid "Replace RGB by any color"
msgstr "Đ—Đ°ĐŒŃ–ĐœĐžŃ‚Đž ĐșĐŸĐ»Ń–Ń€ RGB ĐœĐ° ĐŽĐŸĐČŃ–Đ»ŃŒĐœĐžĐč ĐșĐŸĐ»Ń–Ń€"
#: ../src/extension/internal/filter/color.h:254
+msgid "Color Blindness"
+msgstr "Đ”Đ°Đ»ŃŒŃ‚ĐŸĐœŃ–Đ·ĐŒ"
+
+#: ../src/extension/internal/filter/color.h:258
+msgid "Blindness type:"
+msgstr "йОп ĐŽĐ°Đ»ŃŒŃ‚ĐŸĐœŃ–Đ·ĐŒŃƒ:"
+
+#: ../src/extension/internal/filter/color.h:259
+msgid "Rod monochromacy (atypical achromatopsia)"
+msgstr "ĐœĐŸĐœĐŸŃ…Ń€ĐŸĐŒĐ°Đ·Ń–Ń ĐżĐ°Đ»ĐžŃ‡ĐŸĐș (ĐœĐ”Ń‚ĐžĐżĐŸĐČа Đ°Ń…Ń€ĐŸĐŒĐ°Ń‚ĐŸĐżŃŃ–Ń)"
+
+#: ../src/extension/internal/filter/color.h:260
+msgid "Cone monochromacy (typical achromatopsia)"
+msgstr "ĐœĐŸĐœĐŸŃ…Ń€ĐŸĐŒĐ°Đ·Ń–Ń ĐșĐŸĐ»Đ±ĐŸŃ‡ĐŸĐș (Ń‚ĐžĐżĐŸĐČа Đ°Ń…Ń€ĐŸĐŒĐ°Ń‚ĐŸĐżŃŃ–Ń)"
+
+#: ../src/extension/internal/filter/color.h:261
+msgid "Green weak (deuteranomaly)"
+msgstr "ХлабĐșĐ” Ń€ĐŸĐ·Ń€Ń–Đ·ĐœĐ”ĐœĐœŃ Đ·Đ”Đ»Đ”ĐœĐŸĐłĐŸ (ĐŽĐ”ĐčŃ‚Đ”Ń€Đ°ĐœĐŸĐŒĐ°Đ»Ń–Ń)"
+
+#: ../src/extension/internal/filter/color.h:262
+msgid "Green blind (deuteranopia)"
+msgstr "ĐĄĐ»Ń–ĐżĐŸŃ‚Đ° ĐŽĐŸ Đ·Đ”Đ»Đ”ĐœĐŸĐłĐŸ (ĐŽĐ”ĐčŃ‚Đ”Ń€Đ°ĐœĐŸĐżŃ–Ń)"
+
+#: ../src/extension/internal/filter/color.h:263
+msgid "Red weak (protanomaly)"
+msgstr "ХлабĐșĐ” Ń€ĐŸĐ·Ń€Ń–Đ·ĐœĐ”ĐœĐœŃ чДрĐČĐŸĐœĐŸĐłĐŸ (ĐżŃ€ĐŸŃ‚Đ°ĐœĐŸĐŒĐ°Đ»Ń–Ń)"
+
+#: ../src/extension/internal/filter/color.h:264
+msgid "Red blind (protanopia)"
+msgstr "ĐĄĐ»Ń–ĐżĐŸŃ‚Đ° ĐŽĐŸ чДрĐČĐŸĐœĐŸĐłĐŸ (ĐżŃ€ĐŸŃ‚Đ°ĐœĐŸĐżŃ–Ń)"
+
+#: ../src/extension/internal/filter/color.h:265
+msgid "Blue weak (tritanomaly)"
+msgstr "ХлабĐșĐ” Ń€ĐŸĐ·Ń€Ń–Đ·ĐœĐ”ĐœĐœŃ ŃĐžĐœŃŒĐŸĐłĐŸ (Ń‚Ń€Ń–Ń‚Đ°ĐœĐŸĐŒĐ°Đ»Ń–Ń)"
+
+#: ../src/extension/internal/filter/color.h:266
+msgid "Blue blind (tritanopia)"
+msgstr "ĐĄĐ»Ń–ĐżĐŸŃ‚Đ° ĐŽĐŸ ŃĐžĐœŃŒĐŸĐłĐŸ (Ń‚Ń€Ń–Ń‚Đ°ĐœĐŸĐżŃ–Ń)"
+
+#: ../src/extension/internal/filter/color.h:286
+msgid "Simulate color blindness"
+msgstr "Đ†ĐŒŃ–Ń‚ŃƒĐČато ĐșĐŸĐ»ŃŒĐŸŃ€ĐŸĐČу ŃĐ»Ń–ĐżĐŸŃ‚Ńƒ"
+
+#: ../src/extension/internal/filter/color.h:329
msgid "Color Shift"
msgstr "ЗсуĐČ ĐșĐŸĐ»ŃŒĐŸŃ€Ń–ĐČ"
-#: ../src/extension/internal/filter/color.h:256
+#: ../src/extension/internal/filter/color.h:331
msgid "Shift (°)"
msgstr "ЗсуĐČ (у °)"
-#: ../src/extension/internal/filter/color.h:265
+#: ../src/extension/internal/filter/color.h:340
msgid "Rotate and desaturate hue"
msgstr "ĐžĐ±Đ”Ń€Ń‚Đ°ĐœĐœŃ і Đ·ĐœĐ”ĐœĐ°ŃĐžŃ‡Đ”ĐœĐœŃ ĐČŃ–ĐŽŃ‚Ń–ĐœĐșіĐČ"
-#: ../src/extension/internal/filter/color.h:321
+#: ../src/extension/internal/filter/color.h:396
msgid "Harsh light"
msgstr "ЯсĐșраĐČĐ” ĐŸŃĐČŃ–Ń‚Đ»Đ”ĐœĐœŃ"
-#: ../src/extension/internal/filter/color.h:322
+#: ../src/extension/internal/filter/color.h:397
msgid "Normal light"
msgstr "ЗĐČочаĐčĐœĐ” ĐŸŃĐČŃ–Ń‚Đ»Đ”ĐœĐœŃ"
-#: ../src/extension/internal/filter/color.h:323
+#: ../src/extension/internal/filter/color.h:398
msgid "Duotone"
msgstr "ДĐČа Ń‚ĐŸĐœĐž"
-#: ../src/extension/internal/filter/color.h:324
-#: ../src/extension/internal/filter/color.h:1412
+#: ../src/extension/internal/filter/color.h:399
+#: ../src/extension/internal/filter/color.h:1487
msgid "Blend 1:"
msgstr "НаĐșĐ»Đ°ĐŽĐ”ĐœĐœŃ 1:"
-#: ../src/extension/internal/filter/color.h:331
-#: ../src/extension/internal/filter/color.h:1418
+#: ../src/extension/internal/filter/color.h:406
+#: ../src/extension/internal/filter/color.h:1493
msgid "Blend 2:"
msgstr "НаĐșĐ»Đ°ĐŽĐ”ĐœĐœŃ 2:"
-#: ../src/extension/internal/filter/color.h:350
+#: ../src/extension/internal/filter/color.h:425
msgid "Blend image or object with a flood color"
msgstr "Đ—ĐŒŃ–ŃˆŃƒŃ” ĐșĐŸĐ»ŃŒĐŸŃ€Đž Đ·ĐŸĐ±Ń€Đ°Đ¶Đ”ĐœĐœŃ Đ°Đ±ĐŸ ĐŸĐ±'єĐșта Đ· ĐșĐŸĐ»ŃŒĐŸŃ€ĐŸĐŒ Đ·Đ°ĐżĐŸĐČĐœĐ”ĐœĐœŃ"
-#: ../src/extension/internal/filter/color.h:424 ../src/filter-enums.cpp:23
+#: ../src/extension/internal/filter/color.h:499 ../src/filter-enums.cpp:23
msgid "Component Transfer"
msgstr "ĐŸĐ”Ń€Đ”ĐœĐ”ŃĐ”ĐœĐœŃ ĐșĐŸĐŒĐżĐŸĐœĐ”ĐœŃ‚Đž"
-#: ../src/extension/internal/filter/color.h:427 ../src/filter-enums.cpp:110
+#: ../src/extension/internal/filter/color.h:502 ../src/filter-enums.cpp:110
msgid "Identity"
msgstr "ĐąĐŸŃ‚ĐŸĐ¶ĐœŃ–ŃŃ‚ŃŒ"
-#: ../src/extension/internal/filter/color.h:428
+#: ../src/extension/internal/filter/color.h:503
#: ../src/extension/internal/filter/paint.h:498 ../src/filter-enums.cpp:111
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1050
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1051
msgid "Table"
msgstr "ĐąĐ°Đ±Đ»ĐžŃ‡ĐœĐžĐč"
-#: ../src/extension/internal/filter/color.h:429
+#: ../src/extension/internal/filter/color.h:504
#: ../src/extension/internal/filter/paint.h:499 ../src/filter-enums.cpp:112
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1053
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1054
msgid "Discrete"
msgstr "ДосĐșŃ€Đ”Ń‚ĐœĐžĐč"
-#: ../src/extension/internal/filter/color.h:430 ../src/filter-enums.cpp:113
+#: ../src/extension/internal/filter/color.h:505 ../src/filter-enums.cpp:113
#: ../src/live_effects/lpe-interpolate_points.cpp:25
#: ../src/live_effects/lpe-powerstroke.cpp:194
msgid "Linear"
msgstr "Đ›Ń–ĐœŃ–ĐčĐœĐ°"
-#: ../src/extension/internal/filter/color.h:431 ../src/filter-enums.cpp:114
+#: ../src/extension/internal/filter/color.h:506 ../src/filter-enums.cpp:114
msgid "Gamma"
msgstr "Đ“Đ°ĐŒĐ°"
-#: ../src/extension/internal/filter/color.h:440
+#: ../src/extension/internal/filter/color.h:515
msgid "Basic component transfer structure"
msgstr "Đ‘Đ°Đ·ĐŸĐČа струĐșтура пДрДтĐČĐŸŃ€Đ”ĐœĐœŃ ĐșĐŸĐŒĐżĐŸĐœĐ”ĐœŃ‚"
-#: ../src/extension/internal/filter/color.h:509
+#: ../src/extension/internal/filter/color.h:584
msgid "Duochrome"
msgstr "ДĐČа ĐșĐŸĐ»ŃŒĐŸŃ€Đž"
-#: ../src/extension/internal/filter/color.h:513
+#: ../src/extension/internal/filter/color.h:588
msgid "Fluorescence level"
msgstr "РіĐČĐ”ĐœŃŒ сĐČŃ–Ń‡Đ”ĐœĐœŃ"
-#: ../src/extension/internal/filter/color.h:514
+#: ../src/extension/internal/filter/color.h:589
msgid "Swap:"
msgstr "ĐžĐ±ĐŒŃ–Đœ:"
-#: ../src/extension/internal/filter/color.h:515
+#: ../src/extension/internal/filter/color.h:590
msgid "No swap"
msgstr "БДз ĐŸĐ±ĐŒŃ–ĐœŃƒ"
-#: ../src/extension/internal/filter/color.h:516
+#: ../src/extension/internal/filter/color.h:591
msgid "Color and alpha"
msgstr "ĐšĐŸĐ»Ń–Ń€ і α-ĐșĐ°ĐœĐ°Đ»"
-#: ../src/extension/internal/filter/color.h:517
+#: ../src/extension/internal/filter/color.h:592
msgid "Color only"
msgstr "Đ›ĐžŃˆĐ” ĐșĐŸĐ»Ń–Ń€"
-#: ../src/extension/internal/filter/color.h:518
+#: ../src/extension/internal/filter/color.h:593
msgid "Alpha only"
msgstr "Đ›ĐžŃˆĐ” α-ĐșĐ°ĐœĐ°Đ»"
-#: ../src/extension/internal/filter/color.h:522
+#: ../src/extension/internal/filter/color.h:597
msgid "Color 1"
msgstr "ĐšĐŸĐ»Ń–Ń€ 1"
-#: ../src/extension/internal/filter/color.h:525
+#: ../src/extension/internal/filter/color.h:600
msgid "Color 2"
msgstr "ĐšĐŸĐ»Ń–Ń€ 2"
-#: ../src/extension/internal/filter/color.h:535
+#: ../src/extension/internal/filter/color.h:610
msgid "Convert luminance values to a duochrome palette"
msgstr "ĐŸĐ”Ń€Đ”Ń‚ĐČĐŸŃ€ĐžŃ‚Đž Đ·ĐœĐ°Ń‡Đ”ĐœĐœŃ ĐŸŃĐČŃ–Ń‚Đ»Đ”ĐœĐŸŃŃ‚Ń– ĐœĐ° ĐșĐŸĐ»ŃŒĐŸŃ€Đž ĐŽĐČĐŸŃ‚ĐŸĐœĐŸĐČĐŸŃ— палітрО"
-#: ../src/extension/internal/filter/color.h:634
+#: ../src/extension/internal/filter/color.h:709
msgid "Extract Channel"
msgstr "Đ’ĐžĐŽĐŸĐ±ŃƒĐČĐ°ĐœĐœŃ ĐșĐ°ĐœĐ°Đ»Ńƒ"
-#: ../src/extension/internal/filter/color.h:640
+#: ../src/extension/internal/filter/color.h:715
#: ../src/widgets/sp-color-icc-selector.cpp:344
#: ../src/widgets/sp-color-icc-selector.cpp:349
#: ../src/widgets/sp-color-scales.cpp:469
@@ -6736,7 +6783,7 @@ msgstr "Đ’ĐžĐŽĐŸĐ±ŃƒĐČĐ°ĐœĐœŃ ĐșĐ°ĐœĐ°Đ»Ńƒ"
msgid "Cyan"
msgstr "БлаĐșĐžŃ‚ĐœĐžĐč"
-#: ../src/extension/internal/filter/color.h:641
+#: ../src/extension/internal/filter/color.h:716
#: ../src/widgets/sp-color-icc-selector.cpp:345
#: ../src/widgets/sp-color-icc-selector.cpp:350
#: ../src/widgets/sp-color-scales.cpp:472
@@ -6744,7 +6791,7 @@ msgstr "БлаĐșĐžŃ‚ĐœĐžĐč"
msgid "Magenta"
msgstr "Đ‘ŃƒĐ·ĐșĐŸĐČĐžĐč"
-#: ../src/extension/internal/filter/color.h:642
+#: ../src/extension/internal/filter/color.h:717
#: ../src/widgets/sp-color-icc-selector.cpp:346
#: ../src/widgets/sp-color-icc-selector.cpp:351
#: ../src/widgets/sp-color-scales.cpp:475
@@ -6752,27 +6799,27 @@ msgstr "Đ‘ŃƒĐ·ĐșĐŸĐČĐžĐč"
msgid "Yellow"
msgstr "Đ–ĐŸĐČтоĐč"
-#: ../src/extension/internal/filter/color.h:644
+#: ../src/extension/internal/filter/color.h:719
msgid "Background blend mode:"
msgstr "Đ Đ”Đ¶ĐžĐŒ ĐŸĐ±'Ń”ĐŽĐœĐ°ĐœĐœŃ Đ· Ń‚Đ»ĐŸĐŒ:"
-#: ../src/extension/internal/filter/color.h:649
+#: ../src/extension/internal/filter/color.h:724
msgid "Channel to alpha"
msgstr "ĐŸĐ”Ń€Đ”Ń‚ĐČĐŸŃ€ĐžŃ‚Đž ĐșĐ°ĐœĐ°Đ» ĐœĐ° ĐżŃ€ĐŸĐ·ĐŸŃ€ĐžĐč"
-#: ../src/extension/internal/filter/color.h:657
+#: ../src/extension/internal/filter/color.h:732
msgid "Extract color channel as a transparent image"
msgstr "Đ’ĐžĐŽĐŸĐ±ŃƒŃ‚Đž ĐșĐ°ĐœĐ°Đ» ĐșĐŸĐ»ŃŒĐŸŃ€Ńƒ яĐș ĐżŃ€ĐŸĐ·ĐŸŃ€Đ” Đ·ĐŸĐ±Ń€Đ°Đ¶Đ”ĐœĐœŃ"
-#: ../src/extension/internal/filter/color.h:740
+#: ../src/extension/internal/filter/color.h:815
msgid "Fade to Black or White"
msgstr "ĐŸĐ”Ń€Đ”Ń‚ĐČĐŸŃ€Đ”ĐœĐœŃ ĐœĐ° Ń‡ĐŸŃ€ĐœĐžĐč Đ°Đ±ĐŸ білОĐč"
-#: ../src/extension/internal/filter/color.h:743
+#: ../src/extension/internal/filter/color.h:818
msgid "Fade to:"
msgstr "ĐŸĐ”Ń€Đ”Ń‚ĐČĐŸŃ€Đ”ĐœĐœŃ ĐœĐ°:"
-#: ../src/extension/internal/filter/color.h:744
+#: ../src/extension/internal/filter/color.h:819
#: ../src/ui/widget/selected-style.cpp:274
#: ../src/widgets/sp-color-icc-selector.cpp:347
#: ../src/widgets/sp-color-scales.cpp:478
@@ -6780,240 +6827,241 @@ msgstr "ĐŸĐ”Ń€Đ”Ń‚ĐČĐŸŃ€Đ”ĐœĐœŃ ĐœĐ°:"
msgid "Black"
msgstr "Đ§ĐŸŃ€ĐœĐžĐč"
-#: ../src/extension/internal/filter/color.h:745
+#: ../src/extension/internal/filter/color.h:820
#: ../src/ui/widget/selected-style.cpp:270
msgid "White"
msgstr "БілОĐč"
-#: ../src/extension/internal/filter/color.h:754
+#: ../src/extension/internal/filter/color.h:829
msgid "Fade to black or white"
msgstr "ĐŸĐ”Ń€Đ”Ń‚ĐČĐŸŃ€Đ”ĐœĐœŃ ĐœĐ° Ń‡ĐŸŃ€ĐœĐžĐč Đ°Đ±ĐŸ білОĐč"
-#: ../src/extension/internal/filter/color.h:819
+#: ../src/extension/internal/filter/color.h:894
msgid "Greyscale"
msgstr "ГраЮації ŃŃ–Ń€ĐŸĐłĐŸ"
-#: ../src/extension/internal/filter/color.h:825
+#: ../src/extension/internal/filter/color.h:900
#: ../src/extension/internal/filter/paint.h:83
#: ../src/extension/internal/filter/paint.h:239
msgid "Transparent"
msgstr "ĐŸŃ€ĐŸĐ·ĐŸŃ€Ń–ŃŃ‚ŃŒ"
-#: ../src/extension/internal/filter/color.h:833
+#: ../src/extension/internal/filter/color.h:908
msgid "Customize greyscale components"
msgstr "ĐĐ°Đ»Đ°ŃˆŃ‚ŃƒĐČато ĐșĐŸĐŒĐżĐŸĐœĐ”ĐœŃ‚Đž ĐČŃ–ĐŽŃ‚Ń–ĐœĐșіĐČ ŃŃ–Ń€ĐŸĐłĐŸ"
-#: ../src/extension/internal/filter/color.h:905
+#: ../src/extension/internal/filter/color.h:980
#: ../src/ui/widget/selected-style.cpp:266
msgid "Invert"
msgstr "Đ†ĐœĐČĐ”Ń€Ń‚ŃƒĐČато"
-#: ../src/extension/internal/filter/color.h:907
+#: ../src/extension/internal/filter/color.h:982
msgid "Invert channels:"
msgstr "Đ†ĐœĐČĐ”Ń€Ń‚ŃƒĐČĐ°ĐœĐœŃ ĐșĐ°ĐœĐ°Đ»Ń–ĐČ:"
-#: ../src/extension/internal/filter/color.h:908
+#: ../src/extension/internal/filter/color.h:983
msgid "No inversion"
msgstr "БДз Ń–ĐœĐČДрсії"
-#: ../src/extension/internal/filter/color.h:909
+#: ../src/extension/internal/filter/color.h:984
msgid "Red and blue"
msgstr "ЧДрĐČĐŸĐœĐžĐč і ŃĐžĐœŃ–Đč"
-#: ../src/extension/internal/filter/color.h:910
+#: ../src/extension/internal/filter/color.h:985
msgid "Red and green"
msgstr "ЧДрĐČĐŸĐœĐžĐč і Đ·Đ”Đ»Đ”ĐœĐžĐč"
-#: ../src/extension/internal/filter/color.h:911
+#: ../src/extension/internal/filter/color.h:986
msgid "Green and blue"
msgstr "Đ—Đ”Đ»Đ”ĐœĐžĐč і ŃĐžĐœŃ–Đč"
-#: ../src/extension/internal/filter/color.h:913
+#: ../src/extension/internal/filter/color.h:988
msgid "Light transparency"
msgstr "ĐŸŃ€ĐŸĐ·ĐŸŃ€Ń–ŃŃ‚ŃŒ сĐČŃ–Ń‚Đ»ĐŸĐłĐŸ"
-#: ../src/extension/internal/filter/color.h:914
+#: ../src/extension/internal/filter/color.h:989
msgid "Invert hue"
msgstr "Đ†ĐœĐČĐ”Ń€ŃŃ–Ń ĐČŃ–ĐŽŃ‚Ń–ĐœĐșу"
-#: ../src/extension/internal/filter/color.h:915
+#: ../src/extension/internal/filter/color.h:990
msgid "Invert lightness"
msgstr "Đ†ĐœĐČĐ”Ń€Ń‚ŃƒĐČато ĐŸŃĐČŃ–Ń‚Đ»Đ”ĐœŃ–ŃŃ‚ŃŒ"
-#: ../src/extension/internal/filter/color.h:916
+#: ../src/extension/internal/filter/color.h:991
msgid "Invert transparency"
msgstr "Đ†ĐœĐČĐ”Ń€Ń‚ŃƒĐČато ĐżŃ€ĐŸĐ·ĐŸŃ€Ń–ŃŃ‚ŃŒ"
-#: ../src/extension/internal/filter/color.h:924
+#: ../src/extension/internal/filter/color.h:999
msgid "Manage hue, lightness and transparency inversions"
msgstr "ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ Ń–ĐœĐČĐ”Ń€Ń‚ŃƒĐČĐ°ĐœĐœŃĐŒ за ĐČŃ–ĐŽŃ‚Ń–ĐœĐșĐŸĐŒ, ĐŸŃĐČŃ–Ń‚Đ»Đ”ĐœŃ–ŃŃ‚ŃŽ та ĐżŃ€ĐŸĐ·ĐŸŃ€Ń–ŃŃ‚ŃŽ"
-#: ../src/extension/internal/filter/color.h:1042
+#: ../src/extension/internal/filter/color.h:1117
msgid "Lights"
msgstr "ОсĐČŃ–Ń‚Đ»Đ”ĐœĐœŃ"
-#: ../src/extension/internal/filter/color.h:1043
+#: ../src/extension/internal/filter/color.h:1118
msgid "Shadows"
msgstr "ĐąŃ–ĐœŃ–"
-#: ../src/extension/internal/filter/color.h:1044
+#: ../src/extension/internal/filter/color.h:1119
#: ../src/extension/internal/filter/paint.h:356 ../src/filter-enums.cpp:33
#: ../src/live_effects/effect.cpp:110
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1047
-#: ../src/widgets/gradient-toolbar.cpp:1159
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1048
+#: ../src/widgets/gradient-toolbar.cpp:1162
msgid "Offset"
msgstr "Đ—ĐŒŃ–Ń‰Đ”ĐœĐœŃ"
-#: ../src/extension/internal/filter/color.h:1052
+#: ../src/extension/internal/filter/color.h:1127
msgid "Modify lights and shadows separately"
msgstr "Đ—ĐŒŃ–ĐœŃŽĐČато ĐŸŃĐČŃ–Ń‚Đ»Đ”ĐœĐœŃ і Ń‚Ń–ĐœŃ– ĐŸĐșŃ€Đ”ĐŒĐŸ"
-#: ../src/extension/internal/filter/color.h:1111
+#: ../src/extension/internal/filter/color.h:1186
msgid "Lightness-Contrast"
msgstr "ЯсĐșраĐČість-ĐšĐŸĐœŃ‚Ń€Đ°ŃŃ‚ĐœŃ–ŃŃ‚ŃŒ"
-#: ../src/extension/internal/filter/color.h:1122
+#: ../src/extension/internal/filter/color.h:1197
msgid "Modify lightness and contrast separately"
msgstr "Đ—ĐŒŃ–ĐœŃŽĐČато ĐŸŃĐČŃ–Ń‚Đ»Đ”ĐœĐœŃ і ĐșĐŸĐœŃ‚Ń€Đ°ŃŃ‚ĐœŃ–ŃŃ‚ŃŒ ĐŸĐșŃ€Đ”ĐŒĐŸ"
-#: ../src/extension/internal/filter/color.h:1190
+#: ../src/extension/internal/filter/color.h:1265
msgid "Nudge RGB"
msgstr "ĐŸĐŸŃˆŃ‚ĐŸĐČх RGB"
-#: ../src/extension/internal/filter/color.h:1194
+#: ../src/extension/internal/filter/color.h:1269
msgid "Red offset"
msgstr "Đ—ĐŒŃ–Ń‰Đ”ĐœĐœŃ чДрĐČĐŸĐœĐŸĐłĐŸ"
-#: ../src/extension/internal/filter/color.h:1195
-#: ../src/extension/internal/filter/color.h:1198
-#: ../src/extension/internal/filter/color.h:1201
-#: ../src/extension/internal/filter/color.h:1307
-#: ../src/extension/internal/filter/color.h:1310
-#: ../src/extension/internal/filter/color.h:1313
+#: ../src/extension/internal/filter/color.h:1270
+#: ../src/extension/internal/filter/color.h:1273
+#: ../src/extension/internal/filter/color.h:1276
+#: ../src/extension/internal/filter/color.h:1382
+#: ../src/extension/internal/filter/color.h:1385
+#: ../src/extension/internal/filter/color.h:1388
#: ../src/ui/dialog/input.cpp:1616 ../src/ui/dialog/layers.cpp:917
+#: ../src/ui/widget/page-sizer.cpp:247
msgid "X"
msgstr "X"
-#: ../src/extension/internal/filter/color.h:1196
-#: ../src/extension/internal/filter/color.h:1199
-#: ../src/extension/internal/filter/color.h:1202
-#: ../src/extension/internal/filter/color.h:1308
-#: ../src/extension/internal/filter/color.h:1311
-#: ../src/extension/internal/filter/color.h:1314
-#: ../src/ui/dialog/input.cpp:1616
+#: ../src/extension/internal/filter/color.h:1271
+#: ../src/extension/internal/filter/color.h:1274
+#: ../src/extension/internal/filter/color.h:1277
+#: ../src/extension/internal/filter/color.h:1383
+#: ../src/extension/internal/filter/color.h:1386
+#: ../src/extension/internal/filter/color.h:1389
+#: ../src/ui/dialog/input.cpp:1616 ../src/ui/widget/page-sizer.cpp:248
msgid "Y"
msgstr "Y"
-#: ../src/extension/internal/filter/color.h:1197
+#: ../src/extension/internal/filter/color.h:1272
msgid "Green offset"
msgstr "Đ—ĐŒŃ–Ń‰Đ”ĐœĐœŃ Đ·Đ”Đ»Đ”ĐœĐŸĐłĐŸ"
-#: ../src/extension/internal/filter/color.h:1200
+#: ../src/extension/internal/filter/color.h:1275
msgid "Blue offset"
msgstr "Đ—ĐŒŃ–Ń‰Đ”ĐœĐœŃ ŃĐžĐœŃŒĐŸĐłĐŸ"
-#: ../src/extension/internal/filter/color.h:1215
+#: ../src/extension/internal/filter/color.h:1290
msgid ""
"Nudge RGB channels separately and blend them to different types of "
"backgrounds"
msgstr "ĐŸĐ”Ń€Đ”ŃŃƒĐœŃƒŃ‚Đž ĐŸĐșŃ€Đ”ĐŒĐŸ ĐČсі ĐșĐ°ĐœĐ°Đ»Đž RGB і Đ·ĐŒŃ–ŃˆĐ°Ń‚Đž їх Đ· Ń€Ń–Đ·ĐœĐžĐŒĐž Ń‚ĐžĐżĐ°ĐŒĐž тла"
-#: ../src/extension/internal/filter/color.h:1302
+#: ../src/extension/internal/filter/color.h:1377
msgid "Nudge CMY"
msgstr "ĐŸĐŸŃˆŃ‚ĐŸĐČх CMY"
-#: ../src/extension/internal/filter/color.h:1306
+#: ../src/extension/internal/filter/color.h:1381
msgid "Cyan offset"
msgstr "Đ—ĐŒŃ–Ń‰Đ”ĐœĐœŃ блаĐșĐžŃ‚ĐœĐŸĐłĐŸ"
-#: ../src/extension/internal/filter/color.h:1309
+#: ../src/extension/internal/filter/color.h:1384
msgid "Magenta offset"
msgstr "Đ—ĐŒŃ–Ń‰Đ”ĐœĐœŃ бузĐșĐŸĐČĐŸĐłĐŸ"
-#: ../src/extension/internal/filter/color.h:1312
+#: ../src/extension/internal/filter/color.h:1387
msgid "Yellow offset"
msgstr "Đ—ĐŒŃ–Ń‰Đ”ĐœĐœŃ Đ¶ĐŸĐČŃ‚ĐŸĐłĐŸ"
-#: ../src/extension/internal/filter/color.h:1327
+#: ../src/extension/internal/filter/color.h:1402
msgid ""
"Nudge CMY channels separately and blend them to different types of "
"backgrounds"
msgstr "ĐŸĐ”Ń€Đ”ŃŃƒĐœŃƒŃ‚Đž ĐŸĐșŃ€Đ”ĐŒĐŸ ĐČсі ĐșĐ°ĐœĐ°Đ»Đž CMY і Đ·ĐŒŃ–ŃˆĐ°Ń‚Đž їх Đ· Ń€Ń–Đ·ĐœĐžĐŒĐž Ń‚ĐžĐżĐ°ĐŒĐž тла"
-#: ../src/extension/internal/filter/color.h:1408
+#: ../src/extension/internal/filter/color.h:1483
msgid "Quadritone fantasy"
msgstr "Đ€Đ°ĐœŃ‚Đ°Đ·Ń–Ń Đ· Ń‡ĐŸŃ‚ĐžŃ€ŃŒĐŸŃ… Ń‚ĐŸĐœŃ–ĐČ"
-#: ../src/extension/internal/filter/color.h:1410
+#: ../src/extension/internal/filter/color.h:1485
msgid "Hue distribution (°)"
msgstr "Đ ĐŸĐ·ĐżĐŸĐŽŃ–Đ» ĐČŃ–ĐŽŃ‚Ń–ĐœĐșу (у °)"
-#: ../src/extension/internal/filter/color.h:1411
+#: ../src/extension/internal/filter/color.h:1486
#: ../share/extensions/svgcalendar.inx.h:19
msgid "Colors"
msgstr "ĐšĐŸĐ»ŃŒĐŸŃ€Đž"
-#: ../src/extension/internal/filter/color.h:1432
+#: ../src/extension/internal/filter/color.h:1507
msgid "Replace hue by two colors"
msgstr "Đ—Đ°ĐŒŃ–ĐœĐžŃ‚Đž ĐČŃ–ĐŽŃ‚Ń–ĐœĐŸĐș ĐœĐ° ĐŽĐČа ĐșĐŸĐ»ŃŒĐŸŃ€Đž"
-#: ../src/extension/internal/filter/color.h:1496
+#: ../src/extension/internal/filter/color.h:1571
msgid "Hue rotation (°)"
msgstr "ĐžĐ±Đ”Ń€Ń‚Đ°ĐœĐœŃ ĐČŃ–ĐŽŃ‚Ń–ĐœĐșу (у °)"
-#: ../src/extension/internal/filter/color.h:1499
+#: ../src/extension/internal/filter/color.h:1574
msgid "Moonarize"
msgstr "ĐœŃ–ŃŃŃ†Đ”Đ·Đ°Ń†Ń–Ń"
-#: ../src/extension/internal/filter/color.h:1508
+#: ../src/extension/internal/filter/color.h:1583
msgid "Classic photographic solarization effect"
msgstr "ĐšĐ»Đ°ŃĐžŃ‡ĐœĐžĐč Ń„ĐŸŃ‚ĐŸĐłŃ€Đ°Ń„Ń–Ń‡ĐœĐžĐč ДфДĐșт ĐČĐžĐłĐŸŃ€Đ°ĐœĐœŃ"
-#: ../src/extension/internal/filter/color.h:1581
+#: ../src/extension/internal/filter/color.h:1656
msgid "Tritone"
msgstr "ĐąŃ€ĐžŃ‚ĐŸĐœ"
-#: ../src/extension/internal/filter/color.h:1587
+#: ../src/extension/internal/filter/color.h:1662
msgid "Enhance hue"
msgstr "ĐŸĐŸŃĐžĐ»Đ”ĐœĐœŃ ĐČŃ–ĐŽŃ‚Ń–ĐœĐșу"
-#: ../src/extension/internal/filter/color.h:1588
+#: ../src/extension/internal/filter/color.h:1663
msgid "Phosphorescence"
msgstr "Đ€ĐŸŃŃ„ĐŸŃ€Đ”ŃŃ†Đ”ĐœŃ†Ń–Ń"
-#: ../src/extension/internal/filter/color.h:1589
+#: ../src/extension/internal/filter/color.h:1664
msgid "Colored nights"
msgstr "ĐšĐŸĐ»ŃŒĐŸŃ€ĐŸĐČі ĐœĐŸŃ‡Ń–"
-#: ../src/extension/internal/filter/color.h:1590
+#: ../src/extension/internal/filter/color.h:1665
msgid "Hue to background"
msgstr "Đ’Ń–ĐŽŃ‚Ń–ĐœĐŸĐș у Ń‚Đ»ĐŸ"
-#: ../src/extension/internal/filter/color.h:1592
+#: ../src/extension/internal/filter/color.h:1667
msgid "Global blend:"
msgstr "Đ—Đ°ĐłĐ°Đ»ŃŒĐœĐ” Đ·ĐŒŃ–ŃˆŃƒĐČĐ°ĐœĐœŃ:"
-#: ../src/extension/internal/filter/color.h:1598
+#: ../src/extension/internal/filter/color.h:1673
msgid "Glow"
msgstr "ĐŃ–ĐŒĐ±"
-#: ../src/extension/internal/filter/color.h:1599
+#: ../src/extension/internal/filter/color.h:1674
msgid "Glow blend:"
msgstr "Đ—ĐŒŃ–ŃˆŃƒĐČĐ°ĐœĐœŃ ĐœŃ–ĐŒĐ±Đ°:"
-#: ../src/extension/internal/filter/color.h:1604
+#: ../src/extension/internal/filter/color.h:1679
msgid "Local light"
msgstr "Đ›ĐŸĐșĐ°Đ»ŃŒĐœĐ” ĐŸŃĐČŃ–Ń‚Đ»Đ”ĐœĐœŃ"
-#: ../src/extension/internal/filter/color.h:1605
+#: ../src/extension/internal/filter/color.h:1680
msgid "Global light"
msgstr "Đ—Đ°ĐłĐ°Đ»ŃŒĐœĐ” ĐŸŃĐČŃ–Ń‚Đ»Đ”ĐœĐœŃ"
-#: ../src/extension/internal/filter/color.h:1608
+#: ../src/extension/internal/filter/color.h:1683
msgid "Hue distribution (°):"
msgstr "Đ ĐŸĐ·ĐżĐŸĐŽŃ–Đ» ĐČŃ–ĐŽŃ‚Ń–ĐœĐșу (у °):"
-#: ../src/extension/internal/filter/color.h:1619
+#: ../src/extension/internal/filter/color.h:1694
msgid ""
"Create a custom tritone palette with additional glow, blend modes and hue "
"moving"
@@ -7188,8 +7236,8 @@ msgstr "ВіЮĐșрОтД"
#: ../src/extension/internal/filter/morphology.h:65
#: ../src/libgdl/gdl-dock-placeholder.c:167 ../src/libgdl/gdl-dock.c:191
-#: ../src/widgets/rect-toolbar.cpp:317 ../src/widgets/spray-toolbar.cpp:116
-#: ../src/widgets/tweak-toolbar.cpp:128
+#: ../src/ui/widget/page-sizer.cpp:249 ../src/widgets/rect-toolbar.cpp:317
+#: ../src/widgets/spray-toolbar.cpp:116 ../src/widgets/tweak-toolbar.cpp:128
#: ../share/extensions/interp_att_g.inx.h:10
msgid "Width"
msgstr "ĐšĐžŃ€ĐžĐœĐ°"
@@ -7235,7 +7283,7 @@ msgstr "ВоĐșĐ»ŃŽŃ‡ĐœĐ” АБО (XOR)"
#: ../src/extension/internal/filter/morphology.h:179
#: ../src/ui/dialog/layer-properties.cpp:185
-#: ../src/ui/dialog/lpe-powerstroke-properties.cpp:59
+#: ../src/ui/dialog/lpe-powerstroke-properties.cpp:55
msgid "Position:"
msgstr "Đ ĐŸĐ·ĐŒŃ–Ń‰Đ”ĐœĐœŃ:"
@@ -7425,8 +7473,8 @@ msgstr ""
"ĐłĐŸŃ€ĐžĐ·ĐŸĐœŃ‚Đ°Đ»ŃŒĐœĐžŃ… Đ»Ń–ĐœŃ–Đč"
#: ../src/extension/internal/filter/paint.h:331
-#: ../src/ui/dialog/align-and-distribute.cpp:1003
-#: ../src/widgets/desktop-widget.cpp:1996
+#: ../src/ui/dialog/align-and-distribute.cpp:999
+#: ../src/widgets/desktop-widget.cpp:1998
msgid "Drawing"
msgstr "ĐœĐ°Đ»ŃŽĐœĐŸĐș"
@@ -7435,7 +7483,7 @@ msgstr "ĐœĐ°Đ»ŃŽĐœĐŸĐș"
#: ../src/extension/internal/filter/paint.h:496
#: ../src/extension/internal/filter/paint.h:590
#: ../src/extension/internal/filter/paint.h:976
-#: ../src/live_effects/effect.cpp:151 ../src/splivarot.cpp:2212
+#: ../src/live_effects/effect.cpp:151 ../src/splivarot.cpp:2201
msgid "Simplify"
msgstr "ĐĄĐżŃ€ĐŸŃŃ‚ĐžŃ‚Đž"
@@ -7717,7 +7765,7 @@ msgid "Background"
msgstr "ĐąĐ»ĐŸ"
#: ../src/extension/internal/filter/transparency.h:59
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2839
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2855
#: ../src/ui/dialog/input.cpp:1088 ../src/widgets/eraser-toolbar.cpp:106
#: ../src/widgets/pencil-toolbar.cpp:132 ../src/widgets/spray-toolbar.cpp:186
#: ../src/widgets/tweak-toolbar.cpp:254 ../share/extensions/extrude.inx.h:2
@@ -7877,31 +7925,31 @@ msgstr "Đ“Ń€Đ°ĐŽŃ–Ń”ĐœŃ‚ GIMP (*.ggr)"
msgid "Gradients used in GIMP"
msgstr "Đ“Ń€Đ°ĐŽŃ–Ń”ĐœŃ‚Đž, Ń‰ĐŸ ĐČĐžĐșĐŸŃ€ĐžŃŃ‚ĐŸĐČуються у GIMP"
-#: ../src/extension/internal/grid.cpp:212 ../src/ui/widget/panel.cpp:118
+#: ../src/extension/internal/grid.cpp:205 ../src/ui/widget/panel.cpp:114
msgid "Grid"
msgstr "СітĐșа"
-#: ../src/extension/internal/grid.cpp:214
+#: ../src/extension/internal/grid.cpp:207
msgid "Line Width:"
msgstr "ĐąĐŸĐČŃ‰ĐžĐœĐ° Đ»Ń–ĐœŃ–Đč:"
-#: ../src/extension/internal/grid.cpp:215
+#: ../src/extension/internal/grid.cpp:208
msgid "Horizontal Spacing:"
msgstr "Đ“ĐŸŃ€ĐžĐ·ĐŸĐœŃ‚Đ°Đ»ŃŒĐœĐžĐč Ń–ĐœŃ‚Đ”Ń€ĐČал:"
-#: ../src/extension/internal/grid.cpp:216
+#: ../src/extension/internal/grid.cpp:209
msgid "Vertical Spacing:"
msgstr "ВДртОĐșĐ°Đ»ŃŒĐœĐžĐč Ń–ĐœŃ‚Đ”Ń€ĐČал:"
-#: ../src/extension/internal/grid.cpp:217
+#: ../src/extension/internal/grid.cpp:210
msgid "Horizontal Offset:"
msgstr "Đ“ĐŸŃ€ĐžĐ·ĐŸĐœŃ‚Đ°Đ»ŃŒĐœĐžĐč зсуĐČ:"
-#: ../src/extension/internal/grid.cpp:218
+#: ../src/extension/internal/grid.cpp:211
msgid "Vertical Offset:"
msgstr "ВДртОĐșĐ°Đ»ŃŒĐœĐžĐč зсуĐČ:"
-#: ../src/extension/internal/grid.cpp:222
+#: ../src/extension/internal/grid.cpp:215
#: ../src/ui/dialog/inkscape-preferences.cpp:1477
#: ../share/extensions/draw_from_triangle.inx.h:58
#: ../share/extensions/eqtexsvg.inx.h:4
@@ -7932,14 +7980,14 @@ msgstr "ВДртОĐșĐ°Đ»ŃŒĐœĐžĐč зсуĐČ:"
msgid "Render"
msgstr "ВіЮтĐČĐŸŃ€Đ”ĐœĐœŃ"
-#: ../src/extension/internal/grid.cpp:223
+#: ../src/extension/internal/grid.cpp:216
#: ../src/ui/dialog/document-properties.cpp:162
#: ../src/ui/dialog/inkscape-preferences.cpp:787
-#: ../src/widgets/toolbox.cpp:1827
+#: ../src/widgets/toolbox.cpp:1823
msgid "Grids"
msgstr "СітĐșĐž"
-#: ../src/extension/internal/grid.cpp:226
+#: ../src/extension/internal/grid.cpp:219
msgid "Draw a path which is a grid"
msgstr "ĐĐ°ĐŒĐ°Đ»ŃŽĐČато ĐșĐŸĐœŃ‚ŃƒŃ€ у Ń„ĐŸŃ€ĐŒŃ– сітĐșĐž"
@@ -8228,33 +8276,33 @@ msgstr "Đ†ĐŒĐżĐŸŃ€Ń‚ Đ· VSDX"
msgid "Microsoft Visio 2013 drawing (*.vsdx)"
msgstr "ĐœĐ°Đ»ŃŽĐœĐŸĐș Microsoft Visio 2013 (*.vsdx)"
-#: ../src/extension/internal/wmf-inout.cpp:3136
+#: ../src/extension/internal/wmf-inout.cpp:3158
msgid "WMF Input"
msgstr "Đ†ĐŒĐżĐŸŃ€Ń‚ WMF"
-#: ../src/extension/internal/wmf-inout.cpp:3141
+#: ../src/extension/internal/wmf-inout.cpp:3163
msgid "Windows Metafiles (*.wmf)"
msgstr "ĐœĐ”Ń‚Đ°Ń„Đ°ĐčĐ» Windows (*.wmf)"
-#: ../src/extension/internal/wmf-inout.cpp:3142
+#: ../src/extension/internal/wmf-inout.cpp:3164
msgid "Windows Metafiles"
msgstr "ĐœĐ”Ń‚Đ°Ń„Đ°ĐčĐ» Windows"
-#: ../src/extension/internal/wmf-inout.cpp:3150
+#: ../src/extension/internal/wmf-inout.cpp:3172
msgid "WMF Output"
msgstr "ЕĐșŃĐżĐŸŃ€Ń‚ ĐŽĐŸ WMF"
-#: ../src/extension/internal/wmf-inout.cpp:3160
+#: ../src/extension/internal/wmf-inout.cpp:3182
msgid "Map all fill patterns to standard WMF hatches"
msgstr "ĐŸĐŸĐČâ€™ŃĐ·Đ°Ń‚Đž усі Đ·Đ°ĐżĐŸĐČĐœĐ”ĐœĐœŃ ĐČŃ–Đ·Đ”Ń€ŃƒĐœĐșĐ°ĐŒĐž Đ·Ń– ŃŃ‚Đ°ĐœĐŽĐ°Ń€Ń‚ĐœĐžĐŒĐž ŃˆĐ°Đ±Đ»ĐŸĐœĐ°ĐŒĐž WMF"
-#: ../src/extension/internal/wmf-inout.cpp:3164
+#: ../src/extension/internal/wmf-inout.cpp:3186
#: ../share/extensions/wmf_input.inx.h:2
#: ../share/extensions/wmf_output.inx.h:2
msgid "Windows Metafile (*.wmf)"
msgstr "ĐœĐ”Ń‚Đ°Ń„Đ°ĐčĐ» Windows (*.wmf)"
-#: ../src/extension/internal/wmf-inout.cpp:3165
+#: ../src/extension/internal/wmf-inout.cpp:3187
msgid "Windows Metafile"
msgstr "ĐœĐ”Ń‚Đ°Ń„Đ°ĐčĐ» Windows (WMF)"
@@ -8290,7 +8338,7 @@ msgstr "Ń‚ĐžĐżĐŸĐČĐžĐč.svg"
msgid "Broken links have been changed to point to existing files."
msgstr "ĐŸĐŸĐŒĐžĐ»ĐșĐŸĐČі ĐżĐŸŃĐžĐ»Đ°ĐœĐœŃ Đ·ĐŒŃ–ĐœĐ”ĐœĐŸ таĐș, Ń‰ĐŸĐ± ĐČĐŸĐœĐž ĐČĐșазуĐČалО ĐœĐ° ĐżĐŸŃ‚ĐŸŃ‡ĐœŃ– фаĐčлО."
-#: ../src/file.cpp:339 ../src/file.cpp:1255
+#: ../src/file.cpp:339 ../src/file.cpp:1252
#, c-format
msgid "Failed to load the requested file %s"
msgstr "ĐĐ” ĐČЮається заĐČĐ°ĐœŃ‚Đ°Đ¶ĐžŃ‚Đž ĐżĐŸŃ‚Ń€Ń–Đ±ĐœĐžĐč фаĐčĐ» %s"
@@ -8365,7 +8413,7 @@ msgid "Document saved."
msgstr "Đ”ĐŸĐșŃƒĐŒĐ”ĐœŃ‚ Đ·Đ±Đ”Ń€Đ”Đ¶Đ”ĐœĐŸ."
#. We are saving for the first time; create a unique default filename
-#: ../src/file.cpp:866 ../src/file.cpp:1414
+#: ../src/file.cpp:866 ../src/file.cpp:1411
msgid "drawing"
msgstr "Ń€ĐžŃŃƒĐœĐŸĐș"
@@ -8389,20 +8437,20 @@ msgstr "ЀаĐčĐ» ĐœĐ” Đ±ŃƒĐ»ĐŸ Đ·ĐŒŃ–ĐœĐ”ĐœĐŸ. Đ—Đ±Đ”Ń€Đ”Đ¶Đ”ĐœĐœŃ ĐœĐ”ĐżĐŸŃ‚Ń€
msgid "Saving document..."
msgstr "Đ—Đ±Đ”Ń€Đ”Đ¶Đ”ĐœĐœŃ ĐŽĐŸĐșŃƒĐŒĐ”ĐœŃ‚Đ°â€Š"
-#: ../src/file.cpp:1252 ../src/ui/dialog/inkscape-preferences.cpp:1450
+#: ../src/file.cpp:1249 ../src/ui/dialog/inkscape-preferences.cpp:1450
#: ../src/ui/dialog/ocaldialogs.cpp:1244
msgid "Import"
msgstr "Đ†ĐŒĐżĐŸŃ€Ń‚"
-#: ../src/file.cpp:1302
+#: ../src/file.cpp:1299
msgid "Select file to import"
msgstr "Đ’ĐžĐ±Đ”Ń€Ń–Ń‚ŃŒ фаĐčĐ» ĐŽĐ»Ń Ń–ĐŒĐżĐŸŃ€Ń‚Ńƒ"
-#: ../src/file.cpp:1435
+#: ../src/file.cpp:1432
msgid "Select file to export to"
msgstr "ĐžĐ±Đ”Ń€Ń–Ń‚ŃŒ фаĐčĐ» ĐŽĐ»Ń Đ”ĐșŃĐżĐŸŃ€Ń‚Ńƒ"
-#: ../src/file.cpp:1688
+#: ../src/file.cpp:1685
msgid "Import Clip Art"
msgstr "Đ†ĐŒĐżĐŸŃ€Ń‚ŃƒĐČĐ°ĐœĐœŃ ŃˆĐ°Đ±Đ»ĐŸĐœŃ–ĐČ"
@@ -8495,7 +8543,7 @@ msgstr "Đ Ń–Đ·ĐœĐžŃ†Ń"
msgid "Exclusion"
msgstr "ВоĐșĐ»ŃŽŃ‡Đ”ĐœĐœŃ"
-#: ../src/filter-enums.cpp:65 ../src/ui/tools/flood-tool.cpp:186
+#: ../src/filter-enums.cpp:65 ../src/ui/tools/flood-tool.cpp:94
#: ../src/widgets/sp-color-icc-selector.cpp:336
#: ../src/widgets/sp-color-icc-selector.cpp:340
#: ../src/widgets/sp-color-scales.cpp:441
@@ -8567,7 +8615,7 @@ msgstr "ĐĄĐČŃ–Ń‚Đ»Ń–ŃˆĐ”"
msgid "Arithmetic"
msgstr "ĐŃ€ĐžŃ„ĐŒĐ”Ń‚ĐžŃ‡ĐœĐžĐč"
-#: ../src/filter-enums.cpp:120 ../src/selection-chemistry.cpp:546
+#: ../src/filter-enums.cpp:120 ../src/selection-chemistry.cpp:545
msgid "Duplicate"
msgstr "Đ”ŃƒĐ±Đ»ŃŽĐČато"
@@ -8604,15 +8652,15 @@ msgstr "ĐąĐŸŃ‡ĐșĐŸĐČĐ” ĐŽĐ¶Đ”Ń€Đ”Đ»ĐŸ"
msgid "Spot Light"
msgstr "ĐŸŃ€ĐŸĐ¶Đ”ĐșŃ‚ĐŸŃ€"
-#: ../src/gradient-chemistry.cpp:1579
+#: ../src/gradient-chemistry.cpp:1580
msgid "Invert gradient colors"
msgstr "Đ†ĐœĐČĐ”Ń€Ń‚ŃƒĐČато ĐșĐŸĐ»ŃŒĐŸŃ€Đž ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚Đ°"
-#: ../src/gradient-chemistry.cpp:1605
+#: ../src/gradient-chemistry.cpp:1607
msgid "Reverse gradient"
msgstr "ĐžĐ±Đ”Ń€ĐœŃƒŃ‚Đž ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚"
-#: ../src/gradient-chemistry.cpp:1619 ../src/widgets/gradient-selector.cpp:222
+#: ../src/gradient-chemistry.cpp:1621 ../src/widgets/gradient-selector.cpp:222
msgid "Delete swatch"
msgstr "Đ’ĐžĐ»ŃƒŃ‡ĐžŃ‚Đž Đ·Ń€Đ°Đ·ĐŸĐș"
@@ -8673,7 +8721,7 @@ msgstr "Об'Ń”ĐŽĐœĐ°ĐœĐœŃ ĐČусіĐČ ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚Đ°"
msgid "Move gradient handle"
msgstr "ĐŸĐ”Ń€Đ”ĐŒŃ–ŃŃ‚ĐžŃ‚Đž ĐČус ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚Đ°"
-#: ../src/gradient-drag.cpp:1164 ../src/widgets/gradient-vector.cpp:827
+#: ../src/gradient-drag.cpp:1164 ../src/widgets/gradient-vector.cpp:828
msgid "Delete gradient stop"
msgstr "Đ’ĐžĐ»ŃƒŃ‡ĐžŃ‚Đž ĐŸĐżĐŸŃ€ĐœŃƒ Ń‚ĐŸŃ‡Đșу ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚Đ°"
@@ -8725,67 +8773,67 @@ msgstr[2] ""
"ĐąĐŸŃ‡Đșа ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚Đ° ŃĐżŃ–Đ»ŃŒĐœĐ° ĐŽĐ»Ń <b>%d</b> ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚Ń–ĐČ; ĐŽĐ»Ń ĐČŃ–ĐŽĐŸĐșŃ€Đ”ĐŒĐ»Đ”ĐœĐœŃ "
"ĐżĐ”Ń€Đ”Ń‚ŃĐłŃƒĐčтД Đ· <b>Shift</b>"
-#: ../src/gradient-drag.cpp:2378
+#: ../src/gradient-drag.cpp:2379
msgid "Move gradient handle(s)"
msgstr "ĐŸĐ”Ń€Đ”ĐŒŃ–ŃŃ‚ĐžŃ‚Đž ĐČус(а) ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚Đ°"
-#: ../src/gradient-drag.cpp:2414
+#: ../src/gradient-drag.cpp:2415
msgid "Move gradient mid stop(s)"
msgstr "ĐŸĐ”Ń€Đ”ĐŒŃ–ŃŃ‚ĐžŃ‚Đž ĐŸĐżĐŸŃ€ĐœŃ– Ń‚ĐŸŃ‡ĐșĐž ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚Đ°"
-#: ../src/gradient-drag.cpp:2703
+#: ../src/gradient-drag.cpp:2704
msgid "Delete gradient stop(s)"
msgstr "Đ’ĐžĐ»ŃƒŃ‡ĐžŃ‚Đž ĐŸĐżĐŸŃ€ĐœŃ– Ń‚ĐŸŃ‡ĐșĐž ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚Đ°"
-#: ../src/inkscape.cpp:246
+#: ../src/inkscape.cpp:242
msgid "Autosave failed! Cannot create directory %1."
msgstr ""
"ĐĄĐżŃ€ĐŸĐ±Đ° аĐČŃ‚ĐŸĐŒĐ°Ń‚ĐžŃ‡ĐœĐŸĐłĐŸ Đ·Đ±Đ”Ń€Đ”Đ¶Đ”ĐœĐœŃ Đ·Đ°Đ·ĐœĐ°Đ»Đ° ĐœĐ”ĐČЮачі! ĐĐ” ĐČĐŽĐ°Đ»ĐŸŃŃ стĐČĐŸŃ€ĐžŃ‚Đž ĐșĐ°Ń‚Đ°Đ»ĐŸĐł "
"%1."
-#: ../src/inkscape.cpp:255
+#: ../src/inkscape.cpp:251
msgid "Autosave failed! Cannot open directory %1."
msgstr ""
"ĐĄĐżŃ€ĐŸĐ±Đ° аĐČŃ‚ĐŸĐŒĐ°Ń‚ĐžŃ‡ĐœĐŸĐłĐŸ Đ·Đ±Đ”Ń€Đ”Đ¶Đ”ĐœĐœŃ Đ·Đ°Đ·ĐœĐ°Đ»Đ° ĐœĐ”ĐČЮачі! ĐĐ” ĐČĐŽĐ°Đ»ĐŸŃŃ ĐČіЮĐșрото ĐșĐ°Ń‚Đ°Đ»ĐŸĐł "
"%1."
-#: ../src/inkscape.cpp:271
+#: ../src/inkscape.cpp:267
msgid "Autosaving documents..."
msgstr "АĐČŃ‚ĐŸĐ·Đ±Đ”Ń€Đ”Đ¶Đ”ĐœĐœŃ ĐŽĐŸĐșŃƒĐŒĐ”ĐœŃ‚Ń–ĐČ
"
-#: ../src/inkscape.cpp:339
+#: ../src/inkscape.cpp:335
msgid "Autosave failed! Could not find inkscape extension to save document."
msgstr ""
"ĐĄĐżŃ€ĐŸĐ±Đ° аĐČŃ‚ĐŸĐŒĐ°Ń‚ĐžŃ‡ĐœĐŸĐłĐŸ Đ·Đ±Đ”Ń€Đ”Đ¶Đ”ĐœĐœŃ Đ·Đ°Đ·ĐœĐ°Đ»Đ° ĐœĐ”ĐČЮачі! ĐĐ” ĐČĐŽĐ°Đ»ĐŸŃŃ Đ·ĐœĐ°Đčто ĐŽĐŸĐŽĐ°Ń‚ĐŸĐș "
"inkscape ĐŽĐ»Ń Đ·Đ±Đ”Ń€Ń–ĐłĐ°ĐœĐœŃ ĐŽĐŸĐșŃƒĐŒĐ”ĐœŃ‚Đ°."
-#: ../src/inkscape.cpp:342 ../src/inkscape.cpp:349
+#: ../src/inkscape.cpp:338 ../src/inkscape.cpp:345
#, c-format
msgid "Autosave failed! File %s could not be saved."
msgstr ""
"ĐĄĐżŃ€ĐŸĐ±Đ° аĐČŃ‚ĐŸĐŒĐ°Ń‚ĐžŃ‡ĐœĐŸĐłĐŸ Đ·Đ±Đ”Ń€Ń–ĐłĐ°ĐœĐœŃ Đ·Đ°Đ·ĐœĐ°Đ»Đ° ĐœĐ”ĐČЮачі! ЀаĐčĐ» %s ĐœĐ”ĐŒĐŸĐ¶Đ»ĐžĐČĐŸ збДрДгтО."
-#: ../src/inkscape.cpp:364
+#: ../src/inkscape.cpp:360
msgid "Autosave complete."
msgstr "АĐČŃ‚ĐŸĐŒĐ°Ń‚ĐžŃ‡ĐœĐ” Đ·Đ±Đ”Ń€Đ”Đ¶Đ”ĐœĐœŃ заĐČĐ”Ń€ŃˆĐ”ĐœĐŸ."
-#: ../src/inkscape.cpp:622
+#: ../src/inkscape.cpp:618
msgid "Untitled document"
msgstr "БДз ĐœĐ°Đ·ĐČĐž"
#. Show nice dialog box
-#: ../src/inkscape.cpp:654
+#: ../src/inkscape.cpp:650
msgid "Inkscape encountered an internal error and will close now.\n"
msgstr "Đ’ĐœŃƒŃ‚Ń€Ń–ŃˆĐœŃ ĐżĐŸĐŒĐžĐ»Đșа. Зараз Ń€ĐŸĐ±ĐŸŃ‚Ńƒ Inkscape буЎД заĐČĐ”Ń€ŃˆĐ”ĐœĐŸ.\n"
-#: ../src/inkscape.cpp:655
+#: ../src/inkscape.cpp:651
msgid ""
"Automatic backups of unsaved documents were done to the following "
"locations:\n"
msgstr ""
"ВоĐșĐŸĐœĐ°ĐœĐŸ аĐČŃ‚ĐŸĐŒĐ°Ń‚ĐžŃ‡ĐœĐ” Đ·Đ±Đ”Ń€Đ”Đ¶Đ”ĐœĐœŃ рДзДрĐČĐœĐžŃ… ĐșĐŸĐżŃ–Đč ĐœĐ”Đ·Đ±Đ”Ń€Đ”Đ¶Đ”ĐœĐžŃ… ĐŽĐŸĐșŃƒĐŒĐ”ĐœŃ‚Ń–ĐČ:\n"
-#: ../src/inkscape.cpp:656
+#: ../src/inkscape.cpp:652
msgid "Automatic backup of the following documents failed:\n"
msgstr "ĐĐ” ĐČЮається стĐČĐŸŃ€ĐžŃ‚Đž рДзДрĐČĐœŃƒ ĐșĐŸĐżŃ–ŃŽ таĐșĐŸĐłĐŸ ĐŽĐŸĐșŃƒĐŒĐ”ĐœŃ‚Đ°:\n"
@@ -8793,26 +8841,26 @@ msgstr "ĐĐ” ĐČЮається стĐČĐŸŃ€ĐžŃ‚Đž рДзДрĐČĐœŃƒ ĐșĐŸĐżŃ–ŃŽ таĐ
msgid "Node or handle drag canceled."
msgstr "ĐŸĐ”Ń€Đ”ĐŒŃ–Ń‰Đ”ĐœĐœŃ ĐČузла сĐșĐ°ŃĐŸĐČĐ°ĐœĐŸ."
-#: ../src/knotholder.cpp:170
+#: ../src/knotholder.cpp:171
msgid "Change handle"
msgstr "Đ—ĐŒŃ–ĐœĐžŃ‚Đž ĐČус"
-#: ../src/knotholder.cpp:257
+#: ../src/knotholder.cpp:258
msgid "Move handle"
msgstr "ĐŸĐ”Ń€Đ”ĐŒŃ–ŃŃ‚ĐžŃ‚Đž ĐČус"
#. TRANSLATORS: This refers to the pattern that's inside the object
-#: ../src/knotholder.cpp:276 ../src/knotholder.cpp:298
+#: ../src/knotholder.cpp:277 ../src/knotholder.cpp:299
msgid "<b>Move</b> the pattern fill inside the object"
msgstr "<b>ĐŸĐ”Ń€Đ”ĐŒŃ–Ń‰ŃƒĐČато</b> Đ·Đ°ĐżĐŸĐČĐœĐ”ĐœĐœŃ ĐČŃ–Đ·Đ”Ń€ŃƒĐœĐșĐŸĐŒ ĐČŃĐ”Ń€Đ”ĐŽĐžĐœŃ– ĐŸĐ±'єĐșта"
-#: ../src/knotholder.cpp:280 ../src/knotholder.cpp:302
+#: ../src/knotholder.cpp:281 ../src/knotholder.cpp:303
msgid "<b>Scale</b> the pattern fill; uniformly if with <b>Ctrl</b>"
msgstr ""
"<b>ĐœĐ°ŃŃˆŃ‚Đ°Đ±ŃƒĐČато</b> Đ·Đ°ĐżĐŸĐČĐœĐ”ĐœĐœŃ ĐČŃ–Đ·Đ”Ń€ŃƒĐœĐșĐŸĐŒ; ріĐČĐœĐŸĐŒŃ–Ń€ĐœĐŸ, яĐșŃ‰ĐŸ ĐœĐ°Ń‚ĐžŃĐœŃƒŃ‚ĐŸ "
"<b>Ctrl</b>"
-#: ../src/knotholder.cpp:284 ../src/knotholder.cpp:306
+#: ../src/knotholder.cpp:285 ../src/knotholder.cpp:307
msgid "<b>Rotate</b> the pattern fill; with <b>Ctrl</b> to snap angle"
msgstr "<b>ОбДртатО</b> Đ·Đ°ĐżĐŸĐČĐœĐ”ĐœĐœŃ ĐČŃ–Đ·Đ”Ń€ŃƒĐœĐșĐŸĐŒ, <b>Ctrl</b> ĐŸĐ±ĐŒĐ”Đ¶ŃƒŃ” Đșут"
@@ -8851,7 +8899,7 @@ msgstr "Đ•Đ»Đ”ĐŒĐ”ĐœŃ‚, Ń‰ĐŸ є «ĐČĐŸĐ»ĐŸĐŽĐ°Ń€Đ”ĐŒÂ» Ń†ŃŒĐŸĐłĐŸ"
#. Name
#: ../src/libgdl/gdl-dock-item.c:298 ../src/widgets/ruler.cpp:192
-#: ../src/widgets/text-toolbar.cpp:1405
+#: ../src/widgets/text-toolbar.cpp:1411
#: ../share/extensions/gcodetools_graffiti.inx.h:9
#: ../share/extensions/gcodetools_orientation_points.inx.h:2
msgid "Orientation"
@@ -8997,10 +9045,10 @@ msgstr ""
"ĐżĐ°ĐœĐ”Đ»Đ”Đč ĐŒĐŸĐ¶ĐœĐ° ĐœĐ°Đ·ĐžĐČато ĐșĐŸĐœŃ‚Ń€ĐŸĐ»Đ”Ń€Đ°ĐŒĐž."
#: ../src/libgdl/gdl-dock-notebook.c:132
-#: ../src/ui/dialog/align-and-distribute.cpp:1002
+#: ../src/ui/dialog/align-and-distribute.cpp:998
#: ../src/ui/dialog/document-properties.cpp:160
#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1537
-#: ../src/widgets/desktop-widget.cpp:1992
+#: ../src/widgets/desktop-widget.cpp:1994
#: ../share/extensions/empty_page.inx.h:1
#: ../share/extensions/voronoi2svg.inx.h:9
msgid "Page"
@@ -9011,9 +9059,9 @@ msgid "The index of the current page"
msgstr "Đ†ĐœĐŽĐ”Đșс ĐżĐŸŃ‚ĐŸŃ‡ĐœĐŸŃ— ŃŃ‚ĐŸŃ€Ń–ĐœĐșĐž"
#: ../src/libgdl/gdl-dock-object.c:125
-#: ../src/live_effects/parameter/originalpatharray.cpp:86
+#: ../src/live_effects/parameter/originalpatharray.cpp:82
#: ../src/ui/dialog/inkscape-preferences.cpp:1511
-#: ../src/ui/widget/page-sizer.cpp:258
+#: ../src/ui/widget/page-sizer.cpp:283
#: ../src/widgets/gradient-selector.cpp:150
#: ../src/widgets/sp-xmlview-attr-list.cpp:49
msgid "Name"
@@ -9393,7 +9441,7 @@ msgstr "Đ”ĐŸĐ»ŃƒŃ‡ĐžŃ‚Đž ĐŽĐŸ ĐșĐŸĐœŃ‚ŃƒŃ€Ńƒ"
msgid "Fill between strokes"
msgstr "Đ—Đ°ĐżĐŸĐČĐœĐ”ĐœĐœŃ ĐŒŃ–Đ¶ ŃˆŃ‚Ń€ĐžŃ…Đ°ĐŒĐž"
-#: ../src/live_effects/effect.cpp:147 ../src/selection-chemistry.cpp:2916
+#: ../src/live_effects/effect.cpp:147 ../src/selection-chemistry.cpp:2871
msgid "Fill between many"
msgstr "Đ—Đ°ĐżĐŸĐČĐœĐ”ĐœĐœŃ ĐŒŃ–Đ¶ Đ±Đ°ĐłĐ°Ń‚ŃŒĐŒĐ°"
@@ -9433,23 +9481,23 @@ msgstr ""
"ĐŻĐșŃ‰ĐŸ ĐœĐ” буЎД ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐŸ цДĐč ĐżŃƒĐœĐșт, ДфДĐșт Đ·Đ°Đ»ĐžŃˆĐ°Ń‚ĐžĐŒĐ”Ń‚ŃŒŃŃ Đ·Đ°ŃŃ‚ĐŸŃĐŸĐČĐ°ĐœĐžĐŒ ĐŽĐŸ "
"ĐŸĐ±'єĐșта, алД ĐčĐŸĐłĐŸ буЎД Ń‚ĐžĐŒŃ‡Đ°ŃĐŸĐČĐŸ ĐČĐžĐŒĐșĐœĐ”ĐœĐŸ ĐœĐ° ĐżĐŸĐ»ĐŸŃ‚ĐœŃ–."
-#: ../src/live_effects/effect.cpp:384
+#: ../src/live_effects/effect.cpp:387
msgid "No effect"
msgstr "БДз ДфДĐșту"
-#: ../src/live_effects/effect.cpp:492
+#: ../src/live_effects/effect.cpp:495
#, c-format
msgid "Please specify a parameter path for the LPE '%s' with %d mouse clicks"
msgstr ""
"БуЮь ласĐșа, ĐČĐșĐ°Đ¶Ń–Ń‚ŃŒ ĐżĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€ ĐșĐŸĐœŃ‚ŃƒŃ€Ńƒ ĐŽĐ»Ń ĐłĐ”ĐŸĐŒĐ”Ń‚Ń€ĐžŃ‡ĐœĐžŃ… ĐżĐŸĐ±ŃƒĐŽĐŸĐČ Â«%s» за "
"ĐŽĐŸĐżĐŸĐŒĐŸĐłĐŸŃŽ %d ĐșĐ»Đ°Ń†Đ°ĐœŃŒ ĐŒĐžŃˆĐ”ŃŽ"
-#: ../src/live_effects/effect.cpp:759
+#: ../src/live_effects/effect.cpp:762
#, c-format
msgid "Editing parameter <b>%s</b>."
msgstr "РДЎагуĐČĐ°ĐœĐœŃ ĐżĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Đ° <b>%s</b>."
-#: ../src/live_effects/effect.cpp:764
+#: ../src/live_effects/effect.cpp:767
msgid "None of the applied path effect's parameters can be edited on-canvas."
msgstr ""
"Đ–ĐŸĐŽĐ”Đœ Ń–Đ· Đ·Đ°ŃŃ‚ĐŸŃĐŸĐČĐ°ĐœĐžŃ… ĐżĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Ń–ĐČ Đ”Ń„Đ”Đșту ĐșĐŸĐœŃ‚ŃƒŃ€Ńƒ ĐœĐ” ĐŒĐŸĐ¶ĐœĐ° Ń€Đ”ĐŽĐ°ĐłŃƒĐČато ĐœĐ° "
@@ -9526,8 +9574,8 @@ msgstr "ĐšĐŸĐœŃ‚ŃƒŃ€, за яĐșĐžĐŒ сліЎ ĐČĐžĐłĐœŃƒŃ‚Đž ĐżĐŸŃ‡Đ°Ń‚ĐșĐŸĐČĐžĐč
#: ../src/live_effects/lpe-bendpath.cpp:54
#: ../src/live_effects/lpe-patternalongpath.cpp:62
-#: ../src/ui/dialog/export.cpp:289 ../src/ui/dialog/transformation.cpp:78
-#: ../src/ui/widget/page-sizer.cpp:236
+#: ../src/ui/dialog/export.cpp:285 ../src/ui/dialog/transformation.cpp:74
+#: ../src/ui/widget/page-sizer.cpp:237
msgid "_Width:"
msgstr "_ĐšĐžŃ€ĐžĐœĐ°:"
@@ -9572,47 +9620,50 @@ msgstr "Đ’ĐžĐŽĐžĐŒŃ– Ń€Đ°ĐŒĐșĐž"
msgid "Uses the visual bounding box"
msgstr "ВоĐșĐŸŃ€ĐžŃŃ‚ĐŸĐČує ĐČĐžĐŽĐžĐŒŃƒ Ń€Đ°ĐŒĐșу"
-#. initialise your parameters here:
-#. testpointA(_("Test Point A"), _("Test A"), "ptA", &wr, this,
-#. Geom::Point(100,100)),
-#: ../src/live_effects/lpe-bspline.cpp:60
+#: ../src/live_effects/lpe-bspline.cpp:25
msgid "Steps with CTRL:"
msgstr "ĐšŃ€ĐŸĐșĐž Đ· Ctrl:"
-#: ../src/live_effects/lpe-bspline.cpp:60
+#: ../src/live_effects/lpe-bspline.cpp:25
msgid "Change number of steps with CTRL pressed"
msgstr "Đ—ĐŒŃ–ĐœĐžŃ‚Đž ĐșŃ–Đ»ŃŒĐșість ĐșŃ€ĐŸĐșіĐČ, яĐșі ĐČĐžĐșĐŸĐœŃƒĐČĐ°Ń‚ĐžĐŒŃƒŃ‚ŃŒŃŃ, яĐșŃ‰ĐŸ ĐœĐ°Ń‚ĐžŃĐœŃƒŃ‚ĐŸ Ctrl"
-#: ../src/live_effects/lpe-bspline.cpp:61
+#: ../src/live_effects/lpe-bspline.cpp:26
+#: ../src/live_effects/lpe-simplify.cpp:33
+msgid "Helper size:"
+msgstr "Đ”ĐŸĐżĐŸĐŒŃ–Đ¶ĐœĐžĐč Ń€ĐŸĐ·ĐŒŃ–Ń€:"
+
+#: ../src/live_effects/lpe-bspline.cpp:26
+#: ../src/live_effects/lpe-simplify.cpp:33
+msgid "Helper size"
+msgstr "Đ”ĐŸĐżĐŸĐŒŃ–Đ¶ĐœŃ– Ń€ĐŸĐ·ĐŒŃ–Ń€Đž"
+
+#: ../src/live_effects/lpe-bspline.cpp:27
msgid "Ignore cusp nodes"
msgstr "Đ†ĐłĐœĐŸŃ€ŃƒĐČато ĐłĐŸŃŃ‚Ń€Ń– ĐČузлО"
-#: ../src/live_effects/lpe-bspline.cpp:61
+#: ../src/live_effects/lpe-bspline.cpp:27
msgid "Change ignoring cusp nodes"
msgstr "Đ—ĐŒŃ–ĐœĐžŃ‚Đž Đ· Ń–ĐłĐœĐŸŃ€ŃƒĐČĐ°ĐœĐœŃĐŒ ĐłĐŸŃŃ‚Ń€ĐžŃ… ĐČŃƒĐ·Đ»Ń–ĐČ"
-#: ../src/live_effects/lpe-bspline.cpp:62
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:57
+#: ../src/live_effects/lpe-bspline.cpp:28
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:56
msgid "Change only selected nodes"
msgstr "Đ—ĐŒŃ–ĐœĐžŃ‚Đž лОшД ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœŃ– ĐČузлО"
-#: ../src/live_effects/lpe-bspline.cpp:63
-msgid "Show helper paths"
-msgstr "ĐŸĐŸĐșазатО ĐŽĐŸĐżĐŸĐŒŃ–Đ¶ĐœŃ– ĐșĐŸĐœŃ‚ŃƒŃ€Đž"
-
-#: ../src/live_effects/lpe-bspline.cpp:64
+#: ../src/live_effects/lpe-bspline.cpp:29
msgid "Change weight:"
msgstr "Đ—ĐŒŃ–ĐœĐžŃ‚Đž ĐżĐŸŃ‚ŃƒĐ¶ĐœŃ–ŃŃ‚ŃŒ:"
-#: ../src/live_effects/lpe-bspline.cpp:64
+#: ../src/live_effects/lpe-bspline.cpp:29
msgid "Change weight of the effect"
msgstr "Đ—ĐŒŃ–ĐœĐžŃ‚Đž ĐżĐŸŃ‚ŃƒĐ¶ĐœŃ–ŃŃ‚ŃŒ ДфДĐșту"
-#: ../src/live_effects/lpe-bspline.cpp:291
+#: ../src/live_effects/lpe-bspline.cpp:260
msgid "Default weight"
msgstr "ĐąĐžĐżĐŸĐČа ĐżĐŸŃ‚ŃƒĐ¶ĐœŃ–ŃŃ‚ŃŒ"
-#: ../src/live_effects/lpe-bspline.cpp:296
+#: ../src/live_effects/lpe-bspline.cpp:265
msgid "Make cusp"
msgstr "СтĐČĐŸŃ€ĐžŃ‚Đž Đ·Đ°ĐłĐŸŃŃ‚Ń€Đ”ĐœĐœŃ"
@@ -9798,104 +9849,88 @@ msgstr "ĐžĐ±Đ”Ń€ĐœŃƒŃ‚Đž ЮругоĐč"
msgid "Reverses the second path order"
msgstr "ĐžĐ±Đ”Ń€ĐœŃƒŃ‚Đž ĐœĐ°ĐżŃ€ŃĐŒĐŸĐș ĐŽŃ€ŃƒĐłĐŸĐłĐŸ ĐșĐŸĐœŃ‚ŃƒŃ€Ńƒ"
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:42
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:41
#: ../share/extensions/render_barcode_qrcode.inx.h:5
msgid "Auto"
msgstr "АĐČŃ‚ĐŸ"
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:43
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:42
msgid "Force arc"
msgstr "ĐŸŃ€ĐžĐŒŃƒŃĐŸĐČа Ўуга"
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:44
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:43
msgid "Force bezier"
msgstr "ĐŸŃ€ĐžĐŒŃƒŃĐŸĐČĐŸ ĐșроĐČа Đ‘Đ”Đ·ŃŒŃ”"
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:54
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:53
msgid "Fillet point"
msgstr "ĐąĐŸŃ‡Đșа ĐșĐœĐŸĐŒĐșĐž"
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:55
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:54
msgid "Hide knots"
msgstr "ĐŸŃ€ĐžŃ…ĐŸĐČато ĐČузлО"
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:56
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:55
msgid "Ignore 0 radius knots"
msgstr "Đ†ĐłĐœĐŸŃ€ŃƒĐČато ĐČузлО раЮіуса 0"
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:58
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:57
msgid "Flexible radius size (%)"
msgstr "Đ“ĐœŃƒŃ‡ĐșĐžĐč Ń€ĐŸĐ·ĐŒŃ–Ń€ раЮіуса (у %)"
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:59
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:58
msgid "Use knots distance instead radius"
msgstr "ВоĐșĐŸŃ€ĐžŃŃ‚ĐŸĐČуĐČато Đ·Đ°ĐŒŃ–ŃŃ‚ŃŒ раЮіуса ĐČŃ–ĐŽŃŃ‚Đ°ĐœŃŒ ĐŒŃ–Đ¶ ĐČŃƒĐ·Đ»Đ°ĐŒĐž"
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:60
-#: ../src/live_effects/lpe-ruler.cpp:42
-#: ../share/extensions/foldablebox.inx.h:7
-#: ../share/extensions/interp_att_g.inx.h:9
-#: ../share/extensions/layout_nup.inx.h:3
-#: ../share/extensions/printing_marks.inx.h:11
-msgid "Unit:"
-msgstr "ĐžĐŽĐžĐœĐžŃ†Ń:"
-
-#. initialise your parameters here:
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:60
-#: ../src/live_effects/lpe-roughen.cpp:39 ../src/live_effects/lpe-ruler.cpp:42
-#: ../src/widgets/ruler.cpp:202
-msgid "Unit"
-msgstr "ĐžĐŽĐžĐœĐžŃ†Ń"
-
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:61
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:59
msgid "Method:"
msgstr "ĐĄĐżĐŸŃŃ–Đ±:"
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:61
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:59
msgid "Fillets methods"
msgstr "ĐĄĐżĐŸŃĐŸĐ±Đž стĐČĐŸŃ€Đ”ĐœĐœŃ ĐșŃ€ĐŸĐŒĐșĐž"
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:62
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:60
msgid "Radius (unit or %):"
msgstr "РаЮіус (у ĐŸĐŽĐžĐœĐžŃ†ŃŃ… Đ°Đ±ĐŸ %):"
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:62
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:60
msgid "Radius, in unit or %"
msgstr "РаЮіус у ĐŸĐŽĐžĐœĐžŃ†ŃŃ… Đ°Đ±ĐŸ %"
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:63
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:61
msgid "Chamfer steps:"
msgstr "ĐšŃ€ĐŸĐșĐž фасĐșĐž:"
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:63
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:61
msgid "Chamfer steps"
msgstr "ĐšŃ€ĐŸĐșĐž фасĐșĐž"
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:65
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:63
msgid "Helper size with direction:"
msgstr "Đ”ĐŸĐżĐŸĐŒŃ–Đ¶ĐœĐžĐč Ń€ĐŸĐ·ĐŒŃ–Ń€ Ń–Đ· ĐœĐ°ĐżŃ€ŃĐŒĐșĐŸĐŒ:"
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:65
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:63
msgid "Helper size with direction"
msgstr "Đ”ĐŸĐżĐŸĐŒŃ–Đ¶ĐœĐžĐč Ń€ĐŸĐ·ĐŒŃ–Ń€ Ń–Đ· ĐœĐ°ĐżŃ€ŃĐŒĐșĐŸĐŒ"
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:157
-#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:76
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:154
+#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:71
msgid "Fillet"
msgstr "ĐšŃ€ĐŸĐŒĐșа"
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:161
-#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:78
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:158
+#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:73
msgid "Inverse fillet"
msgstr "ЗĐČĐŸŃ€ĐŸŃ‚ĐœŃ ĐșŃ€ĐŸĐŒĐșа"
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:166
-#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:80
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:163
+#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:75
msgid "Chamfer"
msgstr "ЀасĐșа"
-#: ../src/live_effects/lpe-fillet-chamfer.cpp:170
-#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:82
+#: ../src/live_effects/lpe-fillet-chamfer.cpp:167
+#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:77
msgid "Inverse chamfer"
msgstr "ЗĐČĐŸŃ€ĐŸŃ‚ĐœŃ фасĐșа"
@@ -9985,15 +10020,15 @@ msgstr ""
#: ../src/live_effects/lpe-jointype.cpp:31
#: ../src/live_effects/lpe-powerstroke.cpp:227
-#: ../src/live_effects/lpe-taperstroke.cpp:63
+#: ../src/live_effects/lpe-taperstroke.cpp:64
msgid "Beveled"
msgstr "З фасĐșĐŸŃŽ"
#: ../src/live_effects/lpe-jointype.cpp:32
#: ../src/live_effects/lpe-jointype.cpp:40
#: ../src/live_effects/lpe-powerstroke.cpp:228
-#: ../src/live_effects/lpe-taperstroke.cpp:64
-#: ../src/widgets/star-toolbar.cpp:536
+#: ../src/live_effects/lpe-taperstroke.cpp:65
+#: ../src/widgets/star-toolbar.cpp:534
msgid "Rounded"
msgstr "ОĐșŃ€ŃƒĐłĐ»Đ”ĐœŃ–ŃŃ‚ŃŒ"
@@ -10004,10 +10039,8 @@ msgid "Miter"
msgstr "НаĐșластО"
#: ../src/live_effects/lpe-jointype.cpp:34
-#: ../src/live_effects/lpe-taperstroke.cpp:65
-#: ../src/widgets/gradient-toolbar.cpp:1118
-msgid "Reflected"
-msgstr "ВіЎбОтОĐč"
+msgid "Miter Clip"
+msgstr "ĐžĐ±ĐŒĐ”Đ¶Đ”ĐœĐœŃ фацДта"
#. {LINEJOIN_EXTRP_MITER, N_("Extrapolated"), "extrapolated"}, // disabled because doesn't work well
#: ../src/live_effects/lpe-jointype.cpp:35
@@ -10030,10 +10063,6 @@ msgstr "КĐČаЮрат"
msgid "Peak"
msgstr "ПіĐș"
-#: ../src/live_effects/lpe-jointype.cpp:43
-msgid "Leaned"
-msgstr "ĐĐ°Ń…ĐžĐ»Đ”ĐœĐžĐč"
-
#: ../src/live_effects/lpe-jointype.cpp:51
msgid "Thickness of the stroke"
msgstr "ĐąĐŸĐČŃ‰ĐžĐœĐ° штроха"
@@ -10060,14 +10089,8 @@ msgstr "З'Ń”ĐŽĐœĐ°ĐœĐœŃ:"
msgid "Determines the shape of the path's corners"
msgstr "Đ’ĐžĐ·ĐœĐ°Ń‡Đ°Ń” Ń„ĐŸŃ€ĐŒŃƒ ĐșутіĐČ ĐșĐŸĐœŃ‚ŃƒŃ€Ńƒ"
-#: ../src/live_effects/lpe-jointype.cpp:54
-msgid "Start path lean"
-msgstr "ĐŸĐŸŃ‡Đ°Ń‚ĐŸĐș ĐșĐŸĐœŃ‚ŃƒŃ€Ńƒ ĐœĐ°Ń…ĐžĐ»Ńƒ"
-
-#: ../src/live_effects/lpe-jointype.cpp:55
-msgid "End path lean"
-msgstr "ĐšŃ–ĐœĐ”Ń†ŃŒ ĐșĐŸĐœŃ‚ŃƒŃ€Ńƒ ĐœĐ°Ń…ĐžĐ»Ńƒ"
-
+#. start_lean(_("Start path lean"), _("Start path lean"), "start_lean", &wr, this, 0.),
+#. end_lean(_("End path lean"), _("End path lean"), "end_lean", &wr, this, 0.),
#: ../src/live_effects/lpe-jointype.cpp:56
#: ../src/live_effects/lpe-powerstroke.cpp:244
#: ../src/live_effects/lpe-taperstroke.cpp:79
@@ -10144,303 +10167,289 @@ msgstr "ĐŸĐ”Ń€Đ”Ń‚ŃĐłĐœŃ–Ń‚ŃŒ, Ń‰ĐŸĐ± ĐČОбратО ĐżĐ”Ń€Đ”Ń…Ń€Đ”ŃŃ‚Ń, ĐșĐ»
msgid "Change knot crossing"
msgstr "Đ—ĐŒŃ–ĐœĐžŃ‚Đž ĐżĐ”Ń€Đ”Ń…Ń€Đ”ŃŃ‚Ń у ĐČŃƒĐ·Đ»Ń–"
-#. initialise your parameters here:
#: ../src/live_effects/lpe-lattice2.cpp:47
-msgid "Control handle 0:"
-msgstr "Đ†ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 0:"
-
-#: ../src/live_effects/lpe-lattice2.cpp:47
-msgid ""
-"Control handle 0 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
-msgstr ""
-"Đ†ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 0 — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, <b>Ctrl</b>, "
-"Ń‰ĐŸĐ± рухатося ĐČĐ·ĐŽĐŸĐČж ĐŸŃĐ”Đč"
-
-#: ../src/live_effects/lpe-lattice2.cpp:48
-msgid "Control handle 1:"
-msgstr "Đ†ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 1:"
+#: ../src/live_effects/lpe-perspective-envelope.cpp:43
+msgid "Mirror movements in horizontal"
+msgstr "ДзДрĐșĐ°Đ»ŃŒĐœŃ– ĐżĐ”Ń€Đ”ŃŃƒĐČĐ°ĐœĐœŃ ĐłĐŸŃ€ĐžĐ·ĐŸĐœŃ‚Đ°Đ»ŃŒĐœĐŸ"
#: ../src/live_effects/lpe-lattice2.cpp:48
-msgid ""
-"Control handle 1 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
-msgstr ""
-"Đ†ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 1 — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, <b>Ctrl</b>, "
-"Ń‰ĐŸĐ± рухатося ĐČĐ·ĐŽĐŸĐČж ĐŸŃĐ”Đč"
+#: ../src/live_effects/lpe-perspective-envelope.cpp:44
+msgid "Mirror movements in vertical"
+msgstr "ДзДрĐșĐ°Đ»ŃŒĐœŃ– ĐżĐ”Ń€Đ”ŃŃƒĐČĐ°ĐœĐœŃ ĐČДртОĐșĐ°Đ»ŃŒĐœĐŸ"
#: ../src/live_effects/lpe-lattice2.cpp:49
-msgid "Control handle 2:"
-msgstr "Đ†ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 2:"
+msgid "Control 0:"
+msgstr "ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 0:"
#: ../src/live_effects/lpe-lattice2.cpp:49
-msgid ""
-"Control handle 2 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
+msgid "Control 0 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
msgstr ""
-"Đ†ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 2 — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, <b>Ctrl</b>, "
+"ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 0 — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, <b>Ctrl</b>, "
"Ń‰ĐŸĐ± рухатося ĐČĐ·ĐŽĐŸĐČж ĐŸŃĐ”Đč"
#: ../src/live_effects/lpe-lattice2.cpp:50
-msgid "Control handle 3:"
-msgstr "Đ†ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 3:"
+msgid "Control 1:"
+msgstr "ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 1:"
#: ../src/live_effects/lpe-lattice2.cpp:50
-msgid ""
-"Control handle 3 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
+msgid "Control 1 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
msgstr ""
-"Đ†ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 3 — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, <b>Ctrl</b>, "
+"ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 1 — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, <b>Ctrl</b>, "
"Ń‰ĐŸĐ± рухатося ĐČĐ·ĐŽĐŸĐČж ĐŸŃĐ”Đč"
#: ../src/live_effects/lpe-lattice2.cpp:51
-msgid "Control handle 4:"
-msgstr "Đ†ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 4:"
+msgid "Control 2:"
+msgstr "ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 2:"
#: ../src/live_effects/lpe-lattice2.cpp:51
-msgid ""
-"Control handle 4 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
+msgid "Control 2 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
msgstr ""
-"Đ†ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 4 — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, <b>Ctrl</b>, "
+"ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 2 — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, <b>Ctrl</b>, "
"Ń‰ĐŸĐ± рухатося ĐČĐ·ĐŽĐŸĐČж ĐŸŃĐ”Đč"
#: ../src/live_effects/lpe-lattice2.cpp:52
-msgid "Control handle 5:"
-msgstr "Đ†ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 5:"
+msgid "Control 3:"
+msgstr "ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 3:"
#: ../src/live_effects/lpe-lattice2.cpp:52
-msgid ""
-"Control handle 5 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
+msgid "Control 3 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
msgstr ""
-"Đ†ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 5 — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, <b>Ctrl</b>, "
+"ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 3 — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, <b>Ctrl</b>, "
"Ń‰ĐŸĐ± рухатося ĐČĐ·ĐŽĐŸĐČж ĐŸŃĐ”Đč"
#: ../src/live_effects/lpe-lattice2.cpp:53
-msgid "Control handle 6:"
-msgstr "Đ†ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 6:"
+msgid "Control 4:"
+msgstr "ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 4:"
#: ../src/live_effects/lpe-lattice2.cpp:53
-msgid ""
-"Control handle 6 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
+msgid "Control 4 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
msgstr ""
-"Đ†ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 6 — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, <b>Ctrl</b>, "
+"ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 4 — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, <b>Ctrl</b>, "
"Ń‰ĐŸĐ± рухатося ĐČĐ·ĐŽĐŸĐČж ĐŸŃĐ”Đč"
#: ../src/live_effects/lpe-lattice2.cpp:54
-msgid "Control handle 7:"
-msgstr "Đ†ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 7:"
+msgid "Control 5:"
+msgstr "ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 5:"
#: ../src/live_effects/lpe-lattice2.cpp:54
-msgid ""
-"Control handle 7 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
+msgid "Control 5 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
msgstr ""
-"Đ†ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 7 — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, <b>Ctrl</b>, "
+"ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 5 — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, <b>Ctrl</b>, "
"Ń‰ĐŸĐ± рухатося ĐČĐ·ĐŽĐŸĐČж ĐŸŃĐ”Đč"
#: ../src/live_effects/lpe-lattice2.cpp:55
-msgid "Control handle 8x9:"
-msgstr "Đ†ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 8⚯9:"
+msgid "Control 6:"
+msgstr "ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 6:"
#: ../src/live_effects/lpe-lattice2.cpp:55
-msgid ""
-"Control handle 8x9 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along "
-"axes"
+msgid "Control 6 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
msgstr ""
-"Đ†ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 8⚯9 — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, <b>Ctrl</b>"
-", Ń‰ĐŸĐ± рухатося ĐČĐ·ĐŽĐŸĐČж ĐŸŃĐ”Đč"
+"ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 6 — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, <b>Ctrl</b>, "
+"Ń‰ĐŸĐ± рухатося ĐČĐ·ĐŽĐŸĐČж ĐŸŃĐ”Đč"
#: ../src/live_effects/lpe-lattice2.cpp:56
-msgid "Control handle 10x11:"
-msgstr "Đ†ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 10⚯11:"
+msgid "Control 7:"
+msgstr "ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 7:"
#: ../src/live_effects/lpe-lattice2.cpp:56
-msgid ""
-"Control handle 10x11 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along "
-"axes"
+msgid "Control 7 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
msgstr ""
-"Đ†ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 10⚯11 — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, <b>Ctrl<"
-"/b>, Ń‰ĐŸĐ± рухатося ĐČĐ·ĐŽĐŸĐČж ĐŸŃĐ”Đč"
+"ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 7 — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, <b>Ctrl</b>, "
+"Ń‰ĐŸĐ± рухатося ĐČĐ·ĐŽĐŸĐČж ĐŸŃĐ”Đč"
#: ../src/live_effects/lpe-lattice2.cpp:57
-msgid "Control handle 12:"
-msgstr "Đ†ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 12:"
+msgid "Control 8x9:"
+msgstr "ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 8⚯9:"
#: ../src/live_effects/lpe-lattice2.cpp:57
msgid ""
-"Control handle 12 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along "
-"axes"
+"Control 8x9 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
msgstr ""
-"Đ†ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 12 — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, <b>Ctrl</b>, "
-"Ń‰ĐŸĐ± рухатося ĐČĐ·ĐŽĐŸĐČж ĐŸŃĐ”Đč"
+"ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 8⚯9 — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, <b>Ctrl</b>, Ń‰ĐŸĐ± "
+"рухатося ĐČĐ·ĐŽĐŸĐČж ĐŸŃĐ”Đč"
#: ../src/live_effects/lpe-lattice2.cpp:58
-msgid "Control handle 13:"
-msgstr "Đ†ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 13:"
+msgid "Control 10x11:"
+msgstr "ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 10⚯11:"
#: ../src/live_effects/lpe-lattice2.cpp:58
msgid ""
-"Control handle 13 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along "
-"axes"
+"Control 10x11 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
msgstr ""
-"Đ†ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 13 — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, <b>Ctrl</b>, "
-"Ń‰ĐŸĐ± рухатося ĐČĐ·ĐŽĐŸĐČж ĐŸŃĐ”Đč"
+"ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 10⚯11 — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, <b>Ctrl</b>, Ń‰ĐŸĐ± "
+"рухатося ĐČĐ·ĐŽĐŸĐČж ĐŸŃĐ”Đč"
#: ../src/live_effects/lpe-lattice2.cpp:59
-msgid "Control handle 14:"
-msgstr "Đ†ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 14:"
+msgid "Control 12:"
+msgstr "ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 12:"
#: ../src/live_effects/lpe-lattice2.cpp:59
-msgid ""
-"Control handle 14 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along "
-"axes"
+msgid "Control 12 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
msgstr ""
-"Đ†ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 14 — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, <b>Ctrl</b>, "
+"ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 12 — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, <b>Ctrl</b>, "
"Ń‰ĐŸĐ± рухатося ĐČĐ·ĐŽĐŸĐČж ĐŸŃĐ”Đč"
#: ../src/live_effects/lpe-lattice2.cpp:60
-msgid "Control handle 15:"
-msgstr "Đ†ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 15:"
+msgid "Control 13:"
+msgstr "ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 13:"
#: ../src/live_effects/lpe-lattice2.cpp:60
-msgid ""
-"Control handle 15 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along "
-"axes"
+msgid "Control 13 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
msgstr ""
-"Đ†ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 15 — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, <b>Ctrl</b>, "
+"ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 13 — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, <b>Ctrl</b>, "
"Ń‰ĐŸĐ± рухатося ĐČĐ·ĐŽĐŸĐČж ĐŸŃĐ”Đč"
#: ../src/live_effects/lpe-lattice2.cpp:61
-msgid "Control handle 16:"
-msgstr "Đ†ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 16:"
+msgid "Control 14:"
+msgstr "ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 14:"
#: ../src/live_effects/lpe-lattice2.cpp:61
-msgid ""
-"Control handle 16 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along "
-"axes"
+msgid "Control 14 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
msgstr ""
-"Đ†ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 16 — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, <b>Ctrl</b>, "
+"ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 14 — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, <b>Ctrl</b>, "
"Ń‰ĐŸĐ± рухатося ĐČĐ·ĐŽĐŸĐČж ĐŸŃĐ”Đč"
#: ../src/live_effects/lpe-lattice2.cpp:62
-msgid "Control handle 17:"
-msgstr "Đ†ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 17:"
+msgid "Control 15:"
+msgstr "ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 15:"
#: ../src/live_effects/lpe-lattice2.cpp:62
-msgid ""
-"Control handle 17 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along "
-"axes"
+msgid "Control 15 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
msgstr ""
-"Đ†ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 17 — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, <b>Ctrl</b>, "
+"ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 15 — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, <b>Ctrl</b>, "
"Ń‰ĐŸĐ± рухатося ĐČĐ·ĐŽĐŸĐČж ĐŸŃĐ”Đč"
#: ../src/live_effects/lpe-lattice2.cpp:63
-msgid "Control handle 18:"
-msgstr "Đ†ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 18:"
+msgid "Control 16:"
+msgstr "ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 16:"
#: ../src/live_effects/lpe-lattice2.cpp:63
-msgid ""
-"Control handle 18 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along "
-"axes"
+msgid "Control 16 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
msgstr ""
-"Đ†ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 18 — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, <b>Ctrl</b>, "
+"ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 16 — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, <b>Ctrl</b>, "
"Ń‰ĐŸĐ± рухатося ĐČĐ·ĐŽĐŸĐČж ĐŸŃĐ”Đč"
#: ../src/live_effects/lpe-lattice2.cpp:64
-msgid "Control handle 19:"
-msgstr "Đ†ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 19:"
+msgid "Control 17:"
+msgstr "ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 17:"
#: ../src/live_effects/lpe-lattice2.cpp:64
-msgid ""
-"Control handle 19 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along "
-"axes"
+msgid "Control 17 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
msgstr ""
-"Đ†ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 19 — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, <b>Ctrl</b>, "
+"ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 17 — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, <b>Ctrl</b>, "
"Ń‰ĐŸĐ± рухатося ĐČĐ·ĐŽĐŸĐČж ĐŸŃĐ”Đč"
#: ../src/live_effects/lpe-lattice2.cpp:65
-msgid "Control handle 20x21:"
-msgstr "Đ†ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 20⚯21:"
+msgid "Control 18:"
+msgstr "ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 18:"
#: ../src/live_effects/lpe-lattice2.cpp:65
-msgid ""
-"Control handle 20x21 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along "
-"axes"
+msgid "Control 18 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
msgstr ""
-"Đ†ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 20⚯21 — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, <b>Ctrl<"
-"/b>, Ń‰ĐŸĐ± рухатося ĐČĐ·ĐŽĐŸĐČж ĐŸŃĐ”Đč"
+"ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 18 — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, <b>Ctrl</b>, "
+"Ń‰ĐŸĐ± рухатося ĐČĐ·ĐŽĐŸĐČж ĐŸŃĐ”Đč"
#: ../src/live_effects/lpe-lattice2.cpp:66
-msgid "Control handle 22x23:"
-msgstr "Đ†ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 22⚯23:"
+msgid "Control 19:"
+msgstr "ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 19:"
#: ../src/live_effects/lpe-lattice2.cpp:66
-msgid ""
-"Control handle 22x23 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along "
-"axes"
+msgid "Control 19 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
msgstr ""
-"Đ†ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 22⚯23 — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, <b>Ctrl<"
-"/b>, Ń‰ĐŸĐ± рухатося ĐČĐ·ĐŽĐŸĐČж ĐŸŃĐ”Đč"
+"ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 19 — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, <b>Ctrl</b>, "
+"Ń‰ĐŸĐ± рухатося ĐČĐ·ĐŽĐŸĐČж ĐŸŃĐ”Đč"
#: ../src/live_effects/lpe-lattice2.cpp:67
-msgid "Control handle 24x26:"
-msgstr "Đ†ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 24⚯26:"
+msgid "Control 20x21:"
+msgstr "ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 20⚯21:"
#: ../src/live_effects/lpe-lattice2.cpp:67
msgid ""
-"Control handle 24x26 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along "
-"axes"
+"Control 20x21 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
msgstr ""
-"Đ†ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 24⚯26 — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, <b>Ctrl<"
-"/b>, Ń‰ĐŸĐ± рухатося ĐČĐ·ĐŽĐŸĐČж ĐŸŃĐ”Đč"
+"ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 20⚯21 — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, <b>Ctrl</b>, Ń‰ĐŸĐ± "
+"рухатося ĐČĐ·ĐŽĐŸĐČж ĐŸŃĐ”Đč"
#: ../src/live_effects/lpe-lattice2.cpp:68
-msgid "Control handle 25x27:"
-msgstr "Đ†ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 25⚯27:"
+msgid "Control 22x23:"
+msgstr "ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 22⚯23:"
#: ../src/live_effects/lpe-lattice2.cpp:68
msgid ""
-"Control handle 25x27 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along "
-"axes"
+"Control 22x23 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
msgstr ""
-"Đ†ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 25⚯27 — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, <b>Ctrl<"
-"/b>, Ń‰ĐŸĐ± рухатося ĐČĐ·ĐŽĐŸĐČж ĐŸŃĐ”Đč"
+"ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 22⚯23 — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, <b>Ctrl</b>, Ń‰ĐŸĐ± "
+"рухатося ĐČĐ·ĐŽĐŸĐČж ĐŸŃĐ”Đč"
#: ../src/live_effects/lpe-lattice2.cpp:69
-msgid "Control handle 28x30:"
-msgstr "Đ†ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 28⚯30:"
+msgid "Control 24x26:"
+msgstr "ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 24⚯26:"
#: ../src/live_effects/lpe-lattice2.cpp:69
msgid ""
-"Control handle 28x30 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along "
-"axes"
+"Control 24x26 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
msgstr ""
-"Đ†ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 28⚯30 — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, <b>Ctrl<"
-"/b>, Ń‰ĐŸĐ± рухатося ĐČĐ·ĐŽĐŸĐČж ĐŸŃĐ”Đč"
+"ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 24⚯26 — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, <b>Ctrl</b>, Ń‰ĐŸĐ± "
+"рухатося ĐČĐ·ĐŽĐŸĐČж ĐŸŃĐ”Đč"
#: ../src/live_effects/lpe-lattice2.cpp:70
-msgid "Control handle 29x31:"
-msgstr "Đ†ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 29⚯31:"
+msgid "Control 25x27:"
+msgstr "ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 25⚯27:"
#: ../src/live_effects/lpe-lattice2.cpp:70
msgid ""
-"Control handle 29x31 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along "
-"axes"
+"Control 25x27 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
msgstr ""
-"Đ†ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 29⚯31 — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, <b>Ctrl<"
-"/b>, Ń‰ĐŸĐ± рухатося ĐČĐ·ĐŽĐŸĐČж ĐŸŃĐ”Đč"
+"ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 25⚯27 — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, <b>Ctrl</b>, Ń‰ĐŸĐ± "
+"рухатося ĐČĐ·ĐŽĐŸĐČж ĐŸŃĐ”Đč"
#: ../src/live_effects/lpe-lattice2.cpp:71
-msgid "Control handle 32x33x34x35:"
-msgstr "Đ†ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 32⚯33⚯34⚯35:"
+msgid "Control 28x30:"
+msgstr "ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 28⚯30:"
#: ../src/live_effects/lpe-lattice2.cpp:71
msgid ""
-"Control handle 32x33x34x35 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move "
-"along axes"
+"Control 28x30 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
+msgstr ""
+"ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 28⚯30 — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, <b>Ctrl</b>, Ń‰ĐŸĐ± "
+"рухатося ĐČĐ·ĐŽĐŸĐČж ĐŸŃĐ”Đč"
+
+#: ../src/live_effects/lpe-lattice2.cpp:72
+msgid "Control 29x31:"
+msgstr "ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 29⚯31:"
+
+#: ../src/live_effects/lpe-lattice2.cpp:72
+msgid ""
+"Control 29x31 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
msgstr ""
-"Đ†ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 32⚯33⚯34⚯35 — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, <b>"
-"Ctrl</b>, Ń‰ĐŸĐ± рухатося ĐČĐ·ĐŽĐŸĐČж ĐŸŃĐ”Đč"
+"ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 29⚯31 — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, <b>Ctrl</b>, Ń‰ĐŸĐ± "
+"рухатося ĐČĐ·ĐŽĐŸĐČж ĐŸŃĐ”Đč"
+
+#: ../src/live_effects/lpe-lattice2.cpp:73
+msgid "Control 32x33x34x35:"
+msgstr "ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 32⚯33⚯34⚯35:"
-#: ../src/live_effects/lpe-lattice2.cpp:224
+#: ../src/live_effects/lpe-lattice2.cpp:73
+msgid ""
+"Control 32x33x34x35 - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along "
+"axes"
+msgstr ""
+"ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ 32⚯33⚯34⚯35 — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, "
+"<b>Ctrl</b>, Ń‰ĐŸĐ± рухатося ĐČĐ·ĐŽĐŸĐČж ĐŸŃĐ”Đč"
+
+#: ../src/live_effects/lpe-lattice2.cpp:236
msgid "Reset grid"
msgstr "ĐĄĐșĐžĐœŃƒŃ‚Đž сітĐșу"
+#: ../src/live_effects/lpe-lattice2.cpp:268
+#: ../src/live_effects/lpe-lattice2.cpp:283
+msgid "Show Points"
+msgstr "ĐŸĐŸĐșазатО Ń‚ĐŸŃ‡ĐșĐž"
+
+#: ../src/live_effects/lpe-lattice2.cpp:281
+msgid "Hide Points"
+msgstr "ĐŸŃ€ĐžŃ…ĐŸĐČато Ń‚ĐŸŃ‡ĐșĐž"
+
#: ../src/live_effects/lpe-patternalongpath.cpp:50
#: ../share/extensions/pathalongpath.inx.h:10
msgid "Single"
@@ -10539,65 +10548,64 @@ msgid "Fuse ends closer than this number. 0 means don't fuse."
msgstr ""
"Об'Ń”ĐŽĐœŃƒĐČато ĐșŃ–ĐœŃ†Ń–, блОжчі за ĐČĐșĐ°Đ·Đ°ĐœĐ” Đ·ĐœĐ°Ń‡Đ”ĐœĐœŃ. 0 ĐŸĐ·ĐœĐ°Ń‡Đ°Ń” Â«ĐœĐ” ĐŸĐ±'Ń”ĐŽĐœŃƒĐČатО»."
-#: ../src/live_effects/lpe-perspective-envelope.cpp:37
+#: ../src/live_effects/lpe-perspective-envelope.cpp:35
#: ../share/extensions/perspective.inx.h:1
msgid "Perspective"
msgstr "ĐŸĐ”Ń€ŃĐżĐ”ĐșтоĐČа"
-#: ../src/live_effects/lpe-perspective-envelope.cpp:38
+#: ../src/live_effects/lpe-perspective-envelope.cpp:36
msgid "Envelope deformation"
msgstr "ВоĐșроĐČĐ»Đ”ĐœĐœŃ ĐŸĐ±ĐłĐŸŃ€Ń‚ĐșĐž"
-#. initialise your parameters here:
-#: ../src/live_effects/lpe-perspective-envelope.cpp:46
+#: ../src/live_effects/lpe-perspective-envelope.cpp:45
msgid "Type"
msgstr "йОп"
-#: ../src/live_effects/lpe-perspective-envelope.cpp:46
+#: ../src/live_effects/lpe-perspective-envelope.cpp:45
msgid "Select the type of deformation"
msgstr "Đ’ĐžĐ±Đ”Ń€Ń–Ń‚ŃŒ топ ĐŽĐ”Ń„ĐŸŃ€ĐŒŃƒĐČĐ°ĐœĐœŃ"
-#: ../src/live_effects/lpe-perspective-envelope.cpp:47
+#: ../src/live_effects/lpe-perspective-envelope.cpp:46
msgid "Top Left"
msgstr "Đ’Đ”Ń€Ń…ĐœŃ–Đč ліĐČĐžĐč"
-#: ../src/live_effects/lpe-perspective-envelope.cpp:47
+#: ../src/live_effects/lpe-perspective-envelope.cpp:46
msgid "Top Left - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
msgstr ""
"Đ’Đ”Ń€Ń…ĐœŃ–Đč ліĐČĐžĐč — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, <b>Ctrl</b>, Ń‰ĐŸĐ± "
"рухатося ĐČĐ·ĐŽĐŸĐČж ĐŸŃĐ”Đč"
-#: ../src/live_effects/lpe-perspective-envelope.cpp:48
+#: ../src/live_effects/lpe-perspective-envelope.cpp:47
msgid "Top Right"
msgstr "Đ’Đ”Ń€Ń…ĐœŃ–Đč праĐČĐžĐč"
-#: ../src/live_effects/lpe-perspective-envelope.cpp:48
+#: ../src/live_effects/lpe-perspective-envelope.cpp:47
msgid "Top Right - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
msgstr ""
"Đ’Đ”Ń€Ń…ĐœŃ–Đč праĐČĐžĐč — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, <b>Ctrl</b>, Ń‰ĐŸĐ± "
"рухатося ĐČĐ·ĐŽĐŸĐČж ĐŸŃĐ”Đč"
-#: ../src/live_effects/lpe-perspective-envelope.cpp:49
+#: ../src/live_effects/lpe-perspective-envelope.cpp:48
msgid "Down Left"
msgstr "ĐĐžĐ¶ĐœŃ–Đč ліĐČĐžĐč"
-#: ../src/live_effects/lpe-perspective-envelope.cpp:49
+#: ../src/live_effects/lpe-perspective-envelope.cpp:48
msgid "Down Left - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
msgstr ""
"ĐĐžĐ¶ĐœŃ–Đč ліĐČĐžĐč — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, <b>Ctrl</b>, Ń‰ĐŸĐ± "
"рухатося ĐČĐ·ĐŽĐŸĐČж ĐŸŃĐ”Đč"
-#: ../src/live_effects/lpe-perspective-envelope.cpp:50
+#: ../src/live_effects/lpe-perspective-envelope.cpp:49
msgid "Down Right"
msgstr "ĐĐžĐ¶ĐœŃ–Đč праĐČĐžĐč"
-#: ../src/live_effects/lpe-perspective-envelope.cpp:50
+#: ../src/live_effects/lpe-perspective-envelope.cpp:49
msgid "Down Right - <b>Ctrl+Alt+Click</b>: reset, <b>Ctrl</b>: move along axes"
msgstr ""
"ĐĐžĐ¶ĐœŃ–Đč праĐČĐžĐč — <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b>, Ń‰ĐŸĐ± сĐșĐžĐœŃƒŃ‚Đž, <b>Ctrl</b>, Ń‰ĐŸĐ± "
"рухатося ĐČĐ·ĐŽĐŸĐČж ĐŸŃĐ”Đč"
-#: ../src/live_effects/lpe-perspective-envelope.cpp:257
+#: ../src/live_effects/lpe-perspective-envelope.cpp:268
msgid "Handles:"
msgstr "Đ•Đ»Đ”ĐŒĐ”ĐœŃ‚Đž ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ:"
@@ -10854,66 +10862,63 @@ msgid ""
msgstr ""
"Đ’Ń–ĐŽĐœĐŸŃĐœĐ° ĐżĐŸĐ·ĐžŃ†Ń–Ń Đ”Ń‚Đ°Đ»ĐŸĐœĐœĐŸŃ— Ń‚ĐŸŃ‡ĐșĐž ĐČĐžĐ·ĐœĐ°Ń‡Đ°Ń” ĐœĐ°ĐżŃ€ŃĐŒ і ĐČĐ”Đ»ĐžŃ‡ĐžĐœŃƒ Đ·Đ°ĐłĐ°Đ»ŃŒĐœĐŸĐłĐŸ ĐČĐžĐłĐžĐœŃƒ"
-#: ../src/live_effects/lpe-roughen.cpp:30 ../share/extensions/addnodes.inx.h:4
+#: ../src/live_effects/lpe-roughen.cpp:29 ../share/extensions/addnodes.inx.h:4
msgid "By number of segments"
msgstr "За ĐșŃ–Đ»ŃŒĐșістю ŃĐ”ĐłĐŒĐ”ĐœŃ‚Ń–ĐČ"
-#: ../src/live_effects/lpe-roughen.cpp:31
+#: ../src/live_effects/lpe-roughen.cpp:30
msgid "By max. segment size"
msgstr "За ĐŒĐ°Đșс. Ń€ĐŸĐ·ĐŒŃ–Ń€ĐŸĐŒ ŃĐ”ĐłĐŒĐ”ĐœŃ‚Đ°"
-#: ../src/live_effects/lpe-roughen.cpp:40
+#. initialise your parameters here:
+#: ../src/live_effects/lpe-roughen.cpp:38
msgid "Method"
msgstr "ĐĄĐżĐŸŃŃ–Đ±"
-#: ../src/live_effects/lpe-roughen.cpp:40
+#: ../src/live_effects/lpe-roughen.cpp:38
msgid "Division method"
msgstr "ĐœĐ”Ń‚ĐŸĐŽ ĐżĐŸĐŽŃ–Đ»Ńƒ"
-#: ../src/live_effects/lpe-roughen.cpp:42
+#: ../src/live_effects/lpe-roughen.cpp:40
msgid "Max. segment size"
msgstr "МаĐșŃĐžĐŒĐ°Đ»ŃŒĐœĐžĐč Ń€ĐŸĐ·ĐŒŃ–Ń€ ŃĐ”ĐłĐŒĐ”ĐœŃ‚Đ°"
-#: ../src/live_effects/lpe-roughen.cpp:44
+#: ../src/live_effects/lpe-roughen.cpp:42
msgid "Number of segments"
msgstr "ĐšŃ–Đ»ŃŒĐșість ŃĐ”ĐłĐŒĐ”ĐœŃ‚Ń–ĐČ"
-#: ../src/live_effects/lpe-roughen.cpp:46
+#: ../src/live_effects/lpe-roughen.cpp:44
msgid "Max. displacement in X"
msgstr "МаĐșŃĐžĐŒĐ°Đ»ŃŒĐœĐ” Đ·ĐŒŃ–Ń‰Đ”ĐœĐœŃ за X"
-#: ../src/live_effects/lpe-roughen.cpp:48
+#: ../src/live_effects/lpe-roughen.cpp:46
msgid "Max. displacement in Y"
msgstr "МаĐșŃĐžĐŒĐ°Đ»ŃŒĐœĐ” Đ·ĐŒŃ–Ń‰Đ”ĐœĐœŃ за Y"
-#: ../src/live_effects/lpe-roughen.cpp:50
+#: ../src/live_effects/lpe-roughen.cpp:48
msgid "Global randomize"
msgstr "Đ—Đ°ĐłĐ°Đ»ŃŒĐœĐ° ĐČОпаЎĐșĐŸĐČість"
-#: ../src/live_effects/lpe-roughen.cpp:52
+#: ../src/live_effects/lpe-roughen.cpp:50
#: ../share/extensions/radiusrand.inx.h:5
msgid "Shift nodes"
msgstr "Đ—ĐŒŃ–Ń‰Đ”ĐœĐœŃ ĐČŃƒĐ·Đ»Ń–ĐČ"
-#: ../src/live_effects/lpe-roughen.cpp:54
+#: ../src/live_effects/lpe-roughen.cpp:52
#: ../share/extensions/radiusrand.inx.h:6
msgid "Shift node handles"
msgstr "Đ—ĐŒŃ–Ń‰Đ”ĐœĐœŃ ĐČусіĐČ ĐČузла"
-#: ../src/live_effects/lpe-roughen.cpp:103
-msgid "<b>Roughen unit</b>"
-msgstr "<b>ĐžĐŽĐžĐœĐžŃ†Ń Đ·ĐłŃ€ŃƒĐ±Ń–ŃˆĐ°ĐœĐœŃ</b>"
-
-#: ../src/live_effects/lpe-roughen.cpp:111
+#: ../src/live_effects/lpe-roughen.cpp:100
msgid "<b>Add nodes</b> Subdivide each segment"
msgstr "<b>Đ”ĐŸĐŽĐ°Ń‚Đž ĐČузлО</b> — ĐżĐŸĐŽŃ–Đ»ĐžŃ‚Đž ĐșĐŸĐ¶Đ”Đœ Ń–Đ· ŃĐ”ĐłĐŒĐ”ĐœŃ‚Ń–ĐČ"
-#: ../src/live_effects/lpe-roughen.cpp:120
+#: ../src/live_effects/lpe-roughen.cpp:109
msgid "<b>Jitter nodes</b> Move nodes/handles"
msgstr ""
"<b>ĐąŃ€Đ”ĐŒŃ‚Ń–ĐœĐœŃ ĐČŃƒĐ·Đ»Ń–ĐČ</b> — ĐżĐ”Ń€Đ”ŃŃƒĐœŃƒŃ‚Đž ĐČузлО Đ°Đ±ĐŸ Đ”Đ»Đ”ĐŒĐ”ĐœŃ‚Đž ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ (ĐČуса)"
-#: ../src/live_effects/lpe-roughen.cpp:129
+#: ../src/live_effects/lpe-roughen.cpp:118
msgid "<b>Extra roughen</b> Add a extra layer of rough"
msgstr "<b>Đ”ĐŸĐŽĐ°Ń‚ĐșĐŸĐČĐ” Đ·ĐłŃ€ŃƒĐ±Ń–ŃˆĐ°ĐœĐœŃ</b> — ĐŽĐŸĐŽĐ°Ń‚Đž ĐŽĐŸĐŽĐ°Ń‚ĐșĐŸĐČĐžĐč шар Đ·ĐłŃ€ŃƒĐ±Ń–ŃˆĐ°ĐœĐœŃ"
@@ -10938,11 +10943,11 @@ msgctxt "Border mark"
msgid "None"
msgstr "ĐĐ”ĐŒĐ°Ń”"
-#: ../src/live_effects/lpe-ruler.cpp:33 ../src/widgets/arc-toolbar.cpp:328
+#: ../src/live_effects/lpe-ruler.cpp:33 ../src/widgets/arc-toolbar.cpp:319
msgid "Start"
msgstr "ĐŸĐŸŃ‡Đ°Ń‚ĐŸĐș"
-#: ../src/live_effects/lpe-ruler.cpp:34 ../src/widgets/arc-toolbar.cpp:341
+#: ../src/live_effects/lpe-ruler.cpp:34 ../src/widgets/arc-toolbar.cpp:332
msgid "End"
msgstr "ĐšŃ–ĐœĐ”Ń†ŃŒ"
@@ -10954,6 +10959,18 @@ msgstr "Ві_ĐŽŃŃ‚Đ°ĐœŃŒ ĐŒŃ–Đ¶ ĐżĐŸĐ·ĐœĐ°Ń‡ĐșĐ°ĐŒĐž:"
msgid "Distance between successive ruler marks"
msgstr "Đ’Ń–ĐŽŃŃ‚Đ°ĐœŃŒ ĐŒŃ–Đ¶ ĐżĐŸŃĐ»Ń–ĐŽĐŸĐČĐœĐžĐŒĐž ĐżĐŸĐ·ĐœĐ°Ń‡ĐșĐ°ĐŒĐž ĐœĐ° Đ»Ń–ĐœŃ–Đčці"
+#: ../src/live_effects/lpe-ruler.cpp:42
+#: ../share/extensions/foldablebox.inx.h:7
+#: ../share/extensions/interp_att_g.inx.h:9
+#: ../share/extensions/layout_nup.inx.h:3
+#: ../share/extensions/printing_marks.inx.h:11
+msgid "Unit:"
+msgstr "ĐžĐŽĐžĐœĐžŃ†Ń:"
+
+#: ../src/live_effects/lpe-ruler.cpp:42 ../src/widgets/ruler.cpp:202
+msgid "Unit"
+msgstr "ĐžĐŽĐžĐœĐžŃ†Ń"
+
#: ../src/live_effects/lpe-ruler.cpp:43
msgid "Ma_jor length:"
msgstr "_ĐžŃĐœĐŸĐČĐœĐ° ĐŽĐŸĐČĐ¶ĐžĐœĐ°:"
@@ -11037,26 +11054,18 @@ msgstr ""
"ĐŸĐ±â€™Ń”Đșта, яĐșі Đ±ŃƒĐ»ĐŸ ĐŽĐŸ ĐœŃŒĐŸĐłĐŸ Đ·Đ°ŃŃ‚ĐŸŃĐŸĐČĐ°ĐœĐŸ. ĐŻĐșŃ‰ĐŸ ĐČĐž Ń†ŃŒĐŸĐłĐŸ ĐœĐ” бажаєтД, ĐœĐ°Ń‚ĐžŃĐœŃ–Ń‚ŃŒ "
"ĐșĐœĐŸĐżĐșу «ХĐșасуĐČатО»."
-#: ../src/live_effects/lpe-simplify.cpp:29
+#: ../src/live_effects/lpe-simplify.cpp:30
msgid "Steps:"
msgstr "ĐšŃ€ĐŸĐșіĐČ:"
-#: ../src/live_effects/lpe-simplify.cpp:29
+#: ../src/live_effects/lpe-simplify.cpp:30
msgid "Change number of simplify steps "
msgstr "Đ—ĐŒŃ–ĐœĐžŃ‚Đž ĐșŃ–Đ»ŃŒĐșість ĐșŃ€ĐŸĐșіĐČ ŃĐżŃ€ĐŸŃ‰Đ”ĐœĐœŃ "
-#: ../src/live_effects/lpe-simplify.cpp:30
+#: ../src/live_effects/lpe-simplify.cpp:31
msgid "Roughly threshold:"
msgstr "ĐŸĐŸŃ€Ń–Đł ĐłŃ€ŃƒĐ±ĐŸŃŃ‚Ń–:"
-#: ../src/live_effects/lpe-simplify.cpp:31
-msgid "Helper size:"
-msgstr "Đ”ĐŸĐżĐŸĐŒŃ–Đ¶ĐœĐžĐč Ń€ĐŸĐ·ĐŒŃ–Ń€:"
-
-#: ../src/live_effects/lpe-simplify.cpp:31
-msgid "Helper size"
-msgstr "Đ”ĐŸĐżĐŸĐŒŃ–Đ¶ĐœŃ– Ń€ĐŸĐ·ĐŒŃ–Ń€Đž"
-
#: ../src/live_effects/lpe-simplify.cpp:32
msgid "Smooth angles:"
msgstr "ĐŸĐ»Đ°ĐČĐœŃ– Đșуто:"
@@ -11064,38 +11073,22 @@ msgstr "ĐŸĐ»Đ°ĐČĐœŃ– Đșуто:"
#: ../src/live_effects/lpe-simplify.cpp:32
msgid "Max degree difference on handles to preform a smooth"
msgstr ""
-"МаĐșŃĐžĐŒĐ°Đ»ŃŒĐœĐ° Ń€Ń–Đ·ĐœĐžŃ†Ń у граЮусах ĐŽĐ»Ń Đ”Đ»Đ”ĐŒĐ”ĐœŃ‚Ń–ĐČ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ, Ń‰ĐŸĐ± ĐżŃ€ĐŸĐłŃ€Đ°ĐŒĐ° ĐČĐžĐșĐŸĐœĐ°Đ»Đ° "
-"зглаЎжуĐČĐ°ĐœĐœŃ"
-
-#: ../src/live_effects/lpe-simplify.cpp:33
-msgid "Helper nodes"
-msgstr "Đ”ĐŸĐżĐŸĐŒŃ–Đ¶ĐœŃ– ĐČузлО"
-
-#: ../src/live_effects/lpe-simplify.cpp:33
-msgid "Show helper nodes"
-msgstr "ĐŸĐŸĐșазуĐČато ĐŽĐŸĐżĐŸĐŒŃ–Đ¶ĐœŃ– ĐČузлО"
+"МаĐșŃĐžĐŒĐ°Đ»ŃŒĐœĐ° Ń€Ń–Đ·ĐœĐžŃ†Ń у граЮусах ĐŽĐ»Ń Đ”Đ»Đ”ĐŒĐ”ĐœŃ‚Ń–ĐČ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ, Ń‰ĐŸĐ± ĐżŃ€ĐŸĐłŃ€Đ°ĐŒĐ° "
+"ĐČĐžĐșĐŸĐœĐ°Đ»Đ° зглаЎжуĐČĐ°ĐœĐœŃ"
-#: ../src/live_effects/lpe-simplify.cpp:35
-msgid "Helper handles"
-msgstr "Đ”ĐŸĐżĐŸĐŒŃ–Đ¶ĐœŃ– ĐČуса"
-
-#: ../src/live_effects/lpe-simplify.cpp:35
-msgid "Show helper handles"
-msgstr "ĐŸĐŸĐșазуĐČато ĐŽĐŸĐżĐŸĐŒŃ–Đ¶ĐœŃ– Đ”Đ»Đ”ĐŒĐ”ĐœŃ‚Đž ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ"
-
-#: ../src/live_effects/lpe-simplify.cpp:37
+#: ../src/live_effects/lpe-simplify.cpp:34
msgid "Paths separately"
msgstr "ĐšĐŸĐœŃ‚ŃƒŃ€Đž ĐŸĐșŃ€Đ”ĐŒĐŸ"
-#: ../src/live_effects/lpe-simplify.cpp:37
+#: ../src/live_effects/lpe-simplify.cpp:34
msgid "Simplifying paths (separately)"
msgstr "ĐĄĐżŃ€ĐŸŃ‰Đ”ĐœĐœŃ ĐșĐŸĐœŃ‚ŃƒŃ€Ń–ĐČ (ĐŸĐșŃ€Đ”ĐŒĐŸ)"
-#: ../src/live_effects/lpe-simplify.cpp:39
+#: ../src/live_effects/lpe-simplify.cpp:36
msgid "Just coalesce"
msgstr "ĐŸŃ€ĐŸŃŃ‚ĐŸ ĐŸĐ±â€™Ń”ĐŽĐœĐ°Ń‚Đž"
-#: ../src/live_effects/lpe-simplify.cpp:39
+#: ../src/live_effects/lpe-simplify.cpp:36
msgid "Simplify just coalesce"
msgstr "ĐĄĐżŃ€ĐŸŃŃ‚ĐžŃ‚Đž ĐŸĐ±â€™Ń”ĐŽĐœĐ°ĐœĐœŃ"
@@ -11188,7 +11181,7 @@ msgid "How many construction lines (tangents) to draw"
msgstr "ĐšŃ–Đ»ŃŒĐșість Đ»Ń–ĐœŃ–Đč ĐżĐŸĐ±ŃƒĐŽĐŸĐČĐž (ĐŽĐŸŃ‚ĐžŃ‡ĐœĐžŃ…) ĐŽĐ»Ń ĐŒĐ°Đ»ŃŽĐČĐ°ĐœĐœŃ"
#: ../src/live_effects/lpe-sketch.cpp:58
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2878
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2894
#: ../share/extensions/render_alphabetsoup.inx.h:3
msgid "Scale:"
msgstr "ĐœĐ°ŃŃˆŃ‚Đ°Đ±:"
@@ -11291,11 +11284,11 @@ msgstr "йОп Đ·â€™Ń”ĐŽĐœĐ°ĐœĐœŃ ĐŽĐ»Ń ĐœĐ”ĐłĐ»Đ°ĐŽĐșох ĐČŃƒĐ·Đ»Ń–ĐČ"
msgid "Limit for miter joins"
msgstr "ĐžĐ±ĐŒĐ”Đ¶Đ”ĐœĐœŃ ĐŽĐ»Ń Ń„Đ°Ń†Đ”Ń‚ĐœĐžŃ… Đ·â€™Ń”ĐŽĐœĐ°ĐœŃŒ"
-#: ../src/live_effects/lpe-taperstroke.cpp:536
+#: ../src/live_effects/lpe-taperstroke.cpp:448
msgid "Start point of the taper"
msgstr "ĐŸĐŸŃ‡Đ°Ń‚ĐșĐŸĐČа Ń‚ĐŸŃ‡Đșа Đ·ĐČужуĐČĐ°ĐœĐœŃ"
-#: ../src/live_effects/lpe-taperstroke.cpp:540
+#: ../src/live_effects/lpe-taperstroke.cpp:452
msgid "End point of the taper"
msgstr "ĐšŃ–ĐœŃ†Đ”ĐČа Ń‚ĐŸŃ‡Đșа Đ·ĐČŃƒĐ¶Đ”ĐœĐœŃ"
@@ -11363,8 +11356,8 @@ msgstr "Đ—ĐŒŃ–ĐœĐžŃ‚Đž Đ±ŃƒĐ»Ń–ĐČсьĐșĐžĐč ĐżĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€"
msgid "Change enumeration parameter"
msgstr "Đ—ĐŒŃ–ĐœĐ° ĐżĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Đ° ĐœŃƒĐŒĐ”Ń€Đ°Ń†Ń–Ń—"
-#: ../src/live_effects/parameter/filletchamferpointarray.cpp:782
-#: ../src/live_effects/parameter/filletchamferpointarray.cpp:843
+#: ../src/live_effects/parameter/filletchamferpointarray.cpp:771
+#: ../src/live_effects/parameter/filletchamferpointarray.cpp:832
msgid ""
"<b>Chamfer</b>: <b>Ctrl+Click</b> toggle type, <b>Shift+Click</b> open "
"dialog, <b>Ctrl+Alt+Click</b> reset"
@@ -11372,8 +11365,8 @@ msgstr ""
"<b>ЀасĐșа</b>: <b>Ctrl+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b> — ĐżĐ”Ń€Đ”ĐŒĐșĐœŃƒŃ‚Đž топ, <b>Shift+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b> — "
"ĐČіЮĐșрото ĐŽŃ–Đ°Đ»ĐŸĐłĐŸĐČĐ” ĐČіĐșĐœĐŸ, <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b> — сĐșĐžĐœŃƒŃ‚Đž."
-#: ../src/live_effects/parameter/filletchamferpointarray.cpp:786
-#: ../src/live_effects/parameter/filletchamferpointarray.cpp:847
+#: ../src/live_effects/parameter/filletchamferpointarray.cpp:775
+#: ../src/live_effects/parameter/filletchamferpointarray.cpp:836
msgid ""
"<b>Inverse Chamfer</b>: <b>Ctrl+Click</b> toggle type, <b>Shift+Click</b> "
"open dialog, <b>Ctrl+Alt+Click</b> reset"
@@ -11381,8 +11374,8 @@ msgstr ""
"<b>ЗĐČĐŸŃ€ĐŸŃ‚ĐœĐ° фасĐșа</b>: <b>Ctrl+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b> — ĐżĐ”Ń€Đ”ĐŒĐșĐœŃƒŃ‚Đž топ, <b>Shift"
"+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b> — ĐČіЮĐșрото ĐŽŃ–Đ°Đ»ĐŸĐłĐŸĐČĐ” ĐČіĐșĐœĐŸ, <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b> — сĐșĐžĐœŃƒŃ‚Đž."
-#: ../src/live_effects/parameter/filletchamferpointarray.cpp:790
-#: ../src/live_effects/parameter/filletchamferpointarray.cpp:851
+#: ../src/live_effects/parameter/filletchamferpointarray.cpp:779
+#: ../src/live_effects/parameter/filletchamferpointarray.cpp:840
msgid ""
"<b>Inverse Fillet</b>: <b>Ctrl+Click</b> toggle type, <b>Shift+Click</b> "
"open dialog, <b>Ctrl+Alt+Click</b> reset"
@@ -11390,8 +11383,8 @@ msgstr ""
"<b>ЗĐČĐŸŃ€ĐŸŃ‚ĐœĐ° ĐșŃ€ĐŸĐŒĐșа</b>: <b>Ctrl+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b> — ĐżĐ”Ń€Đ”ĐŒĐșĐœŃƒŃ‚Đž топ, <b>Shift"
"+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b> — ĐČіЮĐșрото ĐŽŃ–Đ°Đ»ĐŸĐłĐŸĐČĐ” ĐČіĐșĐœĐŸ, <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b> — сĐșĐžĐœŃƒŃ‚Đž."
-#: ../src/live_effects/parameter/filletchamferpointarray.cpp:794
-#: ../src/live_effects/parameter/filletchamferpointarray.cpp:855
+#: ../src/live_effects/parameter/filletchamferpointarray.cpp:783
+#: ../src/live_effects/parameter/filletchamferpointarray.cpp:844
msgid ""
"<b>Fillet</b>: <b>Ctrl+Click</b> toggle type, <b>Shift+Click</b> open "
"dialog, <b>Ctrl+Alt+Click</b> reset"
@@ -11399,49 +11392,49 @@ msgstr ""
"<b>ĐšŃ€ĐŸĐŒĐșа</b>: <b>Ctrl+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b> — ĐżĐ”Ń€Đ”ĐŒĐșĐœŃƒŃ‚Đž топ, <b>Shift+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b> "
"— ĐČіЮĐșрото ĐŽŃ–Đ°Đ»ĐŸĐłĐŸĐČĐ” ĐČіĐșĐœĐŸ, <b>Ctrl+Alt+ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ</b> — сĐșĐžĐœŃƒŃ‚Đž"
-#: ../src/live_effects/parameter/originalpath.cpp:71
-#: ../src/live_effects/parameter/originalpatharray.cpp:159
+#: ../src/live_effects/parameter/originalpath.cpp:67
+#: ../src/live_effects/parameter/originalpatharray.cpp:155
msgid "Link to path"
msgstr "ĐŸĐŸĐČ'ŃĐ·Đ°Ń‚Đž Đ· ĐșĐŸĐœŃ‚ŃƒŃ€ĐŸĐŒ"
-#: ../src/live_effects/parameter/originalpath.cpp:83
+#: ../src/live_effects/parameter/originalpath.cpp:79
msgid "Select original"
msgstr "ĐŸĐŸĐ·ĐœĐ°Ń‡ĐžŃ‚Đž ĐŸŃ€ĐžĐłŃ–ĐœĐ°Đ»"
-#: ../src/live_effects/parameter/originalpatharray.cpp:94
-#: ../src/widgets/gradient-toolbar.cpp:1205
+#: ../src/live_effects/parameter/originalpatharray.cpp:90
+#: ../src/widgets/gradient-toolbar.cpp:1208
msgid "Reverse"
msgstr "ĐžĐ±Đ”Ń€ĐœŃƒŃ‚Đž"
-#: ../src/live_effects/parameter/originalpatharray.cpp:134
-#: ../src/live_effects/parameter/originalpatharray.cpp:319
-#: ../src/live_effects/parameter/path.cpp:475
+#: ../src/live_effects/parameter/originalpatharray.cpp:130
+#: ../src/live_effects/parameter/originalpatharray.cpp:315
+#: ../src/live_effects/parameter/path.cpp:481
msgid "Link path parameter to path"
msgstr "ĐŸĐŸĐČ'ŃĐ·Đ°Ń‚Đž ĐżĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€ ĐșĐŸĐœŃ‚ŃƒŃ€Ńƒ Đ· ĐșĐŸĐœŃ‚ŃƒŃ€ĐŸĐŒ"
-#: ../src/live_effects/parameter/originalpatharray.cpp:171
+#: ../src/live_effects/parameter/originalpatharray.cpp:167
msgid "Remove Path"
msgstr "Đ’ĐžĐ»ŃƒŃ‡ĐžŃ‚Đž ĐșĐŸĐœŃ‚ŃƒŃ€"
-#: ../src/live_effects/parameter/originalpatharray.cpp:183
+#: ../src/live_effects/parameter/originalpatharray.cpp:179
#: ../src/ui/dialog/objects.cpp:1823
msgid "Move Down"
msgstr "ĐŸĐ”Ń€Đ”ŃŃƒĐœŃƒŃ‚Đž ĐœĐžĐ¶Ń‡Đ”"
-#: ../src/live_effects/parameter/originalpatharray.cpp:195
+#: ../src/live_effects/parameter/originalpatharray.cpp:191
#: ../src/ui/dialog/objects.cpp:1831
msgid "Move Up"
msgstr "ĐŸĐ”Ń€Đ”ŃŃƒĐœŃƒŃ‚Đž ĐČОщД"
-#: ../src/live_effects/parameter/originalpatharray.cpp:235
+#: ../src/live_effects/parameter/originalpatharray.cpp:231
msgid "Move path up"
msgstr "ĐŸĐ”Ń€Đ”ŃŃƒĐœŃƒŃ‚Đž ĐșĐŸĐœŃ‚ŃƒŃ€ ĐČОщД"
-#: ../src/live_effects/parameter/originalpatharray.cpp:265
+#: ../src/live_effects/parameter/originalpatharray.cpp:261
msgid "Move path down"
msgstr "ĐŸĐ”Ń€Đ”ŃŃƒĐœŃƒŃ‚Đž ĐșĐŸĐœŃ‚ŃƒŃ€ ĐœĐžĐ¶Ń‡Đ”"
-#: ../src/live_effects/parameter/originalpatharray.cpp:283
+#: ../src/live_effects/parameter/originalpatharray.cpp:279
msgid "Remove path"
msgstr "Đ’ĐžĐ»ŃƒŃ‡ĐžŃ‚Đž ĐșĐŸĐœŃ‚ŃƒŃ€"
@@ -11465,11 +11458,11 @@ msgstr "ВстаĐČото ĐșĐŸĐœŃ‚ŃƒŃ€"
msgid "Link to path on clipboard"
msgstr "ĐŸĐŸĐČâ€™ŃĐ·Đ°Ń‚Đž Đ· ĐșĐŸĐœŃ‚ŃƒŃ€ĐŸĐŒ у Đ±ŃƒŃ„Đ”Ń€Ń– ĐŸĐ±ĐŒŃ–ĐœŃƒ"
-#: ../src/live_effects/parameter/path.cpp:443
+#: ../src/live_effects/parameter/path.cpp:449
msgid "Paste path parameter"
msgstr "ВстаĐČото ĐżĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€ ĐșĐŸĐœŃ‚ŃƒŃ€Ńƒ"
-#: ../src/live_effects/parameter/point.cpp:103
+#: ../src/live_effects/parameter/point.cpp:124
msgid "Change point parameter"
msgstr "Đ—ĐŒŃ–ĐœĐžŃ‚Đž ĐżĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€ Ń‚ĐŸŃ‡ĐșĐž"
@@ -11818,7 +11811,7 @@ msgstr "ІД-ОБ'ЄКбА"
msgid "Start Inkscape in interactive shell mode."
msgstr "Запустото Inkscape у Ń€Đ”Đ¶ĐžĐŒŃ– Ń–ĐœŃ‚Đ”Ń€Đ°ĐșтоĐČĐœĐŸŃ— ĐŸĐ±ĐŸĐ»ĐŸĐœĐșĐž."
-#: ../src/main.cpp:871 ../src/main.cpp:1283
+#: ../src/main.cpp:871 ../src/main.cpp:1280
msgid ""
"[OPTIONS...] [FILE...]\n"
"\n"
@@ -11829,17 +11822,17 @@ msgstr ""
"Đ”ĐŸŃŃ‚ŃƒĐżĐœŃ– ĐżĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Đž:"
#. ## Add a menu for clear()
-#: ../src/menus-skeleton.h:16 ../src/ui/dialog/debug.cpp:83
+#: ../src/menus-skeleton.h:16 ../src/ui/dialog/debug.cpp:79
msgid "_File"
msgstr "_ЀаĐčĐ»"
#. " <verb verb-id=\"FileExportToOCAL\" />\n"
#. " <verb verb-id=\"DialogMetadata\" />\n"
-#: ../src/menus-skeleton.h:41 ../src/verbs.cpp:2713 ../src/verbs.cpp:2721
+#: ../src/menus-skeleton.h:41 ../src/verbs.cpp:2682 ../src/verbs.cpp:2690
msgid "_Edit"
msgstr "_Đ—ĐŒŃ–ĐœĐž"
-#: ../src/menus-skeleton.h:51 ../src/verbs.cpp:2477
+#: ../src/menus-skeleton.h:51 ../src/verbs.cpp:2446
msgid "Paste Si_ze"
msgstr "ВстаĐČото за р_ĐŸĐ·ĐŒŃ–Ń€ĐŸĐŒ"
@@ -11924,27 +11917,27 @@ msgstr "_Đ”ĐŸĐČіЮĐșа"
msgid "Tutorials"
msgstr "ĐŸŃ–ĐŽŃ€ŃƒŃ‡ĐœĐžĐșĐž"
-#: ../src/path-chemistry.cpp:54
+#: ../src/path-chemistry.cpp:63
msgid "Select <b>object(s)</b> to combine."
msgstr "ĐžĐ±Đ”Ń€Ń–Ń‚ŃŒ <b>ĐŸĐ±'єĐșт(Đž)</b> ĐŽĐ»Ń ĐșĐŸĐŒĐ±Ń–ĐœŃƒĐČĐ°ĐœĐœŃ."
-#: ../src/path-chemistry.cpp:58
+#: ../src/path-chemistry.cpp:67
msgid "Combining paths..."
msgstr "ĐĄĐżĐŸĐ»ŃƒŃ‡Đ”ĐœĐœŃ ĐșĐŸĐœŃ‚ŃƒŃ€Ń–ĐČ
"
-#: ../src/path-chemistry.cpp:174
+#: ../src/path-chemistry.cpp:177
msgid "Combine"
msgstr "Об'Ń”ĐŽĐœĐ°ĐœĐœŃ"
-#: ../src/path-chemistry.cpp:181
+#: ../src/path-chemistry.cpp:184
msgid "<b>No path(s)</b> to combine in the selection."
msgstr "<b>ĐĐ” ĐČĐșĐ°Đ·Đ°ĐœĐŸ ĐșĐŸĐœŃ‚ŃƒŃ€Ń–ĐČ</b> ĐŽĐ»Ń ĐșĐŸĐŒĐ±Ń–ĐœŃƒĐČĐ°ĐœĐœŃ у ĐČĐžĐ±Ń€Đ°ĐœĐŸĐŒŃƒ."
-#: ../src/path-chemistry.cpp:193
+#: ../src/path-chemistry.cpp:196
msgid "Select <b>path(s)</b> to break apart."
msgstr "Đ’ĐžĐ±Đ”Ń€Ń–Ń‚ŃŒ <b>ĐșĐŸĐœŃ‚ŃƒŃ€(Đž)</b> ĐŽĐ»Ń Ń€ĐŸĐ·ĐŽŃ–Đ»Đ”ĐœĐœŃ."
-#: ../src/path-chemistry.cpp:197
+#: ../src/path-chemistry.cpp:200
msgid "Breaking apart paths..."
msgstr "ĐŸĐŸĐŽŃ–Đ» ĐșĐŸĐœŃ‚ŃƒŃ€Ń–ĐČ ĐœĐ° Ń‡Đ°ŃŃ‚ĐžĐœĐžâ€Š"
@@ -11964,27 +11957,27 @@ msgstr "ĐŸĐŸĐ·ĐœĐ°Ń‡Ń‚Đ” <b>ĐŸĐ±'єĐșто</b> ĐŽĐ»Ń пДрДтĐČĐŸŃ€Đ”ĐœĐœŃ у
msgid "Converting objects to paths..."
msgstr "ĐŸĐ”Ń€Đ”Ń‚ĐČĐŸŃ€Đ”ĐœĐœŃ ĐŸĐ±'єĐșтіĐČ ĐœĐ° ĐșĐŸĐœŃ‚ŃƒŃ€Đžâ€Š"
-#: ../src/path-chemistry.cpp:327
+#: ../src/path-chemistry.cpp:324
msgid "Object to path"
msgstr "Об'єĐșт у ĐșĐŸĐœŃ‚ŃƒŃ€"
-#: ../src/path-chemistry.cpp:329
+#: ../src/path-chemistry.cpp:326
msgid "<b>No objects</b> to convert to path in the selection."
msgstr "ĐŁ ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐŸĐŒŃƒ <b>ĐœĐ”ĐŒĐ°Ń” ĐŸĐ±'єĐșтіĐČ</b>, Ń‰ĐŸ пДрДтĐČĐŸŃ€ŃŽŃŽŃ‚ŃŒŃŃ у ĐșĐŸĐœŃ‚ŃƒŃ€."
-#: ../src/path-chemistry.cpp:618
+#: ../src/path-chemistry.cpp:613
msgid "Select <b>path(s)</b> to reverse."
msgstr "Đ’ĐžĐ±Đ”Ń€Ń–Ń‚ŃŒ <b>ĐșĐŸĐœŃ‚ŃƒŃ€(Đž)</b> ĐŽĐ»Ń Đ·ĐŒŃ–ĐœĐž ĐœĐ°ĐżŃ€ŃĐŒŃƒ."
-#: ../src/path-chemistry.cpp:627
+#: ../src/path-chemistry.cpp:622
msgid "Reversing paths..."
msgstr "Đ ĐŸĐ·ĐČĐ”Ń€Ń‚Đ°ĐœĐœŃ ĐșĐŸĐœŃ‚ŃƒŃ€Ń–ĐČ
"
-#: ../src/path-chemistry.cpp:662
+#: ../src/path-chemistry.cpp:657
msgid "Reverse path"
msgstr "Đ ĐŸĐ·ĐČĐ”Ń€ĐœŃƒŃ‚Đž ĐșĐŸĐœŃ‚ŃƒŃ€"
-#: ../src/path-chemistry.cpp:664
+#: ../src/path-chemistry.cpp:659
msgid "<b>No paths</b> to reverse in the selection."
msgstr "ĐŁ ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐŸĐŒŃƒ <b>ĐœĐ”ĐŒĐ°Ń” ĐșĐŸĐœŃ‚ŃƒŃ€Ń–ĐČ</b> ĐŽĐ»Ń Đ·ĐŒŃ–ĐœĐž ĐœĐ°ĐżŃ€ŃĐŒŃƒ."
@@ -12109,7 +12102,7 @@ msgstr "Đ›Ń–Ń†Đ”ĐœĐ·Ń–Ń Open Font"
#. Create the Title label and edit control
#. TRANSLATORS: for info, see http://www.w3.org/TR/2000/CR-SVG-20000802/linking.html#AElementXLinkTitleAttribute
-#: ../src/rdf.cpp:235 ../src/ui/dialog/filedialogimpl-win32.cpp:1952
+#: ../src/rdf.cpp:235 ../src/ui/dialog/filedialogimpl-win32.cpp:1960
#: ../src/ui/dialog/object-attributes.cpp:57
msgid "Title:"
msgstr "Đ—Đ°ĐłĐŸĐ»ĐŸĐČĐŸĐș:"
@@ -12256,51 +12249,56 @@ msgstr "XML-Ń„Ń€Đ°ĐłĐŒĐ”ĐœŃ‚ RDF-Ń€ĐŸĐ·ĐŽŃ–Đ»Ńƒ Â«Đ›Ń–Ń†Đ”ĐœĐ·Ń–ŃÂ»"
msgid "Fixup broken links"
msgstr "ВопраĐČĐ»Đ”ĐœĐœŃ ĐżĐŸĐŒĐžĐ»ĐșĐŸĐČох ĐżĐŸŃĐžĐ»Đ°ĐœŃŒ"
-#: ../src/selection-chemistry.cpp:406
+#: ../src/selection-chemistry.cpp:401
msgid "Delete text"
msgstr "Đ’ĐžĐ»ŃƒŃ‡ĐžŃ‚Đž тДĐșст"
-#: ../src/selection-chemistry.cpp:414
+#: ../src/selection-chemistry.cpp:409
msgid "<b>Nothing</b> was deleted."
msgstr "<b>ĐŃ–Ń‡ĐŸĐłĐŸ</b> ĐœĐ” Đ±ŃƒĐ»ĐŸ ĐČĐžĐ»ŃƒŃ‡Đ”ĐœĐŸ."
-#: ../src/selection-chemistry.cpp:433
+#: ../src/selection-chemistry.cpp:426
#: ../src/ui/dialog/calligraphic-profile-rename.cpp:75
#: ../src/ui/dialog/swatches.cpp:277 ../src/ui/tools/text-tool.cpp:965
#: ../src/widgets/eraser-toolbar.cpp:93
-#: ../src/widgets/gradient-toolbar.cpp:1181
-#: ../src/widgets/gradient-toolbar.cpp:1195
-#: ../src/widgets/gradient-toolbar.cpp:1209
+#: ../src/widgets/gradient-toolbar.cpp:1184
+#: ../src/widgets/gradient-toolbar.cpp:1198
+#: ../src/widgets/gradient-toolbar.cpp:1212
#: ../src/widgets/node-toolbar.cpp:401
msgid "Delete"
msgstr "Đ’ĐžĐ»ŃƒŃ‡ĐžŃ‚Đž"
-#: ../src/selection-chemistry.cpp:461
+#: ../src/selection-chemistry.cpp:454
msgid "Select <b>object(s)</b> to duplicate."
msgstr "ĐŸĐŸĐ·ĐœĐ°Ń‡Ń‚Đ” <b>ĐŸĐ±'єĐșт(Đž)</b> ĐŽĐ»Ń ĐŽŃƒĐ±Đ»ŃŽĐČĐ°ĐœĐœŃ."
-#: ../src/selection-chemistry.cpp:572
+#: ../src/selection-chemistry.cpp:551
+#, c-format
+msgid "%s copy"
+msgstr "ĐšĐŸĐżŃ–Ń %s"
+
+#: ../src/selection-chemistry.cpp:574
msgid "Delete all"
msgstr "Đ’ĐžĐ»ŃƒŃ‡ĐžŃ‚Đž ĐČсД"
-#: ../src/selection-chemistry.cpp:763
+#: ../src/selection-chemistry.cpp:762
msgid "Select <b>some objects</b> to group."
msgstr "ĐŸĐŸĐ·ĐœĐ°Ń‡Ń‚Đ” <b>ĐŽĐČа Đ°Đ±ĐŸ Đ±Ń–Đ»ŃŒŃˆĐ” ĐŸĐ±'єĐșтіĐČ</b> ĐŽĐ»Ń групуĐČĐ°ĐœĐœŃ."
-#: ../src/selection-chemistry.cpp:778
+#: ../src/selection-chemistry.cpp:775
msgctxt "Verb"
msgid "Group"
msgstr "ЗгрупуĐČато"
-#: ../src/selection-chemistry.cpp:801
+#: ../src/selection-chemistry.cpp:798
msgid "Select a <b>group</b> to ungroup."
msgstr "ĐŸĐŸĐ·ĐœĐ°Ń‡Ń‚Đ” <b>групу</b> ĐŽĐ»Ń Ń€ĐŸĐ·ĐłŃ€ŃƒĐżŃƒĐČĐ°ĐœĐœŃ."
-#: ../src/selection-chemistry.cpp:816
+#: ../src/selection-chemistry.cpp:813
msgid "<b>No groups</b> to ungroup in the selection."
msgstr "ĐŁ ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐŸĐŒŃƒ <b>ĐœĐ”ĐŒĐ°Ń” груп</b>."
-#: ../src/selection-chemistry.cpp:874 ../src/sp-item-group.cpp:575
+#: ../src/selection-chemistry.cpp:869 ../src/sp-item-group.cpp:554
msgid "Ungroup"
msgstr "Đ ĐŸĐ·ĐłŃ€ŃƒĐżŃƒĐČато"
@@ -12308,223 +12306,223 @@ msgstr "Đ ĐŸĐ·ĐłŃ€ŃƒĐżŃƒĐČато"
msgid "Select <b>object(s)</b> to raise."
msgstr "ĐžĐ±Đ”Ń€Ń–Ń‚ŃŒ <b>ĐŸĐ±'єĐșт(Đž)</b> ĐŽĐ»Ń ĐżŃ–ĐŽĐœŃŃ‚Ń‚Ń."
-#: ../src/selection-chemistry.cpp:962 ../src/selection-chemistry.cpp:1019
-#: ../src/selection-chemistry.cpp:1047 ../src/selection-chemistry.cpp:1109
+#: ../src/selection-chemistry.cpp:962 ../src/selection-chemistry.cpp:1015
+#: ../src/selection-chemistry.cpp:1041 ../src/selection-chemistry.cpp:1099
msgid ""
"You cannot raise/lower objects from <b>different groups</b> or <b>layers</b>."
msgstr ""
"ĐĐ” ĐŒĐŸĐ¶ĐœĐ° ĐżŃ–ĐŽĐœŃ–ĐŒĐ°Ń‚Đž/ĐŸĐżŃƒŃĐșато ĐŸĐ±'єĐșто Đ· <b>Ń€Ń–Đ·ĐœĐžŃ… груп</b> чо <b>шаріĐČ</b>."
#. TRANSLATORS: "Raise" means "to raise an object" in the undo history
-#: ../src/selection-chemistry.cpp:1003
+#: ../src/selection-chemistry.cpp:999
msgctxt "Undo action"
msgid "Raise"
msgstr "ĐżŃ–ĐŽĐœŃŃ‚Ń‚Ń"
-#: ../src/selection-chemistry.cpp:1011
+#: ../src/selection-chemistry.cpp:1007
msgid "Select <b>object(s)</b> to raise to top."
msgstr "ĐŸĐŸĐ·ĐœĐ°Ń‡Ń‚Đ” <b>ĐŸĐ±'єĐșт(Đž)</b> ĐŽĐ»Ń ĐżŃ–ĐŽĐœŃ–ĐŒĐ°ĐœĐœŃ ĐœĐ°ĐłĐŸŃ€Ńƒ."
-#: ../src/selection-chemistry.cpp:1034
+#: ../src/selection-chemistry.cpp:1028
msgid "Raise to top"
msgstr "ĐŸŃ–ĐŽĐœŃŃ‚Đž ĐœĐ° ĐżĐ”Ń€Đ”ĐŽĐœŃ–Đč ĐżĐ»Đ°Đœ"
-#: ../src/selection-chemistry.cpp:1041
+#: ../src/selection-chemistry.cpp:1035
msgid "Select <b>object(s)</b> to lower."
msgstr "ĐŸĐŸĐ·ĐœĐ°Ń‡Ń‚Đ” <b>ĐŸĐ±'єĐșт(Đž)</b> ĐŽĐ»Ń ĐŸĐżŃƒŃĐșĐ°ĐœĐœŃ."
#. TRANSLATORS: "Lower" means "to lower an object" in the undo history
-#: ../src/selection-chemistry.cpp:1093
+#: ../src/selection-chemistry.cpp:1083
msgctxt "Undo action"
msgid "Lower"
msgstr "ĐŸĐżŃƒŃĐșĐ°ĐœĐœŃ"
-#: ../src/selection-chemistry.cpp:1101
+#: ../src/selection-chemistry.cpp:1091
msgid "Select <b>object(s)</b> to lower to bottom."
msgstr "ĐŸĐŸĐ·ĐœĐ°Ń‡Ń‚Đ” <b>ĐŸĐ±'єĐșт(Đž)</b> ĐŽĐ»Ń ĐŸĐżŃƒŃĐșĐ°ĐœĐœŃ ĐœĐ° ĐœĐžĐ·."
-#: ../src/selection-chemistry.cpp:1136
+#: ../src/selection-chemistry.cpp:1122
msgid "Lower to bottom"
msgstr "Опустото ĐœĐ° Đ·Đ°ĐŽĐœŃ–Đč ĐżĐ»Đ°Đœ"
-#: ../src/selection-chemistry.cpp:1146
+#: ../src/selection-chemistry.cpp:1132
msgid "Nothing to undo."
msgstr "ĐĐ”ĐŒĐ°Ń” ĐŸĐżĐ”Ń€Đ°Ń†Ń–Đč, Ń‰ĐŸ ĐŒĐŸĐ¶ĐœĐ° сĐșасуĐČато."
-#: ../src/selection-chemistry.cpp:1157
+#: ../src/selection-chemistry.cpp:1143
msgid "Nothing to redo."
msgstr "ĐĐ”ĐŒĐ°Ń” ĐŸĐżĐ”Ń€Đ°Ń†Ń–Đč, Ń‰ĐŸ ĐŒĐŸĐ¶ĐœĐ° ĐČĐ”Ń€ĐœŃƒŃ‚Đž."
-#: ../src/selection-chemistry.cpp:1229
+#: ../src/selection-chemistry.cpp:1215
msgid "Paste"
msgstr "ВстаĐČото"
-#: ../src/selection-chemistry.cpp:1237
+#: ../src/selection-chemistry.cpp:1223
msgid "Paste style"
msgstr "ВстаĐČото ŃŃ‚ĐžĐ»ŃŒ"
-#: ../src/selection-chemistry.cpp:1247
+#: ../src/selection-chemistry.cpp:1233
msgid "Paste live path effect"
msgstr "ВстаĐČото ДфДĐșт ĐŽĐžĐœĐ°ĐŒŃ–Ń‡ĐœĐŸĐłĐŸ ĐșĐŸĐœŃ‚ŃƒŃ€Ńƒ"
-#: ../src/selection-chemistry.cpp:1269
+#: ../src/selection-chemistry.cpp:1255
msgid "Select <b>object(s)</b> to remove live path effects from."
msgstr "ĐžĐ±Đ”Ń€Ń–Ń‚ŃŒ <b>ĐŸĐ±'єĐșт(Đž)</b> ĐŽĐ»Ń ĐČĐžĐ»ŃƒŃ‡Đ”ĐœĐœŃ Đ°ĐœŃ–ĐŒĐŸĐČĐ°ĐœĐžŃ… ДфДĐșтіĐČ ĐșĐŸĐœŃ‚ŃƒŃ€Ń–ĐČ."
-#: ../src/selection-chemistry.cpp:1281
+#: ../src/selection-chemistry.cpp:1267
msgid "Remove live path effect"
msgstr "Đ’ĐžĐ»ŃƒŃ‡ĐžŃ‚Đž Đ°ĐœŃ–ĐŒĐŸĐČĐ°ĐœĐžĐč ДфДĐșт ĐșĐŸĐœŃ‚ŃƒŃ€Ńƒ"
-#: ../src/selection-chemistry.cpp:1292
+#: ../src/selection-chemistry.cpp:1278
msgid "Select <b>object(s)</b> to remove filters from."
msgstr "Đ’ĐžĐ±Đ”Ń€Ń–Ń‚ŃŒ <b>ĐŸĐ±'єĐșт(Đž)</b>, Đ· яĐșох сліЎ ĐČĐžĐ»ŃƒŃ‡ĐžŃ‚Đž Ń„Ń–Đ»ŃŒŃ‚Ń€Đž."
-#: ../src/selection-chemistry.cpp:1302
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1678
+#: ../src/selection-chemistry.cpp:1288
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1693
msgid "Remove filter"
msgstr "Đ’ĐžĐ»ŃƒŃ‡ĐžŃ‚Đž Ń„Ń–Đ»ŃŒŃ‚Ń€"
-#: ../src/selection-chemistry.cpp:1311
+#: ../src/selection-chemistry.cpp:1297
msgid "Paste size"
msgstr "ВстаĐČото Ń€ĐŸĐ·ĐŒŃ–Ń€"
-#: ../src/selection-chemistry.cpp:1320
+#: ../src/selection-chemistry.cpp:1306
msgid "Paste size separately"
msgstr "ВстаĐČото Ń€ĐŸĐ·ĐŒŃ–Ń€ ĐŸĐșŃ€Đ”ĐŒĐŸ"
-#: ../src/selection-chemistry.cpp:1349
+#: ../src/selection-chemistry.cpp:1335
msgid "Select <b>object(s)</b> to move to the layer above."
msgstr "ĐŸĐŸĐ·ĐœĐ°Ń‡Ń‚Đ” <b>ĐŸĐ±'єĐșто</b> ĐŽĐ»Ń ĐżĐ”Ń€Đ”ĐŒŃ–Ń‰Đ”ĐœĐœŃ ĐœĐ° шар ĐČОщД."
-#: ../src/selection-chemistry.cpp:1376
+#: ../src/selection-chemistry.cpp:1360
msgid "Raise to next layer"
msgstr "ĐŸŃ–ĐŽĐœŃŃ‚ĐžŃŃ ĐœĐ° ĐœĐ°ŃŃ‚ŃƒĐżĐœĐžĐč шар"
-#: ../src/selection-chemistry.cpp:1383
+#: ../src/selection-chemistry.cpp:1367
msgid "No more layers above."
msgstr "Đ‘Ń–Đ»ŃŒŃˆĐ” ĐœĐ”ĐŒĐ°Ń” ĐČощох шаріĐČ."
-#: ../src/selection-chemistry.cpp:1395
+#: ../src/selection-chemistry.cpp:1378
msgid "Select <b>object(s)</b> to move to the layer below."
msgstr "ĐŸĐŸĐ·ĐœĐ°Ń‡Ń‚Đ” <b>ĐŸĐ±'єĐșто</b> ĐŽĐ»Ń ĐżĐ”Ń€Đ”ĐŒŃ–Ń‰Đ”ĐœĐœŃ ĐœĐ° шар ĐœĐžĐ¶Ń‡Đ”."
-#: ../src/selection-chemistry.cpp:1422
+#: ../src/selection-chemistry.cpp:1403
msgid "Lower to previous layer"
msgstr "Опустотося ĐœĐ° ĐżĐŸĐżĐ”Ń€Đ”ĐŽĐœŃ–Đč шар"
-#: ../src/selection-chemistry.cpp:1429
+#: ../src/selection-chemistry.cpp:1410
msgid "No more layers below."
msgstr "ĐĐ”ĐŒĐ°Ń” ĐœĐžĐ¶Ń‡ĐŸĐłĐŸ шару."
-#: ../src/selection-chemistry.cpp:1441
+#: ../src/selection-chemistry.cpp:1420
msgid "Select <b>object(s)</b> to move."
msgstr "ĐŸĐŸĐ·ĐœĐ°Ń‡Ń‚Đ” <b>ĐŸĐ±'єĐșто</b> ĐŽĐ»Ń ĐżĐ”Ń€Đ”ŃŃƒĐČĐ°ĐœĐœŃ."
-#: ../src/selection-chemistry.cpp:1459 ../src/verbs.cpp:2656
+#: ../src/selection-chemistry.cpp:1437 ../src/verbs.cpp:2625
msgid "Move selection to layer"
msgstr "ĐŸĐ”Ń€Đ”ŃŃƒĐœŃƒŃ‚Đž ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐ” ĐŽĐŸ шару"
#. An SVG element cannot have a transform. We could change 'x' and 'y' in response
#. to a translation... but leave that for another day.
-#: ../src/selection-chemistry.cpp:1549 ../src/seltrans.cpp:388
+#: ../src/selection-chemistry.cpp:1526 ../src/seltrans.cpp:390
msgid "Cannot transform an embedded SVG."
msgstr "ĐŸĐ”Ń€Đ”Ń‚ĐČĐŸŃ€Đ”ĐœĐœŃ ĐČĐ±ŃƒĐŽĐŸĐČĐ°ĐœĐŸĐłĐŸ SVG ĐœĐ”ĐŒĐŸĐ¶Đ»ĐžĐČĐ”."
-#: ../src/selection-chemistry.cpp:1720
+#: ../src/selection-chemistry.cpp:1696
msgid "Remove transform"
msgstr "ĐŸŃ€ĐžĐ±Ń€Đ°Ń‚Đž Ń‚Ń€Đ°ĐœŃŃ„ĐŸŃ€ĐŒĐ°Ń†Ń–ŃŽ"
-#: ../src/selection-chemistry.cpp:1827
+#: ../src/selection-chemistry.cpp:1803
msgid "Rotate 90° CCW"
msgstr "ĐžĐ±Đ”Ń€ĐœŃƒŃ‚Đž ĐœĐ° 90° ĐżŃ€ĐŸŃ‚Đž ĐłĐŸĐŽĐžĐœĐœĐžĐșĐŸĐČĐŸŃ— стрілĐșĐž"
-#: ../src/selection-chemistry.cpp:1827
+#: ../src/selection-chemistry.cpp:1803
msgid "Rotate 90° CW"
msgstr "ĐžĐ±Đ”Ń€ĐœŃƒŃ‚Đž ĐœĐ° 90° за ĐłĐŸĐŽĐžĐœĐœĐžĐșĐŸĐČĐŸŃŽ стрілĐșĐŸŃŽ"
-#: ../src/selection-chemistry.cpp:1848 ../src/seltrans.cpp:483
-#: ../src/ui/dialog/transformation.cpp:893
+#: ../src/selection-chemistry.cpp:1824 ../src/seltrans.cpp:483
+#: ../src/ui/dialog/transformation.cpp:891
msgid "Rotate"
msgstr "ОбДртатО"
-#: ../src/selection-chemistry.cpp:2204
+#: ../src/selection-chemistry.cpp:2173
msgid "Rotate by pixels"
msgstr "ОбДртатО ĐżĐŸŃ‚ĐŸŃ‡ĐșĐŸĐČĐŸ"
-#: ../src/selection-chemistry.cpp:2234 ../src/seltrans.cpp:480
-#: ../src/ui/dialog/transformation.cpp:868
+#: ../src/selection-chemistry.cpp:2203 ../src/seltrans.cpp:480
+#: ../src/ui/dialog/transformation.cpp:865 ../src/ui/widget/page-sizer.cpp:448
#: ../share/extensions/interp_att_g.inx.h:12
msgid "Scale"
msgstr "ĐœĐ°ŃŃˆŃ‚Đ°Đ±ŃƒĐČато"
-#: ../src/selection-chemistry.cpp:2259
+#: ../src/selection-chemistry.cpp:2228
msgid "Scale by whole factor"
msgstr "ĐœĐ°ŃŃˆŃ‚Đ°Đ±ŃƒĐČато за ĐżĐŸĐČĐœĐžĐŒ ĐșĐŸĐ”Ń„Ń–Ń†Ń–Ń”ĐœŃ‚ĐŸĐŒ"
-#: ../src/selection-chemistry.cpp:2274
+#: ../src/selection-chemistry.cpp:2243
msgid "Move vertically"
msgstr "ĐŸĐ”Ń€Đ”ĐŒŃ–ŃŃ‚ĐžŃ‚Đž ĐČДртОĐșĐ°Đ»ŃŒĐœĐŸ"
-#: ../src/selection-chemistry.cpp:2277
+#: ../src/selection-chemistry.cpp:2246
msgid "Move horizontally"
msgstr "ĐŸĐ”Ń€Đ”ĐŒŃ–ŃŃ‚ĐžŃ‚Đž ĐłĐŸŃ€ĐžĐ·ĐŸĐœŃ‚Đ°Đ»ŃŒĐœĐŸ"
-#: ../src/selection-chemistry.cpp:2280 ../src/selection-chemistry.cpp:2306
-#: ../src/seltrans.cpp:477 ../src/ui/dialog/transformation.cpp:806
+#: ../src/selection-chemistry.cpp:2249 ../src/selection-chemistry.cpp:2275
+#: ../src/seltrans.cpp:477 ../src/ui/dialog/transformation.cpp:802
msgid "Move"
msgstr "ĐŸĐ”Ń€Đ”ĐŒŃ–ŃŃ‚ĐžŃ‚Đž"
-#: ../src/selection-chemistry.cpp:2300
+#: ../src/selection-chemistry.cpp:2269
msgid "Move vertically by pixels"
msgstr "ĐŸĐ”Ń€Đ”ĐŒŃ–ŃŃ‚ĐžŃ‚Đž ĐČДртОĐșĐ°Đ»ŃŒĐœĐŸ ĐżĐŸŃ‚ĐŸŃ‡ĐșĐŸĐČĐŸ"
-#: ../src/selection-chemistry.cpp:2303
+#: ../src/selection-chemistry.cpp:2272
msgid "Move horizontally by pixels"
msgstr "ĐŸĐ”Ń€Đ”ĐŒŃ–ŃŃ‚ĐžŃ‚Đž ĐłĐŸŃ€ĐžĐ·ĐŸĐœŃ‚Đ°Đ»ŃŒĐœĐŸ ĐżĐŸŃ‚ĐŸŃ‡ĐșĐŸĐČĐŸ"
-#: ../src/selection-chemistry.cpp:2435
+#: ../src/selection-chemistry.cpp:2475
msgid "The selection has no applied path effect."
msgstr "ĐžĐ±Ń€Đ°ĐœĐ” ĐœĐ” ĐŒĐ°Ń” Đ·Đ°ŃŃ‚ĐŸŃĐŸĐČĐ°ĐœĐŸĐłĐŸ ДфДĐșту ĐșĐŸĐœŃ‚ŃƒŃ€Ńƒ."
-#: ../src/selection-chemistry.cpp:2607 ../src/ui/dialog/clonetiler.cpp:2223
+#: ../src/selection-chemistry.cpp:2567 ../src/ui/dialog/clonetiler.cpp:2221
msgid "Select an <b>object</b> to clone."
msgstr "ĐŸĐŸĐ·ĐœĐ°Ń‡Ń‚Đ” <b>ĐŸĐ±'єĐșт</b> ĐŽĐ»Ń ĐșĐ»ĐŸĐœŃƒĐČĐ°ĐœĐœŃ."
-#: ../src/selection-chemistry.cpp:2643
+#: ../src/selection-chemistry.cpp:2602
msgctxt "Action"
msgid "Clone"
msgstr "ĐšĐ»ĐŸĐœŃƒĐČато"
-#: ../src/selection-chemistry.cpp:2659
+#: ../src/selection-chemistry.cpp:2616
msgid "Select <b>clones</b> to relink."
msgstr "ĐŸĐŸĐ·ĐœĐ°Ń‡Ń‚Đ” <b>ĐșĐ»ĐŸĐœ</b> ĐŽĐ»Ń пДрДз'Ń”ĐŽĐœĐ°ĐœĐœŃ."
-#: ../src/selection-chemistry.cpp:2666
+#: ../src/selection-chemistry.cpp:2623
msgid "Copy an <b>object</b> to clipboard to relink clones to."
msgstr ""
"ĐšĐŸĐżŃ–ŃŽĐČато <b>ĐŸĐ±'єĐșт</b> ĐŽĐŸ Đ±ŃƒŃ„Đ”Ń€Đ° ĐŸĐ±ĐŒŃ–ĐœŃƒ Ń–ĐœŃ„ĐŸŃ€ĐŒĐ°Ń†Ń–Ń— ĐŽĐ»Ń пДрДз'Ń”ĐŽĐœĐ°ĐœĐœŃ ĐșĐ»ĐŸĐœŃ–ĐČ."
-#: ../src/selection-chemistry.cpp:2689
+#: ../src/selection-chemistry.cpp:2644
msgid "<b>No clones to relink</b> in the selection."
msgstr "ĐŁ ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐŸĐŒŃƒ <b>ĐœĐ”ĐŒĐ°Ń” ĐșĐ»ĐŸĐœŃ–ĐČ ĐŽĐ»Ń пДрДз'Ń”ĐŽĐœĐ°ĐœĐœŃ</b>."
-#: ../src/selection-chemistry.cpp:2692
+#: ../src/selection-chemistry.cpp:2647
msgid "Relink clone"
msgstr "ĐŸĐ”Ń€Đ”Đ·'Ń”ĐŽĐœĐ°Ń‚Đž ĐșĐ»ĐŸĐœ"
-#: ../src/selection-chemistry.cpp:2706
+#: ../src/selection-chemistry.cpp:2661
msgid "Select <b>clones</b> to unlink."
msgstr "ĐŸĐŸĐ·ĐœĐ°Ń‡Ń‚Đ” <b>ĐșĐ»ĐŸĐœ</b> ĐŽĐ»Ń ĐČіЮ'Ń”ĐŽĐœĐ°ĐœĐœŃ."
-#: ../src/selection-chemistry.cpp:2762
+#: ../src/selection-chemistry.cpp:2714
msgid "<b>No clones to unlink</b> in the selection."
msgstr "ĐŁ ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐŸĐŒŃƒ <b>ĐœĐ”ĐŒĐ°Ń” ĐșĐ»ĐŸĐœŃ–ĐČ</b>."
-#: ../src/selection-chemistry.cpp:2766
+#: ../src/selection-chemistry.cpp:2718
msgid "Unlink clone"
msgstr "ВіЮ'Ń”ĐŽĐœĐ°Ń‚Đž ĐșĐ»ĐŸĐœ"
-#: ../src/selection-chemistry.cpp:2779
+#: ../src/selection-chemistry.cpp:2731
msgid ""
"Select a <b>clone</b> to go to its original. Select a <b>linked offset</b> "
"to go to its source. Select a <b>text on path</b> to go to the path. Select "
@@ -12534,7 +12532,7 @@ msgstr ""
"пДрДĐčто ĐŽĐŸ її ĐșĐŸĐœŃ‚ŃƒŃ€Ńƒ; <b>тДĐșст ĐČĐ·ĐŽĐŸĐČж ĐșĐŸĐœŃ‚ŃƒŃ€Ńƒ</b>, Ń‰ĐŸĐ± пДрДĐčто ĐŽĐŸ ĐčĐŸĐłĐŸ "
"ĐșĐŸĐœŃ‚ŃƒŃ€Ńƒ. ĐŸĐŸĐ·ĐœĐ°Ń‡Ń‚Đ” <b>тДĐșст у Ń€Đ°ĐŒŃ†Ń–</b>, Ń‰ĐŸĐ± пДрДĐčто ĐŽĐŸ Ń€Đ°ĐŒĐșĐž."
-#: ../src/selection-chemistry.cpp:2827
+#: ../src/selection-chemistry.cpp:2781
msgid ""
"<b>Cannot find</b> the object to select (orphaned clone, offset, textpath, "
"flowed text?)"
@@ -12542,7 +12540,7 @@ msgstr ""
"<b>ĐĐ” ĐČЮається Đ·ĐœĐ°Đčто</b> ĐŸĐ±'єĐșт, Ń‰ĐŸ ĐżĐŸĐ·ĐœĐ°Ń‡Đ°Ń”Ń‚ŃŒŃŃ (ĐŸŃĐžŃ€ĐŸŃ‚Ń–Đ»ĐžĐč ĐșĐ»ĐŸĐœ, ĐČŃ‚ŃĐ¶Đșа, "
"тДĐșст ĐČĐ·ĐŽĐŸĐČж ĐșĐŸĐœŃ‚ŃƒŃ€Ńƒ чо тДĐșст у Ń€Đ°ĐŒŃ†Ń–?)"
-#: ../src/selection-chemistry.cpp:2833
+#: ../src/selection-chemistry.cpp:2787
msgid ""
"The object you're trying to select is <b>not visible</b> (it is in &lt;"
"defs&gt;)"
@@ -12550,132 +12548,132 @@ msgstr ""
"Об'єĐșт, яĐșĐžĐč ĐČĐž ĐœĐ°ĐŒĐ°ĐłĐ°Ń”Ń‚Đ”ŃŃŒ ĐżĐŸĐ·ĐœĐ°Ń‡ĐžŃ‚Đž, є <b>ĐœĐ”ĐČĐžĐŽĐžĐŒĐžĐŒ</b> (Đ·ĐœĐ°Ń…ĐŸĐŽĐžŃ‚ŃŒŃŃ у &lt;"
"defs&gt;)"
-#: ../src/selection-chemistry.cpp:2922
+#: ../src/selection-chemistry.cpp:2877
msgid "Select path(s) to fill."
msgstr "ĐŸĐŸĐ·ĐœĐ°Ń‡Ń‚Đ” ĐșĐŸĐœŃ‚ŃƒŃ€Đž ĐŽĐ»Ń Đ·Đ°ĐżĐŸĐČĐœĐ”ĐœĐœŃ."
-#: ../src/selection-chemistry.cpp:2940
+#: ../src/selection-chemistry.cpp:2895
msgid "Select <b>object(s)</b> to convert to marker."
msgstr "ĐŸĐŸĐ·ĐœĐ°Ń‡Ń‚Đ” <b>ĐŸĐ±'єĐșт(Đž)</b> ĐŽĐ»Ń пДрДтĐČĐŸŃ€Đ”ĐœĐœŃ у ĐŒĐ°Ń€ĐșДр."
-#: ../src/selection-chemistry.cpp:3015
+#: ../src/selection-chemistry.cpp:2969
msgid "Objects to marker"
msgstr "Об'єĐșто у ĐŒĐ°Ń€ĐșДр"
-#: ../src/selection-chemistry.cpp:3040
+#: ../src/selection-chemistry.cpp:2995
msgid "Select <b>object(s)</b> to convert to guides."
msgstr "ĐŸĐŸĐ·ĐœĐ°Ń‡Ń‚Đ” <b>ĐŸĐ±'єĐșт(Đž)</b> ĐŽĐ»Ń пДрДтĐČĐŸŃ€Đ”ĐœĐœŃ у ĐœĐ°ĐżŃ€ŃĐŒĐœŃ–."
-#: ../src/selection-chemistry.cpp:3063
+#: ../src/selection-chemistry.cpp:3016
msgid "Objects to guides"
msgstr "Об'єĐșто у ĐœĐ°ĐżŃ€ŃĐŒĐœŃ–"
-#: ../src/selection-chemistry.cpp:3099
+#: ../src/selection-chemistry.cpp:3052
msgid "Select <b>objects</b> to convert to symbol."
msgstr "ĐŸĐŸĐ·ĐœĐ°Ń‡Ń‚Đ” <b>ĐŸĐ±â€™Ń”Đșто</b> ĐŽĐ»Ń пДрДтĐČĐŸŃ€Đ”ĐœĐœŃ ĐœĐ° ŃĐžĐŒĐČĐŸĐ»."
-#: ../src/selection-chemistry.cpp:3202
+#: ../src/selection-chemistry.cpp:3153
msgid "Group to symbol"
msgstr "Групу у ŃĐžĐŒĐČĐŸĐ»"
-#: ../src/selection-chemistry.cpp:3221
+#: ../src/selection-chemistry.cpp:3172
msgid "Select a <b>symbol</b> to extract objects from."
msgstr "ĐŸĐŸĐ·ĐœĐ°Ń‡Ń‚Đ” <b>ŃĐžĐŒĐČĐŸĐ»</b> ĐŽĐ»Ń ĐČĐžĐŽĐŸĐ±ŃƒĐČĐ°ĐœĐœŃ Đ· ĐœŃŒĐŸĐłĐŸ ĐŸĐ±â€™Ń”ĐșтіĐČ."
-#: ../src/selection-chemistry.cpp:3230
+#: ../src/selection-chemistry.cpp:3181
msgid "Select only one <b>symbol</b> in Symbol dialog to convert to group."
msgstr ""
"ĐŸĐŸĐ·ĐœĐ°Ń‡Ń‚Đ” лОшД ĐŸĐŽĐžĐœ <b>ŃĐžĐŒĐČĐŸĐ»</b> у ĐŽŃ–Đ°Đ»ĐŸĐłĐŸĐČĐŸĐŒŃƒ ĐČіĐșĐœŃ– ŃĐžĐŒĐČĐŸĐ»Ń–ĐČ ĐŽĐ»Ń "
"пДрДтĐČĐŸŃ€Đ”ĐœĐœŃ ĐœĐ° групу."
-#: ../src/selection-chemistry.cpp:3288
+#: ../src/selection-chemistry.cpp:3237
msgid "Group from symbol"
msgstr "Група Đ· ŃĐžĐŒĐČĐŸĐ»Ńƒ"
-#: ../src/selection-chemistry.cpp:3306
+#: ../src/selection-chemistry.cpp:3255
msgid "Select <b>object(s)</b> to convert to pattern."
msgstr "ĐŸĐŸĐ·ĐœĐ°Ń‡Ń‚Đ” <b>ĐŸĐ±'єĐșт(Đž)</b> ĐŽĐ»Ń пДрДтĐČĐŸŃ€Đ”ĐœĐœŃ у ĐČŃ–Đ·Đ”Ń€ŃƒĐœĐŸĐș."
-#: ../src/selection-chemistry.cpp:3405
+#: ../src/selection-chemistry.cpp:3351
msgid "Objects to pattern"
msgstr "Об'єĐșто у ĐČŃ–Đ·Đ”Ń€ŃƒĐœĐŸĐș"
-#: ../src/selection-chemistry.cpp:3421
+#: ../src/selection-chemistry.cpp:3367
msgid "Select an <b>object with pattern fill</b> to extract objects from."
msgstr ""
"ĐŸĐŸĐ·ĐœĐ°Ń‡Ń‚Đ” <b>ĐŸĐ±'єĐșт Ń–Đ· Đ·Đ°ĐżĐŸĐČĐœĐ”ĐœĐœŃĐŒ ĐČŃ–Đ·Đ”Ń€ŃƒĐœĐșĐŸĐŒ</b> ĐŽĐ»Ń ĐČотягуĐČĐ°ĐœĐœŃ ĐŸĐ±'єĐșтіĐČ Đ· "
"ĐœŃŒĐŸĐłĐŸ."
-#: ../src/selection-chemistry.cpp:3482
+#: ../src/selection-chemistry.cpp:3426
msgid "<b>No pattern fills</b> in the selection."
msgstr "ĐŁ ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐŸĐŒŃƒ <b>ĐœĐ”ĐŒĐ°Ń” Đ·Đ°ĐżĐŸĐČĐœĐ”ĐœĐœŃ ĐČŃ–Đ·Đ”Ń€ŃƒĐœĐșĐŸĐŒ</b>."
-#: ../src/selection-chemistry.cpp:3485
+#: ../src/selection-chemistry.cpp:3429
msgid "Pattern to objects"
msgstr "Đ’Ń–Đ·Đ”Ń€ŃƒĐœĐŸĐș у ĐŸĐ±'єĐșто"
-#: ../src/selection-chemistry.cpp:3576
+#: ../src/selection-chemistry.cpp:3516
msgid "Select <b>object(s)</b> to make a bitmap copy."
msgstr "ĐŸĐŸĐ·ĐœĐ°Ń‡Ń‚Đ” <b>ĐŸĐ±'єĐșто</b> ĐŽĐ»Ń стĐČĐŸŃ€Đ”ĐœĐœŃ Ń—Ń…ĐœŃŒĐŸŃ— Ń€Đ°ŃŃ‚Ń€ĐŸĐČĐŸŃ— ĐșĐŸĐżŃ–Ń—."
-#: ../src/selection-chemistry.cpp:3580
+#: ../src/selection-chemistry.cpp:3520
msgid "Rendering bitmap..."
msgstr "ĐŸĐŸĐșаз Ń€Đ°ŃŃ‚Ń€ĐŸĐČĐŸĐłĐŸ Đ·ĐŸĐ±Ń€Đ°Đ¶Đ”ĐœĐœŃâ€Š"
-#: ../src/selection-chemistry.cpp:3767
+#: ../src/selection-chemistry.cpp:3705
msgid "Create bitmap"
msgstr "СтĐČĐŸŃ€Đ”ĐœĐœŃ Ń€Đ°ŃŃ‚Ń€ĐŸĐČĐŸĐłĐŸ Đ·ĐŸĐ±Ń€Đ°Đ¶Đ”ĐœĐœŃ"
-#: ../src/selection-chemistry.cpp:3792 ../src/selection-chemistry.cpp:3911
+#: ../src/selection-chemistry.cpp:3730 ../src/selection-chemistry.cpp:3842
msgid "Select <b>object(s)</b> to create clippath or mask from."
msgstr ""
"ĐžĐ±Đ”Ń€Ń–Ń‚ŃŒ <b>ĐŸĐ±'єĐșт(Đž)</b> ĐŽĐ»Ń стĐČĐŸŃ€Đ”ĐœĐœŃ Đ· ĐœĐžŃ… ĐșĐŸĐœŃ‚ŃƒŃ€Ńƒ ĐČĐžŃ€Ń–Đ·Đ°ĐœĐœŃ Đ°Đ±ĐŸ ĐŒĐ°ŃĐșĐž."
-#: ../src/selection-chemistry.cpp:3885
+#: ../src/selection-chemistry.cpp:3816
msgid "Create Clip Group"
msgstr "СтĐČĐŸŃ€ĐžŃ‚Đž групу-ĐŸĐ±ĐłĐŸŃ€Ń‚Đșу"
-#: ../src/selection-chemistry.cpp:3914
+#: ../src/selection-chemistry.cpp:3845
msgid "Select mask object and <b>object(s)</b> to apply clippath or mask to."
msgstr ""
"ĐžĐ±Đ”Ń€Ń–Ń‚ŃŒ ĐŸĐ±'єĐșт-ĐŒĐ°ŃĐșу та <b>ĐŸĐ±'єĐșт(Đž)</b> ĐŽĐ»Ń Đ·Đ°ŃŃ‚ĐŸŃŃƒĐČĐ°ĐœĐœŃ ĐČĐžŃ€Ń–Đ·Đ°ĐœĐœŃ Đ°Đ±ĐŸ "
"ĐŒĐ°ŃĐșуĐČĐ°ĐœĐœŃ."
-#: ../src/selection-chemistry.cpp:4095
+#: ../src/selection-chemistry.cpp:3992
msgid "Set clipping path"
msgstr "ЗаЮато ĐșĐŸĐœŃ‚ŃƒŃ€ ĐČĐžŃ€Ń–Đ·Đ°ĐœĐœŃ"
-#: ../src/selection-chemistry.cpp:4097
+#: ../src/selection-chemistry.cpp:3994
msgid "Set mask"
msgstr "ЗаЮато ĐŒĐ°ŃĐșу"
-#: ../src/selection-chemistry.cpp:4112
+#: ../src/selection-chemistry.cpp:4009
msgid "Select <b>object(s)</b> to remove clippath or mask from."
msgstr ""
"ĐžĐ±Đ”Ń€Ń–Ń‚ŃŒ <b>ĐŸĐ±'єĐșт(Đž)</b> ĐŽĐ»Ń ĐČĐžĐ»ŃƒŃ‡Đ”ĐœĐœŃ ĐșĐŸĐœŃ‚ŃƒŃ€Ńƒ ĐČĐžŃ€Ń–Đ·Đ°ĐœĐœŃ Đ°Đ±ĐŸ ĐŒĐ°ŃĐșуĐČĐ°ĐœĐœŃ."
-#: ../src/selection-chemistry.cpp:4232
+#: ../src/selection-chemistry.cpp:4125
msgid "Release clipping path"
msgstr "ВіЮ'Ń”ĐŽĐœĐ°Ń‚Đž заĐșŃ€Ń–ĐżĐ»Đ”ĐœĐžĐč ĐșĐŸĐœŃ‚ŃƒŃ€"
-#: ../src/selection-chemistry.cpp:4234
+#: ../src/selection-chemistry.cpp:4127
msgid "Release mask"
msgstr "МасĐșу Đ·ĐœŃŃ‚ĐŸ"
-#: ../src/selection-chemistry.cpp:4253
+#: ../src/selection-chemistry.cpp:4146
msgid "Select <b>object(s)</b> to fit canvas to."
msgstr "ĐžĐ±Đ”Ń€Ń–Ń‚ŃŒ <b>ĐŸĐ±'єĐșт(Đž)</b> ĐŽĐ»Ń ĐżŃ–ĐŽĐ±ĐžŃ€Đ°ĐœĐœŃ Ń—Ń…ĐœŃ–Ń… Ń€ĐŸĐ·ĐŒŃ–Ń€Ń–ĐČ ĐżŃ–ĐŽ ĐżĐŸĐ»ĐŸŃ‚ĐœĐŸ."
#. Fit Page
-#: ../src/selection-chemistry.cpp:4273 ../src/verbs.cpp:2992
+#: ../src/selection-chemistry.cpp:4166 ../src/verbs.cpp:2961
msgid "Fit Page to Selection"
msgstr "ĐŸŃ–ĐŽŃ–ĐłĐœĐ°Ń‚Đž ĐżĐŸĐ»ĐŸŃ‚ĐœĐŸ ĐŽĐŸ ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐŸŃ— ĐŸĐ±Đ»Đ°ŃŃ‚Ń–"
-#: ../src/selection-chemistry.cpp:4302 ../src/verbs.cpp:2994
+#: ../src/selection-chemistry.cpp:4195 ../src/verbs.cpp:2963
msgid "Fit Page to Drawing"
msgstr "ĐŸŃ–ĐŽŃ–ĐłĐœĐ°Ń‚Đž ĐżĐŸĐ»ĐŸŃ‚ĐœĐŸ піЮ ĐœĐ°ĐŒĐ°Đ»ŃŒĐŸĐČĐ°ĐœĐ”"
-#: ../src/selection-chemistry.cpp:4323 ../src/verbs.cpp:2996
+#: ../src/selection-chemistry.cpp:4216 ../src/verbs.cpp:2965
msgid "Fit Page to Selection or Drawing"
msgstr "ĐŸŃ–ĐŽŃ–ĐłĐœĐ°Ń‚Đž ĐżĐŸĐ»ĐŸŃ‚ĐœĐŸ піЮ ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœŃƒ ĐŸĐ±Đ»Đ°ŃŃ‚ŃŒ чо ĐŸĐ±Đ»Đ°ŃŃ‚ŃŒ ĐșŃ€Đ”ŃĐ»Đ”ĐœĐœŃ"
@@ -12814,23 +12812,23 @@ msgstr ""
"<b>ĐŠĐ”ĐœŃ‚Ń€</b> ĐŸĐ±Đ”Ń€Ń‚Đ°ĐœĐœŃ та ĐœĐ°Ń…ĐžĐ»Ńƒ: ĐčĐŸĐłĐŸ ĐŒĐŸĐ¶ĐœĐ° ĐżĐ”Ń€Đ”Ń‚ŃĐłĐœŃƒŃ‚Đž; Đ·ĐŒŃ–ĐœĐ° Ń€ĐŸĐ·ĐŒŃ–Ń€Ńƒ Đ· "
"Shift таĐșĐŸĐ¶ ĐČŃ–ĐŽĐ±ŃƒĐČається ĐœĐ°ĐČĐșĐŸĐ»ĐŸ ĐœŃŒĐŸĐłĐŸ"
-#: ../src/seltrans.cpp:486 ../src/ui/dialog/transformation.cpp:981
+#: ../src/seltrans.cpp:486 ../src/ui/dialog/transformation.cpp:980
msgid "Skew"
msgstr "ĐĐ°Ń…ĐžĐ»"
-#: ../src/seltrans.cpp:499
+#: ../src/seltrans.cpp:500
msgid "Set center"
msgstr "Đ’ŃŃ‚Đ°ĐœĐŸĐČĐ»Đ”ĐœĐœŃ Ń†Đ”ĐœŃ‚Ń€Ńƒ"
-#: ../src/seltrans.cpp:574
+#: ../src/seltrans.cpp:573
msgid "Stamp"
msgstr "ĐšŃ‚Đ°ĐŒĐż"
-#: ../src/seltrans.cpp:723
+#: ../src/seltrans.cpp:722
msgid "Reset center"
msgstr "ĐŸĐŸĐČĐ”Ń€ĐœĐ”ĐœĐœŃ ĐŽĐŸ ĐżĐŸŃ‡Đ°Ń‚ĐșĐŸĐČĐŸĐłĐŸ Ń†Đ”ĐœŃ‚Ń€Ńƒ"
-#: ../src/seltrans.cpp:955 ../src/seltrans.cpp:1060
+#: ../src/seltrans.cpp:954 ../src/seltrans.cpp:1059
#, c-format
msgid "<b>Scale</b>: %0.2f%% x %0.2f%%; with <b>Ctrl</b> to lock ratio"
msgstr ""
@@ -12838,24 +12836,24 @@ msgstr ""
#. TRANSLATORS: don't modify the first ";"
#. (it will NOT be displayed as ";" - only the second one will be)
-#: ../src/seltrans.cpp:1199
+#: ../src/seltrans.cpp:1198
#, c-format
msgid "<b>Skew</b>: %0.2f&#176;; with <b>Ctrl</b> to snap angle"
msgstr "<b>ĐĐ°Ń…ĐžĐ»</b>: %0.2f&#176;; Đ· <b>Ctrl</b> — ĐŸĐ±ĐŒĐ”Đ¶ĐžŃ‚Đž Đșут"
#. TRANSLATORS: don't modify the first ";"
#. (it will NOT be displayed as ";" - only the second one will be)
-#: ../src/seltrans.cpp:1274
+#: ../src/seltrans.cpp:1273
#, c-format
msgid "<b>Rotate</b>: %0.2f&#176;; with <b>Ctrl</b> to snap angle"
msgstr "<b>ĐžĐ±Đ”Ń€Ń‚Đ°ĐœĐœŃ</b>: %0.2f&#176;; Đ· <b>Ctrl</b> — ĐŸĐ±ĐŒĐ”Đ¶ĐžŃ‚Đž Đșут"
-#: ../src/seltrans.cpp:1311
+#: ../src/seltrans.cpp:1310
#, c-format
msgid "Move <b>center</b> to %s, %s"
msgstr "ĐŸĐ”Ń€Đ”ĐŒŃ–ŃŃ‚ĐžŃ‚Đž <b>Ń†Đ”ĐœŃ‚Ń€</b> ĐŽĐŸ %s, %s"
-#: ../src/seltrans.cpp:1465
+#: ../src/seltrans.cpp:1464
#, c-format
msgid ""
"<b>Move</b> by %s, %s; with <b>Ctrl</b> to restrict to horizontal/vertical; "
@@ -12869,8 +12867,8 @@ msgstr ""
msgid "Keyboard directory (%s) is unavailable."
msgstr "ĐšĐ°Ń‚Đ°Đ»ĐŸĐł Đ· ĐżĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Đ°ĐŒĐž ĐșлаĐČіатуро (%s) ĐœĐ”ĐŽĐŸŃŃ‚ŃƒĐżĐœĐžĐč."
-#: ../src/shortcuts.cpp:337 ../src/ui/dialog/export.cpp:1298
-#: ../src/ui/dialog/export.cpp:1332
+#: ../src/shortcuts.cpp:337 ../src/ui/dialog/export.cpp:1296
+#: ../src/ui/dialog/export.cpp:1330
msgid "Select a filename for exporting"
msgstr "Đ’ĐžĐ±Đ”Ń€Ń–Ń‚ŃŒ ĐœĐ°Đ·ĐČу фаĐčла ĐŽĐ»Ń Đ”ĐșŃĐżĐŸŃ€Ń‚Ńƒ"
@@ -12887,22 +12885,22 @@ msgstr "ĐŽĐŸ %s"
msgid "without URI"
msgstr "бДз аЎрДсО"
-#: ../src/sp-ellipse.cpp:344
+#: ../src/sp-ellipse.cpp:361
msgid "Segment"
msgstr "Đ’Ń–ĐŽŃ€Ń–Đ·ĐŸĐș"
-#: ../src/sp-ellipse.cpp:346
+#: ../src/sp-ellipse.cpp:363
msgid "Arc"
msgstr "Дуга"
#. Ellipse
-#: ../src/sp-ellipse.cpp:349 ../src/sp-ellipse.cpp:356
+#: ../src/sp-ellipse.cpp:366 ../src/sp-ellipse.cpp:373
#: ../src/ui/dialog/inkscape-preferences.cpp:412
#: ../src/widgets/pencil-toolbar.cpp:163
msgid "Ellipse"
msgstr "Еліпс"
-#: ../src/sp-ellipse.cpp:353
+#: ../src/sp-ellipse.cpp:370
msgid "Circle"
msgstr "ĐšĐŸĐ»ĐŸ"
@@ -12928,7 +12926,7 @@ msgid "Linked Flowed Text"
msgstr "ĐŸĐŸĐČâ€™ŃĐ·Đ°ĐœĐžĐč ĐșĐŸĐœŃ‚ŃƒŃ€ĐœĐžĐč тДĐșст"
#: ../src/sp-flowtext.cpp:288 ../src/sp-text.cpp:367
-#: ../src/ui/tools/text-tool.cpp:1557
+#: ../src/ui/tools/text-tool.cpp:1556
msgid " [truncated]"
msgstr " (ĐŸĐ±Ń€Ń–Đ·Đ°ĐœĐŸ)"
@@ -12944,7 +12942,7 @@ msgstr[2] "(%d ŃĐžĐŒĐČĐŸĐ»Ń–ĐČ%s)"
msgid "Create Guides Around the Page"
msgstr "СтĐČĐŸŃ€ĐžŃ‚Đž ĐœĐ°ĐżŃ€ŃĐŒĐœŃ– ĐœĐ°ĐČĐșĐŸĐ»ĐŸ ŃŃ‚ĐŸŃ€Ń–ĐœĐșĐž"
-#: ../src/sp-guide.cpp:258 ../src/verbs.cpp:2549
+#: ../src/sp-guide.cpp:258 ../src/verbs.cpp:2518
msgid "Delete All Guides"
msgstr "Đ’ĐžĐ»ŃƒŃ‡ĐžŃ‚Đž ĐČсі ĐœĐ°ĐżŃ€ŃĐŒĐœŃ–"
@@ -12990,40 +12988,40 @@ msgstr "[ĐżĐŸĐŒĐžĐ»ĐșĐŸĐČĐ” ĐżĐŸŃĐžĐ»Đ°ĐœĐœŃ]: %s"
msgid "%d &#215; %d: %s"
msgstr "%d &#215; %d: %s"
-#: ../src/sp-item-group.cpp:322
+#: ../src/sp-item-group.cpp:307
msgid "Group"
msgstr "ЗгрупуĐČато"
-#: ../src/sp-item-group.cpp:328 ../src/sp-switch.cpp:68
+#: ../src/sp-item-group.cpp:313 ../src/sp-switch.cpp:69
#, c-format
msgid "of <b>%d</b> object"
msgstr "Đ· <b>%d</b> ĐŸĐ±'єĐșта"
-#: ../src/sp-item-group.cpp:328 ../src/sp-switch.cpp:68
+#: ../src/sp-item-group.cpp:313 ../src/sp-switch.cpp:69
#, c-format
msgid "of <b>%d</b> objects"
msgstr "Đ· <b>%d</b> ĐŸĐ±'єĐșта"
-#: ../src/sp-item.cpp:1051 ../src/verbs.cpp:214
+#: ../src/sp-item.cpp:1042 ../src/verbs.cpp:213
msgid "Object"
msgstr "Об'єĐșт"
-#: ../src/sp-item.cpp:1063
+#: ../src/sp-item.cpp:1054
#, c-format
msgid "%s; <i>clipped</i>"
msgstr "%s; <i>заĐșŃ€Ń–ĐżĐ»Đ”ĐœĐŸ</i>"
-#: ../src/sp-item.cpp:1069
+#: ../src/sp-item.cpp:1060
#, c-format
msgid "%s; <i>masked</i>"
msgstr "%s; <i>ĐŒĐ°ŃĐșĐŸĐČĐ°ĐœĐŸ</i>"
-#: ../src/sp-item.cpp:1079
+#: ../src/sp-item.cpp:1070
#, c-format
msgid "%s; <i>filtered (%s)</i>"
msgstr "%s; <i>ĐČŃ–ĐŽŃ„Ń–Đ»ŃŒŃ‚Ń€ĐŸĐČĐ°ĐœĐŸ (%s)</i>"
-#: ../src/sp-item.cpp:1081
+#: ../src/sp-item.cpp:1072
#, c-format
msgid "%s; <i>filtered</i>"
msgstr "%s; <i>ĐČŃ–ĐŽŃ„Ń–Đ»ŃŒŃ‚Ń€ĐŸĐČĐ°ĐœĐŸ</i>"
@@ -13086,7 +13084,7 @@ msgid "<b>Polyline</b>"
msgstr "<b>ĐŸĐŸĐ»Ń–Đ»Ń–ĐœŃ–Ń</b>"
#. Rectangle
-#: ../src/sp-rect.cpp:153 ../src/ui/dialog/inkscape-preferences.cpp:402
+#: ../src/sp-rect.cpp:161 ../src/ui/dialog/inkscape-preferences.cpp:402
msgid "Rectangle"
msgstr "ĐŸŃ€ŃĐŒĐŸĐșŃƒŃ‚ĐœĐžĐș"
@@ -13105,11 +13103,11 @@ msgstr "Đ· %3f ĐŸĐ±Đ”Ń€Ń‚Đ°ĐŒĐž"
#. Star
#: ../src/sp-star.cpp:246 ../src/ui/dialog/inkscape-preferences.cpp:416
-#: ../src/widgets/star-toolbar.cpp:471
+#: ../src/widgets/star-toolbar.cpp:469
msgid "Star"
msgstr "ЗірĐșа"
-#: ../src/sp-star.cpp:247 ../src/widgets/star-toolbar.cpp:464
+#: ../src/sp-star.cpp:247 ../src/widgets/star-toolbar.cpp:462
msgid "Polygon"
msgstr "Đ‘Đ°ĐłĐ°Ń‚ĐŸĐșŃƒŃ‚ĐœĐžĐș"
@@ -13126,11 +13124,11 @@ msgstr "Đ· %d ĐČĐ”Ń€ŃˆĐžĐœĐŸŃŽ"
msgid "with %d vertices"
msgstr "Đ· %d ĐČĐ”Ń€ŃˆĐžĐœĐ°ĐŒĐž"
-#: ../src/sp-switch.cpp:62
+#: ../src/sp-switch.cpp:63
msgid "Conditional Group"
msgstr "ĐŁĐŒĐŸĐČĐœĐ° група"
-#: ../src/sp-text.cpp:351 ../src/verbs.cpp:348
+#: ../src/sp-text.cpp:351 ../src/verbs.cpp:347
#: ../share/extensions/lorem_ipsum.inx.h:8
#: ../share/extensions/replace_font.inx.h:11
#: ../share/extensions/split.inx.h:10 ../share/extensions/text_braille.inx.h:2
@@ -13163,7 +13161,7 @@ msgstr "ĐšĐ»ĐŸĐœĐŸĐČĐ°ĐœŃ– ŃĐžĐŒĐČĐŸĐ»ŃŒĐœŃ– ĐŽĐ°ĐœŃ–"
msgid " from "
msgstr " Đ· "
-#: ../src/sp-tref.cpp:240 ../src/sp-use.cpp:269
+#: ../src/sp-tref.cpp:240 ../src/sp-use.cpp:271
msgid "[orphaned]"
msgstr "[ĐŸŃĐžŃ€ĐŸŃ‚Ń–Đ»ĐžĐč]"
@@ -13171,30 +13169,30 @@ msgstr "[ĐŸŃĐžŃ€ĐŸŃ‚Ń–Đ»ĐžĐč]"
msgid "Text Span"
msgstr "Đ‘Đ»ĐŸĐș тДĐșсту"
-#: ../src/sp-use.cpp:232
+#: ../src/sp-use.cpp:234
msgid "Symbol"
msgstr "ĐĄĐžĐŒĐČĐŸĐ»"
-#: ../src/sp-use.cpp:234
+#: ../src/sp-use.cpp:236
msgid "Clone"
msgstr "ĐšĐ»ĐŸĐœ"
-#: ../src/sp-use.cpp:242 ../src/sp-use.cpp:244 ../src/sp-use.cpp:246
+#: ../src/sp-use.cpp:244 ../src/sp-use.cpp:246 ../src/sp-use.cpp:248
#, c-format
msgid "called %s"
msgstr "ĐČĐžĐșлОĐșĐ°ĐœĐŸ %s"
-#: ../src/sp-use.cpp:246
+#: ../src/sp-use.cpp:248
msgid "Unnamed Symbol"
msgstr "ĐĄĐžĐŒĐČĐŸĐ» бДз ĐœĐ°Đ·ĐČĐž"
#. TRANSLATORS: Used for statusbar description for long <use> chains:
#. * "Clone of: Clone of: ... in Layer 1".
-#: ../src/sp-use.cpp:255
+#: ../src/sp-use.cpp:257
msgid "..."
msgstr "
"
-#: ../src/sp-use.cpp:264
+#: ../src/sp-use.cpp:266
#, c-format
msgid "of: %s"
msgstr "Đ·: %s"
@@ -13239,84 +13237,84 @@ msgstr ""
"ĐŸĐ±'єĐșтіĐČ, ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐžŃ… ĐŽĐ»Ń ĐŸĐżĐ”Ń€Đ°Ń†Ń–Ń— Ń€Ń–Đ·ĐœĐžŃ†Ń–, ĐČĐžĐșĐ»ŃŽŃ‡ĐœĐŸĐłĐŸ АБО, ĐŽŃ–Đ»Đ”ĐœĐœŃ "
"Ń€ĐŸĐ·Ń€Ń–Đ·Đ°ĐœĐœŃ ĐșĐŸĐœŃ‚ŃƒŃ€Ńƒ."
-#: ../src/splivarot.cpp:407
+#: ../src/splivarot.cpp:406
msgid ""
"One of the objects is <b>not a path</b>, cannot perform boolean operation."
msgstr "ĐžĐŽĐžĐœ Đ· ĐŸĐ±'єĐșтіĐČ <b>ĐœĐ” є ĐșĐŸĐœŃ‚ŃƒŃ€ĐŸĐŒ</b>, Đ»ĐŸĐłŃ–Ń‡ĐœĐ° ĐŸĐżĐ”Ń€Đ°Ń†Ń–Ń ĐœĐ”ĐŒĐŸĐ¶Đ»ĐžĐČа."
-#: ../src/splivarot.cpp:1157
+#: ../src/splivarot.cpp:1150
msgid "Select <b>stroked path(s)</b> to convert stroke to path."
msgstr "ĐžĐ±Đ”Ń€Ń–Ń‚ŃŒ <b>ĐșĐŸĐœŃ‚ŃƒŃ€(Đž) Đ· штрохіĐČ</b> ĐŽĐ»Ń пДрДтĐČĐŸŃ€Đ”ĐœĐœŃ ĐœĐ° ĐșĐŸĐœŃ‚ŃƒŃ€."
-#: ../src/splivarot.cpp:1516
+#: ../src/splivarot.cpp:1506
msgid "Convert stroke to path"
msgstr "ĐŸĐ”Ń€Đ”Ń‚ĐČĐŸŃ€ĐžŃ‚Đž штрох ĐœĐ° ĐșĐŸĐœŃ‚ŃƒŃ€"
#. TRANSLATORS: "to outline" means "to convert stroke to path"
-#: ../src/splivarot.cpp:1519
+#: ../src/splivarot.cpp:1509
msgid "<b>No stroked paths</b> in the selection."
msgstr "ĐŁ ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐŸĐŒŃƒ <b>ĐœĐ”ĐŒĐ°Ń” ĐșĐŸĐœŃ‚ŃƒŃ€Ń–ĐČ Đ·Ń– штрохіĐČ</b>."
-#: ../src/splivarot.cpp:1590
+#: ../src/splivarot.cpp:1580
msgid "Selected object is <b>not a path</b>, cannot inset/outset."
msgstr ""
"ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐžĐč ĐŸĐ±'єĐșт <b>ĐœĐ” є ĐșĐŸĐœŃ‚ŃƒŃ€ĐŸĐŒ</b>, ĐČтягуĐČĐ°ĐœĐœŃ/Ń€ĐŸĐ·Ń‚ŃĐłŃƒĐČĐ°ĐœĐœŃ ĐœĐ”ĐŒĐŸĐ¶Đ»ĐžĐČі."
-#: ../src/splivarot.cpp:1681 ../src/splivarot.cpp:1746
+#: ../src/splivarot.cpp:1671 ../src/splivarot.cpp:1738
msgid "Create linked offset"
msgstr "СтĐČĐŸŃ€ĐžŃ‚Đž Đ·ĐČ'ŃĐ·Đ°ĐœŃƒ ĐČŃ‚ŃĐ¶Đșу"
-#: ../src/splivarot.cpp:1682 ../src/splivarot.cpp:1747
+#: ../src/splivarot.cpp:1672 ../src/splivarot.cpp:1739
msgid "Create dynamic offset"
msgstr "СтĐČĐŸŃ€ĐžŃ‚Đž ĐŽĐžĐœĐ°ĐŒŃ–Ń‡ĐœĐžĐč ĐČіЮступ"
-#: ../src/splivarot.cpp:1772
+#: ../src/splivarot.cpp:1764
msgid "Select <b>path(s)</b> to inset/outset."
msgstr "ĐŸĐŸĐ·ĐœĐ°Ń‡Ń‚Đ” <b>ĐșĐŸĐœŃ‚ŃƒŃ€(Đž)</b> ĐŽĐ»Ń ĐČтягуĐČĐ°ĐœĐœŃ/Ń€ĐŸĐ·Ń‚ŃĐłŃƒĐČĐ°ĐœĐœŃ."
-#: ../src/splivarot.cpp:1968
+#: ../src/splivarot.cpp:1957
msgid "Outset path"
msgstr "Đ ĐŸĐ·Ń‚ŃĐłĐœĐ”ĐœĐžĐč ĐșĐŸĐœŃ‚ŃƒŃ€"
-#: ../src/splivarot.cpp:1968
+#: ../src/splivarot.cpp:1957
msgid "Inset path"
msgstr "Đ’Ń‚ŃĐłĐœŃƒŃ‚ĐžĐč ĐșĐŸĐœŃ‚ŃƒŃ€"
-#: ../src/splivarot.cpp:1970
+#: ../src/splivarot.cpp:1959
msgid "<b>No paths</b> to inset/outset in the selection."
msgstr "ĐŁ ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐŸĐŒŃƒ <b>ĐœĐ”ĐŒĐ°Ń” ĐșĐŸĐœŃ‚ŃƒŃ€Ń–ĐČ</b> ĐŽĐ»Ń ĐČтягуĐČĐ°ĐœĐœŃ/Ń€ĐŸĐ·Ń‚ŃĐłŃƒĐČĐ°ĐœĐœŃ."
-#: ../src/splivarot.cpp:2132
+#: ../src/splivarot.cpp:2121
msgid "Simplifying paths (separately):"
msgstr "ĐĄĐżŃ€ĐŸŃ‰Đ”ĐœĐœŃ ĐșĐŸĐœŃ‚ŃƒŃ€Ń–ĐČ (ĐŸĐșŃ€Đ”ĐŒĐŸ):"
-#: ../src/splivarot.cpp:2134
+#: ../src/splivarot.cpp:2123
msgid "Simplifying paths:"
msgstr "ĐĄĐżŃ€ĐŸŃ‰Đ”ĐœĐœŃ ĐșĐŸĐœŃ‚ŃƒŃ€Ń–ĐČ:"
-#: ../src/splivarot.cpp:2171
+#: ../src/splivarot.cpp:2160
#, c-format
msgid "%s <b>%d</b> of <b>%d</b> paths simplified..."
msgstr "%s <b>%d</b> Đ· <b>%d</b> ĐșĐŸĐœŃ‚ŃƒŃ€Ń–ĐČ ŃĐżŃ€ĐŸŃ‰Đ”ĐœĐŸâ€Š"
-#: ../src/splivarot.cpp:2184
+#: ../src/splivarot.cpp:2173
#, c-format
msgid "<b>%d</b> paths simplified."
msgstr "<b>%d</b> ĐșĐŸĐœŃ‚ŃƒŃ€Ń–ĐČ ŃĐżŃ€ĐŸŃ‰Đ”ĐœĐŸ."
-#: ../src/splivarot.cpp:2198
+#: ../src/splivarot.cpp:2187
msgid "Select <b>path(s)</b> to simplify."
msgstr "ĐŸĐŸĐ·ĐœĐ°Ń‡Ń‚Đ” <b>ĐșĐŸĐœŃ‚ŃƒŃ€(Đž)</b> ĐŽĐ»Ń ŃĐżŃ€ĐŸŃ‰Đ”ĐœĐœŃ."
-#: ../src/splivarot.cpp:2214
+#: ../src/splivarot.cpp:2203
msgid "<b>No paths</b> to simplify in the selection."
msgstr "ĐŁ ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐŸĐŒŃƒ <b>ĐœĐ”ĐŒĐ°Ń” ĐșĐŸĐœŃ‚ŃƒŃ€Ń–ĐČ</b> ĐŽĐ»Ń ŃĐżŃ€ĐŸŃ‰Đ”ĐœĐœŃ."
-#: ../src/text-chemistry.cpp:94
+#: ../src/text-chemistry.cpp:91
msgid "Select <b>a text and a path</b> to put text on path."
msgstr "ĐŸĐŸĐ·ĐœĐ°Ń‡Ń‚Đ” <b>тДĐșст та ĐșĐŸĐœŃ‚ŃƒŃ€</b> ĐŽĐ»Ń Ń€ĐŸĐ·ĐŒŃ–Ń‰Đ”ĐœĐœŃ тДĐșсту за ĐșĐŸĐœŃ‚ŃƒŃ€ĐŸĐŒ."
-#: ../src/text-chemistry.cpp:99
+#: ../src/text-chemistry.cpp:96
msgid ""
"This text object is <b>already put on a path</b>. Remove it from the path "
"first. Use <b>Shift+D</b> to look up its path."
@@ -13325,7 +13323,7 @@ msgstr ""
"ĐșĐŸĐœŃ‚ŃƒŃ€Ńƒ. ĐĐ°Ń‚ĐžŃĐœŃ–Ń‚ŃŒ <b>Shift+D</b> ĐŽĐ»Ń ĐżĐ”Ń€Đ”Ń…ĐŸĐŽŃƒ ĐŽĐŸ ĐčĐŸĐłĐŸ ĐșĐŸĐœŃ‚ŃƒŃ€Ńƒ."
#. rect is the only SPShape which is not <path> yet, and thus SVG forbids us from putting text on it
-#: ../src/text-chemistry.cpp:105
+#: ../src/text-chemistry.cpp:102
msgid ""
"You cannot put text on a rectangle in this version. Convert rectangle to "
"path first."
@@ -13333,37 +13331,37 @@ msgstr ""
"ĐŁ ціĐč ĐČДрсії ĐżŃ€ĐŸĐłŃ€Đ°ĐŒĐž ĐœĐ” ĐŒĐŸĐ¶ĐœĐ° Ń€ĐŸĐ·ĐŒŃ–Ń‰ŃƒĐČато тДĐșст ĐČĐ·ĐŽĐŸĐČж ĐșĐŸĐœŃ‚ŃƒŃ€Ńƒ "
"ĐżŃ€ŃĐŒĐŸĐșŃƒŃ‚ĐœĐžĐșа. ĐŸĐ”Ń€Đ”Ń‚ĐČĐŸŃ€Ń–Ń‚ŃŒ ĐżŃ€ŃĐŒĐŸĐșŃƒŃ‚ĐœĐžĐș у ĐșĐŸĐœŃ‚ŃƒŃ€ і ŃĐżŃ€ĐŸĐ±ŃƒĐčтД Đ·ĐœĐŸĐČу."
-#: ../src/text-chemistry.cpp:115
+#: ../src/text-chemistry.cpp:112
msgid "The flowed text(s) must be <b>visible</b> in order to be put on a path."
msgstr ""
"Đ©ĐŸĐ± Ń€ĐŸĐ·Ń‚Đ°ŃˆŃƒĐČато тДĐșст за ĐșĐŸĐœŃ‚ŃƒŃ€ĐŸĐŒ, ĐșĐŸĐœŃ‚ŃƒŃ€ĐœĐžĐč тДĐșст сліЎ Đ·Ń€ĐŸĐ±ĐžŃ‚Đž <b>ĐČĐžĐŽĐžĐŒĐžĐŒ</"
"b>."
-#: ../src/text-chemistry.cpp:185 ../src/verbs.cpp:2571
+#: ../src/text-chemistry.cpp:182 ../src/verbs.cpp:2540
msgid "Put text on path"
msgstr "Đ ĐŸĐ·ĐŒŃ–ŃŃ‚ĐžŃ‚Đž тДĐșст ĐČĐ·ĐŽĐŸĐČж ĐșĐŸĐœŃ‚ŃƒŃ€Ńƒ"
-#: ../src/text-chemistry.cpp:197
+#: ../src/text-chemistry.cpp:194
msgid "Select <b>a text on path</b> to remove it from path."
msgstr "ĐŸĐŸĐ·ĐœĐ°Ń‡Ń‚Đ” <b>тДĐșст ĐČĐ·ĐŽĐŸĐČж ĐșĐŸĐœŃ‚ŃƒŃ€Ńƒ</b>, Ń‰ĐŸĐ± ĐČĐžĐ»ŃƒŃ‡ĐžŃ‚Đž ĐčĐŸĐłĐŸ Đ· ĐșĐŸĐœŃ‚ŃƒŃ€Ńƒ."
-#: ../src/text-chemistry.cpp:218
+#: ../src/text-chemistry.cpp:213
msgid "<b>No texts-on-paths</b> in the selection."
msgstr "ĐŁ ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐŸĐŒŃƒ <b>ĐœĐ”ĐŒĐ°Ń” тДĐșсту ĐœĐ° ĐșĐŸĐœŃ‚ŃƒŃ€Ń–</b>."
-#: ../src/text-chemistry.cpp:221 ../src/verbs.cpp:2573
+#: ../src/text-chemistry.cpp:216 ../src/verbs.cpp:2542
msgid "Remove text from path"
msgstr "Đ—ĐœŃŃ‚Đž тДĐșст Đ· ĐșĐŸĐœŃ‚ŃƒŃ€Ńƒ"
-#: ../src/text-chemistry.cpp:262 ../src/text-chemistry.cpp:283
+#: ../src/text-chemistry.cpp:257 ../src/text-chemistry.cpp:277
msgid "Select <b>text(s)</b> to remove kerns from."
msgstr "ĐŸĐŸĐ·ĐœĐ°Ń‡Ń‚Đ” <b>тДĐșст</b> ĐŽĐ»Ń ĐČĐžĐ»ŃƒŃ‡Đ”ĐœĐœŃ Ń€ŃƒŃ‡ĐœĐŸĐłĐŸ ĐŒŃ–Đ¶Đ»Ń–Ń‚Đ”Ń€ĐœĐŸĐłĐŸ Ń–ĐœŃ‚Đ”Ń€ĐČалу."
-#: ../src/text-chemistry.cpp:286
+#: ../src/text-chemistry.cpp:280
msgid "Remove manual kerns"
msgstr "Đ’ĐžĐ»ŃƒŃ‡ĐžŃ‚Đž Ń€ŃƒŃ‡ĐœĐžĐč ĐŒŃ–Đ¶Đ»Ń–Ń‚Đ”Ń€ĐœĐžĐč Ń–ĐœŃ‚Đ”Ń€ĐČал"
-#: ../src/text-chemistry.cpp:306
+#: ../src/text-chemistry.cpp:300
msgid ""
"Select <b>a text</b> and one or more <b>paths or shapes</b> to flow text "
"into frame."
@@ -13371,31 +13369,31 @@ msgstr ""
"ĐŸĐŸĐ·ĐœĐ°Ń‡Ń‚Đ” <b>тДĐșст</b> та <b>ĐșĐŸĐœŃ‚ŃƒŃ€ чо фігуру</b> ĐŽĐ»Ń Ń€ĐŸĐ·ĐŒŃ–Ń‰Đ”ĐœĐœŃ тДĐșсту у "
"Ń€Đ°ĐŒĐșу."
-#: ../src/text-chemistry.cpp:376
+#: ../src/text-chemistry.cpp:369
msgid "Flow text into shape"
msgstr "Đ’Đ”Ń€ŃŃ‚Đ°ĐœĐœŃ тДĐșсту у фігуру"
-#: ../src/text-chemistry.cpp:398
+#: ../src/text-chemistry.cpp:391
msgid "Select <b>a flowed text</b> to unflow it."
msgstr "ĐŸĐŸĐ·ĐœĐ°Ń‡Ń‚Đ” <b>тДĐșст у Ń€Đ°ĐŒŃ†Ń–</b>, Ń‰ĐŸĐ± ĐČĐžĐčĐœŃŃ‚Đž ĐčĐŸĐłĐŸ Đ· Ń€Đ°ĐŒĐșĐž."
-#: ../src/text-chemistry.cpp:472
+#: ../src/text-chemistry.cpp:464
msgid "Unflow flowed text"
msgstr "Đ—Ń€ĐŸĐ±ĐžŃ‚Đž тДĐșст ĐœĐ”ĐșĐŸĐœŃ‚ŃƒŃ€ĐœĐžĐŒ"
-#: ../src/text-chemistry.cpp:484
+#: ../src/text-chemistry.cpp:476
msgid "Select <b>flowed text(s)</b> to convert."
msgstr "ĐžĐ±Đ”Ń€Ń–Ń‚ŃŒ <b>ĐșĐŸĐœŃ‚ŃƒŃ€ĐœĐžĐč тДĐșст(Đž)</b> ĐŽĐ»Ń пДрДтĐČĐŸŃ€Đ”ĐœĐœŃ."
-#: ../src/text-chemistry.cpp:502
+#: ../src/text-chemistry.cpp:494
msgid "The flowed text(s) must be <b>visible</b> in order to be converted."
msgstr "Đ”Đ»Ń пДрДтĐČĐŸŃ€Đ”ĐœĐœŃ йДĐșст-ĐČĐ·ĐŽĐŸĐČж-ĐșĐŸĐœŃ‚ŃƒŃ€Ńƒ ĐŒĐ°Ń” Đ±ŃƒŃ‚Đž <b>ĐČĐžĐŽĐžĐŒĐžĐŒ</b>."
-#: ../src/text-chemistry.cpp:530
+#: ../src/text-chemistry.cpp:521
msgid "Convert flowed text to text"
msgstr "ĐŸĐ”Ń€Đ”Ń‚ĐČĐŸŃ€Đ”ĐœĐœŃ ĐșĐŸĐœŃ‚ŃƒŃ€ĐœĐŸĐłĐŸ тДĐșсту ĐœĐ° Đ·ĐČочаĐčĐœĐžĐč"
-#: ../src/text-chemistry.cpp:535
+#: ../src/text-chemistry.cpp:526
msgid "<b>No flowed text(s)</b> to convert in the selection."
msgstr "ĐŁ ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐŸĐŒŃƒ <b>ĐœĐ”ĐŒĐ°Ń” ĐșĐŸĐœŃ‚ŃƒŃ€ĐœĐŸĐłĐŸ тДĐșсту(іĐČ)</b> ĐŽĐ»Ń пДрДтĐČĐŸŃ€Đ”ĐœĐœŃ."
@@ -13458,8 +13456,8 @@ msgstr "Đ’Đ”ĐșŃ‚ĐŸŃ€ĐžĐ·Đ°Ń†Ń–Ń: ЗаĐČĐ”Ń€ŃˆĐ”ĐœĐŸ. СтĐČĐŸŃ€Đ”ĐœĐŸ %ld ĐČуĐ
msgid "Nothing was copied."
msgstr "ĐŃ–Ń‡ĐŸĐłĐŸ ĐœĐ” Đ±ŃƒĐ»ĐŸ сĐșĐŸĐżŃ–ĐčĐŸĐČĐ°ĐœĐŸ."
-#: ../src/ui/clipboard.cpp:393 ../src/ui/clipboard.cpp:605
-#: ../src/ui/clipboard.cpp:634
+#: ../src/ui/clipboard.cpp:393 ../src/ui/clipboard.cpp:607
+#: ../src/ui/clipboard.cpp:636
msgid "Nothing on the clipboard."
msgstr "ĐŁ Đ±ŃƒŃ„Đ”Ń€Ń– ĐŸĐ±ĐŒŃ–ĐœŃƒ ĐœŃ–Ń‡ĐŸĐłĐŸ ĐœĐ”ĐŒĐ°Ń”."
@@ -13479,16 +13477,16 @@ msgstr "ĐžĐ±Đ”Ń€Ń–Ń‚ŃŒ <b>ĐŸĐ±'єĐșт(Đž)</b> ĐŽĐ»Ń Đ·Đ°ŃŃ‚ĐŸŃŃƒĐČĐ°ĐœĐœŃ р
msgid "No size on the clipboard."
msgstr "ĐŁ Đ±ŃƒŃ„Đ”Ń€Ń– ĐŸĐ±ĐŒŃ–ĐœŃƒ ĐœĐ”ĐŒĐ°Ń” Ń€ĐŸĐ·ĐŒŃ–Ń€Ń–ĐČ."
-#: ../src/ui/clipboard.cpp:567
+#: ../src/ui/clipboard.cpp:568
msgid "Select <b>object(s)</b> to paste live path effect to."
msgstr "ĐžĐ±Đ”Ń€Ń–Ń‚ŃŒ <b>ĐŸĐ±'єĐșто</b> ĐŽĐ»Ń Đ·Đ°ŃŃ‚ĐŸŃŃƒĐČĐ°ĐœĐœŃ ДфДĐșту ĐŽĐžĐœĐ°ĐŒŃ–Ń‡ĐœĐŸĐłĐŸ ĐșĐŸĐœŃ‚ŃƒŃ€Ńƒ."
#. no_effect:
-#: ../src/ui/clipboard.cpp:592
+#: ../src/ui/clipboard.cpp:594
msgid "No effect on the clipboard."
msgstr "ĐŁ Đ±ŃƒŃ„Đ”Ń€Ń– ĐŸĐ±ĐŒŃ–ĐœŃƒ ĐœĐ”ĐŒĐ°Ń” ДфДĐșтіĐČ."
-#: ../src/ui/clipboard.cpp:611 ../src/ui/clipboard.cpp:648
+#: ../src/ui/clipboard.cpp:613 ../src/ui/clipboard.cpp:650
msgid "Clipboard does not contain a path."
msgstr "ĐŁ Đ±ŃƒŃ„Đ”Ń€Ń– ĐŸĐ±ĐŒŃ–ĐœŃƒ ĐČŃ–ĐŽŃŃƒŃ‚ĐœŃ–Đč ĐșĐŸĐœŃ‚ŃƒŃ€."
@@ -13540,252 +13538,252 @@ msgstr ""
"МаĐșŃĐžĐŒ Đ”Đ·ŃŽĐŒĐ°ĐœĐ”ĐœĐșĐŸ (dziumanenko@gmail.com)\n"
"мріĐč Đ§ĐŸŃ€ĐœĐŸŃ–ĐČĐ°Đœ (yurchor@ukr.net)"
-#: ../src/ui/dialog/align-and-distribute.cpp:171
-#: ../src/ui/dialog/align-and-distribute.cpp:851
+#: ../src/ui/dialog/align-and-distribute.cpp:170
+#: ../src/ui/dialog/align-and-distribute.cpp:847
msgid "Align"
msgstr "ВоріĐČĐœŃŽĐČĐ°ĐœĐœŃ"
-#: ../src/ui/dialog/align-and-distribute.cpp:341
-#: ../src/ui/dialog/align-and-distribute.cpp:852
+#: ../src/ui/dialog/align-and-distribute.cpp:338
+#: ../src/ui/dialog/align-and-distribute.cpp:848
msgid "Distribute"
msgstr "Đ ĐŸĐ·ŃŃ‚Đ°ĐČото"
-#: ../src/ui/dialog/align-and-distribute.cpp:420
+#: ../src/ui/dialog/align-and-distribute.cpp:417
msgid "Minimum horizontal gap (in px units) between bounding boxes"
msgstr "ĐœŃ–ĐœŃ–ĐŒĐ°Đ»ŃŒĐœĐ° ĐłĐŸŃ€ĐžĐ·ĐŸĐœŃ‚Đ°Đ»ŃŒĐœĐ° ĐČŃ–ĐŽŃŃ‚Đ°ĐœŃŒ (у Ń‚ĐŸŃ‡Đșах) ĐŒŃ–Đ¶ Ń€Đ°ĐŒĐșĐ°ĐŒĐž"
#. TRANSLATORS: "H:" stands for horizontal gap
-#: ../src/ui/dialog/align-and-distribute.cpp:422
+#: ../src/ui/dialog/align-and-distribute.cpp:419
msgctxt "Gap"
msgid "_H:"
msgstr "_Г:"
-#: ../src/ui/dialog/align-and-distribute.cpp:430
+#: ../src/ui/dialog/align-and-distribute.cpp:427
msgid "Minimum vertical gap (in px units) between bounding boxes"
msgstr "ĐœŃ–ĐœŃ–ĐŒĐ°Đ»ŃŒĐœĐ° ĐČДртОĐșĐ°Đ»ŃŒĐœĐ° ĐČŃ–ĐŽŃŃ‚Đ°ĐœŃŒ (у Ń‚ĐŸŃ‡Đșах) ĐŒŃ–Đ¶ Ń€Đ°ĐŒĐșĐ°ĐŒĐž"
#. TRANSLATORS: Vertical gap
-#: ../src/ui/dialog/align-and-distribute.cpp:432
+#: ../src/ui/dialog/align-and-distribute.cpp:429
msgctxt "Gap"
msgid "_V:"
msgstr "_В:"
-#: ../src/ui/dialog/align-and-distribute.cpp:467
-#: ../src/ui/dialog/align-and-distribute.cpp:854
-#: ../src/widgets/connector-toolbar.cpp:411
+#: ../src/ui/dialog/align-and-distribute.cpp:464
+#: ../src/ui/dialog/align-and-distribute.cpp:850
+#: ../src/widgets/connector-toolbar.cpp:407
msgid "Remove overlaps"
msgstr "Đ’ĐžĐ»ŃƒŃ‡ĐžŃ‚Đž пДрДĐșроття"
-#: ../src/ui/dialog/align-and-distribute.cpp:498
-#: ../src/widgets/connector-toolbar.cpp:240
+#: ../src/ui/dialog/align-and-distribute.cpp:495
+#: ../src/widgets/connector-toolbar.cpp:236
msgid "Arrange connector network"
msgstr "Đ’ĐżĐŸŃ€ŃĐŽĐșуĐČато сітĐșу Đ·'Ń”ĐŽĐœŃƒĐČĐ°Đ»ŃŒĐœĐžŃ… Đ»Ń–ĐœŃ–Đč"
-#: ../src/ui/dialog/align-and-distribute.cpp:591
+#: ../src/ui/dialog/align-and-distribute.cpp:588
msgid "Exchange Positions"
msgstr "ĐžĐ±ĐŒŃ–ĐœŃŃ‚Đž ĐżĐŸĐ·ĐžŃ†Ń–ŃĐŒĐž"
-#: ../src/ui/dialog/align-and-distribute.cpp:625
+#: ../src/ui/dialog/align-and-distribute.cpp:622
msgid "Unclump"
msgstr "Đ ĐŸĐ·ĐłŃ€ŃƒĐżŃƒĐČато"
-#: ../src/ui/dialog/align-and-distribute.cpp:697
+#: ../src/ui/dialog/align-and-distribute.cpp:693
msgid "Randomize positions"
msgstr "Đ—Ń€ĐŸĐ±ĐžŃ‚Đž ĐżĐŸĐ·ĐžŃ†Ń–Ń— ĐČОпаЎĐșĐŸĐČĐžĐŒĐž"
-#: ../src/ui/dialog/align-and-distribute.cpp:800
+#: ../src/ui/dialog/align-and-distribute.cpp:795
msgid "Distribute text baselines"
msgstr "Đ ĐŸĐ·ŃŃ‚Đ°ĐČото Đ±Đ°Đ·ĐŸĐČі ряЮĐșĐž тДĐșсту"
-#: ../src/ui/dialog/align-and-distribute.cpp:823
+#: ../src/ui/dialog/align-and-distribute.cpp:819
msgid "Align text baselines"
msgstr "ВоріĐČĐœŃŃ‚Đž Đ±Đ°Đ·ĐŸĐČі Đ»Ń–ĐœŃ–Ń— тДĐșсту"
-#: ../src/ui/dialog/align-and-distribute.cpp:853
+#: ../src/ui/dialog/align-and-distribute.cpp:849
msgid "Rearrange"
msgstr "ĐŸĐ”Ń€Đ”ĐČĐżĐŸŃ€ŃĐŽĐșуĐČато"
-#: ../src/ui/dialog/align-and-distribute.cpp:855
-#: ../src/widgets/toolbox.cpp:1729
+#: ../src/ui/dialog/align-and-distribute.cpp:851
+#: ../src/widgets/toolbox.cpp:1725
msgid "Nodes"
msgstr "Đ’ŃƒĐ·Đ»Đž"
-#: ../src/ui/dialog/align-and-distribute.cpp:869
+#: ../src/ui/dialog/align-and-distribute.cpp:865
msgid "Relative to: "
msgstr "Đ’Ń–ĐŽĐœĐŸŃĐœĐŸ: "
-#: ../src/ui/dialog/align-and-distribute.cpp:870
+#: ../src/ui/dialog/align-and-distribute.cpp:866
msgid "_Treat selection as group: "
msgstr "ВĐČа_жатО ĐČĐžĐ±Ń€Đ°ĐœĐ” ĐłŃ€ŃƒĐżĐŸŃŽ: "
#. Align
-#: ../src/ui/dialog/align-and-distribute.cpp:876 ../src/verbs.cpp:3024
-#: ../src/verbs.cpp:3025
+#: ../src/ui/dialog/align-and-distribute.cpp:872 ../src/verbs.cpp:2993
+#: ../src/verbs.cpp:2994
msgid "Align right edges of objects to the left edge of the anchor"
msgstr "ВоріĐČĐœŃŃ‚Đž праĐČі Đșраї ĐŸĐ±'єĐșтіĐČ ĐŽĐŸ ліĐČĐŸĐłĐŸ Đșраю яĐșĐŸŃ€Ń"
-#: ../src/ui/dialog/align-and-distribute.cpp:879 ../src/verbs.cpp:3026
-#: ../src/verbs.cpp:3027
+#: ../src/ui/dialog/align-and-distribute.cpp:875 ../src/verbs.cpp:2995
+#: ../src/verbs.cpp:2996
msgid "Align left edges"
msgstr "ВоріĐČĐœŃŃ‚Đž ліĐČі ŃŃ‚ĐŸŃ€ĐŸĐœĐž"
-#: ../src/ui/dialog/align-and-distribute.cpp:882 ../src/verbs.cpp:3028
-#: ../src/verbs.cpp:3029
+#: ../src/ui/dialog/align-and-distribute.cpp:878 ../src/verbs.cpp:2997
+#: ../src/verbs.cpp:2998
msgid "Center on vertical axis"
msgstr "ĐŠĐ”ĐœŃ‚Ń€ŃƒĐČато за ĐČДртОĐșĐ°Đ»ŃŒĐœĐŸŃŽ ĐČіссю"
-#: ../src/ui/dialog/align-and-distribute.cpp:885 ../src/verbs.cpp:3030
-#: ../src/verbs.cpp:3031
+#: ../src/ui/dialog/align-and-distribute.cpp:881 ../src/verbs.cpp:2999
+#: ../src/verbs.cpp:3000
msgid "Align right sides"
msgstr "ВоріĐČĐœŃŃ‚Đž праĐČі ŃŃ‚ĐŸŃ€ĐŸĐœĐž"
-#: ../src/ui/dialog/align-and-distribute.cpp:888 ../src/verbs.cpp:3032
-#: ../src/verbs.cpp:3033
+#: ../src/ui/dialog/align-and-distribute.cpp:884 ../src/verbs.cpp:3001
+#: ../src/verbs.cpp:3002
msgid "Align left edges of objects to the right edge of the anchor"
msgstr "ВоріĐČĐœŃŃ‚Đž ліĐČі Đșраї ĐŸĐ±'єĐșтіĐČ ĐŽĐŸ праĐČĐŸĐłĐŸ Đșраю яĐșĐŸŃ€Ń"
-#: ../src/ui/dialog/align-and-distribute.cpp:891 ../src/verbs.cpp:3034
-#: ../src/verbs.cpp:3035
+#: ../src/ui/dialog/align-and-distribute.cpp:887 ../src/verbs.cpp:3003
+#: ../src/verbs.cpp:3004
msgid "Align bottom edges of objects to the top edge of the anchor"
msgstr "ВоріĐČĐœŃŃ‚Đž ĐœĐžĐ¶ĐœŃ– Đșраї ĐŸĐ±'єĐșтіĐČ ĐŽĐŸ ĐČĐ”Ń€Ń…ĐœŃŒĐŸĐłĐŸ Đșраю яĐșĐŸŃ€Ń"
-#: ../src/ui/dialog/align-and-distribute.cpp:894 ../src/verbs.cpp:3036
-#: ../src/verbs.cpp:3037
+#: ../src/ui/dialog/align-and-distribute.cpp:890 ../src/verbs.cpp:3005
+#: ../src/verbs.cpp:3006
msgid "Align top edges"
msgstr "ВоріĐČĐœŃŃ‚Đž ĐČĐ”Ń€Ń…ĐœŃ– ŃŃ‚ĐŸŃ€ĐŸĐœĐž"
-#: ../src/ui/dialog/align-and-distribute.cpp:897 ../src/verbs.cpp:3038
-#: ../src/verbs.cpp:3039
+#: ../src/ui/dialog/align-and-distribute.cpp:893 ../src/verbs.cpp:3007
+#: ../src/verbs.cpp:3008
msgid "Center on horizontal axis"
msgstr "ĐŠĐ”ĐœŃ‚Ń€ŃƒĐČато ĐœĐ° ĐłĐŸŃ€ĐžĐ·ĐŸĐœŃ‚Đ°Đ»ŃŒĐœŃ–Đč ĐŸŃŃ–"
-#: ../src/ui/dialog/align-and-distribute.cpp:900 ../src/verbs.cpp:3040
-#: ../src/verbs.cpp:3041
+#: ../src/ui/dialog/align-and-distribute.cpp:896 ../src/verbs.cpp:3009
+#: ../src/verbs.cpp:3010
msgid "Align bottom edges"
msgstr "ВоріĐČĐœŃŃ‚Đž ĐœĐžĐ¶ĐœŃ– ŃŃ‚ĐŸŃ€ĐŸĐœĐž"
-#: ../src/ui/dialog/align-and-distribute.cpp:903 ../src/verbs.cpp:3042
-#: ../src/verbs.cpp:3043
+#: ../src/ui/dialog/align-and-distribute.cpp:899 ../src/verbs.cpp:3011
+#: ../src/verbs.cpp:3012
msgid "Align top edges of objects to the bottom edge of the anchor"
msgstr "ВоріĐČĐœŃŃ‚Đž ĐČĐ”Ń€Ń…ĐœŃ– Đșраї ĐŸĐ±'єĐșтіĐČ ĐŽĐŸ ĐœĐžĐ¶ĐœŃŒĐŸĐłĐŸ Đșраю яĐșĐŸŃ€Ń"
-#: ../src/ui/dialog/align-and-distribute.cpp:908
+#: ../src/ui/dialog/align-and-distribute.cpp:904
msgid "Align baseline anchors of texts horizontally"
msgstr "Đ ĐŸĐ·Ń‚Đ°ŃˆŃƒĐČато Đ±Đ°Đ·ĐŸĐČу Đ»Ń–ĐœŃ–ŃŽ тДĐșсту ĐłĐŸŃ€ĐžĐ·ĐŸĐœŃ‚Đ°Đ»ŃŒĐœĐŸ"
-#: ../src/ui/dialog/align-and-distribute.cpp:911
+#: ../src/ui/dialog/align-and-distribute.cpp:907
msgid "Align baselines of texts"
msgstr "ВоріĐČĐœŃŃ‚Đž Đ±Đ°Đ·ĐŸĐČі Đ»Ń–ĐœŃ–Ń— тДĐșсту"
-#: ../src/ui/dialog/align-and-distribute.cpp:916
+#: ../src/ui/dialog/align-and-distribute.cpp:912
msgid "Make horizontal gaps between objects equal"
msgstr "Đ—Ń€ĐŸĐ±ĐžŃ‚Đž ĐŸĐŽĐœĐ°ĐșĐŸĐČĐžĐŒĐž Ń–ĐœŃ‚Đ”Ń€ĐČалО ĐŒŃ–Đ¶ ĐŸĐ±'єĐșŃ‚Đ°ĐŒĐž ĐżĐŸ ĐłĐŸŃ€ĐžĐ·ĐŸĐœŃ‚Đ°Đ»Ń–"
-#: ../src/ui/dialog/align-and-distribute.cpp:920
+#: ../src/ui/dialog/align-and-distribute.cpp:916
msgid "Distribute left edges equidistantly"
msgstr "РіĐČĐœĐŸĐŒŃ–Ń€ĐœĐŸ Ń€ĐŸĐ·ĐżĐŸĐŽŃ–Đ»ĐžŃ‚Đž ліĐČі Đșраї"
-#: ../src/ui/dialog/align-and-distribute.cpp:923
+#: ../src/ui/dialog/align-and-distribute.cpp:919
msgid "Distribute centers equidistantly horizontally"
msgstr "Đ ĐŸĐ·ŃŃ‚Đ°ĐČото Ń†Đ”ĐœŃ‚Ń€Đž ĐŸĐ±'єĐșтіĐČ ĐœĐ° ĐŸĐŽĐœĐ°ĐșĐŸĐČіĐč ĐČŃ–ĐŽŃŃ‚Đ°ĐœŃ– ĐżĐŸ ĐłĐŸŃ€ĐžĐ·ĐŸĐœŃ‚Đ°Đ»Ń–"
-#: ../src/ui/dialog/align-and-distribute.cpp:926
+#: ../src/ui/dialog/align-and-distribute.cpp:922
msgid "Distribute right edges equidistantly"
msgstr "РіĐČĐœĐŸĐŒŃ–Ń€ĐœĐŸ Ń€ĐŸĐ·ĐżĐŸĐŽŃ–Đ»ĐžŃ‚Đž праĐČі Đșраї"
-#: ../src/ui/dialog/align-and-distribute.cpp:930
+#: ../src/ui/dialog/align-and-distribute.cpp:926
msgid "Make vertical gaps between objects equal"
msgstr "ВоріĐČĐœŃŃ‚Đž Ń–ĐœŃ‚Đ”Ń€ĐČалО ĐŒŃ–Đ¶ ĐŸĐ±'єĐșŃ‚Đ°ĐŒĐž ĐżĐŸ ĐČДртОĐșалі"
-#: ../src/ui/dialog/align-and-distribute.cpp:934
+#: ../src/ui/dialog/align-and-distribute.cpp:930
msgid "Distribute top edges equidistantly"
msgstr "РіĐČĐœĐŸĐŒŃ–Ń€ĐœĐŸ Ń€ĐŸĐ·ĐżĐŸĐŽŃ–Đ»ĐžŃ‚Đž ĐČĐ”Ń€Ń…ĐœŃ– Đșраї"
-#: ../src/ui/dialog/align-and-distribute.cpp:937
+#: ../src/ui/dialog/align-and-distribute.cpp:933
msgid "Distribute centers equidistantly vertically"
msgstr "Đ ĐŸĐ·ŃŃ‚Đ°ĐČото Ń†Đ”ĐœŃ‚Ń€Đž ĐŸĐ±'єĐșтіĐČ ĐœĐ° ĐŸĐŽĐœĐ°ĐșĐŸĐČіĐč ĐČŃ–ĐŽŃŃ‚Đ°ĐœŃ– ĐżĐŸ ĐČДртОĐșалі"
-#: ../src/ui/dialog/align-and-distribute.cpp:940
+#: ../src/ui/dialog/align-and-distribute.cpp:936
msgid "Distribute bottom edges equidistantly"
msgstr "РіĐČĐœĐŸĐŒŃ–Ń€ĐœĐŸ Ń€ĐŸĐ·ĐżĐŸĐŽŃ–Đ»ĐžŃ‚Đž ĐœĐžĐ¶ĐœŃ– Đșраї"
-#: ../src/ui/dialog/align-and-distribute.cpp:945
+#: ../src/ui/dialog/align-and-distribute.cpp:941
msgid "Distribute baseline anchors of texts horizontally"
msgstr "Đ ĐŸĐ·ĐżĐŸĐŽŃ–Đ»ĐžŃ‚Đž Đ±Đ°Đ·ĐŸĐČі яĐșĐŸŃ€Ń– ŃĐžĐŒĐČĐŸĐ»Ń–ĐČ Ń€Ń–ĐČĐœĐŸĐŒŃ–Ń€ĐœĐŸ ĐżĐŸ ĐłĐŸŃ€ĐžĐ·ĐŸĐœŃ‚Đ°Đ»Ń–"
-#: ../src/ui/dialog/align-and-distribute.cpp:948
+#: ../src/ui/dialog/align-and-distribute.cpp:944
msgid "Distribute baselines of texts vertically"
msgstr "Đ ĐŸĐ·ĐżĐŸĐŽŃ–Đ»ĐžŃ‚Đž Đ±Đ°Đ·ĐŸĐČі Đ»Ń–ĐœŃ–Ń— тДĐșсту ĐČДртОĐșĐ°Đ»ŃŒĐœĐŸ"
-#: ../src/ui/dialog/align-and-distribute.cpp:954
-#: ../src/widgets/connector-toolbar.cpp:373
+#: ../src/ui/dialog/align-and-distribute.cpp:950
+#: ../src/widgets/connector-toolbar.cpp:369
msgid "Nicely arrange selected connector network"
msgstr "Đ“Đ°Ń€ĐŒĐŸĐœŃ–ĐčĐœĐŸ Ń€ĐŸĐ·Ń‚Đ°ŃˆŃƒĐČато ĐČĐžĐ±Ń€Đ°ĐœĐ” Đ·'Ń”ĐŽĐœĐ°ĐœĐœŃ ĐŸĐ±'єĐșтіĐČ"
-#: ../src/ui/dialog/align-and-distribute.cpp:957
+#: ../src/ui/dialog/align-and-distribute.cpp:953
msgid "Exchange positions of selected objects - selection order"
msgstr "ĐžĐ±ĐŒŃ–Đœ ĐżĐŸĐ·ĐžŃ†Ń–ŃĐŒĐž ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐžŃ… ĐŸĐ±'єĐșтіĐČ â€” ĐżĐŸŃ€ŃĐŽĐŸĐș ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐœŃ"
-#: ../src/ui/dialog/align-and-distribute.cpp:960
+#: ../src/ui/dialog/align-and-distribute.cpp:956
msgid "Exchange positions of selected objects - stacking order"
msgstr "ĐžĐ±ĐŒŃ–Đœ ĐżĐŸĐ·ĐžŃ†Ń–ŃĐŒĐž ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐžŃ… ĐŸĐ±'єĐșтіĐČ â€” ĐżĐŸŃ€ŃĐŽĐŸĐș ŃŃ‚ĐŸŃŃƒĐČĐ°ĐœĐœŃ"
-#: ../src/ui/dialog/align-and-distribute.cpp:963
+#: ../src/ui/dialog/align-and-distribute.cpp:959
msgid "Exchange positions of selected objects - clockwise rotate"
msgstr ""
"ĐžĐ±ĐŒŃ–Đœ ĐżĐŸĐ·ĐžŃ†Ń–ŃĐŒĐž ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐžŃ… ĐŸĐ±'єĐșтіĐČ â€” цоĐșĐ»Ń–Ń‡ĐœĐžĐč пДрДхіЎ за ĐłĐŸĐŽĐžĐœĐœĐžĐșĐŸĐČĐŸŃŽ "
"стрілĐșĐŸŃŽ"
-#: ../src/ui/dialog/align-and-distribute.cpp:968
+#: ../src/ui/dialog/align-and-distribute.cpp:964
msgid "Randomize centers in both dimensions"
msgstr "ВопаЮĐșĐŸĐČĐŸ Ń€ĐŸĐ·Ń‚Đ°ŃˆŃƒĐČато Ń†Đ”ĐœŃ‚Ń€Đž у ĐŸĐ±ĐŸŃ… ĐœĐ°ĐżŃ€ŃĐŒĐșах"
-#: ../src/ui/dialog/align-and-distribute.cpp:971
+#: ../src/ui/dialog/align-and-distribute.cpp:967
msgid "Unclump objects: try to equalize edge-to-edge distances"
msgstr ""
"Đ ĐŸĐ·ĐłŃ€ŃƒĐżŃƒĐČато ĐŸĐ±'єĐșт: ŃĐżŃ€ĐŸĐ±ŃƒĐČато ĐČŃŃ‚Đ°ĐœĐŸĐČото ріĐČĐœŃƒ ĐČŃ–ĐŽŃŃ‚Đ°ĐœŃŒ ĐŒŃ–Đ¶ ĐŒĐ”Đ¶Đ°ĐŒĐž ĐŸĐ±'єĐșтіĐČ"
-#: ../src/ui/dialog/align-and-distribute.cpp:976
+#: ../src/ui/dialog/align-and-distribute.cpp:972
msgid ""
"Move objects as little as possible so that their bounding boxes do not "
"overlap"
msgstr ""
"ĐŸĐ”Ń€Đ”ĐŒŃ–Ń‰ŃƒĐČато ĐŸĐ±'єĐșто яĐșĐŸĐŒĐŸĐłĐ° ĐŒĐ”ĐœŃˆĐ”, таĐș Ń‰ĐŸĐ± Ń—Ń…ĐœŃ– Ń€Đ°ĐŒĐșĐž ĐœĐ” пДрДĐșроĐČĐ°Đ»ĐžŃŃ"
-#: ../src/ui/dialog/align-and-distribute.cpp:984
+#: ../src/ui/dialog/align-and-distribute.cpp:980
msgid "Align selected nodes to a common horizontal line"
msgstr "ВоріĐČĐœŃŃ‚Đž ĐČĐžĐ±Ń€Đ°ĐœŃ– ĐČузлО ĐŽĐŸ ŃĐżŃ–Đ»ŃŒĐœĐŸŃ— ĐłĐŸŃ€ĐžĐ·ĐŸĐœŃ‚Đ°Đ»Ń–"
-#: ../src/ui/dialog/align-and-distribute.cpp:987
+#: ../src/ui/dialog/align-and-distribute.cpp:983
msgid "Align selected nodes to a common vertical line"
msgstr "ВоріĐČĐœŃŃ‚Đž ĐČĐžĐ±Ń€Đ°ĐœŃ– ĐČузлО ĐŽĐŸ ŃĐżŃ–Đ»ŃŒĐœĐŸŃ— ĐČДртОĐșалі"
-#: ../src/ui/dialog/align-and-distribute.cpp:990
+#: ../src/ui/dialog/align-and-distribute.cpp:986
msgid "Distribute selected nodes horizontally"
msgstr "Đ ĐŸĐ·ĐżĐŸĐŽŃ–Đ»ĐžŃ‚Đž ĐČĐžĐ±Ń€Đ°ĐœŃ– ĐČузлО ĐżĐŸ ĐłĐŸŃ€ĐžĐ·ĐŸĐœŃ‚Đ°Đ»Ń–"
-#: ../src/ui/dialog/align-and-distribute.cpp:993
+#: ../src/ui/dialog/align-and-distribute.cpp:989
msgid "Distribute selected nodes vertically"
msgstr "Đ ĐŸĐ·ĐżĐŸĐŽŃ–Đ»ĐžŃ‚Đž ĐČĐžĐ±Ń€Đ°ĐœŃ– ĐČузлО ĐżĐŸ ĐČДртОĐșалі"
#. Rest of the widgetry
-#: ../src/ui/dialog/align-and-distribute.cpp:998
+#: ../src/ui/dialog/align-and-distribute.cpp:994
msgid "Last selected"
msgstr "ĐžŃŃ‚Đ°ĐœĐœŃ–Đč ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐžĐč"
-#: ../src/ui/dialog/align-and-distribute.cpp:999
+#: ../src/ui/dialog/align-and-distribute.cpp:995
msgid "First selected"
msgstr "ĐŸĐ”Ń€ŃˆĐžĐč ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐžĐč"
-#: ../src/ui/dialog/align-and-distribute.cpp:1000
+#: ../src/ui/dialog/align-and-distribute.cpp:996
msgid "Biggest object"
msgstr "НаĐčĐ±Ń–Đ»ŃŒŃˆĐžĐč ĐŸĐ±'єĐșт"
-#: ../src/ui/dialog/align-and-distribute.cpp:1001
+#: ../src/ui/dialog/align-and-distribute.cpp:997
msgid "Smallest object"
msgstr "НаĐčĐŒĐ”ĐœŃˆĐžĐč ĐŸĐ±'єĐșт"
-#: ../src/ui/dialog/align-and-distribute.cpp:1004
+#: ../src/ui/dialog/align-and-distribute.cpp:1000
msgid "Selection Area"
msgstr "ĐŸĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐ° ĐŸĐ±Đ»Đ°ŃŃ‚ŃŒ"
@@ -14485,19 +14483,19 @@ msgstr "<small>Об'єĐșт ĐœĐ” ĐŒĐ°Ń” ĐŒĐŸĐ·Đ°Ń—Ń‡ĐœĐžŃ… ĐșĐ»ĐŸĐœŃ–ĐČ.</small>"
msgid "Select <b>one object</b> whose tiled clones to unclump."
msgstr "ĐŸĐŸĐ·ĐœĐ°Ń‡Ń‚Đ” <b>ĐŸĐŽĐžĐœ ĐŸĐ±'єĐșт</b>, ĐșĐ»ĐŸĐœĐž яĐșĐŸĐłĐŸ сліЎ Ń€ĐŸĐ·ĐłŃ€ŃƒĐżŃƒĐČато."
-#: ../src/ui/dialog/clonetiler.cpp:2122
+#: ../src/ui/dialog/clonetiler.cpp:2120
msgid "Unclump tiled clones"
msgstr "Đ ĐŸĐ·ĐłŃ€ŃƒĐżŃƒĐČато ĐŒĐŸĐ·Đ°Ń—Đșу Đ· ĐșĐ»ĐŸĐœŃ–ĐČ"
-#: ../src/ui/dialog/clonetiler.cpp:2151
+#: ../src/ui/dialog/clonetiler.cpp:2149
msgid "Select <b>one object</b> whose tiled clones to remove."
msgstr "ĐŸĐŸĐ·ĐœĐ°Ń‡Ń‚Đ” <b>ĐŸĐŽĐžĐœ ĐŸĐ±'єĐșт</b>, ĐșĐ»ĐŸĐœĐž яĐșĐŸĐłĐŸ сліЎ ĐČĐžĐ»ŃƒŃ‡ĐžŃ‚Đž."
-#: ../src/ui/dialog/clonetiler.cpp:2176
+#: ../src/ui/dialog/clonetiler.cpp:2174
msgid "Delete tiled clones"
msgstr "Đ’ĐžĐ»ŃƒŃ‡ĐžŃ‚Đž ĐŒĐŸĐ·Đ°Ń—Đșу Đ· ĐșĐ»ĐŸĐœŃ–ĐČ"
-#: ../src/ui/dialog/clonetiler.cpp:2229
+#: ../src/ui/dialog/clonetiler.cpp:2227
msgid ""
"If you want to clone several objects, <b>group</b> them and <b>clone the "
"group</b>."
@@ -14505,27 +14503,27 @@ msgstr ""
"Đ”Đ»Ń ĐșĐ»ĐŸĐœŃƒĐČĐ°ĐœĐœŃ ĐșŃ–Đ»ŃŒĐșĐŸŃ… ĐŸĐ±'єĐșтіĐČ, <b>Đ·ĐłŃ€ŃƒĐżŃƒĐčтД</b> їх та <b>ĐșĐ»ĐŸĐœŃƒĐčтД групу</"
"b>."
-#: ../src/ui/dialog/clonetiler.cpp:2238
+#: ../src/ui/dialog/clonetiler.cpp:2236
msgid "<small>Creating tiled clones...</small>"
msgstr "<small>СтĐČĐŸŃ€Đ”ĐœĐœŃ ĐŒĐŸĐ·Đ°Ń—Ń‡ĐœĐžŃ… ĐșĐ»ĐŸĐœŃ–ĐČ
</small>"
-#: ../src/ui/dialog/clonetiler.cpp:2654
+#: ../src/ui/dialog/clonetiler.cpp:2652
msgid "Create tiled clones"
msgstr "СтĐČĐŸŃ€ĐžŃ‚Đž ĐŒĐŸĐ·Đ°Ń—Đșу Đ· ĐșĐ»ĐŸĐœŃ–ĐČ"
-#: ../src/ui/dialog/clonetiler.cpp:2887
+#: ../src/ui/dialog/clonetiler.cpp:2885
msgid "<small>Per row:</small>"
msgstr "<small>На Ń€ŃĐŽĐŸĐș:</small>"
-#: ../src/ui/dialog/clonetiler.cpp:2905
+#: ../src/ui/dialog/clonetiler.cpp:2903
msgid "<small>Per column:</small>"
msgstr "<small>На ŃŃ‚ĐŸĐČпчоĐș:</small>"
-#: ../src/ui/dialog/clonetiler.cpp:2913
+#: ../src/ui/dialog/clonetiler.cpp:2911
msgid "<small>Randomize:</small>"
msgstr "<small>ВопаЮĐșĐŸĐČість:</small>"
-#: ../src/ui/dialog/color-item.cpp:131
+#: ../src/ui/dialog/color-item.cpp:127
#, c-format
msgid ""
"Color: <b>%s</b>; <b>Click</b> to set fill, <b>Shift+click</b> to set stroke"
@@ -14533,47 +14531,47 @@ msgstr ""
"ĐšĐŸĐ»Ń–Ń€: <b>%s</b>; <b>ĐšĐ»Đ°Ń†Đ°ĐœĐœŃ</b> ĐČŃŃ‚Đ°ĐœĐŸĐČоть ĐșĐŸĐ»Ń–Ń€ Đ·Đ°ĐżĐŸĐČĐœĐ”ĐœĐœŃ, <b>Shift"
"+ĐšĐ»Đ°Ń†Đ°ĐœĐœŃ</b> ĐČŃŃ‚Đ°ĐœĐŸĐČоть ĐșĐŸĐ»Ń–Ń€ штроха"
-#: ../src/ui/dialog/color-item.cpp:509
+#: ../src/ui/dialog/color-item.cpp:505
msgid "Change color definition"
msgstr "Đ—ĐŒŃ–ĐœĐ° ĐČĐžĐ·ĐœĐ°Ń‡Đ”ĐœĐœŃ ĐșĐŸĐ»ŃŒĐŸŃ€Ńƒ"
-#: ../src/ui/dialog/color-item.cpp:679
+#: ../src/ui/dialog/color-item.cpp:675
msgid "Remove stroke color"
msgstr "Đ’ĐžĐ»ŃƒŃ‡ĐžŃ‚Đž ĐșĐŸĐ»Ń–Ń€ штроха"
-#: ../src/ui/dialog/color-item.cpp:679
+#: ../src/ui/dialog/color-item.cpp:675
msgid "Remove fill color"
msgstr "Đ’ĐžĐ»ŃƒŃ‡ĐžŃ‚Đž ĐșĐŸĐ»Ń–Ń€ Đ·Đ°ĐżĐŸĐČĐœĐ”ĐœĐœŃ"
-#: ../src/ui/dialog/color-item.cpp:684
+#: ../src/ui/dialog/color-item.cpp:680
msgid "Set stroke color to none"
msgstr "Đ—ĐœŃŃ‚Đž ĐșĐŸĐ»Ń–Ń€ Đ· штроха"
-#: ../src/ui/dialog/color-item.cpp:684
+#: ../src/ui/dialog/color-item.cpp:680
msgid "Set fill color to none"
msgstr "Đ—ĐœŃŃ‚Đž ĐșĐŸĐ»Ń–Ń€ Đ·Đ°ĐżĐŸĐČĐœĐ”ĐœĐœŃ"
-#: ../src/ui/dialog/color-item.cpp:702
+#: ../src/ui/dialog/color-item.cpp:698
msgid "Set stroke color from swatch"
msgstr "Đ’ŃŃ‚Đ°ĐœĐŸĐČото ĐșĐŸĐ»Ń–Ń€ штроха Đ·Ń– зразĐșіĐČ"
-#: ../src/ui/dialog/color-item.cpp:702
+#: ../src/ui/dialog/color-item.cpp:698
msgid "Set fill color from swatch"
msgstr "Đ’ŃŃ‚Đ°ĐœĐŸĐČото ĐșĐŸĐ»Ń–Ń€ Đ·Đ°ĐżĐŸĐČĐœĐ”ĐœĐœŃ Đ·Ń– зразĐșіĐČ"
-#: ../src/ui/dialog/debug.cpp:73
+#: ../src/ui/dialog/debug.cpp:69
msgid "Messages"
msgstr "ĐŸĐŸĐČŃ–ĐŽĐŸĐŒĐ»Đ”ĐœĐœŃ"
-#: ../src/ui/dialog/debug.cpp:87 ../src/ui/dialog/messages.cpp:47
+#: ../src/ui/dialog/debug.cpp:83 ../src/ui/dialog/messages.cpp:47
msgid "_Clear"
msgstr "О_чостото"
-#: ../src/ui/dialog/debug.cpp:91 ../src/ui/dialog/messages.cpp:48
+#: ../src/ui/dialog/debug.cpp:87 ../src/ui/dialog/messages.cpp:48
msgid "Capture log messages"
msgstr "ĐŸĐ”Ń€Đ”Ń…ĐŸĐżĐ»ŃŽĐČато ĐżĐŸĐČŃ–ĐŽĐŸĐŒĐ»Đ”ĐœĐœŃ Đ¶ŃƒŃ€ĐœĐ°Đ»Ńƒ"
-#: ../src/ui/dialog/debug.cpp:95
+#: ../src/ui/dialog/debug.cpp:91
msgid "Release log messages"
msgstr "Đ’ĐžĐŒĐșĐœŃƒŃ‚Đž ĐżĐŸĐČŃ–ĐŽĐŸĐŒĐ»Đ”ĐœĐœŃ Đ¶ŃƒŃ€ĐœĐ°Đ»Ńƒ"
@@ -14833,11 +14831,11 @@ msgid "Remove selected grid."
msgstr "Đ’ĐžĐ»ŃƒŃ‡ĐžŃ‚Đž ĐČĐžĐ±Ń€Đ°ĐœŃƒ сітĐșу."
#: ../src/ui/dialog/document-properties.cpp:161
-#: ../src/widgets/toolbox.cpp:1836
+#: ../src/widgets/toolbox.cpp:1832
msgid "Guides"
msgstr "ĐĐ°ĐżŃ€ŃĐŒĐœŃ–"
-#: ../src/ui/dialog/document-properties.cpp:163 ../src/verbs.cpp:2827
+#: ../src/ui/dialog/document-properties.cpp:163 ../src/verbs.cpp:2796
msgid "Snap"
msgstr "ĐŸŃ€ĐžĐ»ĐžĐżĐ°ĐœĐœŃ"
@@ -14881,7 +14879,7 @@ msgstr "<b>Đ†ĐœŃˆĐ”</b>"
#. Inkscape::GC::release(defsRepr);
#. inform the document, so we can undo
#. Color Management
-#: ../src/ui/dialog/document-properties.cpp:505 ../src/verbs.cpp:3008
+#: ../src/ui/dialog/document-properties.cpp:505 ../src/verbs.cpp:2977
msgid "Link Color Profile"
msgstr "ĐŸĐŸĐČ'ŃĐ·Đ°Ń‚Đž ĐżŃ€ĐŸŃ„Ń–Đ»ŃŒ ĐșĐŸĐ»ŃŒĐŸŃ€Ń–ĐČ"
@@ -15005,45 +15003,45 @@ msgstr "<b>СтĐČĐŸŃ€Đ”ĐœĐœŃ</b>"
msgid "<b>Defined grids</b>"
msgstr "<b>Đ’ĐžĐ·ĐœĐ°Ń‡Đ”ĐœŃ– сітĐșĐž</b>"
-#: ../src/ui/dialog/document-properties.cpp:1653
+#: ../src/ui/dialog/document-properties.cpp:1654
msgid "Remove grid"
msgstr "Đ’ĐžĐ»ŃƒŃ‡ĐžŃ‚Đž сітĐșу"
-#: ../src/ui/dialog/document-properties.cpp:1741
+#: ../src/ui/dialog/document-properties.cpp:1746
msgid "Changed default display unit"
msgstr "Đ—ĐŒŃ–ĐœĐ”ĐœĐŸ Ń‚ĐžĐżĐŸĐČу ĐŸĐŽĐžĐœĐžŃ†ŃŽ ĐČĐžĐŒŃ–Ń€Ńƒ"
-#: ../src/ui/dialog/export.cpp:151 ../src/verbs.cpp:2879
+#: ../src/ui/dialog/export.cpp:147 ../src/verbs.cpp:2848
msgid "_Page"
msgstr "_ĐĄŃ‚ĐŸŃ€Ń–ĐœĐșа"
-#: ../src/ui/dialog/export.cpp:151 ../src/verbs.cpp:2883
+#: ../src/ui/dialog/export.cpp:147 ../src/verbs.cpp:2852
msgid "_Drawing"
msgstr "_ĐœĐ°Đ»ŃŽĐœĐŸĐș"
-#: ../src/ui/dialog/export.cpp:151 ../src/verbs.cpp:2885
+#: ../src/ui/dialog/export.cpp:147 ../src/verbs.cpp:2854
msgid "_Selection"
msgstr "ĐŸĐŸĐ·_ĐœĐ°Ń‡Đ”ĐœĐ”"
-#: ../src/ui/dialog/export.cpp:151
+#: ../src/ui/dialog/export.cpp:147
msgid "_Custom"
msgstr "_Đ†ĐœŃˆĐ”"
-#: ../src/ui/dialog/export.cpp:169 ../src/widgets/measure-toolbar.cpp:99
+#: ../src/ui/dialog/export.cpp:165 ../src/widgets/measure-toolbar.cpp:99
#: ../src/widgets/measure-toolbar.cpp:107
#: ../share/extensions/render_gears.inx.h:6
msgid "Units:"
msgstr "ĐžĐŽĐžĐœĐžŃ†Ń–:"
-#: ../src/ui/dialog/export.cpp:171
+#: ../src/ui/dialog/export.cpp:167
msgid "_Export As..."
msgstr "_ЕĐșŃĐżĐŸŃ€Ń‚ŃƒĐČато яĐș
"
-#: ../src/ui/dialog/export.cpp:174
+#: ../src/ui/dialog/export.cpp:170
msgid "B_atch export all selected objects"
msgstr "Па_ĐșĐ”Ń‚ĐœĐžĐč Đ”ĐșŃĐżĐŸŃ€Ń‚ усіх ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐžŃ… ĐŸĐ±'єĐșтіĐČ"
-#: ../src/ui/dialog/export.cpp:174
+#: ../src/ui/dialog/export.cpp:170
msgid ""
"Export each selected object into its own PNG file, using export hints if any "
"(caution, overwrites without asking!)"
@@ -15052,88 +15050,88 @@ msgstr ""
"піЮĐșазĐșĐž Đ”ĐșŃĐżĐŸŃ€Ń‚Ńƒ, яĐșŃ‰ĐŸ ĐČĐŸĐœĐž є (Đ·Đ°ŃŃ‚Đ”Ń€Đ”Đ¶Đ”ĐœĐœŃ, пДрДзапОс ĐČĐ”ĐŽĐ”Ń‚ŃŒŃŃ бДз "
"ĐżĐŸĐżĐ”Ń€Đ”ĐŽĐ¶Đ”ĐœĐœŃ!)"
-#: ../src/ui/dialog/export.cpp:176
+#: ../src/ui/dialog/export.cpp:172
msgid "Hide a_ll except selected"
msgstr "ĐĄ_Ń…ĐŸĐČато ĐČсД за ĐČĐžĐœŃŃ‚ĐșĐŸĐŒ ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐžŃ…"
-#: ../src/ui/dialog/export.cpp:176
+#: ../src/ui/dialog/export.cpp:172
msgid "In the exported image, hide all objects except those that are selected"
msgstr ""
"В Đ”ĐșŃĐżĐŸŃ€Ń‚ĐŸĐČĐ°ĐœĐŸĐŒŃƒ Đ·ĐŸĐ±Ń€Đ°Đ¶Đ”ĐœĐœŃ– ĐżŃ€ĐžŃ…ĐŸĐČуĐČато ĐČсі ĐŸĐ±'єĐșто, за ĐČĐžĐœŃŃ‚ĐșĐŸĐŒ ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐžŃ…"
-#: ../src/ui/dialog/export.cpp:177
+#: ../src/ui/dialog/export.cpp:173
msgid "Close when complete"
msgstr "ЗаĐșрото ĐżŃ–ŃĐ»Ń заĐČĐ”Ń€ŃˆĐ”ĐœĐœŃ"
-#: ../src/ui/dialog/export.cpp:177
+#: ../src/ui/dialog/export.cpp:173
msgid "Once the export completes, close this dialog"
msgstr "ĐŸŃ–ŃĐ»Ń заĐČĐ”Ń€ŃˆĐ”ĐœĐœŃ Đ”ĐșŃĐżĐŸŃ€Ń‚ŃƒĐČĐ°ĐœĐœŃ заĐșрото цД ĐŽŃ–Đ°Đ»ĐŸĐłĐŸĐČĐ” ĐČіĐșĐœĐŸ"
-#: ../src/ui/dialog/export.cpp:179
+#: ../src/ui/dialog/export.cpp:175
msgid "_Export"
msgstr "_ЕĐșŃĐżĐŸŃ€Ń‚ŃƒĐČато"
-#: ../src/ui/dialog/export.cpp:197
+#: ../src/ui/dialog/export.cpp:193
msgid "<b>Export area</b>"
msgstr "<b>ЕĐșŃĐżĐŸŃ€Ń‚ŃƒĐČато ĐŽŃ–Đ»ŃĐœĐșу</b>"
-#: ../src/ui/dialog/export.cpp:236
+#: ../src/ui/dialog/export.cpp:232
msgid "_x0:"
msgstr "_x0:"
-#: ../src/ui/dialog/export.cpp:240
+#: ../src/ui/dialog/export.cpp:236
msgid "x_1:"
msgstr "x_1:"
-#: ../src/ui/dialog/export.cpp:244
+#: ../src/ui/dialog/export.cpp:240
msgid "Wid_th:"
msgstr "КО_Ń€ĐžĐœĐ°:"
-#: ../src/ui/dialog/export.cpp:248
+#: ../src/ui/dialog/export.cpp:244
msgid "_y0:"
msgstr "_y0:"
-#: ../src/ui/dialog/export.cpp:252
+#: ../src/ui/dialog/export.cpp:248
msgid "y_1:"
msgstr "y_1:"
-#: ../src/ui/dialog/export.cpp:256
+#: ../src/ui/dialog/export.cpp:252
msgid "Hei_ght:"
msgstr "Во_ŃĐŸŃ‚Đ°:"
-#: ../src/ui/dialog/export.cpp:271
+#: ../src/ui/dialog/export.cpp:267
msgid "<b>Image size</b>"
msgstr "<b>Đ ĐŸĐ·ĐŒŃ–Ń€ Đ·ĐŸĐ±Ń€Đ°Đ¶Đ”ĐœĐœŃ</b>"
-#: ../src/ui/dialog/export.cpp:289 ../src/ui/dialog/export.cpp:300
+#: ../src/ui/dialog/export.cpp:285 ../src/ui/dialog/export.cpp:296
msgid "pixels at"
msgstr "Ń‚ĐŸŃ‡ĐŸĐș"
-#: ../src/ui/dialog/export.cpp:295
+#: ../src/ui/dialog/export.cpp:291
msgid "dp_i"
msgstr "dp_i"
-#: ../src/ui/dialog/export.cpp:300 ../src/ui/dialog/transformation.cpp:80
-#: ../src/ui/widget/page-sizer.cpp:237
+#: ../src/ui/dialog/export.cpp:296 ../src/ui/dialog/transformation.cpp:76
+#: ../src/ui/widget/page-sizer.cpp:238
msgid "_Height:"
msgstr "_Đ’ĐžŃĐŸŃ‚Đ°:"
-#: ../src/ui/dialog/export.cpp:308
+#: ../src/ui/dialog/export.cpp:304
#: ../src/ui/dialog/inkscape-preferences.cpp:1443
#: ../src/ui/dialog/inkscape-preferences.cpp:1447
#: ../src/ui/dialog/inkscape-preferences.cpp:1471
msgid "dpi"
msgstr "т/Ю"
-#: ../src/ui/dialog/export.cpp:316
+#: ../src/ui/dialog/export.cpp:312
msgid "<b>_Filename</b>"
msgstr "<b>_ĐĐ°Đ·ĐČа фаĐčла</b>"
-#: ../src/ui/dialog/export.cpp:358
+#: ../src/ui/dialog/export.cpp:354
msgid "Export the bitmap file with these settings"
msgstr "ЕĐșŃĐżĐŸŃ€Ń‚ŃƒĐČато фаĐčĐ» Đ· Ń†ĐžĐŒĐž ĐżĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Đ°ĐŒĐž"
-#: ../src/ui/dialog/export.cpp:611
+#: ../src/ui/dialog/export.cpp:607
#, c-format
msgid "B_atch export %d selected object"
msgid_plural "B_atch export %d selected objects"
@@ -15141,81 +15139,81 @@ msgstr[0] "Па_ĐșĐ”Ń‚ĐœĐžĐč Đ”ĐșŃĐżĐŸŃ€Ń‚ %d ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐŸĐłĐŸ ĐŸĐ±'єĐșŃ
msgstr[1] "Па_ĐșĐ”Ń‚ĐœĐžĐč Đ”ĐșŃĐżĐŸŃ€Ń‚ %d ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐžŃ… ĐŸĐ±'єĐșтіĐČ"
msgstr[2] "Па_ĐșĐ”Ń‚ĐœĐžĐč Đ”ĐșŃĐżĐŸŃ€Ń‚ %d ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐžŃ… ĐŸĐ±'єĐșтіĐČ"
-#: ../src/ui/dialog/export.cpp:927
+#: ../src/ui/dialog/export.cpp:923
msgid "Export in progress"
msgstr "броĐČає Đ”ĐșŃĐżĐŸŃ€Ń‚ŃƒĐČĐ°ĐœĐœŃ"
-#: ../src/ui/dialog/export.cpp:1017
+#: ../src/ui/dialog/export.cpp:1013
msgid "No items selected."
msgstr "ĐĐ” ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐŸ Đ¶ĐŸĐŽĐœĐŸĐłĐŸ ĐżŃƒĐœĐșту."
-#: ../src/ui/dialog/export.cpp:1021 ../src/ui/dialog/export.cpp:1023
+#: ../src/ui/dialog/export.cpp:1017 ../src/ui/dialog/export.cpp:1019
msgid "Exporting %1 files"
msgstr "ЕĐșŃĐżĐŸŃ€Ń‚ŃƒĐČĐ°ĐœĐœŃ %1 фаĐčліĐČ"
-#: ../src/ui/dialog/export.cpp:1063 ../src/ui/dialog/export.cpp:1065
+#: ../src/ui/dialog/export.cpp:1060 ../src/ui/dialog/export.cpp:1062
#, c-format
msgid "Exporting file <b>%s</b>..."
msgstr "ЕĐșŃĐżĐŸŃ€Ń‚ŃƒĐČĐ°ĐœĐœŃ фаĐčла <b>%s</b>
"
-#: ../src/ui/dialog/export.cpp:1074 ../src/ui/dialog/export.cpp:1165
+#: ../src/ui/dialog/export.cpp:1071 ../src/ui/dialog/export.cpp:1163
#, c-format
msgid "Could not export to filename %s.\n"
msgstr "ĐĐ” ĐČЮається Đ”ĐșŃĐżĐŸŃ€Ń‚ŃƒĐČато ĐŽĐŸ фаĐčла %s.\n"
-#: ../src/ui/dialog/export.cpp:1077
+#: ../src/ui/dialog/export.cpp:1074
#, c-format
msgid "Could not export to filename <b>%s</b>."
msgstr "ĐĐ” ĐČĐŽĐ°Đ»ĐŸŃŃ Đ”ĐșŃĐżĐŸŃ€Ń‚ŃƒĐČато ĐŽĐŸ фаĐčла <b>%s</b>."
-#: ../src/ui/dialog/export.cpp:1092
+#: ../src/ui/dialog/export.cpp:1089
#, c-format
msgid "Successfully exported <b>%d</b> files from <b>%d</b> selected items."
msgstr "ĐŁŃĐżŃ–ŃˆĐœĐŸ Đ”ĐșŃĐżĐŸŃ€Ń‚ĐŸĐČĐ°ĐœĐŸ <b>%d</b> фаĐčліĐČ Đ· <b>%d</b> ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐžŃ… ĐżŃƒĐœĐșтіĐČ."
-#: ../src/ui/dialog/export.cpp:1103
+#: ../src/ui/dialog/export.cpp:1100
msgid "You have to enter a filename."
msgstr "ХліЎ ĐČĐșазатО ĐœĐ°Đ·ĐČу фаĐčла."
-#: ../src/ui/dialog/export.cpp:1104
+#: ../src/ui/dialog/export.cpp:1101
msgid "You have to enter a filename"
msgstr "ĐĐ”ĐŸĐ±Ń…Ń–ĐŽĐœĐŸ ĐČĐČДстО ĐœĐ°Đ·ĐČу фаĐčла"
-#: ../src/ui/dialog/export.cpp:1118
+#: ../src/ui/dialog/export.cpp:1115
msgid "The chosen area to be exported is invalid."
msgstr "ĐĐ”ĐșĐŸŃ€Đ”ĐșŃ‚ĐœĐ° ĐŸĐ±Đ»Đ°ŃŃ‚ŃŒ ĐŽĐ»Ń Đ”ĐșŃĐżĐŸŃ€Ń‚ŃƒĐČĐ°ĐœĐœŃ."
-#: ../src/ui/dialog/export.cpp:1119
+#: ../src/ui/dialog/export.cpp:1116
msgid "The chosen area to be exported is invalid"
msgstr "ĐĐ”ĐșĐŸŃ€Đ”ĐșŃ‚ĐœĐ° ĐŸĐ±Đ»Đ°ŃŃ‚ŃŒ ĐŽĐ»Ń Đ”ĐșŃĐżĐŸŃ€Ń‚Ńƒ"
-#: ../src/ui/dialog/export.cpp:1134
+#: ../src/ui/dialog/export.cpp:1131
#, c-format
msgid "Directory %s does not exist or is not a directory.\n"
msgstr "ĐšĐ°Ń‚Đ°Đ»ĐŸĐł %s ĐœĐ” Ń–ŃĐœŃƒŃ”, Đ°Đ±ĐŸ ж цД ĐœĐ” ĐșĐ°Ń‚Đ°Đ»ĐŸĐł.\n"
#. TRANSLATORS: %1 will be the filename, %2 the width, and %3 the height of the image
-#: ../src/ui/dialog/export.cpp:1148 ../src/ui/dialog/export.cpp:1150
+#: ../src/ui/dialog/export.cpp:1145 ../src/ui/dialog/export.cpp:1147
msgid "Exporting %1 (%2 x %3)"
msgstr "ЕĐșŃĐżĐŸŃ€Ń‚ŃƒĐČĐ°ĐœĐœŃ %1 (%2 ⚯ %3)"
-#: ../src/ui/dialog/export.cpp:1176
+#: ../src/ui/dialog/export.cpp:1174
#, c-format
msgid "Drawing exported to <b>%s</b>."
msgstr "ĐœĐ°Đ»ŃŽĐœĐŸĐș Đ”ĐșŃĐżĐŸŃ€Ń‚ĐŸĐČĐ°ĐœĐŸ ĐŽĐŸ <b>%s</b>."
-#: ../src/ui/dialog/export.cpp:1180
+#: ../src/ui/dialog/export.cpp:1178
msgid "Export aborted."
msgstr "ЕĐșŃĐżĐŸŃ€Ń‚ пДрДрĐČĐ°ĐœĐŸ."
-#: ../src/ui/dialog/export.cpp:1301 ../src/ui/interface.cpp:1392
+#: ../src/ui/dialog/export.cpp:1299 ../src/ui/interface.cpp:1392
#: ../src/widgets/desktop-widget.cpp:1122
#: ../src/widgets/desktop-widget.cpp:1184
msgid "_Cancel"
msgstr "_ĐĄĐșасуĐČато"
-#: ../src/ui/dialog/export.cpp:1302 ../src/ui/dialog/input.cpp:1082
-#: ../src/verbs.cpp:2437 ../src/widgets/desktop-widget.cpp:1123
+#: ../src/ui/dialog/export.cpp:1300 ../src/ui/dialog/input.cpp:1082
+#: ../src/verbs.cpp:2406 ../src/widgets/desktop-widget.cpp:1123
msgid "_Save"
msgstr "З_бДрДгтО"
@@ -15223,8 +15221,8 @@ msgstr "З_бДрДгтО"
msgid "Information"
msgstr "Đ†ĐœŃ„ĐŸŃ€ĐŒĐ°Ń†Ń–Ń"
-#: ../src/ui/dialog/extension-editor.cpp:82 ../src/verbs.cpp:310
-#: ../src/verbs.cpp:329 ../share/extensions/color_HSL_adjust.inx.h:11
+#: ../src/ui/dialog/extension-editor.cpp:82 ../src/verbs.cpp:309
+#: ../src/verbs.cpp:328 ../share/extensions/color_HSL_adjust.inx.h:11
#: ../share/extensions/color_custom.inx.h:7
#: ../share/extensions/color_randomize.inx.h:6
#: ../share/extensions/dots.inx.h:7
@@ -15296,36 +15294,36 @@ msgstr "Đ”ĐŸĐ·ĐČĐŸĐ»ĐžŃ‚Đž ĐżĐ”Ń€Đ”ĐłĐ»ŃĐŽ"
#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:783
#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:799
#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:814
-#: ../src/ui/dialog/filedialogimpl-win32.cpp:282
-#: ../src/ui/dialog/filedialogimpl-win32.cpp:413
+#: ../src/ui/dialog/filedialogimpl-win32.cpp:286
+#: ../src/ui/dialog/filedialogimpl-win32.cpp:417
msgid "All Files"
msgstr "Усі фаĐčлО"
#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:780
#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:796
#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:811
-#: ../src/ui/dialog/filedialogimpl-win32.cpp:283
+#: ../src/ui/dialog/filedialogimpl-win32.cpp:287
msgid "All Inkscape Files"
msgstr "Усі фаĐčлО Inkscape"
#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:787
#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:803
#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:817
-#: ../src/ui/dialog/filedialogimpl-win32.cpp:284
+#: ../src/ui/dialog/filedialogimpl-win32.cpp:288
msgid "All Images"
msgstr "Усі Đ·ĐŸĐ±Ń€Đ°Đ¶Đ”ĐœĐœŃ"
#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:790
#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:806
#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:820
-#: ../src/ui/dialog/filedialogimpl-win32.cpp:285
+#: ../src/ui/dialog/filedialogimpl-win32.cpp:289
msgid "All Vectors"
msgstr "Всі ĐČĐ”ĐșŃ‚ĐŸŃ€ĐœŃ–"
#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:793
#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:809
#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:823
-#: ../src/ui/dialog/filedialogimpl-win32.cpp:286
+#: ../src/ui/dialog/filedialogimpl-win32.cpp:290
msgid "All Bitmaps"
msgstr "Всі Ń€Đ°ŃŃ‚Ń€ĐŸĐČі"
@@ -15385,8 +15383,8 @@ msgstr "Đ ĐŸĐ·ĐŽŃ–Đ»ŃŒĐœĐ° Đ·ĐŽĐ°Ń‚ĐœŃ–ŃŃ‚ŃŒ (у т./ЮюĐčĐŒ)"
msgid "Document"
msgstr "Đ”ĐŸĐșŃƒĐŒĐ”ĐœŃ‚"
-#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1541 ../src/verbs.cpp:176
-#: ../src/widgets/desktop-widget.cpp:2000
+#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1541 ../src/verbs.cpp:175
+#: ../src/widgets/desktop-widget.cpp:2002
#: ../share/extensions/printing_marks.inx.h:18
msgid "Selection"
msgstr "ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐ”"
@@ -15408,15 +15406,15 @@ msgstr "Cairo"
msgid "Antialias"
msgstr "ĐŸĐ»Đ°ĐČĐœĐ” Đ·ĐŒŃ–ĐœŃŽĐČĐ°ĐœĐœŃ"
-#: ../src/ui/dialog/filedialogimpl-win32.cpp:414
+#: ../src/ui/dialog/filedialogimpl-win32.cpp:418
msgid "All Executable Files"
msgstr "Усі ĐČĐžĐșĐŸĐœŃƒĐČĐ°ĐœŃ– фаĐčлО"
-#: ../src/ui/dialog/filedialogimpl-win32.cpp:606
+#: ../src/ui/dialog/filedialogimpl-win32.cpp:610
msgid "Show Preview"
msgstr "ĐŸĐŸĐșазатО ĐżĐŸĐżĐ”Ń€Đ”ĐŽĐœŃ–Đč ĐżĐ”Ń€Đ”ĐłĐ»ŃĐŽ"
-#: ../src/ui/dialog/filedialogimpl-win32.cpp:744
+#: ../src/ui/dialog/filedialogimpl-win32.cpp:748
msgid "No file selected"
msgstr "ĐĐ” ĐČĐžĐ±Ń€Đ°ĐœĐŸ фаĐčла"
@@ -15433,7 +15431,7 @@ msgid "Stroke st_yle"
msgstr "ĐĄ_Ń‚ĐžĐ»ŃŒ штроха"
#. TRANSLATORS: this dialog is accessible via menu Filters - Filter editor
-#: ../src/ui/dialog/filter-effects-dialog.cpp:546
+#: ../src/ui/dialog/filter-effects-dialog.cpp:547
msgid ""
"This matrix determines a linear transform on color space. Each line affects "
"one of the color components. Each column determines how much of each color "
@@ -15446,64 +15444,64 @@ msgstr ""
"ĐœĐ” Đ·Đ°Đ»Đ”Đ¶ĐžŃ‚ŃŒ ĐČіЮ ĐČŃ…Ń–ĐŽĐœĐžŃ… ĐșĐŸĐ»ŃŒĐŸŃ€Ń–ĐČ, ĐŸŃ‚Đ¶Đ”, ĐŒĐŸĐ¶Đ” Đ±ŃƒŃ‚Đž ĐČĐžĐșĐŸŃ€ĐžŃŃ‚Đ°ĐœĐžĐč ĐŽĐ»Ń "
"ĐČĐžĐ·ĐœĐ°Ń‡Đ”ĐœĐœŃ ŃŃ‚Đ°Đ»ĐŸĐłĐŸ Đ·ĐœĐ°Ń‡Đ”ĐœĐœŃ у ĐșĐŸĐŒĐżĐŸĐœĐ”ĐœŃ‚Ń–."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:549
+#: ../src/ui/dialog/filter-effects-dialog.cpp:550
#: ../share/extensions/grid_polar.inx.h:4
msgctxt "Label"
msgid "None"
msgstr "ĐĐ”ĐŒĐ°Ń”"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:656
+#: ../src/ui/dialog/filter-effects-dialog.cpp:657
msgid "Image File"
msgstr "ЀаĐčĐ» Đ·ĐŸĐ±Ń€Đ°Đ¶Đ”ĐœĐœŃ"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:659
+#: ../src/ui/dialog/filter-effects-dialog.cpp:660
msgid "Selected SVG Element"
msgstr "Đ’ĐžĐ±Ń€Đ°ĐœĐžĐč Đ”Đ»Đ”ĐŒĐ”ĐœŃ‚ SVG"
#. TODO: any image, not just svg
-#: ../src/ui/dialog/filter-effects-dialog.cpp:729
+#: ../src/ui/dialog/filter-effects-dialog.cpp:730
msgid "Select an image to be used as feImage input"
msgstr "ĐžĐ±Đ”Ń€Ń–Ń‚ŃŒ Đ·ĐŸĐ±Ń€Đ°Đ¶Đ”ĐœĐœŃ, Ń‰ĐŸ буЎД ĐČĐžĐșĐŸŃ€ĐžŃŃ‚Đ°ĐœĐŸ яĐș ĐČŃ…Ń–ĐŽĐœŃ– ĐŽĐ°ĐœŃ– feImage"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:821
+#: ../src/ui/dialog/filter-effects-dialog.cpp:822
msgid "This SVG filter effect does not require any parameters."
msgstr "ĐŠĐ”Đč ĐżŃ€ĐžĐŒŃ–Ń‚ĐžĐČ Đ”Ń„Đ”Đșту SVG ĐœĐ” ĐżĐŸŃ‚Ń€Đ”Đ±ŃƒŃ” ĐżĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Ń–ĐČ."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:827
+#: ../src/ui/dialog/filter-effects-dialog.cpp:828
msgid "This SVG filter effect is not yet implemented in Inkscape."
msgstr "ĐŠĐ”Đč Ń„Ń–Đ»ŃŒŃ‚Ń€ ДфДĐșту SVG щД ĐœĐ” Ń€Đ”Đ°Đ»Ń–Đ·ĐŸĐČĐ°ĐœĐŸ у Inkscape."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1041
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1042
msgid "Slope"
msgstr "ĐŸĐ”Ń€ŃĐżĐ”ĐșтоĐČа"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1042
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1043
msgid "Intercept"
msgstr "ĐŸĐ”Ń€Đ”Ń‚ĐžĐœ"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1045
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1046
msgid "Amplitude"
msgstr "ĐĐŒĐżĐ»Ń–Ń‚ŃƒĐŽĐ°"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1046
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1047
msgid "Exponent"
msgstr "ЕĐșŃĐżĐŸĐœĐ”ĐœŃ‚Đ°"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1143
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1144
msgid "New transfer function type"
msgstr "йОп ĐœĐŸĐČĐŸŃ— Ń„ŃƒĐœĐșції ĐżĐ”Ń€Đ”ĐœĐ”ŃĐ”ĐœĐœŃ"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1178
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1179
msgid "Light Source:"
msgstr "Đ”Đ¶Đ”Ń€Đ”Đ»ĐŸ сĐČітла:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1195
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1196
msgid "Direction angle for the light source on the XY plane, in degrees"
msgstr ""
"Кут ĐœĐ°ĐżŃ€ŃĐŒĐșу, піЮ яĐșĐžĐŒ ĐŽĐ¶Đ”Ń€Đ”Đ»ĐŸ сĐČітла Đ·ĐœĐ°Ń…ĐŸĐŽĐžŃ‚ŃŒŃŃ ĐČŃ–ĐŽĐœĐŸŃĐœĐŸ ĐżĐ»ĐŸŃ‰ĐžĐœĐž XY (у "
"граЮусах)"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1196
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1197
msgid "Direction angle for the light source on the YZ plane, in degrees"
msgstr ""
"Кут ĐœĐ°ĐżŃ€ŃĐŒĐșу, піЮ яĐșĐžĐŒ ĐŽĐ¶Đ”Ń€Đ”Đ»ĐŸ сĐČітла Đ·ĐœĐ°Ń…ĐŸĐŽĐžŃ‚ŃŒŃŃ ĐČŃ–ĐŽĐœĐŸŃĐœĐŸ ĐżĐ»ĐŸŃ‰ĐžĐœĐž YZ (у "
@@ -15512,47 +15510,47 @@ msgstr ""
#. default x:
#. default y:
#. default z:
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1199
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1202
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1200
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1203
msgid "Location:"
msgstr "Đ ĐŸĐ·Ń‚Đ°ŃˆŃƒĐČĐ°ĐœĐœŃ:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1199
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1202
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1205
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1200
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1203
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1206
msgid "X coordinate"
msgstr "ĐšĐŸĐŸŃ€ĐŽĐžĐœĐ°Ń‚Đ° X"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1199
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1202
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1205
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1200
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1203
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1206
msgid "Y coordinate"
msgstr "ĐšĐŸĐŸŃ€ĐŽĐžĐœĐ°Ń‚Đ° Y"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1199
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1202
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1205
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1200
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1203
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1206
msgid "Z coordinate"
msgstr "ĐšĐŸĐŸŃ€ĐŽĐžĐœĐ°Ń‚Đ° Z"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1205
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1206
msgid "Points At"
msgstr "ВĐșĐ°Đ·ŃƒŃ” ĐœĐ°"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1206
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1207
msgid "Specular Exponent"
msgstr "ĐĄŃ‚Đ”ĐżŃ–ĐœŃŒ ĐČŃ–ĐŽĐ±ĐžŃ‚Ń‚Ń"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1206
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1207
msgid "Exponent value controlling the focus for the light source"
msgstr "ĐŸĐŸĐșĐ°Đ·ĐœĐžĐș Đ”ĐșŃĐżĐŸĐœĐ”ĐœŃ‚Đž, Ń‰ĐŸ ĐșĐ”Ń€ŃƒŃ” Ń„ĐŸĐșŃƒŃĐŸĐŒ ЎжДрДла сĐČітла"
#. TODO: here I have used 100 degrees as default value. But spec says that if not specified, no limiting cone is applied. So, there should be a way for the user to set a "no limiting cone" option.
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1208
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1209
msgid "Cone Angle"
msgstr "Кут ĐșĐŸĐœŃƒŃĐ°"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1208
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1209
msgid ""
"This is the angle between the spot light axis (i.e. the axis between the "
"light source and the point to which it is pointing at) and the spot light "
@@ -15562,111 +15560,111 @@ msgstr ""
"сĐČітла і Ń‚ĐŸŃ‡Đșу, ĐœĐ° яĐșу ĐčĐŸĐłĐŸ ŃĐżŃ€ŃĐŒĐŸĐČĐ°ĐœĐŸ) і ĐșĐŸĐœŃƒŃĐŸĐŒ ĐżŃ€ĐŸĐ¶Đ”ĐșŃ‚ĐŸŃ€Đ°. За ĐŒĐ”Đ¶Ń– ĐșĐŸĐœŃƒŃĐ° "
"сĐČŃ–Ń‚Đ»ĐŸ ĐœĐ” ĐżŃ€ĐŸĐ”Đșтується."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1274
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1275
msgid "New light source"
msgstr "ĐĐŸĐČĐ” ĐŽĐ¶Đ”Ń€Đ”Đ»ĐŸ сĐČітла"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1325
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1326
msgid "_Duplicate"
msgstr "_Đ”ŃƒĐ±Đ»ŃŽĐČато"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1359
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1360
msgid "_Filter"
msgstr "_Đ€Ń–Đ»ŃŒŃ‚Ń€"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1379
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1387
msgid "R_ename"
msgstr "ĐŸĐ”Ń€Đ”_ĐčĐŒĐ”ĐœŃƒĐČато"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1512
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1521
msgid "Rename filter"
msgstr "ĐŸĐ”Ń€Đ”ĐčĐŒĐ”ĐœŃƒĐČато Ń„Ń–Đ»ŃŒŃ‚Ń€"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1565
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1573
msgid "Apply filter"
msgstr "Đ—Đ°ŃŃ‚ĐŸŃŃƒĐČато Ń„Ń–Đ»ŃŒŃ‚Ń€"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1635
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1652
msgid "filter"
msgstr "Ń„Ń–Đ»ŃŒŃ‚Ń€ŃƒĐČато"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1642
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1659
msgid "Add filter"
msgstr "Đ”ĐŸĐŽĐ°Ń‚Đž Ń„Ń–Đ»ŃŒŃ‚Ń€"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1694
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1709
msgid "Duplicate filter"
msgstr "Đ”ŃƒĐ±Đ»ŃŽĐČато Ń„Ń–Đ»ŃŒŃ‚Ń€"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1793
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1808
msgid "_Effect"
msgstr "_ЕфДĐșт"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1803
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1818
msgid "Connections"
msgstr "З'Ń”ĐŽĐœĐ°ĐœĐœŃ"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:1941
+#: ../src/ui/dialog/filter-effects-dialog.cpp:1956
msgid "Remove filter primitive"
msgstr "Đ’ĐžĐ»ŃƒŃ‡ĐžŃ‚Đž ĐżŃ€ĐžĐŒŃ–Ń‚ĐžĐČ Ń„Ń–Đ»ŃŒŃ‚Ń€Đ°"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2529
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2543
msgid "Remove merge node"
msgstr "Đ’ĐžĐ»ŃƒŃ‡ĐžŃ‚Đž ĐČŃƒĐ·ĐŸĐ» ĐŸĐ±'Ń”ĐŽĐœĐ°ĐœĐœŃ"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2649
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2663
msgid "Reorder filter primitive"
msgstr "Đ—ĐŒŃ–ĐœĐ° ĐżĐŸŃ€ŃĐŽĐșу ĐżŃ€ĐžĐŒŃ–Ń‚ĐžĐČіĐČ Ń„Ń–Đ»ŃŒŃ‚Ń€Đ°"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2729
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2743
msgid "Add Effect:"
msgstr "Đ”ĐŸĐŽĐ°Ń‚Đž ДфДĐșт:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2730
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2744
msgid "No effect selected"
msgstr "ĐĐ” ĐČĐžĐ±Ń€Đ°ĐœĐŸ Đ¶ĐŸĐŽĐœĐŸĐłĐŸ ДфДĐșту"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2731
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2745
msgid "No filter selected"
msgstr "ĐĐ” ĐČĐžĐ±Ń€Đ°ĐœĐŸ Đ¶ĐŸĐŽĐœĐŸĐłĐŸ Ń„Ń–Đ»ŃŒŃ‚Ń€Đ°"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2776
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2792
msgid "Effect parameters"
msgstr "ĐŸĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Đž ДфДĐșту"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2777
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2793
msgid "Filter General Settings"
msgstr "Đ—Đ°ĐłĐ°Đ»ŃŒĐœŃ– ĐżĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Đž Ń„Ń–Đ»ŃŒŃ‚Ń€Đ°"
#. default x:
#. default y:
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2835
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2851
msgid "Coordinates:"
msgstr "ĐšĐŸĐŸŃ€ĐŽĐžĐœĐ°Ń‚Đž:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2835
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2851
msgid "X coordinate of the left corners of filter effects region"
msgstr "ĐšĐŸĐŸŃ€ĐŽĐžĐœĐ°Ń‚Đ° X ліĐČох ĐșутіĐČ ĐŸĐ±Đ»Đ°ŃŃ‚Ń– Юії ДфДĐșтіĐČ Ń„Ń–Đ»ŃŒŃ‚Ń€Đ°"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2835
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2851
msgid "Y coordinate of the upper corners of filter effects region"
msgstr "ĐšĐŸĐŸŃ€ĐŽĐžĐœĐ°Ń‚Đ° X ĐČĐ”Ń€Ń…ĐœŃ–Ń… ĐșутіĐČ ĐŸĐ±Đ»Đ°ŃŃ‚Ń– Юії ДфДĐșтіĐČ Ń„Ń–Đ»ŃŒŃ‚Ń€Đ°"
#. default width:
#. default height:
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2836
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2852
msgid "Dimensions:"
msgstr "Đ ĐŸĐ·ĐŒŃ–Ń€Đž:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2836
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2852
msgid "Width of filter effects region"
msgstr "ĐšĐžŃ€ĐžĐœĐ° ĐŸĐ±Đ»Đ°ŃŃ‚Ń– Юії ДфДĐșтіĐČ Ń„Ń–Đ»ŃŒŃ‚Ń€Đ°"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2836
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2852
msgid "Height of filter effects region"
msgstr "Đ’ĐžŃĐŸŃ‚Đ° ĐŸĐ±Đ»Đ°ŃŃ‚Ń– Юії ДфДĐșтіĐČ Ń„Ń–Đ»ŃŒŃ‚Ń€Đ°"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2842
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2858
msgid ""
"Indicates the type of matrix operation. The keyword 'matrix' indicates that "
"a full 5x4 matrix of values will be provided. The other keywords represent "
@@ -15677,40 +15675,40 @@ msgstr ""
"ĐŒĐ°Ń‚Ń€ĐžŃ†ŃŽ Đ·ĐœĐ°Ń‡Đ”ĐœŃŒ Ń€ĐŸĐ·ĐŒŃ–Ń€ĐŸĐŒ 5×4. Đ†ĐœŃˆŃ– ĐČĐ°Ń€Ń–Đ°ĐœŃ‚Đž — цД ĐżŃ€ĐŸŃŃ‚ĐžĐč ŃĐżĐŸŃŃ–Đ± ĐČĐžĐșĐŸĐœĐ°Ń‚Đž "
"ĐœĐ°ĐčĐżŃ€ĐŸŃŃ‚Ń–ŃˆŃ– ĐŸĐżĐ”Ń€Đ°Ń†Ń–Ń— бДз ĐČĐžĐ·ĐœĐ°Ń‡Đ”ĐœĐœŃ ĐČсієї ĐŒĐ°Ń‚Ń€ĐžŃ†Ń– ĐČŃ€ŃƒŃ‡ĐœŃƒ."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2843
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2859
msgid "Value(s):"
msgstr "Đ—ĐœĐ°Ń‡Đ”ĐœĐœŃ:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2847
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2863
msgid "R:"
msgstr "Ч:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2848
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2864
#: ../src/widgets/sp-color-icc-selector.cpp:334
msgid "G:"
msgstr "З:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2849
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2865
msgid "B:"
msgstr "ĐĄ:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2850
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2866
msgid "A:"
msgstr "П:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2853
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2893
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2869
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2909
msgid "Operator:"
msgstr "ĐžĐżĐ”Ń€Đ°Ń‚ĐŸŃ€:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2854
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2870
msgid "K1:"
msgstr "K1:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2854
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2855
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2856
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2857
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2870
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2871
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2872
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2873
msgid ""
"If the arithmetic operation is chosen, each result pixel is computed using "
"the formula k1*i1*i2 + k2*i1 + k3*i2 + k4 where i1 and i2 are the pixel "
@@ -15720,38 +15718,38 @@ msgstr ""
"за Ń„ĐŸŃ€ĐŒŃƒĐ»ĐŸŃŽ k1*i1*i2 + k2*i1 + k3*i2 + k4, ĐŽĐ” i1 і i2 — Đ·ĐœĐ°Ń‡Đ”ĐœĐœŃ піĐșсДліĐČ "
"ĐżĐ”Ń€ŃˆĐŸĐłĐŸ і ĐŽŃ€ŃƒĐłĐŸĐłĐŸ ĐČŃ…Ń–ĐŽĐœĐžŃ… Đ·ĐœĐ°Ń‡Đ”ĐœŃŒ ĐČŃ–ĐŽĐżĐŸĐČŃ–ĐŽĐœĐŸ."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2855
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2871
msgid "K2:"
msgstr "K2:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2856
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2872
msgid "K3:"
msgstr "K3:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2857
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2873
msgid "K4:"
msgstr "K4:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2860
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2876
msgid "Size:"
msgstr "Đ ĐŸĐ·ĐŒŃ–Ń€:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2860
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2876
msgid "width of the convolve matrix"
msgstr "ŃˆĐžŃ€ĐžĐœĐ° ĐŒĐ°Ń‚Ń€ĐžŃ†Ń– Đ·ĐłĐŸŃ€Ń‚ĐșĐž"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2860
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2876
msgid "height of the convolve matrix"
msgstr "ĐČĐžŃĐŸŃ‚Đ° ĐŒĐ°Ń‚Ń€ĐžŃ†Ń– Đ·ĐłĐŸŃ€Ń‚ĐșĐž"
#. default x:
#. default y:
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2861
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2877
#: ../src/ui/dialog/object-attributes.cpp:48
msgid "Target:"
msgstr "Target:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2861
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2877
msgid ""
"X coordinate of the target point in the convolve matrix. The convolution is "
"applied to pixels around this point."
@@ -15759,7 +15757,7 @@ msgstr ""
"ĐšĐŸĐŸŃ€ĐŽĐžĐœĐ°Ń‚Đ° X ĐșŃ–ĐœŃ†Đ”ĐČĐŸŃ— Ń‚ĐŸŃ‡ĐșĐž ĐŒĐ°Ń‚Ń€ĐžŃ†Ń– Đ·ĐłĐŸŃ€Ń‚ĐșĐž. Đ—ĐłĐŸŃ€Ń‚Đșа Đ·Đ°ŃŃ‚ĐŸŃĐŸĐČується ĐŽĐŸ "
"піĐșсДліĐČ ĐœĐ°ĐČĐșĐŸĐ»ĐŸ цієї Ń‚ĐŸŃ‡ĐșĐž."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2861
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2877
msgid ""
"Y coordinate of the target point in the convolve matrix. The convolution is "
"applied to pixels around this point."
@@ -15768,11 +15766,11 @@ msgstr ""
"піĐșсДліĐČ ĐœĐ°ĐČĐșĐŸĐ»ĐŸ цієї Ń‚ĐŸŃ‡ĐșĐž."
#. TRANSLATORS: for info on "Kernel", see http://en.wikipedia.org/wiki/Kernel_(matrix)
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2863
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2879
msgid "Kernel:"
msgstr "ĐŻĐŽŃ€ĐŸ:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2863
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2879
msgid ""
"This matrix describes the convolve operation that is applied to the input "
"image in order to calculate the pixel colors at the output. Different "
@@ -15787,11 +15785,11 @@ msgstr ""
"у Ń‚ĐŸĐč час, яĐș ĐŒĐ°Ń‚Ń€ĐžŃ†Ń, Đ·Đ°ĐżĐŸĐČĐœĐ”ĐœĐ° ŃŃ‚Đ°Đ»ĐžĐŒ ĐœĐ”ĐœŃƒĐ»ŃŒĐŸĐČĐžĐŒ Đ·ĐœĐ°Ń‡Đ”ĐœĐœŃĐŒ Юасть Đ·ĐČочаĐčĐœĐžĐč "
"ДфДĐșт Ń€ĐŸĐ·ĐŒĐžĐČĐ°ĐœĐœŃ."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2865
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2881
msgid "Divisor:"
msgstr "Đ”Ń–Đ»ŃŒĐœĐžĐș:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2865
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2881
msgid ""
"After applying the kernelMatrix to the input image to yield a number, that "
"number is divided by divisor to yield the final destination color value. A "
@@ -15803,11 +15801,11 @@ msgstr ""
"ĐșĐŸĐ»ŃŒĐŸŃ€Ńƒ. Đ”Ń–Đ»ŃŒĐœĐžĐș, Ń‰ĐŸ є ŃŃƒĐŒĐŸŃŽ ĐČсіх Đ·ĐœĐ°Ń‡Đ”ĐœŃŒ ĐŒĐ°Ń‚Ń€ĐžŃ†Ń–, ĐżŃ€ĐžĐłĐ»ŃƒŃˆŃƒŃ” Đ·Đ°ĐłĐ°Đ»ŃŒĐœŃƒ "
"Ń–ĐœŃ‚Đ”ĐœŃĐžĐČĐœŃ–ŃŃ‚ŃŒ ĐșĐŸĐ»ŃŒĐŸŃ€Ń–ĐČ ĐŸŃŃ‚Đ°Ń‚ĐŸŃ‡ĐœĐŸĐłĐŸ Đ·ĐŸĐ±Ń€Đ°Đ¶Đ”ĐœĐœŃ."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2866
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2882
msgid "Bias:"
msgstr "Đ—ĐŒŃ–Ń‰Đ”ĐœĐœŃ:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2866
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2882
msgid ""
"This value is added to each component. This is useful to define a constant "
"value as the zero response of the filter."
@@ -15815,11 +15813,11 @@ msgstr ""
"ĐŠĐ” Đ·ĐœĐ°Ń‡Đ”ĐœĐœŃ ĐŽĐŸĐŽĐ°Ń”Ń‚ŃŒŃŃ ĐŽĐŸ ĐșĐŸĐ¶ĐœĐŸĐłĐŸ ĐșĐŸĐŒĐżĐŸĐœĐ”ĐœŃ‚Đ°. ĐšĐŸŃ€ĐžŃĐœĐŸ ĐŽĐ»Ń Đ·Đ°ĐŽĐ°ĐœĐœŃ ŃŃ‚Đ°Đ»ĐŸŃ—, яĐș "
"ĐœŃƒĐ»ŃŒĐŸĐČĐŸĐłĐŸ ĐČіЮгуĐșу Ń„Ń–Đ»ŃŒŃ‚Ń€Đ°."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2867
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2883
msgid "Edge Mode:"
msgstr "Đ Đ”Đ¶ĐžĐŒ ĐșраїĐČ:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2867
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2883
msgid ""
"Determines how to extend the input image as necessary with color values so "
"that the matrix operations can be applied when the kernel is positioned at "
@@ -15829,31 +15827,31 @@ msgstr ""
"Ń‰ĐŸĐ± ĐŒĐ°Ń‚Ń€ĐžŃ‡ĐœŃ– ĐŸĐżĐ”Ń€Đ°Ń†Ń–Ń— ĐŒĐŸĐłĐ»Đž працюĐČато Đ· ŃĐŽŃ€ĐŸĐŒ, Ń€ĐŸĐ·Ń‚Đ°ŃˆĐŸĐČĐ°ĐœĐžĐŒ ĐœĐ° Đșраю "
"Đ·ĐŸĐ±Ń€Đ°Đ¶Đ”ĐœĐœŃ Đ°Đ±ĐŸ ĐżĐŸĐ±Đ»ĐžĐ·Ńƒ ĐœŃŒĐŸĐłĐŸ."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2868
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2884
msgid "Preserve Alpha"
msgstr "ЗбДрігатО α-ĐșĐ°ĐœĐ°Đ»"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2868
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2884
msgid "If set, the alpha channel won't be altered by this filter primitive."
msgstr "ĐŻĐșŃ‰ĐŸ ĐČŃŃ‚Đ°ĐœĐŸĐČĐ»Đ”ĐœĐŸ, α-ĐșĐ°ĐœĐ°Đ» ĐœĐ” буЎД Đ·ĐŒŃ–ĐœĐ”ĐœĐŸ Ń†ĐžĐŒ ĐżŃ€ĐžĐŒŃ–Ń‚ĐžĐČĐŸĐŒ Ń„Ń–Đ»ŃŒŃ‚Ń€Đ°."
#. default: white
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2871
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2887
msgid "Diffuse Color:"
msgstr "ĐšĐŸĐ»Ń–Ń€ ĐŽĐžŃ„ŃƒĐ·Ń–Ń—:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2871
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2904
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2887
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2920
msgid "Defines the color of the light source"
msgstr "Đ’ĐžĐ·ĐœĐ°Ń‡Đ°Ń” ĐșĐŸĐ»Ń–Ń€ ЎжДрДла сĐČітла"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2872
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2905
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2888
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2921
msgid "Surface Scale:"
msgstr "ĐœĐ°ŃŃˆŃ‚Đ°Đ± ĐżĐŸĐČĐ”Ń€Ń…ĐœŃ–:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2872
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2905
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2888
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2921
msgid ""
"This value amplifies the heights of the bump map defined by the input alpha "
"channel"
@@ -15861,59 +15859,59 @@ msgstr ""
"ĐŠĐ” Đ·ĐœĐ°Ń‡Đ”ĐœĐœŃ ĐČĐžĐ·ĐœĐ°Ń‡Đ°Ń” ĐŒĐœĐŸĐ¶ĐœĐžĐș ĐČĐžŃĐŸŃ‚Đž Đșарто Ń€Đ”Đ»ŃŒŃ”Ń„Ńƒ, Ń‰ĐŸ Đ·Đ°ĐŽĐ°Ń”Ń‚ŃŒŃŃ ĐČŃ…Ń–ĐŽĐœĐžĐŒ α-"
"ĐșĐ°ĐœĐ°Đ»ĐŸĐŒ"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2873
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2906
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2889
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2922
msgid "Constant:"
msgstr "ĐšĐŸĐœŃŃ‚Đ°ĐœŃ‚Đ°:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2873
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2906
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2889
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2922
msgid "This constant affects the Phong lighting model."
msgstr "Щя стала ŃŃ‚ĐŸŃŃƒŃ”Ń‚ŃŒŃŃ ĐŒĐŸĐŽĐ”Đ»Ń– ĐŸŃĐČŃ–Ń‚Đ»Đ”ĐœĐœŃ Đ€ĐŸĐœĐłĐ°"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2874
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2908
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2890
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2924
msgid "Kernel Unit Length:"
msgstr "ĐžĐŽĐžĐœĐžŃ†Ń ĐŽĐŸĐČĐ¶ĐžĐœĐž у яЮрі:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2878
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2894
msgid "This defines the intensity of the displacement effect."
msgstr "Щя ĐČĐ”Đ»ĐžŃ‡ĐžĐœĐ° ĐČĐžĐ·ĐœĐ°Ń‡Đ°Ń” Ń–ĐœŃ‚Đ”ĐœŃĐžĐČĐœŃ–ŃŃ‚ŃŒ ДфДĐșту Đ·ĐŒŃ–Ń‰Đ”ĐœĐœŃ."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2879
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2895
msgid "X displacement:"
msgstr "Đ—ĐŒŃ–Ń‰Đ”ĐœĐœŃ за X:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2879
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2895
msgid "Color component that controls the displacement in the X direction"
msgstr "ĐšĐŸĐŒĐżĐŸĐœĐ”ĐœŃ‚ ĐșĐŸĐ»ŃŒĐŸŃ€Ńƒ, Ń‰ĐŸ ĐșĐ”Ń€ŃƒŃ” Đ·ĐŒŃ–Ń‰Đ”ĐœĐœŃĐŒ у ĐœĐ°ĐżŃ€ŃĐŒĐșу ĐŸŃŃ– X"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2880
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2896
msgid "Y displacement:"
msgstr "Đ—ĐŒŃ–Ń‰Đ”ĐœĐœŃ за Y:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2880
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2896
msgid "Color component that controls the displacement in the Y direction"
msgstr "ĐšĐŸĐŒĐżĐŸĐœĐ”ĐœŃ‚ ĐșĐŸĐ»ŃŒĐŸŃ€Ńƒ, Ń‰ĐŸ ĐșĐ”Ń€ŃƒŃ” Đ·ĐŒŃ–Ń‰Đ”ĐœĐœŃĐŒ у ĐœĐ°ĐżŃ€ŃĐŒĐșу ĐŸŃŃ– Y"
#. default: black
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2883
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2899
msgid "Flood Color:"
msgstr "ĐšĐŸĐ»Ń–Ń€ залОĐČĐșĐž:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2883
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2899
msgid "The whole filter region will be filled with this color."
msgstr "Всю ĐŸĐ±Đ»Đ°ŃŃ‚ŃŒ Юії Ń„Ń–Đ»ŃŒŃ‚Ń€Đ° буЎД Đ·Đ°Đ»ĐžŃ‚ĐŸ Ń†ĐžĐŒ ĐșĐŸĐ»ŃŒĐŸŃ€ĐŸĐŒ."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2887
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2903
msgid "Standard Deviation:"
msgstr "ĐĄŃ‚Đ°ĐœĐŽĐ°Ń€Ń‚ĐœĐ” ĐČŃ–ĐŽŃ…ĐžĐ»Đ”ĐœĐœŃ:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2887
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2903
msgid "The standard deviation for the blur operation."
msgstr "ĐĄŃ‚Đ°ĐœĐŽĐ°Ń€Ń‚ĐœĐ” ĐČŃ–ĐŽŃ…ĐžĐ»Đ”ĐœĐœŃ піЮ час ĐČĐžĐșĐŸĐœĐ°ĐœĐœŃ ĐŸĐżĐ”Ń€Đ°Ń†Ń–Ń— Ń€ĐŸĐ·ĐŒĐžĐČĐ°ĐœĐœŃ"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2893
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2909
msgid ""
"Erode: performs \"thinning\" of input image.\n"
"Dilate: performs \"fattenning\" of input image."
@@ -15921,41 +15919,41 @@ msgstr ""
"Đ•Ń€ĐŸĐ·Ń–Ń: ĐČĐžĐșĐŸĐœŃƒŃ” «ĐČĐžŃ‚ĐŸĐœŃ‡Đ”ĐœĐœŃÂ» ĐČŃ…Ń–ĐŽĐœĐŸĐłĐŸ Đ·ĐŸĐ±Ń€Đ°Đ¶Đ”ĐœĐœŃ\n"
"Đ ĐŸĐ·Ń‚ŃĐłŃƒĐČĐ°ĐœĐœŃ: Â«ĐżĐŸŃ‚ĐŸĐČŃ‰ŃƒŃ”Â» ĐČŃ…Ń–ĐŽĐœĐ” Đ·ĐŸĐ±Ń€Đ°Đ¶Đ”ĐœĐœŃ"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2897
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2913
msgid "Source of Image:"
msgstr "Đ”Đ¶Đ”Ń€Đ”Đ»ĐŸ Đ·ĐŸĐ±Ń€Đ°Đ¶Đ”ĐœĐœŃ:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2900
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2916
msgid "Delta X:"
msgstr "ĐšŃ€ĐŸĐș за X:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2900
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2916
msgid "This is how far the input image gets shifted to the right"
msgstr "Đ’ĐžĐ·ĐœĐ°Ń‡Đ°Ń” яĐș ЎалДĐșĐŸ ĐČŃ…Ń–ĐŽĐœĐ” Đ·ĐŸĐ±Ń€Đ°Đ¶Đ”ĐœĐœŃ Đ·ĐŒŃ–Ń‰ŃƒŃ”Ń‚ŃŒŃŃ праĐČĐŸŃ€ŃƒŃ‡"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2901
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2917
msgid "Delta Y:"
msgstr "ĐšŃ€ĐŸĐș за Y:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2901
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2917
msgid "This is how far the input image gets shifted downwards"
msgstr "Đ’ĐžĐ·ĐœĐ°Ń‡Đ°Ń” яĐș ЎалДĐșĐŸ ĐČŃ…Ń–ĐŽĐœĐ” Đ·ĐŸĐ±Ń€Đ°Đ¶Đ”ĐœĐœŃ Đ·ĐŒŃ–Ń‰ŃƒŃ”Ń‚ŃŒŃŃ ĐŽĐŸĐœĐžĐ·Ńƒ"
#. default: white
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2904
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2920
msgid "Specular Color:"
msgstr "ĐšĐŸĐ»Ń–Ń€ ĐČŃ–ĐŽĐ±ĐžŃ‚Ń‚Ń:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2907
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2923
#: ../share/extensions/interp.inx.h:2
msgid "Exponent:"
msgstr "ЕĐșŃĐżĐŸĐœĐ”ĐœŃ‚Đ°:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2907
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2923
msgid "Exponent for specular term, larger is more \"shiny\"."
msgstr "ĐĄŃ‚Đ”ĐżŃ–ĐœŃŒ ĐČŃ–ĐŽĐ±ĐžŃ‚Ń‚Ń: Đ±Ń–Đ»ŃŒŃˆĐ” Đ·ĐœĐ°Ń‡Đ”ĐœĐœŃ Юає Â«ŃŃĐșраĐČŃ–ŃˆĐ”Â»."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2916
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2932
msgid ""
"Indicates whether the filter primitive should perform a noise or turbulence "
"function."
@@ -15963,27 +15961,27 @@ msgstr ""
"ĐŸĐŸĐ·ĐœĐ°Ń‡Đ°Ń” чо ĐżĐŸĐČĐžĐœĐ”Đœ ĐżŃ€ĐžĐŒŃ–Ń‚ĐžĐČ ĐČĐžĐșĐŸĐœŃƒĐČато Ń„ŃƒĐœĐșцію стĐČĐŸŃ€Đ”ĐœĐœŃ Ń‚ŃƒŃ€Đ±ŃƒĐ»Đ”ĐœŃ‚ĐœĐŸŃŃ‚Ń– Đ°Đ±ĐŸ "
"ŃˆŃƒĐŒŃƒ."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2917
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2933
msgid "Base Frequency:"
msgstr "ĐžĐżĐŸŃ€ĐœĐ° Ń‡Đ°ŃŃ‚ĐŸŃ‚Đ°:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2918
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2934
msgid "Octaves:"
msgstr "ОĐșтаĐČĐž:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2919
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2935
msgid "Seed:"
msgstr "ВопаЮĐșĐŸĐČĐ” Đ·ĐœĐ°Ń‡Đ”ĐœĐœŃ:"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2919
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2935
msgid "The starting number for the pseudo random number generator."
msgstr "ĐŸĐŸŃ‡Đ°Ń‚ĐșĐŸĐČĐ” Ń‡ĐžŃĐ»ĐŸ ĐŽĐ»Ń ĐłĐ”ĐœĐ”Ń€Đ°Ń‚ĐŸŃ€Đ° псДĐČĐŽĐŸĐČОпаЎĐșĐŸĐČох чОсДл."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2931
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2947
msgid "Add filter primitive"
msgstr "Đ”ĐŸĐŽĐ°Ń‚Đž ĐżŃ€ĐžĐŒŃ–Ń‚ĐžĐČ Ń„Ń–Đ»ŃŒŃ‚Ń€Đ°"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2948
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2964
msgid ""
"The <b>feBlend</b> filter primitive provides 4 image blending modes: screen, "
"multiply, darken and lighten."
@@ -15991,7 +15989,7 @@ msgstr ""
"ĐŸŃ€ĐžĐŒŃ–Ń‚ĐžĐČ Ń„Ń–Đ»ŃŒŃ‚Ń€Đ° <b>feBlend</b> ĐœĐ°ĐŽĐ°Ń” ĐŒĐŸĐ¶Đ»ĐžĐČість ĐČĐžĐșĐŸŃ€ĐžŃŃ‚ĐŸĐČуĐČато 4 Ń€Đ”Đ¶ĐžĐŒĐž "
"Đ·ĐŒŃ–ŃˆŃƒĐČĐ°ĐœĐœŃ: ĐżŃ€ĐŸŃĐČічуĐČĐ°ĐœĐœŃ, ĐŒĐœĐŸĐ¶Đ”ĐœĐœŃ, Ń‚Đ”ĐŒĐœŃ–ŃˆĐ°ĐœĐœŃ та сĐČŃ–Ń‚Đ»Ń–ŃˆĐ°ĐœĐœŃ."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2952
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2968
msgid ""
"The <b>feColorMatrix</b> filter primitive applies a matrix transformation to "
"color of each rendered pixel. This allows for effects like turning object to "
@@ -16001,7 +15999,7 @@ msgstr ""
"ĐșĐŸĐ»ŃŒĐŸŃ€Ńƒ ĐŽĐŸ ĐșĐŸĐ¶ĐœĐŸŃ— ĐČŃ–ĐŽĐŸĐ±Ń€Đ°Đ¶Đ”ĐœĐŸŃ— Ń‚ĐŸŃ‡ĐșĐž. ВсД цД ĐČĐșлючає ĐŽĐŸ сДбД пДрДтĐČĐŸŃ€Đ”ĐœĐœŃ "
"ĐŸĐ±'єĐșта ĐŽĐŸ піĐČŃ‚ĐŸĐœŃ–ĐČ ŃŃ–Ń€ĐŸĐłĐŸ, Đ·ĐŒŃ–ĐœŃƒ ĐœĐ°ŃĐžŃ‡Đ”ĐœĐŸŃŃ‚Ń– ĐșĐŸĐ»ŃŒĐŸŃ€Ńƒ і Đ·ĐŒŃ–ĐœŃƒ ĐČŃ–ĐŽŃ‚Ń–ĐœĐșу."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2956
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2972
msgid ""
"The <b>feComponentTransfer</b> filter primitive manipulates the input's "
"color components (red, green, blue, and alpha) according to particular "
@@ -16013,7 +16011,7 @@ msgstr ""
"Đ· ĐŸĐșŃ€Đ”ĐŒĐžĐŒĐž Ń„ŃƒĐœĐșŃ†Ń–ŃĐŒĐž ĐżĐ”Ń€Đ”Ń…ĐŸĐŽŃƒ, Ń€ĐŸĐ±Đ»ŃŃ‡Đž ĐŒĐŸĐ¶Đ»ĐžĐČĐžĐŒ ĐŸĐżĐ”Ń€Đ°Ń†Ń–Ń— ĐœĐ° Đ·Ń€Đ°Đ·ĐŸĐș "
"Ń€Đ”ĐłŃƒĐ»ŃŽĐČĐ°ĐœĐœŃ ясĐșраĐČĐŸŃŃ‚Ń– і ĐșĐŸĐœŃ‚Ń€Đ°ŃŃ‚Ńƒ, Đ±Đ°Đ»Đ°ĐœŃ ĐșĐŸĐ»ŃŒĐŸŃ€Ń–ĐČ Ń‚Đ° ĐżĐŸŃŃ‚Đ”Ń€ĐžĐ·Đ°Ń†Ń–ŃŽ."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2960
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2976
msgid ""
"The <b>feComposite</b> filter primitive composites two images using one of "
"the Porter-Duff blending modes or the arithmetic mode described in SVG "
@@ -16025,7 +16023,7 @@ msgstr ""
"ĐŸĐżĐžŃĐ°ĐœĐŸĐłĐŸ у ŃŃ‚Đ°ĐœĐŽĐ°Ń€Ń‚Ń– SVG. Đ Đ”Đ¶ĐžĐŒĐž Đ·ĐŒŃ–ŃˆŃƒĐČĐ°ĐœĐœŃ ĐŸĐŸŃ€Ń‚Đ”Ń€Đ°-Даффа ĐżĐŸ суті є "
"Đ±ŃƒĐ»Ń–ĐČсьĐșĐžĐŒĐž ĐŸĐżĐ”Ń€Đ°Ń†Ń–ŃĐŒĐž ĐŒŃ–Đ¶ Đ·ĐœĐ°Ń‡Đ”ĐœĐœŃĐŒĐž ĐșĐŸĐ»ŃŒĐŸŃ€Ń–ĐČ ĐČŃ–ĐŽĐżĐŸĐČŃ–ĐŽĐœĐžŃ… Ń‚ĐŸŃ‡ĐŸĐș Đ·ĐŸĐ±Ń€Đ°Đ¶Đ”ĐœŃŒ."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2964
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2980
msgid ""
"The <b>feConvolveMatrix</b> lets you specify a Convolution to be applied on "
"the image. Common effects created using convolution matrices are blur, "
@@ -16040,7 +16038,7 @@ msgstr ""
"за ĐŽĐŸĐżĐŸĐŒĐŸĐłĐŸŃŽ Ń†ŃŒĐŸĐłĐŸ ĐżŃ€ĐžĐŒŃ–Ń‚ĐžĐČу Ń„Ń–Đ»ŃŒŃ‚Ń€Đ°, ĐŸŃĐŸĐ±Đ»ĐžĐČĐžĐč ĐżŃ€ĐžĐŒŃ–Ń‚ĐžĐČ Ń„Ń–Đ»ŃŒŃ‚Ń€Đ° ĐŽĐ»Ń "
"Đ“Đ°ŃƒŃĐŸĐČĐŸĐłĐŸ Ń€ĐŸĐ·ĐŒĐžĐČĐ°ĐœĐœŃ є шĐČĐžĐŽŃˆĐžĐŒ та ĐœĐ”Đ·Đ°Đ»Đ”Đ¶ĐœĐžĐŒ ĐČіЮ Ń€ĐŸĐ·ĐŽŃ–Đ»ŃŒĐœĐŸŃ— Đ·ĐŽĐ°Ń‚ĐœĐŸŃŃ‚Ń–."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2968
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2984
msgid ""
"The <b>feDiffuseLighting</b> and feSpecularLighting filter primitives create "
"\"embossed\" shadings. The input's alpha channel is used to provide depth "
@@ -16052,7 +16050,7 @@ msgstr ""
"ĐČĐžĐșĐŸŃ€ĐžŃŃ‚ĐŸĐČується ĐŽĐ»Ń ĐČіЮтĐČĐŸŃ€Đ”ĐœĐœŃ ĐłĐ»ĐžĐ±ĐžĐœĐž: ĐœĐ”ĐżŃ€ĐŸĐ·ĐŸŃ€Ń–ŃˆŃ– ĐŸĐ±Đ»Đ°ŃŃ‚Ń– ĐœĐ°Đ±Đ»ĐžĐ¶Đ°ŃŽŃ‚ŃŒŃŃ "
"ĐŽĐŸ ĐłĐ»ŃĐŽĐ°Ń‡Đ°, а ĐżŃ€ĐŸĐ·ĐŸŃ€Ń–ŃˆŃ– — ĐČŃ–ĐŽĐŽĐ°Đ»ŃŃŽŃ‚ŃŒŃŃ."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2972
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2988
msgid ""
"The <b>feDisplacementMap</b> filter primitive displaces the pixels in the "
"first input using the second input as a displacement map, that shows from "
@@ -16064,7 +16062,7 @@ msgstr ""
"у яĐșĐŸĐŒŃƒ ĐœĐ°ĐżŃ€ŃĐŒĐșу і ĐœĐ° яĐșу ĐČŃ–ĐŽŃŃ‚Đ°ĐœŃŒ сліЎ Đ·ĐŒŃ–ŃŃ‚ĐžŃ‚Đž Ń‚ĐŸŃ‡Đșу. ĐšĐ»Đ°ŃĐžŃ‡ĐœĐžĐŒĐž "
"проĐșĐ»Đ°ĐŽĐ°ĐŒĐž Ń„Ń–Đ»ŃŒŃ‚Ń€Đ° є ДфДĐșто «ĐČĐžŃ…ĐŸŃ€Â» і «затОсĐșĐ°ĐœĐœŃÂ»."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2976
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2992
msgid ""
"The <b>feFlood</b> filter primitive fills the region with a given color and "
"opacity. It is usually used as an input to other filters to apply color to "
@@ -16074,7 +16072,7 @@ msgstr ""
"ĐœĐ”ĐżŃ€ĐŸĐ·ĐŸŃ€Ń–ŃŃ‚ŃŽ. ЗазĐČочаĐč, ĐčĐŸĐłĐŸ ĐČĐžĐșĐŸŃ€ĐžŃŃ‚ĐŸĐČують яĐș ĐżĐŸŃ‡Đ°Ń‚ĐșĐŸĐČĐžĐč ĐŽĐ»Ń Ń–ĐœŃˆĐžŃ… "
"Ń„Ń–Đ»ŃŒŃ‚Ń€Ń–ĐČ, Đ· ĐŒĐ”Ń‚ĐŸŃŽ ĐœĐ°ĐŽĐ°Ń‚Đž графіці ĐșĐŸĐ»ŃŒĐŸŃ€Ńƒ."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2980
+#: ../src/ui/dialog/filter-effects-dialog.cpp:2996
msgid ""
"The <b>feGaussianBlur</b> filter primitive uniformly blurs its input. It is "
"commonly used together with feOffset to create a drop shadow effect."
@@ -16083,7 +16081,7 @@ msgstr ""
"ĐčĐŸĐłĐŸ Đ·Đ°ŃŃ‚ĐŸŃĐŸĐČĐ°ĐœĐŸ. ЗазĐČочаĐč, ĐČŃ–Đœ ĐČĐžĐșĐŸŃ€ĐžŃŃ‚ĐŸĐČується Ń€Đ°Đ·ĐŸĐŒ Đ· feOffset ĐŽĐ»Ń "
"стĐČĐŸŃ€Đ”ĐœĐœŃ ДфДĐșту ĐČіЮĐșĐžĐŽĐ°ĐœĐœŃ Ń‚Ń–ĐœŃ–."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2984
+#: ../src/ui/dialog/filter-effects-dialog.cpp:3000
msgid ""
"The <b>feImage</b> filter primitive fills the region with an external image "
"or another part of the document."
@@ -16091,7 +16089,7 @@ msgstr ""
"ĐŸŃ€ĐžĐŒŃ–Ń‚ĐžĐČ Ń„Ń–Đ»ŃŒŃ‚Ń€Đ° <b>feImage</b> залОĐČає ĐŸĐ±Đ»Đ°ŃŃ‚ŃŒ Đ·ĐŸĐČĐœŃ–ŃˆĐœŃ–ĐŒ Đ·ĐŸĐ±Ń€Đ°Đ¶Đ”ĐœĐœŃĐŒ Đ°Đ±ĐŸ "
"Ń–ĐœŃˆĐŸŃŽ Ń‡Đ°ŃŃ‚ĐžĐœĐŸŃŽ ĐŽĐŸĐșŃƒĐŒĐ”ĐœŃ‚Đ°."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2988
+#: ../src/ui/dialog/filter-effects-dialog.cpp:3004
msgid ""
"The <b>feMerge</b> filter primitive composites several temporary images "
"inside the filter primitive to a single image. It uses normal alpha "
@@ -16104,7 +16102,7 @@ msgstr ""
"ĐșŃ€Đ°Ń‚ĐœĐ” Đ·Đ°ŃŃ‚ĐŸŃŃƒĐČĐ°ĐœĐœŃ ĐżŃ€ĐžĐŒŃ–Ń‚ĐžĐČіĐČ feBlend у 'Đ·ĐČочаĐčĐœĐŸĐŒŃƒ' Ń€Đ”Đ¶ĐžĐŒŃ– Đ°Đ±ĐŸ ĐșŃ€Đ°Ń‚ĐœĐ” "
"Đ·Đ°ŃŃ‚ĐŸŃŃƒĐČĐ°ĐœĐœŃ ĐżŃ€ĐžĐŒŃ–Ń‚ĐžĐČіĐČ feComposite у 'ĐœĐ°ĐŽ'-Ń€Đ”Đ¶ĐžĐŒŃ–."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2992
+#: ../src/ui/dialog/filter-effects-dialog.cpp:3008
msgid ""
"The <b>feMorphology</b> filter primitive provides erode and dilate effects. "
"For single-color objects erode makes the object thinner and dilate makes it "
@@ -16114,7 +16112,7 @@ msgstr ""
"Đ”Ń€ĐŸĐ·Ń–Ń— та Ń€ĐŸĐ·ŃˆĐžŃ€Đ”ĐœĐœŃ. Đ”Đ»Ń ĐŸĐŽĐœĐŸĐșĐŸĐ»ŃŒĐŸŃ€ĐŸĐČох ĐŸĐ±'єĐșтіĐČ Đ”Ń€ĐŸĐ·Ń–Ń Ń€ĐŸĐ±ĐžŃ‚ŃŒ ĐŸĐ±'єĐșт "
"ĐŒĐ”ĐœŃˆĐžĐŒ, а Ń€ĐŸĐ·ŃˆĐžŃ€Đ”ĐœĐœŃ — Đ±Ń–Đ»ŃŒŃˆĐžĐŒ."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:2996
+#: ../src/ui/dialog/filter-effects-dialog.cpp:3012
msgid ""
"The <b>feOffset</b> filter primitive offsets the image by an user-defined "
"amount. For example, this is useful for drop shadows, where the shadow is in "
@@ -16124,7 +16122,7 @@ msgstr ""
"ĐČŃ–ĐŽŃŃ‚Đ°ĐœŃŒ. ĐŠĐ”, ĐœĐ°ĐżŃ€ĐžĐșлаЎ, ĐșĐŸŃ€ĐžŃĐœĐŸ ĐŽĐ»Ń ĐČŃ–ĐŽĐŸĐ±Ń€Đ°Đ¶Đ”ĐœĐœŃ Ń‚Ń–ĐœĐ”Đč, ĐșĐŸĐ»Đž Ń‚Ń–ĐœŃŒ "
"Ń€ĐŸĐ·Ń‚Đ°ŃˆĐŸĐČĐ°ĐœĐŸ Đ· ĐœĐ”ĐČДлОĐșĐžĐŒ зсуĐČĐŸĐŒ ĐČŃ–ĐŽĐœĐŸŃĐœĐŸ ĐŸĐ±'єĐșта, Ń‰ĐŸ її ĐČіЮĐșоЮає."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:3000
+#: ../src/ui/dialog/filter-effects-dialog.cpp:3016
msgid ""
"The <b>feDiffuseLighting</b> and <b>feSpecularLighting</b> filter primitives "
"create \"embossed\" shadings. The input's alpha channel is used to provide "
@@ -16136,14 +16134,14 @@ msgstr ""
"ĐŒĐ°Ń‚Đ”Ń€Ń–Đ°Đ»Ńƒ, ĐČĐžĐșĐŸŃ€ĐžŃŃ‚ĐŸĐČується ĐŽĐ»Ń ĐČіЮтĐČĐŸŃ€Đ”ĐœĐœŃ ĐłĐ»ĐžĐ±ĐžĐœĐž: ĐœĐ”ĐżŃ€ĐŸĐ·ĐŸŃ€Ń–ŃˆŃ– ĐŸĐ±Đ»Đ°ŃŃ‚Ń– "
"ĐœĐ°Đ±Đ»ĐžĐ¶Đ°ŃŽŃ‚ŃŒŃŃ ĐŽĐŸ ĐłĐ»ŃĐŽĐ°Ń‡Đ°, а ĐżŃ€ĐŸĐ·ĐŸŃ€Ń–ŃˆŃ– — ĐČŃ–ĐŽĐŽĐ°Đ»ŃŃŽŃ‚ŃŒŃŃ."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:3004
+#: ../src/ui/dialog/filter-effects-dialog.cpp:3020
msgid ""
"The <b>feTile</b> filter primitive tiles a region with its input graphic"
msgstr ""
"ĐŸŃ€ĐžĐŒŃ–Ń‚ĐžĐČ Ń„Ń–Đ»ŃŒŃ‚Ń€Đ° <b>feTile</b> Đ·Đ°ĐżĐŸĐČĐœŃŽŃ” ĐŸĐ±Đ»Đ°ŃŃ‚ŃŒ ĐŒĐŸĐ·Đ°Ń—ĐșĐŸŃŽ у Ń„ĐŸŃ€ĐŒŃ– ĐČŃ…Ń–ĐŽĐœĐŸĐłĐŸ "
"ĐłŃ€Đ°Ń„Ń–Ń‡ĐœĐŸĐłĐŸ Đ·ĐŸĐ±Ń€Đ°Đ¶Đ”ĐœĐœŃ"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:3008
+#: ../src/ui/dialog/filter-effects-dialog.cpp:3024
msgid ""
"The <b>feTurbulence</b> filter primitive renders Perlin noise. This kind of "
"noise is useful in simulating several nature phenomena like clouds, fire and "
@@ -16153,11 +16151,11 @@ msgstr ""
"ŃˆŃƒĐŒŃ–ĐČ ĐșĐŸŃ€ĐžŃĐœĐžĐč ĐŽĐ»Ń Ń–ĐŒŃ–Ń‚Đ°Ń†Ń–Ń— ĐŽĐ”ŃĐșох ĐżŃ€ĐžŃ€ĐŸĐŽĐœĐžŃ… яĐČощ ĐœĐ° Đ·Ń€Đ°Đ·ĐŸĐș Ń…ĐŒĐ°Ń€, ĐżĐŸĐ»ŃƒĐŒ'я та "
"ĐŽĐžĐŒŃƒ, та піЮ час стĐČĐŸŃ€Đ”ĐœĐœŃ сĐșĐ»Đ°ĐŽĐœĐžŃ… тДĐșстур ĐœĐ° Đ·Ń€Đ°Đ·ĐŸĐș ĐŒĐ°Ń€ĐŒŃƒŃ€Ńƒ та ĐłŃ€Đ°ĐœŃ–Ń‚Ńƒ."
-#: ../src/ui/dialog/filter-effects-dialog.cpp:3027
+#: ../src/ui/dialog/filter-effects-dialog.cpp:3043
msgid "Duplicate filter primitive"
msgstr "Đ”ŃƒĐ±Đ»ŃŽĐČато ĐżŃ€ĐžĐŒŃ–Ń‚ĐžĐČ Ń„Ń–Đ»ŃŒŃ‚Ń€Đ°"
-#: ../src/ui/dialog/filter-effects-dialog.cpp:3080
+#: ../src/ui/dialog/filter-effects-dialog.cpp:3096
msgid "Set filter primitive attribute"
msgstr "Đ’ŃŃ‚Đ°ĐœĐŸĐČото Đ°Ń‚Ń€ĐžĐ±ŃƒŃ‚ ĐżŃ€ĐžĐŒŃ–Ń‚ĐžĐČа Ń„Ń–Đ»ŃŒŃ‚Ń€Đ°"
@@ -16343,7 +16341,7 @@ msgstr "Хпіралі"
msgid "Search spirals"
msgstr "КуĐșато спіралі"
-#: ../src/ui/dialog/find.cpp:103 ../src/widgets/toolbox.cpp:1737
+#: ../src/ui/dialog/find.cpp:103 ../src/widgets/toolbox.cpp:1733
msgid "Paths"
msgstr "ĐšĐŸĐœŃ‚ŃƒŃ€Đž"
@@ -16471,7 +16469,7 @@ msgstr "Đ’ĐžĐ±Đ”Ń€Ń–Ń‚ŃŒ топ ĐŸĐ±'єĐșта"
msgid "Select a property"
msgstr "Đ’ĐžĐ±Đ”Ń€Ń–Ń‚ŃŒ ĐČластОĐČість"
-#: ../src/ui/dialog/font-substitution.cpp:87
+#: ../src/ui/dialog/font-substitution.cpp:79
msgid ""
"\n"
"Some fonts are not available and have been substituted."
@@ -16479,19 +16477,19 @@ msgstr ""
"\n"
"Đ”Đ”ŃĐșох шрофтіĐČ ĐœĐ” Đ·ĐœĐ°ĐčĐŽĐ”ĐœĐŸ, Ń‚ĐŸĐŒŃƒ ці шрофто Đ±ŃƒĐ»ĐŸ Đ·Đ°ĐŒŃ–ĐœĐ”ĐœĐŸ."
-#: ../src/ui/dialog/font-substitution.cpp:90
+#: ../src/ui/dialog/font-substitution.cpp:82
msgid "Font substitution"
msgstr "Đ—Đ°ĐŒŃ–ĐœĐ° шрофтіĐČ"
-#: ../src/ui/dialog/font-substitution.cpp:109
+#: ../src/ui/dialog/font-substitution.cpp:101
msgid "Select all the affected items"
msgstr "ĐŸĐŸĐ·ĐœĐ°Ń‡ĐžŃ‚Đž ĐČсі Đ·Đ°ĐŽŃ–ŃĐœŃ– Đ”Đ»Đ”ĐŒĐ”ĐœŃ‚Đž"
-#: ../src/ui/dialog/font-substitution.cpp:114
+#: ../src/ui/dialog/font-substitution.cpp:106
msgid "Don't show this warning again"
msgstr "Đ‘Ń–Đ»ŃŒŃˆĐ” ĐœĐ” ĐżĐŸĐșазуĐČато цД ĐżĐŸĐżĐ”Ń€Đ”ĐŽĐ¶Đ”ĐœĐœŃ"
-#: ../src/ui/dialog/font-substitution.cpp:255
+#: ../src/ui/dialog/font-substitution.cpp:245
msgid "Font '%1' substituted with '%2'"
msgstr "йрофт «%1» Đ·Đ°ĐŒŃ–ĐœĐ”ĐœĐŸ ŃˆŃ€ĐžŃ„Ń‚ĐŸĐŒ «%2»"
@@ -17216,7 +17214,7 @@ msgstr "Đ”Ń–Đ°ĐżĐ°Đ·ĐŸĐœ: "
msgid "Append"
msgstr "Đ”ĐŸĐŽĐ°Ń‚Đž"
-#: ../src/ui/dialog/glyphs.cpp:618
+#: ../src/ui/dialog/glyphs.cpp:619
msgid "Append text"
msgstr "Đ”ĐŸĐŽĐ°Ń‚Đž тДĐșст"
@@ -17224,76 +17222,78 @@ msgstr "Đ”ĐŸĐŽĐ°Ń‚Đž тДĐșст"
msgid "Arrange in a grid"
msgstr "Đ ĐŸĐ·Ń‚Đ°ŃˆŃƒĐČĐ°ĐœĐœŃ ĐœĐ° сітці"
-#: ../src/ui/dialog/grid-arrange-tab.cpp:578
+#: ../src/ui/dialog/grid-arrange-tab.cpp:577
#: ../src/ui/dialog/object-attributes.cpp:66
#: ../src/ui/dialog/object-attributes.cpp:75
-#: ../src/widgets/desktop-widget.cpp:666 ../src/widgets/node-toolbar.cpp:581
+#: ../src/ui/widget/page-sizer.cpp:247 ../src/widgets/desktop-widget.cpp:666
+#: ../src/widgets/node-toolbar.cpp:581
msgid "X:"
msgstr "X:"
-#: ../src/ui/dialog/grid-arrange-tab.cpp:578
+#: ../src/ui/dialog/grid-arrange-tab.cpp:577
msgid "Horizontal spacing between columns."
msgstr "Đ“ĐŸŃ€ĐžĐ·ĐŸĐœŃ‚Đ°Đ»ŃŒĐœĐžĐč Ń–ĐœŃ‚Đ”Ń€ĐČал ĐŒŃ–Đ¶ ŃŃ‚ĐŸĐČпчоĐșĐ°ĐŒĐž."
-#: ../src/ui/dialog/grid-arrange-tab.cpp:579
+#: ../src/ui/dialog/grid-arrange-tab.cpp:578
#: ../src/ui/dialog/object-attributes.cpp:67
#: ../src/ui/dialog/object-attributes.cpp:76
-#: ../src/widgets/desktop-widget.cpp:676 ../src/widgets/node-toolbar.cpp:599
+#: ../src/ui/widget/page-sizer.cpp:248 ../src/widgets/desktop-widget.cpp:676
+#: ../src/widgets/node-toolbar.cpp:599
msgid "Y:"
msgstr "Y:"
-#: ../src/ui/dialog/grid-arrange-tab.cpp:579
+#: ../src/ui/dialog/grid-arrange-tab.cpp:578
msgid "Vertical spacing between rows."
msgstr "ВДртОĐșĐ°Đ»ŃŒĐœĐžĐč ĐżŃ€ĐŸĐŒŃ–Đ¶ĐŸĐș ĐŒŃ–Đ¶ ряЮĐșĐ°ĐŒĐž."
-#: ../src/ui/dialog/grid-arrange-tab.cpp:626
+#: ../src/ui/dialog/grid-arrange-tab.cpp:624
msgid "_Rows:"
msgstr "_РяЮĐșіĐČ:"
-#: ../src/ui/dialog/grid-arrange-tab.cpp:635
+#: ../src/ui/dialog/grid-arrange-tab.cpp:633
msgid "Number of rows"
msgstr "ĐšŃ–Đ»ŃŒĐșість ряЮĐșіĐČ"
-#: ../src/ui/dialog/grid-arrange-tab.cpp:639
+#: ../src/ui/dialog/grid-arrange-tab.cpp:637
msgid "Equal _height"
msgstr "ĐžĐŽĐœĐ°ĐșĐŸĐČа _ĐČĐžŃĐŸŃ‚Đ°"
-#: ../src/ui/dialog/grid-arrange-tab.cpp:650
+#: ../src/ui/dialog/grid-arrange-tab.cpp:648
msgid "If not set, each row has the height of the tallest object in it"
msgstr ""
"ĐŻĐșŃ‰ĐŸ ĐœĐ” ĐČŃ–ĐŽĐŒŃ–Ń‡Đ”ĐœĐŸ, ĐČĐžŃĐŸŃ‚Đ° ĐșĐŸĐ¶ĐœĐŸĐłĐŸ ряЮĐșа ĐŽĐŸŃ€Ń–ĐČĐœŃŽŃ” ĐČĐžŃĐŸŃ‚Ń– ĐœĐ°ĐčĐČĐžŃ‰ĐŸĐłĐŸ ĐŸĐ±'єĐșта ĐČ "
"ĐœŃŒĐŸĐŒŃƒ"
#. #### Number of columns ####
-#: ../src/ui/dialog/grid-arrange-tab.cpp:666
+#: ../src/ui/dialog/grid-arrange-tab.cpp:664
msgid "_Columns:"
msgstr "Ст_ĐŸĐČпчоĐșіĐČ:"
-#: ../src/ui/dialog/grid-arrange-tab.cpp:675
+#: ../src/ui/dialog/grid-arrange-tab.cpp:673
msgid "Number of columns"
msgstr "ĐšŃ–Đ»ŃŒĐșість ŃŃ‚ĐŸĐČпчоĐșіĐČ"
-#: ../src/ui/dialog/grid-arrange-tab.cpp:679
+#: ../src/ui/dialog/grid-arrange-tab.cpp:677
msgid "Equal _width"
msgstr "О_ĐŽĐœĐ°ĐșĐŸĐČа ŃˆĐžŃ€ĐžĐœĐ°"
-#: ../src/ui/dialog/grid-arrange-tab.cpp:689
+#: ../src/ui/dialog/grid-arrange-tab.cpp:687
msgid "If not set, each column has the width of the widest object in it"
msgstr ""
"ĐŻĐșŃ‰ĐŸ ĐœĐ” ĐČŃ–ĐŽĐŒŃ–Ń‡Đ”ĐœĐŸ, ŃˆĐžŃ€ĐžĐœĐ° ĐșĐŸĐ¶ĐœĐŸĐłĐŸ ŃŃ‚ĐŸĐČпчоĐșа ĐŽĐŸŃ€Ń–ĐČĐœŃŽŃ” ŃˆĐžŃ€ĐžĐœŃ– ĐœĐ°ĐčŃˆĐžŃ€ŃˆĐŸĐłĐŸ "
"ĐŸĐ±'єĐșта ĐČ ĐœŃŒĐŸĐŒŃƒ"
#. Anchor selection widget
-#: ../src/ui/dialog/grid-arrange-tab.cpp:700
+#: ../src/ui/dialog/grid-arrange-tab.cpp:698
msgid "Alignment:"
msgstr "ВоріĐČĐœŃŽĐČĐ°ĐœĐœŃ:"
#. #### Radio buttons to control spacing manually or to fit selection bbox ####
-#: ../src/ui/dialog/grid-arrange-tab.cpp:709
+#: ../src/ui/dialog/grid-arrange-tab.cpp:707
msgid "_Fit into selection box"
msgstr "З_бДрДгтО ŃˆĐžŃ€ĐžĐœŃƒ та ĐČĐžŃĐŸŃ‚Ńƒ ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐœŃ"
-#: ../src/ui/dialog/grid-arrange-tab.cpp:716
+#: ../src/ui/dialog/grid-arrange-tab.cpp:714
msgid "_Set spacing:"
msgstr "Вс_Ń‚Đ°ĐœĐŸĐČото Ń–ĐœŃ‚Đ”Ń€ĐČал:"
@@ -17345,25 +17345,25 @@ msgstr "ІЮ. ĐœĐ°ĐżŃ€ŃĐŒĐœĐŸŃ—: %s"
msgid "Current: %s"
msgstr "ĐŸĐŸŃ‚ĐŸŃ‡ĐœĐžĐč: %s"
-#: ../src/ui/dialog/icon-preview.cpp:159
+#: ../src/ui/dialog/icon-preview.cpp:155
#, c-format
msgid "%d x %d"
msgstr "%d x %d"
-#: ../src/ui/dialog/icon-preview.cpp:171
+#: ../src/ui/dialog/icon-preview.cpp:167
msgid "Magnified:"
msgstr "Đ—Đ±Ń–Đ»ŃŒŃˆĐ”ĐœĐ°:"
-#: ../src/ui/dialog/icon-preview.cpp:240
+#: ../src/ui/dialog/icon-preview.cpp:236
msgid "Actual Size:"
msgstr "ЀаĐșŃ‚ĐžŃ‡ĐœŃ– Ń€ĐŸĐ·ĐŒŃ–Ń€Đž:"
-#: ../src/ui/dialog/icon-preview.cpp:245
+#: ../src/ui/dialog/icon-preview.cpp:241
msgctxt "Icon preview window"
msgid "Sele_ction"
msgstr "ĐŸĐŸĐ·ĐœĐ°_Ń‡Đ”ĐœĐœŃ"
-#: ../src/ui/dialog/icon-preview.cpp:247
+#: ../src/ui/dialog/icon-preview.cpp:243
msgid "Selection only or whole document"
msgstr "Đ›ĐžŃˆĐ” ĐČĐžĐ±Ń€Đ°ĐœĐ” Đ°Đ±ĐŸ ĐČĐ”ŃŃŒ ĐŽĐŸĐșŃƒĐŒĐ”ĐœŃ‚"
@@ -17718,7 +17718,7 @@ msgid "Zoom"
msgstr "ĐœĐ°ŃŃˆŃ‚Đ°Đ±"
#. Measure
-#: ../src/ui/dialog/inkscape-preferences.cpp:390 ../src/verbs.cpp:2761
+#: ../src/ui/dialog/inkscape-preferences.cpp:390 ../src/verbs.cpp:2730
msgctxt "ContextVerb"
msgid "Measure"
msgstr "Міра"
@@ -17783,7 +17783,7 @@ msgstr ""
"Đ·ĐœŃ–ĐŒĐ°Ń”Ń‚ŃŒŃŃ ĐżĐŸĐżĐ”Ń€Đ”ĐŽĐœŃ” ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐœŃ)"
#. Text
-#: ../src/ui/dialog/inkscape-preferences.cpp:448 ../src/verbs.cpp:2753
+#: ../src/ui/dialog/inkscape-preferences.cpp:448 ../src/verbs.cpp:2722
msgctxt "ContextVerb"
msgid "Text"
msgstr "йДĐșст"
@@ -19922,7 +19922,7 @@ msgid "Rendering"
msgstr "ĐžĐ±Ń€ĐŸĐ±Đșа"
#. Note: /options/bitmapoversample removed with Cairo renderer
-#: ../src/ui/dialog/inkscape-preferences.cpp:1434 ../src/verbs.cpp:157
+#: ../src/ui/dialog/inkscape-preferences.cpp:1434 ../src/verbs.cpp:156
#: ../src/widgets/calligraphy-toolbar.cpp:626
msgid "Edit"
msgstr "Đ—ĐŒŃ–ĐœĐžŃ‚Đž"
@@ -19941,7 +19941,7 @@ msgid "_Bitmap editor:"
msgstr "_Đ Đ°ŃŃ‚Ń€ĐŸĐČĐžĐč рДЎаĐșŃ‚ĐŸŃ€:"
#: ../src/ui/dialog/inkscape-preferences.cpp:1441
-#: ../share/extensions/guillotine.inx.h:5 ../share/extensions/plotter.inx.h:57
+#: ../share/extensions/guillotine.inx.h:5 ../share/extensions/plotter.inx.h:67
#: ../share/extensions/print_win32_vector.inx.h:2
msgid "Export"
msgstr "ЕĐșŃĐżĐŸŃ€Ń‚"
@@ -20043,7 +20043,7 @@ msgid "Shortcut"
msgstr "ĐĄĐșĐŸŃ€ĐŸŃ‡Đ”ĐœĐœŃ"
#: ../src/ui/dialog/inkscape-preferences.cpp:1513
-#: ../src/ui/widget/page-sizer.cpp:260
+#: ../src/ui/widget/page-sizer.cpp:285
msgid "Description"
msgstr "Опос"
@@ -20051,7 +20051,7 @@ msgstr "Опос"
#: ../src/ui/dialog/pixelartdialog.cpp:296
#: ../src/ui/dialog/svg-fonts-dialog.cpp:699
#: ../src/ui/dialog/tracedialog.cpp:813
-#: ../src/ui/widget/preferences-widget.cpp:749
+#: ../src/ui/widget/preferences-widget.cpp:745
msgid "Reset"
msgstr "ĐĄĐșĐžĐœŃƒŃ‚Đž"
@@ -20378,8 +20378,8 @@ msgstr "ĐŸĐ”Ń€Đ”ĐčĐŒĐ”ĐœŃƒĐČĐ°ĐœĐœŃ шару"
#. TODO: find an unused layer number, forming name from _("Layer ") + "%d"
#: ../src/ui/dialog/layer-properties.cpp:354
-#: ../src/ui/dialog/layer-properties.cpp:410 ../src/verbs.cpp:195
-#: ../src/verbs.cpp:2368
+#: ../src/ui/dialog/layer-properties.cpp:410 ../src/verbs.cpp:194
+#: ../src/verbs.cpp:2337
msgid "Layer"
msgstr "йар"
@@ -20413,8 +20413,8 @@ msgid "Move to Layer"
msgstr "ĐŸĐ”Ń€Đ”ŃŃƒĐœŃƒŃ‚Đž ĐŽĐŸ шару"
#: ../src/ui/dialog/layer-properties.cpp:411
-#: ../src/ui/dialog/lpe-powerstroke-properties.cpp:120
-#: ../src/ui/dialog/transformation.cpp:112
+#: ../src/ui/dialog/lpe-powerstroke-properties.cpp:116
+#: ../src/ui/dialog/transformation.cpp:108
msgid "_Move"
msgstr "_ĐŸĐ”Ń€Đ”ĐŒŃ–Ń‰Đ”ĐœĐœŃ"
@@ -20435,12 +20435,12 @@ msgid "Unlock layer"
msgstr "Đ ĐŸĐ·Đ±Đ»ĐŸĐșуĐČато шар"
#: ../src/ui/dialog/layers.cpp:624 ../src/ui/dialog/objects.cpp:843
-#: ../src/verbs.cpp:1438
+#: ../src/verbs.cpp:1407
msgid "Toggle layer solo"
msgstr "ĐŁĐČŃ–ĐŒĐșĐœŃƒŃ‚Đž Đ°Đ±ĐŸ ĐČĐžĐŒĐșĐœŃƒŃ‚Đž ŃĐŸĐ»ĐŸ шару"
#: ../src/ui/dialog/layers.cpp:627 ../src/ui/dialog/objects.cpp:846
-#: ../src/verbs.cpp:1462
+#: ../src/verbs.cpp:1431
msgid "Lock other layers"
msgstr "Đ—Đ°Đ±Đ»ĐŸĐșуĐČато Ń–ĐœŃˆŃ– шаро"
@@ -20547,43 +20547,43 @@ msgstr "ЗаЮіято ДфДĐșт ĐșĐŸĐœŃ‚ŃƒŃ€Ńƒ"
msgid "Deactivate path effect"
msgstr "Đ’ĐžĐŒĐșĐœŃƒŃ‚Đž ДфДĐșт ĐșĐŸĐœŃ‚ŃƒŃ€Ńƒ"
-#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:57
+#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:52
msgid "Radius (pixels):"
msgstr "РаЮіус (у ĐżĐș):"
-#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:69
+#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:64
msgid "Chamfer subdivisions:"
msgstr "ĐŸŃ–ĐŽĐ”Đ»Đ”ĐŒĐ”ĐœŃ‚Đž фасĐșĐž:"
-#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:144
+#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:135
msgid "Modify Fillet-Chamfer"
msgstr "Đ—ĐŒŃ–ĐœĐžŃ‚Đž ĐșŃ€ĐŸĐŒĐșу/фасĐșу"
-#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:145
+#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:136
msgid "_Modify"
msgstr "З_ĐŒŃ–ĐœĐžŃ‚Đž"
-#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:210
+#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:200
msgid "Radius"
msgstr "РаЮіус"
-#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:212
+#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:202
msgid "Radius approximated"
msgstr "ĐŸŃ€ĐžĐ±Đ»ĐžĐ·ĐœĐžĐč раЮіус"
-#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:215
+#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:205
msgid "Knot distance"
msgstr "Đ’Ń–ĐŽŃŃ‚Đ°ĐœŃŒ ĐČіЮ ĐČузла"
-#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:222
+#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:212
msgid "Position (%):"
msgstr "Đ ĐŸĐ·Ń‚Đ°ŃˆŃƒĐČĐ°ĐœĐœŃ (%):"
-#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:225
-msgid "%1 (%2):"
-msgstr "%1 (%2):"
+#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:215
+msgid "%1:"
+msgstr "%1:"
-#: ../src/ui/dialog/lpe-powerstroke-properties.cpp:119
+#: ../src/ui/dialog/lpe-powerstroke-properties.cpp:115
msgid "Modify Node Position"
msgstr "Đ—ĐŒŃ–ĐœĐžŃ‚Đž ĐżĐŸĐ·ĐžŃ†Ń–ŃŽ ĐČузла"
@@ -20745,8 +20745,8 @@ msgid "Check to make the object insensitive (not selectable by mouse)"
msgstr "Đ—Ń€ĐŸĐ±ĐžŃ‚Đž цДĐč ĐŸĐ±'єĐșт ĐœĐ”Ń‡ŃƒŃ‚Đ»ĐžĐČĐžĐŒ ĐŽĐŸ ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐœŃ"
#. Button for setting the object's id, label, title and description.
-#: ../src/ui/dialog/object-properties.cpp:325 ../src/verbs.cpp:2711
-#: ../src/verbs.cpp:2717
+#: ../src/ui/dialog/object-properties.cpp:325 ../src/verbs.cpp:2680
+#: ../src/verbs.cpp:2686
msgid "_Set"
msgstr "_Đ’ŃŃ‚Đ°ĐœĐŸĐČото"
@@ -20828,8 +20828,8 @@ msgstr "Групу ĐœĐ° шар"
msgid "Moved objects"
msgstr "ĐŸĐ”Ń€Đ”ŃŃƒĐœŃƒŃ‚Ń– ĐŸĐ±â€™Ń”Đșто"
-#: ../src/ui/dialog/objects.cpp:1352 ../src/ui/dialog/tags.cpp:856
-#: ../src/ui/dialog/tags.cpp:863
+#: ../src/ui/dialog/objects.cpp:1352 ../src/ui/dialog/tags.cpp:857
+#: ../src/ui/dialog/tags.cpp:864
msgid "Rename object"
msgstr "ĐŸĐ”Ń€Đ”ĐčĐŒĐ”ĐœŃƒĐČато ĐŸĐ±'єĐșт"
@@ -21116,11 +21116,11 @@ msgstr "Кут X/Y:"
msgid "Rotate objects"
msgstr "ĐžĐ±Đ”Ń€Ń‚Đ°ĐœĐœŃ ĐŸĐ±â€™Ń”ĐșтіĐČ"
-#: ../src/ui/dialog/polar-arrange-tab.cpp:338
+#: ../src/ui/dialog/polar-arrange-tab.cpp:336
msgid "Couldn't find an ellipse in selection"
msgstr "ĐĐ” ĐČĐŽĐ°Đ»ĐŸŃŃ Đ·ĐœĐ°Đčто Дліпс у ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐŸĐŒŃƒ"
-#: ../src/ui/dialog/polar-arrange-tab.cpp:403
+#: ../src/ui/dialog/polar-arrange-tab.cpp:399
msgid "Arrange on ellipse"
msgstr "ĐšĐŸĐŒĐżĐŸĐœŃƒĐČато за Đ”Đ»Ń–ĐżŃĐŸĐŒ"
@@ -21384,7 +21384,7 @@ msgstr "ĐŸĐ”Ń€Đ”ĐłĐ»ŃĐŽ тДĐșсту:"
#: ../src/ui/dialog/swatches.cpp:202 ../src/ui/tools/gradient-tool.cpp:360
#: ../src/ui/tools/gradient-tool.cpp:458
-#: ../src/widgets/gradient-vector.cpp:794
+#: ../src/widgets/gradient-vector.cpp:795
msgid "Add gradient stop"
msgstr "Đ”ĐŸĐŽĐ°ĐČĐ°ĐœĐœŃ ĐŸĐżĐŸŃ€ĐœĐŸŃ— Ń‚ĐŸŃ‡ĐșĐž ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚Đ°"
@@ -21412,69 +21412,69 @@ msgid "Palettes directory (%s) is unavailable."
msgstr "ĐšĐ°Ń‚Đ°Đ»ĐŸĐł Đ· ĐżĐ°Đ»Ń–Ń‚Ń€Đ°ĐŒĐž (%s) ĐœĐ”ĐŽĐŸŃŃ‚ŃƒĐżĐœĐžĐč."
#. ******************* Symbol Sets ************************
-#: ../src/ui/dialog/symbols.cpp:139
+#: ../src/ui/dialog/symbols.cpp:135
msgid "Symbol set: "
msgstr "ĐĐ°Đ±Ń–Ń€ ŃĐžĐŒĐČĐŸĐ»Ń–ĐČ: "
#. Fill in later
-#: ../src/ui/dialog/symbols.cpp:148 ../src/ui/dialog/symbols.cpp:149
+#: ../src/ui/dialog/symbols.cpp:144 ../src/ui/dialog/symbols.cpp:145
msgid "Current Document"
msgstr "ĐŸĐŸŃ‚ĐŸŃ‡ĐœĐžĐč ĐŽĐŸĐșŃƒĐŒĐ”ĐœŃ‚"
-#: ../src/ui/dialog/symbols.cpp:216
+#: ../src/ui/dialog/symbols.cpp:212
msgid "Add Symbol from the current document."
msgstr "Đ”ĐŸĐŽĐ°Ń‚Đž ŃĐžĐŒĐČĐŸĐ» ĐŽĐŸ ĐżĐŸŃ‚ĐŸŃ‡ĐœĐŸĐłĐŸ ĐŽĐŸĐșŃƒĐŒĐ”ĐœŃ‚Đ°."
-#: ../src/ui/dialog/symbols.cpp:225
+#: ../src/ui/dialog/symbols.cpp:221
msgid "Remove Symbol from the current document."
msgstr "Đ’ĐžĐ»ŃƒŃ‡ĐžŃ‚Đž ŃĐžĐŒĐČĐŸĐ» Đ· ĐżĐŸŃ‚ĐŸŃ‡ĐœĐŸĐłĐŸ ĐŽĐŸĐșŃƒĐŒĐ”ĐœŃ‚Đ°."
-#: ../src/ui/dialog/symbols.cpp:239
+#: ../src/ui/dialog/symbols.cpp:235
msgid "Display more icons in row."
msgstr "ĐŸĐŸĐșазуĐČато Đ±Ń–Đ»ŃŒŃˆĐ” піĐșŃ‚ĐŸĐłŃ€Đ°ĐŒ у ряЮĐșу."
-#: ../src/ui/dialog/symbols.cpp:248
+#: ../src/ui/dialog/symbols.cpp:244
msgid "Display fewer icons in row."
msgstr "ĐŸĐŸĐșазуĐČато ĐŒĐ”ĐœŃˆĐ” піĐșŃ‚ĐŸĐłŃ€Đ°ĐŒ у ряЮĐșу."
-#: ../src/ui/dialog/symbols.cpp:258
+#: ../src/ui/dialog/symbols.cpp:254
msgid "Toggle 'fit' symbols in icon space."
msgstr "Đ’ĐŒĐžĐșато/Đ’ĐžĐŒĐžĐșато ŃĐžĐŒĐČĐŸĐ»Đž ĐżŃ–ĐŽĐ±ĐžŃ€Đ°ĐœĐœŃ Ń€ĐŸĐ·ĐŒŃ–Ń€Ń–ĐČ Ńƒ ĐżŃ€ĐŸŃŃ‚ĐŸŃ€Ń– піĐșŃ‚ĐŸĐłŃ€Đ°ĐŒ."
-#: ../src/ui/dialog/symbols.cpp:270
+#: ../src/ui/dialog/symbols.cpp:266
msgid "Make symbols smaller by zooming out."
msgstr "Đ ĐŸĐ±ĐžŃ‚Đž ĐżĐŸĐ·ĐœĐ°Ń‡ĐșĐž ĐŒĐ”ĐœŃˆĐžĐŒĐž Đ·ĐŒĐ”ĐœŃˆĐ”ĐœĐœŃĐŒ ĐŒĐ°ŃŃˆŃ‚Đ°Đ±Ńƒ."
-#: ../src/ui/dialog/symbols.cpp:280
+#: ../src/ui/dialog/symbols.cpp:276
msgid "Make symbols bigger by zooming in."
msgstr "Đ ĐŸĐ±ĐžŃ‚Đž ĐżĐŸĐ·ĐœĐ°Ń‡ĐșĐž Đ±Ń–Đ»ŃŒŃˆĐžĐŒĐž Đ·Đ±Ń–Đ»ŃŒŃˆĐ”ĐœĐœŃĐŒ ĐŒĐ°ŃŃˆŃ‚Đ°Đ±Ńƒ."
-#: ../src/ui/dialog/symbols.cpp:641
+#: ../src/ui/dialog/symbols.cpp:637
msgid "Unnamed Symbols"
msgstr "ĐĄĐžĐŒĐČĐŸĐ»Đž бДз ĐœĐ°Đ·ĐČ"
-#: ../src/ui/dialog/tags.cpp:274 ../src/ui/dialog/tags.cpp:572
-#: ../src/ui/dialog/tags.cpp:686
+#: ../src/ui/dialog/tags.cpp:274 ../src/ui/dialog/tags.cpp:573
+#: ../src/ui/dialog/tags.cpp:687
msgid "Remove from selection set"
msgstr "Đ’ĐžĐ»ŃƒŃ‡ĐžŃ‚Đž Ń–Đ· ĐœĐ°Đ±ĐŸŃ€Ńƒ ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐŸĐłĐŸ"
-#: ../src/ui/dialog/tags.cpp:430
+#: ../src/ui/dialog/tags.cpp:431
msgid "Items"
msgstr "Đ•Đ»Đ”ĐŒĐ”ĐœŃ‚Đž"
-#: ../src/ui/dialog/tags.cpp:669
+#: ../src/ui/dialog/tags.cpp:670
msgid "Add selection to set"
msgstr "Đ”ĐŸĐŽĐ°Ń‚Đž ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐ” ĐŽĐŸ ĐœĐ°Đ±ĐŸŃ€Ńƒ"
-#: ../src/ui/dialog/tags.cpp:827
+#: ../src/ui/dialog/tags.cpp:828
msgid "Moved sets"
msgstr "ĐŸĐ”Ń€Đ”ŃŃƒĐœŃƒŃ‚Ń– ĐœĐ°Đ±ĐŸŃ€Đž"
-#: ../src/ui/dialog/tags.cpp:997
+#: ../src/ui/dialog/tags.cpp:998
msgid "Add a new selection set"
msgstr "Đ”ĐŸĐŽĐ°Ń‚Đž ĐœĐŸĐČĐžĐč ĐœĐ°Đ±Ń–Ń€ ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐŸĐłĐŸ"
-#: ../src/ui/dialog/tags.cpp:1006
+#: ../src/ui/dialog/tags.cpp:1007
msgid "Remove Item/Set"
msgstr "Đ’ĐžĐ»ŃƒŃ‡ĐžŃ‚Đž Đ”Đ»Đ”ĐŒĐ”ĐœŃ‚ Đ°Đ±ĐŸ ĐœĐ°Đ±Ń–Ń€"
@@ -21511,31 +21511,31 @@ msgid "AaBbCcIiPpQq12369$€±?.;/()"
msgstr "АаБбВĐČĐ‡Ń—Đ„Ń”ÒÒ‘IiPpQq12369$€±?.;/()"
#. Align buttons
-#: ../src/ui/dialog/text-edit.cpp:96 ../src/widgets/text-toolbar.cpp:1333
-#: ../src/widgets/text-toolbar.cpp:1334
+#: ../src/ui/dialog/text-edit.cpp:96 ../src/widgets/text-toolbar.cpp:1339
+#: ../src/widgets/text-toolbar.cpp:1340
msgid "Align left"
msgstr "ВоріĐČĐœŃŽĐČĐ°ĐœĐœŃ ліĐČĐŸŃ€ŃƒŃ‡"
-#: ../src/ui/dialog/text-edit.cpp:97 ../src/widgets/text-toolbar.cpp:1341
-#: ../src/widgets/text-toolbar.cpp:1342
+#: ../src/ui/dialog/text-edit.cpp:97 ../src/widgets/text-toolbar.cpp:1347
+#: ../src/widgets/text-toolbar.cpp:1348
msgid "Align center"
msgstr "ĐŸĐŸŃĐ”Ń€Đ”ĐŽĐžĐœŃ–"
-#: ../src/ui/dialog/text-edit.cpp:98 ../src/widgets/text-toolbar.cpp:1349
-#: ../src/widgets/text-toolbar.cpp:1350
+#: ../src/ui/dialog/text-edit.cpp:98 ../src/widgets/text-toolbar.cpp:1355
+#: ../src/widgets/text-toolbar.cpp:1356
msgid "Align right"
msgstr "ВоріĐČĐœŃŽĐČĐ°ĐœĐœŃ праĐČĐŸŃ€ŃƒŃ‡"
-#: ../src/ui/dialog/text-edit.cpp:99 ../src/widgets/text-toolbar.cpp:1358
+#: ../src/ui/dialog/text-edit.cpp:99 ../src/widgets/text-toolbar.cpp:1364
msgid "Justify (only flowed text)"
msgstr "ВоріĐČĐœŃŃ‚Đž раз ŃˆĐžŃ€ĐžĐœĐŸŃŽ (лОшД ĐœĐ”ĐșĐŸĐœŃ‚ŃƒŃ€ĐœĐžĐč тДĐșст)"
#. Direction buttons
-#: ../src/ui/dialog/text-edit.cpp:108 ../src/widgets/text-toolbar.cpp:1393
+#: ../src/ui/dialog/text-edit.cpp:108 ../src/widgets/text-toolbar.cpp:1399
msgid "Horizontal text"
msgstr "Đ“ĐŸŃ€ĐžĐ·ĐŸĐœŃ‚Đ°Đ»ŃŒĐœĐžĐč тДĐșст"
-#: ../src/ui/dialog/text-edit.cpp:109 ../src/widgets/text-toolbar.cpp:1400
+#: ../src/ui/dialog/text-edit.cpp:109 ../src/widgets/text-toolbar.cpp:1406
msgid "Vertical text"
msgstr "ВДртОĐșĐ°Đ»ŃŒĐœĐžĐč тДĐșст"
@@ -21547,7 +21547,7 @@ msgstr "Đ†ĐœŃ‚Đ”Ń€ĐČал ĐŒŃ–Đ¶ ряЮĐșĐ°ĐŒĐž (у ĐČŃ–ĐŽŃĐŸŃ‚Đșах Ń‰ĐŸĐŽĐŸ Ń
msgid "Text path offset"
msgstr "ВіЮступ тДĐșсту ĐČіЮ ĐșĐŸĐœŃ‚ŃƒŃ€Ńƒ"
-#: ../src/ui/dialog/text-edit.cpp:586 ../src/ui/dialog/text-edit.cpp:660
+#: ../src/ui/dialog/text-edit.cpp:584 ../src/ui/dialog/text-edit.cpp:658
#: ../src/ui/tools/text-tool.cpp:1446
msgid "Set text style"
msgstr "Đ’ŃŃ‚Đ°ĐœĐŸĐČото ŃŃ‚ĐžĐ»ŃŒ тДĐșсту"
@@ -21821,42 +21821,42 @@ msgstr "ĐŸĐŸĐżĐ”Ń€Đ”ĐŽĐœŃ–Đč ĐżĐ”Ń€Đ”ĐłĐ»ŃĐŽ бДз фаĐșŃ‚ĐžŃ‡ĐœĐŸŃ— ĐČĐ”Đșт
msgid "Preview"
msgstr "ĐŸĐ”Ń€Đ”ĐłĐ»ŃĐŽ"
-#: ../src/ui/dialog/transformation.cpp:74
-#: ../src/ui/dialog/transformation.cpp:84
+#: ../src/ui/dialog/transformation.cpp:70
+#: ../src/ui/dialog/transformation.cpp:80
msgid "_Horizontal:"
msgstr "_Đ“ĐŸŃ€ĐžĐ·ĐŸĐœŃ‚Đ°Đ»ŃŒĐœĐ”:"
-#: ../src/ui/dialog/transformation.cpp:74
+#: ../src/ui/dialog/transformation.cpp:70
msgid "Horizontal displacement (relative) or position (absolute)"
msgstr "Đ“ĐŸŃ€ĐžĐ·ĐŸĐœŃ‚Đ°Đ»ŃŒĐœĐžĐč зсуĐČ (ĐČŃ–ĐŽĐœĐŸŃĐœĐžĐč) Đ°Đ±ĐŸ ĐżĐŸĐ·ĐžŃ†Ń–Ń (Đ°Đ±ŃĐŸĐ»ŃŽŃ‚ĐœĐ°)"
-#: ../src/ui/dialog/transformation.cpp:76
-#: ../src/ui/dialog/transformation.cpp:86
+#: ../src/ui/dialog/transformation.cpp:72
+#: ../src/ui/dialog/transformation.cpp:82
msgid "_Vertical:"
msgstr "_ВДртОĐșĐ°Đ»ŃŒĐœĐžĐč:"
-#: ../src/ui/dialog/transformation.cpp:76
+#: ../src/ui/dialog/transformation.cpp:72
msgid "Vertical displacement (relative) or position (absolute)"
msgstr "ВДртОĐșĐ°Đ»ŃŒĐœĐžĐč зсуĐČ (ĐČŃ–ĐŽĐœĐŸŃĐœĐžĐč) Đ°Đ±ĐŸ ĐżĐŸĐ·ĐžŃ†Ń–Ń (Đ°Đ±ŃĐŸĐ»ŃŽŃ‚ĐœĐ°)"
-#: ../src/ui/dialog/transformation.cpp:78
+#: ../src/ui/dialog/transformation.cpp:74
msgid "Horizontal size (absolute or percentage of current)"
msgstr "Đ“ĐŸŃ€ĐžĐ·ĐŸĐœŃ‚Đ°Đ»ŃŒĐœĐžĐč Ń€ĐŸĐ·ĐŒŃ–Ń€ (Đ°Đ±ŃĐŸĐ»ŃŽŃ‚ĐœĐžĐč Đ°Đ±ĐŸ у ĐČŃ–ĐŽŃĐŸŃ‚Đșах ĐŽĐŸ ĐżĐŸŃ‚ĐŸŃ‡ĐœĐŸĐłĐŸ)"
-#: ../src/ui/dialog/transformation.cpp:80
+#: ../src/ui/dialog/transformation.cpp:76
msgid "Vertical size (absolute or percentage of current)"
msgstr "ВДртОĐșĐ°Đ»ŃŒĐœĐžĐč Ń€ĐŸĐ·ĐŒŃ–Ń€ (Đ°Đ±ŃĐŸĐ»ŃŽŃ‚ĐœĐžĐč Đ°Đ±ĐŸ у ĐČŃ–ĐŽŃĐŸŃ‚Đșах ĐŽĐŸ ĐżĐŸŃ‚ĐŸŃ‡ĐœĐŸĐłĐŸ)"
-#: ../src/ui/dialog/transformation.cpp:82
+#: ../src/ui/dialog/transformation.cpp:78
msgid "A_ngle:"
msgstr "_Кут:"
-#: ../src/ui/dialog/transformation.cpp:82
+#: ../src/ui/dialog/transformation.cpp:78
#: ../src/ui/dialog/transformation.cpp:1103
msgid "Rotation angle (positive = counterclockwise)"
msgstr "Кут ĐżĐŸĐČĐŸŃ€ĐŸŃ‚Ńƒ (ĐŽĐŸĐŽĐ°Ń‚ĐœŃ–Đč = ĐżŃ€ĐŸŃ‚Đž ĐłĐŸĐŽĐžĐœĐœĐžĐșĐŸĐČĐŸŃ— стрілĐșĐž)"
-#: ../src/ui/dialog/transformation.cpp:84
+#: ../src/ui/dialog/transformation.cpp:80
msgid ""
"Horizontal skew angle (positive = counterclockwise), or absolute "
"displacement, or percentage displacement"
@@ -21864,7 +21864,7 @@ msgstr ""
"Кут ĐłĐŸŃ€ĐžĐ·ĐŸĐœŃ‚Đ°Đ»ŃŒĐœĐŸĐłĐŸ ŃƒŃ…ĐžĐ»Ńƒ (ĐŽĐŸĐŽĐ°Ń‚ĐœŃ–Đč = ĐżŃ€ĐŸŃ‚Đž ĐłĐŸĐŽĐžĐœĐœĐžĐșĐŸĐČĐŸŃ— стрілĐșĐž), Đ°Đ±ĐŸ "
"Đ°Đ±ŃĐŸĐ»ŃŽŃ‚ĐœĐ” Đ·ĐŒŃ–Ń‰Đ”ĐœĐœŃ, Đ°Đ±ĐŸ ĐČŃ–ĐŽŃĐŸŃ‚ĐșĐŸĐČĐ” Đ·ĐŒŃ–Ń‰Đ”ĐœĐœŃ"
-#: ../src/ui/dialog/transformation.cpp:86
+#: ../src/ui/dialog/transformation.cpp:82
msgid ""
"Vertical skew angle (positive = counterclockwise), or absolute displacement, "
"or percentage displacement"
@@ -21872,35 +21872,35 @@ msgstr ""
"Кут ĐČДртОĐșĐ°Đ»ŃŒĐœĐŸĐłĐŸ ŃƒŃ…ĐžĐ»Ńƒ (ĐŽĐŸĐŽĐ°Ń‚ĐœŃ–Đč = ĐżŃ€ĐŸŃ‚Đž ĐłĐŸĐŽĐžĐœĐœĐžĐșĐŸĐČĐŸŃ— стрілĐșĐž), Đ°Đ±ĐŸ "
"Đ°Đ±ŃĐŸĐ»ŃŽŃ‚ĐœĐ” Đ·ĐŒŃ–Ń‰Đ”ĐœĐœŃ, Đ°Đ±ĐŸ ĐČŃ–ĐŽŃĐŸŃ‚ĐșĐŸĐČĐ” Đ·ĐŒŃ–Ń‰Đ”ĐœĐœŃ"
-#: ../src/ui/dialog/transformation.cpp:89
+#: ../src/ui/dialog/transformation.cpp:85
msgid "Transformation matrix element A"
msgstr "Đ•Đ»Đ”ĐŒĐ”ĐœŃ‚ ĐŒĐ°Ń‚Ń€ĐžŃ†Ń– Ń‚Ń€Đ°ĐœŃŃ„ĐŸŃ€ĐŒĐ°Ń†Ń–Ń— A"
-#: ../src/ui/dialog/transformation.cpp:90
+#: ../src/ui/dialog/transformation.cpp:86
msgid "Transformation matrix element B"
msgstr "Đ•Đ»Đ”ĐŒĐ”ĐœŃ‚ ĐŒĐ°Ń‚Ń€ĐžŃ†Ń– Ń‚Ń€Đ°ĐœŃŃ„ĐŸŃ€ĐŒĐ°Ń†Ń–Ń— B"
-#: ../src/ui/dialog/transformation.cpp:91
+#: ../src/ui/dialog/transformation.cpp:87
msgid "Transformation matrix element C"
msgstr "Đ•Đ»Đ”ĐŒĐ”ĐœŃ‚ ĐŒĐ°Ń‚Ń€ĐžŃ†Ń– Ń‚Ń€Đ°ĐœŃŃ„ĐŸŃ€ĐŒĐ°Ń†Ń–Ń— C"
-#: ../src/ui/dialog/transformation.cpp:92
+#: ../src/ui/dialog/transformation.cpp:88
msgid "Transformation matrix element D"
msgstr "Đ•Đ»Đ”ĐŒĐ”ĐœŃ‚ ĐŒĐ°Ń‚Ń€ĐžŃ†Ń– Ń‚Ń€Đ°ĐœŃŃ„ĐŸŃ€ĐŒĐ°Ń†Ń–Ń— D"
-#: ../src/ui/dialog/transformation.cpp:93
+#: ../src/ui/dialog/transformation.cpp:89
msgid "Transformation matrix element E"
msgstr "Đ•Đ»Đ”ĐŒĐ”ĐœŃ‚ ĐŒĐ°Ń‚Ń€ĐžŃ†Ń– Ń‚Ń€Đ°ĐœŃŃ„ĐŸŃ€ĐŒĐ°Ń†Ń–Ń— E"
-#: ../src/ui/dialog/transformation.cpp:94
+#: ../src/ui/dialog/transformation.cpp:90
msgid "Transformation matrix element F"
msgstr "Đ•Đ»Đ”ĐŒĐ”ĐœŃ‚ ĐŒĐ°Ń‚Ń€ĐžŃ†Ń– Ń‚Ń€Đ°ĐœŃŃ„ĐŸŃ€ĐŒĐ°Ń†Ń–Ń— F"
-#: ../src/ui/dialog/transformation.cpp:99
+#: ../src/ui/dialog/transformation.cpp:95
msgid "Rela_tive move"
msgstr "Đ’Ń–ĐŽĐœĐŸ_ŃĐœĐ” ĐżĐ”Ń€Đ”ĐŒŃ–Ń‰Đ”ĐœĐœŃ"
-#: ../src/ui/dialog/transformation.cpp:99
+#: ../src/ui/dialog/transformation.cpp:95
msgid ""
"Add the specified relative displacement to the current position; otherwise, "
"edit the current absolute position directly"
@@ -21908,19 +21908,19 @@ msgstr ""
"Đ”ĐŸĐŽĐ°Ń‚Đž Đ·Đ°ĐŽĐ°ĐœĐ” ĐČŃ–ĐŽĐœĐŸŃĐœĐ” Đ·ĐŒŃ–Ń‰Đ”ĐœĐœŃ ĐŽĐŸ ĐżĐŸŃ‚ĐŸŃ‡ĐœĐŸŃ— ĐżĐŸĐ·ĐžŃ†Ń–Ń—; Đ°Đ±ĐŸ ĐČŃ–ĐŽŃ€Đ”ĐŽĐ°ĐłŃƒĐčтД "
"ĐżĐŸŃ‚ĐŸŃ‡ĐœŃƒ Đ°Đ±ŃĐŸĐ»ŃŽŃ‚ĐœŃƒ ĐżĐŸĐ·ĐžŃ†Ń–ŃŽ ĐœĐ°ĐżŃ€ŃĐŒŃƒ"
-#: ../src/ui/dialog/transformation.cpp:100
+#: ../src/ui/dialog/transformation.cpp:96
msgid "_Scale proportionally"
msgstr "Мас_ŃˆŃ‚Đ°Đ±ŃƒĐČато ĐżŃ€ĐŸĐżĐŸŃ€Ń†Ń–ĐčĐœĐŸ"
-#: ../src/ui/dialog/transformation.cpp:100
+#: ../src/ui/dialog/transformation.cpp:96
msgid "Preserve the width/height ratio of the scaled objects"
msgstr "ЗбДрДгтО спіĐČĐČŃ–ĐŽĐœĐŸŃˆĐ”ĐœĐœŃ ŃˆĐžŃ€ĐžĐœĐ°/ĐČĐžŃĐŸŃ‚Đ° ĐŽĐ»Ń ĐŒĐ°ŃŃˆŃ‚Đ°Đ±ĐŸĐČĐ°ĐœĐžŃ… ĐŸĐ±'єĐșтіĐČ"
-#: ../src/ui/dialog/transformation.cpp:101
+#: ../src/ui/dialog/transformation.cpp:97
msgid "Apply to each _object separately"
msgstr "Đ—Đ°ŃŃ‚ĐŸŃŃƒĐČато ĐŽĐŸ ĐșĐŸĐ¶ĐœĐŸĐłĐŸ ĐŸ_б'єĐșта ĐŸĐșŃ€Đ”ĐŒĐŸ"
-#: ../src/ui/dialog/transformation.cpp:101
+#: ../src/ui/dialog/transformation.cpp:97
msgid ""
"Apply the scale/rotate/skew to each selected object separately; otherwise, "
"transform the selection as a whole"
@@ -21929,11 +21929,11 @@ msgstr ""
"ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐŸĐłĐŸ ĐŸĐ±'єĐșта; Ń–ĐœĐ°ĐșшД пДрДтĐČĐŸŃ€Đ”ĐœĐœŃ буЎД Đ·Đ°ŃŃ‚ĐŸŃĐŸĐČĐ°ĐœĐŸ ĐŽĐŸ ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐŸĐłĐŸ "
"ĐŸĐ±'єĐșта цілĐșĐŸĐŒ"
-#: ../src/ui/dialog/transformation.cpp:102
+#: ../src/ui/dialog/transformation.cpp:98
msgid "Edit c_urrent matrix"
msgstr "РДЎагуĐČато ĐżĐŸ_Ń‚ĐŸŃ‡ĐœŃƒ ĐŒĐ°Ń‚Ń€ĐžŃ†ŃŽ"
-#: ../src/ui/dialog/transformation.cpp:102
+#: ../src/ui/dialog/transformation.cpp:98
msgid ""
"Edit the current transform= matrix; otherwise, post-multiply transform= by "
"this matrix"
@@ -21941,45 +21941,45 @@ msgstr ""
"РДЎагуĐČато ĐżĐŸŃ‚ĐŸŃ‡ĐœĐžĐč transform= ĐŒĐ°Ń‚Ń€ĐžŃ†ŃŽ; Ń–ĐœĐ°ĐșшД transform= буЎД ĐżĐŸĐŒĐœĐŸĐ¶Đ”ĐœĐŸ ĐœĐ° "
"цю ĐŒĐ°Ń‚Ń€ĐžŃ†ŃŽ"
-#: ../src/ui/dialog/transformation.cpp:115
+#: ../src/ui/dialog/transformation.cpp:111
msgid "_Scale"
msgstr "_ĐœĐ°ŃŃˆŃ‚Đ°Đ±"
-#: ../src/ui/dialog/transformation.cpp:118
+#: ../src/ui/dialog/transformation.cpp:114
msgid "_Rotate"
msgstr "_ĐžĐ±Đ”Ń€Ń‚Đ°ĐœĐœŃ"
-#: ../src/ui/dialog/transformation.cpp:121
+#: ../src/ui/dialog/transformation.cpp:117
msgid "Ske_w"
msgstr "_ĐĐ°Ń…ĐžĐ»"
-#: ../src/ui/dialog/transformation.cpp:124
+#: ../src/ui/dialog/transformation.cpp:120
msgid "Matri_x"
msgstr "Матро_ця"
-#: ../src/ui/dialog/transformation.cpp:148
+#: ../src/ui/dialog/transformation.cpp:144
msgid "Reset the values on the current tab to defaults"
msgstr "Đ—ĐŒŃ–ĐœĐžŃ‚Đž ĐČĐ”Đ»ĐžŃ‡ĐžĐœĐž у ĐżĐŸŃ‚ĐŸŃ‡ĐœŃ–Đč ĐČĐșлаЎці ĐœĐ° Ń‚ĐžĐżĐŸĐČі"
-#: ../src/ui/dialog/transformation.cpp:155
+#: ../src/ui/dialog/transformation.cpp:151
msgid "Apply transformation to selection"
msgstr "Đ—Đ°ŃŃ‚ĐŸŃŃƒĐČато пДрДтĐČĐŸŃ€Đ”ĐœĐœŃ ĐŽĐŸ ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐžŃ… ĐŸĐ±'єĐșтіĐČ"
-#: ../src/ui/dialog/transformation.cpp:331
+#: ../src/ui/dialog/transformation.cpp:327
msgid "Rotate in a counterclockwise direction"
msgstr "ĐžĐ±Đ”Ń€ĐœŃƒŃ‚Đž ĐżŃ€ĐŸŃ‚Đž ĐłĐŸĐŽĐžĐœĐœĐžĐșĐŸĐČĐŸŃ— стрілĐșĐž"
-#: ../src/ui/dialog/transformation.cpp:337
+#: ../src/ui/dialog/transformation.cpp:333
msgid "Rotate in a clockwise direction"
msgstr "ĐžĐ±Đ”Ń€ĐœŃƒŃ‚Đž за ĐłĐŸĐŽĐžĐœĐœĐžĐșĐŸĐČĐŸŃŽ стрілĐșĐŸŃŽ"
-#: ../src/ui/dialog/transformation.cpp:907
-#: ../src/ui/dialog/transformation.cpp:918
-#: ../src/ui/dialog/transformation.cpp:932
-#: ../src/ui/dialog/transformation.cpp:951
-#: ../src/ui/dialog/transformation.cpp:962
-#: ../src/ui/dialog/transformation.cpp:972
-#: ../src/ui/dialog/transformation.cpp:996
+#: ../src/ui/dialog/transformation.cpp:906
+#: ../src/ui/dialog/transformation.cpp:917
+#: ../src/ui/dialog/transformation.cpp:931
+#: ../src/ui/dialog/transformation.cpp:950
+#: ../src/ui/dialog/transformation.cpp:961
+#: ../src/ui/dialog/transformation.cpp:971
+#: ../src/ui/dialog/transformation.cpp:995
msgid "Transform matrix is singular, <b>not used</b>."
msgstr "Матроця пДрДтĐČĐŸŃ€Đ”ĐœĐœŃ є ĐČĐžŃ€ĐŸĐŽĐ¶Đ”ĐœĐŸŃŽ, <b>ĐœĐ” ĐČĐžĐșĐŸŃ€ĐžŃŃ‚ĐŸĐČŃƒŃ”ĐŒĐŸ її</b>."
@@ -22185,7 +22185,7 @@ msgid "Enter group #%1"
msgstr "ĐŁĐČіĐčто ĐŽĐŸ групо №%1"
#. Item dialog
-#: ../src/ui/interface.cpp:1641 ../src/verbs.cpp:2932
+#: ../src/ui/interface.cpp:1641 ../src/verbs.cpp:2901
msgid "_Object Properties..."
msgstr "В_ластОĐČĐŸŃŃ‚Ń– ĐŸĐ±'єĐșта
"
@@ -22258,7 +22258,7 @@ msgid "Release C_lip"
msgstr "Đ—Đœ_ято ĐŸĐ±Ń€Ń–Đ·Đ°ĐœĐœŃ"
#. Group
-#: ../src/ui/interface.cpp:1790 ../src/verbs.cpp:2565
+#: ../src/ui/interface.cpp:1790 ../src/verbs.cpp:2534
msgid "_Group"
msgstr "З_групуĐČато"
@@ -22267,78 +22267,78 @@ msgid "Create link"
msgstr "СтĐČĐŸŃ€ĐžŃ‚Đž ĐżĐŸŃĐžĐ»Đ°ĐœĐœŃ"
#. Ungroup
-#: ../src/ui/interface.cpp:1896 ../src/verbs.cpp:2567
+#: ../src/ui/interface.cpp:1896 ../src/verbs.cpp:2536
msgid "_Ungroup"
msgstr "Đ ĐŸĐ·ĐłŃ€_упуĐČато"
#. Link dialog
-#: ../src/ui/interface.cpp:1921
+#: ../src/ui/interface.cpp:1920
msgid "Link _Properties..."
msgstr "В_ластОĐČĐŸŃŃ‚Ń– ĐżĐŸŃĐžĐ»Đ°ĐœĐœŃâ€Š"
#. Select item
-#: ../src/ui/interface.cpp:1927
+#: ../src/ui/interface.cpp:1926
msgid "_Follow Link"
msgstr "_ĐŸĐ”Ń€Đ”Đčто за ĐżĐŸŃĐžĐ»Đ°ĐœĐœŃĐŒ"
#. Reset transformations
-#: ../src/ui/interface.cpp:1933
+#: ../src/ui/interface.cpp:1932
msgid "_Remove Link"
msgstr "Во_Đ»ŃƒŃ‡ĐžŃ‚Đž ĐżĐŸŃĐžĐ»Đ°ĐœĐœŃ"
-#: ../src/ui/interface.cpp:1964
+#: ../src/ui/interface.cpp:1963
msgid "Remove link"
msgstr "Đ’ĐžĐ»ŃƒŃ‡ĐžŃ‚Đž проĐČ'ŃĐ·Đșу"
#. Image properties
-#: ../src/ui/interface.cpp:1975
+#: ../src/ui/interface.cpp:1973
msgid "Image _Properties..."
msgstr "В_ластОĐČĐŸŃŃ‚Ń– Đ·ĐŸĐ±Ń€Đ°Đ¶Đ”ĐœĐœŃâ€Š"
#. Edit externally
-#: ../src/ui/interface.cpp:1981
+#: ../src/ui/interface.cpp:1979
msgid "Edit Externally..."
msgstr "РДЎагуĐČато у Đ·ĐŸĐČĐœŃ–ŃˆĐœŃ–Đč ĐżŃ€ĐŸĐłŃ€Đ°ĐŒŃ–â€Š"
#. Trace Bitmap
#. TRANSLATORS: "to trace" means "to convert a bitmap to vector graphics" (to vectorize)
-#: ../src/ui/interface.cpp:1990 ../src/verbs.cpp:2628
+#: ../src/ui/interface.cpp:1988 ../src/verbs.cpp:2597
msgid "_Trace Bitmap..."
msgstr "_Đ’Đ”ĐșŃ‚ĐŸŃ€ĐžĐ·ŃƒĐČато растр"
#. Trace Pixel Art
-#: ../src/ui/interface.cpp:1999
+#: ../src/ui/interface.cpp:1997
msgid "Trace Pixel Art"
msgstr "брасуĐČĐ°ĐœĐœŃ Ń€Đ°ŃŃ‚Ń€ĐŸĐČĐŸŃ— графіĐșĐž"
-#: ../src/ui/interface.cpp:2009
+#: ../src/ui/interface.cpp:2007
msgctxt "Context menu"
msgid "Embed Image"
msgstr "Đ’Đ±ŃƒĐŽŃƒĐČато Đ·ĐŸĐ±Ń€Đ°Đ¶Đ”ĐœĐœŃ"
-#: ../src/ui/interface.cpp:2020
+#: ../src/ui/interface.cpp:2018
msgctxt "Context menu"
msgid "Extract Image..."
msgstr "Đ’ĐžĐŽĐŸĐ±ŃƒŃ‚Đž Đ·ĐŸĐ±Ń€Đ°Đ¶Đ”ĐœĐœŃâ€Š"
#. Item dialog
#. Fill and Stroke dialog
-#: ../src/ui/interface.cpp:2165 ../src/ui/interface.cpp:2185
-#: ../src/verbs.cpp:2895
+#: ../src/ui/interface.cpp:2162 ../src/ui/interface.cpp:2182
+#: ../src/verbs.cpp:2864
msgid "_Fill and Stroke..."
msgstr "_Đ—Đ°ĐżĐŸĐČĐœĐ”ĐœĐœŃ та штрох"
#. Edit Text dialog
-#: ../src/ui/interface.cpp:2191 ../src/verbs.cpp:2914
+#: ../src/ui/interface.cpp:2188 ../src/verbs.cpp:2883
msgid "_Text and Font..."
msgstr "_йДĐșст та шрофт
"
#. Spellcheck dialog
-#: ../src/ui/interface.cpp:2197 ../src/verbs.cpp:2922
+#: ../src/ui/interface.cpp:2194 ../src/verbs.cpp:2891
msgid "Check Spellin_g..."
msgstr "ĐŸĐ”Ń€Đ”ĐČірото Đż_раĐČĐŸĐżĐžŃâ€Š"
-#: ../src/ui/object-edit.cpp:464
+#: ../src/ui/object-edit.cpp:450
msgid ""
"Adjust the <b>horizontal rounding</b> radius; with <b>Ctrl</b> to make the "
"vertical radius the same"
@@ -22346,7 +22346,7 @@ msgstr ""
"ĐĄĐșĐŸŃ€ĐžĐłŃƒĐČато раЮіус <b>ĐłĐŸŃ€ĐžĐ·ĐŸĐœŃ‚Đ°Đ»ŃŒĐœĐŸĐłĐŸ ĐŸĐșŃ€ŃƒĐłĐ»Đ”ĐœĐœŃ</b>. З <b>Ctrl</b> "
"ĐČДртОĐșĐ°Đ»ŃŒĐœĐžĐč раЮіус буЎД таĐșĐžĐŒ ŃĐ°ĐŒĐžĐŒ"
-#: ../src/ui/object-edit.cpp:469
+#: ../src/ui/object-edit.cpp:455
msgid ""
"Adjust the <b>vertical rounding</b> radius; with <b>Ctrl</b> to make the "
"horizontal radius the same"
@@ -22354,7 +22354,7 @@ msgstr ""
"ĐĄĐșĐŸŃ€ĐžĐłŃƒĐČато раЮіус <b>ĐČДртОĐșĐ°Đ»ŃŒĐœĐŸĐłĐŸ ĐŸĐșŃ€ŃƒĐłĐ»Đ”ĐœĐœŃ</b>. З <b>Ctrl</b> "
"ĐłĐŸŃ€ĐžĐ·ĐŸĐœŃ‚Đ°Đ»ŃŒĐœĐžĐč раЮіус буЎД таĐșĐžĐŒ ŃĐ°ĐŒĐžĐŒ"
-#: ../src/ui/object-edit.cpp:474 ../src/ui/object-edit.cpp:479
+#: ../src/ui/object-edit.cpp:460 ../src/ui/object-edit.cpp:465
msgid ""
"Adjust the <b>width and height</b> of the rectangle; with <b>Ctrl</b> to "
"lock ratio or stretch in one dimension only"
@@ -22362,8 +22362,8 @@ msgstr ""
"ĐĄĐșĐŸŃ€ĐžĐłŃƒĐČато <b>ŃˆĐžŃ€ĐžĐœŃƒ та ĐČĐžŃĐŸŃ‚Ńƒ</b> ĐżŃ€ŃĐŒĐŸĐșŃƒŃ‚ĐœĐžĐșа. <b>Ctrl</b> фіĐșсує "
"спіĐČĐČŃ–ĐŽĐœĐŸŃˆĐ”ĐœĐœŃ чо Ń€ĐŸĐ·Ń‚ŃĐłŃƒŃ”/стосĐșає лОшД ĐŸĐŽĐžĐœ ĐČĐžĐŒŃ–Ń€"
-#: ../src/ui/object-edit.cpp:726 ../src/ui/object-edit.cpp:730
-#: ../src/ui/object-edit.cpp:734 ../src/ui/object-edit.cpp:738
+#: ../src/ui/object-edit.cpp:712 ../src/ui/object-edit.cpp:716
+#: ../src/ui/object-edit.cpp:720 ../src/ui/object-edit.cpp:724
msgid ""
"Resize box in X/Y direction; with <b>Shift</b> along the Z axis; with "
"<b>Ctrl</b> to constrain to the directions of edges or diagonals"
@@ -22371,8 +22371,8 @@ msgstr ""
"Đ—ĐŒŃ–ĐœĐžŃ‚Đž Ń€ĐŸĐ·ĐŒŃ–Ń€ ĐŸĐ±'єĐșта у ĐœĐ°ĐżŃ€ŃĐŒĐșу ĐŸŃĐ”Đč X/Y; Đ· <b>Shift</b> — ĐČĐ·ĐŽĐŸĐČж ĐŸŃŃ– Z; "
"<b>Ctrl</b> — фіĐșсуĐČĐ°ĐœĐœŃ ĐœĐ°ĐżŃ€ŃĐŒĐșіĐČ ĐșраїĐČ Đ°Đ±ĐŸ ĐŽŃ–Đ°ĐłĐŸĐœĐ°Đ»Đ”Đč"
-#: ../src/ui/object-edit.cpp:742 ../src/ui/object-edit.cpp:746
-#: ../src/ui/object-edit.cpp:750 ../src/ui/object-edit.cpp:754
+#: ../src/ui/object-edit.cpp:728 ../src/ui/object-edit.cpp:732
+#: ../src/ui/object-edit.cpp:736 ../src/ui/object-edit.cpp:740
msgid ""
"Resize box along the Z axis; with <b>Shift</b> in X/Y direction; with "
"<b>Ctrl</b> to constrain to the directions of edges or diagonals"
@@ -22380,19 +22380,19 @@ msgstr ""
"Đ—ĐŒŃ–ĐœĐžŃ‚Đž Ń€ĐŸĐ·ĐŒŃ–Ń€ ĐŸĐ±'єĐșта ĐČĐ·ĐŽĐŸĐČж ĐŸŃŃ– Z; Đ· <b>Shift</b> — у ĐœĐ°ĐżŃ€ŃĐŒĐșу ĐŸŃĐ”Đč X/Y; "
"<b>Ctrl</b> — фіĐșсуĐČĐ°ĐœĐœŃ ĐœĐ°ĐżŃ€ŃĐŒĐșіĐČ ĐșраїĐČ Đ°Đ±ĐŸ ĐŽŃ–Đ°ĐłĐŸĐœĐ°Đ»Đ”Đč"
-#: ../src/ui/object-edit.cpp:758
+#: ../src/ui/object-edit.cpp:744
msgid "Move the box in perspective"
msgstr "ĐŸĐ”Ń€Đ”ĐŒŃ–Ń‰Đ”ĐœĐœŃ ĐŸĐ±'єĐșта у пДрспДĐșтоĐČі"
-#: ../src/ui/object-edit.cpp:997
+#: ../src/ui/object-edit.cpp:983
msgid "Adjust ellipse <b>width</b>, with <b>Ctrl</b> to make circle"
msgstr "Đ—ĐŒŃ–ĐœĐžŃ‚Đž <b>ĐČДлОĐșу ĐČісь</b> Дліпса. <b>Ctrl</b> стĐČĐŸŃ€ŃŽŃ” ĐșĐŸĐ»ĐŸ"
-#: ../src/ui/object-edit.cpp:1001
+#: ../src/ui/object-edit.cpp:987
msgid "Adjust ellipse <b>height</b>, with <b>Ctrl</b> to make circle"
msgstr "Đ—ĐŒŃ–ĐœĐžŃ‚Đž <b>ĐŒĐ°Đ»Ńƒ ĐČісь</b> Дліпса. <b>Ctrl</b> стĐČĐŸŃ€ŃŽŃ” ĐșĐŸĐ»ĐŸ"
-#: ../src/ui/object-edit.cpp:1005
+#: ../src/ui/object-edit.cpp:991
msgid ""
"Position the <b>start point</b> of the arc or segment; with <b>Ctrl</b> to "
"snap angle; drag <b>inside</b> the ellipse for arc, <b>outside</b> for "
@@ -22401,7 +22401,7 @@ msgstr ""
"<b>ĐŸĐŸŃ‡Đ°Ń‚ĐșĐŸĐČа Ń‚ĐŸŃ‡Đșа</b> сДĐșŃ‚ĐŸŃ€Đ° чо ЎугО. <b>Ctrl</b> ĐŸĐ±ĐŒĐ”Đ¶ŃƒŃ” Đșут. "
"ĐŸĐ”Ń€Đ”Ń‚ŃĐłŃƒĐČĐ°ĐœĐœŃ <b>ĐČŃĐ”Ń€Đ”ĐŽĐžĐœŃ–</b> Дліпса Юає Ўугу, <b>Đ·ĐŸĐČĐœŃ–</b> — ŃĐ”ĐłĐŒĐ”ĐœŃ‚"
-#: ../src/ui/object-edit.cpp:1010
+#: ../src/ui/object-edit.cpp:996
msgid ""
"Position the <b>end point</b> of the arc or segment; with <b>Ctrl</b> to "
"snap angle; drag <b>inside</b> the ellipse for arc, <b>outside</b> for "
@@ -22410,7 +22410,7 @@ msgstr ""
"<b>ĐšŃ–ĐœŃ†Đ”ĐČа Ń‚ĐŸŃ‡Đșа</b> сДĐșŃ‚ĐŸŃ€Đ° чо ЎугО. <b>Ctrl</b> ĐŸĐ±ĐŒĐ”Đ¶ŃƒŃ” Đșут. ĐŸĐ”Ń€Đ”Ń‚ŃĐłŃƒĐČĐ°ĐœĐœŃ "
"<b>ĐČŃĐ”Ń€Đ”ĐŽĐžĐœŃ–</b> Дліпса Юає Ўугу, <b>Đ·ĐŸĐČĐœŃ–</b> — ŃĐ”ĐłĐŒĐ”ĐœŃ‚"
-#: ../src/ui/object-edit.cpp:1156
+#: ../src/ui/object-edit.cpp:1142
msgid ""
"Adjust the <b>tip radius</b> of the star or polygon; with <b>Shift</b> to "
"round; with <b>Alt</b> to randomize"
@@ -22418,7 +22418,7 @@ msgstr ""
"Đ—ĐŒŃ–ĐœĐžŃ‚Đž <b>ĐČДлОĐșĐžĐč раЮіус</b> Đ·Ń–Ń€ĐșĐž чо Đ±Đ°ĐłĐ°Ń‚ĐŸĐșŃƒŃ‚ĐœĐžĐșа. <b>Shift</b> — "
"ĐŸĐșŃ€ŃƒĐłĐ»ŃŃ”; <b>Alt</b> — Đ·ĐŒŃ–ŃˆŃƒŃ”"
-#: ../src/ui/object-edit.cpp:1164
+#: ../src/ui/object-edit.cpp:1150
msgid ""
"Adjust the <b>base radius</b> of the star; with <b>Ctrl</b> to keep star "
"rays radial (no skew); with <b>Shift</b> to round; with <b>Alt</b> to "
@@ -22427,7 +22427,7 @@ msgstr ""
"Đ—ĐŒŃ–ĐœĐžŃ‚Đž <b>ĐŒĐ°Đ»ĐžĐč раЮіус</b> Đ·Ń–Ń€ĐșĐž. <b>Ctrl</b> збДрігає ĐżŃ€ĐŸĐŒĐ”ĐœŃ– Đ·Ń–Ń€ĐșĐž "
"Ń€Đ°ĐŽŃ–Đ°Đ»ŃŒĐœĐžĐŒĐž (бДз ĐœĐ°Ń…ĐžĐ»Ńƒ), <b>Shift</b> — ĐŸĐșŃ€ŃƒĐłĐ»ŃŃ”; <b>Alt</b> — Đ·ĐŒŃ–ŃˆŃƒŃ”"
-#: ../src/ui/object-edit.cpp:1359
+#: ../src/ui/object-edit.cpp:1345
msgid ""
"Roll/unroll the spiral from <b>inside</b>; with <b>Ctrl</b> to snap angle; "
"with <b>Alt</b> to converge/diverge"
@@ -22435,7 +22435,7 @@ msgstr ""
"Đ—ĐłĐŸŃ€ĐœŃƒŃ‚Đž/Ń€ĐŸĐ·ĐłĐŸŃ€ĐœŃƒŃ‚Đž ŃĐżŃ–Ń€Đ°Đ»ŃŒ <b>ĐČŃĐ”Ń€Đ”ĐŽĐžĐœŃ–</b>. <b>Ctrl</b> — ĐŸĐ±ĐŒĐ”Đ¶ŃƒŃ” Đșут, "
"<b>Alt</b> Đ·ĐŒŃ–ĐœŃŽŃ” ĐœĐ”Đ»Ń–ĐœŃ–ĐčĐœŃ–ŃŃ‚ŃŒ"
-#: ../src/ui/object-edit.cpp:1363
+#: ../src/ui/object-edit.cpp:1349
msgid ""
"Roll/unroll the spiral from <b>outside</b>; with <b>Ctrl</b> to snap angle; "
"with <b>Shift</b> to scale/rotate; with <b>Alt</b> to lock radius"
@@ -22443,11 +22443,11 @@ msgstr ""
"Đ—ĐłĐŸŃ€ĐœŃƒŃ‚Đž/Ń€ĐŸĐ·ĐłĐŸŃ€ĐœŃƒŃ‚Đž ŃĐżŃ–Ń€Đ°Đ»ŃŒ <b>Đ·ĐŸĐČĐœŃ–</b>. <b>Ctrl</b> — ĐŸĐ±ĐŒĐ”Đ¶ŃƒŃ” Đșут, "
"<b>Shift</b> — Ń€ĐŸĐ·Ń‚ŃĐłŃƒŃ”/ĐŸĐ±Đ”Ń€Ń‚Đ°Ń” яĐș цілД. З <b>Alt</b> Đ·Ń– ŃŃ‚Đ°Đ»ĐžĐŒ Ń€Đ°ĐŽŃ–ŃƒŃĐŸĐŒ."
-#: ../src/ui/object-edit.cpp:1410
+#: ../src/ui/object-edit.cpp:1396
msgid "Adjust the <b>offset distance</b>"
msgstr "ĐœŃ–ĐœŃŃ‚Đž <b>ĐČŃ–ĐŽŃŃ‚Đ°ĐœŃŒ ĐČтягуĐČĐ°ĐœĐœŃ</b>"
-#: ../src/ui/object-edit.cpp:1447
+#: ../src/ui/object-edit.cpp:1433
msgid "Drag to resize the <b>flowed text frame</b>"
msgstr "ĐŸĐ”Ń€Đ”Ń‚ŃĐłĐœŃ–Ń‚ŃŒ ĐŽĐ»Ń Đ·ĐŒŃ–ĐœĐž Ń€ĐŸĐ·ĐŒŃ–Ń€Ńƒ <b>тДĐșсту у Ń€Đ°ĐŒŃ†Ń–</b>"
@@ -22493,7 +22493,7 @@ msgstr ""
msgid "Retract handles"
msgstr "Đ’Ń‚ŃĐłĐœŃƒŃ‚Đž ĐČуса"
-#: ../src/ui/tool/multi-path-manipulator.cpp:315 ../src/ui/tool/node.cpp:296
+#: ../src/ui/tool/multi-path-manipulator.cpp:315 ../src/ui/tool/node.cpp:295
msgid "Change node type"
msgstr "Đ—ĐŒŃ–ĐœĐžŃ‚Đž топ ĐČузла"
@@ -22576,38 +22576,38 @@ msgstr "ВіЎЎзДрĐșалОтО ĐČузлО ĐłĐŸŃ€ĐžĐ·ĐŸĐœŃ‚Đ°Đ»ŃŒĐœĐŸ"
msgid "Flip nodes vertically"
msgstr "ВіЎЎзДрĐșалОтО ĐČузлО ĐČДртОĐșĐ°Đ»ŃŒĐœĐŸ"
-#: ../src/ui/tool/node.cpp:271
+#: ../src/ui/tool/node.cpp:270
msgid "Cusp node handle"
msgstr "Đ•Đ»Đ”ĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ ĐłĐŸŃŃ‚Ń€ĐŸĐłĐŸ ĐČузла"
-#: ../src/ui/tool/node.cpp:272
+#: ../src/ui/tool/node.cpp:271
msgid "Smooth node handle"
msgstr "Đ•Đ»Đ”ĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ Đ·ĐłĐ»Đ°ĐŽĐ¶Đ”ĐœĐŸĐłĐŸ ĐČузла"
-#: ../src/ui/tool/node.cpp:273
+#: ../src/ui/tool/node.cpp:272
msgid "Symmetric node handle"
msgstr "Đ•Đ»Đ”ĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ ŃĐžĐŒĐ”Ń‚Ń€ĐžŃ‡ĐœĐŸĐłĐŸ ĐČузла"
-#: ../src/ui/tool/node.cpp:274
+#: ../src/ui/tool/node.cpp:273
msgid "Auto-smooth node handle"
msgstr "Đ•Đ»Đ”ĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ аĐČŃ‚ĐŸĐ·ĐłĐ»Đ°ĐŽĐ¶Đ”ĐœĐŸĐłĐŸ ĐČузла"
-#: ../src/ui/tool/node.cpp:493
+#: ../src/ui/tool/node.cpp:492
msgctxt "Path handle tip"
msgid "more: Shift, Ctrl, Alt"
msgstr "Đ±Ń–Đ»ŃŒŃˆĐ”: Shift, Ctrl, Alt"
-#: ../src/ui/tool/node.cpp:495
+#: ../src/ui/tool/node.cpp:494
msgctxt "Path handle tip"
msgid "more: Ctrl"
msgstr "Đ±Ń–Đ»ŃŒŃˆĐ”: Ctrl"
-#: ../src/ui/tool/node.cpp:497
+#: ../src/ui/tool/node.cpp:496
msgctxt "Path handle tip"
msgid "more: Ctrl, Alt"
msgstr "Đ±Ń–Đ»ŃŒŃˆĐ”: Ctrl, Alt"
-#: ../src/ui/tool/node.cpp:503
+#: ../src/ui/tool/node.cpp:502
#, c-format
msgctxt "Path handle tip"
msgid ""
@@ -22617,7 +22617,7 @@ msgstr ""
"<b>Shift+Ctrl+Alt</b>: збДрігатО ĐŽĐŸĐČĐ¶ĐžĐœŃƒ, Đ·ĐŒŃ–ĐœŃŽĐČато Đșут ĐŸĐ±Đ”Ń€Ń‚Đ°ĐœĐœŃ ĐșŃ€ĐŸĐșĐ°ĐŒĐž у "
"%g°, ĐŸĐ±Đ”Ń€Ń‚Đ°Ń‚Đž ĐŸĐ±ĐžĐŽĐČа Đ”Đ»Đ”ĐŒĐ”ĐœŃ‚Đž ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ"
-#: ../src/ui/tool/node.cpp:508
+#: ../src/ui/tool/node.cpp:507
#, c-format
msgctxt "Path handle tip"
msgid ""
@@ -22626,19 +22626,19 @@ msgstr ""
"<b>Ctrl+Alt</b>: збДрігатО ĐŽĐŸĐČĐ¶ĐžĐœŃƒ Đ”Đ»Đ”ĐŒĐ”ĐœŃ‚Đ°, Đ·ĐŒŃ–ĐœŃŽĐČато Đșут ĐŸĐ±Đ”Ń€Ń‚Đ°ĐœĐœŃ ĐșŃ€ĐŸĐșĐ°ĐŒĐž "
"%g°"
-#: ../src/ui/tool/node.cpp:514
+#: ../src/ui/tool/node.cpp:513
msgctxt "Path handle tip"
msgid "<b>Shift+Alt</b>: preserve handle length and rotate both handles"
msgstr ""
"<b>Shift+Alt</b>: збДрДгтО ĐŽĐŸĐČĐ¶ĐžĐœŃƒ Đ”Đ»Đ”ĐŒĐ”ĐœŃ‚Đ° ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ, ĐŸĐ±Đ”Ń€Ń‚Đ°Ń‚Đž ĐŸĐ±ĐžĐŽĐČа "
"Đ”Đ»Đ”ĐŒĐ”ĐœŃ‚Đž"
-#: ../src/ui/tool/node.cpp:517
+#: ../src/ui/tool/node.cpp:516
msgctxt "Path handle tip"
msgid "<b>Alt</b>: preserve handle length while dragging"
msgstr "<b>Alt</b>: збДрігатО ĐŽĐŸĐČĐ¶ĐžĐœŃƒ Đ”Đ»Đ”ĐŒĐ”ĐœŃ‚Đ° ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ піЮ час ĐżĐ”Ń€Đ”Ń‚ŃĐłŃƒĐČĐ°ĐœĐœŃ"
-#: ../src/ui/tool/node.cpp:524
+#: ../src/ui/tool/node.cpp:523
#, c-format
msgctxt "Path handle tip"
msgid ""
@@ -22648,31 +22648,31 @@ msgstr ""
"<b>Shift+Ctrl</b>: Đ·ĐŒŃ–ĐœŃŽĐČато Đșут ĐŸĐ±Đ”Ń€Ń‚Đ°ĐœĐœŃ ĐșŃ€ĐŸĐșĐ°ĐŒĐž у %g°, ĐŸĐ±Đ”Ń€Ń‚Đ°Ń‚Đž ĐŸĐ±ĐžĐŽĐČа "
"Đ”Đ»Đ”ĐŒĐ”ĐœŃ‚Đž ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ"
-#: ../src/ui/tool/node.cpp:528
+#: ../src/ui/tool/node.cpp:527
msgctxt "Path handle tip"
msgid "<b>Ctrl</b>: Move handle by his actual steps in BSpline Live Effect"
msgstr ""
"<b>Ctrl</b>: ĐżĐ”Ń€Đ”ŃŃƒĐœŃƒŃ‚Đž ĐČус за ĐčĐŸĐłĐŸ спраĐČĐ¶ĐœŃ–ĐŒĐž ĐșŃ€ĐŸĐșĐ°ĐŒĐž у Ń–ĐœŃ‚Đ”Ń€Đ°ĐșтоĐČĐœĐŸĐŒŃƒ "
"ДфДĐșті B-сплаĐčĐœŃ–ĐČ"
-#: ../src/ui/tool/node.cpp:531
+#: ../src/ui/tool/node.cpp:530
#, c-format
msgctxt "Path handle tip"
msgid "<b>Ctrl</b>: snap rotation angle to %g° increments, click to retract"
msgstr ""
"<b>Ctrl</b>: Đ·ĐŒŃ–ĐœŃŽĐČато Đșут ĐŸĐ±Đ”Ń€Ń‚Đ°ĐœĐœŃ ĐșŃ€ĐŸĐșĐ°ĐŒĐž у %g°, ĐșĐ»Đ°Ń†ĐœŃ–Ń‚ŃŒ ĐŽĐ»Ń сĐșасуĐČĐ°ĐœĐœŃ"
-#: ../src/ui/tool/node.cpp:536
+#: ../src/ui/tool/node.cpp:535
msgctxt "Path hande tip"
msgid "<b>Shift</b>: rotate both handles by the same angle"
msgstr "<b>Shift</b>: ĐŸĐ±Đ”Ń€Ń‚Đ°Ń‚Đž ĐœĐ° ĐŸĐŽĐœĐ°ĐșĐŸĐČĐžĐč Đșут ĐŸĐ±ĐžĐŽĐČа Đ”Đ»Đ”ĐŒĐ”ĐœŃ‚Đž ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ"
-#: ../src/ui/tool/node.cpp:539
+#: ../src/ui/tool/node.cpp:538
msgctxt "Path hande tip"
msgid "<b>Shift</b>: move handle"
msgstr "<b>Shift</b>: ĐżĐ”Ń€Đ”ŃŃƒĐœŃƒŃ‚Đž ĐČус"
-#: ../src/ui/tool/node.cpp:546 ../src/ui/tool/node.cpp:550
+#: ../src/ui/tool/node.cpp:545 ../src/ui/tool/node.cpp:549
#, c-format
msgctxt "Path handle tip"
msgid "<b>Auto node handle</b>: drag to convert to smooth node (%s)"
@@ -22680,49 +22680,51 @@ msgstr ""
"<b>Đ•Đ»Đ”ĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ аĐČŃ‚ĐŸĐŒĐ°Ń‚ĐžĐșĐŸŃŽ ĐČузла</b>: ĐżĐ”Ń€Đ”Ń‚ŃĐłĐœŃ–Ń‚ŃŒ, Ń‰ĐŸĐ± пДрДтĐČĐŸŃ€ĐžŃ‚Đž "
"ĐČŃƒĐ·ĐŸĐ» ĐœĐ° глаЎĐșĐžĐč (%s)"
-#: ../src/ui/tool/node.cpp:553
+#: ../src/ui/tool/node.cpp:552
#, c-format
msgctxt "Path handle tip"
-msgid "<b>BSpline node handle</b>: Shift to drag, double click to reset (%s)"
+msgid ""
+"<b>BSpline node handle</b>: Shift to drag, double click to reset (%s). %g "
+"power"
msgstr ""
"<b>Đ•Đ»Đ”ĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ B-сплаĐčĐœĐŸĐČĐžĐŒ ĐČŃƒĐ·Đ»ĐŸĐŒ</b>: Shift — ĐżĐ”Ń€Đ”Ń‚ŃĐłĐœŃƒŃ‚Đž, ĐżĐŸĐŽĐČіĐčĐœĐ” "
-"ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ — сĐșĐžĐœŃƒŃ‚Đž (%s)"
+"ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ — сĐșĐžĐœŃƒŃ‚Đž (%s). ĐŸĐŸŃ‚ŃƒĐ¶ĐœŃ–ŃŃ‚ŃŒ %g"
-#: ../src/ui/tool/node.cpp:573
+#: ../src/ui/tool/node.cpp:572
#, c-format
msgctxt "Path handle tip"
msgid "Move handle by %s, %s; angle %.2f°, length %s"
msgstr "ĐŸĐ”Ń€Đ”ŃŃƒĐœŃƒŃ‚Đž Đ”Đ»Đ”ĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ ĐœĐ° %s, %s; Đșут %.2f°, ĐČŃ–ĐŽŃŃ‚Đ°ĐœŃŒ %s"
-#: ../src/ui/tool/node.cpp:1447
+#: ../src/ui/tool/node.cpp:1448
msgctxt "Path node tip"
msgid "<b>Shift</b>: drag out a handle, click to toggle selection"
msgstr ""
"<b>Shift</b>: ĐżĐ”Ń€Đ”Ń‚ŃĐłĐœŃ–Ń‚ŃŒ Đ”Đ»Đ”ĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ, ĐșĐ»Đ°Ń†ĐœŃ–Ń‚ŃŒ, Ń‰ĐŸĐ± уĐČŃ–ĐŒĐșĐœŃƒŃ‚Đž/"
"ĐČĐžĐŒĐșĐœŃƒŃ‚Đž Ń€Đ”Đ¶ĐžĐŒ ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐœŃ"
-#: ../src/ui/tool/node.cpp:1449
+#: ../src/ui/tool/node.cpp:1450
msgctxt "Path node tip"
msgid "<b>Shift</b>: click to toggle selection"
msgstr "<b>Shift</b>: ĐșĐ»Đ°Ń†ĐœŃ–Ń‚ŃŒ, Ń‰ĐŸĐ± уĐČŃ–ĐŒĐșĐœŃƒŃ‚Đž/ĐČĐžĐŒĐșĐœŃƒŃ‚Đž Ń€Đ”Đ¶ĐžĐŒ ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐœŃ"
-#: ../src/ui/tool/node.cpp:1454
+#: ../src/ui/tool/node.cpp:1455
msgctxt "Path node tip"
msgid "<b>Ctrl+Alt</b>: move along handle lines, click to delete node"
msgstr ""
"<b>Ctrl+Alt</b>: ĐżĐ”Ń€Đ”ŃŃƒĐœŃƒŃ‚Đž Đ»Ń–ĐœŃ–Ń— Đ”Đ»Đ”ĐŒĐ”ĐœŃ‚Đ° ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ, ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ ĐČĐžĐ»ŃƒŃ‡Đ°Ń” ĐČŃƒĐ·ĐŸĐ»"
-#: ../src/ui/tool/node.cpp:1457
+#: ../src/ui/tool/node.cpp:1458
msgctxt "Path node tip"
msgid "<b>Ctrl</b>: move along axes, click to change node type"
msgstr "<b>Ctrl</b>: ĐżĐ”Ń€Đ”ŃŃƒĐœŃƒŃ‚Đž ĐČĐ·ĐŽĐŸĐČж ĐŸŃĐ”Đč, ĐșĐ»Đ°Ń†Đ°ĐœĐœŃ Đ·ĐŒŃ–ĐœŃŽŃ” топ ĐČузла"
-#: ../src/ui/tool/node.cpp:1461
+#: ../src/ui/tool/node.cpp:1462
msgctxt "Path node tip"
msgid "<b>Alt</b>: sculpt nodes"
msgstr "<b>Alt</b>: ĐœĐ°ĐŽĐ°Ń‚Đž Ń„ĐŸŃ€ĐŒŃƒ ĐČŃƒĐ·Đ»Đ°ĐŒ"
-#: ../src/ui/tool/node.cpp:1469
+#: ../src/ui/tool/node.cpp:1470
#, c-format
msgctxt "Path node tip"
msgid "<b>%s</b>: drag to shape the path (more: Shift, Ctrl, Alt)"
@@ -22730,17 +22732,17 @@ msgstr ""
"<b>%s</b>: ĐżĐ”Ń€Đ”Ń‚ŃĐłĐœŃ–Ń‚ŃŒ ĐČĐșазіĐČĐœĐžĐș, Ń‰ĐŸĐ± Đ·ĐŒŃ–ĐœĐžŃ‚Đž Ń„ĐŸŃ€ĐŒŃƒ ĐșĐŸĐœŃ‚ŃƒŃ€Ńƒ (Đ±Ń–Đ»ŃŒŃˆĐ”: Shift, "
"Ctrl, Alt)"
-#: ../src/ui/tool/node.cpp:1472
+#: ../src/ui/tool/node.cpp:1473
#, c-format
msgctxt "Path node tip"
msgid ""
-"<b>BSpline node</b>: %g weight, drag to shape the path (more: Shift, Ctrl, "
-"Alt)"
+"<b>BSpline node</b>: drag to shape the path (more: Shift, Ctrl, Alt). %g "
+"power"
msgstr ""
-"<b>Đ’ŃƒĐ·ĐŸĐ» B-сплаĐčĐœĐ°</b>: ĐČага %g, ĐżĐ”Ń€Đ”Ń‚ŃĐłĐœŃ–Ń‚ŃŒ ĐČĐșазіĐČĐœĐžĐș, Ń‰ĐŸĐ± Đ·ĐŒŃ–ĐœĐžŃ‚Đž Ń„ĐŸŃ€ĐŒŃƒ ĐșĐŸĐœŃ‚ŃƒŃ€Ńƒ "
-"(Đ±Ń–Đ»ŃŒŃˆĐ”: Shift, Ctrl, Alt)"
+"<b>Đ’ŃƒĐ·ĐŸĐ» B-сплаĐčĐœĐ°</b>: ĐżĐ”Ń€Đ”Ń‚ŃĐłĐœŃ–Ń‚ŃŒ ĐČĐșазіĐČĐœĐžĐș, Ń‰ĐŸĐ± Đ·ĐŒŃ–ĐœĐžŃ‚Đž Ń„ĐŸŃ€ĐŒŃƒ ĐșĐŸĐœŃ‚ŃƒŃ€Ńƒ "
+"(Đ±Ń–Đ»ŃŒŃˆĐ”: Shift, Ctrl, Alt). ĐŸĐŸŃ‚ŃƒĐ¶ĐœŃ–ŃŃ‚ŃŒ %g"
-#: ../src/ui/tool/node.cpp:1475
+#: ../src/ui/tool/node.cpp:1476
#, c-format
msgctxt "Path node tip"
msgid ""
@@ -22751,7 +22753,7 @@ msgstr ""
"ĐżĐ”Ń€Đ”ĐŒĐžĐșає Đ”Đ»Đ”ĐŒĐ”ĐœŃ‚Đž ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ ĐŒĐ°ŃŃˆŃ‚Đ°Đ±ŃƒĐČĐ°ĐœĐœŃ/ĐŸĐ±Đ”Ń€Ń‚Đ°ĐœĐœŃ (Đ±Ń–Đ»ŃŒŃˆĐ”: Shift, Ctrl, "
"Alt)"
-#: ../src/ui/tool/node.cpp:1479
+#: ../src/ui/tool/node.cpp:1480
#, c-format
msgctxt "Path node tip"
msgid ""
@@ -22761,52 +22763,54 @@ msgstr ""
"<b>%s</b>: ĐżĐ”Ń€Đ”Ń‚ŃĐłĐœŃ–Ń‚ŃŒ ĐČĐșазіĐČĐœĐžĐș, Ń‰ĐŸĐ± Đ·ĐŒŃ–ĐœĐžŃ‚Đž Ń„ĐŸŃ€ĐŒŃƒ ĐșĐŸĐœŃ‚ŃƒŃ€Ńƒ, ĐșĐ»Đ°Ń†ĐœŃ–Ń‚ŃŒ, Ń‰ĐŸĐ± "
"ĐżĐŸĐ·ĐœĐ°Ń‡ĐžŃ‚Đž лОшД цДĐč ĐČŃƒĐ·ĐŸĐ» (Đ±Ń–Đ»ŃŒŃˆĐ”: Shift, Ctrl, Alt)"
-#: ../src/ui/tool/node.cpp:1482
+#: ../src/ui/tool/node.cpp:1483
+#, c-format
msgctxt "Path node tip"
msgid ""
"<b>BSpline node</b>: drag to shape the path, click to select only this node "
-"(more: Shift, Ctrl, Alt)"
+"(more: Shift, Ctrl, Alt). %g power"
msgstr ""
"<b>Đ’ŃƒĐ·ĐŸĐ» B-сплаĐčĐœĐ°</b>: ĐżĐ”Ń€Đ”Ń‚ŃĐłĐœŃ–Ń‚ŃŒ ĐČĐșазіĐČĐœĐžĐș, Ń‰ĐŸĐ± Đ·ĐŒŃ–ĐœĐžŃ‚Đž Ń„ĐŸŃ€ĐŒŃƒ ĐșĐŸĐœŃ‚ŃƒŃ€Ńƒ, "
-"ĐșĐ»Đ°Ń†ĐœŃ–Ń‚ŃŒ, Ń‰ĐŸĐ± ĐżĐŸĐ·ĐœĐ°Ń‡ĐžŃ‚Đž лОшД цДĐč ĐČŃƒĐ·ĐŸĐ» (Đ±Ń–Đ»ŃŒŃˆĐ”: Shift, Ctrl, Alt)"
+"ĐșĐ»Đ°Ń†ĐœŃ–Ń‚ŃŒ, Ń‰ĐŸĐ± ĐżĐŸĐ·ĐœĐ°Ń‡ĐžŃ‚Đž лОшД цДĐč ĐČŃƒĐ·ĐŸĐ» (Đ±Ń–Đ»ŃŒŃˆĐ”: Shift, Ctrl, Alt). ĐŸĐŸŃ‚ŃƒĐ¶ĐœŃ–ŃŃ‚ŃŒ "
+"%g"
-#: ../src/ui/tool/node.cpp:1495
+#: ../src/ui/tool/node.cpp:1496
#, c-format
msgctxt "Path node tip"
msgid "Move node by %s, %s"
msgstr "ĐŸĐ”Ń€Đ”ŃŃƒĐœŃƒŃ‚Đž ĐČŃƒĐ·ĐŸĐ» ĐœĐ° %s, %s"
-#: ../src/ui/tool/node.cpp:1506
+#: ../src/ui/tool/node.cpp:1507
msgid "Symmetric node"
msgstr "ĐĄĐžĐŒĐ”Ń‚Ń€ĐžŃ‡ĐœĐžĐč ĐČŃƒĐ·ĐŸĐ»"
-#: ../src/ui/tool/node.cpp:1507
+#: ../src/ui/tool/node.cpp:1508
msgid "Auto-smooth node"
msgstr "АĐČŃ‚ĐŸĐŒĐ°Ń‚ĐžŃ‡ĐœĐŸ Đ·ĐłĐ»Đ°ĐŽĐ¶Đ”ĐœĐžĐč ĐČŃƒĐ·ĐŸĐ»"
-#: ../src/ui/tool/path-manipulator.cpp:836
+#: ../src/ui/tool/path-manipulator.cpp:837
msgid "Scale handle"
msgstr "ĐœĐ°ŃŃˆŃ‚Đ°Đ±ŃƒĐČато ĐČус"
-#: ../src/ui/tool/path-manipulator.cpp:860
+#: ../src/ui/tool/path-manipulator.cpp:861
msgid "Rotate handle"
msgstr "ОбДртатО ĐČус"
#. We need to call MPM's method because it could have been our last node
-#: ../src/ui/tool/path-manipulator.cpp:1524
+#: ../src/ui/tool/path-manipulator.cpp:1534
#: ../src/widgets/node-toolbar.cpp:397
msgid "Delete node"
msgstr "Đ’ĐžĐ»ŃƒŃ‡ĐžŃ‚Đž ĐČŃƒĐ·ĐŸĐ»"
-#: ../src/ui/tool/path-manipulator.cpp:1532
+#: ../src/ui/tool/path-manipulator.cpp:1542
msgid "Cycle node type"
msgstr "ĐŠĐžĐșĐ»Ń–Ń‡ĐœĐžĐč пДрДхіЎ Ń‚ĐžĐżĐ°ĐŒĐž ĐČузла"
-#: ../src/ui/tool/path-manipulator.cpp:1547
+#: ../src/ui/tool/path-manipulator.cpp:1557
msgid "Drag handle"
msgstr "ĐŸĐ”Ń€Đ”Ń‚ŃĐłŃƒĐČĐ°ĐœĐœŃ ĐČуса"
-#: ../src/ui/tool/path-manipulator.cpp:1556
+#: ../src/ui/tool/path-manipulator.cpp:1566
msgid "Retract handle"
msgstr "Đ’ĐžĐ»ŃƒŃ‡ĐžŃ‚Đž ĐČус"
@@ -23025,7 +23029,7 @@ msgstr ""
"ĐœĐ°ĐżŃ€ŃĐŒĐœĐŸŃ—, <b>КлаĐČіші-стрілĐșĐž</b> — ĐœĐ°Đ»Đ°ŃˆŃ‚ŃƒĐČĐ°ĐœĐœŃ Ń‚ĐŸĐČŃ‰ĐžĐœĐž (ліĐČĐŸŃ€ŃƒŃ‡/праĐČĐŸŃ€ŃƒŃ‡) "
"і Đșута (ĐČĐłĐŸŃ€Ńƒ/ĐČĐœĐžĐ·)."
-#: ../src/ui/tools-switch.cpp:107 ../src/ui/tools/text-tool.cpp:1584
+#: ../src/ui/tools-switch.cpp:107 ../src/ui/tools/text-tool.cpp:1583
msgid ""
"<b>Click</b> to select or create text, <b>drag</b> to create flowed text; "
"then type."
@@ -23102,7 +23106,7 @@ msgstr ""
"<b>Ctrl</b>: стĐČĐŸŃ€ŃŽŃ” ĐșĐŸĐ»ĐŸ Đ°Đ±ĐŸ Дліпс Đ· Ń†Ń–Đ»ĐžĐŒ ĐČŃ–ĐŽĐœĐŸŃˆĐ”ĐœĐœŃĐŒ ŃŃ‚ĐŸŃ€Ń–Đœ, ĐŸĐ±ĐŒĐ”Đ¶ŃƒŃ” Đșут "
"ЎугО/ŃĐ”ĐłĐŒĐ”ĐœŃ‚Đ°"
-#: ../src/ui/tools/arc-tool.cpp:243 ../src/ui/tools/rect-tool.cpp:279
+#: ../src/ui/tools/arc-tool.cpp:243 ../src/ui/tools/rect-tool.cpp:278
msgid "<b>Shift</b>: draw around the starting point"
msgstr "<b>Shift</b>: ĐŒĐ°Đ»ŃŽĐČато ĐœĐ°ĐČĐșĐŸĐ»ĐŸ ĐżĐŸŃ‡Đ°Ń‚ĐșĐŸĐČĐŸŃ— Ń‚ĐŸŃ‡ĐșĐž"
@@ -23198,17 +23202,17 @@ msgstr ""
"<b>ĐšŃ–ĐœŃ†Đ”ĐČа Đ·'Ń”ĐŽĐœŃƒĐČĐ°Đ»ŃŒĐœĐ° Ń‚ĐŸŃ‡Đșа</b>: ĐżĐ”Ń€Đ”Ń‚ŃĐłĐœŃ–Ń‚ŃŒ Ń‰ĐŸĐ± Đ·ĐŒŃ–ĐœĐžŃ‚Đž ĐœĐ°ĐżŃ€ŃĐŒĐŸĐș "
"Đ·'Ń”ĐŽĐœĐ°ĐœĐœŃ Đ°Đ±ĐŸ Đ·'Ń”ĐŽĐœĐ°ĐœĐœŃ Đ· ĐœĐŸĐČĐžĐŒĐž Ń„Ń–ĐłŃƒŃ€Đ°ĐŒĐž"
-#: ../src/ui/tools/connector-tool.cpp:1326
+#: ../src/ui/tools/connector-tool.cpp:1324
msgid "Select <b>at least one non-connector object</b>."
msgstr "ĐŸĐŸĐ·ĐœĐ°Ń‡Ń‚Đ” <b>ĐżŃ€ĐžĐœĐ°ĐčĐŒĐœŃ– ĐŽĐČа ĐŸĐ±'єĐșто</b> ĐŽĐ»Ń Đ·'Ń”ĐŽĐœĐ°ĐœĐœŃ."
-#: ../src/ui/tools/connector-tool.cpp:1331
-#: ../src/widgets/connector-toolbar.cpp:314
+#: ../src/ui/tools/connector-tool.cpp:1329
+#: ../src/widgets/connector-toolbar.cpp:310
msgid "Make connectors avoid selected objects"
msgstr "Đ—ĐŒŃƒŃĐžŃ‚Đž Đ»Ń–ĐœŃ–Ń— ĐŸĐłĐžĐœĐ°Ń‚Đž ĐČĐžĐ±Ń€Đ°ĐœŃ– ĐŸĐ±'єĐșто"
-#: ../src/ui/tools/connector-tool.cpp:1332
-#: ../src/widgets/connector-toolbar.cpp:324
+#: ../src/ui/tools/connector-tool.cpp:1330
+#: ../src/widgets/connector-toolbar.cpp:320
msgid "Make connectors ignore selected objects"
msgstr "Đ—ĐŒŃƒŃĐžŃ‚Đž Đ»Ń–ĐœŃ–Ń— Ń–ĐłĐœĐŸŃ€ŃƒĐČато ĐČĐžĐ±Ń€Đ°ĐœŃ– ĐŸĐ±'єĐșто"
@@ -23242,39 +23246,39 @@ msgstr "Đ’ŃŃ‚Đ°ĐœĐŸĐČото Đ·ĐœŃŃ‚ĐžĐč піпДтĐșĐŸŃŽ ĐșĐŸĐ»Ń–Ń€"
msgid "<b>Drawing</b> an eraser stroke"
msgstr "<b>ĐœĐ°Đ»ŃŽĐČĐ°ĐœĐœŃ</b> штроха ĐłŃƒĐŒĐșĐž"
-#: ../src/ui/tools/eraser-tool.cpp:760
+#: ../src/ui/tools/eraser-tool.cpp:753
msgid "Draw eraser stroke"
msgstr "ĐĐ°ĐŒĐ°Đ»ŃŽĐČато штрох ĐłŃƒĐŒĐșĐŸŃŽ"
-#: ../src/ui/tools/flood-tool.cpp:182
+#: ../src/ui/tools/flood-tool.cpp:90
msgid "Visible Colors"
msgstr "Đ’ĐžĐŽĐžĐŒŃ– ĐșĐŸĐ»ŃŒĐŸŃ€Đž"
-#: ../src/ui/tools/flood-tool.cpp:200
+#: ../src/ui/tools/flood-tool.cpp:102
msgctxt "Flood autogap"
msgid "None"
msgstr "ĐĐ”ĐŒĐ°Ń”"
-#: ../src/ui/tools/flood-tool.cpp:201
+#: ../src/ui/tools/flood-tool.cpp:103
msgctxt "Flood autogap"
msgid "Small"
msgstr "ĐœĐ°Đ»ĐžĐč"
-#: ../src/ui/tools/flood-tool.cpp:202
+#: ../src/ui/tools/flood-tool.cpp:104
msgctxt "Flood autogap"
msgid "Medium"
msgstr "ĐĄĐ”Ń€Đ”ĐŽĐœŃ–Đč"
-#: ../src/ui/tools/flood-tool.cpp:203
+#: ../src/ui/tools/flood-tool.cpp:105
msgctxt "Flood autogap"
msgid "Large"
msgstr "ВДлОĐșĐžĐč"
-#: ../src/ui/tools/flood-tool.cpp:425
+#: ../src/ui/tools/flood-tool.cpp:415
msgid "<b>Too much inset</b>, the result is empty."
msgstr "<b>ĐĐ°ĐŽŃ‚ĐŸ Đ±Đ°ĐłĐ°Ń‚ĐŸ ĐČтягуĐČĐ°ĐœŃŒ</b>, Ń€Đ”Đ·ŃƒĐ»ŃŒŃ‚Đ°Ń‚ ĐżĐŸŃ€ĐŸĐ¶ĐœŃ–Đč."
-#: ../src/ui/tools/flood-tool.cpp:466
+#: ../src/ui/tools/flood-tool.cpp:456
#, c-format
msgid ""
"Area filled, path with <b>%d</b> node created and unioned with selection."
@@ -23290,7 +23294,7 @@ msgstr[2] ""
"ĐžĐ±Đ»Đ°ŃŃ‚ŃŒ Đ·Đ°ĐżĐŸĐČĐœĐ”ĐœĐŸ, ĐșĐŸĐœŃ‚ŃƒŃ€ Đ· <b>%d</b> ĐČŃƒĐ·Đ»Đ°ĐŒĐž стĐČĐŸŃ€Đ”ĐœĐŸ та ĐżĐŸŃ”ĐŽĐœĐ°ĐœĐŸ Đ· "
"ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐŸŃŽ ĐŸĐ±Đ»Đ°ŃŃ‚ŃŽ."
-#: ../src/ui/tools/flood-tool.cpp:472
+#: ../src/ui/tools/flood-tool.cpp:462
#, c-format
msgid "Area filled, path with <b>%d</b> node created."
msgid_plural "Area filled, path with <b>%d</b> nodes created."
@@ -23298,11 +23302,11 @@ msgstr[0] "ĐžĐ±Đ»Đ°ŃŃ‚ŃŒ Đ·Đ°ĐżĐŸĐČĐœĐ”ĐœĐŸ, стĐČĐŸŃ€Đ”ĐœĐŸ ĐșĐŸĐœŃ‚ŃƒŃ€ Đ· <
msgstr[1] "ĐžĐ±Đ»Đ°ŃŃ‚ŃŒ Đ·Đ°ĐżĐŸĐČĐœĐ”ĐœĐŸ, стĐČĐŸŃ€Đ”ĐœĐŸ ĐșĐŸĐœŃ‚ŃƒŃ€ Đ· <b>%d</b> ĐČŃƒĐ·Đ»Đ°ĐŒĐž."
msgstr[2] "ĐžĐ±Đ»Đ°ŃŃ‚ŃŒ Đ·Đ°ĐżĐŸĐČĐœĐ”ĐœĐŸ, стĐČĐŸŃ€Đ”ĐœĐŸ ĐșĐŸĐœŃ‚ŃƒŃ€ Đ· <b>%d</b> ĐČŃƒĐ·Đ»Đ°ĐŒĐž."
-#: ../src/ui/tools/flood-tool.cpp:740 ../src/ui/tools/flood-tool.cpp:1050
+#: ../src/ui/tools/flood-tool.cpp:730 ../src/ui/tools/flood-tool.cpp:1040
msgid "<b>Area is not bounded</b>, cannot fill."
msgstr "<b>ĐžĐ±Đ»Đ°ŃŃ‚ŃŒ ĐœĐ” ĐŸĐ±ĐŒĐ”Đ¶Đ”ĐœĐ°</b>, Đ·Đ°ĐżĐŸĐČĐœĐ”ĐœĐœŃ ĐœĐ”ĐŒĐŸĐ¶Đ»ĐžĐČĐ”."
-#: ../src/ui/tools/flood-tool.cpp:1055
+#: ../src/ui/tools/flood-tool.cpp:1045
msgid ""
"<b>Only the visible part of the bounded area was filled.</b> If you want to "
"fill all of the area, undo, zoom out, and fill again."
@@ -23311,15 +23315,15 @@ msgstr ""
"Đ·Đ°ĐżĐŸĐČĐœĐžŃ‚Đž ĐČсю ĐŸĐ±Đ»Đ°ŃŃ‚ŃŒ, ĐČĐ”Ń€ĐœŃ–Ń‚ŃŒ Đ·ĐŒŃ–ĐœĐž, Đ·Ń€ĐŸĐ±Ń–Ń‚ŃŒ ĐŒĐ”ĐœŃˆĐžĐŒ ĐŒĐ°ŃŃˆŃ‚Đ°Đ± та Đ·Đ°ĐżĐŸĐČĐœŃ–Ń‚ŃŒ "
"Đ·ĐœĐŸĐČу."
-#: ../src/ui/tools/flood-tool.cpp:1073 ../src/ui/tools/flood-tool.cpp:1224
+#: ../src/ui/tools/flood-tool.cpp:1063 ../src/ui/tools/flood-tool.cpp:1214
msgid "Fill bounded area"
msgstr "Đ—Đ°ĐżĐŸĐČĐœĐ”ĐœĐœŃ Đ·Đ°ĐŒĐșĐœĐ”ĐœĐŸŃ— ĐŸĐ±Đ»Đ°ŃŃ‚Ń–"
-#: ../src/ui/tools/flood-tool.cpp:1089
+#: ../src/ui/tools/flood-tool.cpp:1079
msgid "Set style on object"
msgstr "Đ’ŃŃ‚Đ°ĐœĐŸĐČото ŃŃ‚ĐžĐ»ŃŒ ĐŸĐ±'єĐșта"
-#: ../src/ui/tools/flood-tool.cpp:1149
+#: ../src/ui/tools/flood-tool.cpp:1139
msgid "<b>Draw over</b> areas to add to fill, hold <b>Alt</b> for touch fill"
msgstr ""
"<b>ĐœĐ°Đ»ŃŽĐČато ĐżĐŸ</b> ĐŸĐ±Đ»Đ°ŃŃ‚ŃĐŒ ĐŽĐ»Ń ĐŽĐŸĐŽĐ°ĐČĐ°ĐœĐœŃ Đ·Đ°ĐżĐŸĐČĐœĐ”ĐœĐœŃ, про ŃƒŃ‚Ń€ĐžĐŒĐ°ĐœĐœŃ– <b>Alt</"
@@ -23413,23 +23417,23 @@ msgstr[2] "<b>Đ–ĐŸĐŽĐœĐŸĐłĐŸ</b> ĐČуса ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚Đ° Đ· %d ĐČ %d ĐČОбŃ
msgid "Simplify gradient"
msgstr "ĐĄĐżŃ€ĐŸŃŃ‚ĐžŃ‚Đž ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚"
-#: ../src/ui/tools/gradient-tool.cpp:509
+#: ../src/ui/tools/gradient-tool.cpp:510
msgid "Create default gradient"
msgstr "СтĐČĐŸŃ€ĐžŃ‚Đž Ń‚ĐžĐżĐŸĐČĐžĐč ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚"
-#: ../src/ui/tools/gradient-tool.cpp:568 ../src/ui/tools/mesh-tool.cpp:560
+#: ../src/ui/tools/gradient-tool.cpp:569 ../src/ui/tools/mesh-tool.cpp:561
msgid "<b>Draw around</b> handles to select them"
msgstr "<b>ОбĐČĐ”ĐŽŃ–Ń‚ŃŒ</b> ĐČуса, Ń‰ĐŸĐ± ĐČОбратО їх"
-#: ../src/ui/tools/gradient-tool.cpp:691
+#: ../src/ui/tools/gradient-tool.cpp:692
msgid "<b>Ctrl</b>: snap gradient angle"
msgstr "<b>Ctrl</b>: ĐŸĐ±ĐŒĐ”Đ¶ĐžŃ‚Đž Đșут ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚Đ°"
-#: ../src/ui/tools/gradient-tool.cpp:692
+#: ../src/ui/tools/gradient-tool.cpp:693
msgid "<b>Shift</b>: draw gradient around the starting point"
msgstr "<b>Shift</b>: ĐŒĐ°Đ»ŃŽĐČато ĐœĐ°ĐČĐșĐŸĐ»ĐŸ ĐżĐŸŃ‡Đ°Ń‚ĐșĐŸĐČĐŸŃ— Ń‚ĐŸŃ‡ĐșĐž"
-#: ../src/ui/tools/gradient-tool.cpp:946 ../src/ui/tools/mesh-tool.cpp:983
+#: ../src/ui/tools/gradient-tool.cpp:947 ../src/ui/tools/mesh-tool.cpp:984
#, c-format
msgid "<b>Gradient</b> for %d object; with <b>Ctrl</b> to snap angle"
msgid_plural "<b>Gradient</b> for %d objects; with <b>Ctrl</b> to snap angle"
@@ -23437,7 +23441,7 @@ msgstr[0] "<b>Đ“Ń€Đ°ĐŽŃ–Ń”ĐœŃ‚</b> ĐŽĐ»Ń %d ĐŸĐ±'єĐșта; <b>Ctrl</b> ĐŸĐ±ĐŒĐ”
msgstr[1] "<b>Đ“Ń€Đ°ĐŽŃ–Ń”ĐœŃ‚</b> ĐŽĐ»Ń %d ĐŸĐ±'єĐșтіĐČ; <b>Ctrl</b> ĐŸĐ±ĐŒĐ”Đ¶ŃƒŃ” Đșут"
msgstr[2] "<b>Đ“Ń€Đ°ĐŽŃ–Ń”ĐœŃ‚</b> ĐŽĐ»Ń %d ĐŸĐ±'єĐșтіĐČ; <b>Ctrl</b> ĐŸĐ±ĐŒĐ”Đ¶ŃƒŃ” Đșут"
-#: ../src/ui/tools/gradient-tool.cpp:950 ../src/ui/tools/mesh-tool.cpp:987
+#: ../src/ui/tools/gradient-tool.cpp:951 ../src/ui/tools/mesh-tool.cpp:988
msgid "Select <b>objects</b> on which to create gradient."
msgstr "ĐŸĐŸĐ·ĐœĐ°Ń‡Ń‚Đ” <b>ĐŸĐ±'єĐșто</b> ĐŽĐŸ яĐșох буЎД Đ·Đ°ŃŃ‚ĐŸŃĐŸĐČĐ°ĐœĐŸ ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚."
@@ -23498,19 +23502,19 @@ msgstr "ĐšĐŸĐ»Ń–Ń€ Đ·ĐłĐ»Đ°ĐŽĐ¶Đ”ĐœĐŸĐłĐŸ Đșута сітĐșĐž."
msgid "Picked mesh corner color."
msgstr "Đ’ĐžĐ±Ń€Đ°ĐœĐžĐč ĐșĐŸĐ»Ń–Ń€ Đșута сітĐșĐž."
-#: ../src/ui/tools/mesh-tool.cpp:488
+#: ../src/ui/tools/mesh-tool.cpp:489
msgid "Create default mesh"
msgstr "СтĐČĐŸŃ€ĐžŃ‚Đž Ń‚ĐžĐżĐŸĐČу сітĐșу"
-#: ../src/ui/tools/mesh-tool.cpp:708
+#: ../src/ui/tools/mesh-tool.cpp:709
msgid "FIXME<b>Ctrl</b>: snap mesh angle"
msgstr "<b>Ctrl</b>: ĐżŃ€ĐžĐ»ĐžĐżĐ°ĐœĐœŃ ĐŽĐŸ Đșута сітĐșĐž"
-#: ../src/ui/tools/mesh-tool.cpp:709
+#: ../src/ui/tools/mesh-tool.cpp:710
msgid "FIXME<b>Shift</b>: draw mesh around the starting point"
msgstr "<b>Shift</b>: ĐœĐ°ĐŒĐ°Đ»ŃŽĐČато ĐœĐ°ĐČĐșĐŸĐ»ĐŸ ĐżĐŸŃ‡Đ°Ń‚ĐșĐŸĐČĐŸŃ— Ń‚ĐŸŃ‡ĐșĐž сітĐșу"
-#: ../src/ui/tools/node-tool.cpp:602
+#: ../src/ui/tools/node-tool.cpp:601
msgctxt "Node tool tip"
msgid ""
"<b>Shift</b>: drag to add nodes to the selection, click to toggle object "
@@ -23519,12 +23523,12 @@ msgstr ""
"<b>Shift</b>: ĐżĐ”Ń€Đ”Ń‚ŃĐłĐœŃ–Ń‚ŃŒ, Ń‰ĐŸĐ± ĐŽĐŸĐŽĐ°Ń‚Đž ĐČузлО ĐŽĐŸ ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐŸĐłĐŸ, ĐșĐ»Đ°Ń†ĐœŃ–Ń‚ŃŒ, Ń‰ĐŸĐ± "
"ĐżĐ”Ń€Đ”ĐŒĐșĐœŃƒŃ‚Đž Ń€Đ”Đ¶ĐžĐŒ ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐœŃ ĐŸĐ±'єĐșтіĐČ"
-#: ../src/ui/tools/node-tool.cpp:606
+#: ../src/ui/tools/node-tool.cpp:605
msgctxt "Node tool tip"
msgid "<b>Shift</b>: drag to add nodes to the selection"
msgstr "<b>Shift</b>: ĐżĐ”Ń€Đ”Ń‚ŃĐłŃƒĐČĐ°ĐœĐœŃ ĐŽĐŸĐŽĐ°Ń” ĐČузлО ĐŽĐŸ ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐŸĐłĐŸ Ń„Ń€Đ°ĐłĐŒĐ”ĐœŃ‚Đ°"
-#: ../src/ui/tools/node-tool.cpp:618
+#: ../src/ui/tools/node-tool.cpp:617
#, c-format
msgid "<b>%u of %u</b> node selected."
msgid_plural "<b>%u of %u</b> nodes selected."
@@ -23532,7 +23536,7 @@ msgstr[0] "ĐŸĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐŸ <b>%u Đ· %u</b> ĐČузла."
msgstr[1] "ĐŸĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐŸ <b>%u Đ· %u</b> ĐČŃƒĐ·Đ»Ń–ĐČ."
msgstr[2] "ĐŸĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐŸ <b>%u Đ· %u</b> ĐČŃƒĐ·Đ»Ń–ĐČ."
-#: ../src/ui/tools/node-tool.cpp:624
+#: ../src/ui/tools/node-tool.cpp:623
#, c-format
msgctxt "Node tool tip"
msgid "%s Drag to select nodes, click to edit only this object (more: Shift)"
@@ -23540,38 +23544,38 @@ msgstr ""
"%s ĐŸĐ”Ń€Đ”Ń‚ŃĐłĐœŃ–Ń‚ŃŒ, Ń‰ĐŸĐ± ĐżĐŸĐ·ĐœĐ°Ń‡ĐžŃ‚Đž ĐČузлО, ĐșĐ»Đ°Ń†ĐœŃ–Ń‚ŃŒ, Ń‰ĐŸĐ± Ń€Đ”ĐŽĐ°ĐłŃƒĐČато лОшД цДĐč "
"ĐŸĐ±'єĐșт (Ń–ĐœŃˆĐ”: Shift)"
-#: ../src/ui/tools/node-tool.cpp:630
+#: ../src/ui/tools/node-tool.cpp:629
#, c-format
msgctxt "Node tool tip"
msgid "%s Drag to select nodes, click clear the selection"
msgstr ""
"%s ĐŸĐ”Ń€Đ”Ń‚ŃĐłĐœŃ–Ń‚ŃŒ ĐČĐșазіĐČĐœĐžĐș, Ń‰ĐŸĐ± ĐżĐŸĐ·ĐœĐ°Ń‡ĐžŃ‚Đž ĐČузлО, ĐșĐ»Đ°Ń†ĐœŃ–Ń‚ŃŒ, Ń‰ĐŸĐ± Đ·ĐœŃŃ‚Đž ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐœŃ"
-#: ../src/ui/tools/node-tool.cpp:639
+#: ../src/ui/tools/node-tool.cpp:638
msgctxt "Node tool tip"
msgid "Drag to select nodes, click to edit only this object"
msgstr ""
"ĐŸĐ”Ń€Đ”Ń‚ŃĐłĐœŃ–Ń‚ŃŒ, Ń‰ĐŸĐ± ĐżĐŸĐ·ĐœĐ°Ń‡ĐžŃ‚Đž ĐČузлО, ĐșĐ»Đ°Ń†ĐœŃ–Ń‚ŃŒ, Ń‰ĐŸĐ± Ń€Đ”ĐŽĐ°ĐłŃƒĐČато лОшД цДĐč ĐŸĐ±'єĐșт"
-#: ../src/ui/tools/node-tool.cpp:642
+#: ../src/ui/tools/node-tool.cpp:641
msgctxt "Node tool tip"
msgid "Drag to select nodes, click to clear the selection"
msgstr ""
"ĐŸĐ”Ń€Đ”Ń‚ŃĐłĐœŃ–Ń‚ŃŒ ĐČĐșазіĐČĐœĐžĐș, Ń‰ĐŸĐ± ĐżĐŸĐ·ĐœĐ°Ń‡ĐžŃ‚Đž ĐČузлО, ĐșĐ»Đ°Ń†ĐœŃ–Ń‚ŃŒ, Ń‰ĐŸĐ± Đ·ĐœŃŃ‚Đž ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐœŃ"
-#: ../src/ui/tools/node-tool.cpp:647
+#: ../src/ui/tools/node-tool.cpp:646
msgctxt "Node tool tip"
msgid "Drag to select objects to edit, click to edit this object (more: Shift)"
msgstr ""
"ĐŸĐ”Ń€Đ”Ń‚ŃĐłĐœŃ–Ń‚ŃŒ, Ń‰ĐŸĐ± ĐżĐŸĐ·ĐœĐ°Ń‡ĐžŃ‚Đž ĐŸĐ±'єĐșто Ń€Đ”ĐŽĐ°ĐłŃƒĐČĐ°ĐœĐœŃ, ĐșĐ»Đ°Ń†ĐœŃ–Ń‚ŃŒ ĐŽĐ»Ń Ń€Đ”ĐŽĐ°ĐłŃƒĐČĐ°ĐœĐœŃ "
"ĐżĐŸŃ‚ĐŸŃ‡ĐœĐŸĐłĐŸ ĐŸĐ±'єĐșта (Đ±Ń–Đ»ŃŒŃˆĐ”: Shift)"
-#: ../src/ui/tools/node-tool.cpp:650
+#: ../src/ui/tools/node-tool.cpp:649
msgctxt "Node tool tip"
msgid "Drag to select objects to edit"
msgstr "ĐŸĐ”Ń€Đ”Ń‚ŃĐłĐœŃ–Ń‚ŃŒ ĐČĐșазіĐČĐœĐžĐș ĐŽĐ»Ń ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐœŃ ĐŸĐ±'єĐșтіĐČ Ń€Đ”ĐŽĐ°ĐłŃƒĐČĐ°ĐœĐœŃ"
-#: ../src/ui/tools/pen-tool.cpp:224 ../src/ui/tools/pencil-tool.cpp:457
+#: ../src/ui/tools/pen-tool.cpp:224 ../src/ui/tools/pencil-tool.cpp:454
msgid "Drawing cancelled"
msgstr "ĐœĐ°Đ»ŃŽĐČĐ°ĐœĐœŃ сĐșĐ°ŃĐŸĐČĐ°ĐœĐŸ"
@@ -23692,11 +23696,11 @@ msgid "<b>Drag</b> to continue the path from this point."
msgstr "<b>ĐŸĐ”Ń€Đ”Ń‚ŃĐłĐœŃ–Ń‚ŃŒ</b> ĐŽĐ»Ń ĐżŃ€ĐŸĐŽĐŸĐČĐ¶Đ”ĐœĐœŃ ĐșĐŸĐœŃ‚ŃƒŃ€Ńƒ Đ· цієї Ń‚ĐŸŃ‡ĐșĐž."
#. Write curves to object
-#: ../src/ui/tools/pencil-tool.cpp:403
+#: ../src/ui/tools/pencil-tool.cpp:401
msgid "Finishing freehand"
msgstr "ĐšĐŸĐœŃ‚ŃƒŃ€ стĐČĐŸŃ€Đ”ĐœĐŸ"
-#: ../src/ui/tools/pencil-tool.cpp:506
+#: ../src/ui/tools/pencil-tool.cpp:503
msgid ""
"<b>Sketch mode</b>: holding <b>Alt</b> interpolates between sketched paths. "
"Release <b>Alt</b> to finalize."
@@ -23704,11 +23708,11 @@ msgstr ""
"<b>Đ Đ”Đ¶ĐžĐŒ ДсĐșіза</b>: ŃƒŃ‚Ń€ĐžĐŒŃƒĐČĐ°ĐœĐœŃ <b>Alt</b> ĐČĐžĐșĐŸĐœĐ°Ń” Ń–ĐœŃ‚Đ”Ń€ĐżĐŸĐ»ŃŃ†Ń–ŃŽ ĐșĐŸĐœŃ‚ŃƒŃ€Ń–ĐČ "
"ДсĐșіза. ВіЮпустіть <b>Alt</b>, Ń‰ĐŸĐ± заĐČĐ”Ń€ŃˆĐžŃ‚Đž ĐŒĐ°Đ»ŃŽĐČĐ°ĐœĐœŃ."
-#: ../src/ui/tools/pencil-tool.cpp:533
+#: ../src/ui/tools/pencil-tool.cpp:530
msgid "Finishing freehand sketch"
msgstr "ЗаĐČĐ”Ń€ŃˆĐ”ĐœĐœŃ ĐŽĐŸĐČŃ–Đ»ŃŒĐœĐŸĐłĐŸ ДсĐșіза"
-#: ../src/ui/tools/rect-tool.cpp:278
+#: ../src/ui/tools/rect-tool.cpp:277
msgid ""
"<b>Ctrl</b>: make square or integer-ratio rect, lock a rounded corner "
"circular"
@@ -23716,7 +23720,7 @@ msgstr ""
"<b>Ctrl</b>: ĐșĐČаЮрато чо ĐżŃ€ŃĐŒĐŸĐșŃƒŃ‚ĐœĐžĐș Đ· Ń†Ń–Đ»ĐžĐŒ ĐČŃ–ĐŽĐœĐŸŃˆĐ”ĐœĐœŃĐŒ ŃŃ‚ĐŸŃ€Ń–Đœ, ĐșŃ€ŃƒĐłĐ»Đ” "
"ĐŸĐșŃ€ŃƒĐłĐ»Đ”ĐœĐœŃ"
-#: ../src/ui/tools/rect-tool.cpp:439
+#: ../src/ui/tools/rect-tool.cpp:438
#, c-format
msgid ""
"<b>Rectangle</b>: %s &#215; %s (constrained to ratio %d:%d); with <b>Shift</"
@@ -23725,7 +23729,7 @@ msgstr ""
"<b>ĐŸŃ€ŃĐŒĐŸĐșŃƒŃ‚ĐœĐžĐș</b>: %s &#215; %s (ĐŸĐ±ĐŒĐ”Đ¶Đ”ĐœĐŸ ĐČŃ–ĐŽĐœĐŸŃˆĐ”ĐœĐœŃĐŒ %d:%d); за ĐŽĐŸĐżĐŸĐŒĐŸĐłĐŸŃŽ "
"<b>Shift</b> ĐŒĐŸĐ¶ĐœĐ° ĐŒĐ°Đ»ŃŽĐČато ĐœĐ°ĐČĐșĐŸĐ»ĐŸ ĐżĐŸŃ‡Đ°Ń‚ĐșĐŸĐČĐŸŃ— Ń‚ĐŸŃ‡ĐșĐž"
-#: ../src/ui/tools/rect-tool.cpp:442
+#: ../src/ui/tools/rect-tool.cpp:441
#, c-format
msgid ""
"<b>Rectangle</b>: %s &#215; %s (constrained to golden ratio 1.618 : 1); with "
@@ -23734,7 +23738,7 @@ msgstr ""
"<b>ĐŸŃ€ŃĐŒĐŸĐșŃƒŃ‚ĐœĐžĐș</b>: %s &#215; %s (ĐŸĐ±ĐŒĐ”Đ¶Đ”ĐœĐŸ ĐżĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€ĐŸĐŒ Â«Đ·ĐŸĐ»ĐŸŃ‚ĐŸĐłĐŸÂ» ĐżĐ”Ń€Đ”Ń€Ń–Đ·Ńƒ "
"1,618 : 1); за ĐŽĐŸĐżĐŸĐŒĐŸĐłĐŸŃŽ <b>Shift</b> ĐŒĐŸĐ¶ĐœĐ° ĐŒĐ°Đ»ŃŽĐČато ĐœĐ°ĐČĐșĐŸĐ»ĐŸ ĐżĐŸŃ‡Đ°Ń‚ĐșĐŸĐČĐŸŃ— Ń‚ĐŸŃ‡ĐșĐž"
-#: ../src/ui/tools/rect-tool.cpp:444
+#: ../src/ui/tools/rect-tool.cpp:443
#, c-format
msgid ""
"<b>Rectangle</b>: %s &#215; %s (constrained to golden ratio 1 : 1.618); with "
@@ -23743,7 +23747,7 @@ msgstr ""
"<b>ĐŸŃ€ŃĐŒĐŸĐșŃƒŃ‚ĐœĐžĐș</b>: %s &#215; %s (ĐŸĐ±ĐŒĐ”Đ¶Đ”ĐœĐŸ ĐżĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€ĐŸĐŒ Â«Đ·ĐŸĐ»ĐŸŃ‚ĐŸĐłĐŸÂ» ĐżĐ”Ń€Đ”Ń€Ń–Đ·Ńƒ "
"1 : 1,618); за ĐŽĐŸĐżĐŸĐŒĐŸĐłĐŸŃŽ <b>Shift</b> ĐŒĐŸĐ¶ĐœĐ° ĐŒĐ°Đ»ŃŽĐČато ĐœĐ°ĐČĐșĐŸĐ»ĐŸ ĐżĐŸŃ‡Đ°Ń‚ĐșĐŸĐČĐŸŃ— Ń‚ĐŸŃ‡ĐșĐž"
-#: ../src/ui/tools/rect-tool.cpp:448
+#: ../src/ui/tools/rect-tool.cpp:447
#, c-format
msgid ""
"<b>Rectangle</b>: %s &#215; %s; with <b>Ctrl</b> to make square or integer-"
@@ -23752,7 +23756,7 @@ msgstr ""
"<b>ĐŸŃ€ŃĐŒĐŸĐșŃƒŃ‚ĐœĐžĐș</b>: %s &#215; %s; <b>Ctrl</b> — ĐșĐČаЮрат чо ĐżŃ€ŃĐŒĐŸĐșŃƒŃ‚ĐœĐžĐș Đ· "
"Ń†Ń–Đ»ĐžĐŒ ĐČŃ–ĐŽĐœĐŸŃˆĐ”ĐœĐœŃĐŒ ŃŃ‚ĐŸŃ€Ń–Đœ, <b>Shift</b> — ĐŒĐ°Đ»ŃŽĐČато ĐœĐ°ĐČĐșĐŸĐ»ĐŸ ĐżĐŸŃ‡Đ°Ń‚ĐșĐŸĐČĐŸŃ— Ń‚ĐŸŃ‡ĐșĐž"
-#: ../src/ui/tools/rect-tool.cpp:471
+#: ../src/ui/tools/rect-tool.cpp:470
msgid "Create rectangle"
msgstr "СтĐČĐŸŃ€ĐžŃ‚Đž ĐżŃ€ŃĐŒĐŸĐșŃƒŃ‚ĐœĐžĐș"
@@ -23793,19 +23797,19 @@ msgstr ""
"<b>ĐœĐ°Đ»ŃŽĐČато ĐœĐ°ĐČĐșĐŸĐ»ĐŸ</b> ĐŸĐ±'єĐșтіĐČ ĐŽĐ»Ń Ń—Ń…ĐœŃŒĐŸĐłĐŸ ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐœŃ; ĐČіЮпустіть <b>Alt</"
"b> ĐŽĐ»Ń ĐżĐ”Ń€Đ”Ń…ĐŸĐŽŃƒ ĐŽĐŸ ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐœŃ ĐŽĐŸŃ‚ĐžĐșĐŸĐŒ"
-#: ../src/ui/tools/select-tool.cpp:941
+#: ../src/ui/tools/select-tool.cpp:939
msgid "<b>Ctrl</b>: click to select in groups; drag to move hor/vert"
msgstr ""
"<b>Ctrl</b>: ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐœŃ у групі; ĐżĐ”Ń€Đ”Ń‚ŃĐłŃƒĐČĐ°ĐœĐœŃ — ĐżĐ”Ń€Đ”ĐŒŃ–Ń‰Đ”ĐœĐœŃ ĐżĐŸ ĐłĐŸŃ€ĐžĐ·ĐŸĐœŃ‚Đ°Đ»Ń–/"
"ĐČДртОĐșалі"
-#: ../src/ui/tools/select-tool.cpp:942
+#: ../src/ui/tools/select-tool.cpp:940
msgid "<b>Shift</b>: click to toggle select; drag for rubberband selection"
msgstr ""
"<b>Shift</b>: ĐżĐŸĐ·ĐœĐ°Ń‡ĐžŃ‚Đž/Đ·ĐœŃŃ‚Đž ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐœŃ; ĐżĐ”Ń€Đ”Ń‚ŃĐłŃƒĐČĐ°ĐœĐœŃ — ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐœŃ ĐłŃƒĐŒĐŸĐČĐŸŃŽ "
"ĐœĐžŃ‚ĐșĐŸŃŽ"
-#: ../src/ui/tools/select-tool.cpp:943
+#: ../src/ui/tools/select-tool.cpp:941
msgid ""
"<b>Alt</b>: click to select under; scroll mouse-wheel to cycle-select; drag "
"to move selected or select by touch"
@@ -23813,7 +23817,7 @@ msgstr ""
"<b>Alt</b>: ĐșĐ»Đ°Ń†ĐœŃ–Ń‚ŃŒ ĐŽĐ»Ń ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐœŃ; ĐżŃ€ĐŸĐșручуĐČĐ°ĐœĐœŃ ĐșĐŸĐ»Ń–Ń‰Đ°Ń‚Đșа — цоĐșĐ»Ń–Ń‡ĐœĐžĐč "
"ĐČОбір; ĐżĐ”Ń€Đ”Ń‚ŃĐłŃƒĐČĐ°ĐœĐœŃ — ĐżĐ”Ń€Đ”ĐŒŃ–Ń‰Đ”ĐœĐœŃ ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐŸŃ— ĐŸĐ±Đ»Đ°ŃŃ‚Ń– чо ĐČОбір Ń‚ĐŸŃ€ĐșĐ°ĐœĐœŃĐŒ"
-#: ../src/ui/tools/select-tool.cpp:1151
+#: ../src/ui/tools/select-tool.cpp:1149
msgid "Selected object is not a group. Cannot enter."
msgstr "ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐžĐč ĐŸĐ±'єĐșт ĐœĐ” є ĐłŃ€ŃƒĐżĐŸŃŽ. ĐĐ”ĐŒĐŸĐ¶Đ»ĐžĐČĐŸ уĐČіĐčто."
@@ -23874,19 +23878,19 @@ msgstr ""
"%s. ĐŸĐ”Ń€Đ”Ń‚ŃĐłĐœŃ–Ń‚ŃŒ, ĐșĐ»Đ°Ń†ĐœŃ–Ń‚ŃŒ Đ°Đ±ĐŸ ĐœĐ°Ń‚ĐžŃĐœŃ–Ń‚ŃŒ і ĐżŃ€ĐŸĐșрутіть ĐșĐŸĐ»Ń–Ń‰Đ°Ń‚ĐșĐŸ ĐŒĐžŃˆŃ–, Ń‰ĐŸĐ± "
"Ń€ĐŸĐ·ĐșоЮато <b>ĐŸĐșŃ€Đ”ĐŒĐžĐč ĐșĐŸĐœŃ‚ŃƒŃ€</b> ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐŸŃ— ĐŸĐ±Đ»Đ°ŃŃ‚Ń–."
-#: ../src/ui/tools/spray-tool.cpp:654
+#: ../src/ui/tools/spray-tool.cpp:648
msgid "<b>Nothing selected!</b> Select objects to spray."
msgstr "<b>ĐŃ–Ń‡ĐŸĐłĐŸ ĐœĐ” ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐŸ!</b> ĐŸĐŸĐ·ĐœĐ°Ń‡Ń‚Đ” ĐŸĐ±'єĐșто, яĐșі сліЎ Ń€ĐŸĐ·ĐșоЮато."
-#: ../src/ui/tools/spray-tool.cpp:729 ../src/widgets/spray-toolbar.cpp:166
+#: ../src/ui/tools/spray-tool.cpp:723 ../src/widgets/spray-toolbar.cpp:166
msgid "Spray with copies"
msgstr "Đ ĐŸĐ·ĐșĐžĐŽĐ°ĐœĐœŃ ĐșĐŸĐżŃ–Đč"
-#: ../src/ui/tools/spray-tool.cpp:733 ../src/widgets/spray-toolbar.cpp:173
+#: ../src/ui/tools/spray-tool.cpp:727 ../src/widgets/spray-toolbar.cpp:173
msgid "Spray with clones"
msgstr "Đ ĐŸĐ·ĐșĐžĐŽĐ°ĐœĐœŃ ĐșĐ»ĐŸĐœŃ–ĐČ"
-#: ../src/ui/tools/spray-tool.cpp:737
+#: ../src/ui/tools/spray-tool.cpp:731
msgid "Spray in single path"
msgstr "Đ ĐŸĐ·ĐșĐžĐŽĐ°ĐœĐœŃ ĐŸĐșŃ€Đ”ĐŒĐŸĐłĐŸ ĐșĐŸĐœŃ‚ŃƒŃ€Ńƒ"
@@ -24037,7 +24041,7 @@ msgstr "Đ—Đ±Ń–Đ»ŃŒŃˆĐ”ĐœĐœŃ ĐŒŃ–Đ¶Ń€ŃĐŽĐșĐŸĐČĐŸĐłĐŸ ĐżŃ€ĐŸĐŒŃ–Đ¶Đșу"
msgid "Paste text"
msgstr "ВстаĐČото тДĐșст"
-#: ../src/ui/tools/text-tool.cpp:1574
+#: ../src/ui/tools/text-tool.cpp:1573
#, c-format
msgid ""
"Type or edit flowed text (%d character%s); <b>Enter</b> to start new "
@@ -24055,7 +24059,7 @@ msgstr[2] ""
"ВĐČĐ”ĐŽŃ–Ń‚ŃŒ Đ°Đ±ĐŸ Đ·ĐŒŃ–ĐœŃ–Ń‚ŃŒ тДĐșст за ĐșĐŸĐœŃ‚ŃƒŃ€ĐŸĐŒ (%d ŃĐžĐŒĐČĐŸĐ»Ń–ĐČ%s); <b>Enter</b> ĐżĐŸŃ‡ĐžĐœĐ°Ń” "
"ĐœĐŸĐČĐžĐč абзац."
-#: ../src/ui/tools/text-tool.cpp:1576
+#: ../src/ui/tools/text-tool.cpp:1575
#, c-format
msgid "Type or edit text (%d character%s); <b>Enter</b> to start new line."
msgid_plural ""
@@ -24069,11 +24073,11 @@ msgstr[2] ""
"ВĐČĐ”ĐŽŃ–Ń‚ŃŒ Đ°Đ±ĐŸ Đ·ĐŒŃ–ĐœŃ–Ń‚ŃŒ тДĐșст (%d ŃĐžĐŒĐČĐŸĐ»Ń–ĐČ%s); <b>Enter</b> — ĐżĐŸŃ‡Đ°Ń‚ĐŸĐș ĐœĐŸĐČĐŸĐłĐŸ "
"ряЮĐșа."
-#: ../src/ui/tools/text-tool.cpp:1686
+#: ../src/ui/tools/text-tool.cpp:1685
msgid "Type text"
msgstr "ДруĐș тДĐșсту"
-#: ../src/ui/tools/tool-base.cpp:705
+#: ../src/ui/tools/tool-base.cpp:701
msgid "<b>Space+mouse move</b> to pan canvas"
msgstr "<b>ĐŸŃ€ĐŸĐ±Ń–Đ»+ĐżĐ”Ń€Đ”ŃŃƒĐČĐ°ĐœĐœŃ ĐŒĐžŃˆŃ–</b> ĐŽĐ»Ń ĐżĐ”Ń€Đ”ĐŒŃ–Ń‰Đ”ĐœĐœŃ ĐżĐŸĐ»ĐŸŃ‚ĐœĐ°"
@@ -24158,59 +24162,59 @@ msgstr ""
"%s. ĐŸĐ”Ń€Đ”Ń‚ŃĐłĐœŃ–Ń‚ŃŒ Đ°Đ±ĐŸ ĐșĐ»Đ°Ń†ĐœŃ–Ń‚ŃŒ ĐŽĐ»Ń <b>Đ·Đ±Ń–Đ»ŃŒŃˆĐ”ĐœĐœŃ Ń€ĐŸĐ·ĐŒĐžĐČĐ°ĐœĐœŃ</b>; Đ· Shift — ĐŽĐ»Ń "
"<b>Đ·ĐŒĐ”ĐœŃˆĐ”ĐœĐœŃ</b>."
-#: ../src/ui/tools/tweak-tool.cpp:1195
+#: ../src/ui/tools/tweak-tool.cpp:1192
msgid "<b>Nothing selected!</b> Select objects to tweak."
msgstr "<b>ĐŃ–Ń‡ĐŸĐłĐŸ ĐœĐ” ĐČĐžĐ±Ń€Đ°ĐœĐŸ!</b> ĐžĐ±Đ”Ń€Ń–Ń‚ŃŒ ĐŸĐ±'єĐșт(Đž) ĐŽĐ»Ń ĐșĐŸŃ€Đ”Đșції."
-#: ../src/ui/tools/tweak-tool.cpp:1229
+#: ../src/ui/tools/tweak-tool.cpp:1226
msgid "Move tweak"
msgstr "ĐšĐŸŃ€Đ”Đșція ĐżĐ”Ń€Đ”ŃŃƒĐČĐ°ĐœĐœŃĐŒ"
-#: ../src/ui/tools/tweak-tool.cpp:1233
+#: ../src/ui/tools/tweak-tool.cpp:1230
msgid "Move in/out tweak"
msgstr "ĐšĐŸŃ€Đ”Đșція протягуĐČĐ°ĐœĐœŃĐŒ/ĐČŃ–ĐŽŃˆŃ‚ĐŸĐČхуĐČĐ°ĐœĐœŃĐŒ"
-#: ../src/ui/tools/tweak-tool.cpp:1237
+#: ../src/ui/tools/tweak-tool.cpp:1234
msgid "Move jitter tweak"
msgstr "ĐšĐŸŃ€Đ”Đșція ĐČОпаЎĐșĐŸĐČĐžĐŒ ĐżĐ”Ń€Đ”ŃŃƒĐČĐ°ĐœĐœŃĐŒ"
-#: ../src/ui/tools/tweak-tool.cpp:1241
+#: ../src/ui/tools/tweak-tool.cpp:1238
msgid "Scale tweak"
msgstr "ĐšĐŸŃ€Đ”Đșція ĐŒĐ°ŃŃˆŃ‚Đ°Đ±ŃƒĐČĐ°ĐœĐœŃĐŒ"
-#: ../src/ui/tools/tweak-tool.cpp:1245
+#: ../src/ui/tools/tweak-tool.cpp:1242
msgid "Rotate tweak"
msgstr "ĐšĐŸŃ€Đ”Đșція ĐŸĐ±Đ”Ń€Ń‚Đ°ĐœĐœŃĐŒ"
-#: ../src/ui/tools/tweak-tool.cpp:1249
+#: ../src/ui/tools/tweak-tool.cpp:1246
msgid "Duplicate/delete tweak"
msgstr "ĐšĐŸŃ€Đ”Đșція ĐŽŃƒĐ±Đ»ŃŽĐČĐ°ĐœĐœŃ/ĐČĐžĐ»ŃƒŃ‡Đ”ĐœĐœŃ"
-#: ../src/ui/tools/tweak-tool.cpp:1253
+#: ../src/ui/tools/tweak-tool.cpp:1250
msgid "Push path tweak"
msgstr "ĐšĐŸŃ€Đ”Đșція ŃˆŃ‚ĐŸĐČŃ…Đ°ĐœĐœŃĐŒ ĐșĐŸĐœŃ‚ŃƒŃ€Ń–ĐČ"
-#: ../src/ui/tools/tweak-tool.cpp:1257
+#: ../src/ui/tools/tweak-tool.cpp:1254
msgid "Shrink/grow path tweak"
msgstr "ĐšĐŸŃ€Đ”Đșція ĐČтягуĐČĐ°ĐœĐœŃĐŒ/ĐČотягуĐČĐ°ĐœĐœŃĐŒ ĐșĐŸĐœŃ‚ŃƒŃ€Ń–ĐČ"
-#: ../src/ui/tools/tweak-tool.cpp:1261
+#: ../src/ui/tools/tweak-tool.cpp:1258
msgid "Attract/repel path tweak"
msgstr "ĐšĐŸŃ€Đ”Đșція ĐżŃ€ĐžŃ‚ŃĐłĐ°ĐœĐœŃĐŒ/ĐČŃ–ĐŽŃˆŃ‚ĐŸĐČхуĐČĐ°ĐœĐœŃĐŒ ĐșĐŸĐœŃ‚ŃƒŃ€Ń–ĐČ"
-#: ../src/ui/tools/tweak-tool.cpp:1265
+#: ../src/ui/tools/tweak-tool.cpp:1262
msgid "Roughen path tweak"
msgstr "ĐšĐŸŃ€Đ”Đșція ĐłŃ€ŃƒĐ±Ń–ŃˆĐ°ĐœĐœŃĐŒ ĐșĐŸĐœŃ‚ŃƒŃ€Ń–ĐČ"
-#: ../src/ui/tools/tweak-tool.cpp:1269
+#: ../src/ui/tools/tweak-tool.cpp:1266
msgid "Color paint tweak"
msgstr "ĐšĐŸŃ€Đ”Đșція залОĐČĐ°ĐœĐœŃĐŒ ĐșĐŸĐ»ŃŒĐŸŃ€ĐŸĐŒ"
-#: ../src/ui/tools/tweak-tool.cpp:1273
+#: ../src/ui/tools/tweak-tool.cpp:1270
msgid "Color jitter tweak"
msgstr "ĐšĐŸŃ€Đ”Đșція ĐżĐ”Ń€Đ”Đ±ĐŸŃ€ĐŸĐŒ ĐșĐŸĐ»ŃŒĐŸŃ€Ń–ĐČ"
-#: ../src/ui/tools/tweak-tool.cpp:1277
+#: ../src/ui/tools/tweak-tool.cpp:1274
msgid "Blur tweak"
msgstr "ĐšĐŸŃ€Đ”Đșція Ń€ĐŸĐ·ĐŒĐžĐČĐ°ĐœĐœŃĐŒ"
@@ -24256,86 +24260,102 @@ msgstr "ĐžĐœĐŸĐČĐ»Đ”ĐœĐŸ ŃƒĐŒĐŸĐČĐž Đ»Ń–Ń†Đ”ĐœĐ·ŃƒĐČĐ°ĐœĐœŃ ĐŽĐŸĐșŃƒĐŒĐ”ĐœŃ‚Đ°"
msgid "Opacity (%)"
msgstr "ĐĐ”ĐżŃ€ĐŸĐ·ĐŸŃ€Ń–ŃŃ‚ŃŒ (у %)"
-#: ../src/ui/widget/object-composite-settings.cpp:159
+#: ../src/ui/widget/object-composite-settings.cpp:160
msgid "Change blur"
msgstr "Đ—ĐŒŃ–ĐœĐ° Ń€ĐŸĐ·ĐŒĐžĐČĐ°ĐœĐœŃ"
-#: ../src/ui/widget/object-composite-settings.cpp:199
+#: ../src/ui/widget/object-composite-settings.cpp:200
#: ../src/ui/widget/selected-style.cpp:943
#: ../src/ui/widget/selected-style.cpp:1245
msgid "Change opacity"
msgstr "Đ—ĐŒŃ–ĐœĐ° ĐœĐ”ĐżŃ€ĐŸĐ·ĐŸŃ€ĐŸŃŃ‚Ń–"
-#: ../src/ui/widget/page-sizer.cpp:235
+#: ../src/ui/widget/page-sizer.cpp:236
msgid "U_nits:"
msgstr "О_ĐŽĐžĐœĐžŃ†Ń–:"
-#: ../src/ui/widget/page-sizer.cpp:236
+#: ../src/ui/widget/page-sizer.cpp:237
msgid "Width of paper"
msgstr "ĐšĐžŃ€ĐžĐœĐ° ĐżĐŸĐ»ĐŸŃ‚ĐœĐ°"
-#: ../src/ui/widget/page-sizer.cpp:237
+#: ../src/ui/widget/page-sizer.cpp:238
msgid "Height of paper"
msgstr "Đ’ĐžŃĐŸŃ‚Đ° ĐżĐŸĐ»ĐŸŃ‚ĐœĐ°"
-#: ../src/ui/widget/page-sizer.cpp:238
+#: ../src/ui/widget/page-sizer.cpp:239
msgid "T_op margin:"
msgstr "_Đ’Đ”Ń€Ń…ĐœŃ” ĐżĐŸĐ»Đ”:"
-#: ../src/ui/widget/page-sizer.cpp:238
+#: ../src/ui/widget/page-sizer.cpp:239
msgid "Top margin"
msgstr "Đ’Đ”Ń€Ń…ĐœŃ” ĐżĐŸĐ»Đ”"
-#: ../src/ui/widget/page-sizer.cpp:239
+#: ../src/ui/widget/page-sizer.cpp:240
msgid "L_eft:"
msgstr "_ЛіĐČĐ”:"
-#: ../src/ui/widget/page-sizer.cpp:239
+#: ../src/ui/widget/page-sizer.cpp:240
msgid "Left margin"
msgstr "ЛіĐČĐ” ĐżĐŸĐ»Đ”"
-#: ../src/ui/widget/page-sizer.cpp:240
+#: ../src/ui/widget/page-sizer.cpp:241
msgid "Ri_ght:"
msgstr "_ПраĐČĐ”:"
-#: ../src/ui/widget/page-sizer.cpp:240
+#: ../src/ui/widget/page-sizer.cpp:241
msgid "Right margin"
msgstr "ПраĐČĐ” ĐżĐŸĐ»Đ”"
-#: ../src/ui/widget/page-sizer.cpp:241
+#: ../src/ui/widget/page-sizer.cpp:242
msgid "Botto_m:"
msgstr "Но_Đ¶ĐœŃ”:"
-#: ../src/ui/widget/page-sizer.cpp:241
+#: ../src/ui/widget/page-sizer.cpp:242
msgid "Bottom margin"
msgstr "ĐĐžĐ¶ĐœŃ” ĐżĐŸĐ»Đ”"
-#: ../src/ui/widget/page-sizer.cpp:296
+#: ../src/ui/widget/page-sizer.cpp:244
+msgid "Scale _x:"
+msgstr "ĐœĐ°ŃŃˆŃ‚Đ°Đ± за _x:"
+
+#: ../src/ui/widget/page-sizer.cpp:244
+msgid "Scale X"
+msgstr "ĐœĐ°ŃŃˆŃ‚Đ°Đ± за X"
+
+#: ../src/ui/widget/page-sizer.cpp:245
+msgid "Scale _y:"
+msgstr "ĐœĐ°ŃŃˆŃ‚Đ°Đ± за _y:"
+
+#: ../src/ui/widget/page-sizer.cpp:245
+msgid "Scale Y"
+msgstr "ĐœĐ°ŃŃˆŃ‚Đ°Đ± за Y"
+
+#: ../src/ui/widget/page-sizer.cpp:321
msgid "Orientation:"
msgstr "ĐžŃ€Ń–Ń”ĐœŃ‚Đ°Ń†Ń–Ń:"
-#: ../src/ui/widget/page-sizer.cpp:299
+#: ../src/ui/widget/page-sizer.cpp:324
msgid "_Landscape"
msgstr "_ĐĐ»ŃŒĐ±ĐŸĐŒĐœĐ°"
-#: ../src/ui/widget/page-sizer.cpp:304
+#: ../src/ui/widget/page-sizer.cpp:329
msgid "_Portrait"
msgstr "ĐšĐœĐž_жĐșĐŸĐČа"
#. ## Set up custom size frame
-#: ../src/ui/widget/page-sizer.cpp:322
+#: ../src/ui/widget/page-sizer.cpp:348
msgid "Custom size"
msgstr "ĐžŃĐŸĐ±Đ»ĐžĐČĐžĐč Ń€ĐŸĐ·ĐŒŃ–Ń€"
-#: ../src/ui/widget/page-sizer.cpp:367
+#: ../src/ui/widget/page-sizer.cpp:393
msgid "Resi_ze page to content..."
msgstr "_Đ ĐŸĐ·ĐŒŃ–Ń€ ŃŃ‚ĐŸŃ€Ń–ĐœĐșĐž за ĐČĐŒŃ–ŃŃ‚ĐŸĐŒâ€Š"
-#: ../src/ui/widget/page-sizer.cpp:419
+#: ../src/ui/widget/page-sizer.cpp:445
msgid "_Resize page to drawing or selection"
msgstr "_ĐŸŃ–ĐŽŃ–ĐłĐœĐ°Ń‚Đž Ń€ĐŸĐ·ĐŒŃ–Ń€ за ĐŒĐ°Đ»ŃŽĐœĐșĐŸĐŒ Đ°Đ±ĐŸ ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐŸŃŽ ĐŸĐ±Đ»Đ°ŃŃ‚ŃŽ"
-#: ../src/ui/widget/page-sizer.cpp:420
+#: ../src/ui/widget/page-sizer.cpp:446
msgid ""
"Resize the page to fit the current selection, or the entire drawing if there "
"is no selection"
@@ -24343,105 +24363,131 @@ msgstr ""
"Đ—ĐŒŃ–ĐœĐžŃ‚Đž ĐŒĐ°ŃŃˆŃ‚Đ°Đ± ŃŃ‚ĐŸŃ€Ń–ĐœĐșĐž ĐŽĐ»Ń ĐČŃ–ĐŽĐżĐŸĐČŃ–ĐŽĐœĐŸŃŃ‚Ń– ĐżĐŸŃ‚ĐŸŃ‡ĐœĐŸĐŒŃƒ Ń„Ń€Đ°ĐłĐŒĐ”ĐœŃ‚Ńƒ Đ°Đ±ĐŸ ĐČŃŃŒĐŸĐŒŃƒ "
"Ń€ĐžŃŃƒĐœĐșу, яĐșŃ‰ĐŸ Ń„Ń€Đ°ĐłĐŒĐ”ĐœŃ‚ ĐœĐ” ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐžĐč"
-#: ../src/ui/widget/page-sizer.cpp:489
+#: ../src/ui/widget/page-sizer.cpp:477
+msgid ""
+"While SVG allows non-uniform scaling it is recommended to use only uniform "
+"scaling in Inkscape. To set a non-uniform scaling, set the 'viewBox' "
+"directly."
+msgstr ""
+"Đ„ĐŸŃ‡Đ° у SVG ĐżĐ”Ń€Đ”ĐŽĐ±Đ°Ń‡Đ”ĐœĐŸ ĐœĐ”ĐŸĐŽĐœĐŸŃ€Ń–ĐŽĐœĐ” ĐŒĐ°ŃŃˆŃ‚Đ°Đ±ŃƒĐČĐ°ĐœĐœŃ, рДĐșĐŸĐŒĐ”ĐœĐŽŃƒŃ”ĐŒĐŸ ĐČĐ°ĐŒ "
+"ĐČĐžĐșĐŸŃ€ĐžŃŃ‚ĐŸĐČуĐČато у Inkscape лОшД ĐŸĐŽĐœĐŸŃ€Ń–ĐŽĐœĐ” ĐŒĐ°ŃŃˆŃ‚Đ°Đ±ŃƒĐČĐ°ĐœĐœŃ. Đ©ĐŸĐ± ĐČŃŃ‚Đ°ĐœĐŸĐČото "
+"ĐœĐ”ĐŸĐŽĐœĐŸŃ€Ń–ĐŽĐœĐ” ĐŒĐ°ŃŃˆŃ‚Đ°Đ±ŃƒĐČĐ°ĐœĐœŃ, ĐČĐșĐ°Đ¶Ń–Ń‚ŃŒ «viewBox» Đ±Đ”Đ·ĐżĐŸŃĐ”Ń€Đ”ĐŽĐœŃŒĐŸ."
+
+#: ../src/ui/widget/page-sizer.cpp:481
+msgid "_Viewbox..."
+msgstr "ĐŸĐŸĐ»Đ” Đż_Đ”Ń€Đ”ĐłĐ»ŃĐŽŃƒâ€Š"
+
+#: ../src/ui/widget/page-sizer.cpp:588
msgid "Set page size"
msgstr "Đ’ŃŃ‚Đ°ĐœĐŸĐČĐ»Đ”ĐœĐœŃ Ń€ĐŸĐ·ĐŒŃ–Ń€Ńƒ ŃŃ‚ĐŸŃ€Ń–ĐœĐșĐž"
-#: ../src/ui/widget/panel.cpp:117
+#: ../src/ui/widget/page-sizer.cpp:834
+msgid "User units per "
+msgstr "ĐžĐŽĐžĐœĐžŃ†ŃŒ ĐșĐŸŃ€ĐžŃŃ‚ŃƒĐČача "
+
+#: ../src/ui/widget/page-sizer.cpp:930
+msgid "Set page scale"
+msgstr "Đ’ŃŃ‚Đ°ĐœĐŸĐČото ĐŒĐ°ŃŃˆŃ‚Đ°Đ± ŃŃ‚ĐŸŃ€Ń–ĐœĐșĐž"
+
+#: ../src/ui/widget/page-sizer.cpp:956
+msgid "Set 'viewBox'"
+msgstr "Đ’ŃŃ‚Đ°ĐœĐŸĐČото «viewBox»"
+
+#: ../src/ui/widget/panel.cpp:113
msgid "List"
msgstr "ĐĄĐżĐžŃĐŸĐș"
-#: ../src/ui/widget/panel.cpp:140
+#: ../src/ui/widget/panel.cpp:136
msgctxt "Swatches"
msgid "Size"
msgstr "Đ ĐŸĐ·ĐŒŃ–Ń€"
-#: ../src/ui/widget/panel.cpp:144
+#: ../src/ui/widget/panel.cpp:140
msgctxt "Swatches height"
msgid "Tiny"
msgstr "ĐšŃ€ĐžŃ…Ń–Ń‚ĐœĐ°"
-#: ../src/ui/widget/panel.cpp:145
+#: ../src/ui/widget/panel.cpp:141
msgctxt "Swatches height"
msgid "Small"
msgstr "ĐœĐ°Đ»Đ°"
-#: ../src/ui/widget/panel.cpp:146
+#: ../src/ui/widget/panel.cpp:142
msgctxt "Swatches height"
msgid "Medium"
msgstr "ĐĄĐ”Ń€Đ”ĐŽĐœŃ"
-#: ../src/ui/widget/panel.cpp:147
+#: ../src/ui/widget/panel.cpp:143
msgctxt "Swatches height"
msgid "Large"
msgstr "ВДлОĐșа"
-#: ../src/ui/widget/panel.cpp:148
+#: ../src/ui/widget/panel.cpp:144
msgctxt "Swatches height"
msgid "Huge"
msgstr "Đ’Đ”Đ»ĐžŃ‡Đ”Đ·ĐœĐ°"
-#: ../src/ui/widget/panel.cpp:170
+#: ../src/ui/widget/panel.cpp:166
msgctxt "Swatches"
msgid "Width"
msgstr "ĐšĐžŃ€ĐžĐœĐ°"
-#: ../src/ui/widget/panel.cpp:174
+#: ../src/ui/widget/panel.cpp:170
msgctxt "Swatches width"
msgid "Narrower"
msgstr "Đ’ŃƒĐ¶Ń‡Đ°"
-#: ../src/ui/widget/panel.cpp:175
+#: ../src/ui/widget/panel.cpp:171
msgctxt "Swatches width"
msgid "Narrow"
msgstr "Đ’ŃƒĐ·ŃŒĐșа"
-#: ../src/ui/widget/panel.cpp:176
+#: ../src/ui/widget/panel.cpp:172
msgctxt "Swatches width"
msgid "Medium"
msgstr "ĐĄĐ”Ń€Đ”ĐŽĐœŃ"
-#: ../src/ui/widget/panel.cpp:177
+#: ../src/ui/widget/panel.cpp:173
msgctxt "Swatches width"
msgid "Wide"
msgstr "ĐšĐžŃ€ĐŸĐșа"
-#: ../src/ui/widget/panel.cpp:178
+#: ../src/ui/widget/panel.cpp:174
msgctxt "Swatches width"
msgid "Wider"
msgstr "йорша"
-#: ../src/ui/widget/panel.cpp:208
+#: ../src/ui/widget/panel.cpp:204
msgctxt "Swatches"
msgid "Border"
msgstr "Đ Đ°ĐŒĐșа"
-#: ../src/ui/widget/panel.cpp:212
+#: ../src/ui/widget/panel.cpp:208
msgctxt "Swatches border"
msgid "None"
msgstr "ĐĐ”ĐŒĐ°Ń”"
-#: ../src/ui/widget/panel.cpp:213
+#: ../src/ui/widget/panel.cpp:209
msgctxt "Swatches border"
msgid "Solid"
msgstr "ĐĄŃƒŃ†Ń–Đ»ŃŒĐœĐ°"
-#: ../src/ui/widget/panel.cpp:214
+#: ../src/ui/widget/panel.cpp:210
msgctxt "Swatches border"
msgid "Wide"
msgstr "ĐšĐžŃ€ĐŸĐșа"
#. TRANSLATORS: "Wrap" indicates how colour swatches are displayed
-#: ../src/ui/widget/panel.cpp:245
+#: ../src/ui/widget/panel.cpp:241
msgctxt "Swatches"
msgid "Wrap"
msgstr "З ĐżĐ”Ń€Đ”ĐœĐ”ŃĐ”ĐœĐœŃĐŒ"
-#: ../src/ui/widget/preferences-widget.cpp:802
+#: ../src/ui/widget/preferences-widget.cpp:798
msgid "_Browse..."
msgstr "Во_братО "
-#: ../src/ui/widget/preferences-widget.cpp:888
+#: ../src/ui/widget/preferences-widget.cpp:884
msgid "Select a bitmap editor"
msgstr "Đ’ĐžĐ±Đ”Ń€Ń–Ń‚ŃŒ рДЎаĐșŃ‚ĐŸŃ€ Ń€Đ°ŃŃ‚Ń€ĐŸĐČĐŸŃ— графіĐșĐž"
@@ -24509,7 +24555,7 @@ msgstr "Н/Д"
#: ../src/ui/widget/selected-style.cpp:181
#: ../src/ui/widget/selected-style.cpp:1112
#: ../src/ui/widget/selected-style.cpp:1113
-#: ../src/widgets/gradient-toolbar.cpp:162
+#: ../src/widgets/gradient-toolbar.cpp:163
msgid "Nothing selected"
msgstr "ĐŃ–Ń‡ĐŸĐłĐŸ ĐœĐ” ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐŸ"
@@ -24536,7 +24582,7 @@ msgid "No stroke"
msgstr "БДз штроха"
#: ../src/ui/widget/selected-style.cpp:192
-#: ../src/ui/widget/style-swatch.cpp:300 ../src/widgets/paint-selector.cpp:234
+#: ../src/ui/widget/style-swatch.cpp:300 ../src/widgets/paint-selector.cpp:231
msgid "Pattern"
msgstr "Đ—Đ°ĐżĐŸĐČĐœĐ”ĐœĐœŃ ĐČŃ–Đ·Đ”Ń€ŃƒĐœĐșĐŸĐŒ"
@@ -24611,14 +24657,14 @@ msgstr "<b>ĐĐ” ĐČŃŃ‚Đ°ĐœĐŸĐČĐ»Đ”ĐœĐŸ</b>"
#: ../src/ui/widget/selected-style.cpp:237
#: ../src/ui/widget/selected-style.cpp:295
#: ../src/ui/widget/selected-style.cpp:575
-#: ../src/ui/widget/style-swatch.cpp:326 ../src/widgets/fill-style.cpp:709
+#: ../src/ui/widget/style-swatch.cpp:326 ../src/widgets/fill-style.cpp:705
msgid "Unset fill"
msgstr "ĐĐ” залОĐČато"
#: ../src/ui/widget/selected-style.cpp:237
#: ../src/ui/widget/selected-style.cpp:295
#: ../src/ui/widget/selected-style.cpp:591
-#: ../src/ui/widget/style-swatch.cpp:326 ../src/widgets/fill-style.cpp:709
+#: ../src/ui/widget/style-swatch.cpp:326 ../src/widgets/fill-style.cpp:705
msgid "Unset stroke"
msgstr "Đ—ĐœŃŃ‚Ń‚Ń штроха"
@@ -24696,12 +24742,12 @@ msgid "Make stroke opaque"
msgstr "Đ—Ń€ĐŸĐ±ĐžŃ‚Đž штрохо ĐœĐ”ĐżŃ€ĐŸĐ·ĐŸŃ€ĐžĐŒĐž"
#: ../src/ui/widget/selected-style.cpp:299
-#: ../src/ui/widget/selected-style.cpp:557 ../src/widgets/fill-style.cpp:508
+#: ../src/ui/widget/selected-style.cpp:557 ../src/widgets/fill-style.cpp:504
msgid "Remove fill"
msgstr "Đ’ĐžĐ»ŃƒŃ‡ĐžŃ‚Đž Đ·Đ°ĐżĐŸĐČĐœĐ”ĐœĐœŃ"
#: ../src/ui/widget/selected-style.cpp:299
-#: ../src/ui/widget/selected-style.cpp:566 ../src/widgets/fill-style.cpp:508
+#: ../src/ui/widget/selected-style.cpp:566 ../src/widgets/fill-style.cpp:504
msgid "Remove stroke"
msgstr "Đ’ĐžĐ»ŃƒŃ‡ĐžŃ‚Đž штрох"
@@ -24905,7 +24951,7 @@ msgstr "Об'Ń”ĐŽĐœĐ°Ń‚Đž Ń‚ĐŸŃ‡ĐșĐž ŃŃ…ĐŸĐŽŃƒ"
msgid "3D box: Move vanishing point"
msgstr "ĐŸŃ€ĐŸŃŃ‚ĐŸŃ€ĐŸĐČĐžĐč ĐŸĐ±'єĐșт: ĐŸĐ”Ń€Đ”ŃŃƒĐČĐ°ĐœĐœŃ Ń‚ĐŸŃ‡ĐșĐž ŃŃ…ĐŸĐŽŃƒ"
-#: ../src/vanishing-point.cpp:327
+#: ../src/vanishing-point.cpp:328
#, c-format
msgid "<b>Finite</b> vanishing point shared by <b>%d</b> box"
msgid_plural ""
@@ -24917,7 +24963,7 @@ msgstr[2] "<b>ĐĄĐșŃ–ĐœŃ‡Đ”ĐœĐœĐ°</b> Ń‚ĐŸŃ‡Đșа ŃŃ…ĐŸĐŽŃƒ, ŃĐżŃ–Đ»ŃŒĐœĐ° ĐŽĐ»Ń
#. This won't make sense any more when infinite VPs are not shown on the canvas,
#. but currently we update the status message anyway
-#: ../src/vanishing-point.cpp:334
+#: ../src/vanishing-point.cpp:335
#, c-format
msgid "<b>Infinite</b> vanishing point shared by <b>%d</b> box"
msgid_plural ""
@@ -24927,7 +24973,7 @@ msgstr[0] "<b>ĐĐ”ŃĐșŃ–ĐœŃ‡Đ”ĐœĐœĐ°</b> Ń‚ĐŸŃ‡Đșа ŃŃ…ĐŸĐŽŃƒ ĐŽĐ»Ń <b>%d</b>
msgstr[1] "<b>ĐĐ”ŃĐșŃ–ĐœŃ‡Đ”ĐœĐœĐ°</b> Ń‚ĐŸŃ‡Đșа ŃŃ…ĐŸĐŽŃƒ, ŃĐżŃ–Đ»ŃŒĐœĐ° ĐŽĐ»Ń <b>%d</b> ĐŸĐ±'єĐșтіĐČ"
msgstr[2] "<b>ĐĐ”ŃĐșŃ–ĐœŃ‡Đ”ĐœĐœĐ°</b> Ń‚ĐŸŃ‡Đșа ŃŃ…ĐŸĐŽŃƒ, ŃĐżŃ–Đ»ŃŒĐœĐ° ĐŽĐ»Ń <b>%d</b> ĐŸĐ±'єĐșтіĐČ"
-#: ../src/vanishing-point.cpp:342
+#: ../src/vanishing-point.cpp:343
#, c-format
msgid ""
"shared by <b>%d</b> box; drag with <b>Shift</b> to separate selected box(es)"
@@ -24944,269 +24990,264 @@ msgstr[2] ""
"ĐŒŃ–ŃŃ‚ĐžŃ‚ŃŒŃŃ у <b>%d</b> ĐŸĐ±'єĐșтах; ĐżĐ”Ń€Đ”Ń‚ŃĐłĐœŃ–Ń‚ŃŒ, ŃƒŃ‚Ń€ĐžĐŒŃƒŃŽŃ‡Đž <b>Shift</b>, Ń‰ĐŸĐ± "
"ĐČŃ–ĐŽĐŸĐșŃ€Đ”ĐŒĐžŃ‚Đž ĐČĐžĐ±Ń€Đ°ĐœŃ– ĐŸĐ±'єĐșто"
-#: ../src/verbs.cpp:138
+#: ../src/verbs.cpp:137
msgid "File"
msgstr "ЀаĐčĐ»"
-#: ../src/verbs.cpp:233 ../share/extensions/interp_att_g.inx.h:22
+#: ../src/verbs.cpp:232 ../share/extensions/interp_att_g.inx.h:22
msgid "Tag"
msgstr "МітĐșа"
-#: ../src/verbs.cpp:252
+#: ../src/verbs.cpp:251
msgid "Context"
msgstr "ĐšĐŸĐœŃ‚Đ”Đșст"
-#: ../src/verbs.cpp:271 ../src/verbs.cpp:2302
+#: ../src/verbs.cpp:270 ../src/verbs.cpp:2271
#: ../share/extensions/jessyInk_view.inx.h:1
#: ../share/extensions/polyhedron_3d.inx.h:26
msgid "View"
msgstr "ĐŸĐ”Ń€Đ”ĐłĐ»ŃĐŽ"
-#: ../src/verbs.cpp:291
+#: ../src/verbs.cpp:290
msgid "Dialog"
msgstr "Đ”Ń–Đ°Đ»ĐŸĐłĐŸĐČĐ” ĐČіĐșĐœĐŸ"
-#: ../src/verbs.cpp:1260
+#: ../src/verbs.cpp:1259
msgid "Switch to next layer"
msgstr "ĐŸĐ”Ń€Đ”ĐŒĐșĐœŃƒŃ‚ĐžŃŃ ĐœĐ° ĐœĐ°ŃŃ‚ŃƒĐżĐœĐžĐč шар"
-#: ../src/verbs.cpp:1261
+#: ../src/verbs.cpp:1260
msgid "Switched to next layer."
msgstr "ĐŸĐ”Ń€Đ”ĐŒĐžĐșĐ°ĐœĐœŃ ĐœĐ° ĐœĐ°ŃŃ‚ŃƒĐżĐœĐžĐč шар."
-#: ../src/verbs.cpp:1263
+#: ../src/verbs.cpp:1262
msgid "Cannot go past last layer."
msgstr "ĐĐ”ĐŒĐŸĐ¶Đ»ĐžĐČĐŸ ĐżĐ”Ń€Đ”ĐŒŃ–ŃŃ‚ĐžŃ‚ĐžŃŃ ĐČОщД за ĐŸŃŃ‚Đ°ĐœĐœŃ–Đč шар."
-#: ../src/verbs.cpp:1272
+#: ../src/verbs.cpp:1271
msgid "Switch to previous layer"
msgstr "ĐŸĐ”Ń€Đ”ĐŒĐșĐœŃƒŃ‚ĐžŃŃ ĐœĐ° ĐżĐŸĐżĐ”Ń€Đ”ĐŽĐœŃ–Đč шар"
-#: ../src/verbs.cpp:1273
+#: ../src/verbs.cpp:1272
msgid "Switched to previous layer."
msgstr "ĐŸĐ”Ń€Đ”ĐŒĐžĐșĐ°ĐœĐœŃ ĐœĐ° ĐżĐŸĐżĐ”Ń€Đ”ĐŽĐœŃ–Đč шар."
-#: ../src/verbs.cpp:1275
+#: ../src/verbs.cpp:1274
msgid "Cannot go before first layer."
msgstr "ĐĐ”ĐŒĐŸĐ¶Đ»ĐžĐČĐŸ ĐżĐ”Ń€Đ”ĐŒŃ–ŃŃ‚ĐžŃ‚ĐžŃŃ ĐœĐžĐ¶Ń‡Đ” за ĐżĐ”Ń€ŃˆĐžĐč шар."
-#: ../src/verbs.cpp:1296 ../src/verbs.cpp:1393 ../src/verbs.cpp:1429
-#: ../src/verbs.cpp:1435 ../src/verbs.cpp:1459 ../src/verbs.cpp:1474
+#: ../src/verbs.cpp:1295 ../src/verbs.cpp:1362 ../src/verbs.cpp:1398
+#: ../src/verbs.cpp:1404 ../src/verbs.cpp:1428 ../src/verbs.cpp:1443
msgid "No current layer."
msgstr "ĐĐ”ĐŒĐ°Ń” ĐżĐŸŃ‚ĐŸŃ‡ĐœĐŸĐłĐŸ шару."
-#: ../src/verbs.cpp:1325 ../src/verbs.cpp:1329
+#: ../src/verbs.cpp:1324 ../src/verbs.cpp:1328
#, c-format
msgid "Raised layer <b>%s</b>."
msgstr "йар <b>%s</b> ĐżŃ–ĐŽĐœŃŃ‚ĐŸ."
-#: ../src/verbs.cpp:1326
+#: ../src/verbs.cpp:1325
msgid "Layer to top"
msgstr "ĐŸŃ–ĐŽĐœŃŃ‚Đž шар ĐœĐ°ĐłĐŸŃ€Ńƒ"
-#: ../src/verbs.cpp:1330
+#: ../src/verbs.cpp:1329
msgid "Raise layer"
msgstr "ĐŸŃ–ĐŽĐœŃŃ‚Đž шар"
-#: ../src/verbs.cpp:1333 ../src/verbs.cpp:1337
+#: ../src/verbs.cpp:1332 ../src/verbs.cpp:1336
#, c-format
msgid "Lowered layer <b>%s</b>."
msgstr "йар <b>%s</b> ĐŸĐżŃƒŃ‰Đ”ĐœĐŸ."
-#: ../src/verbs.cpp:1334
+#: ../src/verbs.cpp:1333
msgid "Layer to bottom"
msgstr "Опустото шар ĐŽĐŸĐŽĐŸĐ»Ńƒ"
-#: ../src/verbs.cpp:1338
+#: ../src/verbs.cpp:1337
msgid "Lower layer"
msgstr "Опустото шар"
-#: ../src/verbs.cpp:1347
+#: ../src/verbs.cpp:1346
msgid "Cannot move layer any further."
msgstr "ĐĐ”ĐŒĐŸĐ¶Đ»ĐžĐČĐŸ ĐżĐ”Ń€Đ”ĐŒŃ–ŃŃ‚ĐžŃ‚Đž шар Ўалі."
-#: ../src/verbs.cpp:1361 ../src/verbs.cpp:1380
-#, c-format
-msgid "%s copy"
-msgstr "ĐšĐŸĐżŃ–Ń %s"
-
-#: ../src/verbs.cpp:1388
+#: ../src/verbs.cpp:1357
msgid "Duplicate layer"
msgstr "Đ”ŃƒĐ±Đ»ŃŽĐČато шар"
#. TRANSLATORS: this means "The layer has been duplicated."
-#: ../src/verbs.cpp:1391
+#: ../src/verbs.cpp:1360
msgid "Duplicated layer."
msgstr "Đ”ŃƒĐ±Đ»ŃŒĐŸĐČĐ°ĐœĐžĐč шар."
-#: ../src/verbs.cpp:1424
+#: ../src/verbs.cpp:1393
msgid "Delete layer"
msgstr "Đ’ĐžĐ»ŃƒŃ‡ĐžŃ‚Đž шар"
#. TRANSLATORS: this means "The layer has been deleted."
-#: ../src/verbs.cpp:1427
+#: ../src/verbs.cpp:1396
msgid "Deleted layer."
msgstr "йар ĐČĐžĐ»ŃƒŃ‡Đ”ĐœĐŸ."
-#: ../src/verbs.cpp:1444
+#: ../src/verbs.cpp:1413
msgid "Show all layers"
msgstr "ĐŸĐŸĐșазатО ĐČсі шаро"
-#: ../src/verbs.cpp:1449
+#: ../src/verbs.cpp:1418
msgid "Hide all layers"
msgstr "ĐŸŃ€ĐžŃ…ĐŸĐČато ĐČсі шаро"
-#: ../src/verbs.cpp:1454
+#: ../src/verbs.cpp:1423
msgid "Lock all layers"
msgstr "Đ—Đ°Đ±Đ»ĐŸĐșуĐČато ĐČсі шаро"
-#: ../src/verbs.cpp:1468
+#: ../src/verbs.cpp:1437
msgid "Unlock all layers"
msgstr "Đ ĐŸĐ·Đ±Đ»ĐŸĐșуĐČато ĐČсі шаро"
-#: ../src/verbs.cpp:1552
+#: ../src/verbs.cpp:1521
msgid "Flip horizontally"
msgstr "ВіЎЎзДрĐșалОтО ĐłĐŸŃ€ĐžĐ·ĐŸĐœŃ‚Đ°Đ»ŃŒĐœĐŸ"
-#: ../src/verbs.cpp:1557
+#: ../src/verbs.cpp:1526
msgid "Flip vertically"
msgstr "ВіЎЎзДрĐșалОтО ĐČДртОĐșĐ°Đ»ŃŒĐœĐŸ"
-#: ../src/verbs.cpp:1614 ../src/verbs.cpp:2727
+#: ../src/verbs.cpp:1583 ../src/verbs.cpp:2696
msgid "Create new selection set"
msgstr "СтĐČĐŸŃ€ĐžŃ‚Đž ĐœĐŸĐČĐžĐč ĐœĐ°Đ±Ń–Ń€ ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐŸĐłĐŸ"
#. TRANSLATORS: If you have translated the tutorial-basic.en.svgz file to your language,
#. then translate this string as "tutorial-basic.LANG.svgz" (where LANG is your language
#. code); otherwise leave as "tutorial-basic.svg".
-#: ../src/verbs.cpp:2184
+#: ../src/verbs.cpp:2153
msgid "tutorial-basic.svg"
msgstr "tutorial-basic.svg"
#. TRANSLATORS: See "tutorial-basic.svg" comment.
-#: ../src/verbs.cpp:2188
+#: ../src/verbs.cpp:2157
msgid "tutorial-shapes.svg"
msgstr "tutorial-shapes.svg"
#. TRANSLATORS: See "tutorial-basic.svg" comment.
-#: ../src/verbs.cpp:2192
+#: ../src/verbs.cpp:2161
msgid "tutorial-advanced.svg"
msgstr "tutorial-advanced.svg"
#. TRANSLATORS: See "tutorial-basic.svg" comment.
-#: ../src/verbs.cpp:2196
+#: ../src/verbs.cpp:2165
msgid "tutorial-tracing.svg"
msgstr "tutorial-tracing.svg"
-#: ../src/verbs.cpp:2199
+#: ../src/verbs.cpp:2168
msgid "tutorial-tracing-pixelart.svg"
msgstr "tutorial-tracing-pixelart.svg"
#. TRANSLATORS: See "tutorial-basic.svg" comment.
-#: ../src/verbs.cpp:2203
+#: ../src/verbs.cpp:2172
msgid "tutorial-calligraphy.svg"
msgstr "tutorial-calligraphy.svg"
#. TRANSLATORS: See "tutorial-basic.svg" comment.
-#: ../src/verbs.cpp:2207
+#: ../src/verbs.cpp:2176
msgid "tutorial-interpolate.svg"
msgstr "tutorial-interpolate.svg"
#. TRANSLATORS: See "tutorial-basic.svg" comment.
-#: ../src/verbs.cpp:2211
+#: ../src/verbs.cpp:2180
msgid "tutorial-elements.svg"
msgstr "tutorial-elements.svg"
#. TRANSLATORS: See "tutorial-basic.svg" comment.
-#: ../src/verbs.cpp:2215
+#: ../src/verbs.cpp:2184
msgid "tutorial-tips.svg"
msgstr "tutorial-tips.svg"
-#: ../src/verbs.cpp:2401 ../src/verbs.cpp:3000
+#: ../src/verbs.cpp:2370 ../src/verbs.cpp:2969
msgid "Unlock all objects in the current layer"
msgstr "Đ ĐŸĐ·Đ±Đ»ĐŸĐșуĐČато усі ĐŸĐ±'єĐșто у ĐżĐŸŃ‚ĐŸŃ‡ĐœĐŸĐŒŃƒ шарі"
-#: ../src/verbs.cpp:2405 ../src/verbs.cpp:3002
+#: ../src/verbs.cpp:2374 ../src/verbs.cpp:2971
msgid "Unlock all objects in all layers"
msgstr "Đ ĐŸĐ·Đ±Đ»ĐŸĐșуĐČато усі ĐŸĐ±'єĐșто ĐČ ŃƒŃŃ–Ń… шарах"
-#: ../src/verbs.cpp:2409 ../src/verbs.cpp:3004
+#: ../src/verbs.cpp:2378 ../src/verbs.cpp:2973
msgid "Unhide all objects in the current layer"
msgstr "Đ ĐŸĐ·Đ±Đ»ĐŸĐșуĐČато усі ĐŸĐ±'єĐșто у ĐżĐŸŃ‚ĐŸŃ‡ĐœĐŸĐŒŃƒ шарі"
-#: ../src/verbs.cpp:2413 ../src/verbs.cpp:3006
+#: ../src/verbs.cpp:2382 ../src/verbs.cpp:2975
msgid "Unhide all objects in all layers"
msgstr "ĐŸĐŸĐșазатО усі ĐŸĐ±'єĐșто ĐČ ŃƒŃŃ–Ń… шарах"
-#: ../src/verbs.cpp:2428
+#: ../src/verbs.cpp:2397
msgctxt "Verb"
msgid "None"
msgstr "ĐĐ”ĐŒĐ°Ń”"
-#: ../src/verbs.cpp:2428
+#: ../src/verbs.cpp:2397
msgid "Does nothing"
msgstr "ĐĐ”ĐŒĐ°Ń” ЮіĐč"
#. File
#. Tag
-#: ../src/verbs.cpp:2431 ../src/verbs.cpp:2726
+#: ../src/verbs.cpp:2400 ../src/verbs.cpp:2695
msgid "_New"
msgstr "_СтĐČĐŸŃ€ĐžŃ‚Đž"
-#: ../src/verbs.cpp:2431
+#: ../src/verbs.cpp:2400
msgid "Create new document from the default template"
msgstr "СтĐČĐŸŃ€ĐžŃ‚Đž ĐœĐŸĐČĐžĐč ĐŽĐŸĐșŃƒĐŒĐ”ĐœŃ‚ Đ·Ń– ŃŃ‚Đ°ĐœĐŽĐ°Ń€Ń‚ĐœĐŸĐłĐŸ ŃˆĐ°Đ±Đ»ĐŸĐœŃƒ"
-#: ../src/verbs.cpp:2433
+#: ../src/verbs.cpp:2402
msgid "_Open..."
msgstr "_ВіЮĐșрото
"
-#: ../src/verbs.cpp:2434
+#: ../src/verbs.cpp:2403
msgid "Open an existing document"
msgstr "ВіЮĐșрото Ń–ŃĐœŃƒŃŽŃ‡ĐžĐč ĐŽĐŸĐșŃƒĐŒĐ”ĐœŃ‚"
-#: ../src/verbs.cpp:2435
+#: ../src/verbs.cpp:2404
msgid "Re_vert"
msgstr "ВіЮ_ĐœĐŸĐČото"
-#: ../src/verbs.cpp:2436
+#: ../src/verbs.cpp:2405
msgid "Revert to the last saved version of document (changes will be lost)"
msgstr "Đ’Ń–ĐŽĐœĐŸĐČото ĐŸŃŃ‚Đ°ĐœĐœŃŽ Đ·Đ±Đ”Ń€Đ”Đ¶Đ”ĐœŃƒ ĐČДрсію ĐŽĐŸĐșŃƒĐŒĐ”ĐœŃ‚Đ° (Đ·ĐŒŃ–ĐœĐž Đ±ŃƒĐŽŃƒŃ‚ŃŒ ĐČŃ‚Ń€Đ°Ń‡Đ”ĐœŃ–)"
-#: ../src/verbs.cpp:2437
+#: ../src/verbs.cpp:2406
msgid "Save document"
msgstr "ЗбДрДгтО ĐŽĐŸĐșŃƒĐŒĐ”ĐœŃ‚"
-#: ../src/verbs.cpp:2439
+#: ../src/verbs.cpp:2408
msgid "Save _As..."
msgstr "ЗбДрДгтО _яĐș
"
-#: ../src/verbs.cpp:2440
+#: ../src/verbs.cpp:2409
msgid "Save document under a new name"
msgstr "ЗбДрДгтО ĐŽĐŸĐșŃƒĐŒĐ”ĐœŃ‚ піЮ Ń–ĐœŃˆĐŸŃŽ ĐœĐ°Đ·ĐČĐŸŃŽ"
-#: ../src/verbs.cpp:2441
+#: ../src/verbs.cpp:2410
msgid "Save a Cop_y..."
msgstr "ЗбДрДгтО _ĐșĐŸĐżŃ–ŃŽâ€Š"
-#: ../src/verbs.cpp:2442
+#: ../src/verbs.cpp:2411
msgid "Save a copy of the document under a new name"
msgstr "ЗбДрДгтО ĐșĐŸĐżŃ–ŃŽ ĐŽĐŸĐșŃƒĐŒĐ”ĐœŃ‚Đ° піЮ Ń–ĐœŃˆĐŸŃŽ ĐœĐ°Đ·ĐČĐŸŃŽ"
-#: ../src/verbs.cpp:2443
+#: ../src/verbs.cpp:2412
msgid "_Print..."
msgstr "НаЮ_руĐșуĐČато
"
-#: ../src/verbs.cpp:2443
+#: ../src/verbs.cpp:2412
msgid "Print document"
msgstr "НаЮруĐșуĐČато ĐŽĐŸĐșŃƒĐŒĐ”ĐœŃ‚"
#. TRANSLATORS: "Vacuum Defs" means "Clean up defs" (so as to remove unused definitions)
-#: ../src/verbs.cpp:2446
+#: ../src/verbs.cpp:2415
msgid "Clean _up document"
msgstr "О_чостото ĐŽĐŸĐșŃƒĐŒĐ”ĐœŃ‚"
-#: ../src/verbs.cpp:2446
+#: ../src/verbs.cpp:2415
msgid ""
"Remove unused definitions (such as gradients or clipping paths) from the &lt;"
"defs&gt; of the document"
@@ -25214,145 +25255,145 @@ msgstr ""
"ĐŸŃ€ĐžĐ±Ń€Đ°Ń‚Đž ĐœĐ”ĐżĐŸŃ‚Ń€Ń–Đ±ĐœŃ– ĐČĐžĐ·ĐœĐ°Ń‡Đ”ĐœĐœŃ (ĐœĐ°ĐżŃ€ĐžĐșлаЎ, ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚Đž чо ĐČĐžŃ€Ń–Đ·Đ°ĐœĐœŃ) Đ· &lt;"
"defs&gt; ĐŽĐŸĐșŃƒĐŒĐ”ĐœŃ‚Đ°"
-#: ../src/verbs.cpp:2448
+#: ../src/verbs.cpp:2417
msgid "_Import..."
msgstr "_Đ†ĐŒĐżĐŸŃ€Ń‚ŃƒĐČато
"
-#: ../src/verbs.cpp:2449
+#: ../src/verbs.cpp:2418
msgid "Import a bitmap or SVG image into this document"
msgstr "Đ†ĐŒĐżĐŸŃ€Ń‚ŃƒĐČато Đ·ĐŸĐ±Ń€Đ°Đ¶Đ”ĐœĐœŃ (Ń€Đ°ŃŃ‚Ń€ĐŸĐČĐ” чо SVG) ĐŽĐŸ ĐŽĐŸĐșŃƒĐŒĐ”ĐœŃ‚Đ°"
#. new FileVerb(SP_VERB_FILE_EXPORT, "FileExport", N_("_Export Bitmap..."), N_("Export this document or a selection as a bitmap image"), INKSCAPE_ICON("document-export")),
-#: ../src/verbs.cpp:2451
+#: ../src/verbs.cpp:2420
msgid "Import Clip Art..."
msgstr "_Đ†ĐŒĐżĐŸŃ€Ń‚ŃƒĐČато ŃˆĐ°Đ±Đ»ĐŸĐœâ€Š"
-#: ../src/verbs.cpp:2452
+#: ../src/verbs.cpp:2421
msgid "Import clipart from Open Clip Art Library"
msgstr "Đ†ĐŒĐżĐŸŃ€Ń‚ŃƒĐČато ŃˆĐ°Đ±Đ»ĐŸĐœ Đ· Đ±Ń–Đ±Đ»Ń–ĐŸŃ‚Đ”ĐșĐž Open Clip Art"
#. new FileVerb(SP_VERB_FILE_EXPORT_TO_OCAL, "FileExportToOCAL", N_("Export To Open Clip Art Library"), N_("Export this document to Open Clip Art Library"), INKSCAPE_ICON_DOCUMENT_EXPORT_OCAL),
-#: ../src/verbs.cpp:2454
+#: ../src/verbs.cpp:2423
msgid "N_ext Window"
msgstr "_ĐĐ°ŃŃ‚ŃƒĐżĐœĐ” ĐČіĐșĐœĐŸ"
-#: ../src/verbs.cpp:2455
+#: ../src/verbs.cpp:2424
msgid "Switch to the next document window"
msgstr "ĐŸĐ”Ń€Đ”Đčто ĐŽĐŸ ĐœĐ°ŃŃ‚ŃƒĐżĐœĐŸĐłĐŸ ĐČіĐșĐœĐ° ĐŽĐŸĐșŃƒĐŒĐ”ĐœŃ‚Đ°"
-#: ../src/verbs.cpp:2456
+#: ../src/verbs.cpp:2425
msgid "P_revious Window"
msgstr "_ĐŸĐŸĐżĐ”Ń€Đ”ĐŽĐœŃ” ĐČіĐșĐœĐŸ"
-#: ../src/verbs.cpp:2457
+#: ../src/verbs.cpp:2426
msgid "Switch to the previous document window"
msgstr "ĐŸĐ”Ń€Đ”Đčто ĐŽĐŸ ĐżĐŸĐżĐ”Ń€Đ”ĐŽĐœŃŒĐŸĐłĐŸ ĐČіĐșĐœĐ° ĐŽĐŸĐșŃƒĐŒĐ”ĐœŃ‚Đ°"
-#: ../src/verbs.cpp:2458
+#: ../src/verbs.cpp:2427
msgid "_Close"
msgstr "_ЗаĐșрото"
-#: ../src/verbs.cpp:2459
+#: ../src/verbs.cpp:2428
msgid "Close this document window"
msgstr "ЗаĐșрото цД ĐČіĐșĐœĐŸ ĐŽĐŸĐșŃƒĐŒĐ”ĐœŃ‚Đ°"
-#: ../src/verbs.cpp:2460
+#: ../src/verbs.cpp:2429
msgid "_Quit"
msgstr "Во_Đčто"
-#: ../src/verbs.cpp:2460
+#: ../src/verbs.cpp:2429
msgid "Quit Inkscape"
msgstr "ВоĐčто Đ· Inkscape"
-#: ../src/verbs.cpp:2461
+#: ../src/verbs.cpp:2430
msgid "New from _Template..."
msgstr "СтĐČĐŸŃ€ĐžŃ‚Đž Đ· _ŃˆĐ°Đ±Đ»ĐŸĐœĐ°â€Š"
-#: ../src/verbs.cpp:2462
+#: ../src/verbs.cpp:2431
msgid "Create new project from template"
msgstr "СтĐČĐŸŃ€ĐžŃ‚Đž ĐœĐŸĐČĐžĐč ĐżŃ€ĐŸĐ”Đșт ĐœĐ° ĐŸŃĐœĐŸĐČі ŃˆĐ°Đ±Đ»ĐŸĐœŃƒ"
-#: ../src/verbs.cpp:2465
+#: ../src/verbs.cpp:2434
msgid "Undo last action"
msgstr "ĐĄĐșасуĐČато ĐŸŃŃ‚Đ°ĐœĐœŃŽ ĐŸĐżĐ”Ń€Đ°Ń†Ń–ŃŽ"
-#: ../src/verbs.cpp:2468
+#: ../src/verbs.cpp:2437
msgid "Do again the last undone action"
msgstr "ĐŸĐŸĐČŃ‚ĐŸŃ€ĐžŃ‚Đž ĐŸŃŃ‚Đ°ĐœĐœŃŽ сĐșĐ°ŃĐŸĐČĐ°ĐœŃƒ Юію"
-#: ../src/verbs.cpp:2469
+#: ../src/verbs.cpp:2438
msgid "Cu_t"
msgstr "_ВОрізатО"
-#: ../src/verbs.cpp:2470
+#: ../src/verbs.cpp:2439
msgid "Cut selection to clipboard"
msgstr "ВОрізатО ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœŃ– ĐŸĐ±'єĐșто у Đ±ŃƒŃ„Đ”Ń€ ĐŸĐ±ĐŒŃ–ĐœŃƒ"
-#: ../src/verbs.cpp:2471
+#: ../src/verbs.cpp:2440
msgid "_Copy"
msgstr "_ĐšĐŸĐżŃ–ŃŽĐČато"
-#: ../src/verbs.cpp:2472
+#: ../src/verbs.cpp:2441
msgid "Copy selection to clipboard"
msgstr "ĐĄĐșĐŸĐżŃ–ŃŽĐČато ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœŃ– ĐŸĐ±'єĐșто у Đ±ŃƒŃ„Đ”Ń€ ĐŸĐ±ĐŒŃ–ĐœŃƒ"
-#: ../src/verbs.cpp:2473
+#: ../src/verbs.cpp:2442
msgid "_Paste"
msgstr "Вст_аĐČото"
-#: ../src/verbs.cpp:2474
+#: ../src/verbs.cpp:2443
msgid "Paste objects from clipboard to mouse point, or paste text"
msgstr "ВстаĐČото ĐŸĐ±'єĐșто Đ· Đ±ŃƒŃ„Đ”Ń€Ńƒ ĐŸĐ±ĐŒŃ–ĐœŃƒ Đ°Đ±ĐŸ тДĐșст у ĐżĐŸĐ·ĐžŃ†Ń–ŃŽ ĐșŃƒŃ€ŃĐŸŃ€Đ° ĐŒĐžŃˆŃ–"
-#: ../src/verbs.cpp:2475
+#: ../src/verbs.cpp:2444
msgid "Paste _Style"
msgstr "ВстаĐČото _ŃŃ‚ĐžĐ»ŃŒ"
-#: ../src/verbs.cpp:2476
+#: ../src/verbs.cpp:2445
msgid "Apply the style of the copied object to selection"
msgstr "Đ—Đ°ŃŃ‚ĐŸŃŃƒĐČато ŃŃ‚ĐžĐ»ŃŒ сĐșĐŸĐżŃ–ĐčĐŸĐČĐ°ĐœĐŸĐłĐŸ ĐŸĐ±'єĐșта ĐŽĐŸ ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐžŃ… ĐŸĐ±'єĐșтіĐČ"
-#: ../src/verbs.cpp:2478
+#: ../src/verbs.cpp:2447
msgid "Scale selection to match the size of the copied object"
msgstr ""
"Đ—ĐŒŃ–ĐœĐ° ĐŒĐ°ŃŃˆŃ‚Đ°Đ±Ńƒ ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐžŃ… ĐŸĐ±'єĐșтіĐČ Đ· ĐŒĐ”Ń‚ĐŸŃŽ Đ·Đ°ĐŽĐŸĐČĐŸĐ»ŃŒĐœĐžŃ‚Đž Ń€ĐŸĐ·ĐŒŃ–Ń€Ńƒ ĐșĐŸĐżŃ–ĐčĐŸĐČĐ°ĐœĐŸĐłĐŸ "
"ĐŸĐ±'єĐșта"
-#: ../src/verbs.cpp:2479
+#: ../src/verbs.cpp:2448
msgid "Paste _Width"
msgstr "ВстаĐČото _ŃˆĐžŃ€ĐžĐœŃƒ"
-#: ../src/verbs.cpp:2480
+#: ../src/verbs.cpp:2449
msgid "Scale selection horizontally to match the width of the copied object"
msgstr ""
"Đ—ĐŒŃ–ĐœĐžŃ‚Đž ĐŒĐ°ŃŃˆŃ‚Đ°Đ± ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐžŃ… ĐŸĐ±'єĐșтіĐČ Đ·Đ° ĐłĐŸŃ€ĐžĐ·ĐŸĐœŃ‚Đ°Đ»ŃŒĐœĐžĐŒ Ń€ĐŸĐ·ĐŒŃ–Ń€ĐŸĐŒ Đ· ĐŒĐ”Ń‚ĐŸŃŽ "
"ĐČŃ–ĐŽĐżĐŸĐČŃ–ĐŽĐœĐŸŃŃ‚Ń– ŃˆĐžŃ€ĐžĐœŃ– ĐșĐŸĐżŃ–ĐčĐŸĐČĐ°ĐœĐŸĐłĐŸ ĐŸĐ±'єĐșта"
-#: ../src/verbs.cpp:2481
+#: ../src/verbs.cpp:2450
msgid "Paste _Height"
msgstr "ВстаĐČото _ĐČĐžŃĐŸŃ‚Ńƒ"
-#: ../src/verbs.cpp:2482
+#: ../src/verbs.cpp:2451
msgid "Scale selection vertically to match the height of the copied object"
msgstr ""
"Đ—ĐŒŃ–ĐœĐžŃ‚Đž ĐŒĐ°ŃŃˆŃ‚Đ°Đ± ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐžŃ… ĐŸĐ±'єĐșтіĐČ Đ·Đ° ĐČДртОĐșĐ°Đ»ŃŒĐœĐžĐŒ Ń€ĐŸĐ·ĐŒŃ–Ń€ĐŸĐŒ Đ· ĐŒĐ”Ń‚ĐŸŃŽ "
"ĐČŃ–ĐŽĐżĐŸĐČŃ–ĐŽĐœĐŸŃŃ‚Ń– ĐČĐžŃĐŸŃ‚Ń– ĐșĐŸĐżŃ–ĐčĐŸĐČĐ°ĐœĐŸĐłĐŸ ĐŸĐ±'єĐșта"
-#: ../src/verbs.cpp:2483
+#: ../src/verbs.cpp:2452
msgid "Paste Size Separately"
msgstr "ВстаĐČото Ń€ĐŸĐ·ĐŒŃ–Ń€ ĐŸĐșŃ€Đ”ĐŒĐŸ"
-#: ../src/verbs.cpp:2484
+#: ../src/verbs.cpp:2453
msgid "Scale each selected object to match the size of the copied object"
msgstr ""
"Đ—ĐŒŃ–ĐœĐžŃ‚Đž ĐșĐŸĐ¶ĐœĐŸĐłĐŸ ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐŸĐłĐŸ ĐŸĐ±'єĐșта Đ· ĐŒĐ”Ń‚ĐŸŃŽ ĐČŃ–ĐŽĐżĐŸĐČŃ–ĐŽĐœĐŸŃŃ‚Ń– Ń€ĐŸĐ·ĐŒŃ–Ń€Ńƒ "
"ĐșĐŸĐżŃ–ĐčĐŸĐČĐ°ĐœĐŸĐłĐŸ ĐŸĐ±'єĐșта"
-#: ../src/verbs.cpp:2485
+#: ../src/verbs.cpp:2454
msgid "Paste Width Separately"
msgstr "ВстаĐČото ŃˆĐžŃ€ĐžĐœŃƒ ĐŸĐșŃ€Đ”ĐŒĐŸ"
-#: ../src/verbs.cpp:2486
+#: ../src/verbs.cpp:2455
msgid ""
"Scale each selected object horizontally to match the width of the copied "
"object"
@@ -25360,11 +25401,11 @@ msgstr ""
"Đ—ĐŒŃ–ĐœĐžŃ‚Đž ĐŒĐ°ŃŃˆŃ‚Đ°Đ± ĐșĐŸĐ¶ĐœĐŸĐłĐŸ ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐŸĐłĐŸ ĐŸĐ±'єĐșта за ĐłĐŸŃ€ĐžĐ·ĐŸĐœŃ‚Đ°Đ»ŃŒĐœĐžĐŒ Ń€ĐŸĐ·ĐŒŃ–Ń€ĐŸĐŒ Đ· "
"ĐŒĐ”Ń‚ĐŸŃŽ ĐČŃ–ĐŽĐżĐŸĐČŃ–ĐŽĐœĐŸŃŃ‚Ń– ŃˆĐžŃ€ĐžĐœŃ– ĐșĐŸĐżŃ–ĐčĐŸĐČĐ°ĐœĐŸĐłĐŸ ĐŸĐ±'єĐșта"
-#: ../src/verbs.cpp:2487
+#: ../src/verbs.cpp:2456
msgid "Paste Height Separately"
msgstr "ВстаĐČото ĐČĐžŃĐŸŃ‚Ńƒ ĐŸĐșŃ€Đ”ĐŒĐŸ"
-#: ../src/verbs.cpp:2488
+#: ../src/verbs.cpp:2457
msgid ""
"Scale each selected object vertically to match the height of the copied "
"object"
@@ -25372,67 +25413,67 @@ msgstr ""
"Đ—ĐŒŃ–ĐœĐžŃ‚Đž ĐŒĐ°ŃŃˆŃ‚Đ°Đ± ĐșĐŸĐ¶ĐœĐŸĐłĐŸ ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐŸĐłĐŸ ĐŸĐ±'єĐșта за ĐČДртОĐșĐ°Đ»ŃŒĐœĐžĐŒ Ń€ĐŸĐ·ĐŒŃ–Ń€ĐŸĐŒ Đ· ĐŒĐ”Ń‚ĐŸŃŽ "
"ĐČŃ–ĐŽĐżĐŸĐČŃ–ĐŽĐœĐŸŃŃ‚Ń– ĐČĐžŃĐŸŃ‚Ń– ĐșĐŸĐżŃ–ĐčĐŸĐČĐ°ĐœĐŸĐłĐŸ ĐŸĐ±'єĐșта"
-#: ../src/verbs.cpp:2489
+#: ../src/verbs.cpp:2458
msgid "Paste _In Place"
msgstr "ВстаĐČото ĐœĐ° _ĐŒŃ–ŃŃ†Đ”"
-#: ../src/verbs.cpp:2490
+#: ../src/verbs.cpp:2459
msgid "Paste objects from clipboard to the original location"
msgstr "ВстаĐČото ĐŸĐ±'єĐșто Đ· Đ±ŃƒŃ„Đ”Ń€Đ° у ĐŒŃ–ŃŃ†Đ”, ĐŽĐ” ĐČĐŸĐœĐž булО Ń€Đ°ĐœŃ–ŃˆĐ”"
-#: ../src/verbs.cpp:2491
+#: ../src/verbs.cpp:2460
msgid "Paste Path _Effect"
msgstr "ВстаĐČото _ДфДĐșт ĐșĐŸĐœŃ‚ŃƒŃ€Ńƒ"
-#: ../src/verbs.cpp:2492
+#: ../src/verbs.cpp:2461
msgid "Apply the path effect of the copied object to selection"
msgstr "Đ—Đ°ŃŃ‚ĐŸŃŃƒĐČато ДфДĐșт ĐșĐŸĐœŃ‚ŃƒŃ€Ńƒ сĐșĐŸĐżŃ–ĐčĐŸĐČĐ°ĐœĐŸĐłĐŸ ĐŸĐ±'єĐșта ĐŽĐŸ ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐžŃ… ĐŸĐ±'єĐșтіĐČ"
-#: ../src/verbs.cpp:2493
+#: ../src/verbs.cpp:2462
msgid "Remove Path _Effect"
msgstr "Đ’ĐžĐ»ŃƒŃ‡ĐžŃ‚Đž _ДфДĐșт ĐșĐŸĐœŃ‚ŃƒŃ€Ńƒ"
-#: ../src/verbs.cpp:2494
+#: ../src/verbs.cpp:2463
msgid "Remove any path effects from selected objects"
msgstr "Đ’ĐžĐ»ŃƒŃ‡ĐžŃ‚Đž ĐČсі ДфДĐșто ĐșĐŸĐœŃ‚ŃƒŃ€Ń–ĐČ Đ· ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐžŃ… ĐŸĐ±'єĐșтіĐČ"
-#: ../src/verbs.cpp:2495
+#: ../src/verbs.cpp:2464
msgid "_Remove Filters"
msgstr "В_ĐžĐ»ŃƒŃ‡ĐžŃ‚Đž Ń„Ń–Đ»ŃŒŃ‚Ń€Đž"
-#: ../src/verbs.cpp:2496
+#: ../src/verbs.cpp:2465
msgid "Remove any filters from selected objects"
msgstr "Đ’ĐžĐ»ŃƒŃ‡ĐžŃ‚Đž ĐČсі ĐœĐ°ŃĐ»Ń–ĐŽĐșĐž Đ·Đ°ŃŃ‚ĐŸŃŃƒĐČĐ°ĐœĐœŃ Ń„Ń–Đ»ŃŒŃ‚Ń€Ń–ĐČ Đ· ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐžŃ… ĐŸĐ±'єĐșтіĐČ"
-#: ../src/verbs.cpp:2497
+#: ../src/verbs.cpp:2466
msgid "_Delete"
msgstr "В_ĐžĐ»ŃƒŃ‡ĐžŃ‚Đž"
-#: ../src/verbs.cpp:2498
+#: ../src/verbs.cpp:2467
msgid "Delete selection"
msgstr "Đ’ĐžĐ»ŃƒŃ‡ĐžŃ‚Đž ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœŃ– ĐŸĐ±'єĐșто"
-#: ../src/verbs.cpp:2499
+#: ../src/verbs.cpp:2468
msgid "Duplic_ate"
msgstr "_Đ”ŃƒĐ±Đ»ŃŽĐČато"
-#: ../src/verbs.cpp:2500
+#: ../src/verbs.cpp:2469
msgid "Duplicate selected objects"
msgstr "Đ”ŃƒĐ±Đ»ŃŽĐČато ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœŃ– ĐŸĐ±'єĐșто"
-#: ../src/verbs.cpp:2501
+#: ../src/verbs.cpp:2470
msgid "Create Clo_ne"
msgstr "СтĐČĐŸŃ€ĐžŃ‚Đž Đș_Đ»ĐŸĐœ"
-#: ../src/verbs.cpp:2502
+#: ../src/verbs.cpp:2471
msgid "Create a clone (a copy linked to the original) of selected object"
msgstr "СтĐČĐŸŃ€ĐžŃ‚Đž ĐșĐ»ĐŸĐœ (ĐșĐŸĐżŃ–ŃŽ, ĐżĐŸĐČ'ŃĐ·Đ°ĐœŃƒ Đ· ĐŸŃ€ĐžĐłŃ–ĐœĐ°Đ»ĐŸĐŒ) ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐŸĐłĐŸ ĐŸĐ±'єĐșта"
-#: ../src/verbs.cpp:2503
+#: ../src/verbs.cpp:2472
msgid "Unlin_k Clone"
msgstr "В_іЮ'Ń”ĐŽĐœĐ°Ń‚Đž ĐșĐ»ĐŸĐœ"
-#: ../src/verbs.cpp:2504
+#: ../src/verbs.cpp:2473
msgid ""
"Cut the selected clones' links to the originals, turning them into "
"standalone objects"
@@ -25440,29 +25481,29 @@ msgstr ""
"ВОрізатО ĐČĐžĐ±Ń€Đ°ĐœŃ– ĐżĐŸŃĐžĐ»Đ°ĐœĐœŃ ĐșĐ»ĐŸĐœŃ–ĐČ ĐœĐ° ĐŸŃ€ĐžĐłŃ–ĐœĐ°Đ»Đž Đ· пДрДтĐČĐŸŃ€Đ”ĐœĐœŃĐŒ їх ĐœĐ° ĐŸĐșŃ€Đ”ĐŒŃ– "
"ĐŸĐ±'єĐșто"
-#: ../src/verbs.cpp:2505
+#: ../src/verbs.cpp:2474
msgid "Relink to Copied"
msgstr "ĐŸĐ”Ń€Đ”Đ·'Ń”ĐŽĐœĐ°Ń‚Đž Đ· ĐșĐŸĐżŃ–ĐčĐŸĐČĐ°ĐœĐžĐŒ"
-#: ../src/verbs.cpp:2506
+#: ../src/verbs.cpp:2475
msgid "Relink the selected clones to the object currently on the clipboard"
msgstr ""
"ĐŸĐ”Ń€Đ”Đ·'Ń”ĐŽĐœĐ°Ń‚Đž ĐČĐžĐ±Ń€Đ°ĐœŃ– ĐșĐ»ĐŸĐœĐž Đ· ĐŸĐ±'єĐșŃ‚ĐŸĐŒ, яĐșĐžĐč зараз ĐżĐ”Ń€Đ”Đ±ŃƒĐČає у Đ±ŃƒŃ„Đ”Ń€Ń– ĐŸĐ±ĐŒŃ–ĐœŃƒ "
"ĐŽĐ°ĐœĐžĐŒĐž"
-#: ../src/verbs.cpp:2507
+#: ../src/verbs.cpp:2476
msgid "Select _Original"
msgstr "ĐŸĐŸĐ·ĐœĐ°Ń‡ĐžŃ‚Đž ĐŸ_Ń€ĐžĐłŃ–ĐœĐ°Đ»"
-#: ../src/verbs.cpp:2508
+#: ../src/verbs.cpp:2477
msgid "Select the object to which the selected clone is linked"
msgstr "ĐŸĐŸĐ·ĐœĐ°Ń‡ĐžŃ‚Đž ĐŸĐ±'єĐșт, Đ· яĐșĐžĐŒ ĐżĐŸĐČ'ŃĐ·Đ°ĐœĐžĐč ĐČĐžĐ±Ń€Đ°ĐœĐžĐč ĐșĐ»ĐŸĐœ"
-#: ../src/verbs.cpp:2509
+#: ../src/verbs.cpp:2478
msgid "Clone original path (LPE)"
msgstr "ĐšĐ»ĐŸĐœŃƒĐČато ĐżĐŸŃ‡Đ°Ń‚ĐșĐŸĐČĐžĐč ĐșĐŸĐœŃ‚ŃƒŃ€ (ĐłĐ”ĐŸĐŒĐ”Ń‚Ń€ĐžŃ‡ĐœĐŸ)"
-#: ../src/verbs.cpp:2510
+#: ../src/verbs.cpp:2479
msgid ""
"Creates a new path, applies the Clone original LPE, and refers it to the "
"selected path"
@@ -25470,19 +25511,19 @@ msgstr ""
"СтĐČĐŸŃ€ŃŽŃ” ĐœĐŸĐČĐžĐč ĐșĐŸĐœŃ‚ŃƒŃ€, Đ·Đ°ŃŃ‚ĐŸŃĐŸĐČує ĐłĐ”ĐŸĐŒĐ”Ń‚Ń€ĐžŃ‡ĐœĐ” пДрДтĐČĐŸŃ€Đ”ĐœĐœŃ ĐșĐ»ĐŸĐœŃƒĐČĐ°ĐœĐœŃ "
"ĐżĐŸŃ‡Đ°Ń‚ĐșĐŸĐČĐŸĐłĐŸ ĐșĐŸĐœŃ‚ŃƒŃ€Ńƒ і ĐżĐŸĐČ'ŃĐ·ŃƒŃ” ĐčĐŸĐłĐŸ Đ· ĐČĐžĐ±Ń€Đ°ĐœĐžĐŒ ĐșĐŸĐœŃ‚ŃƒŃ€ĐŸĐŒ"
-#: ../src/verbs.cpp:2511
+#: ../src/verbs.cpp:2480
msgid "Objects to _Marker"
msgstr "Об'єĐșто у _ĐŒĐ°Ń€ĐșДр"
-#: ../src/verbs.cpp:2512
+#: ../src/verbs.cpp:2481
msgid "Convert selection to a line marker"
msgstr "ĐŸĐ”Ń€Đ”Ń‚ĐČĐŸŃ€ĐžŃ‚Đž ĐČĐžĐ±Ń€Đ°ĐœĐ” ĐœĐ° ĐŒĐ°Ń€ĐșДр Đ»Ń–ĐœŃ–Ń—"
-#: ../src/verbs.cpp:2513
+#: ../src/verbs.cpp:2482
msgid "Objects to Gu_ides"
msgstr "Об'єĐșто у ĐœĐ°_ĐżŃ€ŃĐŒĐœŃ–"
-#: ../src/verbs.cpp:2514
+#: ../src/verbs.cpp:2483
msgid ""
"Convert selected objects to a collection of guidelines aligned with their "
"edges"
@@ -25490,92 +25531,92 @@ msgstr ""
"ĐŸĐ”Ń€Đ”Ń‚ĐČĐŸŃ€ĐžŃ‚Đž ĐČĐžĐ±Ń€Đ°ĐœŃ– ĐŸĐ±'єĐșто ĐœĐ° ĐŽĐ”ĐșŃ–Đ»ŃŒĐșа ĐœĐ°ĐżŃ€ŃĐŒĐœĐžŃ…, ĐČоріĐČĐœŃĐœĐžŃ… за ĐșŃ€Đ°ŃĐŒĐž "
"ĐŸĐ±'єĐșтіĐČ"
-#: ../src/verbs.cpp:2515
+#: ../src/verbs.cpp:2484
msgid "Objects to Patter_n"
msgstr "О_б'єĐșто у ĐČŃ–Đ·Đ”Ń€ŃƒĐœĐŸĐș"
-#: ../src/verbs.cpp:2516
+#: ../src/verbs.cpp:2485
msgid "Convert selection to a rectangle with tiled pattern fill"
msgstr "ĐŸĐ”Ń€Đ”Ń‚ĐČĐŸŃ€ĐžŃ‚Đž ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœŃ– ĐŸĐ±'єĐșто у ĐżŃ€ŃĐŒĐŸĐșŃƒŃ‚ĐœĐžĐș, Đ·Đ°ĐżĐŸĐČĐœĐ”ĐœĐžĐč ĐČŃ–Đ·Đ”Ń€ŃƒĐœĐșĐŸĐŒ"
-#: ../src/verbs.cpp:2517
+#: ../src/verbs.cpp:2486
msgid "Pattern to _Objects"
msgstr "_Đ’Ń–Đ·Đ”Ń€ŃƒĐœĐŸĐș у ĐŸĐ±'єĐșто"
-#: ../src/verbs.cpp:2518
+#: ../src/verbs.cpp:2487
msgid "Extract objects from a tiled pattern fill"
msgstr "Đ’ĐžŃ‚ŃĐłĐœŃƒŃ‚Đž ĐŸĐ±'єĐșто Đ· тДĐșŃŃ‚ŃƒŃ€ĐœĐŸĐłĐŸ Đ·Đ°ĐżĐŸĐČĐœĐ”ĐœĐœŃ"
-#: ../src/verbs.cpp:2519
+#: ../src/verbs.cpp:2488
msgid "Group to Symbol"
msgstr "Групу ĐœĐ° ŃĐžĐŒĐČĐŸĐ»"
-#: ../src/verbs.cpp:2520
+#: ../src/verbs.cpp:2489
msgid "Convert group to a symbol"
msgstr "ĐŸĐ”Ń€Đ”Ń‚ĐČĐŸŃ€ĐžŃ‚Đž групу ĐœĐ° ŃĐžĐŒĐČĐŸĐ»"
-#: ../src/verbs.cpp:2521
+#: ../src/verbs.cpp:2490
msgid "Symbol to Group"
msgstr "ĐĄĐžĐŒĐČĐŸĐ» у групу"
-#: ../src/verbs.cpp:2522
+#: ../src/verbs.cpp:2491
msgid "Extract group from a symbol"
msgstr "Đ’ĐžĐŽĐŸĐ±ŃƒŃ‚Đž групу Đ· ŃĐžĐŒĐČĐŸĐ»Ńƒ"
-#: ../src/verbs.cpp:2523
+#: ../src/verbs.cpp:2492
msgid "Clea_r All"
msgstr "О_чостото ĐČсД"
-#: ../src/verbs.cpp:2524
+#: ../src/verbs.cpp:2493
msgid "Delete all objects from document"
msgstr "Đ’ĐžĐ»ŃƒŃ‡ĐžŃ‚Đž усі ĐŸĐ±'єĐșто Đ· ĐŽĐŸĐșŃƒĐŒĐ”ĐœŃ‚Đ°"
-#: ../src/verbs.cpp:2525
+#: ../src/verbs.cpp:2494
msgid "Select Al_l"
msgstr "ĐŸĐŸĐ·_ĐœĐ°Ń‡ĐžŃ‚Đž ĐČсД"
-#: ../src/verbs.cpp:2526
+#: ../src/verbs.cpp:2495
msgid "Select all objects or all nodes"
msgstr "ĐŸĐŸĐ·ĐœĐ°Ń‡ĐžŃ‚Đž ĐČсі ĐŸĐ±'єĐșто чо ĐČсі ĐČузлО"
-#: ../src/verbs.cpp:2527
+#: ../src/verbs.cpp:2496
msgid "Select All in All La_yers"
msgstr "ĐŸĐŸĐ·ĐœĐ°Ń‡ĐžŃ‚Đž ĐČсД ĐČ ŃƒŃŃ–Ń… _шарах"
-#: ../src/verbs.cpp:2528
+#: ../src/verbs.cpp:2497
msgid "Select all objects in all visible and unlocked layers"
msgstr "ĐŸĐŸĐ·ĐœĐ°Ń‡ĐžŃ‚Đž усі ĐŸĐ±'єĐșто ĐČ ŃƒŃŃ–Ń… ĐČĐžĐŽĐžĐŒĐžŃ… та Ń€ĐŸĐ·Đ±Đ»ĐŸĐșĐŸĐČĐ°ĐœĐžŃ… шарах"
-#: ../src/verbs.cpp:2529
+#: ../src/verbs.cpp:2498
msgid "Fill _and Stroke"
msgstr "Đ—Đ°ĐżĐŸĐČĐœĐ”ĐœĐœŃ _та штрох"
-#: ../src/verbs.cpp:2530
+#: ../src/verbs.cpp:2499
msgid ""
"Select all objects with the same fill and stroke as the selected objects"
msgstr "ĐŸĐŸĐ·ĐœĐ°Ń‡ĐžŃ‚Đž ĐČсі ĐŸĐ±'єĐșто Đ· Ń‚ĐžĐŒ ŃĐ°ĐŒĐžĐŒ Đ·Đ°ĐżĐŸĐČĐœĐ”ĐœĐœŃĐŒ та ŃˆŃ‚Ń€ĐžŃ…ĐŸĐŒ"
-#: ../src/verbs.cpp:2531
+#: ../src/verbs.cpp:2500
msgid "_Fill Color"
msgstr "За_ĐżĐŸĐČĐœĐžŃ‚Đž ĐșĐŸĐ»ŃŒĐŸŃ€ĐŸĐŒ"
-#: ../src/verbs.cpp:2532
+#: ../src/verbs.cpp:2501
msgid "Select all objects with the same fill as the selected objects"
msgstr "ĐŸĐŸĐ·ĐœĐ°Ń‡ĐžŃ‚Đž ĐČсі ĐŸĐ±'єĐșто Đ· Ń‚ĐžĐŒ ŃĐ°ĐŒĐžĐŒ Đ·Đ°ĐżĐŸĐČĐœĐ”ĐœĐœŃĐŒ"
-#: ../src/verbs.cpp:2533
+#: ../src/verbs.cpp:2502
msgid "_Stroke Color"
msgstr "ĐšĐŸĐ»Ń–Ń€ _штроха"
-#: ../src/verbs.cpp:2534
+#: ../src/verbs.cpp:2503
msgid "Select all objects with the same stroke as the selected objects"
msgstr "ĐŸĐŸĐ·ĐœĐ°Ń‡ĐžŃ‚Đž ĐČсі ĐŸĐ±'єĐșто Đ· Ń‚ĐžĐŒ ŃĐ°ĐŒĐžĐŒ ŃˆŃ‚Ń€ĐžŃ…ĐŸĐŒ"
-#: ../src/verbs.cpp:2535
+#: ../src/verbs.cpp:2504
msgid "Stroke St_yle"
msgstr "ĐĄ_Ń‚ĐžĐ»ŃŒ штроха"
-#: ../src/verbs.cpp:2536
+#: ../src/verbs.cpp:2505
msgid ""
"Select all objects with the same stroke style (width, dash, markers) as the "
"selected objects"
@@ -25583,11 +25624,11 @@ msgstr ""
"ĐŸĐŸĐ·ĐœĐ°Ń‡ĐžŃ‚Đž ĐČсі ĐŸĐ±'єĐșто Đ· Ń‚ĐžĐŒ ŃĐ°ĐŒĐžĐŒ Ń‚ĐžĐżĐŸĐŒ штроха (Ń‚ĐŸĐČŃ‰ĐžĐœĐŸŃŽ, росĐșĐ°ĐŒĐž, "
"ĐżĐŸĐ·ĐœĐ°Ń‡ĐșĐ°ĐŒĐž)"
-#: ../src/verbs.cpp:2537
+#: ../src/verbs.cpp:2506
msgid "_Object Type"
msgstr "йОп _ĐŸĐ±'єĐșта"
-#: ../src/verbs.cpp:2538
+#: ../src/verbs.cpp:2507
msgid ""
"Select all objects with the same object type (rect, arc, text, path, bitmap "
"etc) as the selected objects"
@@ -25595,156 +25636,156 @@ msgstr ""
"ĐŸĐŸĐ·ĐœĐ°Ń‡ĐžŃ‚Đž ĐČсі ĐŸĐ±'єĐșто Đ· Ń‚ĐžĐŒ ŃĐ°ĐŒĐžĐŒ Ń‚ĐžĐżĐŸĐŒ ĐŸĐ±'єĐșта (ĐżŃ€ŃĐŒĐŸĐșŃƒŃ‚ĐœĐžĐș, Ўуга, тДĐșст, "
"ĐșĐŸĐœŃ‚ŃƒŃ€, Ń€Đ°ŃŃ‚Ń€ĐŸĐČĐ” Đ·ĐŸĐ±Ń€Đ°Đ¶Đ”ĐœĐœŃ Ń‚ĐŸŃ‰ĐŸ), Ń‰ĐŸ і ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœŃ– ĐŸĐ±'єĐșто"
-#: ../src/verbs.cpp:2539
+#: ../src/verbs.cpp:2508
msgid "In_vert Selection"
msgstr "_Đ†ĐœĐČĐ”Ń€Ń‚ŃƒĐČато ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐœŃ"
-#: ../src/verbs.cpp:2540
+#: ../src/verbs.cpp:2509
msgid "Invert selection (unselect what is selected and select everything else)"
msgstr ""
"Đ†ĐœĐČĐ”Ń€Ń‚ŃƒĐČато ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐœŃ (Đ·ĐœŃŃ‚Đž ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐœŃ Đ· ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐŸĐłĐŸ та ĐżĐŸĐ·ĐœĐ°Ń‡ĐžŃ‚Đž Ń€Đ”ŃˆŃ‚Ńƒ)"
-#: ../src/verbs.cpp:2541
+#: ../src/verbs.cpp:2510
msgid "Invert in All Layers"
msgstr "Đ†ĐœĐČĐ”Ń€Ń‚ŃƒĐČато ĐČ ŃƒŃŃ–Ń… шарах"
-#: ../src/verbs.cpp:2542
+#: ../src/verbs.cpp:2511
msgid "Invert selection in all visible and unlocked layers"
msgstr "Đ†ĐœĐČĐ”Ń€Ń‚ŃƒĐČато ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐœŃ ĐČ ŃƒŃŃ–Ń… ĐČĐžĐŽĐžĐŒĐžŃ… та ĐœĐ”Đ·Đ°Đ±Đ»ĐŸĐșĐŸĐČĐ°ĐœĐžŃ… шарах"
-#: ../src/verbs.cpp:2543
+#: ../src/verbs.cpp:2512
msgid "Select Next"
msgstr "ОбратО ĐœĐ°ŃŃ‚ŃƒĐżĐœĐžĐč"
-#: ../src/verbs.cpp:2544
+#: ../src/verbs.cpp:2513
msgid "Select next object or node"
msgstr "ОбратО ĐœĐ°ŃŃ‚ŃƒĐżĐœĐžĐč ĐŸĐ±'єĐșт Đ°Đ±ĐŸ ĐČŃƒĐ·ĐŸĐ»"
-#: ../src/verbs.cpp:2545
+#: ../src/verbs.cpp:2514
msgid "Select Previous"
msgstr "ОбратО ĐżĐŸĐżĐ”Ń€Đ”ĐŽĐœŃ”"
-#: ../src/verbs.cpp:2546
+#: ../src/verbs.cpp:2515
msgid "Select previous object or node"
msgstr "ОбратО ĐżĐŸĐżĐ”Ń€Đ”ĐŽĐœŃ–Đč ĐŸĐ±'єĐșт чо ĐČŃƒĐ·ĐŸĐ»"
-#: ../src/verbs.cpp:2547
+#: ../src/verbs.cpp:2516
msgid "D_eselect"
msgstr "Đ—Đœ_ято ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐœŃ"
-#: ../src/verbs.cpp:2548
+#: ../src/verbs.cpp:2517
msgid "Deselect any selected objects or nodes"
msgstr "Đ—ĐœŃŃ‚Đž ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐœŃ Đ· усіх ĐŸĐ±'єĐșтіĐČ Ń‡Đž ĐČŃƒĐ·Đ»Ń–ĐČ"
-#: ../src/verbs.cpp:2550
+#: ../src/verbs.cpp:2519
msgid "Delete all the guides in the document"
msgstr "Đ’ĐžĐ»ŃƒŃ‡ĐžŃ‚Đž усі ĐœĐ°ĐżŃ€ŃĐŒĐœŃ– у ĐŽĐŸĐșŃƒĐŒĐ”ĐœŃ‚Ń–"
-#: ../src/verbs.cpp:2551
+#: ../src/verbs.cpp:2520
msgid "Create _Guides Around the Page"
msgstr "СтĐČĐŸŃ€ĐžŃ‚Đž _ĐœĐ°ĐżŃ€ŃĐŒĐœŃ– ĐœĐ°ĐČĐșĐŸĐ»ĐŸ ŃŃ‚ĐŸŃ€Ń–ĐœĐșĐž"
-#: ../src/verbs.cpp:2552
+#: ../src/verbs.cpp:2521
msgid "Create four guides aligned with the page borders"
msgstr "СтĐČĐŸŃ€ĐžŃ‚Đž Ń‡ĐŸŃ‚ĐžŃ€Đž ĐœĐ°ĐżŃ€ŃĐŒĐœŃ– за ĐșŃ€Đ°ŃĐŒĐž ŃŃ‚ĐŸŃ€Ń–ĐœĐșĐž"
-#: ../src/verbs.cpp:2553
+#: ../src/verbs.cpp:2522
msgid "Next path effect parameter"
msgstr "ĐĐ°ŃŃ‚ŃƒĐżĐœĐžĐč ĐżĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€ ДфДĐșту ĐșĐŸĐœŃ‚ŃƒŃ€Ńƒ"
-#: ../src/verbs.cpp:2554
+#: ../src/verbs.cpp:2523
msgid "Show next editable path effect parameter"
msgstr "ĐŸĐŸĐșазатО ĐœĐ°ŃŃ‚ŃƒĐżĐœĐžĐč ĐżŃ€ĐžĐŽĐ°Ń‚ĐœĐžĐč ĐŽĐŸ Ń€Đ”ĐŽĐ°ĐłŃƒĐČĐ°ĐœĐœŃ ĐżĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€ ДфДĐșту ĐșĐŸĐœŃ‚ŃƒŃ€Ńƒ"
#. Selection
-#: ../src/verbs.cpp:2557
+#: ../src/verbs.cpp:2526
msgid "Raise to _Top"
msgstr "ĐŸŃ–ĐŽĐœŃŃ‚Đž ĐœĐ° Đż_Đ”Ń€Đ”ĐŽĐœŃ–Đč ĐżĐ»Đ°Đœ"
-#: ../src/verbs.cpp:2558
+#: ../src/verbs.cpp:2527
msgid "Raise selection to top"
msgstr "ĐŸŃ–ĐŽĐœŃŃ‚Đž ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœŃ– ĐŸĐ±'єĐșто ĐœĐ° ĐżĐ”Ń€Đ”ĐŽĐœŃ–Đč ĐżĐ»Đ°Đœ"
-#: ../src/verbs.cpp:2559
+#: ../src/verbs.cpp:2528
msgid "Lower to _Bottom"
msgstr "Опустото ĐœĐ° Đ·_Đ°ĐŽĐœŃ–Đč ĐżĐ»Đ°Đœ"
-#: ../src/verbs.cpp:2560
+#: ../src/verbs.cpp:2529
msgid "Lower selection to bottom"
msgstr "Опустото ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœŃ– ĐŸĐ±'єĐșто ĐœĐ° Đ·Đ°ĐŽĐœŃ–Đč ĐżĐ»Đ°Đœ"
-#: ../src/verbs.cpp:2561
+#: ../src/verbs.cpp:2530
msgid "_Raise"
msgstr "_ĐŸŃ–ĐŽĐœŃŃ‚Đž"
-#: ../src/verbs.cpp:2562
+#: ../src/verbs.cpp:2531
msgid "Raise selection one step"
msgstr "ĐŸŃ–ĐŽĐœŃŃ‚Đž ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœŃ– ĐŸĐ±'єĐșто ĐœĐ° ĐŸĐŽĐžĐœ ріĐČĐ”ĐœŃŒ"
-#: ../src/verbs.cpp:2563
+#: ../src/verbs.cpp:2532
msgid "_Lower"
msgstr "_Опустото"
-#: ../src/verbs.cpp:2564
+#: ../src/verbs.cpp:2533
msgid "Lower selection one step"
msgstr "Опустото ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœŃ– ĐŸĐ±'єĐșто ĐœĐ° ĐŸĐŽĐžĐœ ріĐČĐ”ĐœŃŒ"
-#: ../src/verbs.cpp:2566
+#: ../src/verbs.cpp:2535
msgid "Group selected objects"
msgstr "ЗгрупуĐČато ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœŃ– ĐŸĐ±'єĐșто"
-#: ../src/verbs.cpp:2568
+#: ../src/verbs.cpp:2537
msgid "Ungroup selected groups"
msgstr "Đ ĐŸĐ·ĐłŃ€ŃƒĐżŃƒĐČато ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœŃ– групо"
-#: ../src/verbs.cpp:2570
+#: ../src/verbs.cpp:2539
msgid "_Put on Path"
msgstr "_Đ ĐŸĐ·ĐŒŃ–ŃŃ‚ĐžŃ‚Đž ĐżĐŸ ĐșĐŸĐœŃ‚ŃƒŃ€Ńƒ"
-#: ../src/verbs.cpp:2572
+#: ../src/verbs.cpp:2541
msgid "_Remove from Path"
msgstr "Đ’Ń–ĐŽĐŸĐșŃ€Đ”ĐŒ_ото ĐČіЮ ĐșĐŸĐœŃ‚ŃƒŃ€Ńƒ"
-#: ../src/verbs.cpp:2574
+#: ../src/verbs.cpp:2543
msgid "Remove Manual _Kerns"
msgstr "Đ’ĐžĐ»ŃƒŃ‡ĐžŃ‚Đž Ń€ŃƒŃ‡ĐœĐžĐč _ĐŒŃ–Đ¶Đ»Ń–Ń‚Đ”Ń€ĐœĐžĐč Ń–ĐœŃ‚Đ”Ń€ĐČал"
#. TRANSLATORS: "glyph": An image used in the visual representation of characters;
#. roughly speaking, how a character looks. A font is a set of glyphs.
-#: ../src/verbs.cpp:2577
+#: ../src/verbs.cpp:2546
msgid "Remove all manual kerns and glyph rotations from a text object"
msgstr ""
"Đ’ĐžĐ»ŃƒŃ‡ĐžŃ‚Đž Đ· тДĐșŃŃ‚ĐŸĐČĐŸĐłĐŸ ĐŸĐ±'єĐșта усі ĐŽĐŸĐŽĐ°ĐœŃ– ĐČŃ€ŃƒŃ‡ĐœŃƒ ĐżĐŸĐČĐŸŃ€ĐŸŃ‚Đž ĐșĐ”Ń€ĐœŃ–ĐČ Ń‚Đ° гліфіĐČ"
-#: ../src/verbs.cpp:2579
+#: ../src/verbs.cpp:2548
msgid "_Union"
msgstr "ĐĄ_ŃƒĐŒĐ°"
-#: ../src/verbs.cpp:2580
+#: ../src/verbs.cpp:2549
msgid "Create union of selected paths"
msgstr "СтĐČĐŸŃ€Đ”ĐœĐœŃ ĐŸĐ±'Ń”ĐŽĐœĐ°ĐœĐœŃ ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐžŃ… ĐșĐŸĐœŃ‚ŃƒŃ€Ń–ĐČ"
-#: ../src/verbs.cpp:2581
+#: ../src/verbs.cpp:2550
msgid "_Intersection"
msgstr "_ĐŸĐ”Ń€Đ”Ń‚ĐžĐœ"
-#: ../src/verbs.cpp:2582
+#: ../src/verbs.cpp:2551
msgid "Create intersection of selected paths"
msgstr "СтĐČĐŸŃ€Đ”ĐœĐœŃ ĐżĐ”Ń€Đ”Ń‚ĐžĐœŃƒ ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐžŃ… ĐșĐŸĐœŃ‚ŃƒŃ€Ń–ĐČ"
-#: ../src/verbs.cpp:2583
+#: ../src/verbs.cpp:2552
msgid "_Difference"
msgstr "Đ _Ń–Đ·ĐœĐžŃ†Ń"
-#: ../src/verbs.cpp:2584
+#: ../src/verbs.cpp:2553
msgid "Create difference of selected paths (bottom minus top)"
msgstr "СтĐČĐŸŃ€Đ”ĐœĐœŃ Ń€Ń–Đ·ĐœĐžŃ†Ń– ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐžŃ… ĐșĐŸĐœŃ‚ŃƒŃ€Ń–ĐČ (ĐœĐžĐ· ĐŒŃ–ĐœŃƒŃ ĐČДрх)"
-#: ../src/verbs.cpp:2585
+#: ../src/verbs.cpp:2554
msgid "E_xclusion"
msgstr "ВоĐșĐ»ŃŽŃ‡ĐœĐ” _АБО"
-#: ../src/verbs.cpp:2586
+#: ../src/verbs.cpp:2555
msgid ""
"Create exclusive OR of selected paths (those parts that belong to only one "
"path)"
@@ -25752,21 +25793,21 @@ msgstr ""
"СтĐČĐŸŃ€ĐžŃ‚Đž ĐșĐŸĐœŃ‚ŃƒŃ€ ŃˆĐ»ŃŃ…ĐŸĐŒ ĐČĐžĐșĐ»ŃŽŃ‡ĐœĐŸĐłĐŸ АБО Đ· ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐžŃ… ĐșĐŸĐœŃ‚ŃƒŃ€Ń–ĐČ (ті Ń‡Đ°ŃŃ‚ĐžĐœĐž, Ń‰ĐŸ "
"ĐœĐ°Đ»Đ”Đ¶Đ°Ń‚ŃŒ Ń‚Ń–Đ»ŃŒĐșĐž ĐŸĐŽĐœĐŸĐŒŃƒ Đ· ĐșĐŸĐœŃ‚ŃƒŃ€Ń–ĐČ)"
-#: ../src/verbs.cpp:2587
+#: ../src/verbs.cpp:2556
msgid "Di_vision"
msgstr "_Đ”Ń–Đ»Đ”ĐœĐœŃ"
-#: ../src/verbs.cpp:2588
+#: ../src/verbs.cpp:2557
msgid "Cut the bottom path into pieces"
msgstr "Đ ĐŸĐ·Ń€Ń–Đ·Đ°Ń‚Đž ĐœĐžĐ¶ĐœŃ–Đč ĐșĐŸĐœŃ‚ŃƒŃ€ ĐČĐ”Ń€Ń…ĐœŃ–ĐŒ ĐœĐ° Ń‡Đ°ŃŃ‚ĐžĐœĐž"
#. TRANSLATORS: "to cut a path" is not the same as "to break a path apart" - see the
#. Advanced tutorial for more info
-#: ../src/verbs.cpp:2591
+#: ../src/verbs.cpp:2560
msgid "Cut _Path"
msgstr "Đ ĐŸĐ·Ń€Ń–Đ·Đ°Ń‚Đž _ĐșĐŸĐœŃ‚ŃƒŃ€"
-#: ../src/verbs.cpp:2592
+#: ../src/verbs.cpp:2561
msgid "Cut the bottom path's stroke into pieces, removing fill"
msgstr ""
"Đ ĐŸĐ·Ń€Ń–Đ·Đ°Ń‚Đž штрох ĐœĐžĐ¶ĐœŃŒĐŸĐłĐŸ ĐșĐŸĐœŃ‚ŃƒŃ€Ńƒ ĐČĐ”Ń€Ń…ĐœŃ–ĐŒ ĐœĐ° Ń‡Đ°ŃŃ‚ĐžĐœĐž, Đ· ĐČĐžĐ»ŃƒŃ‡Đ”ĐœĐœŃĐŒ Đ·Đ°ĐżĐŸĐČĐœĐ”ĐœĐœŃ"
@@ -25774,357 +25815,357 @@ msgstr ""
#. TRANSLATORS: "outset": expand a shape by offsetting the object's path,
#. i.e. by displacing it perpendicular to the path in each point.
#. See also the Advanced Tutorial for explanation.
-#: ../src/verbs.cpp:2596
+#: ../src/verbs.cpp:2565
msgid "Outs_et"
msgstr "Đ ĐŸ_Đ·Ń‚ŃĐłĐœŃƒŃ‚Đž"
-#: ../src/verbs.cpp:2597
+#: ../src/verbs.cpp:2566
msgid "Outset selected paths"
msgstr "Đ ĐŸĐ·Ń‚ŃĐłĐœŃƒŃ‚Đž ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœŃ– ĐșĐŸĐœŃ‚ŃƒŃ€Đž"
-#: ../src/verbs.cpp:2599
+#: ../src/verbs.cpp:2568
msgid "O_utset Path by 1 px"
msgstr "Đ _ĐŸĐ·Ń‚ŃĐłĐœŃƒŃ‚Đž ĐœĐ° 1 Ń‚ĐŸŃ‡Đșу"
-#: ../src/verbs.cpp:2600
+#: ../src/verbs.cpp:2569
msgid "Outset selected paths by 1 px"
msgstr "Đ ĐŸĐ·Ń‚ŃĐłĐœŃƒŃ‚Đž ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœŃ– ĐșĐŸĐœŃ‚ŃƒŃ€Đž ĐœĐ° 1 Ń‚ĐŸŃ‡Đșу"
-#: ../src/verbs.cpp:2602
+#: ../src/verbs.cpp:2571
msgid "O_utset Path by 10 px"
msgstr "Đ _ĐŸĐ·Ń‚ŃĐłĐœŃƒŃ‚Đž ĐœĐ° 10 Ń‚ĐŸŃ‡ĐŸĐș"
-#: ../src/verbs.cpp:2603
+#: ../src/verbs.cpp:2572
msgid "Outset selected paths by 10 px"
msgstr "Đ ĐŸĐ·Ń‚ŃĐłĐœŃƒŃ‚Đž ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœŃ– ĐșĐŸĐœŃ‚ŃƒŃ€Đž ĐœĐ° 10 Ń‚ĐŸŃ‡ĐŸĐș"
#. TRANSLATORS: "inset": contract a shape by offsetting the object's path,
#. i.e. by displacing it perpendicular to the path in each point.
#. See also the Advanced Tutorial for explanation.
-#: ../src/verbs.cpp:2607
+#: ../src/verbs.cpp:2576
msgid "I_nset"
msgstr "В_Ń‚ŃĐłĐœŃƒŃ‚Đž"
-#: ../src/verbs.cpp:2608
+#: ../src/verbs.cpp:2577
msgid "Inset selected paths"
msgstr "Đ’Ń‚ŃĐłĐœŃƒŃ‚Đž ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœŃ– ĐșĐŸĐœŃ‚ŃƒŃ€Đž"
-#: ../src/verbs.cpp:2610
+#: ../src/verbs.cpp:2579
msgid "I_nset Path by 1 px"
msgstr "Вт_ŃĐłĐœŃƒŃ‚Đž ĐșĐŸĐœŃ‚ŃƒŃ€ ĐœĐ° 1 Ń‚ĐŸŃ‡Đșу"
-#: ../src/verbs.cpp:2611
+#: ../src/verbs.cpp:2580
msgid "Inset selected paths by 1 px"
msgstr "Đ’Ń‚ŃĐłĐœŃƒŃ‚Đž ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœŃ– ĐșĐŸĐœŃ‚ŃƒŃ€Đž ĐœĐ° 1 Ń‚ĐŸŃ‡Đșу"
-#: ../src/verbs.cpp:2613
+#: ../src/verbs.cpp:2582
msgid "I_nset Path by 10 px"
msgstr "Вт_ŃĐłĐœŃƒŃ‚Đž ĐșĐŸĐœŃ‚ŃƒŃ€ ĐœĐ° 10 Ń‚ĐŸŃ‡ĐŸĐș"
-#: ../src/verbs.cpp:2614
+#: ../src/verbs.cpp:2583
msgid "Inset selected paths by 10 px"
msgstr "Đ’Ń‚ŃĐłĐœŃƒŃ‚Đž ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœŃ– ĐșĐŸĐœŃ‚ŃƒŃ€Đž ĐœĐ° 10 Ń‚ĐŸŃ‡ĐŸĐș"
-#: ../src/verbs.cpp:2616
+#: ../src/verbs.cpp:2585
msgid "D_ynamic Offset"
msgstr "Д_ĐžĐœĐ°ĐŒŃ–Ń‡ĐœĐžĐč ĐČіЮступ"
-#: ../src/verbs.cpp:2616
+#: ../src/verbs.cpp:2585
msgid "Create a dynamic offset object"
msgstr ""
"СтĐČĐŸŃ€ĐžŃ‚Đž ĐŸĐ±'єĐșт, ĐČтягуĐČĐ°ĐœĐœŃ/Ń€ĐŸĐ·Ń‚ŃĐłŃƒĐČĐ°ĐœĐœŃ яĐșĐŸĐłĐŸ ĐŒĐŸĐ¶ĐœĐ° Đ·ĐŒŃ–ĐœŃŽĐČато ĐŽĐžĐœĐ°ĐŒŃ–Ń‡ĐœĐŸ"
-#: ../src/verbs.cpp:2618
+#: ../src/verbs.cpp:2587
msgid "_Linked Offset"
msgstr "ЗĐČ'_ŃĐ·Đ°ĐœĐ” ĐČтягуĐČĐ°ĐœĐœŃ"
-#: ../src/verbs.cpp:2619
+#: ../src/verbs.cpp:2588
msgid "Create a dynamic offset object linked to the original path"
msgstr ""
"СтĐČĐŸŃ€ĐžŃ‚Đž ĐČтягуĐČĐ°ĐœĐœŃ/Ń€ĐŸĐ·Ń‚ŃĐłŃƒĐČĐ°ĐœĐœŃ, ĐŽĐžĐœĐ°ĐŒŃ–Ń‡ĐœĐŸ ĐżĐŸĐČ'ŃĐ·Đ°ĐœĐ” Đ· ĐżĐŸŃ‡Đ°Ń‚ĐșĐŸĐČĐžĐŒ ĐșĐŸĐœŃ‚ŃƒŃ€ĐŸĐŒ"
-#: ../src/verbs.cpp:2621
+#: ../src/verbs.cpp:2590
msgid "_Stroke to Path"
msgstr "_йтрох у ĐșĐŸĐœŃ‚ŃƒŃ€"
-#: ../src/verbs.cpp:2622
+#: ../src/verbs.cpp:2591
msgid "Convert selected object's stroke to paths"
msgstr "ĐŸĐ”Ń€Đ”Ń‚ĐČĐŸŃ€ĐžŃ‚Đž штрох ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐŸĐłĐŸ ĐŸĐ±'єĐșта ĐœĐ° ĐșĐŸĐœŃ‚ŃƒŃ€Đž"
-#: ../src/verbs.cpp:2623
+#: ../src/verbs.cpp:2592
msgid "Si_mplify"
msgstr "_ĐĄĐżŃ€ĐŸŃŃ‚ĐžŃ‚Đž"
-#: ../src/verbs.cpp:2624
+#: ../src/verbs.cpp:2593
msgid "Simplify selected paths (remove extra nodes)"
msgstr "ĐĄĐżŃ€ĐŸŃŃ‚ĐžŃ‚Đž ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœŃ– ĐșĐŸĐœŃ‚ŃƒŃ€Đž ĐČĐžĐ»ŃƒŃ‡Đ”ĐœĐœŃĐŒ заĐčĐČох ĐČŃƒĐ·Đ»Ń–ĐČ"
-#: ../src/verbs.cpp:2625
+#: ../src/verbs.cpp:2594
msgid "_Reverse"
msgstr "Đ ĐŸĐ·_ĐČĐ”Ń€ĐœŃƒŃ‚Đž"
-#: ../src/verbs.cpp:2626
+#: ../src/verbs.cpp:2595
msgid "Reverse the direction of selected paths (useful for flipping markers)"
msgstr ""
"Đ—ĐŒŃ–ĐœĐžŃ‚Đž ĐœĐ°ĐżŃ€ŃĐŒĐŸĐș ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐžŃ… ĐșĐŸĐœŃ‚ŃƒŃ€Ń–ĐČ ĐœĐ° ĐżŃ€ĐŸŃ‚ĐžĐ»Đ”Đ¶ĐœĐžĐč (ĐșĐŸŃ€ĐžŃĐœĐŸ ĐŽĐ»Ń "
"ĐČіЎЎзДрĐșĐ°Đ»Đ”ĐœĐœŃ ĐŒĐ°Ń€ĐșДріĐČ)"
-#: ../src/verbs.cpp:2629
+#: ../src/verbs.cpp:2598
msgid "Create one or more paths from a bitmap by tracing it"
msgstr ""
"СтĐČĐŸŃ€Đ”ĐœĐœŃ ĐŸĐŽĐœĐŸĐłĐŸ Đ°Đ±ĐŸ Đ±Ń–Đ»ŃŒŃˆĐ” ĐșĐŸĐœŃ‚ŃƒŃ€Ń–ĐČ Đ· Ń€Đ°ŃŃ‚Ń€ĐŸĐČĐŸĐłĐŸ фаĐčла ŃˆĐ»ŃŃ…ĐŸĐŒ трасуĐČĐ°ĐœĐœŃ"
-#: ../src/verbs.cpp:2630
+#: ../src/verbs.cpp:2599
msgid "Trace Pixel Art..."
msgstr "брасуĐČĐ°ĐœĐœŃ Ń€Đ°ŃŃ‚Ń€ĐŸĐČĐŸŃ— графіĐșо
"
-#: ../src/verbs.cpp:2631
+#: ../src/verbs.cpp:2600
msgid "Create paths using Kopf-Lischinski algorithm to vectorize pixel art"
msgstr ""
"СтĐČĐŸŃ€ĐžŃ‚Đž ĐșĐŸĐœŃ‚ŃƒŃ€Đž за Đ°Đ»ĐłĐŸŃ€ĐžŃ‚ĐŒĐŸĐŒ ĐšĐŸĐżŃ„Đ°-Đ›Ń–Ń‰ĐžĐœŃŃŒĐșĐŸĐłĐŸ ĐŽĐ»Ń ĐČĐ”ĐșŃ‚ĐŸŃ€ĐžĐ·Đ°Ń†Ń–Ń— Ń€Đ°ŃŃ‚Ń€ĐŸĐČĐŸŃ— "
"графіĐșĐž"
-#: ../src/verbs.cpp:2632
+#: ../src/verbs.cpp:2601
msgid "Make a _Bitmap Copy"
msgstr "З_Ń€ĐŸĐ±ĐžŃ‚Đž Ń€Đ°ŃŃ‚Ń€ĐŸĐČу ĐșĐŸĐżŃ–ŃŽ"
-#: ../src/verbs.cpp:2633
+#: ../src/verbs.cpp:2602
msgid "Export selection to a bitmap and insert it into document"
msgstr "ЕĐșŃĐżĐŸŃ€Ń‚ŃƒĐČато ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœŃ– ĐŸĐ±'єĐșто у растр та ĐČстаĐČото ĐčĐŸĐłĐŸ у ĐŽĐŸĐșŃƒĐŒĐ”ĐœŃ‚"
-#: ../src/verbs.cpp:2634
+#: ../src/verbs.cpp:2603
msgid "_Combine"
msgstr "Об'_Ń”ĐŽĐœĐ°Ń‚Đž"
-#: ../src/verbs.cpp:2635
+#: ../src/verbs.cpp:2604
msgid "Combine several paths into one"
msgstr "Об'Ń”ĐŽĐœĐ°Ń‚Đž ĐŽĐ”ĐșŃ–Đ»ŃŒĐșа ĐșĐŸĐœŃ‚ŃƒŃ€Ń–ĐČ Ńƒ ĐŸĐŽĐžĐœ"
#. TRANSLATORS: "to cut a path" is not the same as "to break a path apart" - see the
#. Advanced tutorial for more info
-#: ../src/verbs.cpp:2638
+#: ../src/verbs.cpp:2607
msgid "Break _Apart"
msgstr "_Đ ĐŸĐ·ĐŽŃ–Đ»ĐžŃ‚Đž"
-#: ../src/verbs.cpp:2639
+#: ../src/verbs.cpp:2608
msgid "Break selected paths into subpaths"
msgstr "Đ ĐŸĐ·ĐŽŃ–Đ»ĐžŃ‚Đž ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœŃ– ĐșĐŸĐœŃ‚ŃƒŃ€Đž ĐœĐ° Ń‡Đ°ŃŃ‚ĐžĐœĐž"
-#: ../src/verbs.cpp:2640
+#: ../src/verbs.cpp:2609
msgid "_Arrange..."
msgstr "_ĐšĐŸĐŒĐżĐŸĐœŃƒĐČато
"
-#: ../src/verbs.cpp:2641
+#: ../src/verbs.cpp:2610
msgid "Arrange selected objects in a table or circle"
msgstr "ĐšĐŸĐŒĐżĐŸĐœŃƒĐČато ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœŃ– ĐŸĐ±'єĐșто у Ń„ĐŸŃ€ĐŒŃ– таблОці Đ°Đ±ĐŸ за ĐșĐŸĐ»ĐŸĐŒ"
#. Layer
-#: ../src/verbs.cpp:2643
+#: ../src/verbs.cpp:2612
msgid "_Add Layer..."
msgstr "_Đ”ĐŸĐŽĐ°Ń‚Đž шар
"
-#: ../src/verbs.cpp:2644
+#: ../src/verbs.cpp:2613
msgid "Create a new layer"
msgstr "СтĐČĐŸŃ€ĐžŃ‚Đž ĐœĐŸĐČĐžĐč шар"
-#: ../src/verbs.cpp:2645
+#: ../src/verbs.cpp:2614
msgid "Re_name Layer..."
msgstr "ĐŸĐ”Ń€Đ”_ĐčĐŒĐ”ĐœŃƒĐČато шар
"
-#: ../src/verbs.cpp:2646
+#: ../src/verbs.cpp:2615
msgid "Rename the current layer"
msgstr "ĐŸĐ”Ń€Đ”ĐčĐŒĐ”ĐœŃƒĐČато ĐżĐŸŃ‚ĐŸŃ‡ĐœĐžĐč шар"
-#: ../src/verbs.cpp:2647
+#: ../src/verbs.cpp:2616
msgid "Switch to Layer Abov_e"
msgstr "ĐŸĐ”Ń€Đ”Đčто ĐœĐ° шар _ĐČОщД"
-#: ../src/verbs.cpp:2648
+#: ../src/verbs.cpp:2617
msgid "Switch to the layer above the current"
msgstr "ĐŸĐ”Ń€Đ”Đčто ĐœĐ° шар, Ń‰ĐŸ Đ·ĐœĐ°Ń…ĐŸĐŽĐžŃ‚ŃŒŃŃ ĐČОщД ĐČіЮ ĐżĐŸŃ‚ĐŸŃ‡ĐœĐŸĐłĐŸ"
-#: ../src/verbs.cpp:2649
+#: ../src/verbs.cpp:2618
msgid "Switch to Layer Belo_w"
msgstr "ĐŸĐ”Ń€Đ”Đčто ĐœĐ° шар _ĐœĐžĐ¶Ń‡Đ”"
-#: ../src/verbs.cpp:2650
+#: ../src/verbs.cpp:2619
msgid "Switch to the layer below the current"
msgstr "ĐŸĐ”Ń€Đ”Đčто ĐœĐ° шар, Ń‰ĐŸ Đ·ĐœĐ°Ń…ĐŸĐŽĐžŃ‚ŃŒŃŃ ĐœĐžĐ¶Ń‡Đ” ĐČіЮ ĐżĐŸŃ‚ĐŸŃ‡ĐœĐŸĐłĐŸ"
-#: ../src/verbs.cpp:2651
+#: ../src/verbs.cpp:2620
msgid "Move Selection to Layer Abo_ve"
msgstr "ĐŸĐ”Ń€Đ”ĐŒŃ–ŃŃ‚ĐžŃ‚Đž ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœŃ– ĐŸĐ±'єĐșто ĐœĐ° шар ĐČĐž_щД"
-#: ../src/verbs.cpp:2652
+#: ../src/verbs.cpp:2621
msgid "Move selection to the layer above the current"
msgstr "ĐŸĐ”Ń€Đ”ĐŒŃ–ŃŃ‚ĐžŃ‚Đž ĐœĐ° шар, Ń‰ĐŸ Đ·ĐœĐ°Ń…ĐŸĐŽĐžŃ‚ŃŒŃŃ ĐœĐ°ĐŽ ĐżĐŸŃ‚ĐŸŃ‡ĐœĐžĐŒ"
-#: ../src/verbs.cpp:2653
+#: ../src/verbs.cpp:2622
msgid "Move Selection to Layer Bel_ow"
msgstr "ĐŸĐ”Ń€Đ”ĐŒŃ–ŃŃ‚ĐžŃ‚Đž ĐœĐ° шар ĐœĐž_жчД"
-#: ../src/verbs.cpp:2654
+#: ../src/verbs.cpp:2623
msgid "Move selection to the layer below the current"
msgstr "ĐŸĐ”Ń€Đ”ĐŒŃ–ŃŃ‚ĐžŃ‚Đž ĐœĐ° шар, Ń‰ĐŸ Đ·ĐœĐ°Ń…ĐŸĐŽĐžŃ‚ŃŒŃŃ піЮ ĐżĐŸŃ‚ĐŸŃ‡ĐœĐžĐŒ"
-#: ../src/verbs.cpp:2655
+#: ../src/verbs.cpp:2624
msgid "Move Selection to Layer..."
msgstr "ĐŸĐ”Ń€Đ”ŃŃƒĐœŃƒŃ‚Đž ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐ” ĐŽĐŸ шару
"
-#: ../src/verbs.cpp:2657
+#: ../src/verbs.cpp:2626
msgid "Layer to _Top"
msgstr "ĐŸŃ–ĐŽĐœŃŃ‚Đž шар ĐŽĐŸ_ĐłĐŸŃ€Đž"
-#: ../src/verbs.cpp:2658
+#: ../src/verbs.cpp:2627
msgid "Raise the current layer to the top"
msgstr "ĐŸŃ–ĐŽĐœŃŃ‚Đž ĐżĐŸŃ‚ĐŸŃ‡ĐœĐžĐč шар ĐŽĐŸĐłĐŸŃ€Đž"
-#: ../src/verbs.cpp:2659
+#: ../src/verbs.cpp:2628
msgid "Layer to _Bottom"
msgstr "Опустото шар ĐČ _ĐŸŃĐœĐŸĐČу"
-#: ../src/verbs.cpp:2660
+#: ../src/verbs.cpp:2629
msgid "Lower the current layer to the bottom"
msgstr "Опустото ĐżĐŸŃ‚ĐŸŃ‡ĐœĐžĐč шар ĐœĐ° ĐœĐ°ĐčĐœĐžĐ¶Ń‡ĐžĐč ріĐČĐ”ĐœŃŒ"
-#: ../src/verbs.cpp:2661
+#: ../src/verbs.cpp:2630
msgid "_Raise Layer"
msgstr "_ĐŸŃ–ĐŽĐœŃŃ‚Đž шар"
-#: ../src/verbs.cpp:2662
+#: ../src/verbs.cpp:2631
msgid "Raise the current layer"
msgstr "ĐŸŃ–ĐŽĐœŃŃ‚Đž ĐżĐŸŃ‚ĐŸŃ‡ĐœĐžĐč шар"
-#: ../src/verbs.cpp:2663
+#: ../src/verbs.cpp:2632
msgid "_Lower Layer"
msgstr "_Опустото шар"
-#: ../src/verbs.cpp:2664
+#: ../src/verbs.cpp:2633
msgid "Lower the current layer"
msgstr "Опустото ĐżĐŸŃ‚ĐŸŃ‡ĐœĐžĐč шар"
-#: ../src/verbs.cpp:2665
+#: ../src/verbs.cpp:2634
msgid "D_uplicate Current Layer"
msgstr "Д_ŃƒĐ±Đ»ŃŽĐČато ĐżĐŸŃ‚ĐŸŃ‡ĐœĐžĐč шар"
-#: ../src/verbs.cpp:2666
+#: ../src/verbs.cpp:2635
msgid "Duplicate an existing layer"
msgstr "Đ”ŃƒĐ±Đ»ŃŽĐČато ĐżĐŸŃ‚ĐŸŃ‡ĐœĐžĐč шар"
-#: ../src/verbs.cpp:2667
+#: ../src/verbs.cpp:2636
msgid "_Delete Current Layer"
msgstr "В_ĐžĐ»ŃƒŃ‡ĐžŃ‚Đž ĐżĐŸŃ‚ĐŸŃ‡ĐœĐžĐč шар"
-#: ../src/verbs.cpp:2668
+#: ../src/verbs.cpp:2637
msgid "Delete the current layer"
msgstr "Đ’ĐžĐ»ŃƒŃ‡ĐžŃ‚Đž ĐżĐŸŃ‚ĐŸŃ‡ĐœĐžĐč шар"
-#: ../src/verbs.cpp:2669
+#: ../src/verbs.cpp:2638
msgid "_Show/hide other layers"
msgstr "_ĐŸĐŸĐșазатО Đ°Đ±ĐŸ ŃŃ…ĐŸĐČато Ń–ĐœŃˆŃ– шаро"
-#: ../src/verbs.cpp:2670
+#: ../src/verbs.cpp:2639
msgid "Solo the current layer"
msgstr "Đ’ĐžĐŸĐșŃ€Đ”ĐŒĐžŃ‚Đž ĐżĐŸŃ‚ĐŸŃ‡ĐœĐžĐč шар"
-#: ../src/verbs.cpp:2671
+#: ../src/verbs.cpp:2640
msgid "_Show all layers"
msgstr "ĐŸĐŸ_ĐșазатО ĐČсі шаро"
-#: ../src/verbs.cpp:2672
+#: ../src/verbs.cpp:2641
msgid "Show all the layers"
msgstr "ĐŸĐŸĐșазатО ĐČсі шаро"
-#: ../src/verbs.cpp:2673
+#: ../src/verbs.cpp:2642
msgid "_Hide all layers"
msgstr "Про_Ń…ĐŸĐČато ĐČсі шаро"
-#: ../src/verbs.cpp:2674
+#: ../src/verbs.cpp:2643
msgid "Hide all the layers"
msgstr "ĐŸŃ€ĐžŃ…ĐŸĐČато ĐČсі шаро"
-#: ../src/verbs.cpp:2675
+#: ../src/verbs.cpp:2644
msgid "_Lock all layers"
msgstr "За_Đ±Đ»ĐŸĐșуĐČато ĐČсі шаро"
-#: ../src/verbs.cpp:2676
+#: ../src/verbs.cpp:2645
msgid "Lock all the layers"
msgstr "Đ—Đ°Đ±Đ»ĐŸĐșуĐČато ĐČсі шаро"
-#: ../src/verbs.cpp:2677
+#: ../src/verbs.cpp:2646
msgid "Lock/Unlock _other layers"
msgstr "Đ—Đ°Đ±Đ»ĐŸĐșуĐČато чо Ń€ĐŸĐ·Đ±Đ»ĐŸĐșуĐČато Ń–Đœ_ші шаро"
-#: ../src/verbs.cpp:2678
+#: ../src/verbs.cpp:2647
msgid "Lock all the other layers"
msgstr "Đ—Đ°Đ±Đ»ĐŸĐșуĐČато ĐČсі Ń–ĐœŃˆŃ– шаро"
-#: ../src/verbs.cpp:2679
+#: ../src/verbs.cpp:2648
msgid "_Unlock all layers"
msgstr "_Đ ĐŸĐ·Đ±Đ»ĐŸĐșуĐČато ĐČсі шаро"
-#: ../src/verbs.cpp:2680
+#: ../src/verbs.cpp:2649
msgid "Unlock all the layers"
msgstr "Đ ĐŸĐ·Đ±Đ»ĐŸĐșуĐČато ĐČсі шаро"
-#: ../src/verbs.cpp:2681
+#: ../src/verbs.cpp:2650
msgid "_Lock/Unlock Current Layer"
msgstr "За_Đ±Đ»ĐŸĐșуĐČато чо Ń€ĐŸĐ·Đ±Đ»ĐŸĐșуĐČато ĐżĐŸŃ‚ĐŸŃ‡ĐœĐžĐč шар"
-#: ../src/verbs.cpp:2682
+#: ../src/verbs.cpp:2651
msgid "Toggle lock on current layer"
msgstr "Đ—Đ°Đ±Đ»ĐŸĐșуĐČато Đ°Đ±ĐŸ Ń€ĐŸĐ·Đ±Đ»ĐŸĐșуĐČато ĐżĐŸŃ‚ĐŸŃ‡ĐœĐžĐč шар"
-#: ../src/verbs.cpp:2683
+#: ../src/verbs.cpp:2652
msgid "_Show/hide Current Layer"
msgstr "_ĐŸĐŸĐșазатО Đ°Đ±ĐŸ ŃŃ…ĐŸĐČато ĐżĐŸŃ‚ĐŸŃ‡ĐœĐžĐč шар"
-#: ../src/verbs.cpp:2684
+#: ../src/verbs.cpp:2653
msgid "Toggle visibility of current layer"
msgstr "ĐŁĐČŃ–ĐŒĐșĐœŃƒŃ‚Đž/Đ’ĐžĐŒĐșĐœŃƒŃ‚Đž ĐČĐžĐŽĐžĐŒŃ–ŃŃ‚ŃŒ ĐżĐŸŃ‚ĐŸŃ‡ĐœĐŸĐłĐŸ шару"
#. Object
-#: ../src/verbs.cpp:2687
+#: ../src/verbs.cpp:2656
msgid "Rotate _90° CW"
msgstr "ĐžĐ±Đ”Ń€ĐœŃƒŃ‚Đž ĐœĐ° _90° за ĐłĐŸĐŽĐžĐœĐœĐžĐșĐŸĐČĐŸŃŽ стрілĐșĐŸŃŽ"
#. This is shared between tooltips and statusbar, so they
#. must use UTF-8, not HTML entities for special characters.
-#: ../src/verbs.cpp:2690
+#: ../src/verbs.cpp:2659
msgid "Rotate selection 90° clockwise"
msgstr "ĐžĐ±Đ”Ń€ĐœŃƒŃ‚Đž ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœŃ– ĐŸĐ±'єĐșто ĐœĐ° 90° за ĐłĐŸĐŽĐžĐœĐœĐžĐșĐŸĐČĐŸŃŽ стрілĐșĐŸŃŽ"
-#: ../src/verbs.cpp:2691
+#: ../src/verbs.cpp:2660
msgid "Rotate 9_0° CCW"
msgstr "ĐžĐ±Đ”Ń€ĐœŃƒŃ‚Đž ĐœĐ° 9_0° ĐżŃ€ĐŸŃ‚Đž ĐłĐŸĐŽĐžĐœĐœĐžĐșĐŸĐČĐŸŃ— стрілĐșĐž"
#. This is shared between tooltips and statusbar, so they
#. must use UTF-8, not HTML entities for special characters.
-#: ../src/verbs.cpp:2694
+#: ../src/verbs.cpp:2663
msgid "Rotate selection 90° counter-clockwise"
msgstr "ĐžĐ±Đ”Ń€ĐœŃƒŃ‚Đž ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœŃ– ĐŸĐ±'єĐșто ĐœĐ° 90° ĐżŃ€ĐŸŃ‚Đž ĐłĐŸĐŽĐžĐœĐœĐžĐșĐŸĐČĐŸŃ— стрілĐșĐž"
-#: ../src/verbs.cpp:2695
+#: ../src/verbs.cpp:2664
msgid "Remove _Transformations"
msgstr "ĐŸŃ€ĐžĐ±Ń€Đ°Ń‚Đž _Ń‚Ń€Đ°ĐœŃŃ„ĐŸŃ€ĐŒĐ°Ń†Ń–ŃŽ"
-#: ../src/verbs.cpp:2696
+#: ../src/verbs.cpp:2665
msgid "Remove transformations from object"
msgstr "ĐŸŃ€ĐžĐ±Ń€Đ°Ń‚Đž Ń‚Ń€Đ°ĐœŃŃ„ĐŸŃ€ĐŒĐ°Ń†Ń–Ń— Đ· ĐŸĐ±'єĐșта"
-#: ../src/verbs.cpp:2697
+#: ../src/verbs.cpp:2666
msgid "_Object to Path"
msgstr "_Об'єĐșт у ĐșĐŸĐœŃ‚ŃƒŃ€"
-#: ../src/verbs.cpp:2698
+#: ../src/verbs.cpp:2667
msgid "Convert selected object to path"
msgstr "ĐŸĐ”Ń€Đ”Ń‚ĐČĐŸŃ€ĐžŃ‚Đž ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐžĐč ĐŸĐ±'єĐșт ĐœĐ° ĐșĐŸĐœŃ‚ŃƒŃ€"
-#: ../src/verbs.cpp:2699
+#: ../src/verbs.cpp:2668
msgid "_Flow into Frame"
msgstr "_ĐžĐłĐŸŃ€ĐœŃƒŃ‚Đž ĐČ Ń€Đ°ĐŒĐșу"
-#: ../src/verbs.cpp:2700
+#: ../src/verbs.cpp:2669
msgid ""
"Put text into a frame (path or shape), creating a flowed text linked to the "
"frame object"
@@ -26132,750 +26173,750 @@ msgstr ""
"ВĐșластО тДĐșст у Ń€Đ°ĐŒĐșу (ĐșĐŸĐœŃ‚ŃƒŃ€ чо Ń„ĐŸŃ€ĐŒŃƒ), стĐČĐŸŃ€ĐžĐČшО ĐșĐŸĐœŃ‚ŃƒŃ€ĐœĐžĐč тДĐșст "
"проĐČ'ŃĐ·Đ°ĐœĐžĐč ĐŽĐŸ ĐŸĐ±'єĐșта Ń€Đ°ĐŒĐșĐž"
-#: ../src/verbs.cpp:2701
+#: ../src/verbs.cpp:2670
msgid "_Unflow"
msgstr "_ВоĐčĐœŃŃ‚Đž Đ· Ń€Đ°ĐŒĐșĐž"
-#: ../src/verbs.cpp:2702
+#: ../src/verbs.cpp:2671
msgid "Remove text from frame (creates a single-line text object)"
msgstr "ВоĐčĐœŃŃ‚Đž тДст Đ· Ń€Đ°ĐŒĐșĐž, стĐČĐŸŃ€ĐžĐČшО Đ·ĐČочаĐčĐœĐžĐč Ń‚Đ”ŃŃ‚ĐŸĐČĐžĐč ĐŸĐ±'єĐșт ĐČ ĐŸĐŽĐžĐœ Ń€ŃĐŽĐŸĐș"
-#: ../src/verbs.cpp:2703
+#: ../src/verbs.cpp:2672
msgid "_Convert to Text"
msgstr "_ĐŸĐ”Ń€Đ”Ń‚ĐČĐŸŃ€ĐžŃ‚Đž у тДĐșст"
-#: ../src/verbs.cpp:2704
+#: ../src/verbs.cpp:2673
msgid "Convert flowed text to regular text object (preserves appearance)"
msgstr "ĐŸĐ”Ń€Đ”Ń‚ĐČĐŸŃ€ĐžŃ‚Đž ĐșĐŸĐœŃ‚ŃƒŃ€ĐœĐžĐč тДĐșст у Đ·ĐČочаĐčĐœĐžĐč тДĐșст (Ń–Đ· Đ·Đ±Đ”Ń€Đ”Đ¶Đ”ĐœĐœŃĐŒ ĐČĐžĐłĐ»ŃĐŽŃƒ)"
-#: ../src/verbs.cpp:2706
+#: ../src/verbs.cpp:2675
msgid "Flip _Horizontal"
msgstr "ВіЎЎзДрĐșалОтО ĐłĐŸŃ€_ĐžĐ·ĐŸĐœŃ‚Đ°Đ»ŃŒĐœĐŸ"
-#: ../src/verbs.cpp:2706
+#: ../src/verbs.cpp:2675
msgid "Flip selected objects horizontally"
msgstr "ВіЎЎзДрĐșалОтО ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœŃ– ĐŸĐ±'єĐșто ĐłĐŸŃ€ĐžĐ·ĐŸĐœŃ‚Đ°Đ»ŃŒĐœĐŸ"
-#: ../src/verbs.cpp:2709
+#: ../src/verbs.cpp:2678
msgid "Flip _Vertical"
msgstr "ВіЎЎзДрĐșалОтО _ĐČДртОĐșĐ°Đ»ŃŒĐœĐŸ"
-#: ../src/verbs.cpp:2709
+#: ../src/verbs.cpp:2678
msgid "Flip selected objects vertically"
msgstr "ВіЎЎзДрĐșалОтО ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœŃ– ĐŸĐ±'єĐșто ĐČДртОĐșĐ°Đ»ŃŒĐœĐŸ"
-#: ../src/verbs.cpp:2712
+#: ../src/verbs.cpp:2681
msgid "Apply mask to selection (using the topmost object as mask)"
msgstr ""
"Đ—Đ°ŃŃ‚ĐŸŃŃƒĐČато ĐŒĐ°ŃĐșу ĐŽĐŸ ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐžŃ… ĐŸĐ±'єĐșтіĐČ (ĐČĐžĐșĐŸŃ€ĐžŃŃ‚ĐŸĐČуючо ĐœĐ°ĐčĐČощоĐč ĐŸĐ±'єĐșт яĐș "
"ĐŒĐ°ŃĐșу)"
-#: ../src/verbs.cpp:2714
+#: ../src/verbs.cpp:2683
msgid "Edit mask"
msgstr "Đ—ĐŒŃ–ĐœĐžŃ‚Đž ĐŒĐ°ŃĐșу"
-#: ../src/verbs.cpp:2715 ../src/verbs.cpp:2723
+#: ../src/verbs.cpp:2684 ../src/verbs.cpp:2692
msgid "_Release"
msgstr "_ĐĄĐșĐžĐœŃƒŃ‚Đž"
-#: ../src/verbs.cpp:2716
+#: ../src/verbs.cpp:2685
msgid "Remove mask from selection"
msgstr "Đ’ĐžĐ»ŃƒŃ‡ĐžŃ‚Đž ĐŒĐ°ŃĐșу Đ· ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐŸĐłĐŸ"
-#: ../src/verbs.cpp:2718
+#: ../src/verbs.cpp:2687
msgid ""
"Apply clipping path to selection (using the topmost object as clipping path)"
msgstr ""
"Đ—Đ°ŃŃ‚ĐŸŃŃƒĐČато ĐșĐŸĐœŃ‚ŃƒŃ€-ĐŸĐ±ĐłĐŸŃ€Ń‚Đșу ĐŽĐŸ ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐžŃ… ĐŸĐ±'єĐșтіĐČ (ĐČĐžĐșĐŸŃ€ĐžŃŃ‚ĐŸĐČуючо ĐœĐ°ĐčĐČощоĐč "
"ĐŸĐ±'єĐșт яĐș ĐșĐŸĐœŃ‚ŃƒŃ€-ĐŸĐ±ĐłĐŸŃ€Ń‚Đșу)"
-#: ../src/verbs.cpp:2719
+#: ../src/verbs.cpp:2688
msgid "Create Cl_ip Group"
msgstr "СтĐČĐŸŃ€ĐžŃ‚Đž групу-ĐŸĐ±ĐłĐŸŃ€_тĐșу"
-#: ../src/verbs.cpp:2720
+#: ../src/verbs.cpp:2689
msgid "Creates a clip group using the selected objects as a base"
msgstr "СтĐČĐŸŃ€ĐžŃ‚Đž групу-ĐŸĐ±ĐłĐŸŃ€Ń‚Đșу ĐœĐ° ĐŸŃĐœĐŸĐČі ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐžŃ… ĐŸĐ±â€™Ń”ĐșтіĐČ"
-#: ../src/verbs.cpp:2722
+#: ../src/verbs.cpp:2691
msgid "Edit clipping path"
msgstr "Đ—ĐŒŃ–ĐœĐžŃ‚Đž ĐșĐŸĐœŃ‚ŃƒŃ€-ĐŸĐ±ĐłĐŸŃ€Ń‚Đșу"
-#: ../src/verbs.cpp:2724
+#: ../src/verbs.cpp:2693
msgid "Remove clipping path from selection"
msgstr "Đ’ĐžĐ»ŃƒŃ‡ĐžŃ‚Đž ĐșĐŸĐœŃ‚ŃƒŃ€-ĐŸĐ±ĐłĐŸŃ€Ń‚Đșу Đ· ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐžŃ… ĐŸĐ±'єĐșтіĐČ'"
#. Tools
-#: ../src/verbs.cpp:2729
+#: ../src/verbs.cpp:2698
msgctxt "ContextVerb"
msgid "Select"
msgstr "ĐŸĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐœŃ"
-#: ../src/verbs.cpp:2730
+#: ../src/verbs.cpp:2699
msgid "Select and transform objects"
msgstr "ĐŸĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐœŃ та Ń‚Ń€Đ°ĐœŃŃ„ĐŸŃ€ĐŒĐ°Ń†Ń–Ń ĐŸĐ±'єĐșтіĐČ"
-#: ../src/verbs.cpp:2731
+#: ../src/verbs.cpp:2700
msgctxt "ContextVerb"
msgid "Node Edit"
msgstr "РДЎаĐșŃ‚ĐŸŃ€ ĐČŃƒĐ·Đ»Ń–ĐČ"
-#: ../src/verbs.cpp:2732
+#: ../src/verbs.cpp:2701
msgid "Edit paths by nodes"
msgstr "РДЎагуĐČĐ°ĐœĐœŃ ĐșĐŸĐœŃ‚ŃƒŃ€Ń–ĐČ Đ·Đ° ĐČŃƒĐ·Đ»Đ°ĐŒĐž"
-#: ../src/verbs.cpp:2733
+#: ../src/verbs.cpp:2702
msgctxt "ContextVerb"
msgid "Tweak"
msgstr "ĐšĐŸŃ€Đ”Đșція"
-#: ../src/verbs.cpp:2734
+#: ../src/verbs.cpp:2703
msgid "Tweak objects by sculpting or painting"
msgstr "ĐšĐŸŃ€ĐžĐłŃƒĐČато ĐŸĐ±'єĐșто за ĐŽĐŸĐżĐŸĐŒĐŸĐłĐŸŃŽ ĐżŃ€ĐŸŃ„Ń–Đ»ŃŽĐČĐ°ĐœĐœŃ Đ°Đ±ĐŸ Ń€ĐŸĐ·Ń„Đ°Ń€Đ±ĐŸĐČуĐČĐ°ĐœĐœŃ"
-#: ../src/verbs.cpp:2735
+#: ../src/verbs.cpp:2704
msgctxt "ContextVerb"
msgid "Spray"
msgstr "Đ ĐŸĐ·ĐșĐžĐŽĐ°ĐœĐœŃ"
-#: ../src/verbs.cpp:2736
+#: ../src/verbs.cpp:2705
msgid "Spray objects by sculpting or painting"
msgstr "Đ ĐŸĐ·ĐșоЮато ĐŸĐ±'єĐșто за ĐŽĐŸĐżĐŸĐŒĐŸĐłĐŸŃŽ ĐżŃ€ĐŸŃ„Ń–Đ»ŃŽĐČĐ°ĐœĐœŃ Đ°Đ±ĐŸ Ń€ĐŸĐ·Ń„Đ°Ń€Đ±ĐŸĐČуĐČĐ°ĐœĐœŃ"
-#: ../src/verbs.cpp:2737
+#: ../src/verbs.cpp:2706
msgctxt "ContextVerb"
msgid "Rectangle"
msgstr "ĐŸŃ€ŃĐŒĐŸĐșŃƒŃ‚ĐœĐžĐș"
-#: ../src/verbs.cpp:2738
+#: ../src/verbs.cpp:2707
msgid "Create rectangles and squares"
msgstr "СтĐČĐŸŃ€Đ”ĐœĐœŃ ĐżŃ€ŃĐŒĐŸĐșŃƒŃ‚ĐœĐžĐșіĐČ Ń‚Đ° ĐșĐČаЮратіĐČ"
-#: ../src/verbs.cpp:2739
+#: ../src/verbs.cpp:2708
msgctxt "ContextVerb"
msgid "3D Box"
msgstr "ĐŸŃ€ĐŸŃŃ‚ĐŸŃ€ĐŸĐČĐžĐč ĐŸĐ±'єĐșт"
-#: ../src/verbs.cpp:2740
+#: ../src/verbs.cpp:2709
msgid "Create 3D boxes"
msgstr "СтĐČĐŸŃ€ĐžŃ‚Đž троĐČĐžĐŒŃ–Ń€ĐœŃ– ĐŸĐ±'єĐșто"
-#: ../src/verbs.cpp:2741
+#: ../src/verbs.cpp:2710
msgctxt "ContextVerb"
msgid "Ellipse"
msgstr "Еліпс"
-#: ../src/verbs.cpp:2742
+#: ../src/verbs.cpp:2711
msgid "Create circles, ellipses, and arcs"
msgstr "СтĐČĐŸŃ€Đ”ĐœĐœŃ ĐșŃ–Đ», ДліпсіĐČ Ń‚Đ° Ўуг"
-#: ../src/verbs.cpp:2743
+#: ../src/verbs.cpp:2712
msgctxt "ContextVerb"
msgid "Star"
msgstr "ЗірĐșа"
-#: ../src/verbs.cpp:2744
+#: ../src/verbs.cpp:2713
msgid "Create stars and polygons"
msgstr "СтĐČĐŸŃ€Đ”ĐœĐœŃ Đ·Ń–Ń€ĐŸĐș та Đ±Đ°ĐłĐ°Ń‚ĐŸĐșŃƒŃ‚ĐœĐžĐșіĐČ"
-#: ../src/verbs.cpp:2745
+#: ../src/verbs.cpp:2714
msgctxt "ContextVerb"
msgid "Spiral"
msgstr "ĐĄĐżŃ–Ń€Đ°Đ»ŃŒ"
-#: ../src/verbs.cpp:2746
+#: ../src/verbs.cpp:2715
msgid "Create spirals"
msgstr "СтĐČĐŸŃ€Đ”ĐœĐœŃ спіралДĐč"
-#: ../src/verbs.cpp:2747
+#: ../src/verbs.cpp:2716
msgctxt "ContextVerb"
msgid "Pencil"
msgstr "ОліĐČĐ”Ń†ŃŒ"
-#: ../src/verbs.cpp:2748
+#: ../src/verbs.cpp:2717
msgid "Draw freehand lines"
msgstr "ĐœĐ°Đ»ŃŽĐČĐ°ĐœĐœŃ ĐŽĐŸĐČŃ–Đ»ŃŒĐœĐžŃ… ĐșĐŸĐœŃ‚ŃƒŃ€Ń–ĐČ"
-#: ../src/verbs.cpp:2749
+#: ../src/verbs.cpp:2718
msgctxt "ContextVerb"
msgid "Pen"
msgstr "ĐŸĐ”Ń€ĐŸ"
-#: ../src/verbs.cpp:2750
+#: ../src/verbs.cpp:2719
msgid "Draw Bezier curves and straight lines"
msgstr "ĐœĐ°Đ»ŃŽĐČĐ°ĐœĐœŃ ĐșроĐČох Đ‘Đ”Đ·ŃŒŃ” чо ĐżŃ€ŃĐŒĐžŃ… Đ»Ń–ĐœŃ–Đč"
-#: ../src/verbs.cpp:2751
+#: ../src/verbs.cpp:2720
msgctxt "ContextVerb"
msgid "Calligraphy"
msgstr "ĐšĐ°Đ»Ń–ĐłŃ€Đ°Ń„Ń–Ń"
-#: ../src/verbs.cpp:2752
+#: ../src/verbs.cpp:2721
msgid "Draw calligraphic or brush strokes"
msgstr "ĐœĐ°Đ»ŃŽĐČато ĐșĐ°Đ»Ń–ĐłŃ€Đ°Ń„Ń–Ń‡ĐœĐžĐŒ ĐżĐ”Ń€ĐŸĐŒ Đ°Đ±ĐŸ ĐżĐ”ĐœĐ·Đ»Đ”ĐŒ"
-#: ../src/verbs.cpp:2754
+#: ../src/verbs.cpp:2723
msgid "Create and edit text objects"
msgstr "СтĐČĐŸŃ€Đ”ĐœĐœŃ та Đ·ĐŒŃ–ĐœĐ° тДĐșŃŃ‚ĐŸĐČох ĐŸĐ±'єĐșтіĐČ"
-#: ../src/verbs.cpp:2755
+#: ../src/verbs.cpp:2724
msgctxt "ContextVerb"
msgid "Gradient"
msgstr "Đ“Ń€Đ°ĐŽŃ–Ń”ĐœŃ‚"
-#: ../src/verbs.cpp:2756
+#: ../src/verbs.cpp:2725
msgid "Create and edit gradients"
msgstr "СтĐČĐŸŃ€Đ”ĐœĐœŃ та Đ·ĐŒŃ–ĐœĐ° ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚Ń–ĐČ"
-#: ../src/verbs.cpp:2757
+#: ../src/verbs.cpp:2726
msgctxt "ContextVerb"
msgid "Mesh"
msgstr "СітĐșа"
-#: ../src/verbs.cpp:2758
+#: ../src/verbs.cpp:2727
msgid "Create and edit meshes"
msgstr "СтĐČĐŸŃ€Đ”ĐœĐœŃ та Đ·ĐŒŃ–ĐœĐ° ŃŃ–Ń‚ĐŸĐș"
-#: ../src/verbs.cpp:2759
+#: ../src/verbs.cpp:2728
msgctxt "ContextVerb"
msgid "Zoom"
msgstr "ĐœĐ°ŃŃˆŃ‚Đ°Đ±"
-#: ../src/verbs.cpp:2760
+#: ../src/verbs.cpp:2729
msgid "Zoom in or out"
msgstr "Đ—ĐŒŃ–ĐœĐžŃ‚Đž ĐŒĐ°ŃŃˆŃ‚Đ°Đ±"
-#: ../src/verbs.cpp:2762
+#: ../src/verbs.cpp:2731
msgid "Measurement tool"
msgstr "Đ†ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚ ĐČĐžĐŒŃ–Ń€ŃŽĐČĐ°ĐœĐœŃ"
-#: ../src/verbs.cpp:2763
+#: ../src/verbs.cpp:2732
msgctxt "ContextVerb"
msgid "Dropper"
msgstr "ĐŸŃ–ĐżĐ”Ń‚Đșа"
-#: ../src/verbs.cpp:2764 ../src/widgets/sp-color-notebook.cpp:396
+#: ../src/verbs.cpp:2733 ../src/widgets/sp-color-notebook.cpp:396
msgid "Pick colors from image"
msgstr "Đ’Đ·ŃŃ‚Đž ĐșĐŸĐ»ŃŒĐŸŃ€Đž Đ· Đ·ĐŸĐ±Ń€Đ°Đ¶Đ”ĐœĐœŃ"
-#: ../src/verbs.cpp:2765
+#: ../src/verbs.cpp:2734
msgctxt "ContextVerb"
msgid "Connector"
msgstr "Đ›Ń–ĐœŃ–Ń Đ·'Ń”ĐŽĐœĐ°ĐœĐœŃ"
-#: ../src/verbs.cpp:2766
+#: ../src/verbs.cpp:2735
msgid "Create diagram connectors"
msgstr "СтĐČĐŸŃ€ĐžŃ‚Đž Đ»Ń–ĐœŃ–Ń— Đ·'Ń”ĐŽĐœĐ°ĐœĐœŃ ĐœĐ° ĐŽŃ–Đ°ĐłŃ€Đ°ĐŒŃ–"
-#: ../src/verbs.cpp:2767
+#: ../src/verbs.cpp:2736
msgctxt "ContextVerb"
msgid "Paint Bucket"
msgstr "Đ’Ń–ĐŽŃ€ĐŸ Đ· Ń„Đ°Ń€Đ±ĐŸŃŽ"
-#: ../src/verbs.cpp:2768
+#: ../src/verbs.cpp:2737
msgid "Fill bounded areas"
msgstr "Đ—Đ°ĐżĐŸĐČĐœĐžŃ‚Đž Đ·Đ°ĐŒĐșĐœĐ”ĐœŃ– ĐŸĐ±Đ»Đ°ŃŃ‚Ń–"
-#: ../src/verbs.cpp:2769
+#: ../src/verbs.cpp:2738
msgctxt "ContextVerb"
msgid "LPE Edit"
msgstr "РДЎагуĐČĐ°ĐœĐœŃ ĐłĐ”ĐŸĐŒĐ”Ń‚Ń€ĐžŃ‡ĐœĐžŃ… ĐżĐŸĐ±ŃƒĐŽĐŸĐČ"
-#: ../src/verbs.cpp:2770
+#: ../src/verbs.cpp:2739
msgid "Edit Path Effect parameters"
msgstr "Đ—ĐŒŃ–ĐœĐžŃ‚Đž ĐżĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Đž ДфДĐșту ĐșĐŸĐœŃ‚ŃƒŃ€Ńƒ"
-#: ../src/verbs.cpp:2771
+#: ../src/verbs.cpp:2740
msgctxt "ContextVerb"
msgid "Eraser"
msgstr "Đ“ŃƒĐŒĐșа"
-#: ../src/verbs.cpp:2772
+#: ../src/verbs.cpp:2741
msgid "Erase existing paths"
msgstr "ВОтДртО Ń–ŃĐœŃƒŃŽŃ‡Ń– ĐșĐŸĐœŃ‚ŃƒŃ€Đž"
-#: ../src/verbs.cpp:2773
+#: ../src/verbs.cpp:2742
msgctxt "ContextVerb"
msgid "LPE Tool"
msgstr "Đ†ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚ ĐłĐ”ĐŸĐŒĐ”Ń‚Ń€ĐžŃ‡ĐœĐŸŃ— ĐżĐŸĐ±ŃƒĐŽĐŸĐČĐž"
-#: ../src/verbs.cpp:2774
+#: ../src/verbs.cpp:2743
msgid "Do geometric constructions"
msgstr "ВоĐșĐŸĐœĐ°Ń‚Đž ĐłĐ”ĐŸĐŒĐ”Ń‚Ń€ĐžŃ‡ĐœŃƒ ĐżĐŸĐ±ŃƒĐŽĐŸĐČу"
#. Tool prefs
-#: ../src/verbs.cpp:2776
+#: ../src/verbs.cpp:2745
msgid "Selector Preferences"
msgstr "ĐŸĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Đž сДлДĐșŃ‚ĐŸŃ€Đ°"
-#: ../src/verbs.cpp:2777
+#: ../src/verbs.cpp:2746
msgid "Open Preferences for the Selector tool"
msgstr "ВіЮĐșрото ĐČіĐșĐœĐŸ ĐżĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Ń–ĐČ Inkscape ĐŽĐ»Ń Ń–ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚Đ° ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐœŃ"
-#: ../src/verbs.cpp:2778
+#: ../src/verbs.cpp:2747
msgid "Node Tool Preferences"
msgstr "ĐŸĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Đž рДЎаĐșŃ‚ĐŸŃ€Đ° ĐČŃƒĐ·Đ»Ń–ĐČ"
-#: ../src/verbs.cpp:2779
+#: ../src/verbs.cpp:2748
msgid "Open Preferences for the Node tool"
msgstr "ВіЮĐșрото ĐČіĐșĐœĐŸ ĐżĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Ń–ĐČ Inkscape ĐŽĐ»Ń Ń–ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚Đ° «РДЎаĐșŃ‚ĐŸŃ€ ĐČŃƒĐ·Đ»Ń–ĐČ»"
-#: ../src/verbs.cpp:2780
+#: ../src/verbs.cpp:2749
msgid "Tweak Tool Preferences"
msgstr "ĐŸĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Đž Ń–ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚Đ° Â«ĐšĐŸŃ€Đ”ĐșŃ†Ń–ŃÂ»"
-#: ../src/verbs.cpp:2781
+#: ../src/verbs.cpp:2750
msgid "Open Preferences for the Tweak tool"
msgstr "ВіЮĐșрото ĐČіĐșĐœĐŸ ĐżĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Ń–ĐČ Inkscape ĐŽĐ»Ń Ń–ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚Đ° Â«ĐšĐŸŃ€Đ”ĐșŃ†Ń–ŃÂ»"
-#: ../src/verbs.cpp:2782
+#: ../src/verbs.cpp:2751
msgid "Spray Tool Preferences"
msgstr "ĐŸĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Đž Ń–ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚Đ° Â«Đ ĐŸĐ·ĐșĐžĐŽĐ°ĐœĐœŃÂ»"
-#: ../src/verbs.cpp:2783
+#: ../src/verbs.cpp:2752
msgid "Open Preferences for the Spray tool"
msgstr "ВіЮĐșрото ĐČіĐșĐœĐŸ ĐżĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Ń–ĐČ ĐŽĐ»Ń Ń–ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚Đ° Â«Đ ĐŸĐ·ĐșĐžĐŽĐ°ĐœĐœŃÂ»"
-#: ../src/verbs.cpp:2784
+#: ../src/verbs.cpp:2753
msgid "Rectangle Preferences"
msgstr "ĐŸĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Đž ĐżŃ€ŃĐŒĐŸĐșŃƒŃ‚ĐœĐžĐșа"
-#: ../src/verbs.cpp:2785
+#: ../src/verbs.cpp:2754
msgid "Open Preferences for the Rectangle tool"
msgstr "ВіЮĐșрото ĐČіĐșĐœĐŸ ĐżĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Ń–ĐČ Inkscape ĐŽĐ»Ń Ń–ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚Đ° Â«ĐŸŃ€ŃĐŒĐŸĐșŃƒŃ‚ĐœĐžĐș»"
-#: ../src/verbs.cpp:2786
+#: ../src/verbs.cpp:2755
msgid "3D Box Preferences"
msgstr "ĐŸĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Đž ĐżŃ€ĐŸŃŃ‚ĐŸŃ€ĐŸĐČĐŸĐłĐŸ ĐŸĐ±'єĐșта"
-#: ../src/verbs.cpp:2787
+#: ../src/verbs.cpp:2756
msgid "Open Preferences for the 3D Box tool"
msgstr ""
"ВіЮĐșрото ĐČіĐșĐœĐŸ ĐżĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Ń–ĐČ Inkscape ĐŽĐ»Ń Ń–ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚Đ° Â«ĐŸŃ€ĐŸŃŃ‚ĐŸŃ€ĐŸĐČĐžĐč ĐŸĐ±'єĐșт»"
-#: ../src/verbs.cpp:2788
+#: ../src/verbs.cpp:2757
msgid "Ellipse Preferences"
msgstr "ĐŸĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Đž Дліпса"
-#: ../src/verbs.cpp:2789
+#: ../src/verbs.cpp:2758
msgid "Open Preferences for the Ellipse tool"
msgstr "ВіЮĐșрото ĐČіĐșĐœĐŸ ĐżĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Ń–ĐČ Inkscape ĐŽĐ»Ń Ń–ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚Đ° «Еліпс»"
-#: ../src/verbs.cpp:2790
+#: ../src/verbs.cpp:2759
msgid "Star Preferences"
msgstr "ВластОĐČĐŸŃŃ‚Ń– Đ·Ń–Ń€ĐșĐž"
-#: ../src/verbs.cpp:2791
+#: ../src/verbs.cpp:2760
msgid "Open Preferences for the Star tool"
msgstr "ВіЮĐșрото ĐČіĐșĐœĐŸ ĐżĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Ń–ĐČ Inkscape ĐŽĐ»Ń Ń–ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚Đ° «ЗірĐșа»"
-#: ../src/verbs.cpp:2792
+#: ../src/verbs.cpp:2761
msgid "Spiral Preferences"
msgstr "ВластОĐČĐŸŃŃ‚Ń– спіралі"
-#: ../src/verbs.cpp:2793
+#: ../src/verbs.cpp:2762
msgid "Open Preferences for the Spiral tool"
msgstr "ВіЮĐșрото ĐČіĐșĐœĐŸ ĐżĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Ń–ĐČ Inkscape ĐŽĐ»Ń Ń–ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚Đ° Â«ĐĄĐżŃ–Ń€Đ°Đ»ŃŒÂ»"
-#: ../src/verbs.cpp:2794
+#: ../src/verbs.cpp:2763
msgid "Pencil Preferences"
msgstr "ĐŸĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Đž ĐŸĐ»Ń–ĐČця"
-#: ../src/verbs.cpp:2795
+#: ../src/verbs.cpp:2764
msgid "Open Preferences for the Pencil tool"
msgstr "ВіЮĐșрото ĐČіĐșĐœĐŸ ĐżĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Ń–ĐČ Inkscape ĐŽĐ»Ń Ń–ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚Đ° «ОліĐČĐ”Ń†ŃŒÂ»"
-#: ../src/verbs.cpp:2796
+#: ../src/verbs.cpp:2765
msgid "Pen Preferences"
msgstr "ĐŸĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Đž пДра"
-#: ../src/verbs.cpp:2797
+#: ../src/verbs.cpp:2766
msgid "Open Preferences for the Pen tool"
msgstr "ВіЮĐșрото ĐČіĐșĐœĐŸ ĐżĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Ń–ĐČ Inkscape ĐŽĐ»Ń Ń–ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚Đ° Â«ĐŸĐ”Ń€ĐŸÂ»"
-#: ../src/verbs.cpp:2798
+#: ../src/verbs.cpp:2767
msgid "Calligraphic Preferences"
msgstr "ĐŸĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Đž ĐșĐ°Đ»Ń–ĐłŃ€Đ°Ń„Ń–Ń‡ĐœĐŸĐłĐŸ пДра"
-#: ../src/verbs.cpp:2799
+#: ../src/verbs.cpp:2768
msgid "Open Preferences for the Calligraphy tool"
msgstr "ВіЮĐșрото ĐČіĐșĐœĐŸ ĐżĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Ń–ĐČ Inkscape ĐŽĐ»Ń Ń–ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚Đ° Â«ĐšĐ°Đ»Ń–ĐłŃ€Đ°Ń„Ń–Ń‡ĐœĐ” ĐżĐ”Ń€ĐŸÂ»"
-#: ../src/verbs.cpp:2800
+#: ../src/verbs.cpp:2769
msgid "Text Preferences"
msgstr "ĐŸĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Đž тДĐșсту"
-#: ../src/verbs.cpp:2801
+#: ../src/verbs.cpp:2770
msgid "Open Preferences for the Text tool"
msgstr "ВіЮĐșрото ĐČіĐșĐœĐŸ ĐżĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Ń–ĐČ Inkscape ĐŽĐ»Ń Ń–ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚Đ° «йДĐșст»"
-#: ../src/verbs.cpp:2802
+#: ../src/verbs.cpp:2771
msgid "Gradient Preferences"
msgstr "ĐŸĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Đž ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚Đ°"
-#: ../src/verbs.cpp:2803
+#: ../src/verbs.cpp:2772
msgid "Open Preferences for the Gradient tool"
msgstr "ВіЮĐșрото ĐČіĐșĐœĐŸ ĐżĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Ń–ĐČ Inkscape ĐŽĐ»Ń Ń–ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚Đ° Â«Đ“Ń€Đ°ĐŽŃ–Ń”ĐœŃ‚Â»"
-#: ../src/verbs.cpp:2804
+#: ../src/verbs.cpp:2773
msgid "Mesh Preferences"
msgstr "ĐŸĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Đž сітĐșĐž"
-#: ../src/verbs.cpp:2805
+#: ../src/verbs.cpp:2774
msgid "Open Preferences for the Mesh tool"
msgstr "ВіЮĐșрото ĐČіĐșĐœĐŸ ĐżĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Ń–ĐČ ĐŽĐ»Ń Ń–ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚Đ° «ХітĐșа»"
-#: ../src/verbs.cpp:2806
+#: ../src/verbs.cpp:2775
msgid "Zoom Preferences"
msgstr "ĐŸĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Đž ĐŒĐ°ŃŃˆŃ‚Đ°Đ±Ńƒ"
-#: ../src/verbs.cpp:2807
+#: ../src/verbs.cpp:2776
msgid "Open Preferences for the Zoom tool"
msgstr "ВіЮĐșрото ĐČіĐșĐœĐŸ ĐżĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Ń–ĐČ Inkscape ĐŽĐ»Ń Ń–ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚Đ° Â«ĐœĐ°ŃŃˆŃ‚Đ°Đ±Â»"
-#: ../src/verbs.cpp:2808
+#: ../src/verbs.cpp:2777
msgid "Measure Preferences"
msgstr "ВластОĐČĐŸŃŃ‚Ń– ĐČĐžĐŒŃ–Ń€ŃŽĐČĐ°ĐœĐœŃ"
-#: ../src/verbs.cpp:2809
+#: ../src/verbs.cpp:2778
msgid "Open Preferences for the Measure tool"
msgstr "ВіЮĐșрото ĐČіĐșĐœĐŸ ĐżĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Ń–ĐČ ĐŽĐ»Ń Ń–ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚Đ° Â«Đ’ĐžĐŒŃ–Ń€ŃŽĐČĐ°ĐœĐœŃÂ»"
-#: ../src/verbs.cpp:2810
+#: ../src/verbs.cpp:2779
msgid "Dropper Preferences"
msgstr "ĐŸĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Đž піпДтĐșĐž"
-#: ../src/verbs.cpp:2811
+#: ../src/verbs.cpp:2780
msgid "Open Preferences for the Dropper tool"
msgstr "ВіЮĐșрото ĐČіĐșĐœĐŸ ĐżĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Ń–ĐČ Inkscape ĐŽĐ»Ń Ń–ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚Đ° Â«ĐŸŃ–ĐżĐ”Ń‚Đșа»"
-#: ../src/verbs.cpp:2812
+#: ../src/verbs.cpp:2781
msgid "Connector Preferences"
msgstr "ĐŸĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Đž Đ»Ń–ĐœŃ–Ń— Đ·'Ń”ĐŽĐœĐ°ĐœĐœŃ"
-#: ../src/verbs.cpp:2813
+#: ../src/verbs.cpp:2782
msgid "Open Preferences for the Connector tool"
msgstr "ВіЮĐșрото ĐČіĐșĐœĐŸ ĐżĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Ń–ĐČ Inkscape ĐŽĐ»Ń Ń–ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚Đ° Â«Đ›Ń–ĐœŃ–Ń— Đ·'Ń”ĐŽĐœĐ°ĐœĐœŃÂ»"
-#: ../src/verbs.cpp:2814
+#: ../src/verbs.cpp:2783
msgid "Paint Bucket Preferences"
msgstr "ĐŸĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Đž ĐČіЮра Đ· Ń„Đ°Ń€Đ±ĐŸŃŽ"
-#: ../src/verbs.cpp:2815
+#: ../src/verbs.cpp:2784
msgid "Open Preferences for the Paint Bucket tool"
msgstr "ВіЮĐșрото ĐżĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Đž ĐŽĐ»Ń Ń–ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚Đ° Â«Đ’Ń–ĐŽŃ€ĐŸ Đ· Ń„Đ°Ń€Đ±ĐŸŃŽÂ»"
-#: ../src/verbs.cpp:2816
+#: ../src/verbs.cpp:2785
msgid "Eraser Preferences"
msgstr "ВластОĐČĐŸŃŃ‚Ń– ĐłŃƒĐŒĐșĐž"
-#: ../src/verbs.cpp:2817
+#: ../src/verbs.cpp:2786
msgid "Open Preferences for the Eraser tool"
msgstr "ВіЮĐșрото ĐČіĐșĐœĐŸ ĐżĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Ń–ĐČ ĐŽĐ»Ń Ń–ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚Đ° Â«Đ“ŃƒĐŒĐșа»"
-#: ../src/verbs.cpp:2818
+#: ../src/verbs.cpp:2787
msgid "LPE Tool Preferences"
msgstr "ĐŸĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Đž Ń–ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚Đ° Â«Đ“Đ”ĐŸĐŒĐ”Ń‚Ń€ĐžŃ‡ĐœŃ– ĐżĐŸĐ±ŃƒĐŽĐŸĐČО»"
-#: ../src/verbs.cpp:2819
+#: ../src/verbs.cpp:2788
msgid "Open Preferences for the LPETool tool"
msgstr "ВіЮĐșрото ĐČіĐșĐœĐŸ ĐżĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Ń–ĐČ ĐŽĐ»Ń Ń–ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚Đ° Â«Đ“Đ”ĐŸĐŒĐ”Ń‚Ń€ĐžŃ‡ĐœŃ– ĐżĐŸĐ±ŃƒĐŽĐŸĐČО»"
#. Zoom/View
-#: ../src/verbs.cpp:2821
+#: ../src/verbs.cpp:2790
msgid "Zoom In"
msgstr "Đ—Đ±Ń–Đ»ŃŒŃˆĐžŃ‚Đž"
-#: ../src/verbs.cpp:2821
+#: ../src/verbs.cpp:2790
msgid "Zoom in"
msgstr "Đ—Đ±Ń–Đ»ŃŒŃˆĐžŃ‚Đž"
-#: ../src/verbs.cpp:2822
+#: ../src/verbs.cpp:2791
msgid "Zoom Out"
msgstr "Đ—ĐŒĐ”ĐœŃˆĐžŃ‚Đž"
-#: ../src/verbs.cpp:2822
+#: ../src/verbs.cpp:2791
msgid "Zoom out"
msgstr "Đ—ĐŒĐ”ĐœŃˆĐžŃ‚Đž"
-#: ../src/verbs.cpp:2823
+#: ../src/verbs.cpp:2792
msgid "_Rulers"
msgstr "_Đ›Ń–ĐœŃ–ĐčĐșĐž"
-#: ../src/verbs.cpp:2823
+#: ../src/verbs.cpp:2792
msgid "Show or hide the canvas rulers"
msgstr "ĐŸĐŸĐșазатО Đ°Đ±ĐŸ ŃŃ…ĐŸĐČато Đ»Ń–ĐœŃ–ĐčĐșĐž ĐżĐŸĐ»ĐŸŃ‚ĐœĐ°"
-#: ../src/verbs.cpp:2824
+#: ../src/verbs.cpp:2793
msgid "Scroll_bars"
msgstr "_ĐĄĐŒŃƒĐłĐž ĐłĐŸŃ€Ń‚Đ°ĐœĐœŃ"
-#: ../src/verbs.cpp:2824
+#: ../src/verbs.cpp:2793
msgid "Show or hide the canvas scrollbars"
msgstr "ĐŸĐŸĐșазатО/ĐĄŃ…ĐŸĐČато ŃĐŒŃƒĐłĐž ĐłĐŸŃ€Ń‚Đ°ĐœĐœŃ ĐżĐŸĐ»ĐŸŃ‚ĐœĐ°"
-#: ../src/verbs.cpp:2825
+#: ../src/verbs.cpp:2794
msgid "Page _Grid"
msgstr "ĐĄ_ітĐșа ŃŃ‚ĐŸŃ€Ń–ĐœĐșĐž"
-#: ../src/verbs.cpp:2825
+#: ../src/verbs.cpp:2794
msgid "Show or hide the page grid"
msgstr "ĐŸĐŸĐșазатО Đ°Đ±ĐŸ ŃŃ…ĐŸĐČато сітĐșу ŃŃ‚ĐŸŃ€Ń–ĐœĐșĐž"
-#: ../src/verbs.cpp:2826
+#: ../src/verbs.cpp:2795
msgid "G_uides"
msgstr "Нап_Ń€ŃĐŒĐœŃ–"
-#: ../src/verbs.cpp:2826
+#: ../src/verbs.cpp:2795
msgid "Show or hide guides (drag from a ruler to create a guide)"
msgstr ""
"ĐŸĐŸĐșазатО чо ŃŃ…ĐŸĐČато ĐœĐ°ĐżŃ€ŃĐŒĐœŃ– (ĐżĐŸŃ‚ŃĐłĐœŃ–Ń‚ŃŒ ĐČіЮ Đ»Ń–ĐœŃ–ĐčĐșĐž ĐŽĐ»Ń стĐČĐŸŃ€Đ”ĐœĐœŃ ĐœĐ°ĐżŃ€ŃĐŒĐœĐŸŃ—)"
-#: ../src/verbs.cpp:2827
+#: ../src/verbs.cpp:2796
msgid "Enable snapping"
msgstr "Đ”ĐŸĐ·ĐČĐŸĐ»ĐžŃ‚Đž ĐżŃ€ĐžĐ»ĐžĐżĐ°ĐœĐœŃ"
-#: ../src/verbs.cpp:2828
+#: ../src/verbs.cpp:2797
msgid "_Commands Bar"
msgstr "ĐŸĐ°ĐœĐ”Đ»ŃŒ ĐșĐŸ_ĐŒĐ°ĐœĐŽ"
-#: ../src/verbs.cpp:2828
+#: ../src/verbs.cpp:2797
msgid "Show or hide the Commands bar (under the menu)"
msgstr "ĐŸĐŸĐșазатО/ŃŃ…ĐŸĐČато ĐżĐ°ĐœĐ”Đ»ŃŒ ĐșĐŸĐŒĐ°ĐœĐŽ (піЮ ĐŒĐ”ĐœŃŽ)"
-#: ../src/verbs.cpp:2829
+#: ../src/verbs.cpp:2798
msgid "Sn_ap Controls Bar"
msgstr "ĐŸĐ°ĐœĐ”Đ»ŃŒ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ про_Đ»ĐžĐżĐ°ĐœĐœŃĐŒ"
-#: ../src/verbs.cpp:2829
+#: ../src/verbs.cpp:2798
msgid "Show or hide the snapping controls"
msgstr "ĐŸĐŸĐșазатО Đ°Đ±ĐŸ ŃŃ…ĐŸĐČато Ń–ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚Đž ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ ĐżŃ€ĐžĐ»ĐžĐżĐ°ĐœĐœŃĐŒ"
-#: ../src/verbs.cpp:2830
+#: ../src/verbs.cpp:2799
msgid "T_ool Controls Bar"
msgstr "Па_ĐœĐ”Đ»ŃŒ ĐżĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Ń–ĐČ Ń–ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚Ń–ĐČ"
-#: ../src/verbs.cpp:2830
+#: ../src/verbs.cpp:2799
msgid "Show or hide the Tool Controls bar"
msgstr "ĐŸĐŸĐșазатО Đ°Đ±ĐŸ ŃŃ…ĐŸĐČато ĐżĐ°ĐœĐ”Đ»ŃŒ Đ· ĐżĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Đ°ĐŒĐž Ń–ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚Ń–ĐČ"
-#: ../src/verbs.cpp:2831
+#: ../src/verbs.cpp:2800
msgid "_Toolbox"
msgstr "ĐŸĐ°ĐœĐ”Đ»ŃŒ _Ń–ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚Ń–ĐČ"
-#: ../src/verbs.cpp:2831
+#: ../src/verbs.cpp:2800
msgid "Show or hide the main toolbox (on the left)"
msgstr "ĐŸĐŸĐșазатО Đ°Đ±ĐŸ ŃŃ…ĐŸĐČато ĐłĐŸĐ»ĐŸĐČĐœŃƒ ĐżĐ°ĐœĐ”Đ»ŃŒ Ń–ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚Ń–ĐČ (зліĐČа)"
-#: ../src/verbs.cpp:2832
+#: ../src/verbs.cpp:2801
msgid "_Palette"
msgstr "_ĐŸĐ°Đ»Ń–Ń‚Ń€Ńƒ"
-#: ../src/verbs.cpp:2832
+#: ../src/verbs.cpp:2801
msgid "Show or hide the color palette"
msgstr "ĐŸĐŸĐșазатО Đ°Đ±ĐŸ ŃŃ…ĐŸĐČато ĐżĐ°ĐœĐ”Đ»ŃŒ Đ· ĐżĐ°Đ»Ń–Ń‚Ń€ĐŸŃŽ ĐșĐŸĐ»ŃŒĐŸŃ€Ń–ĐČ"
-#: ../src/verbs.cpp:2833
+#: ../src/verbs.cpp:2802
msgid "_Statusbar"
msgstr "_Đ ŃĐŽĐŸĐș ŃŃ‚Đ°ĐœŃƒ"
-#: ../src/verbs.cpp:2833
+#: ../src/verbs.cpp:2802
msgid "Show or hide the statusbar (at the bottom of the window)"
msgstr "ĐŸĐŸĐșазатО Đ°Đ±ĐŸ ŃŃ…ĐŸĐČато Ń€ŃĐŽĐŸĐș ŃŃ‚Đ°ĐœŃƒ (ĐČĐœĐžĐ·Ńƒ ĐČіĐșĐœĐ°)"
-#: ../src/verbs.cpp:2834
+#: ../src/verbs.cpp:2803
msgid "Nex_t Zoom"
msgstr "Н_Đ°ŃŃ‚ŃƒĐżĐœĐžĐč ĐŒĐ°ŃŃˆŃ‚Đ°Đ±"
-#: ../src/verbs.cpp:2834
+#: ../src/verbs.cpp:2803
msgid "Next zoom (from the history of zooms)"
msgstr "ĐĐ°ŃŃ‚ŃƒĐżĐœĐžĐč ĐŒĐ°ŃŃˆŃ‚Đ°Đ± (Đ· Ń–ŃŃ‚ĐŸŃ€Ń–Ń— Đ·ĐŒŃ–ĐœĐž ĐŒĐ°ŃŃˆŃ‚Đ°Đ±Ńƒ)"
-#: ../src/verbs.cpp:2836
+#: ../src/verbs.cpp:2805
msgid "Pre_vious Zoom"
msgstr "П_ĐŸĐżĐ”Ń€Đ”ĐŽĐœŃ–Đč ĐŒĐ°ŃŃˆŃ‚Đ°Đ±"
-#: ../src/verbs.cpp:2836
+#: ../src/verbs.cpp:2805
msgid "Previous zoom (from the history of zooms)"
msgstr "ĐŸĐŸĐżĐ”Ń€Đ”ĐŽĐœŃ–Đč ĐŒĐ°ŃŃˆŃ‚Đ°Đ± (Đ· Ń–ŃŃ‚ĐŸŃ€Ń–Ń— Đ·ĐŒŃ–ĐœĐž ĐŒĐ°ŃŃˆŃ‚Đ°Đ±Ńƒ)"
-#: ../src/verbs.cpp:2838
+#: ../src/verbs.cpp:2807
msgid "Zoom 1:_1"
msgstr "ĐœĐ°ŃŃˆŃ‚Đ°Đ± 1:_1"
-#: ../src/verbs.cpp:2838
+#: ../src/verbs.cpp:2807
msgid "Zoom to 1:1"
msgstr "ĐœĐ°ŃŃˆŃ‚Đ°Đ± 1:1"
-#: ../src/verbs.cpp:2840
+#: ../src/verbs.cpp:2809
msgid "Zoom 1:_2"
msgstr "ĐœĐ°ŃŃˆŃ‚Đ°Đ± 1:_2"
-#: ../src/verbs.cpp:2840
+#: ../src/verbs.cpp:2809
msgid "Zoom to 1:2"
msgstr "ĐœĐ°ŃŃˆŃ‚Đ°Đ± 1:2"
-#: ../src/verbs.cpp:2842
+#: ../src/verbs.cpp:2811
msgid "_Zoom 2:1"
msgstr "Мас_ŃˆŃ‚Đ°Đ± 2:1"
-#: ../src/verbs.cpp:2842
+#: ../src/verbs.cpp:2811
msgid "Zoom to 2:1"
msgstr "ĐœĐ°ŃŃˆŃ‚Đ°Đ± 2:1"
-#: ../src/verbs.cpp:2845
+#: ../src/verbs.cpp:2814
msgid "_Fullscreen"
msgstr "На ĐČĐ”ŃŃŒ _Đ”ĐșŃ€Đ°Đœ"
-#: ../src/verbs.cpp:2845 ../src/verbs.cpp:2847
+#: ../src/verbs.cpp:2814 ../src/verbs.cpp:2816
msgid "Stretch this document window to full screen"
msgstr "Đ ĐŸĐ·Ń‚ŃĐłĐœŃƒŃ‚Đž ĐČіĐșĐœĐŸ ĐŽĐŸĐșŃƒĐŒĐ”ĐœŃ‚Đ° ĐœĐ° ĐČĐ”ŃŃŒ Đ”ĐșŃ€Đ°Đœ"
-#: ../src/verbs.cpp:2847
+#: ../src/verbs.cpp:2816
msgid "Fullscreen & Focus Mode"
msgstr "ĐŸĐŸĐČĐœĐŸĐ”ĐșŃ€Đ°ĐœĐœĐžĐč Ń€Đ”Đ¶ĐžĐŒ та Ń€Đ”Đ¶ĐžĐŒ Ń„ĐŸĐșусуĐČĐ°ĐœĐœŃ"
-#: ../src/verbs.cpp:2850
+#: ../src/verbs.cpp:2819
msgid "Toggle _Focus Mode"
msgstr "ĐŸĐ”Ń€Đ”ĐŒĐșĐœŃƒŃ‚Đž Ń€Đ”Đ¶ĐžĐŒ _Ń„ĐŸĐșусуĐČĐ°ĐœĐœŃ"
-#: ../src/verbs.cpp:2850
+#: ../src/verbs.cpp:2819
msgid "Remove excess toolbars to focus on drawing"
msgstr "Đ’ĐžĐ»ŃƒŃ‡ĐžŃ‚Đž заĐčĐČі ĐżĐ°ĐœĐ”Đ»Ń– Ń–ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚Ń–ĐČ ĐŽĐ»Ń Ń„ĐŸĐșусуĐČĐ°ĐœĐœŃ ĐœĐ° ĐŒĐ°Đ»ŃŽĐČĐ°ĐœĐœŃ–"
-#: ../src/verbs.cpp:2852
+#: ../src/verbs.cpp:2821
msgid "Duplic_ate Window"
msgstr "_Đ”ŃƒĐ±Đ»ŃŽĐČато ĐČіĐșĐœĐŸ"
-#: ../src/verbs.cpp:2852
+#: ../src/verbs.cpp:2821
msgid "Open a new window with the same document"
msgstr "ВіЮĐșрото ĐœĐŸĐČĐ” ĐČіĐșĐœĐŸ Đ· Ń†ĐžĐŒ ŃĐ°ĐŒĐžĐŒ ĐŽĐŸĐșŃƒĐŒĐ”ĐœŃ‚ĐŸĐŒ"
-#: ../src/verbs.cpp:2854
+#: ../src/verbs.cpp:2823
msgid "_New View Preview"
msgstr "_СтĐČĐŸŃ€ĐžŃ‚Đž ĐżĐŸĐżĐ”Ń€Đ”ĐŽĐœŃ–Đč ĐżĐ”Ń€Đ”ĐłĐ»ŃĐŽ"
-#: ../src/verbs.cpp:2855
+#: ../src/verbs.cpp:2824
msgid "New View Preview"
msgstr "СтĐČĐŸŃ€ĐžŃ‚Đž ĐœĐŸĐČĐ” ĐČіĐșĐœĐŸ ĐżĐŸĐżĐ”Ń€Đ”ĐŽĐœŃŒĐŸĐłĐŸ ĐżĐ”Ń€Đ”ĐłĐ»ŃĐŽŃƒ"
#. "view_new_preview"
-#: ../src/verbs.cpp:2857 ../src/verbs.cpp:2865
+#: ../src/verbs.cpp:2826 ../src/verbs.cpp:2834
msgid "_Normal"
msgstr "_ЗĐČочаĐčĐœĐžĐč"
-#: ../src/verbs.cpp:2858
+#: ../src/verbs.cpp:2827
msgid "Switch to normal display mode"
msgstr "ĐŸĐ”Ń€Đ”ĐŒĐžĐșĐ°ĐœĐœŃ ĐœĐ° Đ·ĐČочаĐčĐœĐžĐč Ń€Đ”Đ¶ĐžĐŒ ĐČŃ–ĐŽĐŸĐ±Ń€Đ°Đ¶Đ”ĐœĐœŃ"
-#: ../src/verbs.cpp:2859
+#: ../src/verbs.cpp:2828
msgid "No _Filters"
msgstr "БДз _Ń„Ń–Đ»ŃŒŃ‚Ń€Ń–ĐČ"
-#: ../src/verbs.cpp:2860
+#: ../src/verbs.cpp:2829
msgid "Switch to normal display without filters"
msgstr "ĐŸĐ”Ń€Đ”ĐŒĐžĐșĐ°ĐœĐœŃ ĐœĐ° Đ·ĐČочаĐčĐœĐžĐč Ń€Đ”Đ¶ĐžĐŒ бДз Ń„Ń–Đ»ŃŒŃ‚Ń€Ń–ĐČ"
-#: ../src/verbs.cpp:2861
+#: ../src/verbs.cpp:2830
msgid "_Outline"
msgstr "_ОбрОс"
-#: ../src/verbs.cpp:2862
+#: ../src/verbs.cpp:2831
msgid "Switch to outline (wireframe) display mode"
msgstr "ĐŸĐ”Ń€Đ”ĐŒĐșĐœŃƒŃ‚ĐžŃŃ ĐœĐ° ĐșарĐșĐ°ŃĐœĐžĐč Ń€Đ”Đ¶ĐžĐŒ ĐČŃ–ĐŽĐŸĐ±Ń€Đ°Đ¶Đ”ĐœĐœŃ"
#. new ZoomVerb(SP_VERB_VIEW_COLOR_MODE_PRINT_COLORS_PREVIEW, "ViewColorModePrintColorsPreview", N_("_Print Colors Preview"),
#. N_("Switch to print colors preview mode"), NULL),
-#: ../src/verbs.cpp:2863 ../src/verbs.cpp:2871
+#: ../src/verbs.cpp:2832 ../src/verbs.cpp:2840
msgid "_Toggle"
msgstr "_ĐŸĐ”Ń€Đ”ĐŒĐșĐœŃƒŃ‚ĐžŃŃ"
-#: ../src/verbs.cpp:2864
+#: ../src/verbs.cpp:2833
msgid "Toggle between normal and outline display modes"
msgstr "ĐŸĐ”Ń€Đ”ĐŒĐžĐșач ĐŒŃ–Đ¶ ĐœĐŸŃ€ĐŒĐ°Đ»ŃŒĐœĐžĐŒ та ĐșарĐșĐ°ŃĐœĐžĐŒ Ń€Đ”Đ¶ĐžĐŒĐ°ĐŒĐž ĐČŃ–ĐŽĐŸĐ±Ń€Đ°Đ¶Đ”ĐœĐœŃ"
-#: ../src/verbs.cpp:2866
+#: ../src/verbs.cpp:2835
msgid "Switch to normal color display mode"
msgstr "ĐŸĐ”Ń€Đ”ĐŒĐžĐșĐ°ĐœĐœŃ ĐœĐ° Đ·ĐČочаĐčĐœĐžĐč Ń€Đ”Đ¶ĐžĐŒ ĐżĐŸĐșазу ĐșĐŸĐ»ŃŒĐŸŃ€Ń–ĐČ"
-#: ../src/verbs.cpp:2867
+#: ../src/verbs.cpp:2836
msgid "_Grayscale"
msgstr "Сі_рі піĐČŃ‚ĐŸĐœĐž"
-#: ../src/verbs.cpp:2868
+#: ../src/verbs.cpp:2837
msgid "Switch to grayscale display mode"
msgstr "ĐŸĐ”Ń€Đ”ĐŒĐžĐșĐ°ĐœĐœŃ ĐœĐ° Ń€Đ”Đ¶ĐžĐŒ ĐżĐŸĐșазу Ń‚ĐŸĐœŃ–ĐČ ŃŃ–Ń€ĐŸĐłĐŸ"
-#: ../src/verbs.cpp:2872
+#: ../src/verbs.cpp:2841
msgid "Toggle between normal and grayscale color display modes"
msgstr ""
"ĐŸĐ”Ń€Đ”ĐŒĐžĐșач ĐŒŃ–Đ¶ ĐœĐŸŃ€ĐŒĐ°Đ»ŃŒĐœĐžĐŒ Ń€Đ”Đ¶ĐžĐŒĐŸĐŒ ĐżĐŸĐșазу та Ń€Đ”Đ¶ĐžĐŒĐŸĐŒ ĐżĐŸĐșазу у ĐČŃ–ĐŽŃ‚Ń–ĐœĐșах ŃŃ–Ń€ĐŸĐłĐŸ"
-#: ../src/verbs.cpp:2874
+#: ../src/verbs.cpp:2843
msgid "Color-managed view"
msgstr "ĐŸĐ”Ń€Đ”ĐłĐ»ŃĐŽ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ ĐșĐŸĐ»ŃŒĐŸŃ€ĐŸĐŒ"
-#: ../src/verbs.cpp:2875
+#: ../src/verbs.cpp:2844
msgid "Toggle color-managed display for this document window"
msgstr ""
"ĐŸĐ”Ń€Đ”ĐŒĐžĐșач ŃƒĐ·ĐłĐŸĐŽĐ¶Đ”ĐœĐœŃ ĐČŃ–ĐŽĐŸĐ±Ń€Đ°Đ¶Đ”ĐœĐœŃ ĐșĐŸĐ»ŃŒĐŸŃ€Ń–ĐČ ĐŽĐžŃĐżĐ»Đ”Ń”ĐŒ ĐŽĐ»Ń Ń†ŃŒĐŸĐłĐŸ ĐČіĐșĐœĐ° ĐŽĐŸĐșŃƒĐŒĐ”ĐœŃ‚Đ°"
-#: ../src/verbs.cpp:2877
+#: ../src/verbs.cpp:2846
msgid "Ico_n Preview..."
msgstr "ĐŸĐ”Ń€Đ”ĐłĐ»ŃĐœŃƒŃ‚Đž яĐș Đż_іĐșŃ‚ĐŸĐłŃ€Đ°ĐŒŃƒâ€Š"
-#: ../src/verbs.cpp:2878
+#: ../src/verbs.cpp:2847
msgid "Open a window to preview objects at different icon resolutions"
msgstr "ĐŸĐ”Ń€Đ”ĐłĐ»ŃĐœŃƒŃ‚Đž ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐžĐč Đ”Đ»Đ”ĐŒĐ”ĐœŃ‚ у Ń„ĐŸŃ€ĐŒŃ– піĐșŃ‚ĐŸĐłŃ€Đ°ĐŒĐž Ń€Ń–Đ·ĐœĐžŃ… Ń€ĐŸĐ·ĐŒŃ–Ń€Ń–ĐČ"
-#: ../src/verbs.cpp:2880
+#: ../src/verbs.cpp:2849
msgid "Zoom to fit page in window"
msgstr "Đ—ĐŒŃ–ĐœĐžŃ‚Đž ĐŒĐ°ŃŃˆŃ‚Đ°Đ±, Ń‰ĐŸĐ± Ń€ĐŸĐ·ĐŒŃ–ŃŃ‚ĐžŃ‚Đž ŃŃ‚ĐŸŃ€Ń–ĐœĐșу цілĐșĐŸĐŒ"
-#: ../src/verbs.cpp:2881
+#: ../src/verbs.cpp:2850
msgid "Page _Width"
msgstr "Đš_ĐžŃ€ĐžĐœĐ° ŃŃ‚ĐŸŃ€Ń–ĐœĐșĐž"
-#: ../src/verbs.cpp:2882
+#: ../src/verbs.cpp:2851
msgid "Zoom to fit page width in window"
msgstr "Đ—ĐŒŃ–ĐœĐžŃ‚Đž ĐŒĐ°ŃŃˆŃ‚Đ°Đ±, Ń‰ĐŸĐ± Ń€ĐŸĐ·ĐŒŃ–ŃŃ‚ĐžŃ‚Đž ŃŃ‚ĐŸŃ€Ń–ĐœĐșу ĐżĐŸ ŃˆĐžŃ€ĐžĐœŃ–"
-#: ../src/verbs.cpp:2884
+#: ../src/verbs.cpp:2853
msgid "Zoom to fit drawing in window"
msgstr "Đ—ĐŒŃ–ĐœĐžŃ‚Đž ĐŒĐ°ŃŃˆŃ‚Đ°Đ±, Ń‰ĐŸĐ± Ń€ĐŸĐ·ĐŒŃ–ŃŃ‚ĐžŃ‚Đž ĐŒĐ°Đ»ŃŽĐœĐŸĐș цілĐșĐŸĐŒ"
-#: ../src/verbs.cpp:2886
+#: ../src/verbs.cpp:2855
msgid "Zoom to fit selection in window"
msgstr "Đ—ĐŒŃ–ĐœĐžŃ‚Đž ĐŒĐ°ŃŃˆŃ‚Đ°Đ±, Ń‰ĐŸĐ± Ń€ĐŸĐ·ĐŒŃ–ŃŃ‚ĐžŃ‚Đž ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœŃƒ ĐŸĐ±Đ»Đ°ŃŃ‚ŃŒ"
#. Dialogs
-#: ../src/verbs.cpp:2889
+#: ../src/verbs.cpp:2858
msgid "P_references..."
msgstr "На_Đ»Đ°ŃˆŃ‚ŃƒĐČĐ°ĐœĐœŃâ€Š"
-#: ../src/verbs.cpp:2890
+#: ../src/verbs.cpp:2859
msgid "Edit global Inkscape preferences"
msgstr "РДЎагуĐČĐ°ĐœĐœŃ Đ·Đ°ĐłĐ°Đ»ŃŒĐœĐžŃ… ĐżĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Ń–ĐČ Inkscape"
-#: ../src/verbs.cpp:2891
+#: ../src/verbs.cpp:2860
msgid "_Document Properties..."
msgstr "ĐŸĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Đž ĐŽ_ĐŸĐșŃƒĐŒĐ”ĐœŃ‚Đ°â€Š"
-#: ../src/verbs.cpp:2892
+#: ../src/verbs.cpp:2861
msgid "Edit properties of this document (to be saved with the document)"
msgstr ""
"РДЎагуĐČĐ°ĐœĐœŃ ĐČластОĐČĐŸŃŃ‚Đ”Đč ĐżĐŸŃ‚ĐŸŃ‡ĐœĐŸĐłĐŸ ĐŽĐŸĐșŃƒĐŒĐ”ĐœŃ‚Đ° (ĐČĐŸĐœĐž Đ±ŃƒĐŽŃƒŃ‚ŃŒ Đ·Đ±Đ”Ń€Đ”Đ¶Đ”ĐœŃ– Ń€Đ°Đ·ĐŸĐŒ Đ· "
"ĐœĐžĐŒ)"
-#: ../src/verbs.cpp:2893
+#: ../src/verbs.cpp:2862
msgid "Document _Metadata..."
msgstr "_ĐœĐ”Ń‚Đ°ĐŽĐ°ĐœŃ– ĐŽĐŸĐșŃƒĐŒĐ”ĐœŃ‚Đ°"
-#: ../src/verbs.cpp:2894
+#: ../src/verbs.cpp:2863
msgid "Edit document metadata (to be saved with the document)"
msgstr "РДЎагуĐČĐ°ĐœĐœŃ ĐŒĐ”Ń‚Đ°ĐŽĐ°ĐœĐžŃ… ĐŽĐŸĐșŃƒĐŒĐ”ĐœŃ‚Đ° (ĐČĐŸĐœĐž Đ±ŃƒĐŽŃƒŃ‚ŃŒ Đ·Đ±Đ”Ń€Đ”Đ¶Đ”ĐœŃ– Ń€Đ°Đ·ĐŸĐŒ Đ· ĐœĐžĐŒ)"
-#: ../src/verbs.cpp:2896
+#: ../src/verbs.cpp:2865
msgid ""
"Edit objects' colors, gradients, arrowheads, and other fill and stroke "
"properties..."
@@ -26884,118 +26925,118 @@ msgstr ""
"Đ·Đ°ĐżĐŸĐČĐœĐ”ĐœĐœŃ та штроха
"
#. FIXME: Probably better to either use something from the icon naming spec or ship our own "select-font" icon
-#: ../src/verbs.cpp:2898
+#: ../src/verbs.cpp:2867
msgid "Gl_yphs..."
msgstr "Г_ліфО "
-#: ../src/verbs.cpp:2899
+#: ../src/verbs.cpp:2868
msgid "Select characters from a glyphs palette"
msgstr "Đ’ĐžĐ±Đ”Ń€Ń–Ń‚ŃŒ ŃĐžĐŒĐČĐŸĐ»Đž Đ· палітрО гліфіĐČ"
#. FIXME: Probably better to either use something from the icon naming spec or ship our own "select-color" icon
#. TRANSLATORS: "Swatches" means: color samples
-#: ../src/verbs.cpp:2902
+#: ../src/verbs.cpp:2871
msgid "S_watches..."
msgstr "ЗразĐșĐž _ĐșĐŸĐ»ŃŒĐŸŃ€Ń–ĐČ
"
-#: ../src/verbs.cpp:2903
+#: ../src/verbs.cpp:2872
msgid "Select colors from a swatches palette"
msgstr "Đ’ĐžĐ±Đ”Ń€Ń–Ń‚ŃŒ ĐșĐŸĐ»Ń–Ń€ Đ· палітрО зразĐșіĐČ"
-#: ../src/verbs.cpp:2904
+#: ../src/verbs.cpp:2873
msgid "S_ymbols..."
msgstr "ĐĄ_ĐžĐŒĐČĐŸĐ»Đžâ€Š"
-#: ../src/verbs.cpp:2905
+#: ../src/verbs.cpp:2874
msgid "Select symbol from a symbols palette"
msgstr "Đ’ĐžĐ±Đ”Ń€Ń–Ń‚ŃŒ ŃĐžĐŒĐČĐŸĐ» Đ· палітрО ŃĐžĐŒĐČĐŸĐ»Ń–ĐČ"
-#: ../src/verbs.cpp:2906
+#: ../src/verbs.cpp:2875
msgid "Transfor_m..."
msgstr "_ĐąŃ€Đ°ĐœŃŃ„ĐŸŃ€ĐŒŃƒĐČато
"
-#: ../src/verbs.cpp:2907
+#: ../src/verbs.cpp:2876
msgid "Precisely control objects' transformations"
msgstr "ĐšĐŸĐœŃ‚Ń€ĐŸĐ»ŃŽĐČато Ń‚ĐŸŃ‡ĐœŃ–ŃŃ‚ŃŒ пДрДтĐČĐŸŃ€Đ”ĐœŃŒ ĐŸĐ±'єĐșтіĐČ"
-#: ../src/verbs.cpp:2908
+#: ../src/verbs.cpp:2877
msgid "_Align and Distribute..."
msgstr "ВоріĐČ_ĐœŃŃ‚Đž та Ń€ĐŸĐ·ĐżĐŸĐŽŃ–Đ»ĐžŃ‚Đžâ€Š"
-#: ../src/verbs.cpp:2909
+#: ../src/verbs.cpp:2878
msgid "Align and distribute objects"
msgstr "ВоріĐČĐœŃŃ‚Đž та Ń€ĐŸĐ·ĐżĐŸĐŽŃ–Đ»ĐžŃ‚Đž ĐŸĐ±'єĐșто"
-#: ../src/verbs.cpp:2910
+#: ../src/verbs.cpp:2879
msgid "_Spray options..."
msgstr "ĐŸĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Đž _Ń€ĐŸĐ·ĐșĐžĐŽĐ°ĐœĐœŃâ€Š"
-#: ../src/verbs.cpp:2911
+#: ../src/verbs.cpp:2880
msgid "Some options for the spray"
msgstr "ĐŸĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Đž Ń€ĐŸĐ·ĐșĐžĐŽĐ°ĐœĐœŃ"
-#: ../src/verbs.cpp:2912
+#: ../src/verbs.cpp:2881
msgid "Undo _History..."
msgstr "Đ†ŃŃ‚ĐŸ_рія Đ·ĐŒŃ–Đœâ€Š"
-#: ../src/verbs.cpp:2913
+#: ../src/verbs.cpp:2882
msgid "Undo History"
msgstr "Đ†ŃŃ‚ĐŸŃ€Ń–Ń ĐŽĐ»Ń сĐșасуĐČĐ°ĐœĐœŃ Đ·ĐŒŃ–Đœ"
-#: ../src/verbs.cpp:2915
+#: ../src/verbs.cpp:2884
msgid "View and select font family, font size and other text properties"
msgstr ""
"ĐŸĐ”Ń€Đ”ĐłĐ»ŃĐŽ та ĐČОбір ĐœĐ°Đ·ĐČĐž шрофту, ĐčĐŸĐłĐŸ Ń€ĐŸĐ·ĐŒŃ–Ń€Ńƒ та Ń–ĐœŃˆĐžŃ… ĐČластОĐČĐŸŃŃ‚Đ”Đč тДĐșсту"
-#: ../src/verbs.cpp:2916
+#: ../src/verbs.cpp:2885
msgid "_XML Editor..."
msgstr "РДЎаĐșŃ‚ĐŸŃ€ _XML
"
-#: ../src/verbs.cpp:2917
+#: ../src/verbs.cpp:2886
msgid "View and edit the XML tree of the document"
msgstr "ĐŸĐ”Ń€Đ”ĐłĐ»ŃĐŽ та Ń€Đ”ĐŽĐ°ĐłŃƒĐČĐ°ĐœĐœŃ ЎДрДĐČа XML ĐżĐŸŃ‚ĐŸŃ‡ĐœĐŸĐłĐŸ ĐŽĐŸĐșŃƒĐŒĐ”ĐœŃ‚Đ°"
-#: ../src/verbs.cpp:2918
+#: ../src/verbs.cpp:2887
msgid "_Find/Replace..."
msgstr "Đ—ĐœĐ°Đčто і Đ·_Đ°ĐŒŃ–ĐœĐžŃ‚Đžâ€Š"
-#: ../src/verbs.cpp:2919
+#: ../src/verbs.cpp:2888
msgid "Find objects in document"
msgstr "Đ—ĐœĐ°Đčто ĐŸĐ±'єĐșто у ĐŽĐŸĐșŃƒĐŒĐ”ĐœŃ‚Ń–"
-#: ../src/verbs.cpp:2920
+#: ../src/verbs.cpp:2889
msgid "Find and _Replace Text..."
msgstr "Đ—ĐœĐ°Đčто і Đ·_Đ°ĐŒŃ–ĐœĐžŃ‚Đž тДĐșст
"
-#: ../src/verbs.cpp:2921
+#: ../src/verbs.cpp:2890
msgid "Find and replace text in document"
msgstr "Đ—ĐœĐ°Đčто і Đ·Đ°ĐŒŃ–ĐœĐžŃ‚Đž тДĐșст у ĐŽĐŸĐșŃƒĐŒĐ”ĐœŃ‚Ń–"
-#: ../src/verbs.cpp:2923
+#: ../src/verbs.cpp:2892
msgid "Check spelling of text in document"
msgstr "ĐŸĐ”Ń€Đ”ĐČірото праĐČĐŸĐżĐžŃ тДĐșсту у ĐŽĐŸĐșŃƒĐŒĐ”ĐœŃ‚Ń–"
-#: ../src/verbs.cpp:2924
+#: ../src/verbs.cpp:2893
msgid "_Messages..."
msgstr "ĐŸĐŸ_ĐČŃ–ĐŽĐŸĐŒĐ»Đ”ĐœĐœŃâ€Š"
-#: ../src/verbs.cpp:2925
+#: ../src/verbs.cpp:2894
msgid "View debug messages"
msgstr "ĐŸĐ”Ń€Đ”ĐłĐ»ŃĐœŃƒŃ‚Đž ĐŽŃ–Đ°ĐłĐœĐŸŃŃ‚ĐžŃ‡ĐœŃ– ĐżĐŸĐČŃ–ĐŽĐŸĐŒĐ»Đ”ĐœĐœŃ"
-#: ../src/verbs.cpp:2926
+#: ../src/verbs.cpp:2895
msgid "Show/Hide D_ialogs"
msgstr "ĐŸĐŸĐșазатО/ŃŃ…ĐŸĐČато ĐŽŃ–Đ°Đ»ĐŸ_гО"
-#: ../src/verbs.cpp:2927
+#: ../src/verbs.cpp:2896
msgid "Show or hide all open dialogs"
msgstr "ĐŸĐŸĐșазатО чо ŃŃ…ĐŸĐČато ĐČсі аĐșтоĐČĐœŃ– ĐŽŃ–Đ°Đ»ĐŸĐłĐŸĐČі ĐČіĐșĐœĐ°"
-#: ../src/verbs.cpp:2928
+#: ../src/verbs.cpp:2897
msgid "Create Tiled Clones..."
msgstr "СтĐČĐŸŃ€ĐžŃ‚Đž ĐŒĐŸĐ·Đ°Ń—Đșу Đ· ĐșĐ»ĐŸĐœŃ–ĐČ
"
-#: ../src/verbs.cpp:2929
+#: ../src/verbs.cpp:2898
msgid ""
"Create multiple clones of selected object, arranging them into a pattern or "
"scattering"
@@ -27003,237 +27044,237 @@ msgstr ""
"СтĐČĐŸŃ€ĐžŃ‚Đž ĐŒĐœĐŸĐ¶ĐžĐœŃƒ ĐșĐ»ĐŸĐœŃ–ĐČ ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐŸĐłĐŸ ĐŸĐ±'єĐșта, Đ· Ń€ĐŸĐ·Ń‚Đ°ŃˆŃƒĐČĐ°ĐœĐœŃĐŒ їх у Ń„ĐŸŃ€ĐŒŃ– "
"ĐČŃ–Đ·Đ”Ń€ŃƒĐœĐșу Đ°Đ±ĐŸ ĐżĐŸĐșроття"
-#: ../src/verbs.cpp:2930
+#: ../src/verbs.cpp:2899
msgid "_Object attributes..."
msgstr "_ĐŃ‚Ń€ĐžĐ±ŃƒŃ‚Đž ĐŸĐ±'єĐșта
"
-#: ../src/verbs.cpp:2931
+#: ../src/verbs.cpp:2900
msgid "Edit the object attributes..."
msgstr "Đ—ĐŒŃ–ĐœĐžŃ‚Đž Đ°Ń‚Ń€ĐžĐ±ŃƒŃ‚Đž ĐŸĐ±'єĐșта
"
-#: ../src/verbs.cpp:2933
+#: ../src/verbs.cpp:2902
msgid "Edit the ID, locked and visible status, and other object properties"
msgstr ""
"РДЎагуĐČĐ°ĐœĐœŃ Ń–ĐŽĐ”ĐœŃ‚ĐžŃ„Ń–ĐșĐ°Ń‚ĐŸŃ€Đ°, ŃŃ‚Đ°ĐœŃƒ Đ·Đ°Đ±Đ»ĐŸĐșĐŸĐČĐ°ĐœĐŸŃŃ‚Ń– та ĐČĐžĐŽĐžĐŒĐŸŃŃ‚Ń– та Ń–ĐœŃˆĐžŃ… "
"ĐČластОĐČĐŸŃŃ‚Đ”Đč ĐŸĐ±'єĐșта"
-#: ../src/verbs.cpp:2934
+#: ../src/verbs.cpp:2903
msgid "_Input Devices..."
msgstr "_ĐŸŃ€ĐžŃŃ‚Ń€ĐŸŃ— ĐČĐČĐ”ĐŽĐ”ĐœĐœŃâ€Š"
-#: ../src/verbs.cpp:2935
+#: ../src/verbs.cpp:2904
msgid "Configure extended input devices, such as a graphics tablet"
msgstr "ĐĐ°Đ»Đ°ŃˆŃ‚ĐŸĐČуĐČĐ°ĐœĐœŃ Ń€ĐŸĐ·ŃˆĐžŃ€Đ”ĐœĐžŃ… ĐżŃ€ĐžŃŃ‚Ń€ĐŸŃ—ĐČ ĐČĐČĐ”ĐŽĐ”ĐœĐœŃ"
-#: ../src/verbs.cpp:2936
+#: ../src/verbs.cpp:2905
msgid "_Extensions..."
msgstr "_ĐŸŃ€ĐŸ ĐŽĐŸĐŽĐ°Ń‚Đșо
"
-#: ../src/verbs.cpp:2937
+#: ../src/verbs.cpp:2906
msgid "Query information about extensions"
msgstr "ЗібратО Ń–ĐœŃ„ĐŸŃ€ĐŒĐ°Ń†Ń–ŃŽ ĐżŃ€ĐŸ ĐŽĐŸĐŽĐ°Ń‚ĐșĐž"
-#: ../src/verbs.cpp:2938
+#: ../src/verbs.cpp:2907
msgid "Layer_s..."
msgstr "_йаро
"
-#: ../src/verbs.cpp:2939
+#: ../src/verbs.cpp:2908
msgid "View Layers"
msgstr "ĐŸĐ”Ń€Đ”ĐłĐ»ŃĐœŃƒŃ‚Đž шаро"
-#: ../src/verbs.cpp:2940
+#: ../src/verbs.cpp:2909
msgid "Object_s..."
msgstr "Об'_єĐșто
"
-#: ../src/verbs.cpp:2941
+#: ../src/verbs.cpp:2910
msgid "View Objects"
msgstr "ĐŸĐ”Ń€Đ”ĐłĐ»ŃĐœŃƒŃ‚Đž ĐŸĐ±'єĐșто"
-#: ../src/verbs.cpp:2942
+#: ../src/verbs.cpp:2911
msgid "Selection se_ts..."
msgstr "На_Đ±ĐŸŃ€Đž ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐŸĐłĐŸâ€Š"
-#: ../src/verbs.cpp:2943
+#: ../src/verbs.cpp:2912
msgid "View Tags"
msgstr "ĐŸĐ”Ń€Đ”ĐłĐ»ŃĐœŃƒŃ‚Đž Ń‚Đ”Ò‘Đž"
-#: ../src/verbs.cpp:2944
+#: ../src/verbs.cpp:2913
msgid "Path E_ffects ..."
msgstr "Е_фДĐșто ĐșĐŸĐœŃ‚ŃƒŃ€Ń–ĐČ
"
-#: ../src/verbs.cpp:2945
+#: ../src/verbs.cpp:2914
msgid "Manage, edit, and apply path effects"
msgstr "ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ, Ń€Đ”ĐŽĐ°ĐłŃƒĐČĐ°ĐœĐœŃ і Đ·Đ°ŃŃ‚ĐŸŃŃƒĐČĐ°ĐœĐœŃ ДфДĐșтіĐČ ĐșĐŸĐœŃ‚ŃƒŃ€Ń–ĐČ"
-#: ../src/verbs.cpp:2946
+#: ../src/verbs.cpp:2915
msgid "Filter _Editor..."
msgstr "Đ _ДЎаĐșŃ‚ĐŸŃ€ Ń„Ń–Đ»ŃŒŃ‚Ń€Ń–ĐČ
"
-#: ../src/verbs.cpp:2947
+#: ../src/verbs.cpp:2916
msgid "Manage, edit, and apply SVG filters"
msgstr "ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ, Ń€Đ”ĐŽĐ°ĐłŃƒĐČĐ°ĐœĐœŃ і Đ·Đ°ŃŃ‚ĐŸŃŃƒĐČĐ°ĐœĐœŃ Ń„Ń–Đ»ŃŒŃ‚Ń€Ń–ĐČ SVG"
-#: ../src/verbs.cpp:2948
+#: ../src/verbs.cpp:2917
msgid "SVG Font Editor..."
msgstr "РДЎаĐșŃ‚ĐŸŃ€ шрофтіĐČ SVG
"
-#: ../src/verbs.cpp:2949
+#: ../src/verbs.cpp:2918
msgid "Edit SVG fonts"
msgstr "РДЎагуĐČато шрофто SVG"
-#: ../src/verbs.cpp:2950
+#: ../src/verbs.cpp:2919
msgid "Print Colors..."
msgstr "ДруĐșуĐČато ĐșĐŸĐ»ŃŒĐŸŃ€Đžâ€Š"
-#: ../src/verbs.cpp:2951
+#: ../src/verbs.cpp:2920
msgid ""
"Select which color separations to render in Print Colors Preview rendermode"
msgstr ""
"ВĐșĐ°Đ¶Ń–Ń‚ŃŒ ĐŽŃ–Đ»ŃĐœĐșĐž ĐșĐŸĐ»ŃŒĐŸŃ€Ń–ĐČ, яĐșі сліЎ ĐŸĐ±Ń€ĐŸĐ±Đ»ŃŃ‚Đž у Ń€Đ”Đ¶ĐžĐŒŃ– ĐŸĐ±Ń€ĐŸĐ±ĐșĐž ĐżĐŸĐżĐ”Ń€Đ”ĐŽĐœŃŒĐŸĐłĐŸ "
"ĐżĐ”Ń€Đ”ĐłĐ»ŃĐŽŃƒ ĐșĐŸĐ»ŃŒĐŸŃ€Ń–ĐČ ĐŽŃ€ŃƒĐșу."
-#: ../src/verbs.cpp:2952
+#: ../src/verbs.cpp:2921
msgid "_Export PNG Image..."
msgstr "_ЕĐșŃĐżĐŸŃ€Ń‚ŃƒĐČато яĐș Đ·ĐŸĐ±Ń€Đ°Đ¶Đ”ĐœĐœŃ PNG
"
-#: ../src/verbs.cpp:2953
+#: ../src/verbs.cpp:2922
msgid "Export this document or a selection as a PNG image"
msgstr "ЕĐșŃĐżĐŸŃ€Ń‚ŃƒĐČато ĐŽĐŸĐșŃƒĐŒĐ”ĐœŃ‚ чо ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœŃƒ Ń‡Đ°ŃŃ‚ĐžĐœŃƒ яĐș Đ·ĐŸĐ±Ń€Đ°Đ¶Đ”ĐœĐœŃ PNG"
#. Help
-#: ../src/verbs.cpp:2955
+#: ../src/verbs.cpp:2924
msgid "About E_xtensions"
msgstr "ĐŸŃ€ĐŸ _ĐŽĐŸĐŽĐ°Ń‚ĐșĐž"
-#: ../src/verbs.cpp:2956
+#: ../src/verbs.cpp:2925
msgid "Information on Inkscape extensions"
msgstr "Đ†ĐœŃ„ĐŸŃ€ĐŒĐ°Ń†Ń–Ń ĐżŃ€ĐŸ ĐŽĐŸĐŽĐ°Ń‚ĐșĐž Inkscape"
-#: ../src/verbs.cpp:2957
+#: ../src/verbs.cpp:2926
msgid "About _Memory"
msgstr "ĐŸŃ€ĐŸ Đż_Đ°ĐŒ'ять"
-#: ../src/verbs.cpp:2958
+#: ../src/verbs.cpp:2927
msgid "Memory usage information"
msgstr "Đ†ĐœŃ„ĐŸŃ€ĐŒĐ°Ń†Ń–Ń ĐżŃ€ĐŸ ĐČĐžĐșĐŸŃ€ĐžŃŃ‚Đ°ĐœĐœŃ ĐżĐ°ĐŒ'яті"
-#: ../src/verbs.cpp:2959
+#: ../src/verbs.cpp:2928
msgid "_About Inkscape"
msgstr "_ĐŸŃ€ĐŸ ĐżŃ€ĐŸĐłŃ€Đ°ĐŒŃƒ Inkscape"
-#: ../src/verbs.cpp:2960
+#: ../src/verbs.cpp:2929
msgid "Inkscape version, authors, license"
msgstr "Đ’Đ”Ń€ŃŃ–Ń, аĐČŃ‚ĐŸŃ€Đž та Đ»Ń–Ń†Đ”ĐœĐ·Ń–Ń Inkscape"
#. new HelpVerb(SP_VERB_SHOW_LICENSE, "ShowLicense", N_("_License"),
#. N_("Distribution terms"), /*"show_license"*/"inkscape_options"),
#. Tutorials
-#: ../src/verbs.cpp:2965
+#: ../src/verbs.cpp:2934
msgid "Inkscape: _Basic"
msgstr "Inkscape: _ĐŸĐŸŃ‡Đ°Ń‚ĐșĐŸĐČĐžĐč ріĐČĐ”ĐœŃŒ"
-#: ../src/verbs.cpp:2966
+#: ../src/verbs.cpp:2935
msgid "Getting started with Inkscape"
msgstr "ĐŸĐŸŃ‡ĐžĐœĐ°Ń”ĐŒĐŸ Ń€ĐŸĐ±ĐŸŃ‚Ńƒ Đ· Inkscape"
#. "tutorial_basic"
-#: ../src/verbs.cpp:2967
+#: ../src/verbs.cpp:2936
msgid "Inkscape: _Shapes"
msgstr "Inkscape: _Đ€Ń–ĐłŃƒŃ€Đž"
-#: ../src/verbs.cpp:2968
+#: ../src/verbs.cpp:2937
msgid "Using shape tools to create and edit shapes"
msgstr "ВоĐșĐŸŃ€ĐžŃŃ‚Đ°ĐœĐœŃ Ń–ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚Ń–ĐČ ĐŒĐ°Đ»ŃŽĐČĐ°ĐœĐœŃ та Ń€Đ”ĐŽĐ°ĐłŃƒĐČĐ°ĐœĐœŃ фігур"
-#: ../src/verbs.cpp:2969
+#: ../src/verbs.cpp:2938
msgid "Inkscape: _Advanced"
msgstr "Inkscape: _ДругоĐč ріĐČĐ”ĐœŃŒ"
-#: ../src/verbs.cpp:2970
+#: ../src/verbs.cpp:2939
msgid "Advanced Inkscape topics"
msgstr "Đ”ĐŸĐŽĐ°Ń‚ĐșĐŸĐČі Ń‚Đ”ĐŒĐž Đ· Inkscape"
#. "tutorial_advanced"
#. TRANSLATORS: "to trace" means "to convert a bitmap to vector graphics" (to vectorize)
-#: ../src/verbs.cpp:2972
+#: ../src/verbs.cpp:2941
msgid "Inkscape: T_racing"
msgstr "Inkscape: _Đ’Đ”ĐșŃ‚ĐŸŃ€ĐžĐ·Đ°Ń†Ń–Ń"
-#: ../src/verbs.cpp:2973
+#: ../src/verbs.cpp:2942
msgid "Using bitmap tracing"
msgstr "ВоĐșĐŸŃ€ĐžŃŃ‚Đ°ĐœĐœŃ ĐČĐ”ĐșŃ‚ĐŸŃ€ĐžĐ·Đ°Ń†Ń–Ń— растру"
#. "tutorial_tracing"
-#: ../src/verbs.cpp:2974
+#: ../src/verbs.cpp:2943
msgid "Inkscape: Tracing Pixel Art"
msgstr "Inkscape: брасуĐČĐ°ĐœĐœŃ Ń€Đ°ŃŃ‚Ń€ĐŸĐČĐŸŃ— графіĐșĐž"
-#: ../src/verbs.cpp:2975
+#: ../src/verbs.cpp:2944
msgid "Using Trace Pixel Art dialog"
msgstr "ĐšĐŸŃ€ĐžŃŃ‚ŃƒĐČĐ°ĐœĐœŃ ĐŽŃ–Đ°Đ»ĐŸĐłĐŸĐČĐžĐŒ ĐČіĐșĐœĐŸĐŒ трасуĐČĐ°ĐœĐœŃ Ń€Đ°ŃŃ‚Ń€ĐŸĐČĐŸŃ— графіĐșĐž"
-#: ../src/verbs.cpp:2976
+#: ../src/verbs.cpp:2945
msgid "Inkscape: _Calligraphy"
msgstr "Inkscape: _ĐšĐ°Đ»Ń–ĐłŃ€Đ°Ń„Ń–Ń"
-#: ../src/verbs.cpp:2977
+#: ../src/verbs.cpp:2946
msgid "Using the Calligraphy pen tool"
msgstr "ВоĐșĐŸŃ€ĐžŃŃ‚Đ°ĐœĐœŃ ĐșĐ°Đ»Ń–ĐłŃ€Đ°Ń„Ń–Ń‡ĐœĐŸĐłĐŸ пДра"
-#: ../src/verbs.cpp:2978
+#: ../src/verbs.cpp:2947
msgid "Inkscape: _Interpolate"
msgstr "Inkscape: _Đ†ĐœŃ‚Đ”Ń€ĐżĐŸĐ»ŃŃ†Ń–Ń"
-#: ../src/verbs.cpp:2979
+#: ../src/verbs.cpp:2948
msgid "Using the interpolate extension"
msgstr "ВоĐșĐŸŃ€ĐžŃŃ‚Đ°ĐœĐœŃ ĐŽĐŸĐŽĐ°Ń‚Đșа Ń–ĐœŃ‚Đ”Ń€ĐżĐŸĐ»ŃŃ†Ń–Ń—"
#. "tutorial_interpolate"
-#: ../src/verbs.cpp:2980
+#: ../src/verbs.cpp:2949
msgid "_Elements of Design"
msgstr "_Đ•Đ»Đ”ĐŒĐ”ĐœŃ‚Đž ЎОзаĐčĐœŃƒ"
-#: ../src/verbs.cpp:2981
+#: ../src/verbs.cpp:2950
msgid "Principles of design in the tutorial form"
msgstr "ĐŸŃ–ĐŽŃ€ŃƒŃ‡ĐœĐžĐș Đ· ĐżŃ€ĐžĐœŃ†ĐžĐżŃ–ĐČ ĐŽĐžĐ·Đ°ĐčĐœŃƒ"
#. "tutorial_design"
-#: ../src/verbs.cpp:2982
+#: ../src/verbs.cpp:2951
msgid "_Tips and Tricks"
msgstr "_ĐŸĐŸŃ€Đ°ĐŽĐž та проĐčĐŸĐŒĐž"
-#: ../src/verbs.cpp:2983
+#: ../src/verbs.cpp:2952
msgid "Miscellaneous tips and tricks"
msgstr "Đ Ń–Đ·ĐœĐŸĐŒĐ°ĐœŃ–Ń‚ĐœŃ– ĐżĐŸŃ€Đ°ĐŽĐž та проĐčĐŸĐŒĐž"
#. "tutorial_tips"
#. Effect -- renamed Extension
-#: ../src/verbs.cpp:2986
+#: ../src/verbs.cpp:2955
msgid "Previous Exte_nsion"
msgstr "ĐŸĐŸĐżĐ”Ń€Đ”ĐŽĐœŃ–Đč _ĐŽĐŸĐŽĐ°Ń‚ĐŸĐș"
-#: ../src/verbs.cpp:2987
+#: ../src/verbs.cpp:2956
msgid "Repeat the last extension with the same settings"
msgstr ""
"ĐŸĐŸĐČŃ‚ĐŸŃ€ĐžŃ‚Đž ДфДĐșто ĐČĐžĐșĐŸŃ€ĐžŃŃ‚Đ°ĐœĐœŃ ĐżĐŸĐżĐ”Ń€Đ”ĐŽĐœŃŒĐŸĐłĐŸ ĐŽĐŸĐŽĐ°Ń‚Đșа Đ· Ń‚ĐžĐŒĐž ŃĐ°ĐŒĐžĐŒĐž ĐżĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Đ°ĐŒĐž"
-#: ../src/verbs.cpp:2988
+#: ../src/verbs.cpp:2957
msgid "_Previous Extension Settings..."
msgstr "П_Đ°Ń€Đ°ĐŒĐ”Ń‚Ń€Đž ĐżĐŸĐżĐ”Ń€Đ”ĐŽĐœŃŒĐŸĐłĐŸ ĐŽĐŸĐŽĐ°Ń‚Đșа
"
-#: ../src/verbs.cpp:2989
+#: ../src/verbs.cpp:2958
msgid "Repeat the last extension with new settings"
msgstr "ĐŸĐŸĐČŃ‚ĐŸŃ€ĐžŃ‚Đž ĐŸŃŃ‚Đ°ĐœĐœŃ–Đč ДфДĐșт Đ· ĐœĐŸĐČĐžĐŒĐž ĐżĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Đ°ĐŒĐž"
-#: ../src/verbs.cpp:2993
+#: ../src/verbs.cpp:2962
msgid "Fit the page to the current selection"
msgstr "ĐŸŃ–ĐŽŃ–ĐłĐœĐ°Ń‚Đž ĐżĐŸĐ»ĐŸŃ‚ĐœĐŸ ĐŽĐŸ ĐżĐŸŃ‚ĐŸŃ‡ĐœĐŸĐłĐŸ ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐŸŃ— ĐŸĐ±Đ»Đ°ŃŃ‚Ń–"
-#: ../src/verbs.cpp:2995
+#: ../src/verbs.cpp:2964
msgid "Fit the page to the drawing"
msgstr "ĐŸŃ–ĐŽĐłĐ°ĐœŃŃ” ĐżĐŸĐ»ĐŸŃ‚ĐœĐŸ піЮ ĐČжД ĐœĐ°ĐŒĐ°Đ»ŃŒĐŸĐČĐ°ĐœĐ”"
-#: ../src/verbs.cpp:2997
+#: ../src/verbs.cpp:2966
msgid ""
"Fit the page to the current selection or the drawing if there is no selection"
msgstr ""
@@ -27241,139 +27282,139 @@ msgstr ""
"ĐșŃ€Đ”ŃĐ»Đ”ĐœĐœŃ, яĐșŃ‰ĐŸ ĐœŃ–Ń‡ĐŸĐłĐŸ ĐœĐ” ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐŸ"
#. LockAndHide
-#: ../src/verbs.cpp:2999
+#: ../src/verbs.cpp:2968
msgid "Unlock All"
msgstr "Đ ĐŸĐ·Đ±Đ»ĐŸĐșуĐČато ĐČсД"
-#: ../src/verbs.cpp:3001
+#: ../src/verbs.cpp:2970
msgid "Unlock All in All Layers"
msgstr "Đ ĐŸĐ·Đ±Đ»ĐŸĐșуĐČато ĐČсД ĐČ ŃƒŃŃ–Ń… шарах"
-#: ../src/verbs.cpp:3003
+#: ../src/verbs.cpp:2972
msgid "Unhide All"
msgstr "ĐŸĐŸĐșазатО ĐČсД"
-#: ../src/verbs.cpp:3005
+#: ../src/verbs.cpp:2974
msgid "Unhide All in All Layers"
msgstr "ĐŸĐŸĐșазатО ĐČсД ĐČ ŃƒŃŃ–Ń… шарах"
-#: ../src/verbs.cpp:3009
+#: ../src/verbs.cpp:2978
msgid "Link an ICC color profile"
msgstr "ĐŸĐŸŃĐžĐ»Đ°ĐœĐœŃ ĐœĐ° ĐżŃ€ĐŸŃ„Ń–Đ»ŃŒ ĐșĐŸĐ»ŃŒĐŸŃ€Ń–ĐČ ICC"
-#: ../src/verbs.cpp:3010
+#: ../src/verbs.cpp:2979
msgid "Remove Color Profile"
msgstr "Đ’ĐžĐ»ŃƒŃ‡ĐžŃ‚Đž ĐżŃ€ĐŸŃ„Ń–Đ»ŃŒ ĐșĐŸĐ»ŃŒĐŸŃ€Ń–ĐČ"
-#: ../src/verbs.cpp:3011
+#: ../src/verbs.cpp:2980
msgid "Remove a linked ICC color profile"
msgstr "Đ’ĐžĐ»ŃƒŃ‡ĐžŃ‚Đž ĐżĐŸĐČ'ŃĐ·Đ°ĐœĐžĐč ĐżŃ€ĐŸŃ„Ń–Đ»ŃŒ ĐșĐŸĐ»ŃŒĐŸŃ€Ń–ĐČ ICC"
-#: ../src/verbs.cpp:3014
+#: ../src/verbs.cpp:2983
msgid "Add External Script"
msgstr "Đ”ĐŸĐŽĐ°Ń‚Đž Đ·ĐŸĐČĐœŃ–ŃˆĐœŃ–Đč сĐșропт"
-#: ../src/verbs.cpp:3014
+#: ../src/verbs.cpp:2983
msgid "Add an external script"
msgstr "Đ”ĐŸĐŽĐ°Ń‚Đž Đ·ĐŸĐČĐœŃ–ŃˆĐœŃ–Đč сĐșропт"
-#: ../src/verbs.cpp:3016
+#: ../src/verbs.cpp:2985
msgid "Add Embedded Script"
msgstr "Đ”ĐŸĐŽĐ°Ń‚Đž ĐČĐ±ŃƒĐŽĐŸĐČĐ°ĐœĐžĐč сĐșропт"
-#: ../src/verbs.cpp:3016
+#: ../src/verbs.cpp:2985
msgid "Add an embedded script"
msgstr "Đ”ĐŸĐŽĐ°Ń‚Đž ĐČĐ±ŃƒĐŽĐŸĐČĐ°ĐœĐžĐč сĐșропт"
-#: ../src/verbs.cpp:3018
+#: ../src/verbs.cpp:2987
msgid "Edit Embedded Script"
msgstr "РДЎагуĐČато ĐČĐ±ŃƒĐŽĐŸĐČĐ°ĐœĐžĐč сĐșропт"
-#: ../src/verbs.cpp:3018
+#: ../src/verbs.cpp:2987
msgid "Edit an embedded script"
msgstr "РДЎагуĐČато ĐČĐ±ŃƒĐŽĐŸĐČĐ°ĐœĐžĐč сĐșропт"
-#: ../src/verbs.cpp:3020
+#: ../src/verbs.cpp:2989
msgid "Remove External Script"
msgstr "Đ’ĐžĐ»ŃƒŃ‡ĐžŃ‚Đž Đ·ĐŸĐČĐœŃ–ŃˆĐœŃ–Đč сĐșропт"
-#: ../src/verbs.cpp:3020
+#: ../src/verbs.cpp:2989
msgid "Remove an external script"
msgstr "Đ’ĐžĐ»ŃƒŃ‡ĐžŃ‚Đž Đ·ĐŸĐČĐœŃ–ŃˆĐœŃ–Đč сĐșропт"
-#: ../src/verbs.cpp:3022
+#: ../src/verbs.cpp:2991
msgid "Remove Embedded Script"
msgstr "Đ’ĐžĐ»ŃƒŃ‡ĐžŃ‚Đž ĐČĐ±ŃƒĐŽĐŸĐČĐ°ĐœĐžĐč сĐșропт"
-#: ../src/verbs.cpp:3022
+#: ../src/verbs.cpp:2991
msgid "Remove an embedded script"
msgstr "Đ’ĐžĐ»ŃƒŃ‡ĐžŃ‚Đž ĐČĐ±ŃƒĐŽĐŸĐČĐ°ĐœĐžĐč сĐșропт"
-#: ../src/verbs.cpp:3044 ../src/verbs.cpp:3045
+#: ../src/verbs.cpp:3013 ../src/verbs.cpp:3014
msgid "Center on horizontal and vertical axis"
msgstr "ĐŠĐ”ĐœŃ‚Ń€ŃƒĐČато ĐœĐ° ĐłĐŸŃ€ĐžĐ·ĐŸĐœŃ‚Đ°Đ»ŃŒĐœŃ–Đč і ĐČДртОĐșĐ°Đ»ŃŒĐœŃ–Đč ĐŸŃŃ–"
-#: ../src/widgets/arc-toolbar.cpp:132
+#: ../src/widgets/arc-toolbar.cpp:129
msgid "Arc: Change start/end"
msgstr "Дуга: Đ·ĐŒŃ–ĐœĐžŃ‚Đž ĐżĐŸŃ‡Đ°Ń‚ĐŸĐș/ĐșŃ–ĐœĐ”Ń†ŃŒ"
-#: ../src/widgets/arc-toolbar.cpp:198
+#: ../src/widgets/arc-toolbar.cpp:191
msgid "Arc: Change open/closed"
msgstr "Дуга: Đ·ĐŒŃ–ĐœĐžŃ‚Đž ĐČіЮĐșротість/Đ·Đ°ĐŒĐșĐœĐ”ĐœŃ–ŃŃ‚ŃŒ"
-#: ../src/widgets/arc-toolbar.cpp:289 ../src/widgets/arc-toolbar.cpp:319
+#: ../src/widgets/arc-toolbar.cpp:280 ../src/widgets/arc-toolbar.cpp:310
#: ../src/widgets/rect-toolbar.cpp:260 ../src/widgets/rect-toolbar.cpp:299
-#: ../src/widgets/spiral-toolbar.cpp:214 ../src/widgets/spiral-toolbar.cpp:238
-#: ../src/widgets/star-toolbar.cpp:384 ../src/widgets/star-toolbar.cpp:446
+#: ../src/widgets/spiral-toolbar.cpp:210 ../src/widgets/spiral-toolbar.cpp:234
+#: ../src/widgets/star-toolbar.cpp:382 ../src/widgets/star-toolbar.cpp:444
msgid "<b>New:</b>"
msgstr "<b>ĐĐŸĐČĐžĐč:</b>"
#. FIXME: implement averaging of all parameters for multiple selected
#. gtk_label_set_markup(GTK_LABEL(l), _("<b>Average:</b>"));
-#: ../src/widgets/arc-toolbar.cpp:292 ../src/widgets/arc-toolbar.cpp:303
+#: ../src/widgets/arc-toolbar.cpp:283 ../src/widgets/arc-toolbar.cpp:294
#: ../src/widgets/rect-toolbar.cpp:268 ../src/widgets/rect-toolbar.cpp:286
-#: ../src/widgets/spiral-toolbar.cpp:216 ../src/widgets/spiral-toolbar.cpp:227
-#: ../src/widgets/star-toolbar.cpp:386
+#: ../src/widgets/spiral-toolbar.cpp:212 ../src/widgets/spiral-toolbar.cpp:223
+#: ../src/widgets/star-toolbar.cpp:384
msgid "<b>Change:</b>"
msgstr "<b>Đ—ĐŒŃ–ĐœĐžŃ‚Đž:</b>"
-#: ../src/widgets/arc-toolbar.cpp:328
+#: ../src/widgets/arc-toolbar.cpp:319
msgid "Start:"
msgstr "ĐŸĐŸŃ‡Đ°Ń‚ĐŸĐș:"
-#: ../src/widgets/arc-toolbar.cpp:329
+#: ../src/widgets/arc-toolbar.cpp:320
msgid "The angle (in degrees) from the horizontal to the arc's start point"
msgstr "Кут (у граЮусах) ĐČіЮ ĐłĐŸŃ€ĐžĐ·ĐŸĐœŃ‚Đ°Đ»Ń– ĐŽĐŸ ĐżĐŸŃ‡Đ°Ń‚ĐșĐŸĐČĐŸŃ— Ń‚ĐŸŃ‡ĐșĐž ЎугО"
-#: ../src/widgets/arc-toolbar.cpp:341
+#: ../src/widgets/arc-toolbar.cpp:332
msgid "End:"
msgstr "ĐšŃ–ĐœĐ”Ń†ŃŒ:"
-#: ../src/widgets/arc-toolbar.cpp:342
+#: ../src/widgets/arc-toolbar.cpp:333
msgid "The angle (in degrees) from the horizontal to the arc's end point"
msgstr "Кут (у граЮусах) ĐČіЮ ĐłĐŸŃ€ĐžĐ·ĐŸĐœŃ‚Đ°Đ»Ń– ĐŽĐŸ ĐșŃ–ĐœŃ†Đ”ĐČĐŸŃ— Ń‚ĐŸŃ‡ĐșĐž ЎугО"
-#: ../src/widgets/arc-toolbar.cpp:358
+#: ../src/widgets/arc-toolbar.cpp:349
msgid "Closed arc"
msgstr "ЗаĐșрота Ўуга"
-#: ../src/widgets/arc-toolbar.cpp:359
+#: ../src/widgets/arc-toolbar.cpp:350
msgid "Switch to segment (closed shape with two radii)"
msgstr "ĐŸĐ”Ń€Đ”Ń‚ĐČĐŸŃ€ĐžŃ‚Đž ĐœĐ° ŃĐ”ĐłĐŒĐ”ĐœŃ‚ (Đ·Đ°ĐŒĐșĐœŃƒŃ‚ĐŸŃ— фігуро Đ· ĐŽĐČĐŸĐŒĐ° Ń€Đ°ĐŽŃ–ŃƒŃĐ°ĐŒĐž-ŃŃ‚ĐŸŃ€ĐŸĐœĐ°ĐŒĐž)"
-#: ../src/widgets/arc-toolbar.cpp:365
+#: ../src/widgets/arc-toolbar.cpp:356
msgid "Open Arc"
msgstr "ВіЮĐșрота Ўуга"
-#: ../src/widgets/arc-toolbar.cpp:366
+#: ../src/widgets/arc-toolbar.cpp:357
msgid "Switch to arc (unclosed shape)"
msgstr "ĐŸĐ”Ń€Đ”Đčто ĐŽĐŸ ЎугО (ĐœĐ”Đ·Đ°Đșроту фігуру)"
-#: ../src/widgets/arc-toolbar.cpp:389
+#: ../src/widgets/arc-toolbar.cpp:380
msgid "Make whole"
msgstr "Đ—Ń€ĐŸĐ±ĐžŃ‚Đž Ń†Ń–Đ»ĐžĐŒ"
-#: ../src/widgets/arc-toolbar.cpp:390
+#: ../src/widgets/arc-toolbar.cpp:381
msgid "Make the shape a whole ellipse, not arc or segment"
msgstr "Đ ĐŸĐ±ĐžŃ‚ŃŒ фігуру Ń†Ń–Đ»ĐžĐŒ Đ”Đ»Ń–ĐżŃĐŸĐŒ, а ĐœĐ” ĐŽŃƒĐłĐŸŃŽ чо ŃĐ”ĐłĐŒĐ”ĐœŃ‚ĐŸĐŒ"
@@ -27737,88 +27778,88 @@ msgstr "Đ”ĐŸĐŽĐ°Ń‚Đž/Đ—ĐŒŃ–ĐœĐžŃ‚Đž ĐżŃ€ĐŸŃ„Ń–Đ»ŃŒ"
msgid "Add or edit calligraphic profile"
msgstr "Đ”ĐŸĐŽĐ°Ń‚Đž Đ°Đ±ĐŸ Đ·ĐŒŃ–ĐœĐžŃ‚Đž ĐżŃ€ĐŸŃ„Ń–Đ»ŃŒ Đșаліграфії"
-#: ../src/widgets/connector-toolbar.cpp:120
+#: ../src/widgets/connector-toolbar.cpp:118
msgid "Set connector type: orthogonal"
msgstr "Đ’ŃŃ‚Đ°ĐœĐŸĐČото топ Đ·'Ń”ĐŽĐœĐ°ĐœĐœŃ: піЮ ĐżŃ€ŃĐŒĐžĐŒ ĐșŃƒŃ‚ĐŸĐŒ"
-#: ../src/widgets/connector-toolbar.cpp:120
+#: ../src/widgets/connector-toolbar.cpp:118
msgid "Set connector type: polyline"
msgstr "Đ’ŃŃ‚Đ°ĐœĐŸĐČото топ Đ·'Ń”ĐŽĐœĐ°ĐœĐœŃ: Đ»Đ°ĐŒĐ°ĐœĐ°"
-#: ../src/widgets/connector-toolbar.cpp:169
+#: ../src/widgets/connector-toolbar.cpp:165
msgid "Change connector curvature"
msgstr "Đ—ĐŒŃ–ĐœĐžŃ‚Đž ĐșроĐČĐžĐœŃƒ Đ·'Ń”ĐŽĐœĐ°ĐœĐœŃ"
-#: ../src/widgets/connector-toolbar.cpp:220
+#: ../src/widgets/connector-toolbar.cpp:216
msgid "Change connector spacing"
msgstr "Đ—ĐŒŃ–ĐœĐ° ĐČŃ–ĐŽŃŃ‚Đ°ĐœĐ”Đč ĐŽĐ»Ń Đ»Ń–ĐœŃ–Ń— Đ·'Ń”ĐŽĐœĐ°ĐœĐœŃ"
-#: ../src/widgets/connector-toolbar.cpp:313
+#: ../src/widgets/connector-toolbar.cpp:309
msgid "Avoid"
msgstr "ĐŁĐœĐžĐșато"
-#: ../src/widgets/connector-toolbar.cpp:323
+#: ../src/widgets/connector-toolbar.cpp:319
msgid "Ignore"
msgstr "Đ†ĐłĐœĐŸŃ€ŃƒĐČато"
-#: ../src/widgets/connector-toolbar.cpp:334
+#: ../src/widgets/connector-toolbar.cpp:330
msgid "Orthogonal"
msgstr "ПіЮ ĐżŃ€ŃĐŒĐžĐŒ ĐșŃƒŃ‚ĐŸĐŒ"
-#: ../src/widgets/connector-toolbar.cpp:335
+#: ../src/widgets/connector-toolbar.cpp:331
msgid "Make connector orthogonal or polyline"
msgstr "Đ—Ń€ĐŸĐ±ĐžŃ‚Đž Đ·'Ń”ĐŽĐœĐ°ĐœĐœŃ Đ·'Ń”ĐŽĐœĐ°ĐœĐœŃĐŒ піЮ ĐżŃ€ŃĐŒĐžĐŒ ĐșŃƒŃ‚ĐŸĐŒ Đ°Đ±ĐŸ Đ·'Ń”ĐŽĐœĐ°ĐœĐœŃĐŒ у Đ»Đ°ĐŒĐ°ĐœŃ–Đč"
-#: ../src/widgets/connector-toolbar.cpp:349
+#: ../src/widgets/connector-toolbar.cpp:345
msgid "Connector Curvature"
msgstr "КроĐČĐžĐœĐ° Đ·'Ń”ĐŽĐœĐ°ĐœĐœŃ"
-#: ../src/widgets/connector-toolbar.cpp:349
+#: ../src/widgets/connector-toolbar.cpp:345
msgid "Curvature:"
msgstr "КроĐČĐžĐœĐ°:"
-#: ../src/widgets/connector-toolbar.cpp:350
+#: ../src/widgets/connector-toolbar.cpp:346
msgid "The amount of connectors curvature"
msgstr "КроĐČĐžĐœĐ° Đ·'Ń”ĐŽĐœĐ°ĐœŃŒ"
-#: ../src/widgets/connector-toolbar.cpp:360
+#: ../src/widgets/connector-toolbar.cpp:356
msgid "Connector Spacing"
msgstr "Đ’Ń–ĐŽŃŃ‚Đ°ĐœŃŒ ĐŽĐ»Ń Đ·'Ń”ĐŽĐœĐ°ĐœĐœŃ"
-#: ../src/widgets/connector-toolbar.cpp:360
+#: ../src/widgets/connector-toolbar.cpp:356
msgid "Spacing:"
msgstr "Đ†ĐœŃ‚Đ”Ń€ĐČал:"
-#: ../src/widgets/connector-toolbar.cpp:361
+#: ../src/widgets/connector-toolbar.cpp:357
msgid "The amount of space left around objects by auto-routing connectors"
msgstr "ĐŸŃ€ĐŸŃŃ‚Ń–Ń€, Ń‰ĐŸ Đ·Đ°Đ»ĐžŃˆĐ°Ń”Ń‚ŃŒŃŃ ĐœĐ°ĐČĐșĐŸĐ»ĐŸ ĐŸĐ±'єĐșтіĐČ ĐżŃ–ĐŽ час аĐČŃ‚ĐŸĐ·'Ń”ĐŽĐœĐ°ĐœĐœŃ"
-#: ../src/widgets/connector-toolbar.cpp:372
+#: ../src/widgets/connector-toolbar.cpp:368
msgid "Graph"
msgstr "ГрафіĐș"
-#: ../src/widgets/connector-toolbar.cpp:382
+#: ../src/widgets/connector-toolbar.cpp:378
msgid "Connector Length"
msgstr "Đ”ĐŸĐČĐ¶ĐžĐœĐ° Đ·'Ń”ĐŽĐœĐ°ĐœĐœŃ"
-#: ../src/widgets/connector-toolbar.cpp:382
+#: ../src/widgets/connector-toolbar.cpp:378
msgid "Length:"
msgstr "Đ”ĐŸĐČĐ¶ĐžĐœĐ°:"
-#: ../src/widgets/connector-toolbar.cpp:383
+#: ../src/widgets/connector-toolbar.cpp:379
msgid "Ideal length for connectors when layout is applied"
msgstr ""
"ЗразĐșĐŸĐČа ĐŽĐŸĐČĐ¶ĐžĐœĐ° Đ»Ń–ĐœŃ–Đč Đ·'Ń”ĐŽĐœĐ°ĐœĐœŃ ĐżŃ–ŃĐ»Ń Đ·Đ°ŃŃ‚ĐŸŃŃƒĐČĐ°ĐœĐœŃ Đ·ĐŸĐČĐœŃ–ŃˆĐœŃŒĐŸĐłĐŸ ĐČĐžĐłĐ»ŃĐŽŃƒ"
-#: ../src/widgets/connector-toolbar.cpp:395
+#: ../src/widgets/connector-toolbar.cpp:391
msgid "Downwards"
msgstr "Đ’ĐœĐžĐ·"
-#: ../src/widgets/connector-toolbar.cpp:396
+#: ../src/widgets/connector-toolbar.cpp:392
msgid "Make connectors with end-markers (arrows) point downwards"
msgstr "Đ—ĐŒŃƒŃĐžŃ‚Đž ĐșŃ–ĐœŃ†Đ”ĐČі стрілĐșĐž Đ»Ń–ĐœŃ–Đč Đ·'Ń”ĐŽĐœĐ°ĐœĐœŃ ĐČĐșазуĐČато ĐČĐœĐžĐ·"
-#: ../src/widgets/connector-toolbar.cpp:412
+#: ../src/widgets/connector-toolbar.cpp:408
msgid "Do not allow overlapping shapes"
msgstr "ĐĐ” ĐŽĐŸĐ·ĐČĐŸĐ»ŃŃ‚Đž пДрДĐșроття Ń„ĐŸŃ€ĐŒ"
@@ -28003,36 +28044,36 @@ msgstr "ВОрізатО Đ· ĐŸĐ±'єĐșтіĐČ"
msgid "The width of the eraser pen (relative to the visible canvas area)"
msgstr "ĐšĐžŃ€ĐžĐœĐ° ĐłŃƒĐŒĐșĐž (ĐČŃ–ĐŽĐœĐŸŃĐœĐŸ ĐČĐžĐŽĐžĐŒĐŸŃ— ĐŸĐ±Đ»Đ°ŃŃ‚Ń– ĐżĐŸĐ»ĐŸŃ‚ĐœĐ°)"
-#: ../src/widgets/fill-style.cpp:360
+#: ../src/widgets/fill-style.cpp:356
msgid "Change fill rule"
msgstr "Đ—ĐŒŃ–ĐœĐ° праĐČОла Đ·Đ°ĐżĐŸĐČĐœĐ”ĐœĐœŃ"
-#: ../src/widgets/fill-style.cpp:445 ../src/widgets/fill-style.cpp:524
+#: ../src/widgets/fill-style.cpp:441 ../src/widgets/fill-style.cpp:520
msgid "Set fill color"
msgstr "Đ’ŃŃ‚Đ°ĐœĐŸĐČĐ»Đ”ĐœĐœŃ ĐșĐŸĐ»ŃŒĐŸŃ€Ńƒ Đ·Đ°ĐżĐŸĐČĐœĐ”ĐœĐœŃ"
-#: ../src/widgets/fill-style.cpp:445 ../src/widgets/fill-style.cpp:524
+#: ../src/widgets/fill-style.cpp:441 ../src/widgets/fill-style.cpp:520
msgid "Set stroke color"
msgstr "Đ’ŃŃ‚Đ°ĐœĐŸĐČĐ»Đ”ĐœĐœŃ ĐșĐŸĐ»ŃŒĐŸŃ€Ńƒ штрохіĐČ"
-#: ../src/widgets/fill-style.cpp:622
+#: ../src/widgets/fill-style.cpp:618
msgid "Set gradient on fill"
msgstr "СтĐČĐŸŃ€ĐžŃ‚Đž ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚ у Đ·Đ°ĐżĐŸĐČĐœĐ”ĐœĐœŃ–"
-#: ../src/widgets/fill-style.cpp:622
+#: ../src/widgets/fill-style.cpp:618
msgid "Set gradient on stroke"
msgstr "СтĐČĐŸŃ€ĐžŃ‚Đž ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚ у штроху"
-#: ../src/widgets/fill-style.cpp:682
+#: ../src/widgets/fill-style.cpp:678
msgid "Set pattern on fill"
msgstr "Đ’ŃŃ‚Đ°ĐœĐŸĐČĐ»Đ”ĐœĐœŃ ĐČŃ–Đ·Đ”Ń€ŃƒĐœĐșу ĐŽĐ»Ń Đ·Đ°ĐżĐŸĐČĐœĐ”ĐœĐœŃ"
-#: ../src/widgets/fill-style.cpp:683
+#: ../src/widgets/fill-style.cpp:679
msgid "Set pattern on stroke"
msgstr "Đ”ĐŸĐŽĐ°Ń‚Đž ĐČŃ–Đ·Đ”Ń€ŃƒĐœĐŸĐș ĐŽĐŸ штроха"
-#: ../src/widgets/font-selector.cpp:120 ../src/widgets/text-toolbar.cpp:947
-#: ../src/widgets/text-toolbar.cpp:1259
+#: ../src/widgets/font-selector.cpp:120 ../src/widgets/text-toolbar.cpp:953
+#: ../src/widgets/text-toolbar.cpp:1265
msgid "Font size"
msgstr "Đ ĐŸĐ·ĐŒŃ–Ń€ шрофту"
@@ -28064,7 +28105,7 @@ msgid "Edit gradient"
msgstr "Đ—ĐŒŃ–ĐœĐžŃ‚Đž ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚"
#: ../src/widgets/gradient-selector.cpp:281
-#: ../src/widgets/paint-selector.cpp:236
+#: ../src/widgets/paint-selector.cpp:233
msgid "Swatch"
msgstr "Đ—Ń€Đ°Đ·ĐŸĐș"
@@ -28072,112 +28113,116 @@ msgstr "Đ—Ń€Đ°Đ·ĐŸĐș"
msgid "Rename gradient"
msgstr "ĐŸĐ”Ń€Đ”ĐčĐŒĐ”ĐœŃƒĐČато ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚"
-#: ../src/widgets/gradient-toolbar.cpp:156
-#: ../src/widgets/gradient-toolbar.cpp:169
-#: ../src/widgets/gradient-toolbar.cpp:758
-#: ../src/widgets/gradient-toolbar.cpp:1097
+#: ../src/widgets/gradient-toolbar.cpp:157
+#: ../src/widgets/gradient-toolbar.cpp:170
+#: ../src/widgets/gradient-toolbar.cpp:761
+#: ../src/widgets/gradient-toolbar.cpp:1100
msgid "No gradient"
msgstr "БДз ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚Đ°"
-#: ../src/widgets/gradient-toolbar.cpp:176
+#: ../src/widgets/gradient-toolbar.cpp:177
msgid "Multiple gradients"
msgstr "ДДĐșŃ–Đ»ŃŒĐșа ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚Ń–ĐČ"
-#: ../src/widgets/gradient-toolbar.cpp:678
+#: ../src/widgets/gradient-toolbar.cpp:681
msgid "Multiple stops"
msgstr "ДДĐșŃ–Đ»ŃŒĐșа ĐŸĐżĐŸŃ€ĐœĐžŃ… Ń‚ĐŸŃ‡ĐŸĐș"
-#: ../src/widgets/gradient-toolbar.cpp:776
-#: ../src/widgets/gradient-vector.cpp:609
+#: ../src/widgets/gradient-toolbar.cpp:779
+#: ../src/widgets/gradient-vector.cpp:610
msgid "No stops in gradient"
msgstr "ĐŁ ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚Ń– ĐœĐ”ĐŒĐ°Ń” ĐŸĐżĐŸŃ€ĐœĐžŃ… Ń‚ĐŸŃ‡ĐŸĐș"
-#: ../src/widgets/gradient-toolbar.cpp:930
+#: ../src/widgets/gradient-toolbar.cpp:933
msgid "Assign gradient to object"
msgstr "Пропосато ĐŸĐ±'єĐșŃ‚ĐŸĐČі ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚"
-#: ../src/widgets/gradient-toolbar.cpp:952
+#: ../src/widgets/gradient-toolbar.cpp:955
msgid "Set gradient repeat"
msgstr "Đ’ŃŃ‚Đ°ĐœĐŸĐČото ĐżĐŸĐČŃ‚ĐŸŃ€ŃŽĐČĐ°ĐœŃ–ŃŃ‚ŃŒ ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚Đ°"
-#: ../src/widgets/gradient-toolbar.cpp:990
-#: ../src/widgets/gradient-vector.cpp:720
+#: ../src/widgets/gradient-toolbar.cpp:993
+#: ../src/widgets/gradient-vector.cpp:721
msgid "Change gradient stop offset"
msgstr "Đ—ĐŒŃ–ĐœĐžŃ‚Đž Đ·ĐŒŃ–Ń‰Đ”ĐœĐœŃ ĐŸĐżĐŸŃ€ĐœĐŸŃ— Ń‚ĐŸŃ‡ĐșĐž ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚Đ°"
-#: ../src/widgets/gradient-toolbar.cpp:1037
+#: ../src/widgets/gradient-toolbar.cpp:1040
msgid "linear"
msgstr "Đ»Ń–ĐœŃ–ĐčĐœĐžĐč"
-#: ../src/widgets/gradient-toolbar.cpp:1037
+#: ../src/widgets/gradient-toolbar.cpp:1040
msgid "Create linear gradient"
msgstr "СтĐČĐŸŃ€ĐžŃ‚Đž Đ»Ń–ĐœŃ–ĐčĐœĐžĐč ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚"
-#: ../src/widgets/gradient-toolbar.cpp:1041
+#: ../src/widgets/gradient-toolbar.cpp:1044
msgid "radial"
msgstr "Ń€Đ°ĐŽŃ–Đ°Đ»ŃŒĐœĐžĐč"
-#: ../src/widgets/gradient-toolbar.cpp:1041
+#: ../src/widgets/gradient-toolbar.cpp:1044
msgid "Create radial (elliptic or circular) gradient"
msgstr "СтĐČĐŸŃ€ĐžŃ‚Đž Ń€Đ°ĐŽŃ–Đ°Đ»ŃŒĐœĐžĐč (Đ”Đ»Ń–ĐżŃ‚ĐžŃ‡ĐœĐžĐč чо ĐșŃ€ŃƒĐłĐŸĐČĐžĐč) ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚"
-#: ../src/widgets/gradient-toolbar.cpp:1044
-#: ../src/widgets/mesh-toolbar.cpp:341
+#: ../src/widgets/gradient-toolbar.cpp:1047
+#: ../src/widgets/mesh-toolbar.cpp:343
msgid "New:"
msgstr "СтĐČĐŸŃ€ĐžŃ‚Đž:"
-#: ../src/widgets/gradient-toolbar.cpp:1067
-#: ../src/widgets/mesh-toolbar.cpp:364
+#: ../src/widgets/gradient-toolbar.cpp:1070
+#: ../src/widgets/mesh-toolbar.cpp:366
msgid "fill"
msgstr "Đ·Đ°ĐżĐŸĐČĐœĐ”ĐœĐœŃ"
-#: ../src/widgets/gradient-toolbar.cpp:1067
-#: ../src/widgets/mesh-toolbar.cpp:364
+#: ../src/widgets/gradient-toolbar.cpp:1070
+#: ../src/widgets/mesh-toolbar.cpp:366
msgid "Create gradient in the fill"
msgstr "СтĐČĐŸŃ€ĐžŃ‚Đž ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚ у Đ·Đ°ĐżĐŸĐČĐœĐ”ĐœĐœŃ–"
-#: ../src/widgets/gradient-toolbar.cpp:1071
-#: ../src/widgets/mesh-toolbar.cpp:368
+#: ../src/widgets/gradient-toolbar.cpp:1074
+#: ../src/widgets/mesh-toolbar.cpp:370
msgid "stroke"
msgstr "штрох"
-#: ../src/widgets/gradient-toolbar.cpp:1071
-#: ../src/widgets/mesh-toolbar.cpp:368
+#: ../src/widgets/gradient-toolbar.cpp:1074
+#: ../src/widgets/mesh-toolbar.cpp:370
msgid "Create gradient in the stroke"
msgstr "СтĐČĐŸŃ€ĐžŃ‚Đž ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚ у штроху"
-#: ../src/widgets/gradient-toolbar.cpp:1074
-#: ../src/widgets/mesh-toolbar.cpp:371
+#: ../src/widgets/gradient-toolbar.cpp:1077
+#: ../src/widgets/mesh-toolbar.cpp:373
msgid "on:"
msgstr "ĐœĐ°:"
-#: ../src/widgets/gradient-toolbar.cpp:1099
+#: ../src/widgets/gradient-toolbar.cpp:1102
msgid "Select"
msgstr "ХДлДĐșŃ‚ĐŸŃ€"
-#: ../src/widgets/gradient-toolbar.cpp:1099
+#: ../src/widgets/gradient-toolbar.cpp:1102
msgid "Choose a gradient"
msgstr "ВОбратО ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚"
-#: ../src/widgets/gradient-toolbar.cpp:1100
+#: ../src/widgets/gradient-toolbar.cpp:1103
msgid "Select:"
msgstr "ĐŸĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐœŃ:"
-#: ../src/widgets/gradient-toolbar.cpp:1115
+#: ../src/widgets/gradient-toolbar.cpp:1118
msgctxt "Gradient repeat type"
msgid "None"
msgstr "ĐĐ”ĐŒĐ°Ń”"
#: ../src/widgets/gradient-toolbar.cpp:1121
+msgid "Reflected"
+msgstr "ВіЎбОтОĐč"
+
+#: ../src/widgets/gradient-toolbar.cpp:1124
msgid "Direct"
msgstr "ĐŸŃ€ŃĐŒĐžĐč"
-#: ../src/widgets/gradient-toolbar.cpp:1123
+#: ../src/widgets/gradient-toolbar.cpp:1126
msgid "Repeat"
msgstr "ĐŸĐŸĐČŃ‚ĐŸŃ€ĐžŃ‚Đž"
#. TRANSLATORS: for info, see http://www.w3.org/TR/2000/CR-SVG-20000802/pservers.html#LinearGradientSpreadMethodAttribute
-#: ../src/widgets/gradient-toolbar.cpp:1125
+#: ../src/widgets/gradient-toolbar.cpp:1128
msgid ""
"Whether to fill with flat color beyond the ends of the gradient vector "
"(spreadMethod=\"pad\"), or repeat the gradient in the same direction "
@@ -28188,62 +28233,62 @@ msgstr ""
"\"pad\"), чо ĐżĐŸĐČŃ‚ĐŸŃ€ŃŽĐČато ĐżĐŸŃ‡Đ°Ń‚ĐșĐŸĐČĐžĐč ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚ (spreadMethod=\"repeat\"), "
"ĐżĐŸĐČŃ‚ĐŸŃ€ŃŽĐČато ĐČіЎбОтОĐč ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚ (spreadMethod=\"reflect\")"
-#: ../src/widgets/gradient-toolbar.cpp:1130
+#: ../src/widgets/gradient-toolbar.cpp:1133
msgid "Repeat:"
msgstr "ĐŸĐŸĐČŃ‚ĐŸŃ€:"
-#: ../src/widgets/gradient-toolbar.cpp:1144
+#: ../src/widgets/gradient-toolbar.cpp:1147
msgid "No stops"
msgstr "БДз ĐŸĐżĐŸŃ€ĐœĐžŃ… Ń‚ĐŸŃ‡ĐŸĐș"
-#: ../src/widgets/gradient-toolbar.cpp:1146
+#: ../src/widgets/gradient-toolbar.cpp:1149
msgid "Stops"
msgstr "ĐžĐżĐŸŃ€ĐœŃ– Ń‚ĐŸŃ‡ĐșĐž"
-#: ../src/widgets/gradient-toolbar.cpp:1146
+#: ../src/widgets/gradient-toolbar.cpp:1149
msgid "Select a stop for the current gradient"
msgstr "ĐŸĐŸĐ·ĐœĐ°Ń‡Ń‚Đ” ĐŸĐżĐŸŃ€ĐœŃƒ Ń‚ĐŸŃ‡Đșу ĐżĐŸŃ‚ĐŸŃ‡ĐœĐŸĐłĐŸ ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚Đ°"
-#: ../src/widgets/gradient-toolbar.cpp:1147
+#: ../src/widgets/gradient-toolbar.cpp:1150
msgid "Stops:"
msgstr "ĐžĐżĐŸŃ€ĐœŃ– Ń‚ĐŸŃ‡ĐșĐž:"
#. Label
-#: ../src/widgets/gradient-toolbar.cpp:1159
-#: ../src/widgets/gradient-vector.cpp:906
+#: ../src/widgets/gradient-toolbar.cpp:1162
+#: ../src/widgets/gradient-vector.cpp:907
msgctxt "Gradient"
msgid "Offset:"
msgstr "ЗсуĐČ:"
-#: ../src/widgets/gradient-toolbar.cpp:1159
+#: ../src/widgets/gradient-toolbar.cpp:1162
msgid "Offset of selected stop"
msgstr "ВіЮступ ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐŸŃ— ĐŸĐżĐŸŃ€ĐœĐŸŃ— Ń‚ĐŸŃ‡ĐșĐž"
-#: ../src/widgets/gradient-toolbar.cpp:1177
-#: ../src/widgets/gradient-toolbar.cpp:1178
+#: ../src/widgets/gradient-toolbar.cpp:1180
+#: ../src/widgets/gradient-toolbar.cpp:1181
msgid "Insert new stop"
msgstr "ВстаĐČото ĐœĐŸĐČу ĐŸĐżĐŸŃ€ĐœŃƒ Ń‚ĐŸŃ‡Đșу"
-#: ../src/widgets/gradient-toolbar.cpp:1191
-#: ../src/widgets/gradient-toolbar.cpp:1192
-#: ../src/widgets/gradient-vector.cpp:888
+#: ../src/widgets/gradient-toolbar.cpp:1194
+#: ../src/widgets/gradient-toolbar.cpp:1195
+#: ../src/widgets/gradient-vector.cpp:889
msgid "Delete stop"
msgstr "Đ’ĐžĐ»ŃƒŃ‡ĐžŃ‚Đž ĐŸĐżĐŸŃ€ĐœŃƒ Ń‚ĐŸŃ‡Đșу"
-#: ../src/widgets/gradient-toolbar.cpp:1206
+#: ../src/widgets/gradient-toolbar.cpp:1209
msgid "Reverse the direction of the gradient"
msgstr "ĐžĐ±Đ”Ń€ĐœŃƒŃ‚Đž ĐœĐ°ĐżŃ€ŃĐŒĐŸĐș ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚Đ°"
-#: ../src/widgets/gradient-toolbar.cpp:1220
+#: ../src/widgets/gradient-toolbar.cpp:1223
msgid "Link gradients"
msgstr "ЗĐČ'ŃĐ·Đ°Ń‚Đž ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚Đž"
-#: ../src/widgets/gradient-toolbar.cpp:1221
+#: ../src/widgets/gradient-toolbar.cpp:1224
msgid "Link gradients to change all related gradients"
msgstr "ЗĐČ'ŃĐ·Đ°Ń‚Đž ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚Đž, Ń‰ĐŸĐ± ĐČĐŸĐœĐž Đ·ĐŒŃ–ĐœŃŽĐČĐ°Đ»ĐžŃŃ у ĐČсіх ĐżĐŸĐČ'ŃĐ·Đ°ĐœĐžŃ… ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚Ń–ĐČ"
#: ../src/widgets/gradient-vector.cpp:312
-#: ../src/widgets/paint-selector.cpp:947
+#: ../src/widgets/paint-selector.cpp:957
#: ../src/widgets/stroke-marker-selector.cpp:154
msgid "No document selected"
msgstr "Đ”ĐŸĐșŃƒĐŒĐ”ĐœŃ‚ ĐœĐ” ĐČĐžĐ±Ń€Đ°ĐœĐŸ"
@@ -28257,28 +28302,28 @@ msgid "No gradient selected"
msgstr "ĐĐ” ĐČĐžĐ±Ń€Đ°ĐœĐŸ Đ¶ĐŸĐŽĐœĐŸĐłĐŸ ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚Đ°"
#. TRANSLATORS: "Stop" means: a "phase" of a gradient
-#: ../src/widgets/gradient-vector.cpp:883
+#: ../src/widgets/gradient-vector.cpp:884
msgid "Add stop"
msgstr "Đ”ĐŸĐŽĐ°Ń‚Đž ĐŸĐżĐŸŃ€ĐœŃƒ Ń‚ĐŸŃ‡Đșу"
-#: ../src/widgets/gradient-vector.cpp:886
+#: ../src/widgets/gradient-vector.cpp:887
msgid "Add another control stop to gradient"
msgstr "Đ”ĐŸĐŽĐ°Ń‚Đž щД ĐŸĐŽĐœŃƒ ĐŸĐżĐŸŃ€ĐœŃƒ Ń‚ĐŸŃ‡Đșу у ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚"
-#: ../src/widgets/gradient-vector.cpp:891
+#: ../src/widgets/gradient-vector.cpp:892
msgid "Delete current control stop from gradient"
msgstr "Đ’ĐžĐ»ŃƒŃ‡ĐžŃ‚Đž ĐŸĐżĐŸŃ€ĐœŃƒ Ń‚ĐŸŃ‡Đșу ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚Đ°"
#. TRANSLATORS: "Stop" means: a "phase" of a gradient
-#: ../src/widgets/gradient-vector.cpp:959
+#: ../src/widgets/gradient-vector.cpp:960
msgid "Stop Color"
msgstr "ĐšĐŸĐ»Ń–Ń€ ĐŸĐżĐŸŃ€ĐœĐŸŃ— Ń‚ĐŸŃ‡ĐșĐž"
-#: ../src/widgets/gradient-vector.cpp:987
+#: ../src/widgets/gradient-vector.cpp:988
msgid "Gradient editor"
msgstr "РДЎаĐșŃ‚ĐŸŃ€ ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚Ń–ĐČ"
-#: ../src/widgets/gradient-vector.cpp:1324
+#: ../src/widgets/gradient-vector.cpp:1325
msgid "Change gradient stop color"
msgstr "Đ—ĐŒŃ–ĐœĐžŃ‚Đž ĐșĐŸĐ»Ń–Ń€ ĐŸĐżĐŸŃ€ĐœĐŸŃ— Ń‚ĐŸŃ‡ĐșĐž ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚Đ°"
@@ -28341,7 +28386,7 @@ msgstr "ĐŸĐŸĐșазуĐČато ĐČŃ–ĐŽĐŸĐŒĐŸŃŃ‚Ń– Ń‰ĐŸĐŽĐŸ ĐČĐžĐŒŃ–Ń€Ńƒ ĐŽĐ»Ń ĐČĐ
#. Add the units menu.
#: ../src/widgets/lpe-toolbar.cpp:387 ../src/widgets/node-toolbar.cpp:613
-#: ../src/widgets/paintbucket-toolbar.cpp:168
+#: ../src/widgets/paintbucket-toolbar.cpp:167
#: ../src/widgets/rect-toolbar.cpp:378 ../src/widgets/select-toolbar.cpp:538
msgid "Units"
msgstr "ĐžĐŽĐžĐœĐžŃ†Ń–"
@@ -28356,7 +28401,7 @@ msgstr ""
"ВіЮĐșрото ĐŽŃ–Đ°Đ»ĐŸĐłĐŸĐČĐ” ĐČіĐșĐœĐŸ ĐłĐ”ĐŸĐŒĐ”Ń‚Ń€ĐžŃ‡ĐœĐžŃ… ĐżĐŸĐ±ŃƒĐŽĐŸĐČ (ĐŽĐ»Ń Ń‡ĐžŃĐ»ĐŸĐČĐŸĐłĐŸ ĐœĐ°Đ»Đ°ŃˆŃ‚ŃƒĐČĐ°ĐœĐœŃ "
"ĐżĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Ń–ĐČ)"
-#: ../src/widgets/measure-toolbar.cpp:86 ../src/widgets/text-toolbar.cpp:1262
+#: ../src/widgets/measure-toolbar.cpp:86 ../src/widgets/text-toolbar.cpp:1268
msgid "Font Size"
msgstr "Đ ĐŸĐ·ĐŒŃ–Ń€ шрофту"
@@ -28373,100 +28418,100 @@ msgstr "Đ ĐŸĐ·ĐŒŃ–Ń€ шрофту, яĐșĐžĐč буЎД ĐČĐžĐșĐŸŃ€ĐžŃŃ‚Đ°ĐœĐŸ ĐŽĐ»
msgid "The units to be used for the measurements"
msgstr "ĐžĐŽĐžĐœĐžŃ†Ń–, яĐșі буЎД ĐČĐžĐșĐŸŃ€ĐžŃŃ‚Đ°ĐœĐŸ ĐŽĐ»Ń ĐČĐžĐŒŃ–Ń€ŃŽĐČĐ°ĐœĐœŃ"
-#: ../src/widgets/mesh-toolbar.cpp:311
+#: ../src/widgets/mesh-toolbar.cpp:313
msgid "Set mesh type"
msgstr "Đ’ŃŃ‚Đ°ĐœĐŸĐČото топ сітĐșĐž"
-#: ../src/widgets/mesh-toolbar.cpp:334
+#: ../src/widgets/mesh-toolbar.cpp:336
msgid "normal"
msgstr "Đ·ĐČочаĐčĐœĐ”"
-#: ../src/widgets/mesh-toolbar.cpp:334
+#: ../src/widgets/mesh-toolbar.cpp:336
msgid "Create mesh gradient"
msgstr "СтĐČĐŸŃ€ĐžŃ‚Đž сітĐșĐŸĐČĐžĐč ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚"
-#: ../src/widgets/mesh-toolbar.cpp:338
+#: ../src/widgets/mesh-toolbar.cpp:340
msgid "conical"
msgstr "ĐșĐŸĐœŃ–Ń‡ĐœĐžĐč"
-#: ../src/widgets/mesh-toolbar.cpp:338
+#: ../src/widgets/mesh-toolbar.cpp:340
msgid "Create conical gradient"
msgstr "СтĐČĐŸŃ€ĐžŃ‚Đž ĐșĐŸĐœŃ–Ń‡ĐœĐžĐč ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚"
-#: ../src/widgets/mesh-toolbar.cpp:393
+#: ../src/widgets/mesh-toolbar.cpp:395
msgid "Rows"
msgstr "РяЮĐșĐž"
-#: ../src/widgets/mesh-toolbar.cpp:393
+#: ../src/widgets/mesh-toolbar.cpp:395
#: ../share/extensions/guides_creator.inx.h:5
#: ../share/extensions/layout_nup.inx.h:12
msgid "Rows:"
msgstr "РяЮĐșіĐČ:"
-#: ../src/widgets/mesh-toolbar.cpp:393
+#: ../src/widgets/mesh-toolbar.cpp:395
msgid "Number of rows in new mesh"
msgstr "ĐšŃ–Đ»ŃŒĐșість ряЮĐșіĐČ Ńƒ ĐœĐŸĐČіĐč сітці"
-#: ../src/widgets/mesh-toolbar.cpp:409
+#: ../src/widgets/mesh-toolbar.cpp:411
msgid "Columns"
msgstr "ĐĄŃ‚ĐŸĐČпчоĐșĐž"
-#: ../src/widgets/mesh-toolbar.cpp:409
+#: ../src/widgets/mesh-toolbar.cpp:411
#: ../share/extensions/guides_creator.inx.h:4
msgid "Columns:"
msgstr "ĐĄŃ‚ĐŸĐČпчоĐșіĐČ:"
-#: ../src/widgets/mesh-toolbar.cpp:409
+#: ../src/widgets/mesh-toolbar.cpp:411
msgid "Number of columns in new mesh"
msgstr "ĐšŃ–Đ»ŃŒĐșість ŃŃ‚ĐŸĐČпчоĐșіĐČ Ńƒ ĐœĐŸĐČіĐč сітці"
-#: ../src/widgets/mesh-toolbar.cpp:423
+#: ../src/widgets/mesh-toolbar.cpp:425
msgid "Edit Fill"
msgstr "РДЎагуĐČато Đ·Đ°ĐżĐŸĐČĐœĐ”ĐœĐœŃ"
-#: ../src/widgets/mesh-toolbar.cpp:424
+#: ../src/widgets/mesh-toolbar.cpp:426
msgid "Edit fill mesh"
msgstr "РДЎагуĐČĐ°ĐœĐœŃ сітĐșĐž Đ·Đ°ĐżĐŸĐČĐœĐ”ĐœĐœŃ"
-#: ../src/widgets/mesh-toolbar.cpp:435
+#: ../src/widgets/mesh-toolbar.cpp:437
msgid "Edit Stroke"
msgstr "РДЎагуĐČĐ°ĐœĐœŃ штроха"
-#: ../src/widgets/mesh-toolbar.cpp:436
+#: ../src/widgets/mesh-toolbar.cpp:438
msgid "Edit stroke mesh"
msgstr "РДЎагуĐČĐ°ĐœĐœŃ сітĐșĐž штроха"
-#: ../src/widgets/mesh-toolbar.cpp:447 ../src/widgets/node-toolbar.cpp:521
+#: ../src/widgets/mesh-toolbar.cpp:449 ../src/widgets/node-toolbar.cpp:521
msgid "Show Handles"
msgstr "ĐŸĐŸĐșазуĐČато Đ”Đ»Đ”ĐŒĐ”ĐœŃ‚Đž ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ"
-#: ../src/widgets/mesh-toolbar.cpp:448
+#: ../src/widgets/mesh-toolbar.cpp:450
msgid "Show side and tensor handles"
msgstr "ĐŸĐŸĐșазатО Đ±Ń–Ń‡ĐœĐžĐč Đ”Đ»Đ”ĐŒĐ”ĐœŃ‚ та Đ”Đ»Đ”ĐŒĐ”ĐœŃ‚ ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ Ń‚Đ”ĐœĐ·ĐŸŃ€ĐŸĐŒ"
-#: ../src/widgets/mesh-toolbar.cpp:463
+#: ../src/widgets/mesh-toolbar.cpp:465
msgid "WARNING: Mesh SVG Syntax Subject to Change"
msgstr "ПОПЕРЕДЖЕННЯ: ŃĐžĐœŃ‚Đ°ĐșŃĐžŃ‡ĐœĐ° ĐșĐŸĐœŃŃ‚Ń€ŃƒĐșція сітĐșĐž SVG Đ·ĐŒŃ–ĐœŃŽŃ”Ń‚ŃŒŃŃ"
-#: ../src/widgets/mesh-toolbar.cpp:473
+#: ../src/widgets/mesh-toolbar.cpp:475
msgctxt "Type"
msgid "Coons"
msgstr "ĐšĐŸĐŸĐœŃĐ°"
-#: ../src/widgets/mesh-toolbar.cpp:476
+#: ../src/widgets/mesh-toolbar.cpp:478
msgid "Bicubic"
msgstr "БіĐșŃƒĐ±Ń–Ń‡ĐœĐžĐč"
-#: ../src/widgets/mesh-toolbar.cpp:478
+#: ../src/widgets/mesh-toolbar.cpp:480
msgid "Coons"
msgstr "ĐšĐŸĐŸĐœŃĐ°"
-#: ../src/widgets/mesh-toolbar.cpp:479
+#: ../src/widgets/mesh-toolbar.cpp:481
msgid "Coons: no smoothing. Bicubic: smoothing across patch boundaries."
msgstr ""
"ĐšĐŸĐŸĐœŃĐ°: бДз зглаЎжуĐČĐ°ĐœĐœŃ. БіĐșŃƒĐ±Ń–Ń‡ĐœĐžĐč: зглаЎжуĐČĐ°ĐœĐœŃ ŃƒĐżĐŸĐżĐ”Ń€Đ”Đș ĐŽĐŸ ĐŒĐ”Đ¶ Ń„Ń€Đ°ĐłĐŒĐ”ĐœŃ‚Đ°."
-#: ../src/widgets/mesh-toolbar.cpp:481 ../src/widgets/pencil-toolbar.cpp:278
+#: ../src/widgets/mesh-toolbar.cpp:483 ../src/widgets/pencil-toolbar.cpp:278
msgid "Smoothing:"
msgstr "Đ—ĐłĐ»Đ°ĐŽĐ¶ŃƒĐČĐ°ĐœĐœŃ:"
@@ -28670,34 +28715,34 @@ msgstr "Y ĐșĐŸĐŸŃ€ĐŽĐžĐœĐ°Ń‚Đ°:"
msgid "Y coordinate of selected node(s)"
msgstr "Y-ĐșĐŸĐŸŃ€ĐŽĐžĐœĐ°Ń‚Đ° ĐČĐžĐ±Ń€Đ°ĐœĐžŃ… ĐČŃƒĐ·Đ»Ń–ĐČ"
-#: ../src/widgets/paint-selector.cpp:222
+#: ../src/widgets/paint-selector.cpp:219
msgid "No paint"
msgstr "ĐĐ”ĐŒĐ°Ń” Đ·Đ°ĐżĐŸĐČĐœĐ”ĐœĐœŃ"
-#: ../src/widgets/paint-selector.cpp:224
+#: ../src/widgets/paint-selector.cpp:221
msgid "Flat color"
msgstr "ĐĄŃƒŃ†Ń–Đ»ŃŒĐœĐžĐč ĐșĐŸĐ»Ń–Ń€"
-#: ../src/widgets/paint-selector.cpp:226
+#: ../src/widgets/paint-selector.cpp:223
msgid "Linear gradient"
msgstr "Đ›Ń–ĐœŃ–ĐčĐœĐžĐč ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚"
-#: ../src/widgets/paint-selector.cpp:228
+#: ../src/widgets/paint-selector.cpp:225
msgid "Radial gradient"
msgstr "Đ Đ°ĐŽŃ–Đ°Đ»ŃŒĐœĐžĐč ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚"
-#: ../src/widgets/paint-selector.cpp:231
+#: ../src/widgets/paint-selector.cpp:228
msgid "Mesh gradient"
msgstr "СітĐșĐŸĐČĐžĐč ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚"
-#: ../src/widgets/paint-selector.cpp:238
+#: ../src/widgets/paint-selector.cpp:235
msgid "Unset paint (make it undefined so it can be inherited)"
msgstr ""
"ĐŸŃ€ĐžĐ±Ń€Đ°Ń‚Đž Đ·Đ°ĐżĐŸĐČĐœĐ”ĐœĐœŃ (Đ·Ń€ĐŸĐ±ĐžŃ‚Đž ĐčĐŸĐłĐŸ ĐœĐ”ĐČĐžĐ·ĐœĐ°Ń‡Đ”ĐœĐžĐŒ, Ń‰ĐŸĐ± ĐČĐŸĐœĐŸ ĐŒĐŸĐłĐ»ĐŸ "
"успаЎĐșĐŸĐČуĐČатось)"
#. TRANSLATORS: for info, see http://www.w3.org/TR/2000/CR-SVG-20000802/painting.html#FillRuleProperty
-#: ../src/widgets/paint-selector.cpp:255
+#: ../src/widgets/paint-selector.cpp:252
msgid ""
"Any path self-intersections or subpaths create holes in the fill (fill-rule: "
"evenodd)"
@@ -28706,47 +28751,47 @@ msgstr ""
"(fill-rule: evenodd)"
#. TRANSLATORS: for info, see http://www.w3.org/TR/2000/CR-SVG-20000802/painting.html#FillRuleProperty
-#: ../src/widgets/paint-selector.cpp:266
+#: ../src/widgets/paint-selector.cpp:263
msgid ""
"Fill is solid unless a subpath is counterdirectional (fill-rule: nonzero)"
msgstr ""
"Đ—Đ°ĐżĐŸĐČĐœĐ”ĐœĐœŃ ĐŒĐ°Ń” ЮірĐșу, лОшД яĐșŃ‰ĐŸ ĐČĐœŃƒŃ‚Ń€Ń–ŃˆĐœŃ–Đč піЮĐșĐŸĐœŃ‚ŃƒŃ€ ĐœĐ°ĐżŃ€ŃĐŒĐ»Đ”ĐœĐžĐč у "
"ĐżŃ€ĐŸŃ‚ĐžĐ»Đ”Đ¶ĐœĐŸĐŒŃƒ ĐœĐ°ĐżŃ€ŃĐŒĐșу ĐČŃ–ĐŽĐœĐŸŃĐœĐŸ Đ·ĐŸĐČĐœŃ–ŃˆĐœŃŒĐŸĐłĐŸ (fill-rule: nonzero)"
-#: ../src/widgets/paint-selector.cpp:600
+#: ../src/widgets/paint-selector.cpp:597
msgid "<b>No objects</b>"
msgstr "<b>ĐĐ”ĐŒĐ°Ń” ĐŸĐ±'єĐșтіĐČ</b>"
-#: ../src/widgets/paint-selector.cpp:611
+#: ../src/widgets/paint-selector.cpp:608
msgid "<b>Multiple styles</b>"
msgstr "<b>ĐœĐœĐŸĐ¶ĐžĐœĐœŃ– стОлі</b>"
-#: ../src/widgets/paint-selector.cpp:622
+#: ../src/widgets/paint-selector.cpp:619
msgid "<b>Paint is undefined</b>"
msgstr "<b>Đ—Đ°ĐżĐŸĐČĐœĐ”ĐœĐœŃ ĐœĐ” ĐČĐžĐ·ĐœĐ°Ń‡Đ”ĐœĐŸ</b>"
-#: ../src/widgets/paint-selector.cpp:633
+#: ../src/widgets/paint-selector.cpp:630
msgid "<b>No paint</b>"
msgstr "<b>ĐĐ”ĐŒĐ°Ń” Đ·Đ°ĐżĐŸĐČĐœĐ”ĐœĐœŃ</b>"
-#: ../src/widgets/paint-selector.cpp:704
+#: ../src/widgets/paint-selector.cpp:714
msgid "<b>Flat color</b>"
msgstr "<b>ĐĄŃƒŃ†Ń–Đ»ŃŒĐœĐžĐč ĐșĐŸĐ»Ń–Ń€</b>"
#. sp_gradient_selector_set_mode(SP_GRADIENT_SELECTOR(gsel), SP_GRADIENT_SELECTOR_MODE_LINEAR);
-#: ../src/widgets/paint-selector.cpp:773
+#: ../src/widgets/paint-selector.cpp:783
msgid "<b>Linear gradient</b>"
msgstr "<b>Đ›Ń–ĐœŃ–ĐčĐœĐžĐč ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚</b>"
-#: ../src/widgets/paint-selector.cpp:776
+#: ../src/widgets/paint-selector.cpp:786
msgid "<b>Radial gradient</b>"
msgstr "<b>Đ Đ°ĐŽŃ–Đ°Đ»ŃŒĐœĐžĐč ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚</b>"
-#: ../src/widgets/paint-selector.cpp:781
+#: ../src/widgets/paint-selector.cpp:791
msgid "<b>Mesh gradient</b>"
msgstr "<b>СітĐșĐŸĐČĐžĐč ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚</b>"
-#: ../src/widgets/paint-selector.cpp:1080
+#: ../src/widgets/paint-selector.cpp:1090
msgid ""
"Use the <b>Node tool</b> to adjust position, scale, and rotation of the "
"pattern on canvas. Use <b>Object &gt; Pattern &gt; Objects to Pattern</b> to "
@@ -28757,27 +28802,27 @@ msgstr ""
"Đ’Ń–Đ·Đ”Ń€ŃƒĐœĐŸĐș &gt; Об'єĐșто у ĐČŃ–Đ·Đ”Ń€ŃƒĐœĐŸĐș</b>, Ń‰ĐŸĐ± стĐČĐŸŃ€ĐžŃ‚Đž ĐœĐŸĐČĐžĐč ĐČŃ–Đ·Đ”Ń€ŃƒĐœĐŸĐș Đ· "
"ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐŸŃ— ĐŸĐ±Đ»Đ°ŃŃ‚Ń–."
-#: ../src/widgets/paint-selector.cpp:1093
+#: ../src/widgets/paint-selector.cpp:1103
msgid "<b>Pattern fill</b>"
msgstr "<b>Đ—Đ°ĐżĐŸĐČĐœĐ”ĐœĐœŃ ĐČŃ–Đ·Đ”Ń€ŃƒĐœĐșĐŸĐŒ</b>"
-#: ../src/widgets/paint-selector.cpp:1187
+#: ../src/widgets/paint-selector.cpp:1197
msgid "<b>Swatch fill</b>"
msgstr "<b>ЗалОĐČĐ°ĐœĐœŃ за зразĐșĐŸĐŒ</b>"
-#: ../src/widgets/paintbucket-toolbar.cpp:135
+#: ../src/widgets/paintbucket-toolbar.cpp:134
msgid "Fill by"
msgstr "ЗалОтО"
-#: ../src/widgets/paintbucket-toolbar.cpp:136
+#: ../src/widgets/paintbucket-toolbar.cpp:135
msgid "Fill by:"
msgstr "Đ§ĐžĐŒ залОтО:"
-#: ../src/widgets/paintbucket-toolbar.cpp:148
+#: ../src/widgets/paintbucket-toolbar.cpp:147
msgid "Fill Threshold"
msgstr "ĐŸĐŸŃ€Ń–Đł Đ·Đ°Đ»ĐžŃ‚Ń‚Ń"
-#: ../src/widgets/paintbucket-toolbar.cpp:149
+#: ../src/widgets/paintbucket-toolbar.cpp:148
msgid ""
"The maximum allowed difference between the clicked pixel and the neighboring "
"pixels to be counted in the fill"
@@ -28785,36 +28830,36 @@ msgstr ""
"МаĐșŃĐžĐŒĐ°Đ»ŃŒĐœĐ° ĐŽĐŸĐżŃƒŃŃ‚ĐžĐŒĐ° Ń€Ń–Đ·ĐœĐžŃ†Ń ĐŒŃ–Đ¶ Ń‚ĐŸŃ‡ĐșĐŸŃŽ, ĐœĐ° яĐșіĐč ĐșĐ»Đ°Ń†ĐœŃƒĐ»Đž та ŃŃƒŃŃ–ĐŽĐœŃ–ĐŒĐž "
"Ń‚ĐŸŃ‡ĐșĐ°ĐŒĐž яĐșі ĐŸĐ±Ń‡ĐžŃĐ»Đ”ĐœŃ– у Đ·Đ°ĐżĐŸĐČĐœĐ”ĐœĐœŃ–"
-#: ../src/widgets/paintbucket-toolbar.cpp:176
+#: ../src/widgets/paintbucket-toolbar.cpp:175
msgid "Grow/shrink by"
msgstr "Đ—Đ±Ń–Đ»ŃŒŃˆĐžŃ‚Đž/Đ·ĐŒĐ”ĐœŃˆĐžŃ‚Đž ĐœĐ°"
-#: ../src/widgets/paintbucket-toolbar.cpp:176
+#: ../src/widgets/paintbucket-toolbar.cpp:175
msgid "Grow/shrink by:"
msgstr "Đ—Đ±Ń–Đ»ŃŒŃˆĐžŃ‚Đž/Đ·ĐŒĐ”ĐœŃˆĐžŃ‚Đž ĐœĐ°:"
-#: ../src/widgets/paintbucket-toolbar.cpp:177
+#: ../src/widgets/paintbucket-toolbar.cpp:176
msgid ""
"The amount to grow (positive) or shrink (negative) the created fill path"
msgstr ""
"Đ’Đ”Đ»ĐžŃ‡ĐžĐœĐ° Đ·Đ±Ń–Đ»ŃŒŃˆĐ”ĐœĐœŃ (ĐŽĐŸĐŽĐ°Ń‚ĐœĐ” Ń‡ĐžŃĐ»ĐŸ) Đ°Đ±ĐŸ Đ·ĐŒĐ”ĐœŃˆĐ”ĐœĐœŃ (ĐČіЮ'Ń”ĐŒĐœĐ”) стĐČĐŸŃ€Đ”ĐœĐŸĐłĐŸ "
"ĐșĐŸĐœŃ‚ŃƒŃ€Ńƒ Đ·Đ°ĐżĐŸĐČĐœĐ”ĐœĐœŃ"
-#: ../src/widgets/paintbucket-toolbar.cpp:202
+#: ../src/widgets/paintbucket-toolbar.cpp:199
msgid "Close gaps"
msgstr "ЗаĐșрото ĐżŃ€ĐŸĐŒŃ–Đ¶ĐșĐž"
-#: ../src/widgets/paintbucket-toolbar.cpp:203
+#: ../src/widgets/paintbucket-toolbar.cpp:200
msgid "Close gaps:"
msgstr "ЗаĐșроті ĐżŃ€ĐŸĐŒŃ–Đ¶ĐșĐž:"
-#: ../src/widgets/paintbucket-toolbar.cpp:214
-#: ../src/widgets/pencil-toolbar.cpp:299 ../src/widgets/spiral-toolbar.cpp:289
-#: ../src/widgets/star-toolbar.cpp:566
+#: ../src/widgets/paintbucket-toolbar.cpp:211
+#: ../src/widgets/pencil-toolbar.cpp:299 ../src/widgets/spiral-toolbar.cpp:285
+#: ../src/widgets/star-toolbar.cpp:564
msgid "Defaults"
msgstr "ĐąĐžĐżĐŸĐČĐŸ"
-#: ../src/widgets/paintbucket-toolbar.cpp:215
+#: ../src/widgets/paintbucket-toolbar.cpp:212
msgid ""
"Reset paint bucket parameters to defaults (use Inkscape Preferences > Tools "
"to change defaults)"
@@ -28911,7 +28956,7 @@ msgstr ""
"Đ’Ń–ĐŽĐœĐŸĐČото Ń‚ĐžĐżĐŸĐČі ĐżĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Đž пДра (Ń‚ĐžĐżĐŸĐČі ĐżĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Đž ĐŒĐŸĐ¶ĐœĐ° Đ·ĐŒŃ–ĐœĐžŃ‚Đž у ĐČіĐșĐœŃ– "
"ĐŸĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Đž Inkscape->Đ†ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚Đž)"
-#: ../src/widgets/rect-toolbar.cpp:124
+#: ../src/widgets/rect-toolbar.cpp:125
msgid "Change rectangle"
msgstr "Đ—ĐŒŃ–ĐœĐžŃ‚Đž ĐżŃ€ŃĐŒĐŸĐșŃƒŃ‚ĐœĐžĐș"
@@ -29295,91 +29340,91 @@ msgstr "Đ—ĐœĐ°Ń‡Đ”ĐœĐœŃ"
msgid "Type text in a text node"
msgstr "НаЮруĐșуĐČато тДĐșст у тДĐșŃŃ‚ĐŸĐČĐŸĐŒŃƒ ĐČŃƒĐ·Đ»Ń–"
-#: ../src/widgets/spiral-toolbar.cpp:100
+#: ../src/widgets/spiral-toolbar.cpp:98
msgid "Change spiral"
msgstr "Đ—ĐŒŃ–ĐœĐžŃ‚Đž ŃĐżŃ–Ń€Đ°Đ»ŃŒ"
-#: ../src/widgets/spiral-toolbar.cpp:246
+#: ../src/widgets/spiral-toolbar.cpp:242
msgid "just a curve"
msgstr "ĐżŃ€ĐŸŃŃ‚ĐŸ ĐșроĐČа"
-#: ../src/widgets/spiral-toolbar.cpp:246
+#: ../src/widgets/spiral-toolbar.cpp:242
msgid "one full revolution"
msgstr "ĐŸĐŽĐžĐœ ĐżĐŸĐČĐœĐžĐč ĐŸĐ±Đ”Ń€Ń‚"
-#: ../src/widgets/spiral-toolbar.cpp:249
+#: ../src/widgets/spiral-toolbar.cpp:245
msgid "Number of turns"
msgstr "ĐšŃ–Đ»ŃŒĐșість ĐČотĐșіĐČ"
-#: ../src/widgets/spiral-toolbar.cpp:249
+#: ../src/widgets/spiral-toolbar.cpp:245
msgid "Turns:"
msgstr "ВотĐșіĐČ:"
-#: ../src/widgets/spiral-toolbar.cpp:249
+#: ../src/widgets/spiral-toolbar.cpp:245
msgid "Number of revolutions"
msgstr "ĐšŃ–Đ»ŃŒĐșість ĐČотĐșіĐČ"
-#: ../src/widgets/spiral-toolbar.cpp:260
+#: ../src/widgets/spiral-toolbar.cpp:256
msgid "circle"
msgstr "ĐșĐŸĐ»ĐŸ"
-#: ../src/widgets/spiral-toolbar.cpp:260
+#: ../src/widgets/spiral-toolbar.cpp:256
msgid "edge is much denser"
msgstr "Đ±Ń–Đ»Ń Đșраю ĐœĐ°Đ±Đ°ĐłĐ°Ń‚ĐŸ Ń‡Đ°ŃŃ‚Ń–ŃˆĐ”"
-#: ../src/widgets/spiral-toolbar.cpp:260
+#: ../src/widgets/spiral-toolbar.cpp:256
msgid "edge is denser"
msgstr "Đ±Ń–Đ»Ń Đșраю Ń‡Đ°ŃŃ‚Ń–ŃˆĐ”"
-#: ../src/widgets/spiral-toolbar.cpp:260
+#: ../src/widgets/spiral-toolbar.cpp:256
msgid "even"
msgstr "ріĐČĐœĐ° ŃĐżŃ–Ń€Đ°Đ»ŃŒ"
-#: ../src/widgets/spiral-toolbar.cpp:260
+#: ../src/widgets/spiral-toolbar.cpp:256
msgid "center is denser"
msgstr "Đ±Ń–Đ»Ń Ń†Đ”ĐœŃ‚Ń€Ńƒ Ń‡Đ°ŃŃ‚Ń–ŃˆĐ”"
-#: ../src/widgets/spiral-toolbar.cpp:260
+#: ../src/widgets/spiral-toolbar.cpp:256
msgid "center is much denser"
msgstr "Đ±Ń–Đ»Ń Ń†Đ”ĐœŃ‚Ń€Ńƒ ĐœĐ°Đ±Đ°ĐłĐ°Ń‚ĐŸ Ń‡Đ°ŃŃ‚Ń–ŃˆĐ”"
-#: ../src/widgets/spiral-toolbar.cpp:263
+#: ../src/widgets/spiral-toolbar.cpp:259
msgid "Divergence"
msgstr "Đ ĐŸĐ·Ń…ĐŸĐŽĐ¶Đ”ĐœĐœŃ"
-#: ../src/widgets/spiral-toolbar.cpp:263
+#: ../src/widgets/spiral-toolbar.cpp:259
msgid "Divergence:"
msgstr "Đ ĐŸĐ·Ń…ĐŸĐŽĐ¶Đ”ĐœĐœŃ:"
-#: ../src/widgets/spiral-toolbar.cpp:263
+#: ../src/widgets/spiral-toolbar.cpp:259
msgid "How much denser/sparser are outer revolutions; 1 = uniform"
msgstr "ĐĄŃ‚ŃƒĐżŃ–ĐœŃŒ Đ·Đ±Ń–Đ»ŃŒŃˆĐ”ĐœĐœŃ/Đ·ĐŒĐ”ĐœŃˆĐ”ĐœĐœŃ ĐČŃ–ĐŽŃŃ‚Đ°ĐœŃ– ĐŒŃ–Đ¶ ĐČотĐșĐ°ĐŒĐž; 1 = ріĐČĐœĐŸĐŒŃ–Ń€ĐœĐŸ"
-#: ../src/widgets/spiral-toolbar.cpp:274
+#: ../src/widgets/spiral-toolbar.cpp:270
msgid "starts from center"
msgstr "ĐżĐŸŃ‡Đ°Ń‚Đž ĐČіЮ Ń†Đ”ĐœŃ‚Ń€Ńƒ"
-#: ../src/widgets/spiral-toolbar.cpp:274
+#: ../src/widgets/spiral-toolbar.cpp:270
msgid "starts mid-way"
msgstr "ĐżĐŸŃ‡Đ°Ń‚Đž ĐœĐ° піĐČĐŽĐŸŃ€ĐŸĐ·Ń–"
-#: ../src/widgets/spiral-toolbar.cpp:274
+#: ../src/widgets/spiral-toolbar.cpp:270
msgid "starts near edge"
msgstr "ĐżĐŸŃ‡Đ°Ń‚Đž ĐżĐŸŃ€ŃĐŽ Đ· ĐșŃ€Đ°Ń”ĐŒ"
-#: ../src/widgets/spiral-toolbar.cpp:277
+#: ../src/widgets/spiral-toolbar.cpp:273
msgid "Inner radius"
msgstr "Đ’ĐœŃƒŃ‚Ń€Ń–ŃˆĐœŃ–Đč раЮіус"
-#: ../src/widgets/spiral-toolbar.cpp:277
+#: ../src/widgets/spiral-toolbar.cpp:273
msgid "Inner radius:"
msgstr "Đ’ĐœŃƒŃ‚Ń€Ń–ŃˆĐœŃ–Đč раЮіус:"
-#: ../src/widgets/spiral-toolbar.cpp:277
+#: ../src/widgets/spiral-toolbar.cpp:273
msgid "Radius of the innermost revolution (relative to the spiral size)"
msgstr "РаЮіус ĐżĐ”Ń€ŃˆĐŸĐłĐŸ ĐČĐœŃƒŃ‚Ń€Ń–ŃˆĐœŃŒĐŸĐłĐŸ ĐČотĐșа (ĐČŃ–ĐŽĐœĐŸŃĐœĐŸ Ń€ĐŸĐ·ĐŒŃ–Ń€Ńƒ спіралі)"
-#: ../src/widgets/spiral-toolbar.cpp:290 ../src/widgets/star-toolbar.cpp:567
+#: ../src/widgets/spiral-toolbar.cpp:286 ../src/widgets/star-toolbar.cpp:565
msgid ""
"Reset shape parameters to defaults (use Inkscape Preferences > Tools to "
"change defaults)"
@@ -29553,149 +29598,149 @@ msgstr "ЗірĐșа: Đ—ĐŒŃ–ĐœĐ° Đ·Đ°ĐŸĐșŃ€ŃƒĐłĐ»Đ”ĐœĐœŃ"
msgid "Star: Change randomization"
msgstr "ЗірĐșа: Đ—ĐŒŃ–ĐœĐ° ĐČОпаЎĐșĐŸĐČĐŸŃŃ‚Ń– ĐČĐžĐșроĐČĐ»Đ”ĐœĐœŃ"
-#: ../src/widgets/star-toolbar.cpp:465
+#: ../src/widgets/star-toolbar.cpp:463
msgid "Regular polygon (with one handle) instead of a star"
msgstr "ПраĐČĐžĐ»ŃŒĐœĐžĐč Đ±Đ°ĐłĐ°Ń‚ĐŸĐșŃƒŃ‚ĐœĐžĐș, а ĐœĐ” Đ·Ń–Ń€Đșа"
-#: ../src/widgets/star-toolbar.cpp:472
+#: ../src/widgets/star-toolbar.cpp:470
msgid "Star instead of a regular polygon (with one handle)"
msgstr "ЗірĐșа Đ·Đ°ĐŒŃ–ŃŃ‚ŃŒ Đ·ĐČочаĐčĐœĐŸĐłĐŸ Đ±Đ°ĐłĐ°Ń‚ĐŸĐșŃƒŃ‚ĐœĐžĐșа (Đ· ĐŸĐŽĐœĐžĐŒ ĐČŃƒŃĐŸĐŒ)"
-#: ../src/widgets/star-toolbar.cpp:493
+#: ../src/widgets/star-toolbar.cpp:491
msgid "triangle/tri-star"
msgstr "троĐșŃƒŃ‚ĐœĐžĐș/Đ·Ń–Ń€Đșа Đ· 3 ĐżŃ€ĐŸĐŒĐ”ĐœŃĐŒĐž"
-#: ../src/widgets/star-toolbar.cpp:493
+#: ../src/widgets/star-toolbar.cpp:491
msgid "square/quad-star"
msgstr "ĐșĐČаЮрат/Đ·Ń–Ń€Đșа Đ· 4 ĐżŃ€ĐŸĐŒĐ”ĐœŃĐŒĐž"
-#: ../src/widgets/star-toolbar.cpp:493
+#: ../src/widgets/star-toolbar.cpp:491
msgid "pentagon/five-pointed star"
msgstr "Đż'ятоĐșŃƒŃ‚ĐœĐžĐș/Đ·Ń–Ń€Đșа Đ· 5 ĐżŃ€ĐŸĐŒĐ”ĐœŃĐŒĐž"
-#: ../src/widgets/star-toolbar.cpp:493
+#: ../src/widgets/star-toolbar.cpp:491
msgid "hexagon/six-pointed star"
msgstr "ŃˆĐ”ŃŃ‚ĐžĐșŃƒŃ‚ĐœĐžĐș/Đ·Ń–Ń€Đșа Đ· 6 ĐżŃ€ĐŸĐŒĐ”ĐœŃĐŒĐž"
-#: ../src/widgets/star-toolbar.cpp:496
+#: ../src/widgets/star-toolbar.cpp:494
msgid "Corners"
msgstr "Куто"
-#: ../src/widgets/star-toolbar.cpp:496
+#: ../src/widgets/star-toolbar.cpp:494
msgid "Corners:"
msgstr "Куто:"
-#: ../src/widgets/star-toolbar.cpp:496
+#: ../src/widgets/star-toolbar.cpp:494
msgid "Number of corners of a polygon or star"
msgstr "ĐšŃ–Đ»ŃŒĐșість ĐșутіĐČ Đ±Đ°ĐłĐ°Ń‚ĐŸĐșŃƒŃ‚ĐœĐžĐșа чо Đ·Ń–Ń€ĐșĐž"
-#: ../src/widgets/star-toolbar.cpp:509
+#: ../src/widgets/star-toolbar.cpp:507
msgid "thin-ray star"
msgstr "Đ·Ń–Ń€Đșа Đ· Ń‚ĐŸĐœĐșĐžĐŒĐž ĐżŃ€ĐŸĐŒĐ”ĐœŃĐŒĐž"
-#: ../src/widgets/star-toolbar.cpp:509
+#: ../src/widgets/star-toolbar.cpp:507
msgid "pentagram"
msgstr "ĐżĐ”ĐœŃ‚Đ°ĐłŃ€Đ°ĐŒĐ°"
-#: ../src/widgets/star-toolbar.cpp:509
+#: ../src/widgets/star-toolbar.cpp:507
msgid "hexagram"
msgstr "гДĐșŃĐ°ĐłŃ€Đ°ĐŒĐ°"
-#: ../src/widgets/star-toolbar.cpp:509
+#: ../src/widgets/star-toolbar.cpp:507
msgid "heptagram"
msgstr "ĐłĐ”ĐżŃ‚Đ°ĐłŃ€Đ°ĐŒĐ°"
-#: ../src/widgets/star-toolbar.cpp:509
+#: ../src/widgets/star-toolbar.cpp:507
msgid "octagram"
msgstr "ĐŸĐșŃ‚Đ°ĐłŃ€Đ°ĐŒĐ°"
-#: ../src/widgets/star-toolbar.cpp:509
+#: ../src/widgets/star-toolbar.cpp:507
msgid "regular polygon"
msgstr "Đ·ĐČочаĐčĐœĐžĐč Đ±Đ°ĐłĐ°Ń‚ĐŸĐșŃƒŃ‚ĐœĐžĐș"
-#: ../src/widgets/star-toolbar.cpp:512
+#: ../src/widgets/star-toolbar.cpp:510
msgid "Spoke ratio"
msgstr "Đ’Ń–ĐŽĐœĐŸŃˆĐ”ĐœĐœŃ раЮіусіĐČ"
-#: ../src/widgets/star-toolbar.cpp:512
+#: ../src/widgets/star-toolbar.cpp:510
msgid "Spoke ratio:"
msgstr "Đ’Ń–ĐŽĐœĐŸŃˆĐ”ĐœĐœŃ раЮіусіĐČ:"
#. TRANSLATORS: Tip radius of a star is the distance from the center to the farthest handle.
#. Base radius is the same for the closest handle.
-#: ../src/widgets/star-toolbar.cpp:515
+#: ../src/widgets/star-toolbar.cpp:513
msgid "Base radius to tip radius ratio"
msgstr "Đ’Ń–ĐŽĐœĐŸŃˆĐ”ĐœĐœŃ раЮіусіĐČ ĐŸŃĐœĐŸĐČĐž та ĐČĐ”Ń€ŃˆĐžĐœĐž ĐżŃ€ĐŸĐŒĐ”ĐœŃ"
-#: ../src/widgets/star-toolbar.cpp:533
+#: ../src/widgets/star-toolbar.cpp:531
msgid "stretched"
msgstr "Ń€ĐŸĐ·Ń‚ŃĐłĐœĐ”ĐœĐžĐč"
-#: ../src/widgets/star-toolbar.cpp:533
+#: ../src/widgets/star-toolbar.cpp:531
msgid "twisted"
msgstr "пДрДĐșŃ€ŃƒŃ‡Đ”ĐœĐžĐč"
-#: ../src/widgets/star-toolbar.cpp:533
+#: ../src/widgets/star-toolbar.cpp:531
msgid "slightly pinched"
msgstr "Ń‚Ń€ĐŸŃ…Đž Đ·Đ°Ń‚ĐžŃĐœŃƒŃ‚ĐžĐč"
-#: ../src/widgets/star-toolbar.cpp:533
+#: ../src/widgets/star-toolbar.cpp:531
msgid "NOT rounded"
msgstr "НЕ ĐŸĐșŃ€ŃƒĐłĐ»Đ”ĐœĐžĐč"
-#: ../src/widgets/star-toolbar.cpp:533
+#: ../src/widgets/star-toolbar.cpp:531
msgid "slightly rounded"
msgstr "Ń‚Ń€ĐŸŃ…Đž ĐŸĐșŃ€ŃƒĐłĐ»Đ”ĐœĐžĐč"
-#: ../src/widgets/star-toolbar.cpp:533
+#: ../src/widgets/star-toolbar.cpp:531
msgid "visibly rounded"
msgstr "ĐżĐŸĐŒŃ–Ń‚ĐœĐŸ ĐŸĐșŃ€ŃƒĐłĐ»Đ”ĐœĐžĐč"
-#: ../src/widgets/star-toolbar.cpp:533
+#: ../src/widgets/star-toolbar.cpp:531
msgid "well rounded"
msgstr "Đ·ĐœĐ°Ń‡ĐœĐŸ ĐŸĐșŃ€ŃƒĐłĐ»Đ”ĐœĐžĐč"
-#: ../src/widgets/star-toolbar.cpp:533
+#: ../src/widgets/star-toolbar.cpp:531
msgid "amply rounded"
msgstr "ЎужД ĐŸĐșŃ€ŃƒĐłĐ»Đ”ĐœĐžĐč"
-#: ../src/widgets/star-toolbar.cpp:533 ../src/widgets/star-toolbar.cpp:548
+#: ../src/widgets/star-toolbar.cpp:531 ../src/widgets/star-toolbar.cpp:546
msgid "blown up"
msgstr "ĐœĐ°ĐŽŃƒŃ‚ĐžĐč"
-#: ../src/widgets/star-toolbar.cpp:536
+#: ../src/widgets/star-toolbar.cpp:534
msgid "Rounded:"
msgstr "ОĐșŃ€ŃƒĐłĐ»Đ”ĐœŃ–ŃŃ‚ŃŒ:"
-#: ../src/widgets/star-toolbar.cpp:536
+#: ../src/widgets/star-toolbar.cpp:534
msgid "How much rounded are the corners (0 for sharp)"
msgstr "НасĐșŃ–Đ»ŃŒĐșĐž Đ·ĐłĐ»Đ°ĐŽĐ¶Đ”ĐœŃ– Đșуто (0 — ĐłĐŸŃŃ‚Ń€Ń–)"
-#: ../src/widgets/star-toolbar.cpp:548
+#: ../src/widgets/star-toolbar.cpp:546
msgid "NOT randomized"
msgstr "БЕЗ ĐČОпаЎĐșĐŸĐČĐŸŃŃ‚Ń–"
-#: ../src/widgets/star-toolbar.cpp:548
+#: ../src/widgets/star-toolbar.cpp:546
msgid "slightly irregular"
msgstr "Ń‚Ń€ĐŸŃ…Đž ĐœĐ”ĐżŃ€Đ°ĐČĐžĐ»ŃŒĐœĐŸ"
-#: ../src/widgets/star-toolbar.cpp:548
+#: ../src/widgets/star-toolbar.cpp:546
msgid "visibly randomized"
msgstr "ĐżĐŸĐŒŃ–Ń‚ĐœĐŸ ĐČОпаЎĐșĐŸĐČĐŸ"
-#: ../src/widgets/star-toolbar.cpp:548
+#: ../src/widgets/star-toolbar.cpp:546
msgid "strongly randomized"
msgstr "ЎужД ĐČОпаЎĐșĐŸĐČĐŸ"
-#: ../src/widgets/star-toolbar.cpp:551
+#: ../src/widgets/star-toolbar.cpp:549
msgid "Randomized"
msgstr "ВопаЮĐșĐŸĐČĐŸ"
-#: ../src/widgets/star-toolbar.cpp:551
+#: ../src/widgets/star-toolbar.cpp:549
msgid "Randomized:"
msgstr "ВоĐșроĐČĐ»Đ”ĐœĐŸ:"
-#: ../src/widgets/star-toolbar.cpp:551
+#: ../src/widgets/star-toolbar.cpp:549
msgid "Scatter randomly the corners and angles"
msgstr "ВопаЮĐșĐŸĐČĐžĐŒ Ń‡ĐžĐœĐŸĐŒ ĐżĐ”Ń€Đ”ĐŒŃ–ŃŃ‚ĐžŃ‚Đž Đșуто та ĐżĐŸĐČĐ”Ń€ĐœŃƒŃ‚Đž раЮіусо"
@@ -29795,7 +29840,7 @@ msgstr "ĐšŃ–ĐœŃ†Đ”ĐČі ĐŒĐ°Ń€ĐșДрО ĐŒĐ°Đ»ŃŽŃŽŃ‚ŃŒŃŃ ĐœĐ° ĐŸŃŃ‚Đ°ĐœĐœŃŒĐŸĐŒ
msgid "Set markers"
msgstr "Đ’ŃŃ‚Đ°ĐœĐŸĐČото ĐŒĐ°Ń€ĐșДрО"
-#: ../src/widgets/stroke-style.cpp:1030 ../src/widgets/stroke-style.cpp:1114
+#: ../src/widgets/stroke-style.cpp:1029 ../src/widgets/stroke-style.cpp:1113
msgid "Set stroke style"
msgstr "Đ’ŃŃ‚Đ°ĐœĐŸĐČĐ»Đ”ĐœĐœŃ стОлю штроха"
@@ -29807,412 +29852,412 @@ msgstr "Đ’ŃŃ‚Đ°ĐœĐŸĐČото ĐșĐŸĐ»Ń–Ń€ ĐŒĐ°Ń€ĐșДра"
msgid "Change swatch color"
msgstr "Đ—ĐŒŃ–ĐœĐžŃ‚Đž ĐșĐŸĐ»Ń–Ń€ зразĐșа"
-#: ../src/widgets/text-toolbar.cpp:169
+#: ../src/widgets/text-toolbar.cpp:173
msgid "Text: Change font family"
msgstr "йДĐșст: Đ—ĐŒŃ–ĐœĐ° ŃŃ–ĐŒĐ”ĐčстĐČа шрофту"
-#: ../src/widgets/text-toolbar.cpp:233
+#: ../src/widgets/text-toolbar.cpp:239
msgid "Text: Change font size"
msgstr "йДĐșст: Đ—ĐŒŃ–ĐœĐ° Ń€ĐŸĐ·ĐŒŃ–Ń€Ńƒ шрофту"
-#: ../src/widgets/text-toolbar.cpp:269
+#: ../src/widgets/text-toolbar.cpp:275
msgid "Text: Change font style"
msgstr "йДĐșст: Đ—ĐŒŃ–ĐœĐ° ĐœĐ°Ń€ĐžŃŃƒ шрофту"
-#: ../src/widgets/text-toolbar.cpp:347
+#: ../src/widgets/text-toolbar.cpp:353
msgid "Text: Change superscript or subscript"
msgstr "йДĐșст: Đ·ĐŒŃ–ĐœĐžŃ‚Đž ĐœĐ° ĐČĐ”Ń€Ń…ĐœŃ–Đč Đ°Đ±ĐŸ ĐœĐžĐ¶ĐœŃ–Đč Ń–ĐœĐŽĐ”Đșс"
-#: ../src/widgets/text-toolbar.cpp:489
+#: ../src/widgets/text-toolbar.cpp:496
msgid "Text: Change alignment"
msgstr "йДĐșст: Đ—ĐŒŃ–ĐœĐ° ĐČоріĐČĐœŃŽĐČĐ°ĐœĐœŃ"
-#: ../src/widgets/text-toolbar.cpp:532
+#: ../src/widgets/text-toolbar.cpp:539
msgid "Text: Change line-height"
msgstr "йДĐșст: Đ—ĐŒŃ–ĐœĐ° ĐČĐžŃĐŸŃ‚Đž ряЮĐșіĐČ"
-#: ../src/widgets/text-toolbar.cpp:580
+#: ../src/widgets/text-toolbar.cpp:587
msgid "Text: Change word-spacing"
msgstr "йДĐșст: Đ—ĐŒŃ–ĐœĐ° Ń–ĐœŃ‚Đ”Ń€ĐČаліĐČ ĐŒŃ–Đ¶ ŃĐ»ĐŸĐČĐ°ĐŒĐž"
-#: ../src/widgets/text-toolbar.cpp:620
+#: ../src/widgets/text-toolbar.cpp:627
msgid "Text: Change letter-spacing"
msgstr "йДĐșст: Đ—ĐŒŃ–ĐœĐ° Ń–ĐœŃ‚Đ”Ń€ĐČаліĐČ ĐŒŃ–Đ¶ Đ»Ń–Ń‚Đ”Ń€Đ°ĐŒĐž"
-#: ../src/widgets/text-toolbar.cpp:658
+#: ../src/widgets/text-toolbar.cpp:665
msgid "Text: Change dx (kern)"
msgstr "йДĐșст: Đ—ĐŒŃ–ĐœĐ° ĐżŃ€ĐžŃ€ĐŸŃŃ‚Ńƒ за x (ĐșĐ”Ń€ĐœĐ°)"
-#: ../src/widgets/text-toolbar.cpp:692
+#: ../src/widgets/text-toolbar.cpp:699
msgid "Text: Change dy"
msgstr "йДĐșст: Đ—ĐŒŃ–ĐœĐ° ĐżŃ€ĐžŃ€ĐŸŃŃ‚Ńƒ за y"
-#: ../src/widgets/text-toolbar.cpp:727
+#: ../src/widgets/text-toolbar.cpp:734
msgid "Text: Change rotate"
msgstr "йДĐșст: Đ—ĐŒŃ–ĐœĐ° Đșута ĐŸĐ±Đ”Ń€Ń‚Đ°ĐœĐœŃ"
-#: ../src/widgets/text-toolbar.cpp:774
+#: ../src/widgets/text-toolbar.cpp:781
msgid "Text: Change orientation"
msgstr "йДĐșст: Đ—ĐŒŃ–ĐœĐ° ĐŸŃ€Ń–Ń”ĐœŃ‚Đ°Ń†Ń–Ń—"
-#: ../src/widgets/text-toolbar.cpp:1210
+#: ../src/widgets/text-toolbar.cpp:1216
msgid "Font Family"
msgstr "Đ“Đ°Ń€ĐœŃ–Ń‚ŃƒŃ€Đ° шрофту"
-#: ../src/widgets/text-toolbar.cpp:1211
+#: ../src/widgets/text-toolbar.cpp:1217
msgid "Select Font Family (Alt-X to access)"
msgstr "Đ’ĐžĐ±Đ”Ń€Ń–Ń‚ŃŒ ĐłĐ°Ń€ĐœŃ–Ń‚ŃƒŃ€Ńƒ шрофту (Alt-X ĐŽĐ»Ń ĐŽĐŸŃŃ‚ŃƒĐżŃƒ)"
#. Focus widget
#. Enable entry completion
-#: ../src/widgets/text-toolbar.cpp:1221
+#: ../src/widgets/text-toolbar.cpp:1227
msgid "Select all text with this font-family"
msgstr "ĐŸĐŸĐ·ĐœĐ°Ń‡ĐžŃ‚Đž ĐČсі Ń„Ń€Đ°ĐłĐŒĐ”ĐœŃ‚Đž тДĐșсту Đ· цією ĐłĐ°Ń€ĐœŃ–Ń‚ŃƒŃ€ĐŸŃŽ шрофту"
-#: ../src/widgets/text-toolbar.cpp:1225
+#: ../src/widgets/text-toolbar.cpp:1231
msgid "Font not found on system"
msgstr "йрофту у ŃĐžŃŃ‚Đ”ĐŒŃ– ĐœĐ” ĐČояĐČĐ»Đ”ĐœĐŸ"
-#: ../src/widgets/text-toolbar.cpp:1284
+#: ../src/widgets/text-toolbar.cpp:1290
msgid "Font Style"
msgstr "ĐĄŃ‚ĐžĐ»ŃŒ шрофту"
-#: ../src/widgets/text-toolbar.cpp:1285
+#: ../src/widgets/text-toolbar.cpp:1291
msgid "Font style"
msgstr "ĐĄŃ‚ĐžĐ»ŃŒ шрофту"
#. Name
-#: ../src/widgets/text-toolbar.cpp:1302
+#: ../src/widgets/text-toolbar.cpp:1308
msgid "Toggle Superscript"
msgstr "ĐŁĐČŃ–ĐŒĐșĐœŃƒŃ‚Đž/Đ’ĐžĐŒĐșĐœŃƒŃ‚Đž Ń€Đ”Đ¶ĐžĐŒ ĐČĐ”Ń€Ń…ĐœŃŒĐŸĐłĐŸ Ń–ĐœĐŽĐ”Đșсу"
#. Label
-#: ../src/widgets/text-toolbar.cpp:1303
+#: ../src/widgets/text-toolbar.cpp:1309
msgid "Toggle superscript"
msgstr "ĐŁĐČŃ–ĐŒĐșĐœŃƒŃ‚Đž/Đ’ĐžĐŒĐșĐœŃƒŃ‚Đž Ń€Đ”Đ¶ĐžĐŒ ĐČĐ”Ń€Ń…ĐœŃŒĐŸĐłĐŸ Ń–ĐœĐŽĐ”Đșсу"
#. Name
-#: ../src/widgets/text-toolbar.cpp:1315
+#: ../src/widgets/text-toolbar.cpp:1321
msgid "Toggle Subscript"
msgstr "ĐŁĐČŃ–ĐŒĐșĐœŃƒŃ‚Đž/Đ’ĐžĐŒĐșĐœŃƒŃ‚Đž Ń€Đ”Đ¶ĐžĐŒ ĐœĐžĐ¶ĐœŃŒĐŸĐłĐŸ Ń–ĐœĐŽĐ”Đșсу"
#. Label
-#: ../src/widgets/text-toolbar.cpp:1316
+#: ../src/widgets/text-toolbar.cpp:1322
msgid "Toggle subscript"
msgstr "ĐŁĐČŃ–ĐŒĐșĐœŃƒŃ‚Đž/Đ’ĐžĐŒĐșĐœŃƒŃ‚Đž Ń€Đ”Đ¶ĐžĐŒ ĐœĐžĐ¶ĐœŃŒĐŸĐłĐŸ Ń–ĐœĐŽĐ”Đșсу"
-#: ../src/widgets/text-toolbar.cpp:1357
+#: ../src/widgets/text-toolbar.cpp:1363
msgid "Justify"
msgstr "ВоріĐČĐœŃŃ‚Đž Đ· Đ·Đ°ĐżĐŸĐČĐœĐ”ĐœĐœŃĐŒ"
#. Name
-#: ../src/widgets/text-toolbar.cpp:1364
+#: ../src/widgets/text-toolbar.cpp:1370
msgid "Alignment"
msgstr "ВоріĐČĐœŃŽĐČĐ°ĐœĐœŃ"
#. Label
-#: ../src/widgets/text-toolbar.cpp:1365
+#: ../src/widgets/text-toolbar.cpp:1371
msgid "Text alignment"
msgstr "ВоріĐČĐœŃŽĐČĐ°ĐœĐœŃ тДĐșсту"
-#: ../src/widgets/text-toolbar.cpp:1392
+#: ../src/widgets/text-toolbar.cpp:1398
msgid "Horizontal"
msgstr "Đ“ĐŸŃ€ĐžĐ·ĐŸĐœŃ‚Đ°Đ»ŃŒĐœĐŸ"
-#: ../src/widgets/text-toolbar.cpp:1399
+#: ../src/widgets/text-toolbar.cpp:1405
msgid "Vertical"
msgstr "ВДртОĐșĐ°Đ»ŃŒĐœĐŸ"
#. Label
-#: ../src/widgets/text-toolbar.cpp:1406
+#: ../src/widgets/text-toolbar.cpp:1412
msgid "Text orientation"
msgstr "ĐžŃ€Ń–Ń”ĐœŃ‚Đ°Ń†Ń–Ń тДĐșсту"
#. Drop down menu
-#: ../src/widgets/text-toolbar.cpp:1429
+#: ../src/widgets/text-toolbar.cpp:1435
msgid "Smaller spacing"
msgstr "ĐœĐ”ĐœŃˆĐžĐč Ń–ĐœŃ‚Đ”Ń€ĐČал"
-#: ../src/widgets/text-toolbar.cpp:1429 ../src/widgets/text-toolbar.cpp:1460
-#: ../src/widgets/text-toolbar.cpp:1491
+#: ../src/widgets/text-toolbar.cpp:1435 ../src/widgets/text-toolbar.cpp:1466
+#: ../src/widgets/text-toolbar.cpp:1497
msgctxt "Text tool"
msgid "Normal"
msgstr "ЗĐČочаĐčĐœĐžĐč"
-#: ../src/widgets/text-toolbar.cpp:1429
+#: ../src/widgets/text-toolbar.cpp:1435
msgid "Larger spacing"
msgstr "Đ‘Ń–Đ»ŃŒŃˆĐžĐč Ń–ĐœŃ‚Đ”Ń€ĐČал"
#. name
-#: ../src/widgets/text-toolbar.cpp:1434
+#: ../src/widgets/text-toolbar.cpp:1440
msgid "Line Height"
msgstr "Đ’ĐžŃĐŸŃ‚Đ° ряЮĐșа"
#. label
-#: ../src/widgets/text-toolbar.cpp:1435
+#: ../src/widgets/text-toolbar.cpp:1441
msgid "Line:"
msgstr "Đ ŃĐŽĐŸĐș:"
#. short label
-#: ../src/widgets/text-toolbar.cpp:1436
+#: ../src/widgets/text-toolbar.cpp:1442
msgid "Spacing between lines (times font size)"
msgstr "Đ†ĐœŃ‚Đ”Ń€ĐČал ĐŒŃ–Đ¶ ряЮĐșĐ°ĐŒĐž (у ĐŸĐŽĐžĐœĐžŃ†ŃŃ… Ń€ĐŸĐ·ĐŒŃ–Ń€Ńƒ шрофту)"
#. Drop down menu
-#: ../src/widgets/text-toolbar.cpp:1460 ../src/widgets/text-toolbar.cpp:1491
+#: ../src/widgets/text-toolbar.cpp:1466 ../src/widgets/text-toolbar.cpp:1497
msgid "Negative spacing"
msgstr "ВіЮ'Ń”ĐŒĐœĐžĐč Ń–ĐœŃ‚Đ”Ń€ĐČал"
-#: ../src/widgets/text-toolbar.cpp:1460 ../src/widgets/text-toolbar.cpp:1491
+#: ../src/widgets/text-toolbar.cpp:1466 ../src/widgets/text-toolbar.cpp:1497
msgid "Positive spacing"
msgstr "Đ”ĐŸĐŽĐ°Ń‚ĐœĐžĐč Ń–ĐœŃ‚Đ”Ń€ĐČал"
#. name
-#: ../src/widgets/text-toolbar.cpp:1465
+#: ../src/widgets/text-toolbar.cpp:1471
msgid "Word spacing"
msgstr "Đ†ĐœŃ‚Đ”Ń€ĐČал ĐŒŃ–Đ¶ ŃĐ»ĐŸĐČĐ°ĐŒĐž"
#. label
-#: ../src/widgets/text-toolbar.cpp:1466
+#: ../src/widgets/text-toolbar.cpp:1472
msgid "Word:"
msgstr "ĐĄĐ»ĐŸĐČĐŸ:"
#. short label
-#: ../src/widgets/text-toolbar.cpp:1467
+#: ../src/widgets/text-toolbar.cpp:1473
msgid "Spacing between words (px)"
msgstr "Đ†ĐœŃ‚Đ”Ń€ĐČал ĐŒŃ–Đ¶ ŃĐ»ĐŸĐČĐ°ĐŒĐž (у піĐșŃĐ”Đ»ŃŃ…)"
#. name
-#: ../src/widgets/text-toolbar.cpp:1496
+#: ../src/widgets/text-toolbar.cpp:1502
msgid "Letter spacing"
msgstr "Đ†ĐœŃ‚Đ”Ń€ĐČал ĐŒŃ–Đ¶ Đ»Ń–Ń‚Đ”Ń€Đ°ĐŒĐž"
#. label
-#: ../src/widgets/text-toolbar.cpp:1497
+#: ../src/widgets/text-toolbar.cpp:1503
msgid "Letter:"
msgstr "ЛітДра:"
#. short label
-#: ../src/widgets/text-toolbar.cpp:1498
+#: ../src/widgets/text-toolbar.cpp:1504
msgid "Spacing between letters (px)"
msgstr "Đ†ĐœŃ‚Đ”Ń€ĐČал ĐŒŃ–Đ¶ Đ»Ń–Ń‚Đ”Ń€Đ°ĐŒĐž (у піĐșŃĐ”Đ»ŃŃ…)"
#. name
-#: ../src/widgets/text-toolbar.cpp:1527
+#: ../src/widgets/text-toolbar.cpp:1533
msgid "Kerning"
msgstr "ĐšĐ”Ń€ĐœŃ–ĐœÒ‘"
#. label
-#: ../src/widgets/text-toolbar.cpp:1528
+#: ../src/widgets/text-toolbar.cpp:1534
msgid "Kern:"
msgstr "ĐšĐ”Ń€Đœ:"
#. short label
-#: ../src/widgets/text-toolbar.cpp:1529
+#: ../src/widgets/text-toolbar.cpp:1535
msgid "Horizontal kerning (px)"
msgstr "Đ“ĐŸŃ€ĐžĐ·ĐŸĐœŃ‚Đ°Đ»ŃŒĐœĐžĐč ĐșĐ”Ń€ĐœŃ–ĐœÒ‘ (у піĐșŃĐ”Đ»ŃŃ…)"
#. name
-#: ../src/widgets/text-toolbar.cpp:1558
+#: ../src/widgets/text-toolbar.cpp:1564
msgid "Vertical Shift"
msgstr "ВДртОĐșĐ°Đ»ŃŒĐœĐžĐč зсуĐČ"
#. label
-#: ../src/widgets/text-toolbar.cpp:1559
+#: ../src/widgets/text-toolbar.cpp:1565
msgid "Vert:"
msgstr "ВДрт.:"
#. short label
-#: ../src/widgets/text-toolbar.cpp:1560
+#: ../src/widgets/text-toolbar.cpp:1566
msgid "Vertical shift (px)"
msgstr "ВДртОĐșĐ°Đ»ŃŒĐœĐžĐč зсуĐČ (у піĐșŃĐ”Đ»ŃŃ…)"
#. name
-#: ../src/widgets/text-toolbar.cpp:1589
+#: ../src/widgets/text-toolbar.cpp:1595
msgid "Letter rotation"
msgstr "ĐžĐ±Đ”Ń€Ń‚Đ°ĐœĐœŃ літДр"
#. label
-#: ../src/widgets/text-toolbar.cpp:1590
+#: ../src/widgets/text-toolbar.cpp:1596
msgid "Rot:"
msgstr "ОбДр.:"
#. short label
-#: ../src/widgets/text-toolbar.cpp:1591
+#: ../src/widgets/text-toolbar.cpp:1597
msgid "Character rotation (degrees)"
msgstr "ĐžĐ±Đ”Ń€Ń‚Đ°ĐœĐœŃ ŃĐžĐŒĐČĐŸĐ»Ń–ĐČ (у граЮусах)"
-#: ../src/widgets/toolbox.cpp:181
+#: ../src/widgets/toolbox.cpp:177
msgid "Color/opacity used for color tweaking"
msgstr "ĐšĐŸĐ»Ń–Ń€/ĐœĐ”ĐżŃ€ĐŸĐ·ĐŸŃ€Ń–ŃŃ‚ŃŒ, Ń‰ĐŸ ĐČĐžĐșĐŸŃ€ĐžŃŃ‚ĐŸĐČуĐČĐ°Ń‚ĐžĐŒŃƒŃ‚ŃŒŃŃ ĐŽĐ»Ń ĐșĐŸŃ€Đ”Đșції ĐșĐŸĐ»ŃŒĐŸŃ€Ńƒ"
-#: ../src/widgets/toolbox.cpp:189
+#: ../src/widgets/toolbox.cpp:185
msgid "Style of new stars"
msgstr "ĐĄŃ‚ĐžĐ»ŃŒ ĐœĐŸĐČох Đ·Ń–Ń€ĐŸĐș"
-#: ../src/widgets/toolbox.cpp:191
+#: ../src/widgets/toolbox.cpp:187
msgid "Style of new rectangles"
msgstr "ĐĄŃ‚ĐžĐ»ŃŒ ĐœĐŸĐČох ĐżŃ€ŃĐŒĐŸĐșŃƒŃ‚ĐœĐžĐșіĐČ"
-#: ../src/widgets/toolbox.cpp:193
+#: ../src/widgets/toolbox.cpp:189
msgid "Style of new 3D boxes"
msgstr "ĐĄŃ‚ĐžĐ»ŃŒ ĐœĐŸĐČох ĐżŃ€ĐŸŃŃ‚ĐŸŃ€ĐŸĐČох ĐŸĐ±'єĐșтіĐČ"
-#: ../src/widgets/toolbox.cpp:195
+#: ../src/widgets/toolbox.cpp:191
msgid "Style of new ellipses"
msgstr "ĐĄŃ‚ĐžĐ»ŃŒ ĐœĐŸĐČох ДліпсіĐČ"
-#: ../src/widgets/toolbox.cpp:197
+#: ../src/widgets/toolbox.cpp:193
msgid "Style of new spirals"
msgstr "ĐĄŃ‚ĐžĐ»ŃŒ ĐœĐŸĐČох спіралДĐč"
-#: ../src/widgets/toolbox.cpp:199
+#: ../src/widgets/toolbox.cpp:195
msgid "Style of new paths created by Pencil"
msgstr "ĐĄŃ‚ĐžĐ»ŃŒ ĐœĐŸĐČох ĐșĐŸĐœŃ‚ŃƒŃ€Ń–ĐČ, Ń‰ĐŸ стĐČĐŸŃ€Đ”ĐœŃ– ОліĐČŃ†Đ”ĐŒ"
-#: ../src/widgets/toolbox.cpp:201
+#: ../src/widgets/toolbox.cpp:197
msgid "Style of new paths created by Pen"
msgstr "ĐĄŃ‚ĐžĐ»ŃŒ ĐœĐŸĐČох ĐșĐŸĐœŃ‚ŃƒŃ€Ń–ĐČ, Ń‰ĐŸ стĐČĐŸŃ€Đ”ĐœŃ– ĐŸĐ”Ń€ĐŸĐŒ"
-#: ../src/widgets/toolbox.cpp:203
+#: ../src/widgets/toolbox.cpp:199
msgid "Style of new calligraphic strokes"
msgstr "ĐĄŃ‚ĐžĐ»ŃŒ ĐœĐŸĐČох ĐșĐ°Đ»Ń–ĐłŃ€Đ°Ń„Ń–Ń‡ĐœĐžŃ… штрохіĐČ"
-#: ../src/widgets/toolbox.cpp:205 ../src/widgets/toolbox.cpp:207
+#: ../src/widgets/toolbox.cpp:201 ../src/widgets/toolbox.cpp:203
msgid "TBD"
msgstr "ЩД ĐœĐ” ĐČĐžĐ·ĐœĐ°Ń‡Đ”ĐœĐŸ"
-#: ../src/widgets/toolbox.cpp:219
+#: ../src/widgets/toolbox.cpp:215
msgid "Style of Paint Bucket fill objects"
msgstr "ĐĄŃ‚ĐžĐ»ŃŒ ĐœĐŸĐČох ĐŸĐ±'єĐșтіĐČ, Ń‰ĐŸ стĐČĐŸŃ€Đ”ĐœŃ– Ń–ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚ĐŸĐŒ Đ·Đ°ĐżĐŸĐČĐœĐ”ĐœĐœŃ"
-#: ../src/widgets/toolbox.cpp:1683
+#: ../src/widgets/toolbox.cpp:1679
msgid "Bounding box"
msgstr "Đ Đ°ĐŒĐșа-ĐŸĐ±ĐłĐŸŃ€Ń‚Đșа"
-#: ../src/widgets/toolbox.cpp:1683
+#: ../src/widgets/toolbox.cpp:1679
msgid "Snap bounding boxes"
msgstr "ĐŸŃ€ĐžĐ»ĐžĐżĐ°ĐœĐœŃ ĐŽĐŸ Ń€Đ°ĐŒĐŸĐș-ĐŸĐ±ĐłĐŸŃ€Ń‚ĐŸĐș"
-#: ../src/widgets/toolbox.cpp:1692
+#: ../src/widgets/toolbox.cpp:1688
msgid "Bounding box edges"
msgstr "Краї Ń€Đ°ĐŒĐŸĐș-ĐŸĐ±ĐłĐŸŃ€Ń‚ĐŸĐș"
-#: ../src/widgets/toolbox.cpp:1692
+#: ../src/widgets/toolbox.cpp:1688
msgid "Snap to edges of a bounding box"
msgstr "ĐŸŃ€ĐžĐ»ĐžĐżĐ°ĐœĐœŃ ĐŽĐŸ ĐșраїĐČ Ń€Đ°ĐŒĐŸĐș-ĐŸĐ±ĐłĐŸŃ€Ń‚ĐŸĐș"
-#: ../src/widgets/toolbox.cpp:1701
+#: ../src/widgets/toolbox.cpp:1697
msgid "Bounding box corners"
msgstr "Куто Ń€Đ°ĐŒĐŸĐș-ĐŸĐ±ĐłĐŸŃ€Ń‚ĐŸĐș"
-#: ../src/widgets/toolbox.cpp:1701
+#: ../src/widgets/toolbox.cpp:1697
msgid "Snap bounding box corners"
msgstr "ĐŸŃ€ĐžĐ»ĐžĐżĐ°ĐœĐœŃ ĐŽĐŸ ĐșутіĐČ Ń€Đ°ĐŒĐŸĐș-ĐŸĐ±ĐłĐŸŃ€Ń‚ĐŸĐș"
-#: ../src/widgets/toolbox.cpp:1710
+#: ../src/widgets/toolbox.cpp:1706
msgid "BBox Edge Midpoints"
msgstr "ĐĄĐ”Ń€Đ”ĐŽĐœŃ– Ń‚ĐŸŃ‡ĐșĐž ĐșраїĐČ Ń€Đ°ĐŒĐșĐž-ĐŸĐ±ĐłĐŸŃ€Ń‚ĐșĐž"
-#: ../src/widgets/toolbox.cpp:1710
+#: ../src/widgets/toolbox.cpp:1706
msgid "Snap midpoints of bounding box edges"
msgstr "ĐŸŃ€ĐžĐ»ĐžĐżĐ°ĐœĐœŃ ĐŽĐŸ ŃĐ”Ń€Đ”ĐŽĐœŃ–Ń… Ń‚ĐŸŃ‡ĐŸĐș ĐșраїĐČ Ń€Đ°ĐŒĐŸĐș-ĐŸĐ±ĐłĐŸŃ€Ń‚ĐŸĐș"
-#: ../src/widgets/toolbox.cpp:1720
+#: ../src/widgets/toolbox.cpp:1716
msgid "BBox Centers"
msgstr "ĐŠĐ”ĐœŃ‚Ń€Đž Ń€Đ°ĐŒĐŸĐș-ĐŸĐ±ĐłĐŸŃ€Ń‚ĐŸĐș"
-#: ../src/widgets/toolbox.cpp:1720
+#: ../src/widgets/toolbox.cpp:1716
msgid "Snapping centers of bounding boxes"
msgstr "ĐŸŃ€ĐžĐ»ĐžĐżĐ°ĐœĐœŃ ĐŽĐŸ Ń†Đ”ĐœŃ‚Ń€Ń–ĐČ Ń€Đ°ĐŒĐŸĐș-ĐŸĐ±ĐłĐŸŃ€Ń‚ĐŸĐș"
-#: ../src/widgets/toolbox.cpp:1729
+#: ../src/widgets/toolbox.cpp:1725
msgid "Snap nodes, paths, and handles"
msgstr "ĐŸŃ€ĐžĐ»ĐžĐżĐ°ĐœĐœŃ ĐŽĐŸ ĐČŃƒĐ·Đ»Ń–ĐČ, ĐșĐŸĐœŃ‚ŃƒŃ€Ń–ĐČ Ń‚Đ° ĐČусіĐČ"
-#: ../src/widgets/toolbox.cpp:1737
+#: ../src/widgets/toolbox.cpp:1733
msgid "Snap to paths"
msgstr "ĐŸŃ€ĐžĐ»ĐžĐżĐ°ĐœĐœŃ ĐŽĐŸ ĐșĐŸĐœŃ‚ŃƒŃ€Ń–ĐČ"
-#: ../src/widgets/toolbox.cpp:1746
+#: ../src/widgets/toolbox.cpp:1742
msgid "Path intersections"
msgstr "ĐŸĐ”Ń€Đ”Ń‚ĐžĐœ ĐșĐŸĐœŃ‚ŃƒŃ€Ń–ĐČ"
-#: ../src/widgets/toolbox.cpp:1746
+#: ../src/widgets/toolbox.cpp:1742
msgid "Snap to path intersections"
msgstr "ĐŸŃ€ĐžĐ»ĐžĐżĐ°ĐœĐœŃ ĐŽĐŸ ĐżĐ”Ń€Đ”Ń‚ĐžĐœŃ–ĐČ ĐșĐŸĐœŃ‚ŃƒŃ€Ń–ĐČ"
-#: ../src/widgets/toolbox.cpp:1755
+#: ../src/widgets/toolbox.cpp:1751
msgid "To nodes"
msgstr "Đ”ĐŸ ĐČŃƒĐ·Đ»Ń–ĐČ"
-#: ../src/widgets/toolbox.cpp:1755
+#: ../src/widgets/toolbox.cpp:1751
msgid "Snap cusp nodes, incl. rectangle corners"
msgstr "ĐŸŃ€ĐžĐ»ĐžĐżĐ°ĐœĐœŃ ĐŽĐŸ ĐČŃƒĐ·Đ»Ń–ĐČ-ĐČĐ”Ń€ŃˆĐžĐœ, Đ·ĐŸĐșŃ€Đ”ĐŒĐ° ĐșутіĐČ ĐżŃ€ŃĐŒĐŸĐșŃƒŃ‚ĐœĐžĐșіĐČ"
-#: ../src/widgets/toolbox.cpp:1764
+#: ../src/widgets/toolbox.cpp:1760
msgid "Smooth nodes"
msgstr "ГлаЎĐșі ĐČузлО"
-#: ../src/widgets/toolbox.cpp:1764
+#: ../src/widgets/toolbox.cpp:1760
msgid "Snap smooth nodes, incl. quadrant points of ellipses"
msgstr "ĐŸŃ€ĐžĐ»ĐžĐżĐ°ĐœĐœŃ ĐŽĐŸ глаЎĐșох ĐČŃƒĐ·Đ»Ń–ĐČ, Đ·ĐŸĐșŃ€Đ”ĐŒĐ° ĐČĐ”Ń€ŃˆĐžĐœ ДліпсіĐČ"
-#: ../src/widgets/toolbox.cpp:1773
+#: ../src/widgets/toolbox.cpp:1769
msgid "Line Midpoints"
msgstr "ĐĄĐ”Ń€Đ”ĐŽĐœŃ– Ń‚ĐŸŃ‡ĐșĐž Đ»Ń–ĐœŃ–Ń—"
-#: ../src/widgets/toolbox.cpp:1773
+#: ../src/widgets/toolbox.cpp:1769
msgid "Snap midpoints of line segments"
msgstr "ĐŸŃ€ĐžĐ»ĐžĐżĐ°ĐœĐœŃ ĐŽĐŸ ŃĐ”Ń€Đ”ĐŽĐœŃ–Ń… Ń‚ĐŸŃ‡ĐŸĐș ŃĐ”ĐłĐŒĐ”ĐœŃ‚Ń–ĐČ Đ»Ń–ĐœŃ–Ń—"
-#: ../src/widgets/toolbox.cpp:1782
+#: ../src/widgets/toolbox.cpp:1778
msgid "Others"
msgstr "Đ†ĐœŃˆŃ–"
-#: ../src/widgets/toolbox.cpp:1782
+#: ../src/widgets/toolbox.cpp:1778
msgid "Snap other points (centers, guide origins, gradient handles, etc.)"
msgstr ""
"ĐŸŃ€ĐžĐ»ĐžĐżĐ°ĐœĐœŃ ĐŽĐŸ Ń–ĐœŃˆĐžŃ… Ń‚ĐŸŃ‡ĐŸĐș (Ń†Đ”ĐœŃ‚Ń€Ń–ĐČ, ĐżĐŸŃ‡Đ°Ń‚ĐșіĐČ ĐœĐ°ĐżŃ€ŃĐŒĐœĐžŃ…, ĐŸĐżĐŸŃ€ĐœĐžŃ… Ń‚ĐŸŃ‡ĐŸĐș "
"ĐłŃ€Đ°ĐŽŃ–Ń”ĐœŃ‚Ń–ĐČ Ń‚ĐŸŃ‰ĐŸ)"
-#: ../src/widgets/toolbox.cpp:1790
+#: ../src/widgets/toolbox.cpp:1786
msgid "Object Centers"
msgstr "ĐŠĐ”ĐœŃ‚Ń€Đž ĐŸĐ±'єĐșтіĐČ"
-#: ../src/widgets/toolbox.cpp:1790
+#: ../src/widgets/toolbox.cpp:1786
msgid "Snap centers of objects"
msgstr "ĐŸŃ€ĐžĐ»ĐžĐżĐ°ĐœĐœŃ ĐŽĐŸ Ń†Đ”ĐœŃ‚Ń€Ń–ĐČ ĐŸĐ±'єĐșтіĐČ"
-#: ../src/widgets/toolbox.cpp:1799
+#: ../src/widgets/toolbox.cpp:1795
msgid "Rotation Centers"
msgstr "ĐŠĐ”ĐœŃ‚Ń€Đž ĐŸĐ±Đ”Ń€Ń‚Đ°ĐœĐœŃ"
-#: ../src/widgets/toolbox.cpp:1799
+#: ../src/widgets/toolbox.cpp:1795
msgid "Snap an item's rotation center"
msgstr "ĐŸŃ€ĐžĐ»ĐžĐżĐ°ĐœĐœŃ ĐŽĐŸ Ń†Đ”ĐœŃ‚Ń€Ńƒ ĐŸĐ±Đ”Ń€Ń‚Đ°ĐœĐœŃ Đ”Đ»Đ”ĐŒĐ”ĐœŃ‚Đ°"
-#: ../src/widgets/toolbox.cpp:1808
+#: ../src/widgets/toolbox.cpp:1804
msgid "Text baseline"
msgstr "Đ‘Đ°Đ·ĐŸĐČа Đ»Ń–ĐœŃ–Ń тДĐșсту"
-#: ../src/widgets/toolbox.cpp:1808
+#: ../src/widgets/toolbox.cpp:1804
msgid "Snap text anchors and baselines"
msgstr "ĐŸŃ€ĐžĐ»ĐžĐżĐ°ĐœĐœŃ ĐŽĐŸ проĐČ'ŃĐ·ĐŸĐș тДĐșсту та Ń†Đ”ĐœŃ‚Ń€Ń–ĐČ ĐŸĐ±'єĐșтіĐČ"
-#: ../src/widgets/toolbox.cpp:1818
+#: ../src/widgets/toolbox.cpp:1814
msgid "Page border"
msgstr "ĐœĐ”Đ¶Đ° ŃŃ‚ĐŸŃ€Ń–ĐœĐșĐž"
-#: ../src/widgets/toolbox.cpp:1818
+#: ../src/widgets/toolbox.cpp:1814
msgid "Snap to the page border"
msgstr "ĐŸŃ€ĐžĐ»ĐžĐżĐ°ĐœĐœŃ ĐŽĐŸ ĐŒĐ”Đ¶Ń– ŃŃ‚ĐŸŃ€Ń–ĐœĐșĐž"
-#: ../src/widgets/toolbox.cpp:1827
+#: ../src/widgets/toolbox.cpp:1823
msgid "Snap to grids"
msgstr "ĐŸŃ€ĐžĐ»ĐžĐżĐ°ĐœĐœŃ ĐŽĐŸ сітĐșĐž"
-#: ../src/widgets/toolbox.cpp:1836
+#: ../src/widgets/toolbox.cpp:1832
msgid "Snap guides"
msgstr "ĐŸŃ€ĐžĐ»ĐžĐżĐ°ĐœĐœŃ ĐŽĐŸ ĐœĐ°ĐżŃ€ŃĐŒĐœĐžŃ…"
@@ -30425,7 +30470,7 @@ msgid "Use the pressure of the input device to alter the force of tweak action"
msgstr ""
"ВоĐșĐŸŃ€ĐžŃŃ‚ĐŸĐČуĐČато сОлу ĐœĐ°Ń‚ĐžŃĐșу ĐżŃ€ĐžŃŃ‚Ń€ĐŸŃŽ ĐČĐČĐ”ĐŽĐ”ĐœĐœŃ ĐŽĐ»Ń Đ·ĐŒŃ–ĐœĐž сОлО Юії ĐșĐŸŃ€Đ”Đșції"
-#: ../share/extensions/convert2dashes.py:93
+#: ../share/extensions/convert2dashes.py:100
msgid ""
"The selected object is not a path.\n"
"Try using the procedure Path->Object to Path."
@@ -30492,7 +30537,7 @@ msgstr ""
"ĐĐ” ĐČĐŽĐ°Đ»ĐŸŃŃ Ń–ĐŒĐżĐŸŃ€Ń‚ŃƒĐČато ĐŒĐŸĐŽŃƒĐ»Ń– numpy Đ°Đ±ĐŸ numpy.linalg. Щі ĐŒĐŸĐŽŃƒĐ»Ń– ĐżĐŸŃ‚Ń€Ń–Đ±ĐœŃ– ĐŽĐ»Ń "
"Ń†ŃŒĐŸĐłĐŸ ĐŽĐŸĐŽĐ°Ń‚Đșу. БуЮь ласĐșа, ĐČŃŃ‚Đ°ĐœĐŸĐČіть ĐŒĐŸĐŽŃƒĐ»Ń– і ĐżĐŸĐČŃ‚ĐŸŃ€Ń–Ń‚ŃŒ ŃĐżŃ€ĐŸĐ±Ńƒ."
-#: ../share/extensions/dxf_outlines.py:300
+#: ../share/extensions/dxf_outlines.py:299
msgid ""
"Error: Field 'Layer match name' must be filled when using 'By name match' "
"option"
@@ -30500,7 +30545,7 @@ msgstr ""
"ĐŸĐŸĐŒĐžĐ»Đșа: яĐșŃ‰ĐŸ ĐČĐžĐșĐŸŃ€ĐžŃŃ‚ĐŸĐČується ĐČĐ°Ń€Ń–Đ°ĐœŃ‚ Â«Đ’Ń–ĐŽĐżĐŸĐČŃ–ĐŽĐœŃ–ŃŃ‚ŃŒ за ĐœĐ°Đ·ĐČĐŸŃŽÂ», сліЎ "
"Đ·Đ°ĐżĐŸĐČĐœĐžŃ‚Đž ĐżĐŸĐ»Đ” Â«ĐĐ°Đ·ĐČа ĐČŃ–ĐŽĐżĐŸĐČŃ–ĐŽĐœĐŸĐłĐŸ ŃˆĐ°Ń€ŃƒÂ»"
-#: ../share/extensions/dxf_outlines.py:341
+#: ../share/extensions/dxf_outlines.py:340
#, python-format
msgid "Warning: Layer '%s' not found!"
msgstr "ĐŸĐŸĐżĐ”Ń€Đ”ĐŽĐ¶Đ”ĐœĐœŃ: шару «%s» ĐœĐ” Đ·ĐœĐ°ĐčĐŽĐ”ĐœĐŸ."
@@ -30560,8 +30605,8 @@ msgid ""
"y-interval cannot be zero. Please modify 'Y value of rectangle's top' or 'Y "
"value of rectangle's bottom'"
msgstr ""
-"Đ†ĐœŃ‚Đ”Ń€ĐČал за y ĐœĐ” ĐŒĐŸĐ¶Đ” Đ±ŃƒŃ‚Đž ĐœŃƒĐ»ŃŒĐŸĐČĐžĐŒ. БуЮь ласĐșа, Đ·ĐŒŃ–ĐœŃ–Ń‚ŃŒ Đ·ĐœĐ°Ń‡Đ”ĐœĐœŃ "
-"«Y-ĐșĐŸĐŸŃ€ĐŽĐžĐœĐ°Ń‚Đ° ĐČĐ”Ń€Ń…Ńƒ ĐżŃ€ŃĐŒĐŸĐșŃƒŃ‚ĐœĐžĐșа» Đ°Đ±ĐŸ «Y-ĐșĐŸĐŸŃ€ĐŽĐžĐœĐ°Ń‚Đ° ĐŸŃĐœĐŸĐČĐž ĐżŃ€ŃĐŒĐŸĐșŃƒŃ‚ĐœĐžĐșа»"
+"Đ†ĐœŃ‚Đ”Ń€ĐČал за y ĐœĐ” ĐŒĐŸĐ¶Đ” Đ±ŃƒŃ‚Đž ĐœŃƒĐ»ŃŒĐŸĐČĐžĐŒ. БуЮь ласĐșа, Đ·ĐŒŃ–ĐœŃ–Ń‚ŃŒ Đ·ĐœĐ°Ń‡Đ”ĐœĐœŃ «Y-"
+"ĐșĐŸĐŸŃ€ĐŽĐžĐœĐ°Ń‚Đ° ĐČĐ”Ń€Ń…Ńƒ ĐżŃ€ŃĐŒĐŸĐșŃƒŃ‚ĐœĐžĐșа» Đ°Đ±ĐŸ «Y-ĐșĐŸĐŸŃ€ĐŽĐžĐœĐ°Ń‚Đ° ĐŸŃĐœĐŸĐČĐž ĐżŃ€ŃĐŒĐŸĐșŃƒŃ‚ĐœĐžĐșа»"
#: ../share/extensions/funcplot.py:315
msgid "Please select a rectangle"
@@ -31257,14 +31302,14 @@ msgstr ""
"ĐĄĐżŃ€ĐŸĐ±ŃƒĐčтД сĐșĐŸŃ€ĐžŃŃ‚Đ°Ń‚ĐžŃŃ ĐżŃƒĐœĐșŃ‚ĐŸĐŒ ĐŒĐ”ĐœŃŽ ĐšĐŸĐœŃ‚ŃƒŃ€ -> Об'єĐșт у ĐșĐŸĐœŃ‚ŃƒŃ€."
#. issue error if no paths found
-#: ../share/extensions/plotter.py:67
+#: ../share/extensions/plotter.py:70
msgid ""
"No paths where found. Please convert all objects you want to plot into paths."
msgstr ""
"ĐšĐŸĐœŃ‚ŃƒŃ€Ń–ĐČ ĐœĐ” Đ·ĐœĐ°ĐčĐŽĐ”ĐœĐŸ. БуЮь ласĐșа, пДрДтĐČĐŸŃ€Ń–Ń‚ŃŒ усі ĐżĐŸŃ‚Ń€Ń–Đ±ĐœŃ– ĐČĐ°ĐŒ ĐŸĐ±â€™Ń”Đșто ĐŽĐ»Ń "
"ĐČĐžŃ€Ń–Đ·Đ°ĐœĐœŃ ĐœĐ° ĐșĐŸĐœŃ‚ŃƒŃ€Đž."
-#: ../share/extensions/plotter.py:144
+#: ../share/extensions/plotter.py:148
msgid ""
"pySerial is not installed.\n"
"\n"
@@ -31282,7 +31327,7 @@ msgstr ""
"\\[Program files]\\inkscape\\python\\Lib\\\n"
"3. ĐŸĐ”Ń€Đ”Đ·Đ°ĐżŃƒŃŃ‚Ń–Ń‚ŃŒ Inkscape."
-#: ../share/extensions/plotter.py:164
+#: ../share/extensions/plotter.py:200
msgid ""
"Could not open port. Please check that your plotter is running, connected "
"and the settings are correct."
@@ -34056,13 +34101,13 @@ msgstr ""
#: ../share/extensions/hpgl_input.inx.h:3
#: ../share/extensions/hpgl_output.inx.h:4
-#: ../share/extensions/plotter.inx.h:25
+#: ../share/extensions/plotter.inx.h:34
msgid "Resolution X (dpi):"
msgstr "Đ ĐŸĐ·ĐŽŃ–Đ»ŃŒĐœĐ° Đ·ĐŽĐ°Ń‚ĐœŃ–ŃŃ‚ŃŒ за X (у т/ЮюĐčĐŒ):"
#: ../share/extensions/hpgl_input.inx.h:4
#: ../share/extensions/hpgl_output.inx.h:5
-#: ../share/extensions/plotter.inx.h:26
+#: ../share/extensions/plotter.inx.h:35
msgid ""
"The amount of steps the plotter moves if it moves for 1 inch on the X axis "
"(Default: 1016.0)"
@@ -34071,13 +34116,13 @@ msgstr ""
#: ../share/extensions/hpgl_input.inx.h:5
#: ../share/extensions/hpgl_output.inx.h:6
-#: ../share/extensions/plotter.inx.h:27
+#: ../share/extensions/plotter.inx.h:36
msgid "Resolution Y (dpi):"
msgstr "Đ ĐŸĐ·ĐŽŃ–Đ»ŃŒĐœĐ° Đ·ĐŽĐ°Ń‚ĐœŃ–ŃŃ‚ŃŒ за Y (у т/ЮюĐčĐŒ):"
#: ../share/extensions/hpgl_input.inx.h:6
#: ../share/extensions/hpgl_output.inx.h:7
-#: ../share/extensions/plotter.inx.h:28
+#: ../share/extensions/plotter.inx.h:37
msgid ""
"The amount of steps the plotter moves if it moves for 1 inch on the Y axis "
"(Default: 1016.0)"
@@ -34095,7 +34140,7 @@ msgstr ""
"(ĐąĐžĐżĐŸĐČĐ” Đ·ĐœĐ°Ń‡Đ”ĐœĐœŃ: ĐœĐ” ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐŸ)"
#: ../share/extensions/hpgl_input.inx.h:9
-#: ../share/extensions/hpgl_output.inx.h:34
+#: ../share/extensions/hpgl_output.inx.h:35
msgid "HP Graphics Language file (*.hpgl)"
msgstr "ЀаĐčлО ĐłŃ€Đ°Ń„Ń–Ń‡ĐœĐŸŃ— ĐŒĐŸĐČĐž HP (*.hpgl)"
@@ -34118,28 +34163,28 @@ msgstr ""
"ĐČĐžŃ€Ń–Đ·Đ°ĐœĐœŃ Đ±Đ”Đ·ĐżĐŸŃĐ”Ń€Đ”ĐŽĐœŃŒĐŸ за ĐŽĐŸĐżĐŸĐŒĐŸĐłĐŸŃŽ ĐżĐŸŃĐ»Ń–ĐŽĐŸĐČĐœĐŸĐłĐŸ Đ·â€™Ń”ĐŽĐœĐ°ĐœĐœŃ."
#: ../share/extensions/hpgl_output.inx.h:3
-#: ../share/extensions/plotter.inx.h:24
+#: ../share/extensions/plotter.inx.h:33
msgid "Plotter Settings "
msgstr "ĐŸĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€Đž ĐČĐžŃ€Ń–Đ·Đ°ĐœĐœŃ "
#: ../share/extensions/hpgl_output.inx.h:8
-#: ../share/extensions/plotter.inx.h:29
+#: ../share/extensions/plotter.inx.h:38
msgid "Pen number:"
msgstr "ĐĐŸĐŒĐ”Ń€ Ń€Ń–Đ·Ń†Ń:"
#: ../share/extensions/hpgl_output.inx.h:9
-#: ../share/extensions/plotter.inx.h:30
+#: ../share/extensions/plotter.inx.h:39
msgid "The number of the pen (tool) to use (Standard: '1')"
msgstr ""
"ĐĐŸĐŒĐ”Ń€ Ń€Ń–Đ·Ń†Ń (Ń–ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚Đ°), яĐșĐžĐŒ сліЎ сĐșĐŸŃ€ĐžŃŃ‚Đ°Ń‚ĐžŃŃ. (ĐąĐžĐżĐŸĐČĐ” Đ·ĐœĐ°Ń‡Đ”ĐœĐœŃ: 1)"
#: ../share/extensions/hpgl_output.inx.h:10
-#: ../share/extensions/plotter.inx.h:31
+#: ../share/extensions/plotter.inx.h:40
msgid "Pen force (g):"
msgstr "йОсĐș Ń€Ń–Đ·Ń†Ń (у ĐłŃ€Đ°ĐŒĐ°Ń…):"
#: ../share/extensions/hpgl_output.inx.h:11
-#: ../share/extensions/plotter.inx.h:32
+#: ../share/extensions/plotter.inx.h:41
msgid ""
"The amount of force pushing down the pen in grams, set to 0 to omit command; "
"most plotters ignore this command (Default: 0)"
@@ -34149,7 +34194,7 @@ msgstr ""
"(ĐąĐžĐżĐŸĐČĐ” Đ·ĐœĐ°Ń‡Đ”ĐœĐœŃ: 0)"
#: ../share/extensions/hpgl_output.inx.h:12
-#: ../share/extensions/plotter.inx.h:33
+#: ../share/extensions/plotter.inx.h:42
msgid "Pen speed (cm/s or mm/s):"
msgstr "ĐšĐČОЎĐșість Ń€Ń–Đ·Ń†Ń (у ŃĐŒ/с Đ°Đ±ĐŸ ĐŒĐŒ/с):"
@@ -34168,41 +34213,41 @@ msgid "Rotation (°, Clockwise):"
msgstr "ĐžĐ±Đ”Ń€Ń‚Đ°ĐœĐœŃ (у °, за ĐłĐŸĐŽĐžĐœĐœĐžĐșĐŸĐČĐŸŃŽ стрілĐșĐŸŃŽ):"
#: ../share/extensions/hpgl_output.inx.h:15
-#: ../share/extensions/plotter.inx.h:36
+#: ../share/extensions/plotter.inx.h:45
msgid "Rotation of the drawing (Default: 0°)"
msgstr "Кут ĐŸĐ±Đ”Ń€Ń‚Đ°ĐœĐœŃ ĐșŃ€Đ”ŃĐ»Đ”ĐœĐœŃ. (ĐąĐžĐżĐŸĐČĐ” Đ·ĐœĐ°Ń‡Đ”ĐœĐœŃ: 0°)"
#: ../share/extensions/hpgl_output.inx.h:16
-#: ../share/extensions/plotter.inx.h:37
+#: ../share/extensions/plotter.inx.h:46
msgid "Mirror X axis"
msgstr "ВіЎЎзДрĐșалОтО ĐČісь Y"
#: ../share/extensions/hpgl_output.inx.h:17
-#: ../share/extensions/plotter.inx.h:38
+#: ../share/extensions/plotter.inx.h:47
msgid "Check this to mirror the X axis (Default: Unchecked)"
msgstr ""
"ĐŸĐŸĐ·ĐœĐ°Ń‡Ń‚Đ” цДĐč ĐżŃƒĐœĐșт, Ń‰ĐŸĐ± Đ·ĐŸĐ±Ń€Đ°Đ¶Đ”ĐœĐœŃ Đ±ŃƒĐ»ĐŸ ĐČіЎЎзДрĐșĐ°Đ»Đ”ĐœĐŸ за ĐČіссю X. (ĐąĐžĐżĐŸĐČĐ” "
"Đ·ĐœĐ°Ń‡Đ”ĐœĐœŃ: ĐœĐ” ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐŸ)"
#: ../share/extensions/hpgl_output.inx.h:18
-#: ../share/extensions/plotter.inx.h:39
+#: ../share/extensions/plotter.inx.h:48
msgid "Mirror Y axis"
msgstr "ВіЎЎзДрĐșалОтО ĐČісь Y"
#: ../share/extensions/hpgl_output.inx.h:19
-#: ../share/extensions/plotter.inx.h:40
+#: ../share/extensions/plotter.inx.h:49
msgid "Check this to mirror the Y axis (Default: Unchecked)"
msgstr ""
"ĐŸĐŸĐ·ĐœĐ°Ń‡Ń‚Đ” цДĐč ĐżŃƒĐœĐșт, Ń‰ĐŸĐ± Đ·ĐŸĐ±Ń€Đ°Đ¶Đ”ĐœĐœŃ Đ±ŃƒĐ»ĐŸ ĐČіЎЎзДрĐșĐ°Đ»Đ”ĐœĐŸ за ĐČіссю Y. (ĐąĐžĐżĐŸĐČĐ” "
"Đ·ĐœĐ°Ń‡Đ”ĐœĐœŃ: ĐœĐ” ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐŸ)"
#: ../share/extensions/hpgl_output.inx.h:20
-#: ../share/extensions/plotter.inx.h:41
+#: ../share/extensions/plotter.inx.h:50
msgid "Center zero point"
msgstr "ĐŠĐ”ĐœŃ‚Ń€Đ°Đ»ŃŒĐœĐ° ĐœŃƒĐ»ŃŒĐŸĐČа Ń‚ĐŸŃ‡Đșа"
#: ../share/extensions/hpgl_output.inx.h:21
-#: ../share/extensions/plotter.inx.h:42
+#: ../share/extensions/plotter.inx.h:51
msgid ""
"Check this if your plotter uses a centered zero point (Default: Unchecked)"
msgstr ""
@@ -34210,17 +34255,29 @@ msgstr ""
"Ń‚ĐŸŃ‡Đșа. (ĐąĐžĐżĐŸĐČĐ” Đ·ĐœĐ°Ń‡Đ”ĐœĐœŃ: ĐœĐ” ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐŸ)"
#: ../share/extensions/hpgl_output.inx.h:22
-#: ../share/extensions/plotter.inx.h:43
+#: ../share/extensions/plotter.inx.h:52
+msgid ""
+"If you want to use multiple pens on your pen plotter create one layer for "
+"each pen, name the layers \"Pen 1\", \"Pen 2\", etc., and put your drawings "
+"in the corresponding layers. This overrules the pen number option above."
+msgstr ""
+"ĐŻĐșŃ‰ĐŸ ĐČĐž Ń…ĐŸŃ‡Đ”Ń‚Đ” сĐșĐŸŃ€ĐžŃŃ‚Đ°Ń‚ĐžŃŃ ĐŽĐ”ĐșŃ–Đ»ŃŒĐșĐŸĐŒĐ° Ń€Ń–Đ·Ń†ŃĐŒĐž ĐœĐ° ĐČĐ°ŃˆĐŸĐŒŃƒ ĐżĐ»ĐŸŃ‚Đ”Ń€Ń–, стĐČĐŸŃ€Ń–Ń‚ŃŒ "
+"ĐŸĐșŃ€Đ”ĐŒĐžĐč шар ĐŽĐ»Ń ĐșĐŸĐ¶ĐœĐŸĐłĐŸ Ń€Ń–Đ·Ń†Ń, ĐœĐ°Đ·ĐČіть шаро Â«Đ Ń–Đ·Đ”Ń†ŃŒ 1», Â«Đ Ń–Đ·Đ”Ń†ŃŒ 2» Ń‚ĐŸŃ‰ĐŸ і "
+"Ń€ĐŸĐ·Ń‚Đ°ŃˆŃƒĐčтД ĐČŃ–ĐŽĐżĐŸĐČŃ–ĐŽĐœŃ– ĐșŃ€Đ”ŃĐ»Đ”ĐœĐœŃ у шарах. йаĐșі ĐœĐ°Đ»Đ°ŃˆŃ‚ŃƒĐČĐ°ĐœĐœŃ ĐŒĐ°Ń‚ĐžĐŒŃƒŃ‚ŃŒ пДрДĐČагу "
+"пДрДЎ ĐżĐ°Ń€Đ°ĐŒĐ”Ń‚Ń€ĐŸĐŒ ĐșŃ–Đ»ŃŒĐșĐŸŃŃ‚Ń– різціĐČ, ĐČĐșĐ°Đ·Đ°ĐœĐžĐŒ ĐČОщД."
+
+#: ../share/extensions/hpgl_output.inx.h:23
+#: ../share/extensions/plotter.inx.h:53
msgid "Plot Features "
msgstr "ĐžŃĐŸĐ±Đ»ĐžĐČĐŸŃŃ‚Ń– ĐČĐžŃ€Ń–Đ·Đ°ĐœĐœŃ "
-#: ../share/extensions/hpgl_output.inx.h:23
-#: ../share/extensions/plotter.inx.h:44
+#: ../share/extensions/hpgl_output.inx.h:24
+#: ../share/extensions/plotter.inx.h:54
msgid "Overcut (mm):"
msgstr "ĐĐ°ĐŽŃ€Ń–Đ· (у ĐŒĐŒ):"
-#: ../share/extensions/hpgl_output.inx.h:24
-#: ../share/extensions/plotter.inx.h:45
+#: ../share/extensions/hpgl_output.inx.h:25
+#: ../share/extensions/plotter.inx.h:55
msgid ""
"The distance in mm that will be cut over the starting point of the path to "
"prevent open paths, set to 0.0 to omit command (Default: 1.00)"
@@ -34229,13 +34286,13 @@ msgstr ""
"Đ·Đ°ĐżĐŸĐ±Ń–ĐłĐ°ĐœĐœŃ утĐČĐŸŃ€Đ”ĐœĐœŃŽ ĐœĐ”Đ·Đ°ĐŒĐșĐœĐ”ĐœĐžŃ… ĐșĐŸĐœŃ‚ŃƒŃ€Ń–ĐČ. ВĐșĐ°Đ¶Ń–Ń‚ŃŒ Đ·ĐœĐ°Ń‡Đ”ĐœĐœŃ 0.0, Ń‰ĐŸĐ± "
"ĐżŃ€ĐŸĐżŃƒŃŃ‚ĐžŃ‚Đž ĐșĐŸĐŒĐ°ĐœĐŽŃƒ. (ĐąĐžĐżĐŸĐČĐ” Đ·ĐœĐ°Ń‡Đ”ĐœĐœŃ: 1.00)"
-#: ../share/extensions/hpgl_output.inx.h:25
-#: ../share/extensions/plotter.inx.h:46
+#: ../share/extensions/hpgl_output.inx.h:26
+#: ../share/extensions/plotter.inx.h:56
msgid "Tool offset (mm):"
msgstr "ВіЮступ Ń–ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚Đ° (у ĐŒĐŒ):"
-#: ../share/extensions/hpgl_output.inx.h:26
-#: ../share/extensions/plotter.inx.h:47
+#: ../share/extensions/hpgl_output.inx.h:27
+#: ../share/extensions/plotter.inx.h:57
msgid ""
"The offset from the tool tip to the tool axis in mm, set to 0.0 to omit "
"command (Default: 0.25)"
@@ -34243,13 +34300,13 @@ msgstr ""
"ВіЮступ ĐČіЮ Đșраю Ń–ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚Đ° ĐŽĐŸ ĐČісі Ń–ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚Đ° у ĐŒĐŒ. ВĐșĐ°Đ¶Ń–Ń‚ŃŒ Đ·ĐœĐ°Ń‡Đ”ĐœĐœŃ 0.0, "
"Ń‰ĐŸĐ± ĐżŃ€ĐŸĐżŃƒŃŃ‚ĐžŃ‚Đž ĐșĐŸĐŒĐ°ĐœĐŽŃƒ. (ĐąĐžĐżĐŸĐČĐ” Đ·ĐœĐ°Ń‡Đ”ĐœĐœŃ: 0.25)"
-#: ../share/extensions/hpgl_output.inx.h:27
-#: ../share/extensions/plotter.inx.h:48
+#: ../share/extensions/hpgl_output.inx.h:28
+#: ../share/extensions/plotter.inx.h:58
msgid "Use precut"
msgstr "ВоĐșĐŸŃ€ĐžŃŃ‚ĐŸĐČуĐČато ĐżŃ–ĐŽŃ€Ń–Đ·Đ°ĐœĐœŃ"
-#: ../share/extensions/hpgl_output.inx.h:28
-#: ../share/extensions/plotter.inx.h:49
+#: ../share/extensions/hpgl_output.inx.h:29
+#: ../share/extensions/plotter.inx.h:59
msgid ""
"Check this to cut a small line before the real drawing starts to correctly "
"align the tool orientation. (Default: Checked)"
@@ -34258,13 +34315,13 @@ msgstr ""
"ĐČĐžĐșĐŸĐœĐ°Ń‚Đž ĐŸŃĐœĐŸĐČĐœŃƒ ĐżŃ€ĐŸŃ†Đ”ĐŽŃƒŃ€Ńƒ ĐČĐžŃ€Ń–Đ·Đ°ĐœĐœŃ. йаĐșа Đ»Ń–ĐœŃ–Ń ĐżĐŸŃ‚Ń€Ń–Đ±ĐœĐ° ĐŽĐ»Ń ĐČоріĐČĐœŃŽĐČĐ°ĐœĐœŃ "
"ĐŸŃ€Ń–Ń”ĐœŃ‚Đ°Ń†Ń–Ń— Ń–ĐœŃŃ‚Ń€ŃƒĐŒĐ”ĐœŃ‚Đ° ĐŽĐ»Ń ĐżĐ”Ń€ŃˆĐŸĐłĐŸ ĐČĐžŃ€Ń–Đ·Đ°ĐœĐœŃ. (ĐąĐžĐżĐŸĐČĐ” Đ·ĐœĐ°Ń‡Đ”ĐœĐœŃ: ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐŸ)"
-#: ../share/extensions/hpgl_output.inx.h:29
-#: ../share/extensions/plotter.inx.h:50
+#: ../share/extensions/hpgl_output.inx.h:30
+#: ../share/extensions/plotter.inx.h:60
msgid "Curve flatness:"
msgstr "ĐŸĐ»Đ°ŃĐșість ĐșроĐČĐŸŃ—:"
-#: ../share/extensions/hpgl_output.inx.h:30
-#: ../share/extensions/plotter.inx.h:51
+#: ../share/extensions/hpgl_output.inx.h:31
+#: ../share/extensions/plotter.inx.h:61
msgid ""
"Curves are divided into lines, this number controls how fine the curves will "
"be reproduced, the smaller the finer (Default: '1.2')"
@@ -34272,13 +34329,13 @@ msgstr ""
"КроĐČі буЎД Ń€ĐŸĐ·ĐŽŃ–Đ»Đ”ĐœĐŸ ĐœĐ° ĐżŃ€ŃĐŒŃ– ĐČіЎрізĐșĐž. ĐŠĐ” Đ·ĐœĐ°Ń‡Đ”ĐœĐœŃ ĐșĐ”Ń€ŃƒŃ” Ń‚ĐŸŃ‡ĐœŃ–ŃŃ‚ŃŽ таĐșĐŸĐłĐŸ "
"ĐżĐŸĐŽŃ–Đ»Ńƒ. Đ§ĐžĐŒ ĐŒĐ”ĐœŃˆĐžĐŒ ĐČĐŸĐœĐŸ буЎД, Ń‚ĐžĐŒ Ń‚ĐŸŃ‡ĐœŃ–ŃˆĐžĐŒ буЎД ĐżĐŸĐŽŃ–Đ». (ĐąĐžĐżĐŸĐČĐ” Đ·ĐœĐ°Ń‡Đ”ĐœĐœŃ: 1.2)"
-#: ../share/extensions/hpgl_output.inx.h:31
-#: ../share/extensions/plotter.inx.h:52
+#: ../share/extensions/hpgl_output.inx.h:32
+#: ../share/extensions/plotter.inx.h:62
msgid "Auto align"
msgstr "АĐČŃ‚ĐŸĐČоріĐČĐœŃŽĐČĐ°ĐœĐœŃ"
-#: ../share/extensions/hpgl_output.inx.h:32
-#: ../share/extensions/plotter.inx.h:53
+#: ../share/extensions/hpgl_output.inx.h:33
+#: ../share/extensions/plotter.inx.h:63
msgid ""
"Check this to auto align the drawing to the zero point (Plus the tool offset "
"if used). If unchecked you have to make sure that all parts of your drawing "
@@ -34289,8 +34346,8 @@ msgstr ""
"буЎД ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐŸ, сліЎ пДрДĐșĐŸĐœĐ°Ń‚ĐžŃŃ, Ń‰ĐŸ усіх Ń‡Đ°ŃŃ‚ĐžĐœĐž ĐșŃ€Đ”ŃĐ»Đ”ĐœĐœŃ ĐżĐ”Ń€Đ”Đ±ŃƒĐČають у "
"ĐŒĐ”Đ¶Đ°Ń… ĐŽĐŸĐșŃƒĐŒĐ”ĐœŃ‚Đ°! (ĐąĐžĐżĐŸĐČĐžĐč ŃŃ‚Đ°Đœ: ĐżĐŸĐ·ĐœĐ°Ń‡Đ”ĐœĐŸ)"
-#: ../share/extensions/hpgl_output.inx.h:33
-#: ../share/extensions/plotter.inx.h:56
+#: ../share/extensions/hpgl_output.inx.h:34
+#: ../share/extensions/plotter.inx.h:66
msgid ""
"All these settings depend on the plotter you use, for more information "
"please consult the manual or homepage for your plotter."
@@ -34299,7 +34356,7 @@ msgstr ""
"Đ”ĐŸĐșĐ»Đ°ĐŽĐœŃ–ŃˆŃƒ Ń–ĐœŃ„ĐŸŃ€ĐŒĐ°Ń†Ń–ŃŽ ĐŒĐŸĐ¶ĐœĐ° ĐŸŃ‚Ń€ĐžĐŒĐ°Ń‚Đž Đ· ĐżŃ–ĐŽŃ€ŃƒŃ‡ĐœĐžĐșа ĐŽĐŸ ĐżĐ»ĐŸŃ‚Đ”Ń€Đ° Đ°Đ±ĐŸ ĐŽĐŸĐŒĐ°ŃˆĐœŃŒĐŸŃ— "
"ŃŃ‚ĐŸŃ€Ń–ĐœĐșĐž ĐșĐŸĐŒĐżĐ°ĐœŃ–Ń—-ĐČĐžŃ€ĐŸĐ±ĐœĐžĐșа."
-#: ../share/extensions/hpgl_output.inx.h:35
+#: ../share/extensions/hpgl_output.inx.h:36
msgid "Export an HP Graphics Language file"
msgstr "ЕĐșŃĐżĐŸŃ€Ń‚ŃƒĐČато ĐŽĐŸ фаĐčла ĐłŃ€Đ°Ń„Ń–Ń‡ĐœĐŸŃ— ĐŒĐŸĐČĐž HP"
@@ -35680,10 +35737,49 @@ msgstr ""
"Đ·ĐœĐ°Ń‡Đ”ĐœĐœŃ: 9600)"
#: ../share/extensions/plotter.inx.h:8
-msgid "Flow control:"
-msgstr "ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ ĐżĐŸŃ‚ĐŸĐșĐŸĐŒ:"
+msgid "Serial byte size:"
+msgstr "Đ ĐŸĐ·ĐŒŃ–Ń€ баĐčта ĐżĐŸŃĐ»Ń–ĐŽĐŸĐČĐœĐŸĐłĐŸ ĐżĐŸŃ€Ń‚Ńƒ:"
+
+#: ../share/extensions/plotter.inx.h:10
+#, no-c-format
+msgid ""
+"The Byte size of your serial connection, 99% of all plotters use the default "
+"setting (Default: 8 Bits)"
+msgstr ""
+"Đ ĐŸĐ·ĐŒŃ–Ń€ баĐčта ĐČĐ°ŃˆĐŸĐłĐŸ ĐżĐŸŃĐ»Ń–ĐŽĐŸĐČĐœĐŸĐłĐŸ Đ·â€™Ń”ĐŽĐœĐ°ĐœĐœŃ, 99% усіх ĐżĐ»ĐŸŃ‚Đ”Ń€Ń–ĐČ ĐČĐžĐșĐŸŃ€ĐžŃŃ‚ĐŸĐČують "
+"Ń‚ĐžĐżĐŸĐČĐ” Đ·ĐœĐ°Ń‡Đ”ĐœĐœŃ (ĐąĐžĐżĐŸĐČĐ” Đ·ĐœĐ°Ń‡Đ”ĐœĐœŃ: 8 бітіĐČ)"
+
+#: ../share/extensions/plotter.inx.h:11
+msgid "Serial stop bits:"
+msgstr "ĐĄŃ‚ĐŸĐżĐŸĐČі бітО ĐżĐŸŃĐ»Ń–ĐŽĐŸĐČĐœĐŸĐłĐŸ ĐżĐŸŃ€Ń‚Ńƒ:"
-#: ../share/extensions/plotter.inx.h:9
+#: ../share/extensions/plotter.inx.h:13
+#, no-c-format
+msgid ""
+"The Stop bits of your serial connection, 99% of all plotters use the default "
+"setting (Default: 1 Bit)"
+msgstr ""
+"ĐšŃ–Đ»ŃŒĐșість ŃŃ‚ĐŸĐżĐŸĐČох бітіĐČ ĐČĐ°ŃˆĐŸĐłĐŸ ĐżĐŸŃĐ»Ń–ĐŽĐŸĐČĐœĐŸĐłĐŸ Đ·â€™Ń”ĐŽĐœĐ°ĐœĐœŃ, 99% усіх ĐżĐ»ĐŸŃ‚Đ”Ń€Ń–ĐČ "
+"ĐČĐžĐșĐŸŃ€ĐžŃŃ‚ĐŸĐČують Ń‚ĐžĐżĐŸĐČĐ” Đ·ĐœĐ°Ń‡Đ”ĐœĐœŃ (ĐąĐžĐżĐŸĐČĐ” Đ·ĐœĐ°Ń‡Đ”ĐœĐœŃ: 1 біт)"
+
+#: ../share/extensions/plotter.inx.h:14
+msgid "Serial parity:"
+msgstr "ĐŸĐ°Ń€ĐœŃ–ŃŃ‚ŃŒ ĐżĐŸŃĐ»Ń–ĐŽĐŸĐČĐœĐŸĐłĐŸ ĐżĐŸŃ€Ń‚Ńƒ:"
+
+#: ../share/extensions/plotter.inx.h:16
+#, no-c-format
+msgid ""
+"The Parity of your serial connection, 99% of all plotters use the default "
+"setting (Default: None)"
+msgstr ""
+"ĐŸĐ°Ń€ĐœŃ–ŃŃ‚ŃŒ ĐČĐ°ŃˆĐŸĐłĐŸ ĐżĐŸŃĐ»Ń–ĐŽĐŸĐČĐœĐŸĐłĐŸ Đ·â€™Ń”ĐŽĐœĐ°ĐœĐœŃ, 99% усіх ĐżĐ»ĐŸŃ‚Đ”Ń€Ń–ĐČ ĐČĐžĐșĐŸŃ€ĐžŃŃ‚ĐŸĐČують "
+"Ń‚ĐžĐżĐŸĐČĐ” Đ·ĐœĐ°Ń‡Đ”ĐœĐœŃ (ĐąĐžĐżĐŸĐČĐ” Đ·ĐœĐ°Ń‡Đ”ĐœĐœŃ: ĐœĐ”ĐŒĐ°Ń”)"
+
+#: ../share/extensions/plotter.inx.h:17
+msgid "Serial flow control:"
+msgstr "ĐšĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ ĐżĐŸŃĐ»Ń–ĐŽĐŸĐČĐœĐžĐŒ ĐżĐŸŃ‚ĐŸĐșĐŸĐŒ:"
+
+#: ../share/extensions/plotter.inx.h:18
msgid ""
"The Software / Hardware flow control of your serial connection (Default: "
"Software)"
@@ -35691,19 +35787,19 @@ msgstr ""
"ĐŸŃ€ĐŸĐłŃ€Đ°ĐŒĐœĐ” Đ°Đ±ĐŸ Đ°ĐżĐ°Ń€Đ°Ń‚ĐœĐ” ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ пДрДЎаĐČĐ°ĐœĐœŃĐŒ ĐŽĐ°ĐœĐžŃ… ĐČĐ°ŃˆĐžĐŒ ĐżĐŸŃĐ»Ń–ĐŽĐŸĐČĐœĐžĐŒ "
"Đ·â€™Ń”ĐŽĐœĐ°ĐœĐœŃĐŒ. (ĐąĐžĐżĐŸĐČĐ” Đ·ĐœĐ°Ń‡Đ”ĐœĐœŃ: ĐżŃ€ĐŸĐłŃ€Đ°ĐŒĐœĐ” ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ)"
-#: ../share/extensions/plotter.inx.h:10
+#: ../share/extensions/plotter.inx.h:19
msgid "Command language:"
msgstr "ĐœĐŸĐČа ĐșĐŸĐŒĐ°ĐœĐŽ:"
-#: ../share/extensions/plotter.inx.h:11
+#: ../share/extensions/plotter.inx.h:20
msgid "The command language to use (Default: HPGL)"
msgstr "ĐœĐŸĐČа ĐșĐŸĐŒĐ°ĐœĐŽ, яĐșу сліЎ ĐČĐžĐșĐŸŃ€ĐžŃŃ‚ĐŸĐČуĐČато (ĐąĐžĐżĐŸĐČĐ” Đ·ĐœĐ°Ń‡Đ”ĐœĐœŃ: HPGL)"
-#: ../share/extensions/plotter.inx.h:12
+#: ../share/extensions/plotter.inx.h:21
msgid "Initialization commands:"
msgstr "ĐšĐŸĐŒĐ°ĐœĐŽĐž Ń–ĐœŃ–Ń†Ń–Đ°Đ»Ń–Đ·Đ°Ń†Ń–Ń—:"
-#: ../share/extensions/plotter.inx.h:13
+#: ../share/extensions/plotter.inx.h:22
msgid ""
"Commands that will be sent to the plotter before the main data stream, only "
"use this if you know what you are doing! (Default: Empty)"
@@ -35711,36 +35807,36 @@ msgstr ""
"ĐšĐŸĐŒĐ°ĐœĐŽĐž, яĐșі буЎД ĐœĐ°ĐŽŃ–ŃĐ»Đ°ĐœĐŸ ĐœĐ° ĐżĐ»ĐŸŃ‚Đ”Ń€ ĐŽĐŸ ĐŸŃĐœĐŸĐČĐœĐŸĐłĐŸ ĐżĐŸŃ‚ĐŸĐșу ĐŽĐ°ĐœĐžŃ…. "
"ĐšĐŸŃ€ĐžŃŃ‚ŃƒĐčŃ‚Đ”ŃŃ, лОшД яĐșŃ‰ĐŸ ĐČĐ°ĐŒ ĐČŃ–ĐŽĐŸĐŒŃ– усі ĐœĐ°ŃĐ»Ń–ĐŽĐșĐž! (ĐąĐžĐżĐŸĐČĐ” Đ·ĐœĐ°Ń‡Đ”ĐœĐœŃ: ĐżĐŸŃ€ĐŸĐ¶ĐœŃŒĐŸ)"
-#: ../share/extensions/plotter.inx.h:14
+#: ../share/extensions/plotter.inx.h:23
msgid "Software (XON/XOFF)"
msgstr "ĐżŃ€ĐŸĐłŃ€Đ°ĐŒĐœĐ” (XON/XOFF)"
-#: ../share/extensions/plotter.inx.h:15
+#: ../share/extensions/plotter.inx.h:24
msgid "Hardware (RTS/CTS)"
msgstr "Đ°ĐżĐ°Ń€Đ°Ń‚ĐœĐ” (RTS/CTS)"
-#: ../share/extensions/plotter.inx.h:16
+#: ../share/extensions/plotter.inx.h:25
msgid "Hardware (DSR/DTR + RTS/CTS)"
msgstr "Đ°ĐżĐ°Ń€Đ°Ń‚ĐœĐ” (DSR/DTR + RTS/CTS)"
-#: ../share/extensions/plotter.inx.h:17
+#: ../share/extensions/plotter.inx.h:26
msgctxt "Flow control"
msgid "None"
msgstr "ĐĐ”ĐŒĐ°Ń”"
-#: ../share/extensions/plotter.inx.h:18
+#: ../share/extensions/plotter.inx.h:27
msgid "HPGL"
msgstr "HPGL"
-#: ../share/extensions/plotter.inx.h:19
+#: ../share/extensions/plotter.inx.h:28
msgid "DMPL"
msgstr "DMPL"
-#: ../share/extensions/plotter.inx.h:20
+#: ../share/extensions/plotter.inx.h:29
msgid "KNK Plotter (HPGL variant)"
msgstr "ĐŸĐ»ĐŸŃ‚Đ”Ń€ KNK (ĐČĐ°Ń€Ń–Đ°ĐœŃ‚ HPGL)"
-#: ../share/extensions/plotter.inx.h:21
+#: ../share/extensions/plotter.inx.h:30
msgid ""
"Using wrong settings can under certain circumstances cause Inkscape to "
"freeze. Always save your work before plotting!"
@@ -35749,7 +35845,7 @@ msgstr ""
"заĐČĐžŃĐ°ĐœĐœŃ Inkscape. ЗаĐČжЎО збДрігаĐčтД ĐČашу Ń€ĐŸĐ±ĐŸŃ‚Ńƒ ĐŽĐŸ Ń‚ĐŸĐłĐŸ, яĐș Ń€ĐŸĐ·ĐżĐŸŃ‡Đ°Ń‚Đž "
"ĐżŃ€ĐŸŃ†Đ”ĐŽŃƒŃ€Ńƒ ĐČĐžŃ€Ń–Đ·Đ°ĐœĐœŃ."
-#: ../share/extensions/plotter.inx.h:22
+#: ../share/extensions/plotter.inx.h:31
msgid ""
"This can be a physical serial connection or a USB-to-Serial bridge. Ask your "
"plotter manufacturer for drivers if needed."
@@ -35758,11 +35854,11 @@ msgstr ""
"Đ·â€™Ń”ĐŽĐœĐ°ĐœĐœŃ. ĐŻĐșŃ‰ĐŸ ĐżĐŸŃ‚Ń€Ń–Đ±ĐœĐŸ, ĐœĐ°ĐŽŃ–ŃˆĐ»Ń–Ń‚ŃŒ запОт ĐŽĐŸ ĐČĐžŃ€ĐŸĐ±ĐœĐžĐșа ĐżĐ»ĐŸŃ‚Đ”Ń€Đ° Ń‰ĐŸĐŽĐŸ ĐœĐ°ĐŽĐ°ĐœĐœŃ "
"ЮраĐčĐČДра."
-#: ../share/extensions/plotter.inx.h:23
+#: ../share/extensions/plotter.inx.h:32
msgid "Parallel (LPT) connections are not supported."
msgstr "ĐŸŃ–ĐŽŃ‚Ń€ĐžĐŒĐșĐž ĐżĐ°Ń€Đ°Đ»Đ”Đ»ŃŒĐœĐžŃ… Đ·â€™Ń”ĐŽĐœĐ°ĐœŃŒ (LPT) ĐœĐ” ĐżĐ”Ń€Đ”ĐŽĐ±Đ°Ń‡Đ”ĐœĐŸ."
-#: ../share/extensions/plotter.inx.h:34
+#: ../share/extensions/plotter.inx.h:43
msgid ""
"The speed the pen will move with in centimeters or millimeters per second "
"(depending on your plotter model), set to 0 to omit command. Most plotters "
@@ -35772,15 +35868,15 @@ msgstr ""
"ĐŒĐŸĐŽĐ”Đ»Ń– ĐżĐ»ĐŸŃ‚Đ”Ń€Đ°). Đ’ŃŃ‚Đ°ĐœĐŸĐČіть Đ·ĐœĐ°Ń‡Đ”ĐœĐœŃ 0, Ń‰ĐŸĐ± ĐČĐžĐŒĐșĐœŃƒŃ‚Đž ĐșĐŸĐŒĐ°ĐœĐŽŃƒ. Đ‘Ń–Đ»ŃŒŃˆŃ–ŃŃ‚ŃŒ "
"ĐżĐ»ĐŸŃ‚Đ”Ń€Ń–ĐČ Ń–ĐłĐœĐŸŃ€ŃƒŃ” цю ĐșĐŸĐŒĐ°ĐœĐŽŃƒ. (ĐąĐžĐżĐŸĐČĐ” Đ·ĐœĐ°Ń‡Đ”ĐœĐœŃ: 20)"
-#: ../share/extensions/plotter.inx.h:35
+#: ../share/extensions/plotter.inx.h:44
msgid "Rotation (°, clockwise):"
msgstr "ĐžĐ±Đ”Ń€Ń‚Đ°ĐœĐœŃ (у °, за ĐłĐŸĐŽĐžĐœĐœĐžĐșĐŸĐČĐŸŃŽ стрілĐșĐŸŃŽ):"
-#: ../share/extensions/plotter.inx.h:54
+#: ../share/extensions/plotter.inx.h:64
msgid "Show debug information"
msgstr "ĐŸĐŸĐșазуĐČато ĐŽŃ–Đ°ĐłĐœĐŸŃŃ‚ĐžŃ‡ĐœŃƒ Ń–ĐœŃ„ĐŸŃ€ĐŒĐ°Ń†Ń–ŃŽ"
-#: ../share/extensions/plotter.inx.h:55
+#: ../share/extensions/plotter.inx.h:65
msgid ""
"Check this to get verbose information about the plot without actually "
"sending something to the plotter (A.k.a. data dump) (Default: Unchecked)"
@@ -37563,15 +37659,42 @@ msgstr "ĐŸĐŸĐżŃƒĐ»ŃŃ€ĐœĐžĐč ĐłŃ€Đ°Ń„Ń–Ń‡ĐœĐžĐč Ń„ĐŸŃ€ĐŒĐ°Ń‚ ĐŽĐ»Ń Đșліпар
msgid "XAML Input"
msgstr "Đ†ĐŒĐżĐŸŃ€Ń‚ Đ· XAML"
+#~ msgid "Show helper paths"
+#~ msgstr "ĐŸĐŸĐșазатО ĐŽĐŸĐżĐŸĐŒŃ–Đ¶ĐœŃ– ĐșĐŸĐœŃ‚ŃƒŃ€Đž"
+
+#~ msgid "Leaned"
+#~ msgstr "ĐĐ°Ń…ĐžĐ»Đ”ĐœĐžĐč"
+
+#~ msgid "Start path lean"
+#~ msgstr "ĐŸĐŸŃ‡Đ°Ń‚ĐŸĐș ĐșĐŸĐœŃ‚ŃƒŃ€Ńƒ ĐœĐ°Ń…ĐžĐ»Ńƒ"
+
+#~ msgid "End path lean"
+#~ msgstr "ĐšŃ–ĐœĐ”Ń†ŃŒ ĐșĐŸĐœŃ‚ŃƒŃ€Ńƒ ĐœĐ°Ń…ĐžĐ»Ńƒ"
+
+#~ msgid "<b>Roughen unit</b>"
+#~ msgstr "<b>ĐžĐŽĐžĐœĐžŃ†Ń Đ·ĐłŃ€ŃƒĐ±Ń–ŃˆĐ°ĐœĐœŃ</b>"
+
+#~ msgid "Helper nodes"
+#~ msgstr "Đ”ĐŸĐżĐŸĐŒŃ–Đ¶ĐœŃ– ĐČузлО"
+
+#~ msgid "Show helper nodes"
+#~ msgstr "ĐŸĐŸĐșазуĐČато ĐŽĐŸĐżĐŸĐŒŃ–Đ¶ĐœŃ– ĐČузлО"
+
+#~ msgid "Helper handles"
+#~ msgstr "Đ”ĐŸĐżĐŸĐŒŃ–Đ¶ĐœŃ– ĐČуса"
+
+#~ msgid "Show helper handles"
+#~ msgstr "ĐŸĐŸĐșазуĐČато ĐŽĐŸĐżĐŸĐŒŃ–Đ¶ĐœŃ– Đ”Đ»Đ”ĐŒĐ”ĐœŃ‚Đž ĐșĐ”Ń€ŃƒĐČĐ°ĐœĐœŃ"
+
+#~ msgid "%1 (%2):"
+#~ msgstr "%1 (%2):"
+
#~ msgid "PS+LaTeX: Omit text in PS, and create LaTeX file"
#~ msgstr "PS+LaTeX: ĐżŃ€ĐŸĐżŃƒŃŃ‚ĐžŃ‚Đž тДĐșст у PS і стĐČĐŸŃ€ĐžŃ‚Đž фаĐčĐ» LaTeX"
#~ msgid "EPS+LaTeX: Omit text in EPS, and create LaTeX file"
#~ msgstr "EPS+LaTeX: ĐżŃ€ĐŸĐżŃƒŃŃ‚ĐžŃ‚Đž тДĐșст у EPS і стĐČĐŸŃ€ĐžŃ‚Đž фаĐčĐ» LaTeX"
-#~ msgid "Miter limit"
-#~ msgstr "ĐžĐ±ĐŒĐ”Đ¶Đ”ĐœĐœŃ фацДта"
-
#~ msgid "Radius "
#~ msgstr "РаЮіус: "
@@ -38627,15 +38750,9 @@ msgstr "Đ†ĐŒĐżĐŸŃ€Ń‚ Đ· XAML"
#~ msgid "Print unit after path length"
#~ msgstr "ĐŸĐŸĐșазуĐČато ĐŸĐŽĐžĐœĐžŃ†ŃŽ ĐżĐŸŃ€ŃĐŽ Đ· ĐŽĐŸĐČĐ¶ĐžĐœĐŸŃŽ ĐșĐŸĐœŃ‚ŃƒŃ€Ńƒ"
-#~ msgid "Scale x"
-#~ msgstr "ĐœĐ°ŃŃˆŃ‚Đ°Đ± за x"
-
#~ msgid "Scale factor in x direction"
#~ msgstr "ĐšĐŸĐ”Ń„Ń–Ń†Ń–Ń”ĐœŃ‚ ĐŒĐ°ŃŃˆŃ‚Đ°Đ±ŃƒĐČĐ°ĐœĐœŃ у ĐœĐ°ĐżŃ€ŃĐŒĐșу ĐČісі x"
-#~ msgid "Scale y"
-#~ msgstr "ĐœĐ°ŃŃˆŃ‚Đ°Đ± за y"
-
#~ msgid "Scale factor in y direction"
#~ msgstr "ĐšĐŸĐ”Ń„Ń–Ń†Ń–Ń”ĐœŃ‚ ĐŒĐ°ŃŃˆŃ‚Đ°Đ±ŃƒĐČĐ°ĐœĐœŃ у ĐœĐ°ĐżŃ€ŃĐŒĐșу ĐČісі y"
diff --git a/share/extensions/image_attributes.inx b/share/extensions/image_attributes.inx
new file mode 100644
index 000000000..a353d17e5
--- /dev/null
+++ b/share/extensions/image_attributes.inx
@@ -0,0 +1,82 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<inkscape-extension xmlns="http://www.inkscape.org/namespace/inkscape/extension">
+
+ <_name>Set Image Attributes</_name>
+ <id>org.inkscape.effect.image_attributes</id>
+
+ <dependency type="executable" location="extensions">image_attributes.py</dependency>
+ <dependency type="executable" location="extensions">inkex.py</dependency>
+
+ <param name="tab_main" type="notebook">
+
+ <!-- render images like in 0.48 -->
+ <page name="tab_basic" _gui-text="Basic">
+ <_param name="basic_desc1" type="description">Render all bitmap images like in older Inskcape versions.
+
+Available options:</_param>
+ <param name="fix_scaling" type="boolean" _gui-text="Support non-unifom scaling">true</param>
+ <param name="fix_rendering" type="boolean" _gui-text="Render images blocky">false</param>
+ </page>
+
+ <!-- image aspect ratio -->
+ <page name="tab_aspectRatio" _gui-text="Image Aspect Ratio">
+ <param name="aspect_ratio" type="enum" _gui-text="preserveAspectRatio attribute:">
+ <item value="none">none</item>
+ <_item value="unset">Unset</_item>
+ <item value="xMinYMin">xMinYMin</item>
+ <item value="xMidYMin">xMidYMin</item>
+ <item value="xMaxYMin">xMaxYMin</item>
+ <item value="xMinYMid">xMinYMid</item>
+ <item value="xMidYMid">xMidYMid</item>
+ <item value="xMaxYMid">xMaxYMid</item>
+ <item value="xMinYMax">xMinYMax</item>
+ <item value="xMidYMax">xMidYMax</item>
+ <item value="xMaxYMax">xMaxYMax</item>
+ </param>
+ <param name="aspect_clip" type="enum" _gui-text="meetOrSlice:">
+ <item value="unset">-</item>
+ <item value="meet">meet</item>
+ <item value="slice">slice</item>
+ </param>
+ <param name="aspect_ratio_scope" type="enum" _gui-text="Scope:">
+ <_item value="selected_only">Change only selected image(s)</_item>
+ <_item value="in_selection">Change all images in selection</_item>
+ <_item value="in_document">Change all images in document</_item>
+ </param>
+ </page>
+
+ <!-- image-rendering -->
+ <page name="tab_image_rendering" _gui-text="Image Rendering Quality">
+ <param name="image_rendering" type="enum" _gui-text="Image rendering attribute:">
+ <_item value="unset">Unset</_item>
+ <item value="auto">auto</item>
+ <item value="optimizeQuality">optimizeQuality</item>
+ <item value="optimizeSpeed">optimizeSpeed</item>
+ <item value="inherit">inherit</item>
+ </param>
+ <param name="image_rendering_scope" type="enum" _gui-text="Scope:">
+ <_item value="selected_only">Change only selected image(s)</_item>
+ <_item value="in_selection">Change all images in selection</_item>
+ <_item value="in_document">Change all images in document</_item>
+ <_item value="on_parent_group">Apply attribute to parent group of selection</_item>
+ <_item value="on_root_only" >Apply attribute to SVG root</_item>
+ </param>
+ </page>
+
+ </param>
+
+ <effect needs-document="true" needs-live-preview="true">
+ <object-type>all</object-type>
+ <effects-menu>
+ <submenu _name="Images"/>
+ </effects-menu>
+ </effect>
+
+ <script>
+ <command reldir="extensions" interpreter="python">image_attributes.py</command>
+ </script>
+
+ <options silent="false"></options>
+
+</inkscape-extension>
+
diff --git a/share/extensions/image_attributes.py b/share/extensions/image_attributes.py
new file mode 100755
index 000000000..ddd5a8b87
--- /dev/null
+++ b/share/extensions/image_attributes.py
@@ -0,0 +1,169 @@
+#!/usr/bin/env python
+'''
+image_attributes.py - adjust image attributes which don't have global
+GUI options yet
+
+Tool for Inkscape 0.91 to adjust rendering of drawings with linked
+or embedded bitmap images created with older versions of Inkscape
+or third-party applications.
+
+Copyright (C) 2015, ~suv <suv-sf@users.sf.net>
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+'''
+
+# local library
+import inkex
+import simplestyle
+
+try:
+ inkex.localize()
+except:
+ import gettext
+ _ = gettext.gettext
+
+
+class SetAttrImage(inkex.Effect):
+ def __init__(self):
+ inkex.Effect.__init__(self)
+ # main options
+ self.OptionParser.add_option("--fix_scaling",
+ action="store", type="inkbool",
+ dest="fix_scaling", default=True,
+ help="")
+ self.OptionParser.add_option("--fix_rendering",
+ action="store", type="inkbool",
+ dest="fix_rendering", default=False,
+ help="")
+ self.OptionParser.add_option("--aspect_ratio",
+ action="store", type="string",
+ dest="aspect_ratio", default="none",
+ help="Value for attribute 'preserveAspectRatio'")
+ self.OptionParser.add_option("--aspect_clip",
+ action="store", type="string",
+ dest="aspect_clip", default="unset",
+ help="optional 'meetOrSlice' value")
+ self.OptionParser.add_option("--aspect_ratio_scope",
+ action="store", type="string",
+ dest="aspect_ratio_scope", default="selected_only",
+ help="scope within which to edit 'preserveAspectRatio' attribute")
+ self.OptionParser.add_option("--image_rendering",
+ action="store", type="string",
+ dest="image_rendering", default="unset",
+ help="Value for attribute 'image-rendering'")
+ self.OptionParser.add_option("--image_rendering_scope",
+ action="store", type="string",
+ dest="image_rendering_scope", default="selected_only",
+ help="scope within which to edit 'image-rendering' attribute")
+ # tabs
+ self.OptionParser.add_option("--tab_main",
+ action="store", type="string",
+ dest="tab_main")
+
+ # core method
+
+ def change_attribute(self, node, attribute):
+ for key, value in attribute.items():
+ if key == 'preserveAspectRatio':
+ # set presentation attribute
+ if value != "unset":
+ node.set(key, str(value))
+ else:
+ if node.get(key):
+ del node.attrib[key]
+ elif key == 'image-rendering':
+ node_style = simplestyle.parseStyle(node.get('style'))
+ if key not in node_style:
+ # set presentation attribute
+ if value != "unset":
+ node.set(key, str(value))
+ else:
+ if node.get(key):
+ del node.attrib[key]
+ else:
+ # set style property
+ if value != "unset":
+ node_style[key] = str(value)
+ else:
+ del node_style[key]
+ node.set('style', simplestyle.formatStyle(node_style))
+ else:
+ pass
+
+ def change_all_images(self, node, attribute):
+ path = 'descendant-or-self::svg:image'
+ for img in node.xpath(path, namespaces=inkex.NSS):
+ self.change_attribute(img, attribute)
+
+ # methods called via dispatcher
+
+ def change_selected_only(self, selected, attribute):
+ if selected:
+ for node_id, node in selected.iteritems():
+ if node.tag == inkex.addNS('image', 'svg'):
+ self.change_attribute(node, attribute)
+
+ def change_in_selection(self, selected, attribute):
+ if selected:
+ for node_id, node in selected.iteritems():
+ self.change_all_images(node, attribute)
+
+ def change_in_document(self, selected, attribute):
+ self.change_all_images(self.document.getroot(), attribute)
+
+ def change_on_parent_group(self, selected, attribute):
+ if selected:
+ for node_id, node in selected.iteritems():
+ self.change_attribute(node.getparent(), attribute)
+
+ def change_on_root_only(self, selected, attribute):
+ self.change_attribute(self.document.getroot(), attribute)
+
+ # main
+
+ def effect(self):
+ attr_val = []
+ attr_dict = {}
+ cmd_scope = None
+ if self.options.tab_main == '"tab_basic"':
+ cmd_scope = "in_document"
+ attr_dict['preserveAspectRatio'] = ("none" if self.options.fix_scaling else "unset")
+ attr_dict['image-rendering'] = ("optimizeSpeed" if self.options.fix_rendering else "unset")
+ elif self.options.tab_main == '"tab_aspectRatio"':
+ attr_val = [self.options.aspect_ratio]
+ if self.options.aspect_clip != "unset":
+ attr_val.append(self.options.aspect_clip)
+ attr_dict['preserveAspectRatio'] = ' '.join(attr_val)
+ cmd_scope = self.options.aspect_ratio_scope
+ elif self.options.tab_main == '"tab_image_rendering"':
+ attr_dict['image-rendering'] = self.options.image_rendering
+ cmd_scope = self.options.image_rendering_scope
+ else: # help tab
+ pass
+ # dispatcher
+ if cmd_scope is not None:
+ try:
+ change_cmd = getattr(self, 'change_{0}'.format(cmd_scope))
+ change_cmd(self.selected, attr_dict)
+ except AttributeError:
+ inkex.errormsg('Scope "{0}" not supported'.format(cmd_scope))
+
+
+if __name__ == '__main__':
+ e = SetAttrImage()
+ e.affect()
+
+
+# vim: expandtab shiftwidth=4 tabstop=8 softtabstop=4 fileencoding=utf-8 textwidth=99
diff --git a/share/extensions/layout_nup.inx b/share/extensions/layout_nup.inx
index 2b7734fc3..1d4d1ef0f 100644
--- a/share/extensions/layout_nup.inx
+++ b/share/extensions/layout_nup.inx
@@ -3,7 +3,6 @@
<_name>N-up layout</_name>
<id>org.greygreen.inkscape.effects.nup</id>
<dependency type="executable" location="extensions">layout_nup.py</dependency>
- <dependency type="executable" location="extensions">layout_nup_pageframe.py</dependency>
<dependency type="executable" location="extensions">inkex.py</dependency>
<param name="tab" type="notebook">
diff --git a/share/extensions/layout_nup.py b/share/extensions/layout_nup.py
index 5f8451c45..266a3950d 100755
--- a/share/extensions/layout_nup.py
+++ b/share/extensions/layout_nup.py
@@ -19,7 +19,19 @@ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
import inkex
import sys
-import layout_nup_pageframe
+try:
+ import xml.etree.ElementTree as ElementTree
+except:
+ try:
+ from lxml import etree as ElementTree
+ except:
+ try:
+ from elementtree.ElementTree import ElementTree
+ except:
+ sys.stderr.write("""Requires ElementTree module, included
+in Python 2.5 or supplied by lxml or elementtree modules.
+
+""")
class Nup(inkex.Effect):
def __init__(self):
@@ -64,7 +76,7 @@ class Nup(inkex.Effect):
if getattr(self.options, i):
showList.append(i.lower().replace('show', ''))
o = self.options
- self.pf = layout_nup_pageframe.GenerateNup(
+ self.pf = self.GenerateNup(
unit=o.unit,
pgSize=(o.pgSizeX,o.pgSizeY),
pgMargin=(o.pgMarginTop,o.pgMarginRight,o.pgMarginBottom,o.pgMarginLeft),
@@ -84,7 +96,203 @@ class Nup(inkex.Effect):
def output(self):
sys.stdout.write(self.pf)
+ def expandTuple(self, unit, x, length = 4):
+ try:
+ iter(x)
+ except:
+ return None
+
+ if len(x) != length: x = x*2
+ if len(x) != length:
+ raise Exception("expandTuple: requires 2 or 4 item tuple")
+ try:
+ return tuple(map(lambda ev: (self.unittouu(str(eval(str(ev)))+unit)/self.unittouu('1px')), x))
+ except:
+ return None
+
+ def GenerateNup(self,
+ unit="px",
+ pgSize=("8.5*96","11*96"),
+ pgMargin=(0,0),
+ pgPadding=(0,0),
+ num=(2,2),
+ calculateSize=True,
+ size=None,
+ margin=(0,0),
+ padding=(20,20),
+ show=['default'],
+ container='svg',
+ returnTree = False,
+ ):
+ """Generate the SVG. Inputs are run through 'eval(str(x))' so you can use
+ '8.5*72' instead of 612. Margin / padding dimension tuples can be
+ (top & bottom, left & right) or (top, right, bottom, left).
+
+ Keyword arguments:
+ pgSize -- page size, width x height
+ pgMargin -- extra space around each page
+ pgPadding -- added to pgMargin
+ n -- rows x cols
+ size -- override calculated size, width x height
+ margin -- white space around each piece
+ padding -- inner padding for each piece
+ show -- list of keywords indicating what to show
+ - 'crosses' - cutting guides
+ - 'inner' - inner boundary
+ - 'outer' - outer boundary
+ container -- 'svg' or 'g'
+ returnTree -- whether to return the ElementTree or the string
+ """
+
+ if 'default' in show:
+ show = set(show).union(['inner', 'innerbox', 'holder', 'crosses'])
+
+ pgMargin = self.expandTuple(unit, pgMargin)
+ pgPadding = self.expandTuple(unit, pgPadding)
+ margin = self.expandTuple(unit, margin)
+ padding = self.expandTuple(unit, padding)
+
+ pgSize = self.expandTuple(unit, pgSize, length = 2)
+ # num = tuple(map(lambda ev: eval(str(ev)), num))
+
+ pgEdge = map(sum,zip(pgMargin, pgPadding))
+
+ top, right, bottom, left = 0,1,2,3
+ width, height = 0,1
+ rows, cols = 0,1
+ size = self.expandTuple(unit, size, length = 2)
+ if size == None or calculateSize == True or len(size) < 2 or size[0] == 0 or size[1] == 0:
+ size = ((pgSize[width]
+ - pgEdge[left] - pgEdge[right]
+ - num[cols]*(margin[left] + margin[right])) / num[cols],
+ (pgSize[height]
+ - pgEdge[top] - pgEdge[bottom]
+ - num[rows]*(margin[top] + margin[bottom])) / num[rows]
+ )
+ else:
+ size = self.expandTuple(unit, size, length = 2)
+
+ # sep is separation between same points on pieces
+ sep = (size[width]+margin[right]+margin[left],
+ size[height]+margin[top]+margin[bottom])
+
+ style = 'stroke:#000000;stroke-opacity:1;fill:none;fill-opacity:1;'
+
+ padbox = 'rect', {
+ 'x': str(pgEdge[left] + margin[left] + padding[left]),
+ 'y': str(pgEdge[top] + margin[top] + padding[top]),
+ 'width': str(size[width] - padding[left] - padding[right]),
+ 'height': str(size[height] - padding[top] - padding[bottom]),
+ 'style': style,
+ }
+ margbox = 'rect', {
+ 'x': str(pgEdge[left] + margin[left]),
+ 'y': str(pgEdge[top] + margin[top]),
+ 'width': str(size[width]),
+ 'height': str(size[height]),
+ 'style': style,
+ }
+
+ doc = ElementTree.ElementTree(ElementTree.Element(container,
+ {'xmlns:inkscape':"http://www.inkscape.org/namespaces/inkscape",
+ 'xmlns:xlink':"http://www.w3.org/1999/xlink",
+ 'width':str(pgSize[width]),
+ 'height':str(pgSize[height]),
+ }))
+
+ sub = ElementTree.SubElement
+
+ root = doc.getroot()
+
+ def makeClones(under, to):
+ for r in range(0,num[rows]):
+ for c in range(0,num[cols]):
+ if r == 0 and c == 0: continue
+ sub(under, 'use', {
+ 'xlink:href': '#' + to,
+ 'transform': 'translate(%f,%f)' %
+ (c*sep[width], r*sep[height])})
+
+ # guidelayer #####################################################
+ if set(['inner', 'outer']).intersection(show):
+ layer = sub(root, 'g', {'id':'guidelayer',
+ 'inkscape:groupmode':'layer'})
+ if 'inner' in show:
+ padbox[1]['id'] = 'innerguide'
+ padbox[1]['style'] = padbox[1]['style'].replace('stroke:#000000',
+ 'stroke:#8080ff')
+ sub(layer, *padbox)
+ del padbox[1]['id']
+ padbox[1]['style'] = padbox[1]['style'].replace('stroke:#8080ff',
+ 'stroke:#000000')
+ makeClones(layer, 'innerguide')
+ if 'outer' in show:
+ margbox[1]['id'] = 'outerguide'
+ margbox[1]['style'] = padbox[1]['style'].replace('stroke:#000000',
+ 'stroke:#8080ff')
+ sub(layer, *margbox)
+ del margbox[1]['id']
+ margbox[1]['style'] = padbox[1]['style'].replace('stroke:#8080ff',
+ 'stroke:#000000')
+ makeClones(layer, 'outerguide')
+
+ # crosslayer #####################################################
+ if set(['crosses']).intersection(show):
+ layer = sub(root, 'g', {'id':'cutlayer',
+ 'inkscape:groupmode':'layer'})
+
+ if 'crosses' in show:
+ crosslen = 12
+ group = sub(layer, 'g', id='cross')
+ x,y = 0,0
+ path = 'M%f %f' % (x+pgEdge[left] + margin[left],
+ y+pgEdge[top] + margin[top]-crosslen)
+ path += ' L%f %f' % (x+pgEdge[left] + margin[left],
+ y+pgEdge[top] + margin[top]+crosslen)
+ path += ' M%f %f' % (x+pgEdge[left] + margin[left]-crosslen,
+ y+pgEdge[top] + margin[top])
+ path += ' L%f %f' % (x+pgEdge[left] + margin[left]+crosslen,
+ y+pgEdge[top] + margin[top])
+ sub(group, 'path', style=style+'stroke-width:0.05',
+ d = path, id = 'crossmarker')
+ for r in 0, 1:
+ for c in 0, 1:
+ if r or c:
+ x,y = c*size[width], r*size[height]
+ sub(group, 'use', {
+ 'xlink:href': '#crossmarker',
+ 'transform': 'translate(%f,%f)' %
+ (x,y)})
+ makeClones(layer, 'cross')
+
+ # clonelayer #####################################################
+ layer = sub(root, 'g', {'id':'clonelayer', 'inkscape:groupmode':'layer'})
+ makeClones(layer, 'main')
+
+ # mainlayer ######################################################
+ layer = sub(root, 'g', {'id':'mainlayer', 'inkscape:groupmode':'layer'})
+ group = sub(layer, 'g', {'id':'main'})
+
+ if 'innerbox' in show:
+ sub(group, *padbox)
+ if 'outerbox' in show:
+ sub(group, *margbox)
+ if 'holder' in show:
+ x, y = (pgEdge[left] + margin[left] + padding[left],
+ pgEdge[top] + margin[top] + padding[top])
+ w, h = (size[width] - padding[left] - padding[right],
+ size[height] - padding[top] - padding[bottom])
+ path = 'M%f %f' % (x + w/2., y)
+ path += ' L%f %f' % (x + w, y + h/2.)
+ path += ' L%f %f' % (x + w/2., y + h)
+ path += ' L%f %f' % (x, y + h/2.)
+ path += ' Z'
+ sub(group, 'path', style=style, d = path)
+
+ if returnTree:
+ return doc
+ else:
+ return ElementTree.tostring(root)
+
e = Nup()
e.affect()
-
-
diff --git a/share/extensions/layout_nup_pageframe.py b/share/extensions/layout_nup_pageframe.py
deleted file mode 100755
index 471a75dd3..000000000
--- a/share/extensions/layout_nup_pageframe.py
+++ /dev/null
@@ -1,230 +0,0 @@
-#!/usr/bin/env python
-#@+leo-ver=4-thin
-#@+node:tbrown.20070622094435.1:@thin pageframe.py
-"""Create n-up SVG layouts"""
-
-#@+others
-#@+node:tbrown.20070622103716:imports
-import sys, inkex
-
-try:
- import xml.etree.ElementTree as ElementTree
-except:
- try:
- from lxml import etree as ElementTree
- except:
- try:
- from elementtree.ElementTree import ElementTree
- except:
- sys.stderr.write("""Requires ElementTree module, included
-in Python 2.5 or supplied by lxml or elementtree modules.
-
-""")
-#@-node:tbrown.20070622103716:imports
-#@+node:tbrown.20070622103716.1:expandTuple
-def expandTuple(unit, x, length = 4):
- try:
- iter(x)
- except:
- return None
-
- if len(x) != length: x = x*2
- if len(x) != length:
- raise Exception("expandTuple: requires 2 or 4 item tuple")
- try:
- return tuple(map(lambda ev: (self.unittouu(str(eval(str(ev)))+unit)), x))
- except:
- return None
-#@-node:tbrown.20070622103716.1:expandTuple
-#@+node:tbrown.20070622103716.2:GenerateNup
-def GenerateNup(unit="px",
- pgSize=("8.5*96","11*96"),
- pgMargin=(0,0),
- pgPadding=(0,0),
- num=(2,2),
- calculateSize=True,
- size=None,
- margin=(0,0),
- padding=(20,20),
- show=['default'],
- container='svg',
- returnTree = False,
- ):
- """Generate the SVG. Inputs are run through 'eval(str(x))' so you can use
-'8.5*72' instead of 612. Margin / padding dimension tuples can be
-(top & bottom, left & right) or (top, right, bottom, left).
-
-Keyword arguments:
-pgSize -- page size, width x height
-pgMargin -- extra space around each page
-pgPadding -- added to pgMargin
-n -- rows x cols
-size -- override calculated size, width x height
-margin -- white space around each piece
-padding -- inner padding for each piece
-show -- list of keywords indicating what to show
- - 'crosses' - cutting guides
- - 'inner' - inner boundary
- - 'outer' - outer boundary
-container -- 'svg' or 'g'
-returnTree -- whether to return the ElementTree or the string
-"""
-
- if 'default' in show:
- show = set(show).union(['inner', 'innerbox', 'holder', 'crosses'])
-
- pgMargin = expandTuple(unit, pgMargin)
- pgPadding = expandTuple(unit, pgPadding)
- margin = expandTuple(unit, margin)
- padding = expandTuple(unit, padding)
-
- pgSize = expandTuple(unit, pgSize, length = 2)
-# num = tuple(map(lambda ev: eval(str(ev)), num))
-
- pgEdge = map(sum,zip(pgMargin, pgPadding))
-
- top, right, bottom, left = 0,1,2,3
- width, height = 0,1
- rows, cols = 0,1
- size = expandTuple(unit, size, length = 2)
- if size == None or calculateSize == True or len(size) < 2 or size[0] == 0 or size[1] == 0:
- size = ((pgSize[width]
- - pgEdge[left] - pgEdge[right]
- - num[cols]*(margin[left] + margin[right])) / num[cols],
- (pgSize[height]
- - pgEdge[top] - pgEdge[bottom]
- - num[rows]*(margin[top] + margin[bottom])) / num[rows]
- )
- else:
- size = expandTuple(unit, size, length = 2)
-
- # sep is separation between same points on pieces
- sep = (size[width]+margin[right]+margin[left],
- size[height]+margin[top]+margin[bottom])
-
- style = 'stroke:#000000;stroke-opacity:1;fill:none;fill-opacity:1;'
-
- padbox = 'rect', {
- 'x': str(pgEdge[left] + margin[left] + padding[left]),
- 'y': str(pgEdge[top] + margin[top] + padding[top]),
- 'width': str(size[width] - padding[left] - padding[right]),
- 'height': str(size[height] - padding[top] - padding[bottom]),
- 'style': style,
- }
- margbox = 'rect', {
- 'x': str(pgEdge[left] + margin[left]),
- 'y': str(pgEdge[top] + margin[top]),
- 'width': str(size[width]),
- 'height': str(size[height]),
- 'style': style,
- }
-
- doc = ElementTree.ElementTree(ElementTree.Element(container,
- {'xmlns:inkscape':"http://www.inkscape.org/namespaces/inkscape",
- 'xmlns:xlink':"http://www.w3.org/1999/xlink",
- 'width':str(pgSize[width]),
- 'height':str(pgSize[height]),
- }))
-
- sub = ElementTree.SubElement
-
- root = doc.getroot()
-
- def makeClones(under, to):
- for r in range(0,num[rows]):
- for c in range(0,num[cols]):
- if r == 0 and c == 0: continue
- sub(under, 'use', {
- 'xlink:href': '#' + to,
- 'transform': 'translate(%f,%f)' %
- (c*sep[width], r*sep[height])})
-
- # guidelayer #####################################################
- if set(['inner', 'outer']).intersection(show):
- layer = sub(root, 'g', {'id':'guidelayer',
- 'inkscape:groupmode':'layer'})
- if 'inner' in show:
- padbox[1]['id'] = 'innerguide'
- padbox[1]['style'] = padbox[1]['style'].replace('stroke:#000000',
- 'stroke:#8080ff')
- sub(layer, *padbox)
- del padbox[1]['id']
- padbox[1]['style'] = padbox[1]['style'].replace('stroke:#8080ff',
- 'stroke:#000000')
- makeClones(layer, 'innerguide')
- if 'outer' in show:
- margbox[1]['id'] = 'outerguide'
- margbox[1]['style'] = padbox[1]['style'].replace('stroke:#000000',
- 'stroke:#8080ff')
- sub(layer, *margbox)
- del margbox[1]['id']
- margbox[1]['style'] = padbox[1]['style'].replace('stroke:#8080ff',
- 'stroke:#000000')
- makeClones(layer, 'outerguide')
-
- # crosslayer #####################################################
- if set(['crosses']).intersection(show):
- layer = sub(root, 'g', {'id':'cutlayer',
- 'inkscape:groupmode':'layer'})
-
- if 'crosses' in show:
- crosslen = 12
- group = sub(layer, 'g', id='cross')
- x,y = 0,0
- path = 'M%f %f' % (x+pgEdge[left] + margin[left],
- y+pgEdge[top] + margin[top]-crosslen)
- path += ' L%f %f' % (x+pgEdge[left] + margin[left],
- y+pgEdge[top] + margin[top]+crosslen)
- path += ' M%f %f' % (x+pgEdge[left] + margin[left]-crosslen,
- y+pgEdge[top] + margin[top])
- path += ' L%f %f' % (x+pgEdge[left] + margin[left]+crosslen,
- y+pgEdge[top] + margin[top])
- sub(group, 'path', style=style+'stroke-width:0.05',
- d = path, id = 'crossmarker')
- for r in 0, 1:
- for c in 0, 1:
- if r or c:
- x,y = c*size[width], r*size[height]
- sub(group, 'use', {
- 'xlink:href': '#crossmarker',
- 'transform': 'translate(%f,%f)' %
- (x,y)})
- makeClones(layer, 'cross')
-
- # clonelayer #####################################################
- layer = sub(root, 'g', {'id':'clonelayer', 'inkscape:groupmode':'layer'})
- makeClones(layer, 'main')
-
- # mainlayer ######################################################
- layer = sub(root, 'g', {'id':'mainlayer', 'inkscape:groupmode':'layer'})
- group = sub(layer, 'g', {'id':'main'})
-
- if 'innerbox' in show:
- sub(group, *padbox)
- if 'outerbox' in show:
- sub(group, *margbox)
- if 'holder' in show:
- x, y = (pgEdge[left] + margin[left] + padding[left],
- pgEdge[top] + margin[top] + padding[top])
- w, h = (size[width] - padding[left] - padding[right],
- size[height] - padding[top] - padding[bottom])
- path = 'M%f %f' % (x + w/2., y)
- path += ' L%f %f' % (x + w, y + h/2.)
- path += ' L%f %f' % (x + w/2., y + h)
- path += ' L%f %f' % (x, y + h/2.)
- path += ' Z'
- sub(group, 'path', style=style, d = path)
-
- if returnTree:
- return doc
- else:
- return ElementTree.tostring(root)
-
-if __name__ == '__main__':
- print GenerateNup(num=(10,3), margin=(5,5), show=['default', 'outer'])
-#@-node:tbrown.20070622103716.2:GenerateNup
-#@-others
-#@-node:tbrown.20070622094435.1:@thin pageframe.py
-#@-leo
-
-
diff --git a/src/2geom/sbasis-to-bezier.cpp b/src/2geom/sbasis-to-bezier.cpp
index fe7bbc91c..dfd07d84c 100644
--- a/src/2geom/sbasis-to-bezier.cpp
+++ b/src/2geom/sbasis-to-bezier.cpp
@@ -239,6 +239,8 @@ void sbasis_to_cubic_bezier (std::vector<Point> & bz, D2<SBasis> const& sb)
midx = 8*midx - 4*bz[0][X] - 4*bz[3][X]; // re-define relative to center
midy = 8*midy - 4*bz[0][Y] - 4*bz[3][Y];
+ if ((std::abs(midx) < EPSILON) && (std::abs(midy) < EPSILON))
+ return;
if ((std::abs(xprime[0]) < EPSILON) && (std::abs(yprime[0]) < EPSILON)
&& ((std::abs(xprime[1]) > EPSILON) || (std::abs(yprime[1]) > EPSILON))) { // degenerate handle at 0 : use distance of closest approach
@@ -258,11 +260,15 @@ void sbasis_to_cubic_bezier (std::vector<Point> & bz, D2<SBasis> const& sb)
dely[1] = 0;
} else if (std::abs(xprime[1]*yprime[0] - yprime[1]*xprime[0]) > // general case : fit mid fxn value
0.002 * std::abs(xprime[1]*xprime[0] + yprime[1]*yprime[0])) { // approx. 0.1 degree of angle
- denom = 3.0*(xprime[1]*yprime[0] - yprime[1]*xprime[0]);
+ double test1 = (bz[1][Y] - bz[0][Y])*(bz[3][X] - bz[0][X]) - (bz[1][X] - bz[0][X])*(bz[3][Y] - bz[0][Y]);
+ double test2 = (bz[2][Y] - bz[0][Y])*(bz[3][X] - bz[0][X]) - (bz[2][X] - bz[0][X])*(bz[3][Y] - bz[0][Y]);
+ if (test1*test2 < 0) // reject anti-symmetric case, LP Bug 1428267 & Bug 1428683
+ return;
+ denom = xprime[1]*yprime[0] - yprime[1]*xprime[0];
for (int i = 0; i < 2; ++i) {
numer = xprime[1 - i]*midy - yprime[1 - i]*midx;
- delx[i] = xprime[i]*numer/denom;
- dely[i] = yprime[i]*numer/denom;
+ delx[i] = xprime[i]*numer/denom/3;
+ dely[i] = yprime[i]*numer/denom/3;
}
} else if ((xprime[0]*xprime[1] < 0) || (yprime[0]*yprime[1] < 0)) { // symmetric case : use distance of closest approach
numer = midx*xprime[0] + midy*yprime[0];
@@ -509,10 +515,10 @@ path_from_sbasis(D2<SBasis> const &B, double tol, bool only_cubicbeziers) {
TODO: some of this logic should be lifted into svg-path
*/
PathVector
-path_from_piecewise(Geom::Piecewise<Geom::D2<Geom::SBasis> > const &B, double tol, bool only_cubicbeziers) {
- Geom::PathBuilder pb;
+path_from_piecewise(Piecewise<D2<SBasis> > const &B, double tol, bool only_cubicbeziers) {
+ PathBuilder pb;
if(B.size() == 0) return pb.peek();
- Geom::Point start = B[0].at0();
+ Point start = B[0].at0();
pb.moveTo(start);
for(unsigned i = 0; ; i++) {
if ( (i+1 == B.size())
diff --git a/src/attributes-test.h b/src/attributes-test.h
index 7379e4e85..411304ec3 100644
--- a/src/attributes-test.h
+++ b/src/attributes-test.h
@@ -40,6 +40,10 @@ public:
I've added these manually.
SVG 2: white-space, shape-inside, shape-outside, shape-padding, shape-margin
+ SVG 2: text-decoration-fill, text-decoration-stroke
+ SVG 2: solid-color, solid-opacity
+ SVG 2: Hatches and Meshes
+ CSS 3: font-variant-xxx, font-feature-settings
*/
struct {char const *attr; bool supported;} const all_attrs[] = {
{"attributeName", true},
@@ -124,11 +128,18 @@ struct {char const *attr; bool supported;} const all_attrs[] = {
{"flood-color", true},
{"flood-opacity", true},
{"font-family", true},
+ {"font-feature-settings", true},
{"font-size", true},
{"font-size-adjust", true},
{"font-stretch", true},
{"font-style", true},
{"font-variant", true},
+ {"font-variant-ligatures", true},
+ {"font-variant-position", true},
+ {"font-variant-caps", true},
+ {"font-variant-numeric", true},
+ {"font-variant-east-asian", true},
+ {"font-variant-alternates", true},
{"font-weight", true},
{"format", false},
{"from", true},
@@ -288,6 +299,8 @@ struct {char const *attr; bool supported;} const all_attrs[] = {
{"text-decoration-line", true},
{"text-decoration-style", true},
{"text-decoration-color", true},
+ {"text-decoration-fill", true},
+ {"text-decoration-stroke", true},
{"text-indent", true},
{"text-rendering", true},
{"text-transform", true},
@@ -381,8 +394,11 @@ struct {char const *attr; bool supported;} const all_attrs[] = {
{"inkscape:pageopacity", true},
{"inkscape:pageshadow", true},
{"inkscape:path-effect", true},
+ // SPItem
{"inkscape:transform-center-x", true},
{"inkscape:transform-center-y", true},
+ {"inkscape:highlight-color", true},
+ // Namedview
{"inkscape:zoom", true},
{"inkscape:cx", true},
{"inkscape:cy", true},
@@ -392,6 +408,7 @@ struct {char const *attr; bool supported;} const all_attrs[] = {
{"inkscape:window-y", true},
{"inkscape:window-maximized", true},
{"inkscape:current-layer", true},
+ // Connector tool
{"inkscape:connector-type", true},
{"inkscape:connection-start", true},
{"inkscape:connection-end", true},
@@ -401,10 +418,12 @@ struct {char const *attr; bool supported;} const all_attrs[] = {
{"inkscape:connector-curvature", true},
{"inkscape:connector-avoid", true},
{"inkscape:connector-spacing", true},
+ // Ellipse, Spiral, Star
{"sodipodi:cx", true},
{"sodipodi:cy", true},
{"sodipodi:rx", true},
{"sodipodi:ry", true},
+ // Box tool
{"inkscape:perspectiveID", true},
{"inkscape:corner0", true},
{"inkscape:corner7", true},
@@ -414,6 +433,7 @@ struct {char const *attr; bool supported;} const all_attrs[] = {
{"inkscape:vp_y", true},
{"inkscape:vp_z", true},
{"inkscape:persp3d-origin", true},
+ // Star tool
{"sodipodi:start", true},
{"sodipodi:end", true},
{"sodipodi:open", true},
@@ -446,9 +466,19 @@ struct {char const *attr; bool supported;} const all_attrs[] = {
{"inkscape:layoutOptions", true},
{"osb:paint", true},
+ /* SPSolidColor" */
+ {"solid-color", true},
+ {"solid-opacity", true},
+
/* SPMeshPatch */
{"tensor", true},
+ /* SPHash */
+ {"hatchUnits", true},
+ {"hatchContentUnits", true},
+ {"hatchTransform", true},
+ {"pitch", true},
+
/* SPNamedView */
{"fit-margin-top", true},
{"fit-margin-left", true},
@@ -485,8 +515,10 @@ struct {char const *attr; bool supported;} const all_attrs[] = {
{"pagecolor", true},
/* SPGuide */
- {"position", true}
+ {"position", true},
+ /* SPTag */
+ {"inkscape:expanded", true}
};
diff --git a/src/desktop-style.cpp b/src/desktop-style.cpp
index afdc3064a..d2109c03c 100644
--- a/src/desktop-style.cpp
+++ b/src/desktop-style.cpp
@@ -576,8 +576,8 @@ objects_query_fillstroke (const std::vector<SPItem*> &objects, SPStyle *style_re
return QUERY_STYLE_MULTIPLE_DIFFERENT; // different kind of server
}
- SPPattern *pat = pattern_getroot (pattern);
- SPPattern *pat_res = pattern_getroot (pattern_res);
+ SPPattern *pat = SP_PATTERN (server)->rootPattern();
+ SPPattern *pat_res = SP_PATTERN (server_res)->rootPattern();
if (pat_res != pat) {
return QUERY_STYLE_MULTIPLE_DIFFERENT; // different pattern roots
}
@@ -1168,6 +1168,94 @@ objects_query_fontstyle (const std::vector<SPItem*> &objects, SPStyle *style_res
}
}
+int
+objects_query_fontvariants (const std::vector<SPItem*> &objects, SPStyle *style_res)
+{
+ bool set = false;
+
+ int texts = 0;
+
+ SPILigatures* ligatures_res = &(style_res->font_variant_ligatures);
+ SPIEnum* position_res = &(style_res->font_variant_position);
+ SPIEnum* caps_res = &(style_res->font_variant_caps);
+ SPINumeric* numeric_res = &(style_res->font_variant_numeric);
+
+ // Stores 'and' of all values
+ ligatures_res->computed = SP_CSS_FONT_VARIANT_LIGATURES_NORMAL;
+ position_res->computed = SP_CSS_FONT_VARIANT_POSITION_NORMAL;
+ caps_res->computed = SP_CSS_FONT_VARIANT_CAPS_NORMAL;
+ numeric_res->computed = SP_CSS_FONT_VARIANT_NUMERIC_NORMAL;
+
+ // Stores only differences
+ ligatures_res->value = 0;
+ position_res->value = 0;
+ caps_res->value = 0;
+ numeric_res->value = 0;
+
+ for (std::vector<SPItem*>::const_iterator i = objects.begin(); i != objects.end(); i++) {
+ SPObject *obj = *i;
+
+ if (!isTextualItem(obj)) {
+ continue;
+ }
+
+ SPStyle *style = obj->style;
+ if (!style) {
+ continue;
+ }
+
+ texts ++;
+
+ SPILigatures* ligatures_in = &(style->font_variant_ligatures);
+ SPIEnum* position_in = &(style->font_variant_position);
+ SPIEnum* caps_in = &(style->font_variant_caps);
+ SPINumeric* numeric_in = &(style->font_variant_numeric);
+ // computed stores which bits are on/off, only valid if same between all selected objects.
+ // value stores which bits are different between objects. This is a bit of an abuse of
+ // the values but then we don't need to add new variables to class.
+ if (set) {
+ ligatures_res->value |= (ligatures_res->computed ^ ligatures_in->computed );
+ ligatures_res->computed &= ligatures_in->computed;
+
+ position_res->value |= (position_res->computed ^ position_in->computed );
+ position_res->computed &= position_in->computed;
+
+ caps_res->value |= (caps_res->computed ^ caps_in->computed );
+ caps_res->computed &= caps_in->computed;
+
+ numeric_res->value |= (numeric_res->computed ^ numeric_in->computed );
+ numeric_res->computed &= numeric_in->computed;
+
+ } else {
+ ligatures_res->computed = ligatures_in->computed;
+ position_res->computed = position_in->computed;
+ caps_res->computed = caps_in->computed;
+ numeric_res->computed = numeric_in->computed;
+ }
+
+ set = true;
+ }
+
+ bool different = (style_res->font_variant_ligatures.value != 0 ||
+ style_res->font_variant_position.value != 0 ||
+ style_res->font_variant_caps.value != 0 ||
+ style_res->font_variant_numeric.value != 0 );
+
+ if (texts == 0 || !set)
+ return QUERY_STYLE_NOTHING;
+
+ if (texts > 1) {
+ if (different) {
+ return QUERY_STYLE_MULTIPLE_DIFFERENT;
+ } else {
+ return QUERY_STYLE_MULTIPLE_SAME;
+ }
+ } else {
+ return QUERY_STYLE_SINGLE;
+ }
+}
+
+
/**
* Write to style_res the baseline numbers.
*/
@@ -1577,6 +1665,8 @@ sp_desktop_query_style_from_list (const std::vector<SPItem*> &list, SPStyle *sty
return objects_query_fontfamily (list, style);
} else if (property == QUERY_STYLE_PROPERTY_FONTSTYLE) {
return objects_query_fontstyle (list, style);
+ } else if (property == QUERY_STYLE_PROPERTY_FONTVARIANTS) {
+ return objects_query_fontvariants (list, style);
} else if (property == QUERY_STYLE_PROPERTY_FONTNUMBERS) {
return objects_query_fontnumbers (list, style);
} else if (property == QUERY_STYLE_PROPERTY_BASELINES) {
@@ -1598,6 +1688,7 @@ sp_desktop_query_style_from_list (const std::vector<SPItem*> &list, SPStyle *sty
int
sp_desktop_query_style(SPDesktop *desktop, SPStyle *style, int property)
{
+ // Used by text tool and in gradient dragging
int ret = desktop->_query_style_signal.emit(style, property);
if (ret != QUERY_STYLE_NOTHING)
diff --git a/src/desktop-style.h b/src/desktop-style.h
index a72f49776..e5fe50440 100644
--- a/src/desktop-style.h
+++ b/src/desktop-style.h
@@ -47,6 +47,7 @@ enum { // which property was queried (add when you need more)
QUERY_STYLE_PROPERTY_FONT_SPECIFICATION, //-inkscape-font-specification
QUERY_STYLE_PROPERTY_FONTFAMILY, // font-family
QUERY_STYLE_PROPERTY_FONTSTYLE, // font style
+ QUERY_STYLE_PROPERTY_FONTVARIANTS, // font variants (OpenType features)
QUERY_STYLE_PROPERTY_FONTNUMBERS, // size, spacings
QUERY_STYLE_PROPERTY_BASELINES, // baseline-shift
QUERY_STYLE_PROPERTY_MASTEROPACITY, // opacity
@@ -71,6 +72,7 @@ int objects_query_fillstroke (const std::vector<SPItem*> &objects, SPStyle *styl
int objects_query_fontnumbers (const std::vector<SPItem*> &objects, SPStyle *style_res);
int objects_query_fontstyle (const std::vector<SPItem*> &objects, SPStyle *style_res);
int objects_query_fontfamily (const std::vector<SPItem*> &objects, SPStyle *style_res);
+int objects_query_fontvariants (const std::vector<SPItem*> &objects, SPStyle *style_res);
int objects_query_opacity (const std::vector<SPItem*> &objects, SPStyle *style_res);
int objects_query_strokewidth (const std::vector<SPItem*> &objects, SPStyle *style_res);
int objects_query_miterlimit (const std::vector<SPItem*> &objects, SPStyle *style_res);
diff --git a/src/display/drawing-text.cpp b/src/display/drawing-text.cpp
index e20a7ff2a..3928ad796 100644
--- a/src/display/drawing-text.cpp
+++ b/src/display/drawing-text.cpp
@@ -367,7 +367,7 @@ void DrawingText::decorateStyle(DrawingContext &dc, double vextent, double xphas
/* returns scaled line thickness */
void DrawingText::decorateItem(DrawingContext &dc, double phase_length, bool under)
{
- if (_nrstyle.font_size < 1.0e-32)return; // would cause a divide by zero and nothing would be visible anyway
+ if ( _nrstyle.font_size <= 1.0e-32 )return; // might cause a divide by zero or overflow and nothing would be visible anyway
double tsp_width_adj = _nrstyle.tspan_width / _nrstyle.font_size;
double tsp_asc_adj = _nrstyle.ascender / _nrstyle.font_size;
double tsp_size_adj = (_nrstyle.ascender + _nrstyle.descender) / _nrstyle.font_size;
@@ -381,6 +381,7 @@ void DrawingText::decorateItem(DrawingContext &dc, double phase_length, bool und
Geom::Point p2;
// All lines must be the same thickness, in combinations, line_through trumps underline
double thickness = final_underline_thickness;
+ if ( thickness <= 1.0e-32 )return; // might cause a divide by zero or overflow and nothing would be visible anyway
dc.setTolerance(0.5); // Is this really necessary... could effect dots.
if( under ) {
diff --git a/src/extension/CMakeLists.txt b/src/extension/CMakeLists.txt
index d1104f3cc..21e652563 100644
--- a/src/extension/CMakeLists.txt
+++ b/src/extension/CMakeLists.txt
@@ -36,7 +36,6 @@ set(extension_SRC
internal/cairo-render-context.cpp
internal/cairo-renderer.cpp
internal/cairo-renderer-pdf-out.cpp
- internal/cdr-input.cpp
internal/emf-inout.cpp
internal/emf-print.cpp
internal/gdkpixbuf-input.cpp
@@ -54,10 +53,8 @@ set(extension_SRC
internal/svg.cpp
internal/svgz.cpp
internal/text_reassemble.c
- internal/vsd-input.cpp
internal/wmf-inout.cpp
internal/wmf-print.cpp
- internal/wpg-input.cpp
internal/filter/filter-all.cpp
internal/filter/filter-file.cpp
@@ -104,7 +101,6 @@ set(extension_SRC
internal/cairo-render-context.h
internal/cairo-renderer-pdf-out.h
internal/cairo-renderer.h
- internal/cdr-input.h
internal/clear-n_.h
internal/emf-inout.h
internal/emf-print.h
@@ -140,10 +136,8 @@ set(extension_SRC
internal/svg.h
internal/svgz.h
internal/text_reassemble.h
- internal/vsd-input.h
internal/wmf-inout.h
internal/wmf-print.h
- internal/wpg-input.h
)
if(WIN32)
@@ -151,6 +145,20 @@ if(WIN32)
)
endif()
+if(WITH_LIBCDR)
+ list(APPEND extension_SRC
+ internal/cdr-input.cpp
+ internal/cdr-input.h
+ )
+endif()
+
+if(WITH_LIBVISIO)
+ list(APPEND extension_SRC
+ internal/vsd-input.cpp
+ internal/vsd-input.h
+ )
+endif()
+
if(WITH_LIBWPG)
list(APPEND extension_SRC
internal/wpg-input.cpp
@@ -158,7 +166,7 @@ if(WITH_LIBWPG)
)
endif()
-if(ImageMagick_FOUND)
+if(WITH_IMAGE_MAGICK)
list(APPEND extension_SRC
internal/bitmap/adaptiveThreshold.cpp
internal/bitmap/adaptiveThreshold.h
diff --git a/src/extension/internal/cairo-render-context.cpp b/src/extension/internal/cairo-render-context.cpp
index 27e34dbcf..c3e416184 100644
--- a/src/extension/internal/cairo-render-context.cpp
+++ b/src/extension/internal/cairo-render-context.cpp
@@ -1008,17 +1008,16 @@ CairoRenderContext::_createPatternPainter(SPPaintServer const *const paintserver
ps2user = Geom::identity();
pcs2dev = Geom::identity();
- double x = pattern_x(pat);
- double y = pattern_y(pat);
- double width = pattern_width(pat);
- double height = pattern_height(pat);
+ double x = pat->x();
+ double y = pat->y();
+ double width = pat->width();
+ double height = pat->height();
double bbox_width_scaler;
double bbox_height_scaler;
TRACE(("%f x %f pattern\n", width, height));
- if (pbox && pattern_patternUnits(pat) == SP_PATTERN_UNITS_OBJECTBOUNDINGBOX) {
- //Geom::Affine bbox2user (pbox->x1 - pbox->x0, 0.0, 0.0, pbox->y1 - pbox->y0, pbox->x0, pbox->y0);
+ if (pbox && pat->patternUnits() == SPPattern::UNITS_OBJECTBOUNDINGBOX) {
bbox_width_scaler = pbox->width();
bbox_height_scaler = pbox->height();
ps2user[4] = x * bbox_width_scaler + pbox->left();
@@ -1031,13 +1030,13 @@ CairoRenderContext::_createPatternPainter(SPPaintServer const *const paintserver
}
// apply pattern transformation
- Geom::Affine pattern_transform(pattern_patternTransform(pat));
+ Geom::Affine pattern_transform(pat->getTransform());
ps2user *= pattern_transform;
Geom::Point ori (ps2user[4], ps2user[5]);
// create pattern contents coordinate system
if (pat->viewBox_set) {
- Geom::Rect view_box = *pattern_viewBox(pat);
+ Geom::Rect view_box = *pat->viewbox();
double x, y, w, h;
x = 0;
@@ -1050,7 +1049,7 @@ CairoRenderContext::_createPatternPainter(SPPaintServer const *const paintserver
pcs2dev[3] = h / view_box.height();
pcs2dev[4] = x - view_box.left() * pcs2dev[0];
pcs2dev[5] = y - view_box.top() * pcs2dev[3];
- } else if (pbox && pattern_patternContentUnits(pat) == SP_PATTERN_UNITS_OBJECTBOUNDINGBOX) {
+ } else if (pbox && pat->patternContentUnits() == SPPattern::UNITS_OBJECTBOUNDINGBOX) {
pcs2dev[0] = pbox->width();
pcs2dev[3] = pbox->height();
}
diff --git a/src/extension/internal/emf-print.cpp b/src/extension/internal/emf-print.cpp
index 7c514d6e7..5b8aae655 100644
--- a/src/extension/internal/emf-print.cpp
+++ b/src/extension/internal/emf-print.cpp
@@ -388,8 +388,8 @@ int PrintEmf::create_brush(SPStyle const *style, PU_COLORREF fcolor)
} else if (SP_IS_PATTERN(SP_STYLE_FILL_SERVER(style))) { // must be paint-server
SPPaintServer *paintserver = style->fill.value.href->getObject();
SPPattern *pat = SP_PATTERN(paintserver);
- double dwidth = pattern_width(pat);
- double dheight = pattern_height(pat);
+ double dwidth = pat->width();
+ double dheight = pat->height();
width = dwidth;
height = dheight;
brush_classify(pat, 0, &pixbuf, &hatchType, &hatchColor, &bkColor);
@@ -573,8 +573,8 @@ int PrintEmf::create_pen(SPStyle const *style, const Geom::Affine &transform)
if (SP_IS_PATTERN(SP_STYLE_STROKE_SERVER(style))) { // must be paint-server
SPPaintServer *paintserver = style->stroke.value.href->getObject();
SPPattern *pat = SP_PATTERN(paintserver);
- double dwidth = pattern_width(pat);
- double dheight = pattern_height(pat);
+ double dwidth = pat->width();
+ double dheight = pat->height();
width = dwidth;
height = dheight;
brush_classify(pat, 0, &pixbuf, &hatchType, &hatchColor, &bkColor);
diff --git a/src/extension/internal/filter/color.h b/src/extension/internal/filter/color.h
index c3c26bf8b..b9c76615c 100644
--- a/src/extension/internal/filter/color.h
+++ b/src/extension/internal/filter/color.h
@@ -258,7 +258,7 @@ public:
"<param name=\"type\" gui-text=\"" N_("Blindness type:") "\" type=\"enum\">\n"
"<_item value=\"0.618 0.32 0.062 0 0 0.163 0.775 0.062 0 0 0.163 0.32 0.516 0 0 0 0 0 1 0 \">" N_("Rod monochromacy (atypical achromatopsia)") "</_item>\n"
"<_item value=\"0.299 0.587 0.114 0 0 0.299 0.587 0.114 0 0 0.299 0.587 0.114 0 0 0 0 0 1 0 \">" N_("Cone monochromacy (typical achromatopsia)") "</_item>\n"
- "<_item value=\"0.8 0.2 0 0 0 0.2583 0.74167 0 0 0 0 0.14167 0.85833 0 0 0 0 0 1 0 \">" N_("Geen weak (deuteranomaly)") "</_item>\n"
+ "<_item value=\"0.8 0.2 0 0 0 0.2583 0.74167 0 0 0 0 0.14167 0.85833 0 0 0 0 0 1 0 \">" N_("Green weak (deuteranomaly)") "</_item>\n"
"<_item value=\"0.625 0.375 0 0 0 0.7 0.3 0 0 0 0 0.3 0.7 0 0 0 0 0 1 0 \">" N_("Green blind (deuteranopia)") "</_item>\n"
"<_item value=\"0.8166 0.1833 0 0 0 0.333 0.666 0 0 0 0 0.125 0.875 0 0 0 0 0 1 0 \">" N_("Red weak (protanomaly)") "</_item>\n"
"<_item value=\"0.566 0.43333 0 0 0 0.55833 0.4416 0 0 0 0 0.24167 0.75833 0 0 0 0 0 1 0 \">" N_("Red blind (protanopia)") "</_item>\n"
diff --git a/src/extension/internal/text_reassemble.c b/src/extension/internal/text_reassemble.c
index d3aafef12..fa983b83d 100644
--- a/src/extension/internal/text_reassemble.c
+++ b/src/extension/internal/text_reassemble.c
@@ -67,8 +67,8 @@ Optional compiler switches for development:
File: text_reassemble.c
-Version: 0.0.16
-Date: 25-FEB-2015
+Version: 0.0.17
+Date: 21-MAY-2015
Author: David Mathog, Biology Division, Caltech
email: mathog@caltech.edu
Copyright: 2015 David Mathog and California Institute of Technology (Caltech)
@@ -2204,10 +2204,10 @@ void TR_layout_2_svg(TR_INFO *tri){
sprintf(obuf,"text-decoration:");
/* multiple text decoration styles may be set */
utmp = tsp->decoration & TXTDECOR_TMASK;
- if(utmp & TXTDECOR_UNDER ){ strcat(obuf,"underline"); }
- if(utmp & TXTDECOR_OVER ){ strcat(obuf,"overline"); }
- if(utmp & TXTDECOR_BLINK ){ strcat(obuf,"blink"); }
- if(utmp & TXTDECOR_STRIKE){ strcat(obuf,"line-through");}
+ if(utmp & TXTDECOR_UNDER ){ strcat(obuf," underline"); }
+ if(utmp & TXTDECOR_OVER ){ strcat(obuf," overline"); }
+ if(utmp & TXTDECOR_BLINK ){ strcat(obuf," blink"); }
+ if(utmp & TXTDECOR_STRIKE){ strcat(obuf," line-through");}
if(*obuf){
/* only a single text decoration line type may be set */
switch(tsp->decoration & TXTDECOR_LMASK){
diff --git a/src/extension/internal/wmf-inout.cpp b/src/extension/internal/wmf-inout.cpp
index f76fa16b4..d17180d91 100644
--- a/src/extension/internal/wmf-inout.cpp
+++ b/src/extension/internal/wmf-inout.cpp
@@ -449,7 +449,8 @@ uint32_t Wmf::add_dib_image(PWMF_CALLBACK_DATA d, const char *dib, uint32_t iUsa
char *rgba_px = NULL; // RGBA pixels
const char *px = NULL; // DIB pixels
const U_RGBQUAD *ct = NULL; // DIB color table
- int32_t width, height, colortype, numCt, invert; // if needed these values will be set by wget_DIB_params
+ uint32_t numCt;
+ int32_t width, height, colortype, invert; // if needed these values will be set by wget_DIB_params
if(iUsage == U_DIB_RGB_COLORS){
// next call returns pointers and values, but allocates no memory
dibparams = wget_DIB_params(dib, &px, &ct, &numCt, &width, &height, &colortype, &invert);
@@ -1318,7 +1319,8 @@ void Wmf::common_dib_to_image(PWMF_CALLBACK_DATA d, const char *dib,
char *sub_px = NULL; // RGBA pixels, subarray
const char *px = NULL; // DIB pixels
const U_RGBQUAD *ct = NULL; // color table
- int32_t width, height, colortype, numCt, invert; // if needed these values will be set in wget_DIB_params
+ uint32_t numCt;
+ int32_t width, height, colortype, invert; // if needed these values will be set in wget_DIB_params
if(iUsage == U_DIB_RGB_COLORS){
// next call returns pointers and values, but allocates no memory
dibparams = wget_DIB_params(dib, &px, &ct, &numCt, &width, &height, &colortype, &invert);
diff --git a/src/extension/internal/wmf-print.cpp b/src/extension/internal/wmf-print.cpp
index 127030832..271dec702 100644
--- a/src/extension/internal/wmf-print.cpp
+++ b/src/extension/internal/wmf-print.cpp
@@ -379,8 +379,8 @@ int PrintWmf::create_brush(SPStyle const *style, U_COLORREF *fcolor)
} else if (SP_IS_PATTERN(SP_STYLE_FILL_SERVER(style))) { // must be paint-server
SPPaintServer *paintserver = style->fill.value.href->getObject();
SPPattern *pat = SP_PATTERN(paintserver);
- double dwidth = pattern_width(pat);
- double dheight = pattern_height(pat);
+ double dwidth = pat->width();
+ double dheight = pat->height();
width = dwidth;
height = dheight;
brush_classify(pat, 0, &pixbuf, &hatchType, &hatchColor, &bkColor);
diff --git a/src/extension/param/color.cpp b/src/extension/param/color.cpp
index b774bac83..3162e8a40 100644
--- a/src/extension/param/color.cpp
+++ b/src/extension/param/color.cpp
@@ -24,41 +24,37 @@
#include "color.h"
#include <color.h>
-#include "widgets/sp-color-selector.h"
-#include "widgets/sp-color-notebook.h"
+#include "ui/widget/color-notebook.h"
#include "preferences.h"
-
namespace Inkscape {
namespace Extension {
-void sp_color_param_changed(SPColorSelector *csel, GObject *cp);
-
-
ParamColor::~ParamColor(void)
{
-
+ _color_changed.disconnect();
}
guint32 ParamColor::set( guint32 in, SPDocument * /*doc*/, Inkscape::XML::Node * /*node*/ )
{
- _value = in;
+ _color_changed.block(true);
+ _color.setValue(in);
+ _color_changed.block(false);
gchar * prefname = this->pref_name();
std::string value;
string(value);
-
+
Inkscape::Preferences *prefs = Inkscape::Preferences::get();
prefs->setString(extension_pref_root + prefname, value);
g_free(prefname);
- return _value;
+ return in;
}
-ParamColor::ParamColor(const gchar *name, const gchar *guitext, const gchar *desc, const Parameter::_scope_t scope,
- bool gui_hidden, const gchar *gui_tip, Inkscape::Extension::Extension *ext,
- Inkscape::XML::Node *xml)
- : Parameter(name, guitext, desc, scope, gui_hidden, gui_tip, ext), _value(0), _changeSignal(0)
+ParamColor::ParamColor (const gchar * name, const gchar * guitext, const gchar * desc, const Parameter::_scope_t scope, bool gui_hidden, const gchar * gui_tip, Inkscape::Extension::Extension * ext, Inkscape::XML::Node * xml) :
+ Parameter(name, guitext, desc, scope, gui_hidden, gui_tip, ext),
+ _changeSignal(0)
{
const char * defaulthex = NULL;
if (xml->firstChild() != NULL)
@@ -72,51 +68,46 @@ ParamColor::ParamColor(const gchar *name, const gchar *guitext, const gchar *des
if (!paramval.empty())
defaulthex = paramval.data();
- if (defaulthex)
- _value = atoi(defaulthex);
+ if (defaulthex) {
+ _color.setValue(atoi(defaulthex));
+ }
+ _color_changed = _color.signal_changed.connect(sigc::mem_fun(this, &ParamColor::_onColorChanged));
+
}
void ParamColor::string(std::string &string) const
{
char str[16];
- sprintf(str, "%i", _value);
+ snprintf(str, 16, "%i", _color.value());
string += str;
}
Gtk::Widget *ParamColor::get_widget( SPDocument * /*doc*/, Inkscape::XML::Node * /*node*/, sigc::signal<void> * changeSignal )
{
- if (_gui_hidden) return NULL;
+ using Inkscape::UI::Widget::ColorNotebook;
+
+ if (_gui_hidden) return NULL;
_changeSignal = new sigc::signal<void>(*changeSignal);
- Gtk::HBox * hbox = Gtk::manage(new Gtk::HBox(false, 4));
- SPColorSelector* spColorSelector = (SPColorSelector*)sp_color_selector_new(SP_TYPE_COLOR_NOTEBOOK);
- ColorSelector* colorSelector = spColorSelector->base;
- if (_value < 1) {
- _value = 0xFF000000;
+ if (_color.value() < 1) {
+ _color_changed.block(true);
+ _color.setValue(0xFF000000);
+ _color_changed.block(false);
}
- SPColor *color = new SPColor( _value );
- float alpha = (_value & 0xff) / 255.0F;
- colorSelector->setColorAlpha(*color, alpha);
-
- hbox->pack_start (*Glib::wrap(&spColorSelector->vbox), true, true, 0);
- g_signal_connect(G_OBJECT(spColorSelector), "changed", G_CALLBACK(sp_color_param_changed), (void*)this);
- gtk_widget_show(GTK_WIDGET(spColorSelector));
+ Gtk::HBox *hbox = Gtk::manage(new Gtk::HBox(false, 4));
+ Gtk::Widget *selector = Gtk::manage(new ColorNotebook(_color));
+ hbox->pack_start (*selector, true, true, 0);
+ selector->show();
hbox->show();
-
- return dynamic_cast<Gtk::Widget *>(hbox);
+ return hbox;
}
-void sp_color_param_changed(SPColorSelector *csel, GObject *obj)
+void ParamColor::_onColorChanged()
{
- const SPColor color = csel->base->getColor();
- float alpha = csel->base->getAlpha();
-
- ParamColor* ptr = reinterpret_cast<ParamColor*>(obj);
- ptr->set(color.toRGBA32( alpha ), NULL, NULL);
-
- ptr->_changeSignal->emit();
+ if (_changeSignal)
+ _changeSignal->emit();
}
}; /* namespace Extension */
diff --git a/src/extension/param/color.h b/src/extension/param/color.h
index 9894965a9..ed2e57ceb 100644
--- a/src/extension/param/color.h
+++ b/src/extension/param/color.h
@@ -9,6 +9,7 @@
*/
#include "parameter.h"
+#include "ui/selected-color.h"
class SPDocument;
@@ -25,14 +26,17 @@ namespace Extension {
class ParamColor : public Parameter {
private:
- guint32 _value;
+ void _onColorChanged();
+
+ Inkscape::UI::SelectedColor _color;
+ sigc::connection _color_changed;
public:
ParamColor(const gchar * name, const gchar * guitext, const gchar * desc, const Parameter::_scope_t scope, bool gui_hidden, const gchar * gui_tip, Inkscape::Extension::Extension * ext, Inkscape::XML::Node * xml);
virtual ~ParamColor(void);
/** Returns \c _value, with a \i const to protect it. */
- guint32 get( SPDocument const * /*doc*/, Inkscape::XML::Node const * /*node*/ ) const { return _value; }
+ guint32 get( SPDocument const * /*doc*/, Inkscape::XML::Node const * /*node*/ ) const { return _color.value(); }
guint32 set (guint32 in, SPDocument * doc, Inkscape::XML::Node * node);
@@ -44,6 +48,7 @@ public:
virtual void string (std::string &string) const;
sigc::signal<void> * _changeSignal;
+
}; // class ParamColor
} // namespace Extension
diff --git a/src/extension/param/parameter.cpp b/src/extension/param/parameter.cpp
index 202b8110f..8c99ee55d 100644
--- a/src/extension/param/parameter.cpp
+++ b/src/extension/param/parameter.cpp
@@ -15,6 +15,10 @@
# include "config.h"
#endif
+#if GLIBMM_DISABLE_DEPRECATED && HAVE_GLIBMM_THREADS_H
+#include <glibmm/threads.h>
+#endif
+
#ifdef linux // does the dollar sign need escaping when passed as string parameter?
# define ESCAPE_DOLLAR_COMMANDLINE
#endif
@@ -26,8 +30,7 @@
#include "document-private.h"
#include "sp-object.h"
#include <color.h>
-#include "widgets/sp-color-selector.h"
-#include "widgets/sp-color-notebook.h"
+#include "ui/widget/color-notebook.h"
#include "parameter.h"
#include "bool.h"
diff --git a/src/knot-holder-entity.cpp b/src/knot-holder-entity.cpp
index b66156b09..173025920 100644
--- a/src/knot-holder-entity.cpp
+++ b/src/knot-holder-entity.cpp
@@ -140,19 +140,19 @@ KnotHolderEntity::snap_knot_position_constrained(Geom::Point const &p, Inkscape:
static gdouble sp_pattern_extract_theta(SPPattern const *pat)
{
- Geom::Affine transf = pat->patternTransform;
+ Geom::Affine transf = pat->getTransform();
return Geom::atan2(transf.xAxis());
}
static Geom::Point sp_pattern_extract_scale(SPPattern const *pat)
{
- Geom::Affine transf = pat->patternTransform;
+ Geom::Affine transf = pat->getTransform();
return Geom::Point( transf.expansionX(), transf.expansionY() );
}
static Geom::Point sp_pattern_extract_trans(SPPattern const *pat)
{
- return Geom::Point(pat->patternTransform[4], pat->patternTransform[5]);
+ return Geom::Point(pat->getTransform()[4], pat->getTransform()[5]);
}
void
@@ -191,7 +191,7 @@ PatternKnotHolderEntityAngle::knot_get() const
{
SPPattern *pat = _fill ? SP_PATTERN(item->style->getFillPaintServer()) : SP_PATTERN(item->style->getStrokePaintServer());
- gdouble x = pattern_width(pat);
+ gdouble x = pat->width();
gdouble y = 0;
Geom::Point delta = Geom::Point(x,y);
Geom::Point scale = sp_pattern_extract_scale(pat);
@@ -240,8 +240,8 @@ PatternKnotHolderEntityScale::knot_set(Geom::Point const &p, Geom::Point const &
// Get the new scale from the position of the knotholder
Geom::Point d = p_snapped - sp_pattern_extract_trans(pat);
- gdouble pat_x = pattern_width(pat);
- gdouble pat_y = pattern_height(pat);
+ gdouble pat_x = pat->width();
+ gdouble pat_y = pat->height();
Geom::Scale scl(1);
if ( state & GDK_CONTROL_MASK ) {
// if ctrl is pressed: use 1:1 scaling
@@ -267,10 +267,10 @@ PatternKnotHolderEntityScale::knot_get() const
{
SPPattern *pat = _fill ? SP_PATTERN(item->style->getFillPaintServer()) : SP_PATTERN(item->style->getStrokePaintServer());
- gdouble x = pattern_width(pat);
- gdouble y = pattern_height(pat);
+ gdouble x = pat->width();
+ gdouble y = pat->height();
Geom::Point delta = Geom::Point(x,y);
- Geom::Affine a = pat->patternTransform;
+ Geom::Affine a = pat->getTransform();
a[4] = 0;
a[5] = 0;
delta = delta * a;
diff --git a/src/libnrtype/font-lister.cpp b/src/libnrtype/font-lister.cpp
index a6ab3b239..70374864a 100644
--- a/src/libnrtype/font-lister.cpp
+++ b/src/libnrtype/font-lister.cpp
@@ -335,7 +335,7 @@ Glib::ustring FontLister::system_fontspec(Glib::ustring fontspec)
PangoFontDescription *descr = pango_font_description_from_string(fontspec.c_str());
font_instance *res = (font_factory::Default())->Face(descr);
- if (res->pFont) {
+ if (res && res->pFont) {
PangoFontDescription *nFaceDesc = pango_font_describe(res->pFont);
out = sp_font_description_get_family(nFaceDesc);
}
diff --git a/src/libuemf/uemf.h b/src/libuemf/uemf.h
index 53426cb55..f6ed7da03 100644
--- a/src/libuemf/uemf.h
+++ b/src/libuemf/uemf.h
@@ -95,8 +95,8 @@ these WMF enumerations is by referencing the following table:
/*
File: uemf.h
-Version: 0.0.31
-Date: 23-APR-2015
+Version: 0.0.32
+Date: 28-APR-2015
Author: David Mathog, Biology Division, Caltech
email: mathog@caltech.edu
Copyright: 2015 David Mathog and California Institute of Technology (Caltech)
@@ -168,7 +168,12 @@ extern "C" {
#define U_ROUND(A) ( (A) > 0 ? floor((A)+0.5) : ( (A) < 0 ? -floor(-(A)+0.5) : (A) ) )
#define MAKE_MIN_PTR(A,B) ( A < B ? A : B)
-#define IS_MEM_UNSAFE(A,B,C) ( (int8_t *)(A) > (int8_t *)(C) ? 1 : ((int8_t *)(C) - (int8_t *)(A) >= (int)(B) ? 0 : 1 )) //!< Return 1 when a region of memory starting at A of B bytes extends beyond pointer C
+/* This is tricky. The next one can be called with a size which is either an int or an unsigned int.
+ The former can be negative, which is obviously wrong, but testing for that means that the size cannot
+ be more than INT_MAX/2. Accept that limitation since no reasonable EMF record or file should ever be that large.
+ B must be an INT or size_t.
+ If a uint16_t is used gcc complains about the first test. Force B to be at least as big as int (at run time) */
+#define IS_MEM_UNSAFE(A,B,C) ( (sizeof(B) < sizeof(int) || (int)(B)) < 0 ? 1 : ((int8_t *)(A) > (int8_t *)(C) ? 1 : ((int8_t *)(C) - (int8_t *)(A) >= (int)(B) ? 0 : 1 ))) //!< Return 1 when a region of memory starting at A of B bytes extends beyond pointer C
/** @} */
diff --git a/src/libuemf/uemf_print.c b/src/libuemf/uemf_print.c
index adcf54c0f..4bc9f0206 100644
--- a/src/libuemf/uemf_print.c
+++ b/src/libuemf/uemf_print.c
@@ -6,8 +6,8 @@
/*
File: uemf_print.c
-Version: 0.0.18
-Date: 25-MAR-2015
+Version: 0.0.20
+Date: 21-MAY-2015
Author: David Mathog, Biology Division, Caltech
email: mathog@caltech.edu
Copyright: 2015 David Mathog and California Institute of Technology (Caltech)
@@ -35,6 +35,31 @@ void U_swap4(void *ul, unsigned int count);
//! \endcond
/**
+ \brief calculate a CRC32 value for record
+ \returns CRC32 value calculated for record
+ \param record pointer to the first byte
+ \param Size number of bytes in the record
+
+Code based on example crc32b here:
+ http://www.hackersdelight.org/hdcodetxt/crc.c.txt
+*/
+uint32_t lu_crc32(const char *record, uint32_t Size){
+ const unsigned char *message = record;
+ uint32_t i, j;
+ uint32_t crc, mask;
+
+ crc = 0xFFFFFFFF;
+ for(i=0;i<Size;i++){ // over all bytes
+ crc = crc ^ *message++;
+ for (j = 0; j < 8; j++) { // over all bits
+ mask = -(crc & 1);
+ crc = (crc >> 1) ^ (0xEDB88320 & mask);
+ }
+ }
+ return ~crc;
+}
+
+/**
\brief Print some number of hex bytes
\param buf pointer to the first byte
\param num number of bytes
@@ -45,6 +70,7 @@ void hexbytes_print(uint8_t *buf,unsigned int num){
}
}
+
/* **********************************************************************************************
These functions print standard objects used in the EMR records.
The low level ones do not append EOL.
@@ -2505,7 +2531,7 @@ int U_emf_onerec_print(const char *contents, const char *blimit, int recnum, siz
uint32_t nSize;
uint32_t iType;
const char *record = contents + off;
-
+
if(record < contents)return(-1); // offset wrapped
/* Check that COMMON data in record can be touched without an access violation. If it cannot be
@@ -2514,7 +2540,21 @@ int U_emf_onerec_print(const char *contents, const char *blimit, int recnum, siz
*/
if(!U_emf_record_sizeok(record, blimit, &nSize, &iType, 1))return(-1);
- printf("%-30srecord:%5d type:%-4d offset:%8d rsize:%8d\n",U_emr_names(iType),recnum,iType,(int) off,nSize);
+ uint32_t crc;
+#if U_BYTE_SWAP
+ //This is a Big Endian machine, EMF crc values must be calculated on Little Endian form
+ char *swapbuf=malloc(nSize);
+ if(!swapbuf)return(-1);
+ memcpy(swapbuf,record,nSize);
+ U_emf_endian(swapbuf,nSize,1); // BE to LE
+ crc=lu_crc32(swapbuf,nSize);
+ free(swapbuf);
+#else
+ crc=lu_crc32(record,nSize);
+#endif
+ printf("%-30srecord:%5d type:%-4d offset:%8d rsize:%8d crc32:%8.8X\n",
+ U_emr_names(iType),recnum,iType,(int) off,nSize,crc);
+
fflush(stdout);
/* print the record header before checking further.
diff --git a/src/libuemf/uemf_print.h b/src/libuemf/uemf_print.h
index 6568b4cfa..088a8a302 100644
--- a/src/libuemf/uemf_print.h
+++ b/src/libuemf/uemf_print.h
@@ -6,8 +6,8 @@
/*
File: uemf_print.h
-Version: 0.0.7
-Date: 24-MAR-2015
+Version: 0.0.9
+Date: 21-MAY-2015
Author: David Mathog, Biology Division, Caltech
email: mathog@caltech.edu
Copyright: 2015 David Mathog and California Institute of Technology (Caltech)
@@ -21,6 +21,9 @@ extern "C" {
#endif
//! \cond
+/* prototypes for miscellaneous */
+uint32_t lu_crc32(const char *record, uint32_t Size);
+
/* prototypes for objects used in EMR records */
void hexbytes_print(uint8_t *buf,unsigned int num);
void colorref_print(U_COLORREF color);
diff --git a/src/libuemf/upmf.c b/src/libuemf/upmf.c
index 7d6349185..2ba818fa4 100644
--- a/src/libuemf/upmf.c
+++ b/src/libuemf/upmf.c
@@ -21,8 +21,8 @@
/*
File: upmf.c
-Version: 0.0.9
-Date: 25-MAR-2015
+Version: 0.0.10
+Date: 27-APR-2015
Author: David Mathog, Biology Division, Caltech
email: mathog@caltech.edu
Copyright: 2015 David Mathog and California Institute of Technology (Caltech)
@@ -6575,15 +6575,17 @@ int U_PMF_VARPOINTS_get(const char *contents, uint16_t Flags, int Elements, U_PM
}
}
else if(Flags & U_PPF_C){
- for(XFS = YFS = 0.0; Elements; Elements--, pts++){
+ for(XF = YF = 0.0; Elements; Elements--, pts++){
if(!U_PMF_POINT_get(&contents, &XF, &XF, blimit))break; /* this should never happen */
pts->X = XF;
pts->Y = YF;
}
}
else {
- for(XFS = YFS = 0.0; Elements; Elements--, pts++){
- (void) U_PMF_POINTF_get(&contents, &(pts->X), &(pts->Y), blimit);
+ for(XF = YF = 0.0; Elements; Elements--, pts++){
+ (void) U_PMF_POINTF_get(&contents, &XF, &YF, blimit);
+ pts->X = XF;
+ pts->Y = YF;
}
}
if(Elements){ /* some error in the preceding */
diff --git a/src/libuemf/upmf_print.c b/src/libuemf/upmf_print.c
index 7d9598b0d..58ff4edd0 100644
--- a/src/libuemf/upmf_print.c
+++ b/src/libuemf/upmf_print.c
@@ -6,8 +6,8 @@
/*
File: upmf_print.c
-Version: 0.0.5
-Date: 24-MAR-2015
+Version: 0.0.7
+Date: 21-MAY-2015
Author: David Mathog, Biology Division, Caltech
email: mathog@caltech.edu
Copyright: 2015 David Mathog and California Institute of Technology (Caltech)
@@ -142,7 +142,7 @@ int U_pmf_onerec_print(const char *contents, const char *blimit, int recnum, int
int type = Header.Type & U_PMR_TYPE_MASK; /* strip the U_PMR_RECFLAG bit, leaving the indexable part */
if(type < U_PMR_MIN || type > U_PMR_MAX)return(-1); /* unknown EMF+ record type */
- status = U_PMF_CMN_HDR_print(Header, recnum, off); /* EMF+ part */
+ status = U_PMF_CMN_HDR_print(contents, Header, recnum, off); /* EMF+ part */
/* Buggy EMF+ can set the continue bit and then do something else. In that case, force out the pending
Object. Side effect - clears the pending object. */
@@ -222,14 +222,16 @@ int U_pmf_onerec_print(const char *contents, const char *blimit, int recnum, int
/**
\brief Print data from a U_PMF_CMN_HDR object
\return number of bytes in record, 0 on error
+ \param contents pointer to a buffer holding this EMF+ record
\param Header Header of the record
\param precnum EMF+ record number in file.
\param off Offset in file to the start of this EMF+ record.
common structure present at the beginning of all(*) EMF+ records
*/
-int U_PMF_CMN_HDR_print(U_PMF_CMN_HDR Header, int precnum, int off){
- printf(" %-29srec+:%5d type:%X offset:%8d rsize:%8u dsize:%8u flags:%4.4X\n",
- U_pmr_names(Header.Type &U_PMR_TYPE_MASK),precnum, Header.Type,off,Header.Size,Header.DataSize,Header.Flags);
+int U_PMF_CMN_HDR_print(const char *contents, U_PMF_CMN_HDR Header, int precnum, int off){
+ printf(" %-29srec+:%5d type:%X offset:%8d rsize:%8u dsize:%8u flags:%4.4X crc32:%8.8X\n",
+ U_pmr_names(Header.Type &U_PMR_TYPE_MASK),precnum, Header.Type,off,Header.Size,Header.DataSize,Header.Flags,
+ lu_crc32(contents,Header.Size));
return((int) Header.Size);
}
@@ -1852,7 +1854,12 @@ int U_PMF_TRANSFORMMATRIX_print(const char *contents, const char *blimit){
EMF+ manual 2.2.2.47, Microsoft name: EmfPlusTransformMatrix Object
*/
int U_PMF_TRANSFORMMATRIX2_print(U_PMF_TRANSFORMMATRIX *Tm){
- printf(" Matrix:{%f,%f,%f,%f,%f,%f}", Tm->m11, Tm->m12, Tm->m21, Tm->m22, Tm->dX, Tm->dY);
+ if(Tm){
+ printf(" Matrix:{%f,%f,%f,%f,%f,%f}", Tm->m11, Tm->m12, Tm->m21, Tm->m22, Tm->dX, Tm->dY);
+ }
+ else {
+ printf(" Matrix:(None)");
+ }
return(1);
}
diff --git a/src/libuemf/upmf_print.h b/src/libuemf/upmf_print.h
index fe1c57d60..a25374487 100644
--- a/src/libuemf/upmf_print.h
+++ b/src/libuemf/upmf_print.h
@@ -6,8 +6,8 @@
/*
File: upmf_print.h
-Version: 0.0.4
-Date: 24-MAR-2015
+Version: 0.0.5
+Date: 28-APR-2015
Author: David Mathog, Biology Division, Caltech
email: mathog@caltech.edu
Copyright: 2015 David Mathog and California Institute of Technology (Caltech)
@@ -23,7 +23,7 @@ extern "C" {
#include "upmf.h" /* includes uemf.h */
/* prototypes for simple types and enums used in PMR records */
-int U_PMF_CMN_HDR_print(U_PMF_CMN_HDR Header, int precnum, int off);
+int U_PMF_CMN_HDR_print(const char *contents, U_PMF_CMN_HDR Header, int precnum, int off);
int U_PMF_UINT8_ARRAY_print(const char *Start, const uint8_t *Array, int Elements, char *End);
int U_PMF_BRUSHTYPEENUMERATION_print(int otype);
int U_PMF_HATCHSTYLEENUMERATION_print(int hstype);
diff --git a/src/libuemf/uwmf.c b/src/libuemf/uwmf.c
index 35d38f69a..62e3d3c06 100644
--- a/src/libuemf/uwmf.c
+++ b/src/libuemf/uwmf.c
@@ -19,8 +19,8 @@
/*
File: uwmf.c
-Version: 0.0.16
-Date: 25-MAR-2015
+Version: 0.0.17
+Date: 28-MAR-2015
Author: David Mathog, Biology Division, Caltech
email: mathog@caltech.edu
Copyright: 2014 David Mathog and California Institute of Technology (Caltech)
@@ -696,7 +696,8 @@ int packed_DIB_safe(
int usedbytes;
if(!bitmapinfo_safe(record, blimit))return(0); // this DIB has issues with colors fitting into the record
- uint32_t width, height, colortype, numCt, invert; // these values will be set in get_DIB_params
+ uint32_t numCt; // these values will be set in get_DIB_params
+ int32_t width, height, colortype, invert; // these values will be set in get_DIB_params
// next call returns pointers and values, but allocates no memory
dibparams = wget_DIB_params(record, &px, (const U_RGBQUAD **) &ct, &numCt, &width, &height, &colortype, &invert);
// sanity checking
@@ -1564,7 +1565,7 @@ int wmf_finish(
#if U_BYTE_SWAP
//This is a Big Endian machine, WMF data must be Little Endian
- U_wmf_endian(wt->buf,wt->used,1);
+ U_wmf_endian(wt->buf,wt->used,1,0); // BE to LE, entire file
#endif
(void) U_wmr_properties(U_WMR_INVALID); /* force the release of the lookup table memory, returned value is irrelevant */
@@ -1610,7 +1611,7 @@ int wmf_readdata(
else {
#if U_BYTE_SWAP
//This is a Big Endian machine, WMF data is Little Endian
- U_wmf_endian(*contents,*length,0); // LE to BE
+ U_wmf_endian(*contents,*length,0,0); // LE to BE, entire file
#endif
}
}
@@ -4720,10 +4721,10 @@ int U_WMRCORE_PALETTE_get(
*/
void U_BITMAPCOREHEADER_get(
const char *BmiCh,
- int32_t *Size,
- int32_t *Width,
- int32_t *Height,
- int32_t *BitCount
+ uint32_t *Size,
+ int32_t *Width,
+ int32_t *Height,
+ int32_t *BitCount
){
uint32_t utmp4;
uint16_t utmp2;
@@ -4800,14 +4801,14 @@ int wget_DIB_params(
const char *dib,
const char **px,
const U_RGBQUAD **ct,
- int32_t *numCt,
- int32_t *width,
- int32_t *height,
- int32_t *colortype,
- int32_t *invert
+ uint32_t *numCt,
+ int32_t *width,
+ int32_t *height,
+ int32_t *colortype,
+ int32_t *invert
){
uint32_t bic;
- int32_t Size;
+ uint32_t Size;
bic = U_BI_RGB; // this information is not in the coreheader;
U_BITMAPCOREHEADER_get(dib, &Size, width, height, colortype);
if(Size != 0xC ){ //BitmapCoreHeader
@@ -4816,7 +4817,7 @@ int wget_DIB_params(
*/
uint32_t uig4;
int32_t ig4;
- U_BITMAPINFOHEADER_get(dib, &uig4, width, height,&uig4, (uint32_t *) colortype, &bic, &uig4, &ig4, &ig4,&uig4, &uig4);
+ U_BITMAPINFOHEADER_get(dib, &uig4, width, height,&uig4, (uint32_t *) colortype, &bic, &uig4, &ig4, &ig4, &uig4, &uig4);
}
if(*height < 0){
*height = -*height;
@@ -5559,7 +5560,8 @@ int U_WMRPOLYGON_get(
){
int size = U_WMRCORE_2U16_N16_get(contents, (U_SIZE_WMRPOLYGON), NULL, Length, Data);
if(size){
- if(IS_MEM_UNSAFE(*Data, (*Length)*sizeof(U_POINT16), contents+size))return(0);
+ int iLength = (*Length)*sizeof(U_POINT16);
+ if(IS_MEM_UNSAFE(*Data, iLength, contents+size))return(0);
}
return size;
}
@@ -5578,7 +5580,8 @@ int U_WMRPOLYLINE_get(
){
int size = U_WMRCORE_2U16_N16_get(contents, (U_SIZE_WMRPOLYGON), NULL, Length, Data);
if(size){
- if(IS_MEM_UNSAFE(*Data, (*Length)*sizeof(U_POINT16), contents+size))return(0);
+ int iLength = (*Length)*sizeof(U_POINT16);
+ if(IS_MEM_UNSAFE(*Data, iLength, contents+size))return(0);
}
return size;
}
@@ -5605,7 +5608,8 @@ int U_WMRESCAPE_get(
){
int size = U_WMRCORE_2U16_N16_get(contents, (U_SIZE_WMRESCAPE), Escape, Length, Data);
if(size){
- if(IS_MEM_UNSAFE(*Data, *Length, contents+size))return(0);
+ int iLength=*Length;
+ if(IS_MEM_UNSAFE(*Data, iLength, contents+size))return(0);
}
return size;
}
diff --git a/src/libuemf/uwmf.h b/src/libuemf/uwmf.h
index 2237d2221..027de8e06 100644
--- a/src/libuemf/uwmf.h
+++ b/src/libuemf/uwmf.h
@@ -36,11 +36,11 @@
/*
File: uwmf.h
-Version: 0.0.11
-Date: 23-APR-2014
+Version: 0.0.12
+Date: 28-APR-2015
Author: David Mathog, Biology Division, Caltech
email: mathog@caltech.edu
-Copyright: 2014 David Mathog and California Institute of Technology (Caltech)
+Copyright: 2015 David Mathog and California Institute of Technology (Caltech)
*/
#ifndef _UWMF_
@@ -2407,8 +2407,8 @@ int wmr_arc_points(U_RECT16 rclBox, U_POINT16 ArcStart, U_POINT16 ArcEn
void U_BITMAPINFOHEADER_get(const char *Bmih, uint32_t *Size, int32_t *Width, int32_t *Height,
uint32_t *Planes, uint32_t *BitCount, uint32_t *Compression, uint32_t *SizeImage,
int32_t *XPelsPerMeter, int32_t *YPelsPerMeter, uint32_t *ClrUsed, uint32_t *ClrImportant);
-void U_BITMAPCOREHEADER_get(const char *BmiCh, int32_t *Size, int32_t *Width, int32_t *Height, int32_t *BitCount);
-int wget_DIB_params(const char *dib, const char **px, const U_RGBQUAD **ct, int32_t *numCt,
+void U_BITMAPCOREHEADER_get(const char *BmiCh, uint32_t *Size, int32_t *Width, int32_t *Height, int32_t *BitCount);
+int wget_DIB_params(const char *dib, const char **px, const U_RGBQUAD **ct, uint32_t *numCt,
int32_t *width, int32_t *height, int32_t *colortype, int32_t *invert);
int U_WMREOF_get(const char *contents);
int U_WMRSETBKCOLOR_get(const char *contents, U_COLORREF *Color);
diff --git a/src/libuemf/uwmf_endian.c b/src/libuemf/uwmf_endian.c
index 38a321ad0..de0b3ef87 100644
--- a/src/libuemf/uwmf_endian.c
+++ b/src/libuemf/uwmf_endian.c
@@ -6,11 +6,11 @@
/*
File: uwmf_endian.c
-Version: 0.1.3
-Date: 27-MAR-2014
+Version: 0.1.4
+Date: 28-APR-2015
Author: David Mathog, Biology Division, Caltech
email: mathog@caltech.edu
-Copyright: 2014 David Mathog and California Institute of Technology (Caltech)
+Copyright: 2015 David Mathog and California Institute of Technology (Caltech)
*/
#ifdef __cplusplus
@@ -1470,21 +1470,24 @@ void U_WMRCREATEREGION_swap(char *record, int torev){
\param contents pointer to the buffer holding the entire EMF in memory
\param length number of bytes in the buffer
\param torev 1 for native to reversed, 0 for reversed to native
+ \param onerec 1 if this is operating on a single record instead of an entire file
Normally this would be called immediately before writing the data to a file
or immediately after reading the data from a file.
*/
-int U_wmf_endian(char *contents, size_t length, int torev){
- size_t off;
+int U_wmf_endian(char *contents, size_t length, int torev, int onerec){
+ size_t off=0;
uint32_t OK, Size16;
uint8_t iType;
char *record;
int recnum, offset;
record = contents;
- off = wmfheader_swap(record,torev); fflush(stdout); /* WMF header is not a normal record, handle it separately */
- record += off;
- offset = off;
+ if(!onerec){
+ off = wmfheader_swap(record,torev); fflush(stdout); /* WMF header is not a normal record, handle it separately */
+ record += off;
+ offset = off;
+ }
OK = 1;
recnum = 1; /* used when debugging */
@@ -1759,6 +1762,7 @@ int U_wmf_endian(char *contents, size_t length, int torev){
record += 2*Size16;
offset += 2*Size16;
recnum++;
+ if(onerec)break;
} //end of while
return(1);
}
diff --git a/src/libuemf/uwmf_endian.h b/src/libuemf/uwmf_endian.h
index 57fd4ae44..6ce7f1984 100644
--- a/src/libuemf/uwmf_endian.h
+++ b/src/libuemf/uwmf_endian.h
@@ -6,11 +6,11 @@
/*
File: uwmf_endian.h
-Version: 0.0.2
-Date: 26-NOV-2013
+Version: 0.0.3
+Date: 28-APR-2015
Author: David Mathog, Biology Division, Caltech
email: mathog@caltech.edu
-Copyright: 2013 David Mathog and California Institute of Technology (Caltech)
+Copyright: 2015 David Mathog and California Institute of Technology (Caltech)
*/
#ifndef _UWMF_ENDIAN_
@@ -24,7 +24,7 @@ extern "C" {
//! \cond
// prototypes
-int U_wmf_endian(char *contents, size_t length, int torev);
+int U_wmf_endian(char *contents, size_t length, int torev, int onerec);
//! \endcond
#ifdef __cplusplus
diff --git a/src/libuemf/uwmf_print.c b/src/libuemf/uwmf_print.c
index dd460b2b0..d6d1b584e 100644
--- a/src/libuemf/uwmf_print.c
+++ b/src/libuemf/uwmf_print.c
@@ -6,11 +6,11 @@
/*
File: uwmf_print.c
-Version: 0.0.4
-Date: 05-FEB-2014
+Version: 0.0.6
+Date: 21-MAY-2015
Author: David Mathog, Biology Division, Caltech
email: mathog@caltech.edu
-Copyright: 2014 David Mathog and California Institute of Technology (Caltech)
+Copyright: 2015 David Mathog and California Institute of Technology (Caltech)
*/
#ifdef __cplusplus
@@ -1351,13 +1351,20 @@ int U_wmf_onerec_print(const char *contents, const char *blimit, int recnum, siz
iType = *(uint8_t *)(contents + offsetof(U_METARECORD, iType ) );
-#if 1
- printf("%-30srecord:%5d type:%-4u offset:%8d rsize:%8u\n",
- U_wmr_names(iType), recnum, iType, (int) off, (int) size);
-#else /* show record checksums, this is NOT portable, result changes with endian type, useful for debugging */
- printf("%-30srecord:%5d type:%-4u offset:%8d size:%8u recchecksum:%u\n",
- U_wmr_names(iType), recnum, iType, (int) off, (int) size, U_16_checksum((int16_t *)contents, size));
+ uint32_t crc;
+#if U_BYTE_SWAP
+ //This is a Big Endian machine, WMF crc values must be calculated on Little Endian form
+ char *swapbuf=malloc(size);
+ if(!swapbuf)return(-1);
+ memcpy(swapbuf,contents,size);
+ U_wmf_endian(swapbuf,size,1,1); // BE to LE
+ crc=lu_crc32(swapbuf,size);
+ free(swapbuf);
+#else
+ crc=lu_crc32(contents,size);
#endif
+ printf("%-30srecord:%5d type:%-4u offset:%8d rsize:%8u crc32:%8.8X\n",
+ U_wmr_names(iType), recnum, iType, (int) off, (int) size, crc);
switch (iType)
{
diff --git a/src/live_effects/effect.cpp b/src/live_effects/effect.cpp
index d3ca781e9..332d81777 100644
--- a/src/live_effects/effect.cpp
+++ b/src/live_effects/effect.cpp
@@ -358,7 +358,6 @@ Effect::Effect(LivePathEffectObject *lpeobject)
lpeobj(lpeobject),
concatenate_before_pwd2(false),
sp_lpe_item(NULL),
- defaultUnit("px"),
current_zoom(1),
sp_curve(NULL),
provides_own_flash_paths(true), // is automatically set to false if providesOwnFlashPaths() is not overridden
@@ -448,7 +447,6 @@ void Effect::doOnRemove (SPLPEItem const* /*lpeitem*/)
void Effect::doOnApply_impl(SPLPEItem const* lpeitem)
{
sp_lpe_item = const_cast<SPLPEItem *>(lpeitem);
- defaultUnit = sp_lpe_item->document->getDisplayUnit()->abbr;
/*sp_curve = SP_SHAPE(sp_lpe_item)->getCurve();
pathvector_before_effect = sp_curve->get_pathvector();*/
doOnApply(lpeitem);
@@ -457,7 +455,6 @@ void Effect::doOnApply_impl(SPLPEItem const* lpeitem)
void Effect::doBeforeEffect_impl(SPLPEItem const* lpeitem)
{
sp_lpe_item = const_cast<SPLPEItem *>(lpeitem);
- defaultUnit = sp_lpe_item->document->getDisplayUnit()->abbr;
//printf("(SPLPEITEM*) %p\n", sp_lpe_item);
SPShape * shape = dynamic_cast<SPShape *>(sp_lpe_item);
if(shape){
diff --git a/src/live_effects/effect.h b/src/live_effects/effect.h
index 63d357481..ea57ff243 100644
--- a/src/live_effects/effect.h
+++ b/src/live_effects/effect.h
@@ -159,7 +159,6 @@ protected:
bool concatenate_before_pwd2;
SPLPEItem * sp_lpe_item; // these get stored in doBeforeEffect_impl, and derived classes may do as they please with them.
- Glib::ustring defaultUnit; // these get stored in doBeforeEffect_impl, and derived classes may do as they please with them.
double current_zoom;
std::vector<Geom::Point> selectedNodesPoints;
SPCurve * sp_curve;
diff --git a/src/live_effects/lpe-fillet-chamfer.cpp b/src/live_effects/lpe-fillet-chamfer.cpp
index fe03781d4..992c45a43 100644
--- a/src/live_effects/lpe-fillet-chamfer.cpp
+++ b/src/live_effects/lpe-fillet-chamfer.cpp
@@ -29,7 +29,6 @@
// for programmatically updating knots
#include "ui/tools-switch.h"
-#include <util/units.h>
// TODO due to internal breakage in glibmm headers, this must be last:
#include <glibmm/i18n.h>
@@ -57,7 +56,6 @@ LPEFilletChamfer::LPEFilletChamfer(LivePathEffectObject *lpeobject) :
only_selected(_("Change only selected nodes"), _("Change only selected nodes"), "only_selected", &wr, this, false),
flexible(_("Flexible radius size (%)"), _("Flexible radius size (%)"), "flexible", &wr, this, false),
use_knot_distance(_("Use knots distance instead radius"), _("Use knots distance instead radius"), "use_knot_distance", &wr, this, false),
- unit(_("Unit:"), _("Unit"), "unit", &wr, this),
method(_("Method:"), _("Fillets methods"), "method", FMConverter, &wr, this, FM_AUTO),
radius(_("Radius (unit or %):"), _("Radius, in unit or %"), "radius", &wr, this, 0.),
chamfer_steps(_("Chamfer steps:"), _("Chamfer steps"), "chamfer_steps", &wr, this, 0),
@@ -65,7 +63,6 @@ LPEFilletChamfer::LPEFilletChamfer(LivePathEffectObject *lpeobject) :
helper_size(_("Helper size with direction:"), _("Helper size with direction"), "helper_size", &wr, this, 0)
{
registerParameter(&fillet_chamfer_values);
- registerParameter(&unit);
registerParameter(&method);
registerParameter(&radius);
registerParameter(&chamfer_steps);
@@ -223,7 +220,7 @@ void LPEFilletChamfer::updateFillet()
{
double power = 0;
if (!flexible) {
- power = Inkscape::Util::Quantity::convert(radius, unit.get_abbreviation(), defaultUnit) * -1;
+ power = radius * -1;
} else {
power = radius;
}
@@ -444,9 +441,7 @@ void LPEFilletChamfer::doBeforeEffect(SPLPEItem const *lpeItem)
} else {
fillet_chamfer_values.set_helper_size(helper_size);
}
- fillet_chamfer_values.set_document_unit(defaultUnit);
fillet_chamfer_values.set_use_distance(use_knot_distance);
- fillet_chamfer_values.set_unit(unit.get_abbreviation());
SPCurve *c = SP_IS_PATH(lpeItem) ? static_cast<SPPath const *>(lpeItem)
->get_original_curve()
: SP_SHAPE(lpeItem)->getCurve();
diff --git a/src/live_effects/lpe-fillet-chamfer.h b/src/live_effects/lpe-fillet-chamfer.h
index 9c91a18b5..290a37f92 100644
--- a/src/live_effects/lpe-fillet-chamfer.h
+++ b/src/live_effects/lpe-fillet-chamfer.h
@@ -66,7 +66,6 @@ private:
BoolParam only_selected;
BoolParam flexible;
BoolParam use_knot_distance;
- UnitParam unit;
EnumParam<FilletMethod> method;
ScalarParam radius;
ScalarParam chamfer_steps;
diff --git a/src/live_effects/lpe-roughen.cpp b/src/live_effects/lpe-roughen.cpp
index 44ff54554..33ffd96d6 100644
--- a/src/live_effects/lpe-roughen.cpp
+++ b/src/live_effects/lpe-roughen.cpp
@@ -20,7 +20,6 @@
#include "live_effects/parameter/parameter.h"
#include "helper/geom.h"
#include <glibmm/i18n.h>
-#include <util/units.h>
#include <cmath>
namespace Inkscape {
@@ -36,7 +35,6 @@ DMConverter(DivisionMethodData, DM_END);
LPERoughen::LPERoughen(LivePathEffectObject *lpeobject)
: Effect(lpeobject),
// initialise your parameters here:
- unit(_("Unit"), _("Unit"), "unit", &wr, this),
method(_("Method"), _("Division method"), "method", DMConverter, &wr,
this, DM_SEGMENTS),
max_segment_size(_("Max. segment size"), _("Max. segment size"),
@@ -54,7 +52,6 @@ LPERoughen::LPERoughen(LivePathEffectObject *lpeobject)
shift_node_handles(_("Shift node handles"), _("Shift node handles"),
"shift_node_handles", &wr, this, true)
{
- registerParameter(&unit);
registerParameter(&method);
registerParameter(&max_segment_size);
registerParameter(&segments);
@@ -98,14 +95,6 @@ Gtk::Widget *LPERoughen::newWidget()
if ((*it)->widget_is_visible) {
Parameter *param = *it;
Gtk::Widget *widg = dynamic_cast<Gtk::Widget *>(param->param_newWidget());
- if (param->param_key == "unit") {
- Gtk::Label *unit_label = Gtk::manage(new Gtk::Label(
- Glib::ustring(_("<b>Roughen unit</b>")), Gtk::ALIGN_START));
- unit_label->set_use_markup(true);
- vbox->pack_start(*unit_label, false, false, 2);
- vbox->pack_start(*Gtk::manage(new Gtk::HSeparator()),
- Gtk::PACK_EXPAND_WIDGET);
- }
if (param->param_key == "method") {
Gtk::Label *method_label = Gtk::manage(new Gtk::Label(
Glib::ustring(_("<b>Add nodes</b> Subdivide each segment")),
@@ -160,11 +149,8 @@ double LPERoughen::sign(double random_number)
Geom::Point LPERoughen::randomize()
{
- Inkscape::Util::Unit const *svg_units = SP_ACTIVE_DESKTOP->namedview->svg_units;
- double displace_x_parsed = Inkscape::Util::Quantity::convert(
- displace_x * global_randomize, unit.get_abbreviation(), svg_units->abbr);
- double displace_y_parsed = Inkscape::Util::Quantity::convert(
- displace_y * global_randomize, unit.get_abbreviation(), svg_units->abbr);
+ double displace_x_parsed = displace_x * global_randomize;
+ double displace_y_parsed = displace_y * global_randomize;
Geom::Point output = Geom::Point(sign(displace_x_parsed), sign(displace_y_parsed));
return output;
@@ -175,7 +161,6 @@ void LPERoughen::doEffect(SPCurve *curve)
Geom::PathVector const original_pathv =
pathv_to_linear_and_cubic_beziers(curve->get_pathvector());
curve->reset();
- Inkscape::Util::Unit const *svg_units = SP_ACTIVE_DESKTOP->namedview->svg_units;
for (Geom::PathVector::const_iterator path_it = original_pathv.begin();
path_it != original_pathv.end(); ++path_it) {
if (path_it->empty())
@@ -220,8 +205,7 @@ void LPERoughen::doEffect(SPCurve *curve)
} else {
nCurve->lineto(point3);
}
- double length = Inkscape::Util::Quantity::convert(
- curve_it1->length(0.001), svg_units->abbr, unit.get_abbreviation());
+ double length = curve_it1->length(0.001);
std::size_t splits = 0;
if (method == DM_SEGMENTS) {
splits = segments;
diff --git a/src/live_effects/lpe-roughen.h b/src/live_effects/lpe-roughen.h
index ed9f06cf7..2b285cd40 100644
--- a/src/live_effects/lpe-roughen.h
+++ b/src/live_effects/lpe-roughen.h
@@ -17,7 +17,6 @@
#include "live_effects/parameter/parameter.h"
#include "live_effects/parameter/path.h"
#include "live_effects/parameter/bool.h"
-#include "live_effects/parameter/unit.h"
#include "live_effects/parameter/random.h"
namespace Inkscape {
@@ -45,7 +44,6 @@ public:
virtual Gtk::Widget *newWidget();
private:
- UnitParam unit;
EnumParam<DivisionMethod> method;
ScalarParam max_segment_size;
ScalarParam segments;
diff --git a/src/live_effects/parameter/filletchamferpointarray.cpp b/src/live_effects/parameter/filletchamferpointarray.cpp
index cf11d52fc..a3ff4c96f 100644
--- a/src/live_effects/parameter/filletchamferpointarray.cpp
+++ b/src/live_effects/parameter/filletchamferpointarray.cpp
@@ -354,11 +354,6 @@ void FilletChamferPointArrayParam::set_pwd2(
last_pwd2_normal = pwd2_normal_in;
}
-void FilletChamferPointArrayParam::set_document_unit(Glib::ustring value_document_unit)
-{
- documentUnit = value_document_unit;
-}
-
void FilletChamferPointArrayParam::set_helper_size(int hs)
{
helper_size = hs;
@@ -374,11 +369,6 @@ void FilletChamferPointArrayParam::set_use_distance(bool use_knot_distance )
use_distance = use_knot_distance;
}
-void FilletChamferPointArrayParam::set_unit(const gchar *abbr)
-{
- unit = abbr;
-}
-
void FilletChamferPointArrayParam::updateCanvasIndicators()
{
std::vector<Point> ts = data();
@@ -812,7 +802,7 @@ void FilletChamferPointArrayParamKnotHolderEntity::knot_click(guint state)
bool aprox = (A[0].degreesOfFreedom() != 2 || B[0].degreesOfFreedom() != 2) && !_pparam->use_distance?true:false;
Geom::Point offset = Geom::Point(xModified, _pparam->_vector.at(_index).y());
Inkscape::UI::Dialogs::FilletChamferPropertiesDialog::showDialog(
- this->desktop, offset, this, _pparam->unit, _pparam->use_distance, aprox, _pparam->documentUnit);
+ this->desktop, offset, this, _pparam->use_distance, aprox);
}
}
diff --git a/src/live_effects/parameter/filletchamferpointarray.h b/src/live_effects/parameter/filletchamferpointarray.h
index bc05ecfc4..48cd26d2d 100644
--- a/src/live_effects/parameter/filletchamferpointarray.h
+++ b/src/live_effects/parameter/filletchamferpointarray.h
@@ -53,8 +53,6 @@ public:
virtual void set_helper_size(int hs);
virtual void set_use_distance(bool use_knot_distance);
virtual void set_chamfer_steps(int value_chamfer_steps);
- virtual void set_document_unit(Glib::ustring value_document_unit);
- virtual void set_unit(const gchar *abbr);
virtual void addCanvasIndicators(SPLPEItem const *lpeitem,
std::vector<Geom::PathVector> &hp_vec);
virtual bool providesKnotHolderEntities() const {
@@ -89,8 +87,6 @@ private:
int helper_size;
int chamfer_steps;
bool use_distance;
- const gchar *unit;
- Glib::ustring documentUnit;
Geom::PathVector hp;
Geom::Piecewise<Geom::D2<Geom::SBasis> > last_pwd2;
diff --git a/src/rdf.cpp b/src/rdf.cpp
index 16344e520..938dc60c6 100644
--- a/src/rdf.cpp
+++ b/src/rdf.cpp
@@ -39,7 +39,7 @@
</Agent></dc:rights>
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:source rdf:resource="source"/>
- <license rdf:resource="http://creativecommons.org/licenses/by/2.0/"
+ <license rdf:resource="http://creativecommons.org/licenses/by/4.0/"
/>
</Work>
@@ -173,32 +173,32 @@ struct rdf_double_t rdf_license_ofl [] = {
struct rdf_license_t rdf_licenses [] = {
{ N_("CC Attribution"),
- "http://creativecommons.org/licenses/by/3.0/",
+ "http://creativecommons.org/licenses/by/4.0/",
rdf_license_cc_a,
},
{ N_("CC Attribution-ShareAlike"),
- "http://creativecommons.org/licenses/by-sa/3.0/",
+ "http://creativecommons.org/licenses/by-sa/4.0/",
rdf_license_cc_a_sa,
},
{ N_("CC Attribution-NoDerivs"),
- "http://creativecommons.org/licenses/by-nd/3.0/",
+ "http://creativecommons.org/licenses/by-nd/4.0/",
rdf_license_cc_a_nd,
},
{ N_("CC Attribution-NonCommercial"),
- "http://creativecommons.org/licenses/by-nc/3.0/",
+ "http://creativecommons.org/licenses/by-nc/4.0/",
rdf_license_cc_a_nc,
},
{ N_("CC Attribution-NonCommercial-ShareAlike"),
- "http://creativecommons.org/licenses/by-nc-sa/3.0/",
+ "http://creativecommons.org/licenses/by-nc-sa/4.0/",
rdf_license_cc_a_nc_sa,
},
{ N_("CC Attribution-NonCommercial-NoDerivs"),
- "http://creativecommons.org/licenses/by-nc-nd/3.0/",
+ "http://creativecommons.org/licenses/by-nc-nd/4.0/",
rdf_license_cc_a_nc_nd,
},
diff --git a/src/selection-chemistry.cpp b/src/selection-chemistry.cpp
index 2cd4f6b4e..16585413e 100644
--- a/src/selection-chemistry.cpp
+++ b/src/selection-chemistry.cpp
@@ -107,6 +107,7 @@ SPCycleType SP_CYCLING = SP_CYCLE_FOCUS;
#include "live_effects/effect.h"
#include "live_effects/effect-enum.h"
#include "live_effects/parameter/originalpath.h"
+#include "layer-manager.h"
#include "enums.h"
#include "sp-item-group.h"
@@ -438,7 +439,7 @@ static void add_ids_recursive(std::vector<const gchar *> &ids, SPObject *obj)
}
}
-void sp_selection_duplicate(SPDesktop *desktop, bool suppressDone)
+void sp_selection_duplicate(SPDesktop *desktop, bool suppressDone, bool duplicateLayer)
{
if (desktop == NULL) {
return;
@@ -449,12 +450,17 @@ void sp_selection_duplicate(SPDesktop *desktop, bool suppressDone)
Inkscape::Selection *selection = desktop->getSelection();
// check if something is selected
- if (selection->isEmpty()) {
+ if (selection->isEmpty() && !duplicateLayer) {
desktop->messageStack()->flash(Inkscape::WARNING_MESSAGE, _("Select <b>object(s)</b> to duplicate."));
return;
}
std::vector<Inkscape::XML::Node*> reprs(selection->reprList());
+ if(duplicateLayer){
+ reprs.clear();
+ reprs.push_back(desktop->currentLayer()->getRepr());
+ }
+
selection->clear();
// sorting items from different parents sorts each parent's subset without possibly mixing
@@ -474,7 +480,10 @@ void sp_selection_duplicate(SPDesktop *desktop, bool suppressDone)
Inkscape::XML::Node *parent = old_repr->parent();
Inkscape::XML::Node *copy = old_repr->duplicate(xml_doc);
- parent->appendChild(copy);
+ if(! duplicateLayer)
+ parent->appendChild(copy);
+ else
+ parent->addChild(copy, old_repr);
if (relink_clones) {
SPObject *old_obj = doc->getObjectByRepr(old_repr);
@@ -535,8 +544,14 @@ void sp_selection_duplicate(SPDesktop *desktop, bool suppressDone)
DocumentUndo::done(desktop->getDocument(), SP_VERB_EDIT_DUPLICATE,
_("Duplicate"));
}
-
- selection->setReprList(newsel);
+ if(!duplicateLayer)
+ selection->setReprList(newsel);
+ else{
+ SPObject* new_layer = doc->getObjectByRepr(newsel[0]);
+ gchar* name = g_strdup_printf(_("%s copy"), new_layer->label());
+ desktop->layer_manager->renameLayer( new_layer, name, TRUE );
+ g_free(name);
+ }
}
void sp_edit_clear_all(Inkscape::Selection *selection)
@@ -1948,8 +1963,8 @@ std::vector<SPItem*> sp_get_same_fill_or_stroke_color(SPItem *sel, std::vector<S
}
} else if (dynamic_cast<SPPattern *>(sel_server) && dynamic_cast<SPPattern *>(iter_server)) {
- SPPattern *sel_pat = pattern_getroot(dynamic_cast<SPPattern *>(sel_server));
- SPPattern *iter_pat = pattern_getroot(dynamic_cast<SPPattern *>(iter_server));
+ SPPattern *sel_pat = dynamic_cast<SPPattern *>(sel_server)->rootPattern();
+ SPPattern *iter_pat = dynamic_cast<SPPattern *>(iter_server)->rootPattern();
if (sel_pat == iter_pat) {
match = true;
}
@@ -3297,7 +3312,7 @@ sp_selection_tile(SPDesktop *desktop, bool apply)
int saved_compensation = prefs->getInt("/options/clonecompensation/value", SP_CLONE_COMPENSATION_UNMOVED);
prefs->setInt("/options/clonecompensation/value", SP_CLONE_COMPENSATION_UNMOVED);
- gchar const *pat_id = pattern_tile(repr_copies, bbox, doc,
+ gchar const *pat_id = SPPattern::produce(repr_copies, bbox, doc,
( Geom::Affine(Geom::Translate(desktop->dt2doc(Geom::Point(r->min()[Geom::X],
r->max()[Geom::Y]))))
* parent_transform.inverse() ),
@@ -3375,9 +3390,9 @@ void sp_selection_untile(SPDesktop *desktop)
did = true;
- SPPattern *pattern = pattern_getroot(basePat);
+ SPPattern *pattern = basePat->rootPattern();
- Geom::Affine pat_transform = pattern_patternTransform(basePat);
+ Geom::Affine pat_transform = basePat->getTransform();
pat_transform *= item->transform;
for (SPObject *child = pattern->firstChild() ; child != NULL; child = child->next ) {
@@ -3787,13 +3802,11 @@ void sp_selection_set_clipgroup(SPDesktop *desktop)
clone->setAttribute("inkscape:transform-center-y", inner->attribute("inkscape:transform-center-y"), false);
const Geom::Affine maskTransform(Geom::Affine::identity());
- GSList *templist = NULL;
-
- templist = g_slist_append(templist, clone);
+ std::vector<Inkscape::XML::Node*> templist;
+ templist.push_back(clone);
// add the new clone to the top of the original's parent
gchar const *mask_id = SPClipPath::create(templist, doc, &maskTransform);
- g_slist_free(templist);
outer->setAttribute("clip-path", g_strdup_printf("url(#%s)", mask_id));
@@ -3851,9 +3864,9 @@ void sp_selection_set_mask(SPDesktop *desktop, bool apply_clip_path, bool apply_
selection->clear();
// create a list of duplicates
- GSList *mask_items = NULL;
- GSList *apply_to_items = NULL;
- GSList *items_to_delete = NULL;
+ std::vector<Inkscape::XML::Node*> mask_items;
+ std::vector<SPItem*> apply_to_items;
+ std::vector<SPItem*> items_to_delete;
std::vector<SPItem*> items_to_select;
Inkscape::Preferences *prefs = Inkscape::Preferences::get();
@@ -3863,54 +3876,36 @@ void sp_selection_set_mask(SPDesktop *desktop, bool apply_clip_path, bool apply_
if (apply_to_layer) {
// all selected items are used for mask, which is applied to a layer
- apply_to_items = g_slist_prepend(apply_to_items, desktop->currentLayer());
+ apply_to_items.push_back(SP_ITEM(desktop->currentLayer()));
+ }
+
+ for (std::vector<SPItem*>::const_iterator i=items.begin();i!=items.end();i++) {
+ if((!topmost && !apply_to_layer && *i == items.front())
+ || (topmost && !apply_to_layer && *i == items.back())
+ || apply_to_layer){
- for (std::vector<SPItem*>::const_iterator i=items.begin();i!=items.end();i++) {
+ Geom::Affine oldtr=(*i)->transform;
+ (*i)->doWriteTransform((*i)->getRepr(), (*i)->i2doc_affine());
Inkscape::XML::Node *dup = (*i)->getRepr()->duplicate(xml_doc);
- mask_items = g_slist_prepend(mask_items, dup);
+ (*i)->doWriteTransform((*i)->getRepr(), oldtr);
+ mask_items.push_back(dup);
- SPObject *item = *i;
if (remove_original) {
- items_to_delete = g_slist_prepend(items_to_delete, item);
+ items_to_delete.push_back(*i);
}
else {
- items_to_select.push_back((SPItem*)item);
+ items_to_select.push_back(*i);
}
- }
- } else if (!topmost) {
- // topmost item is used as a mask, which is applied to other items in a selection
- Inkscape::XML::Node *dup = items[0]->getRepr()->duplicate(xml_doc);
- mask_items = g_slist_prepend(mask_items, dup);
-
- if (remove_original) {
- SPObject *item = items.front();
- items_to_delete = g_slist_prepend(items_to_delete, item);
- }
-
- for (std::vector<SPItem*>::const_iterator i=items.begin();i!=items.end();i++) {
- if(i==items.begin())continue;
- apply_to_items = g_slist_prepend(apply_to_items, *i);
+ continue;
+ }else{
+ apply_to_items.push_back(*i);
items_to_select.push_back(*i);
}
- } else {
- SPItem *i = NULL;
- for (std::vector<SPItem*>::const_iterator j=items.begin();j!=items.end();j++) {
- i=*j;
- apply_to_items = g_slist_prepend(apply_to_items, i);
- items_to_select.push_back(i);
- }
-
- Inkscape::XML::Node *dup = SP_OBJECT(i)->getRepr()->duplicate(xml_doc);
- mask_items = g_slist_prepend(mask_items, dup);
-
- if (remove_original) {
- SPObject *item = reinterpret_cast<SPObject*>(i);
- items_to_delete = g_slist_prepend(items_to_delete, item);
- }
}
+
items.clear();
- if (apply_to_items && grouping == PREFS_MASKOBJECT_GROUPING_ALL) {
+ if (grouping == PREFS_MASKOBJECT_GROUPING_ALL) {
// group all those objects into one group
// and apply mask to that
Inkscape::XML::Node *group = xml_doc->createElement("svg:g");
@@ -3919,48 +3914,35 @@ void sp_selection_set_mask(SPDesktop *desktop, bool apply_clip_path, bool apply_
group->setAttribute("inkscape:groupmode", "maskhelper");
std::vector<Inkscape::XML::Node*> reprs_to_group;
-
- for (GSList *i = apply_to_items ; NULL != i ; i = i->next) {
- reprs_to_group.push_back(static_cast<SPObject*>(i->data)->getRepr());
- items_to_select.erase(remove(items_to_select.begin(), items_to_select.end(), static_cast<SPObject*>(i->data)), items_to_select.end());
+ for (std::vector<SPItem*>::const_iterator i = apply_to_items.begin(); i != apply_to_items.end(); i++) {
+ reprs_to_group.push_back(static_cast<SPObject*>(*i)->getRepr());
}
+ items_to_select.clear();
sp_selection_group_impl(reprs_to_group, group, xml_doc, doc);
// apply clip/mask only to newly created group
- g_slist_free(apply_to_items);
- apply_to_items = NULL;
- apply_to_items = g_slist_prepend(apply_to_items, doc->getObjectByRepr(group));
+ apply_to_items.clear();
+ apply_to_items.push_back(dynamic_cast<SPItem*>(doc->getObjectByRepr(group)));
items_to_select.push_back((SPItem*)(doc->getObjectByRepr(group)));
Inkscape::GC::release(group);
}
+ if (grouping == PREFS_MASKOBJECT_GROUPING_SEPARATE) {
+ items_to_select.clear();
+ }
+
gchar const *attributeName = apply_clip_path ? "clip-path" : "mask";
- for (GSList *i = apply_to_items; NULL != i; i = i->next) {
- SPItem *item = reinterpret_cast<SPItem *>(i->data);
+ for (std::vector<SPItem*>::const_reverse_iterator i = apply_to_items.rbegin(); i != apply_to_items.rend(); i++) {
+ SPItem *item = reinterpret_cast<SPItem *>(*i);
// inverted object transform should be applied to a mask object,
// as mask is calculated in user space (after applying transform)
- Geom::Affine maskTransform(item->transform.inverse());
-
- GSList *mask_items_dup = NULL;
- for (GSList *mask_item = mask_items; NULL != mask_item; mask_item = mask_item->next) {
- Inkscape::XML::Node *dup = reinterpret_cast<Inkscape::XML::Node *>(mask_item->data)->duplicate(xml_doc);
- mask_items_dup = g_slist_prepend(mask_items_dup, dup);
- }
-
- gchar const *mask_id = NULL;
- if (apply_clip_path) {
- mask_id = SPClipPath::create(mask_items_dup, doc, &maskTransform);
- } else {
- mask_id = sp_mask_create(mask_items_dup, doc, &maskTransform);
- }
-
- g_slist_free(mask_items_dup);
- mask_items_dup = NULL;
-
- Inkscape::XML::Node *current = SP_OBJECT(i->data)->getRepr();
+ std::vector<Inkscape::XML::Node*> mask_items_dup;
+ for(std::vector<Inkscape::XML::Node*>::const_iterator it=mask_items.begin();it!=mask_items.end();it++)
+ mask_items_dup.push_back((*it)->duplicate(xml_doc));
+ Inkscape::XML::Node *current = SP_OBJECT(*i)->getRepr();
// Node to apply mask to
Inkscape::XML::Node *apply_mask_to = current;
@@ -3972,7 +3954,6 @@ void sp_selection_set_mask(SPDesktop *desktop, bool apply_clip_path, bool apply_
Inkscape::XML::Node *spnew = current->duplicate(xml_doc);
gint position = current->position();
- items_to_select.erase(remove(items_to_select.begin(), items_to_select.end(), item), items_to_select.end());
current->parent()->appendChild(group);
sp_repr_unparent(current);
group->appendChild(spnew);
@@ -3981,24 +3962,29 @@ void sp_selection_set_mask(SPDesktop *desktop, bool apply_clip_path, bool apply_
// Apply clip/mask to group instead
apply_mask_to = group;
- items_to_select.push_back((SPItem*)(doc->getObjectByRepr(group)));
+ items_to_select.push_back(item = (SPItem*)(doc->getObjectByRepr(group)));
Inkscape::GC::release(spnew);
Inkscape::GC::release(group);
}
+ Geom::Affine maskTransform(item->i2doc_affine().inverse());
+
+ gchar const *mask_id = NULL;
+ if (apply_clip_path) {
+ mask_id = SPClipPath::create(mask_items_dup, doc, &maskTransform);
+ } else {
+ mask_id = sp_mask_create(mask_items_dup, doc, &maskTransform);
+ }
+
apply_mask_to->setAttribute(attributeName, Glib::ustring("url(#") + mask_id + ')');
}
- g_slist_free(mask_items);
- g_slist_free(apply_to_items);
-
- for (GSList *i = items_to_delete; NULL != i; i = i->next) {
- SPObject *item = reinterpret_cast<SPObject*>(i->data);
+ for (std::vector<SPItem*>::const_iterator i = items_to_delete.begin(); i != items_to_delete.end(); i++) {
+ SPObject *item = reinterpret_cast<SPObject*>(*i);
item->deleteObject(false);
items_to_select.erase(remove(items_to_select.begin(), items_to_select.end(), item), items_to_select.end());
}
- g_slist_free(items_to_delete);
selection->addList(items_to_select);
diff --git a/src/selection-chemistry.h b/src/selection-chemistry.h
index 8bcab664b..5bcc5b1ea 100644
--- a/src/selection-chemistry.h
+++ b/src/selection-chemistry.h
@@ -52,7 +52,7 @@ namespace LivePathEffect {
} // namespace Inkscape
void sp_selection_delete(SPDesktop *desktop);
-void sp_selection_duplicate(SPDesktop *desktop, bool suppressDone = false);
+void sp_selection_duplicate(SPDesktop *desktop, bool suppressDone = false, bool duplicateLayer = false);
void sp_edit_clear_all(Inkscape::Selection *selection);
void sp_edit_select_all(SPDesktop *desktop);
diff --git a/src/selection.cpp b/src/selection.cpp
index 7979b5d61..77a507eec 100644
--- a/src/selection.cpp
+++ b/src/selection.cpp
@@ -125,6 +125,7 @@ Selection::_releaseContext(SPObject *obj)
void Selection::_invalidateCachedLists() {
_items.clear();
_reprs.clear();
+ _objs_vector.clear();
}
void Selection::_clear() {
diff --git a/src/sp-clippath.cpp b/src/sp-clippath.cpp
index 3c6167438..d66508eae 100644
--- a/src/sp-clippath.cpp
+++ b/src/sp-clippath.cpp
@@ -296,7 +296,7 @@ sp_clippath_view_list_remove(SPClipPathView *list, SPClipPathView *view)
}
// Create a mask element (using passed elements), add it to <defs>
-const gchar *SPClipPath::create (GSList *reprs, SPDocument *document, Geom::Affine const* applyTransform)
+const gchar *SPClipPath::create (std::vector<Inkscape::XML::Node*> &reprs, SPDocument *document, Geom::Affine const* applyTransform)
{
Inkscape::XML::Node *defsrepr = document->getDefs()->getRepr();
@@ -308,13 +308,12 @@ const gchar *SPClipPath::create (GSList *reprs, SPDocument *document, Geom::Affi
const gchar *id = repr->attribute("id");
SPObject *clip_path_object = document->getObjectById(id);
- for (GSList *it = reprs; it != NULL; it = it->next) {
- Inkscape::XML::Node *node = (Inkscape::XML::Node *)(it->data);
+ for (std::vector<Inkscape::XML::Node*>::const_iterator it = reprs.begin(); it != reprs.end(); it++) {
+ Inkscape::XML::Node *node = (*it);
SPItem *item = SP_ITEM(clip_path_object->appendChildRepr(node));
if (NULL != applyTransform) {
- Geom::Affine transform (item->transform);
- transform *= (*applyTransform);
+ Geom::Affine transform (item->transform * (*applyTransform));
item->doWriteTransform(item->getRepr(), transform);
}
}
diff --git a/src/sp-clippath.h b/src/sp-clippath.h
index eb8b14174..91dcfd625 100644
--- a/src/sp-clippath.h
+++ b/src/sp-clippath.h
@@ -45,7 +45,7 @@ public:
unsigned int clipPathUnits : 1;
SPClipPathView *display;
- static char const *create(GSList *reprs, SPDocument *document, Geom::Affine const* applyTransform);
+ static char const *create(std::vector<Inkscape::XML::Node*> &reprs, SPDocument *document, Geom::Affine const* applyTransform);
//static GType sp_clippath_get_type(void);
Inkscape::DrawingItem *show(Inkscape::Drawing &drawing, unsigned int key);
diff --git a/src/sp-item.cpp b/src/sp-item.cpp
index 8c99e9bcf..410fd9b37 100644
--- a/src/sp-item.cpp
+++ b/src/sp-item.cpp
@@ -349,17 +349,11 @@ void SPItem::lowerToBottom() {
using Inkscape::Util::MutableList;
using Inkscape::Util::reverse_list;
- MutableList<SPObject &> bottom=find_last_if(
- reverse_list<SPObject::SiblingIterator>(
- parent->firstChild(), this
- ),
- MutableList<SPObject &>(),
- &is_item
- );
+ SPObject * bottom=parent->firstChild();
+ while(dynamic_cast<SPObject*>(bottom) && dynamic_cast<SPObject*>(bottom->next) && bottom!=this && !is_item(*(bottom->next))) bottom=bottom->next;
if (bottom) {
- ++bottom;
Inkscape::XML::Node *ref = ( bottom ? bottom->getRepr() : NULL );
- getRepr()->parent()->changeOrder(getRepr(), ref);
+ parent->getRepr()->changeOrder(getRepr(), ref);
}
}
@@ -367,20 +361,20 @@ void SPItem::moveTo(SPItem *target, bool intoafter) {
Inkscape::XML::Node *target_ref = ( target ? target->getRepr() : NULL );
Inkscape::XML::Node *our_ref = getRepr();
- gboolean first = FALSE;
-
- if (target_ref == our_ref) {
- // Move to ourself ignore
- return;
- }
if (!target_ref) {
// Assume move to the "first" in the top node, find the top node
- target_ref = our_ref;
- while (target_ref->parent() != target_ref->root()) {
- target_ref = target_ref->parent();
+ intoafter = false;
+ SPObject* bottom = this->document->getObjectByRepr(our_ref->root())->firstChild();
+ while(!dynamic_cast<SPItem*>(bottom->next)){
+ bottom=bottom->next;
}
- first = TRUE;
+ target_ref = bottom->getRepr();
+ }
+
+ if (target_ref == our_ref) {
+ // Move to ourself ignore
+ return;
}
if (intoafter) {
@@ -391,16 +385,10 @@ void SPItem::moveTo(SPItem *target, bool intoafter) {
// Change in parent, need to remove and add
our_ref->parent()->removeChild(our_ref);
target_ref->parent()->addChild(our_ref, target_ref);
- } else if (!first) {
+ } else {
// Same parent, just move
our_ref->parent()->changeOrder(our_ref, target_ref);
}
-
- if (first && parent) {
- // If "first" ensure it appears after the defs etc
- lowerToBottom();
- return;
- }
}
void SPItem::build(SPDocument *document, Inkscape::XML::Node *repr) {
@@ -1234,8 +1222,8 @@ void SPItem::adjust_pattern(Geom::Affine const &postmul, bool set, PatternTransf
SPObject *server = style->getFillPaintServer();
SPPattern *serverPatt = dynamic_cast<SPPattern *>(server);
if ( serverPatt ) {
- SPPattern *pattern = sp_pattern_clone_if_necessary(this, serverPatt, "fill");
- sp_pattern_transform_multiply(pattern, postmul, set);
+ SPPattern *pattern = serverPatt->clone_if_necessary(this, "fill");
+ pattern->transform_multiply(postmul, set);
}
}
@@ -1244,8 +1232,8 @@ void SPItem::adjust_pattern(Geom::Affine const &postmul, bool set, PatternTransf
SPObject *server = style->getStrokePaintServer();
SPPattern *serverPatt = dynamic_cast<SPPattern *>(server);
if ( serverPatt ) {
- SPPattern *pattern = sp_pattern_clone_if_necessary(this, serverPatt, "stroke");
- sp_pattern_transform_multiply(pattern, postmul, set);
+ SPPattern *pattern = serverPatt->clone_if_necessary(this, "stroke");
+ pattern->transform_multiply(postmul, set);
}
}
}
diff --git a/src/sp-mask.cpp b/src/sp-mask.cpp
index d60473e1d..f8fb7aff4 100644
--- a/src/sp-mask.cpp
+++ b/src/sp-mask.cpp
@@ -209,7 +209,7 @@ Inkscape::XML::Node* SPMask::write(Inkscape::XML::Document* xml_doc, Inkscape::X
// Create a mask element (using passed elements), add it to <defs>
const gchar *
-sp_mask_create (GSList *reprs, SPDocument *document, Geom::Affine const* applyTransform)
+sp_mask_create (std::vector<Inkscape::XML::Node*> &reprs, SPDocument *document, Geom::Affine const* applyTransform)
{
Inkscape::XML::Node *defsrepr = document->getDefs()->getRepr();
@@ -221,13 +221,12 @@ sp_mask_create (GSList *reprs, SPDocument *document, Geom::Affine const* applyTr
const gchar *mask_id = repr->attribute("id");
SPObject *mask_object = document->getObjectById(mask_id);
- for (GSList *it = reprs; it != NULL; it = it->next) {
- Inkscape::XML::Node *node = (Inkscape::XML::Node *)(it->data);
+ for (std::vector<Inkscape::XML::Node*>::const_iterator it = reprs.begin(); it != reprs.end(); it++) {
+ Inkscape::XML::Node *node = (*it);
SPItem *item = SP_ITEM(mask_object->appendChildRepr(node));
if (NULL != applyTransform) {
- Geom::Affine transform (item->transform);
- transform *= (*applyTransform);
+ Geom::Affine transform (item->transform * (*applyTransform));
item->doWriteTransform(item->getRepr(), transform);
}
}
diff --git a/src/sp-mask.h b/src/sp-mask.h
index e991fedb6..3559483bb 100644
--- a/src/sp-mask.h
+++ b/src/sp-mask.h
@@ -108,6 +108,6 @@ protected:
}
};
-const char *sp_mask_create (GSList *reprs, SPDocument *document, Geom::Affine const* applyTransform);
+const char *sp_mask_create (std::vector<Inkscape::XML::Node*> &reprs, SPDocument *document, Geom::Affine const* applyTransform);
#endif // SEEN_SP_MASK_H
diff --git a/src/sp-offset.cpp b/src/sp-offset.cpp
index c5336955c..7c3d0bd03 100644
--- a/src/sp-offset.cpp
+++ b/src/sp-offset.cpp
@@ -83,7 +83,7 @@ static void sp_offset_source_modified (SPObject *iSource, guint flags, SPItem *i
// fast is not mathematically correct, because computing the offset of a single
// cubic bezier patch is not trivial; in particular, there are problems with holes
// reappearing in offset when the radius becomes too large
-static bool use_slow_but_correct_offset_method=false;
+static bool use_slow_but_correct_offset_method=true;
SPOffset::SPOffset() : SPShape() {
this->rad = 1.0;
diff --git a/src/sp-pattern.cpp b/src/sp-pattern.cpp
index e89ed77ba..755d3d162 100644
--- a/src/sp-pattern.cpp
+++ b/src/sp-pattern.cpp
@@ -5,7 +5,7 @@
* Lauris Kaplinski <lauris@kaplinski.com>
* bulia byak <buliabyak@users.sf.net>
* Jon A. Cruz <jon@joncruz.org>
- * Abhishek Sharma
+ * Abhishek Sharma
*
* Copyright (C) 2002 Lauris Kaplinski
*
@@ -13,15 +13,15 @@
*/
#ifdef HAVE_CONFIG_H
-# include "config.h"
+#include "config.h"
#endif
#include <cstring>
#include <string>
#include <glibmm.h>
#include <2geom/transforms.h>
+#include <sigc++/functors/mem_fun.h>
-#include "macros.h"
#include "svg/svg.h"
#include "display/cairo-utils.h"
#include "display/drawing-context.h"
@@ -34,67 +34,61 @@
#include "style.h"
#include "sp-pattern.h"
#include "xml/repr.h"
-#include "display/grayscale.h"
-#include <sigc++/functors/ptr_fun.h>
-#include <sigc++/adaptors/bind.h>
+#include "sp-factory.h"
-/*
- * Pattern
- */
-static void pattern_ref_changed(SPObject *old_ref, SPObject *ref, SPPattern *pat);
-static void pattern_ref_modified (SPObject *ref, guint flags, SPPattern *pattern);
-
-SPPattern::SPPattern() : SPPaintServer(), SPViewBox() {
- this->href = NULL;
-
- this->ref = new SPPatternReference(this);
- this->ref->changedSignal().connect(sigc::bind(sigc::ptr_fun(pattern_ref_changed), this));
+SPPattern::SPPattern()
+ : SPPaintServer()
+ , SPViewBox()
+{
+ this->ref = new SPPatternReference(this);
+ this->ref->changedSignal().connect(sigc::mem_fun(this, &SPPattern::_onRefChanged));
- this->patternUnits = SP_PATTERN_UNITS_OBJECTBOUNDINGBOX;
- this->patternUnits_set = FALSE;
+ this->_pattern_units = UNITS_OBJECTBOUNDINGBOX;
+ this->_pattern_units_set = false;
- this->patternContentUnits = SP_PATTERN_UNITS_USERSPACEONUSE;
- this->patternContentUnits_set = FALSE;
+ this->_pattern_content_units = UNITS_USERSPACEONUSE;
+ this->_pattern_content_units_set = false;
- this->patternTransform = Geom::identity();
- this->patternTransform_set = FALSE;
+ this->_pattern_transform = Geom::identity();
+ this->_pattern_transform_set = false;
- this->x.unset();
- this->y.unset();
- this->width.unset();
- this->height.unset();
+ this->_x.unset();
+ this->_y.unset();
+ this->_width.unset();
+ this->_height.unset();
}
-SPPattern::~SPPattern() {
-}
+SPPattern::~SPPattern() {}
-void SPPattern::build(SPDocument* doc, Inkscape::XML::Node* repr) {
- SPPaintServer::build(doc, repr);
-
- this->readAttr( "patternUnits" );
- this->readAttr( "patternContentUnits" );
- this->readAttr( "patternTransform" );
- this->readAttr( "x" );
- this->readAttr( "y" );
- this->readAttr( "width" );
- this->readAttr( "height" );
- this->readAttr( "viewBox" );
- this->readAttr( "preserveAspectRatio" );
- this->readAttr( "xlink:href" );
-
- /* Register ourselves */
- doc->addResource("pattern", this);
+void SPPattern::build(SPDocument *doc, Inkscape::XML::Node *repr)
+{
+ SPPaintServer::build(doc, repr);
+
+ this->readAttr("patternUnits");
+ this->readAttr("patternContentUnits");
+ this->readAttr("patternTransform");
+ this->readAttr("x");
+ this->readAttr("y");
+ this->readAttr("width");
+ this->readAttr("height");
+ this->readAttr("viewBox");
+ this->readAttr("preserveAspectRatio");
+ this->readAttr("xlink:href");
+
+ /* Register ourselves */
+ doc->addResource("pattern", this);
}
-void SPPattern::release() {
+void SPPattern::release()
+{
if (this->document) {
// Unregister ourselves
this->document->removeResource("pattern", this);
}
if (this->ref) {
- this->modified_connection.disconnect();
+ this->_modified_connection.disconnect();
this->ref->detach();
delete this->ref;
this->ref = NULL;
@@ -103,113 +97,121 @@ void SPPattern::release() {
SPPaintServer::release();
}
-void SPPattern::set(unsigned int key, const gchar* value) {
- switch (key) {
- case SP_ATTR_PATTERNUNITS:
- if (value) {
- if (!strcmp (value, "userSpaceOnUse")) {
- this->patternUnits = SP_PATTERN_UNITS_USERSPACEONUSE;
- } else {
- this->patternUnits = SP_PATTERN_UNITS_OBJECTBOUNDINGBOX;
- }
-
- this->patternUnits_set = TRUE;
- } else {
- this->patternUnits_set = FALSE;
- }
-
- this->requestModified(SP_OBJECT_MODIFIED_FLAG);
- break;
-
- case SP_ATTR_PATTERNCONTENTUNITS:
- if (value) {
- if (!strcmp (value, "userSpaceOnUse")) {
- this->patternContentUnits = SP_PATTERN_UNITS_USERSPACEONUSE;
- } else {
- this->patternContentUnits = SP_PATTERN_UNITS_OBJECTBOUNDINGBOX;
- }
-
- this->patternContentUnits_set = TRUE;
- } else {
- this->patternContentUnits_set = FALSE;
- }
-
- this->requestModified(SP_OBJECT_MODIFIED_FLAG);
- break;
-
- case SP_ATTR_PATTERNTRANSFORM: {
- Geom::Affine t;
-
- if (value && sp_svg_transform_read (value, &t)) {
- this->patternTransform = t;
- this->patternTransform_set = TRUE;
- } else {
- this->patternTransform = Geom::identity();
- this->patternTransform_set = FALSE;
- }
-
- this->requestModified(SP_OBJECT_MODIFIED_FLAG);
- break;
- }
- case SP_ATTR_X:
- this->x.readOrUnset(value);
- this->requestModified(SP_OBJECT_MODIFIED_FLAG);
- break;
-
- case SP_ATTR_Y:
- this->y.readOrUnset(value);
- this->requestModified(SP_OBJECT_MODIFIED_FLAG);
- break;
-
- case SP_ATTR_WIDTH:
- this->width.readOrUnset(value);
- this->requestModified(SP_OBJECT_MODIFIED_FLAG);
- break;
-
- case SP_ATTR_HEIGHT:
- this->height.readOrUnset(value);
- this->requestModified(SP_OBJECT_MODIFIED_FLAG);
- break;
-
- case SP_ATTR_VIEWBOX:
- set_viewBox( value );
+void SPPattern::set(unsigned int key, const gchar *value)
+{
+ switch (key) {
+ case SP_ATTR_PATTERNUNITS:
+ if (value) {
+ if (!strcmp(value, "userSpaceOnUse")) {
+ this->_pattern_units = UNITS_USERSPACEONUSE;
+ }
+ else {
+ this->_pattern_units = UNITS_OBJECTBOUNDINGBOX;
+ }
+
+ this->_pattern_units_set = true;
+ }
+ else {
+ this->_pattern_units_set = false;
+ }
+
+ this->requestModified(SP_OBJECT_MODIFIED_FLAG);
+ break;
+
+ case SP_ATTR_PATTERNCONTENTUNITS:
+ if (value) {
+ if (!strcmp(value, "userSpaceOnUse")) {
+ this->_pattern_content_units = UNITS_USERSPACEONUSE;
+ }
+ else {
+ this->_pattern_content_units = UNITS_OBJECTBOUNDINGBOX;
+ }
+
+ this->_pattern_content_units_set = true;
+ }
+ else {
+ this->_pattern_content_units_set = false;
+ }
+
+ this->requestModified(SP_OBJECT_MODIFIED_FLAG);
+ break;
+
+ case SP_ATTR_PATTERNTRANSFORM: {
+ Geom::Affine t;
+
+ if (value && sp_svg_transform_read(value, &t)) {
+ this->_pattern_transform = t;
+ this->_pattern_transform_set = true;
+ }
+ else {
+ this->_pattern_transform = Geom::identity();
+ this->_pattern_transform_set = false;
+ }
+
+ this->requestModified(SP_OBJECT_MODIFIED_FLAG);
+ break;
+ }
+ case SP_ATTR_X:
+ this->_x.readOrUnset(value);
+ this->requestModified(SP_OBJECT_MODIFIED_FLAG);
+ break;
+
+ case SP_ATTR_Y:
+ this->_y.readOrUnset(value);
+ this->requestModified(SP_OBJECT_MODIFIED_FLAG);
+ break;
+
+ case SP_ATTR_WIDTH:
+ this->_width.readOrUnset(value);
+ this->requestModified(SP_OBJECT_MODIFIED_FLAG);
+ break;
+
+ case SP_ATTR_HEIGHT:
+ this->_height.readOrUnset(value);
+ this->requestModified(SP_OBJECT_MODIFIED_FLAG);
+ break;
+
+ case SP_ATTR_VIEWBOX:
+ set_viewBox(value);
this->requestModified(SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_VIEWPORT_MODIFIED_FLAG);
break;
case SP_ATTR_PRESERVEASPECTRATIO:
- set_preserveAspectRatio( value );
+ set_preserveAspectRatio(value);
this->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_VIEWPORT_MODIFIED_FLAG);
break;
- case SP_ATTR_XLINK_HREF:
- if ( value && this->href && ( strcmp(value, this->href) == 0 ) ) {
- /* Href unchanged, do nothing. */
- } else {
- g_free(this->href);
- this->href = NULL;
-
- if (value) {
- // First, set the href field; it's only used in the "unchanged" check above.
- this->href = g_strdup(value);
- // Now do the attaching, which emits the changed signal.
- if (value) {
- try {
- this->ref->attach(Inkscape::URI(value));
- } catch (Inkscape::BadURIException &e) {
- g_warning("%s", e.what());
- this->ref->detach();
- }
- } else {
- this->ref->detach();
- }
- }
- }
- break;
-
- default:
- SPPaintServer::set(key, value);
- break;
- }
+ case SP_ATTR_XLINK_HREF:
+ if (value && this->href == value) {
+ /* Href unchanged, do nothing. */
+ }
+ else {
+ this->href.clear();
+
+ if (value) {
+ // First, set the href field; it's only used in the "unchanged" check above.
+ this->href = value;
+ // Now do the attaching, which emits the changed signal.
+ if (value) {
+ try {
+ this->ref->attach(Inkscape::URI(value));
+ }
+ catch (Inkscape::BadURIException &e) {
+ g_warning("%s", e.what());
+ this->ref->detach();
+ }
+ }
+ else {
+ this->ref->detach();
+ }
+ }
+ }
+ break;
+
+ default:
+ SPPaintServer::set(key, value);
+ break;
+ }
}
@@ -217,104 +219,90 @@ void SPPattern::set(unsigned int key, const gchar* value) {
/* fixme: We need ::order_changed handler too (Lauris) */
-static GSList *pattern_getchildren(SPPattern *pat)
+void SPPattern::_getChildren(std::list<SPObject *> &l)
{
- GSList *l = NULL;
-
- for (SPPattern *pat_i = pat; pat_i != NULL; pat_i = pat_i->ref ? pat_i->ref->getObject() : NULL) {
+ for (SPPattern *pat_i = this; pat_i != NULL; pat_i = pat_i->ref ? pat_i->ref->getObject() : NULL) {
if (pat_i->firstChild()) { // find the first one with children
- for (SPObject *child = pat->firstChild() ; child ; child = child->getNext() ) {
- l = g_slist_prepend (l, child);
- }
- break; // do not go further up the chain if children are found
+ for (SPObject *child = pat_i->firstChild(); child; child = child->getNext()) {
+ l.push_back(child);
+ }
+ break; // do not go further up the chain if children are found
}
}
-
- return l;
}
-void SPPattern::update(SPCtx* ctx, unsigned int flags) {
- if (flags & SP_OBJECT_MODIFIED_FLAG) {
- flags |= SP_OBJECT_PARENT_MODIFIED_FLAG;
- }
+void SPPattern::update(SPCtx *ctx, unsigned int flags)
+{
+ typedef std::list<SPObject *>::iterator SPObjectIterator;
+
+ if (flags & SP_OBJECT_MODIFIED_FLAG) {
+ flags |= SP_OBJECT_PARENT_MODIFIED_FLAG;
+ }
- flags &= SP_OBJECT_MODIFIED_CASCADE;
+ flags &= SP_OBJECT_MODIFIED_CASCADE;
- GSList *l = pattern_getchildren (this);
- l = g_slist_reverse (l);
+ std::list<SPObject *> l;
+ _getChildren(l);
- while (l) {
- SPObject *child = SP_OBJECT (l->data);
+ for (SPObjectIterator it = l.begin(); it != l.end(); it++) {
+ SPObject *child = *it;
- sp_object_ref (child, NULL);
- l = g_slist_remove (l, child);
+ sp_object_ref(child, NULL);
- if (flags || (child->mflags & (SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_CHILD_MODIFIED_FLAG))) {
- child->updateDisplay(ctx, flags);
- }
+ if (flags || (child->mflags & (SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_CHILD_MODIFIED_FLAG))) {
+ child->updateDisplay(ctx, flags);
+ }
- sp_object_unref (child, NULL);
- }
+ sp_object_unref(child, NULL);
+ }
}
-void SPPattern::modified(unsigned int flags) {
- if (flags & SP_OBJECT_MODIFIED_FLAG) {
- flags |= SP_OBJECT_PARENT_MODIFIED_FLAG;
- }
+void SPPattern::modified(unsigned int flags)
+{
+ typedef std::list<SPObject *>::iterator SPObjectIterator;
+
+ if (flags & SP_OBJECT_MODIFIED_FLAG) {
+ flags |= SP_OBJECT_PARENT_MODIFIED_FLAG;
+ }
- flags &= SP_OBJECT_MODIFIED_CASCADE;
+ flags &= SP_OBJECT_MODIFIED_CASCADE;
- GSList *l = pattern_getchildren (this);
- l = g_slist_reverse (l);
+ std::list<SPObject *> l;
+ _getChildren(l);
- while (l) {
- SPObject *child = SP_OBJECT (l->data);
+ for (SPObjectIterator it = l.begin(); it != l.end(); it++) {
+ SPObject *child = *it;
- sp_object_ref (child, NULL);
- l = g_slist_remove (l, child);
+ sp_object_ref(child, NULL);
- if (flags || (child->mflags & (SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_CHILD_MODIFIED_FLAG))) {
- child->emitModified(flags);
- }
+ if (flags || (child->mflags & (SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_CHILD_MODIFIED_FLAG))) {
+ child->emitModified(flags);
+ }
- sp_object_unref (child, NULL);
- }
+ sp_object_unref(child, NULL);
+ }
}
-/**
-Gets called when the pattern is reattached to another <pattern>
-*/
-static void
-pattern_ref_changed(SPObject *old_ref, SPObject *ref, SPPattern *pat)
+void SPPattern::_onRefChanged(SPObject *old_ref, SPObject *ref)
{
- if (old_ref) {
- pat->modified_connection.disconnect();
- }
+ if (old_ref) {
+ _modified_connection.disconnect();
+ }
- if (SP_IS_PATTERN (ref)) {
- pat->modified_connection = ref->connectModified(sigc::bind<2>(sigc::ptr_fun(&pattern_ref_modified), pat));
- }
+ if (SP_IS_PATTERN(ref)) {
+ _modified_connection = ref->connectModified(sigc::mem_fun(this, &SPPattern::_onRefModified));
+ }
- pattern_ref_modified (ref, 0, pat);
+ _onRefModified(ref, 0);
}
-/**
-Gets called when the referenced <pattern> is changed
-*/
-static void pattern_ref_modified (SPObject */*ref*/, guint /*flags*/, SPPattern *pattern)
+void SPPattern::_onRefModified(SPObject * /*ref*/, guint /*flags*/)
{
- if ( SP_IS_OBJECT(pattern) ) {
- pattern->requestModified(SP_OBJECT_MODIFIED_FLAG);
- }
+ requestModified(SP_OBJECT_MODIFIED_FLAG);
// Conditional to avoid causing infinite loop if there's a cycle in the href chain.
}
-
-/**
-Count how many times pat is used by the styles of o and its descendants
-*/
-static guint
-count_pattern_hrefs(SPObject *o, SPPattern *pat)
+guint SPPattern::_countHrefs(SPObject *o) const
{
if (!o)
return 1;
@@ -322,84 +310,79 @@ count_pattern_hrefs(SPObject *o, SPPattern *pat)
guint i = 0;
SPStyle *style = o->style;
- if (style
- && style->fill.isPaintserver()
- && SP_IS_PATTERN(SP_STYLE_FILL_SERVER(style))
- && SP_PATTERN(SP_STYLE_FILL_SERVER(style)) == pat)
- {
- i ++;
+ if (style && style->fill.isPaintserver() && SP_IS_PATTERN(SP_STYLE_FILL_SERVER(style)) &&
+ SP_PATTERN(SP_STYLE_FILL_SERVER(style)) == this) {
+ i++;
}
- if (style
- && style->stroke.isPaintserver()
- && SP_IS_PATTERN(SP_STYLE_STROKE_SERVER(style))
- && SP_PATTERN(SP_STYLE_STROKE_SERVER(style)) == pat)
- {
- i ++;
+ if (style && style->stroke.isPaintserver() && SP_IS_PATTERN(SP_STYLE_STROKE_SERVER(style)) &&
+ SP_PATTERN(SP_STYLE_STROKE_SERVER(style)) == this) {
+ i++;
}
- for ( SPObject *child = o->firstChild(); child != NULL; child = child->next ) {
- i += count_pattern_hrefs(child, pat);
+ for (SPObject *child = o->firstChild(); child != NULL; child = child->next) {
+ i += _countHrefs(child);
}
return i;
}
-SPPattern *pattern_chain(SPPattern *pattern)
+SPPattern *SPPattern::_chain() const
{
- SPDocument *document = pattern->document;
- Inkscape::XML::Document *xml_doc = document->getReprDoc();
+ Inkscape::XML::Document *xml_doc = document->getReprDoc();
Inkscape::XML::Node *defsrepr = document->getDefs()->getRepr();
Inkscape::XML::Node *repr = xml_doc->createElement("svg:pattern");
repr->setAttribute("inkscape:collect", "always");
- gchar *parent_ref = g_strconcat("#", pattern->getRepr()->attribute("id"), NULL);
- repr->setAttribute("xlink:href", parent_ref);
- g_free (parent_ref);
+ Glib::ustring parent_ref = Glib::ustring::compose("#%1", getRepr()->attribute("id"));
+ repr->setAttribute("xlink:href", parent_ref);
defsrepr->addChild(repr, NULL);
const gchar *child_id = repr->attribute("id");
SPObject *child = document->getObjectById(child_id);
- g_assert (SP_IS_PATTERN (child));
+ g_assert(SP_IS_PATTERN(child));
- return SP_PATTERN (child);
+ return SP_PATTERN(child);
}
-SPPattern *
-sp_pattern_clone_if_necessary (SPItem *item, SPPattern *pattern, const gchar *property)
+SPPattern *SPPattern::clone_if_necessary(SPItem *item, const gchar *property)
{
- if (!pattern->href || pattern->hrefcount > count_pattern_hrefs(item, pattern)) {
- pattern = pattern_chain (pattern);
- gchar *href = g_strconcat("url(#", pattern->getRepr()->attribute("id"), ")", NULL);
+ SPPattern *pattern = this;
+ if (pattern->href.empty() || pattern->hrefcount > _countHrefs(item)) {
+ pattern = _chain();
+ Glib::ustring href = Glib::ustring::compose("url(#%1)", pattern->getRepr()->attribute("id"));
- SPCSSAttr *css = sp_repr_css_attr_new ();
- sp_repr_css_set_property (css, property, href);
+ SPCSSAttr *css = sp_repr_css_attr_new();
+ sp_repr_css_set_property(css, property, href.c_str());
sp_repr_css_change_recursive(item->getRepr(), css, "style");
}
return pattern;
}
-void
-sp_pattern_transform_multiply (SPPattern *pattern, Geom::Affine postmul, bool set)
+void SPPattern::transform_multiply(Geom::Affine postmul, bool set)
{
// this formula is for a different interpretation of pattern transforms as described in (*) in sp-pattern.cpp
// for it to work, we also need sp_object_read_attr( item, "transform");
- //pattern->patternTransform = premul * item->transform * pattern->patternTransform * item->transform.inverse() * postmul;
+ // pattern->patternTransform = premul * item->transform * pattern->patternTransform * item->transform.inverse() *
+ // postmul;
// otherwise the formula is much simpler
if (set) {
- pattern->patternTransform = postmul;
- } else {
- pattern->patternTransform = pattern_patternTransform(pattern) * postmul;
+ _pattern_transform = postmul;
}
- pattern->patternTransform_set = TRUE;
+ else {
+ _pattern_transform = getTransform() * postmul;
+ }
+ _pattern_transform_set = true;
- gchar *c=sp_svg_transform_write(pattern->patternTransform);
- pattern->getRepr()->setAttribute("patternTransform", c);
- g_free(c);
+ Glib::ustring c = sp_svg_transform_write(_pattern_transform);
+ getRepr()->setAttribute("patternTransform", c);
}
-const gchar *pattern_tile(const std::vector<Inkscape::XML::Node*> &reprs, Geom::Rect bounds, SPDocument *document, Geom::Affine transform, Geom::Affine move)
+const gchar *SPPattern::produce(const std::vector<Inkscape::XML::Node *> &reprs, Geom::Rect bounds,
+ SPDocument *document, Geom::Affine transform, Geom::Affine move)
{
+ typedef std::vector<Inkscape::XML::Node *>::const_iterator NodePtrIterator;
+
Inkscape::XML::Document *xml_doc = document->getReprDoc();
Inkscape::XML::Node *defsrepr = document->getDefs()->getRepr();
@@ -408,20 +391,19 @@ const gchar *pattern_tile(const std::vector<Inkscape::XML::Node*> &reprs, Geom::
sp_repr_set_svg_double(repr, "width", bounds.dimensions()[Geom::X]);
sp_repr_set_svg_double(repr, "height", bounds.dimensions()[Geom::Y]);
- gchar *t=sp_svg_transform_write(transform);
+ Glib::ustring t = sp_svg_transform_write(transform);
repr->setAttribute("patternTransform", t);
- g_free(t);
defsrepr->appendChild(repr);
const gchar *pat_id = repr->attribute("id");
SPObject *pat_object = document->getObjectById(pat_id);
- for (std::vector<Inkscape::XML::Node*>::const_iterator i=reprs.begin();i!=reprs.end();i++){
+ for (NodePtrIterator i = reprs.begin(); i != reprs.end(); i++) {
Inkscape::XML::Node *node = *i;
SPItem *copy = SP_ITEM(pat_object->appendChildRepr(node));
Geom::Affine dup_transform;
- if (!sp_svg_transform_read (node->attribute("transform"), &dup_transform))
+ if (!sp_svg_transform_read(node->attribute("transform"), &dup_transform))
dup_transform = Geom::identity();
dup_transform *= move;
@@ -432,14 +414,15 @@ const gchar *pattern_tile(const std::vector<Inkscape::XML::Node*> &reprs, Geom::
return pat_id;
}
-SPPattern *pattern_getroot(SPPattern *pat)
+SPPattern *SPPattern::rootPattern()
{
- for (SPPattern *pat_i = pat; pat_i != NULL; pat_i = pat_i->ref ? pat_i->ref->getObject() : NULL) {
- if ( pat_i->firstChild() ) { // find the first one with children
+ for (SPPattern *pat_i = this; pat_i != NULL; pat_i = pat_i->ref ? pat_i->ref->getObject() : NULL) {
+ if (pat_i->firstChild()) { // find the first one with children
return pat_i;
}
}
- return pat; // document is broken, we can't get to root; but at least we can return pat which is supposedly a valid pattern
+ return this; // document is broken, we can't get to root; but at least we can return pat which is supposedly a valid
+ // pattern
}
@@ -447,73 +430,73 @@ SPPattern *pattern_getroot(SPPattern *pat)
// Access functions that look up fields up the chain of referenced patterns and return the first one which is set
// FIXME: all of them must use chase_hrefs the same as in SPGradient, to avoid lockup on circular refs
-guint pattern_patternUnits (SPPattern const *pat)
+SPPattern::PatternUnits SPPattern::patternUnits() const
{
- for (SPPattern const *pat_i = pat; pat_i != NULL; pat_i = pat_i->ref ? pat_i->ref->getObject() : NULL) {
- if (pat_i->patternUnits_set)
- return pat_i->patternUnits;
+ for (SPPattern const *pat_i = this; pat_i != NULL; pat_i = pat_i->ref ? pat_i->ref->getObject() : NULL) {
+ if (pat_i->_pattern_units_set)
+ return pat_i->_pattern_units;
}
- return pat->patternUnits;
+ return _pattern_units;
}
-guint pattern_patternContentUnits (SPPattern const *pat)
+SPPattern::PatternUnits SPPattern::patternContentUnits() const
{
- for (SPPattern const *pat_i = pat; pat_i != NULL; pat_i = pat_i->ref ? pat_i->ref->getObject() : NULL) {
- if (pat_i->patternContentUnits_set)
- return pat_i->patternContentUnits;
+ for (SPPattern const *pat_i = this; pat_i != NULL; pat_i = pat_i->ref ? pat_i->ref->getObject() : NULL) {
+ if (pat_i->_pattern_content_units_set)
+ return pat_i->_pattern_content_units;
}
- return pat->patternContentUnits;
+ return _pattern_content_units;
}
-Geom::Affine const &pattern_patternTransform(SPPattern const *pat)
+Geom::Affine const &SPPattern::getTransform() const
{
- for (SPPattern const *pat_i = pat; pat_i != NULL; pat_i = pat_i->ref ? pat_i->ref->getObject() : NULL) {
- if (pat_i->patternTransform_set)
- return pat_i->patternTransform;
+ for (SPPattern const *pat_i = this; pat_i != NULL; pat_i = pat_i->ref ? pat_i->ref->getObject() : NULL) {
+ if (pat_i->_pattern_transform_set)
+ return pat_i->_pattern_transform;
}
- return pat->patternTransform;
+ return _pattern_transform;
}
-gdouble pattern_x (SPPattern const *pat)
+gdouble SPPattern::x() const
{
- for (SPPattern const *pat_i = pat; pat_i != NULL; pat_i = pat_i->ref ? pat_i->ref->getObject() : NULL) {
- if (pat_i->x._set)
- return pat_i->x.computed;
+ for (SPPattern const *pat_i = this; pat_i != NULL; pat_i = pat_i->ref ? pat_i->ref->getObject() : NULL) {
+ if (pat_i->_x._set)
+ return pat_i->_x.computed;
}
return 0;
}
-gdouble pattern_y (SPPattern const *pat)
+gdouble SPPattern::y() const
{
- for (SPPattern const *pat_i = pat; pat_i != NULL; pat_i = pat_i->ref ? pat_i->ref->getObject() : NULL) {
- if (pat_i->y._set)
- return pat_i->y.computed;
+ for (SPPattern const *pat_i = this; pat_i != NULL; pat_i = pat_i->ref ? pat_i->ref->getObject() : NULL) {
+ if (pat_i->_y._set)
+ return pat_i->_y.computed;
}
return 0;
}
-gdouble pattern_width (SPPattern const* pat)
+gdouble SPPattern::width() const
{
- for (SPPattern const *pat_i = pat; pat_i != NULL; pat_i = pat_i->ref ? pat_i->ref->getObject() : NULL) {
- if (pat_i->width._set)
- return pat_i->width.computed;
+ for (SPPattern const *pat_i = this; pat_i != NULL; pat_i = pat_i->ref ? pat_i->ref->getObject() : NULL) {
+ if (pat_i->_width._set)
+ return pat_i->_width.computed;
}
return 0;
}
-gdouble pattern_height (SPPattern const *pat)
+gdouble SPPattern::height() const
{
- for (SPPattern const *pat_i = pat; pat_i != NULL; pat_i = pat_i->ref ? pat_i->ref->getObject() : NULL) {
- if (pat_i->height._set)
- return pat_i->height.computed;
+ for (SPPattern const *pat_i = this; pat_i != NULL; pat_i = pat_i->ref ? pat_i->ref->getObject() : NULL) {
+ if (pat_i->_height._set)
+ return pat_i->_height.computed;
}
return 0;
}
-Geom::OptRect pattern_viewBox (SPPattern const *pat)
+Geom::OptRect SPPattern::viewbox() const
{
Geom::OptRect viewbox;
- for (SPPattern const *pat_i = pat; pat_i != NULL; pat_i = pat_i->ref ? pat_i->ref->getObject() : NULL) {
+ for (SPPattern const *pat_i = this; pat_i != NULL; pat_i = pat_i->ref ? pat_i->ref->getObject() : NULL) {
if (pat_i->viewBox_set) {
viewbox = pat_i->viewBox;
break;
@@ -522,10 +505,10 @@ Geom::OptRect pattern_viewBox (SPPattern const *pat)
return viewbox;
}
-static bool pattern_hasItemChildren (SPPattern const *pat)
+bool SPPattern::_hasItemChildren() const
{
bool hasChildren = false;
- for (SPObject const *child = pat->firstChild() ; child && !hasChildren ; child = child->getNext() ) {
+ for (SPObject const *child = firstChild(); child && !hasChildren; child = child->getNext()) {
if (SP_IS_ITEM(child)) {
hasChildren = true;
}
@@ -535,15 +518,16 @@ static bool pattern_hasItemChildren (SPPattern const *pat)
bool SPPattern::isValid() const
{
- double tile_width = pattern_width(this);
- double tile_height = pattern_height(this);
+ double tile_width = width();
+ double tile_height = height();
- if (tile_width <= 0 || tile_height <= 0)
- return false;
- return true;
+ if (tile_width <= 0 || tile_height <= 0)
+ return false;
+ return true;
}
-cairo_pattern_t* SPPattern::pattern_new(cairo_t *base_ct, Geom::OptRect const &bbox, double opacity) {
+cairo_pattern_t *SPPattern::pattern_new(cairo_t *base_ct, Geom::OptRect const &bbox, double opacity)
+{
bool needs_opacity = (1.0 - opacity) >= 1e-3;
bool visible = opacity >= 1e-3;
@@ -557,28 +541,28 @@ cairo_pattern_t* SPPattern::pattern_new(cairo_t *base_ct, Geom::OptRect const &b
for (SPPattern *pat_i = this; pat_i != NULL; pat_i = pat_i->ref ? pat_i->ref->getObject() : NULL) {
// find the first one with item children
- if (pat_i && SP_IS_OBJECT(pat_i) && pattern_hasItemChildren(pat_i)) {
+ if (pat_i && SP_IS_OBJECT(pat_i) && pat_i->_hasItemChildren()) {
shown = pat_i;
break; // do not go further up the chain if children are found
}
}
if (!shown) {
- return cairo_pattern_create_rgba(0,0,0,0);
+ return cairo_pattern_create_rgba(0, 0, 0, 0);
}
/* Create drawing for rendering */
Inkscape::Drawing drawing;
- unsigned int dkey = SPItem::display_key_new (1);
+ unsigned int dkey = SPItem::display_key_new(1);
Inkscape::DrawingGroup *root = new Inkscape::DrawingGroup(drawing);
drawing.setRoot(root);
- for (SPObject *child = shown->firstChild(); child != NULL; child = child->getNext() ) {
- if (SP_IS_ITEM (child)) {
+ for (SPObject *child = shown->firstChild(); child != NULL; child = child->getNext()) {
+ if (SP_IS_ITEM(child)) {
// for each item in pattern, show it on our drawing, add to the group,
// and connect to the release signal in case the item gets deleted
Inkscape::DrawingItem *cai;
- cai = SP_ITEM(child)->invoke_show (drawing, dkey, SP_ITEM_SHOW_DISPLAY);
+ cai = SP_ITEM(child)->invoke_show(drawing, dkey, SP_ITEM_SHOW_DISPLAY);
root->appendChild(cai);
}
}
@@ -591,40 +575,41 @@ cairo_pattern_t* SPPattern::pattern_new(cairo_t *base_ct, Geom::OptRect const &b
// * "x", "y", and "patternTransform" transform tile to user space after tile is generated.
// These functions recursively search up the tree to find the values.
- double tile_x = pattern_x(this);
- double tile_y = pattern_y(this);
- double tile_width = pattern_width(this);
- double tile_height = pattern_height(this);
- if ( bbox && (pattern_patternUnits(this) == SP_PATTERN_UNITS_OBJECTBOUNDINGBOX) ) {
- tile_x *= bbox->width();
- tile_y *= bbox->height();
- tile_width *= bbox->width();
+ double tile_x = x();
+ double tile_y = y();
+ double tile_width = width();
+ double tile_height = height();
+ if (bbox && (patternUnits() == UNITS_OBJECTBOUNDINGBOX)) {
+ tile_x *= bbox->width();
+ tile_y *= bbox->height();
+ tile_width *= bbox->width();
tile_height *= bbox->height();
}
// Pattern size in pattern space
Geom::Rect pattern_tile = Geom::Rect::from_xywh(0, 0, tile_width, tile_height);
-
+
// Content to tile (pattern space)
Geom::Affine content2ps;
- Geom::OptRect effective_view_box = pattern_viewBox(this);
+ Geom::OptRect effective_view_box = viewbox();
if (effective_view_box) {
- // viewBox to pattern server (using SPViewBox)
+ // viewBox to pattern server (using SPViewBox)
viewBox = *effective_view_box;
c2p.setIdentity();
- apply_viewbox( pattern_tile );
+ apply_viewbox(pattern_tile);
content2ps = c2p;
- } else {
+ }
+ else {
// Content to bbox
- if (bbox && (pattern_patternContentUnits(this) == SP_PATTERN_UNITS_OBJECTBOUNDINGBOX) ) {
- content2ps = Geom::Affine(bbox->width(), 0.0, 0.0, bbox->height(), 0,0);
+ if (bbox && (patternContentUnits() == UNITS_OBJECTBOUNDINGBOX)) {
+ content2ps = Geom::Affine(bbox->width(), 0.0, 0.0, bbox->height(), 0, 0);
}
}
// Tile (pattern space) to user.
- Geom::Affine ps2user = Geom::Translate(tile_x,tile_y) * pattern_patternTransform(this);
+ Geom::Affine ps2user = Geom::Translate(tile_x, tile_y) * getTransform();
// Transform of object with pattern (includes screen scaling)
@@ -644,7 +629,7 @@ cairo_pattern_t* SPPattern::pattern_new(cairo_t *base_ct, Geom::OptRect const &b
// to find the optimum tile size for rendering
// c is number of pixels in buffer x and y.
// Scale factor of 1.1 is too small... see bug #1251039
- Geom::Point c(pattern_tile.dimensions()*ps2user.descrim()*full.descrim()*2.0);
+ Geom::Point c(pattern_tile.dimensions() * ps2user.descrim() * full.descrim() * 2.0);
// Create drawing surface with size of pattern tile (in pattern space) but with number of pixels
// based on required resolution (c).
@@ -660,16 +645,16 @@ cairo_pattern_t* SPPattern::pattern_new(cairo_t *base_ct, Geom::OptRect const &b
}
// TODO: make sure there are no leaks.
- Inkscape::UpdateContext ctx; // UpdateContext is structure with only ctm!
+ Inkscape::UpdateContext ctx; // UpdateContext is structure with only ctm!
ctx.ctm = content2ps * pattern_surface.drawingTransform();
- dc.transform( pattern_surface.drawingTransform().inverse() );
+ dc.transform(pattern_surface.drawingTransform().inverse());
drawing.update(Geom::IntRect::infinite(), ctx);
// Render drawing to pattern_surface via drawing context, this calls root->render
// which is really DrawingItem->render().
drawing.render(dc, one_tile);
- for (SPObject *child = shown->firstChild() ; child != NULL; child = child->getNext() ) {
- if (SP_IS_ITEM (child)) {
+ for (SPObject *child = shown->firstChild(); child != NULL; child = child->getNext()) {
+ if (SP_IS_ITEM(child)) {
SP_ITEM(child)->invoke_hide(dkey);
}
}
@@ -685,12 +670,12 @@ cairo_pattern_t* SPPattern::pattern_new(cairo_t *base_ct, Geom::OptRect const &b
if (needs_opacity) {
dc.popGroupToSource(); // pop raw pattern
- dc.paint(opacity); // apply opacity
+ dc.paint(opacity); // apply opacity
}
cairo_pattern_t *cp = cairo_pattern_create_for_surface(pattern_surface.raw());
// Apply transformation to user space. Also compensate for oversampling.
- ink_cairo_pattern_set_matrix(cp, ps2user.inverse() * pattern_surface.drawingTransform() );
+ ink_cairo_pattern_set_matrix(cp, ps2user.inverse() * pattern_surface.drawingTransform());
cairo_pattern_set_extend(cp, CAIRO_EXTEND_REPEAT);
diff --git a/src/sp-pattern.h b/src/sp-pattern.h
index 34dd5a05b..145bb934e 100644
--- a/src/sp-pattern.h
+++ b/src/sp-pattern.h
@@ -1,9 +1,6 @@
-#ifndef SEEN_SP_PATTERN_H
-#define SEEN_SP_PATTERN_H
-
-/*
+/** @file
* SVG <pattern> implementation
- *
+ *//*
* Author:
* Lauris Kaplinski <lauris@kaplinski.com>
* Abhishek Sharma
@@ -13,95 +10,131 @@
* Released under GNU GPL, read the file 'COPYING' for more information
*/
-#define SP_PATTERN(obj) (dynamic_cast<SPPattern*>((SPObject*)obj))
-#define SP_IS_PATTERN(obj) (dynamic_cast<const SPPattern*>((SPObject*)obj) != NULL)
+#ifndef SEEN_SP_PATTERN_H
+#define SEEN_SP_PATTERN_H
-class SPPatternReference;
-class SPItem;
-typedef struct _GSList GSList;
+#include <list>
+#include <stddef.h>
+#include <glibmm/ustring.h>
+#include <sigc++/connection.h>
#include "svg/svg-length.h"
#include "sp-paint-server.h"
#include "uri-references.h"
#include "viewbox.h"
-#include <sigc++/connection.h>
+class SPPatternReference;
+class SPItem;
+namespace Inkscape {
+namespace XML {
+
+class Node;
+}
+}
+
+#define SP_PATTERN(obj) (dynamic_cast<SPPattern *>((SPObject *)obj))
+#define SP_IS_PATTERN(obj) (dynamic_cast<const SPPattern *>((SPObject *)obj) != NULL)
class SPPattern : public SPPaintServer, public SPViewBox {
public:
- SPPattern();
- virtual ~SPPattern();
+ enum PatternUnits { UNITS_USERSPACEONUSE, UNITS_OBJECTBOUNDINGBOX };
+
+ SPPattern();
+ virtual ~SPPattern();
/* Reference (href) */
- char *href;
+ Glib::ustring href;
SPPatternReference *ref;
- /* patternUnits and patternContentUnits attribute */
- unsigned int patternUnits : 1;
- unsigned int patternUnits_set : 1;
- unsigned int patternContentUnits : 1;
- unsigned int patternContentUnits_set : 1;
- /* patternTransform attribute */
- Geom::Affine patternTransform;
- unsigned int patternTransform_set : 1;
- /* Tile rectangle */
- SVGLength x;
- SVGLength y;
- SVGLength width;
- SVGLength height;
-
- sigc::connection modified_connection;
+ gdouble x() const;
+ gdouble y() const;
+ gdouble width() const;
+ gdouble height() const;
+ Geom::OptRect viewbox() const;
+ SPPattern::PatternUnits patternUnits() const;
+ SPPattern::PatternUnits patternContentUnits() const;
+ Geom::Affine const &getTransform() const;
+ SPPattern *rootPattern(); // TODO: const
+
+ SPPattern *clone_if_necessary(SPItem *item, const gchar *property);
+ void transform_multiply(Geom::Affine postmul, bool set);
+
+ /**
+ * @brief create a new pattern in XML tree
+ * @return created pattern id
+ */
+ static const gchar *produce(const std::vector<Inkscape::XML::Node *> &reprs, Geom::Rect bounds,
+ SPDocument *document, Geom::Affine transform, Geom::Affine move);
bool isValid() const;
- virtual cairo_pattern_t* pattern_new(cairo_t *ct, Geom::OptRect const &bbox, double opacity);
+ virtual cairo_pattern_t *pattern_new(cairo_t *ct, Geom::OptRect const &bbox, double opacity);
protected:
- virtual void build(SPDocument* doc, Inkscape::XML::Node* repr);
- virtual void release();
- virtual void set(unsigned int key, const gchar* value);
- virtual void update(SPCtx* ctx, unsigned int flags);
- virtual void modified(unsigned int flags);
+ virtual void build(SPDocument *doc, Inkscape::XML::Node *repr);
+ virtual void release();
+ virtual void set(unsigned int key, const gchar *value);
+ virtual void update(SPCtx *ctx, unsigned int flags);
+ virtual void modified(unsigned int flags);
+
+private:
+ bool _hasItemChildren() const;
+ void _getChildren(std::list<SPObject *> &l);
+ SPPattern *_chain() const;
+
+ /**
+ Count how many times pattern is used by the styles of o and its descendants
+ */
+ guint _countHrefs(SPObject *o) const;
+
+ /**
+ Gets called when the pattern is reattached to another <pattern>
+ */
+ void _onRefChanged(SPObject *old_ref, SPObject *ref);
+
+ /**
+ Gets called when the referenced <pattern> is changed
+ */
+ void _onRefModified(SPObject *ref, guint flags);
+
+ /* patternUnits and patternContentUnits attribute */
+ PatternUnits _pattern_units : 1;
+ bool _pattern_units_set : 1;
+ PatternUnits _pattern_content_units : 1;
+ bool _pattern_content_units_set : 1;
+ /* patternTransform attribute */
+ Geom::Affine _pattern_transform;
+ bool _pattern_transform_set : 1;
+ /* Tile rectangle */
+ SVGLength _x;
+ SVGLength _y;
+ SVGLength _width;
+ SVGLength _height;
+
+ sigc::connection _modified_connection;
};
class SPPatternReference : public Inkscape::URIReference {
public:
- SPPatternReference (SPObject *obj) : URIReference(obj) {}
- SPPattern *getObject() const {
+ SPPatternReference(SPObject *obj)
+ : URIReference(obj)
+ {
+ }
+
+ SPPattern *getObject() const
+ {
return reinterpret_cast<SPPattern *>(URIReference::getObject());
}
protected:
- virtual bool _acceptObject(SPObject *obj) const {
- return SP_IS_PATTERN (obj);
+ virtual bool _acceptObject(SPObject *obj) const
+ {
+ return SP_IS_PATTERN(obj);
}
};
-enum {
- SP_PATTERN_UNITS_USERSPACEONUSE,
- SP_PATTERN_UNITS_OBJECTBOUNDINGBOX
-};
-
-unsigned int pattern_users (SPPattern *pattern);
-SPPattern *pattern_chain (SPPattern *pattern);
-SPPattern *sp_pattern_clone_if_necessary (SPItem *item, SPPattern *pattern, const char *property);
-void sp_pattern_transform_multiply (SPPattern *pattern, Geom::Affine postmul, bool set);
-
-const char *pattern_tile (const std::vector<Inkscape::XML::Node*> &reprs, Geom::Rect bounds, SPDocument *document, Geom::Affine transform, Geom::Affine move);
-
-SPPattern *pattern_getroot (SPPattern *pat);
-
-unsigned int pattern_patternUnits (SPPattern const *pat);
-unsigned int pattern_patternContentUnits (SPPattern const *pat);
-Geom::Affine const &pattern_patternTransform(SPPattern const *pat);
-double pattern_x (SPPattern const *pat);
-double pattern_y (SPPattern const *pat);
-double pattern_width (SPPattern const *pat);
-double pattern_height (SPPattern const *pat);
-Geom::OptRect pattern_viewBox (SPPattern const *pat);
-
#endif // SEEN_SP_PATTERN_H
/*
diff --git a/src/sp-use.cpp b/src/sp-use.cpp
index 239f487a4..c8a0830c1 100644
--- a/src/sp-use.cpp
+++ b/src/sp-use.cpp
@@ -22,6 +22,8 @@
#include "display/drawing-group.h"
#include "attributes.h"
#include "document.h"
+#include "sp-clippath.h"
+#include "sp-mask.h"
#include "sp-factory.h"
#include "sp-flowregion.h"
#include "uri.h"
@@ -426,16 +428,43 @@ void SPUse::move_compensate(Geom::Affine const *mp) {
return;
Geom::Affine m(*mp);
+ Geom::Affine t = this->get_parent_transform();
+ Geom::Affine clone_move = t.inverse() * m * t;
// this is not a simple move, do not try to compensate
- if (!(m.isTranslation()))
+ if (!(m.isTranslation())){
+ //BUT move clippaths accordingly.
+ //if clone has a clippath, move it accordingly
+ if(clip_ref->getObject()){
+ SPObject *clip = clip_ref->getObject()->firstChild() ;
+ while(clip){
+ SPItem *item = (SPItem*) clip;
+ if(item){
+ item->transform *= m;
+ Geom::Affine identity;
+ item->doWriteTransform(clip->getRepr(),item->transform, &identity);
+ }
+ clip = clip->getNext();
+ }
+ }
+ if(mask_ref->getObject()){
+ SPObject *mask = mask_ref->getObject()->firstChild() ;
+ while(mask){
+ SPItem *item = (SPItem*) mask;
+ if(item){
+ item->transform *= m;
+ Geom::Affine identity;
+ item->doWriteTransform(mask->getRepr(),item->transform, &identity);
+ }
+ mask = mask->getNext();
+ }
+ }
return;
+ }
// restore item->transform field from the repr, in case it was changed by seltrans
this->readAttr ("transform");
- Geom::Affine t = this->get_parent_transform();
- Geom::Affine clone_move = t.inverse() * m * t;
// calculate the compensation matrix and the advertized movement matrix
Geom::Affine advertized_move;
@@ -449,6 +478,33 @@ void SPUse::move_compensate(Geom::Affine const *mp) {
g_assert_not_reached();
}
+ //if clone has a clippath, move it accordingly
+ if(clip_ref->getObject()){
+ SPObject *clip = clip_ref->getObject()->firstChild() ;
+ while(clip){
+ SPItem *item = (SPItem*) clip;
+ if(item){
+ item->transform *= clone_move.inverse();
+ Geom::Affine identity;
+ item->doWriteTransform(clip->getRepr(),item->transform, &identity);
+ }
+ clip = clip->getNext();
+ }
+ }
+ if(mask_ref->getObject()){
+ SPObject *mask = mask_ref->getObject()->firstChild() ;
+ while(mask){
+ SPItem *item = (SPItem*) mask;
+ if(item){
+ item->transform *= clone_move.inverse();
+ Geom::Affine identity;
+ item->doWriteTransform(mask->getRepr(),item->transform, &identity);
+ }
+ mask = mask->getNext();
+ }
+ }
+
+
// commit the compensation
this->transform *= clone_move;
this->doWriteTransform(this->getRepr(), this->transform, &advertized_move);
diff --git a/src/style-enums.h b/src/style-enums.h
index f235b6699..29b8e2130 100644
--- a/src/style-enums.h
+++ b/src/style-enums.h
@@ -74,44 +74,45 @@ enum SPCSSFontStretch {
// Can select more than one
enum SPCSSFontVariantLigatures {
- SP_CSS_FONT_VARIANT_LIGATURES_NORMAL,
- SP_CSS_FONT_VARIANT_LIGATURES_NONE,
- SP_CSS_FONT_VARIANT_LIGATURES_COMMON,
- SP_CSS_FONT_VARIANT_LIGATURES_NO_COMMON,
- SP_CSS_FONT_VARIANT_LIGATURES_DISCRETIONARY,
- SP_CSS_FONT_VARIANT_LIGATURES_NO_DISCRETIONARY,
- SP_CSS_FONT_VARIANT_LIGATURES_HISTORICAL,
- SP_CSS_FONT_VARIANT_LIGATURES_NO_HISTORICAL,
- SP_CSS_FONT_VARIANT_LIGATURES_CONTEXTUAL,
- SP_CSS_FONT_VARIANT_LIGATURES_NO_CONTEXTUAL
+ SP_CSS_FONT_VARIANT_LIGATURES_NONE = 0,
+ SP_CSS_FONT_VARIANT_LIGATURES_COMMON = 1,
+ SP_CSS_FONT_VARIANT_LIGATURES_DISCRETIONARY = 2,
+ SP_CSS_FONT_VARIANT_LIGATURES_HISTORICAL = 4,
+ SP_CSS_FONT_VARIANT_LIGATURES_CONTEXTUAL = 8,
+ SP_CSS_FONT_VARIANT_LIGATURES_NORMAL = 9, // Special case
+ SP_CSS_FONT_VARIANT_LIGATURES_NOCOMMON = 16,
+ SP_CSS_FONT_VARIANT_LIGATURES_NODISCRETIONARY = 32,
+ SP_CSS_FONT_VARIANT_LIGATURES_NOHISTORICAL = 64,
+ SP_CSS_FONT_VARIANT_LIGATURES_NOCONTEXTUAL = 128
};
enum SPCSSFontVariantPosition {
- SP_CSS_FONT_VARIANT_POSITION_NORMAL,
- SP_CSS_FONT_VARIANT_POSITION_SUB,
- SP_CSS_FONT_VARIANT_POSITION_SUPER
+ SP_CSS_FONT_VARIANT_POSITION_NORMAL = 1,
+ SP_CSS_FONT_VARIANT_POSITION_SUB = 2,
+ SP_CSS_FONT_VARIANT_POSITION_SUPER = 4
};
enum SPCSSFontVariantCaps {
- SP_CSS_FONT_VARIANT_CAPS_NORMAL,
- SP_CSS_FONT_VARIANT_CAPS_SMALL,
- SP_CSS_FONT_VARIANT_CAPS_ALL_SMALL,
- SP_CSS_FONT_VARIANT_CAPS_PETITE,
- SP_CSS_FONT_VARIANT_CAPS_ALL_PETITE,
- SP_CSS_FONT_VARIANT_CAPS_UNICASE,
- SP_CSS_FONT_VARIANT_CAPS_TITLING,
+ SP_CSS_FONT_VARIANT_CAPS_NORMAL = 1,
+ SP_CSS_FONT_VARIANT_CAPS_SMALL = 2,
+ SP_CSS_FONT_VARIANT_CAPS_ALL_SMALL = 4,
+ SP_CSS_FONT_VARIANT_CAPS_PETITE = 8,
+ SP_CSS_FONT_VARIANT_CAPS_ALL_PETITE = 16,
+ SP_CSS_FONT_VARIANT_CAPS_UNICASE = 32,
+ SP_CSS_FONT_VARIANT_CAPS_TITLING = 64
};
+// Can select more than one (see spec)
enum SPCSSFontVariantNumeric {
- SP_CSS_FONT_VARIANT_NUMERIC_NORMAL,
- SP_CSS_FONT_VARIANT_NUMERIC_LINING_NUMS,
- SP_CSS_FONT_VARIANT_NUMERIC_OLDSTYLE_NUMS,
- SP_CSS_FONT_VARIANT_NUMERIC_PROPORTIONAL_NUMS,
- SP_CSS_FONT_VARIANT_NUMERIC_TABULAR_NUMS,
- SP_CSS_FONT_VARIANT_NUMERIC_DIAGONAL_FRACTIONS,
- SP_CSS_FONT_VARIANT_NUMERIC_STACKED_FRACTIONS,
- SP_CSS_FONT_VARIANT_NUMERIC_ORDINAL,
- SP_CSS_FONT_VARIANT_NUMERIC_SLASHED_ZERO
+ SP_CSS_FONT_VARIANT_NUMERIC_NORMAL = 0,
+ SP_CSS_FONT_VARIANT_NUMERIC_LINING_NUMS = 1,
+ SP_CSS_FONT_VARIANT_NUMERIC_OLDSTYLE_NUMS = 2,
+ SP_CSS_FONT_VARIANT_NUMERIC_PROPORTIONAL_NUMS = 4,
+ SP_CSS_FONT_VARIANT_NUMERIC_TABULAR_NUMS = 8,
+ SP_CSS_FONT_VARIANT_NUMERIC_DIAGONAL_FRACTIONS = 16,
+ SP_CSS_FONT_VARIANT_NUMERIC_STACKED_FRACTIONS = 32,
+ SP_CSS_FONT_VARIANT_NUMERIC_ORDINAL = 64,
+ SP_CSS_FONT_VARIANT_NUMERIC_SLASHED_ZERO = 128
};
enum SPCSSFontVariantAlternates {
@@ -376,16 +377,16 @@ static SPStyleEnum const enum_font_stretch[] = {
};
static SPStyleEnum const enum_font_variant_ligatures[] = {
- {"normal", SP_CSS_FONT_VARIANT_LIGATURES_NORMAL},
- {"none", SP_CSS_FONT_VARIANT_LIGATURES_NONE},
- {"common-ligatures", SP_CSS_FONT_VARIANT_LIGATURES_COMMON},
- {"no-common-ligatures", SP_CSS_FONT_VARIANT_LIGATURES_NO_COMMON},
- {"discretionary-ligatures", SP_CSS_FONT_VARIANT_LIGATURES_DISCRETIONARY},
- {"no-discretionary-ligatures", SP_CSS_FONT_VARIANT_LIGATURES_NO_DISCRETIONARY},
- {"historical-ligatures", SP_CSS_FONT_VARIANT_LIGATURES_HISTORICAL},
- {"nohistorical-ligatures", SP_CSS_FONT_VARIANT_LIGATURES_NO_HISTORICAL},
- {"contextual", SP_CSS_FONT_VARIANT_LIGATURES_CONTEXTUAL},
- {"no-contextual", SP_CSS_FONT_VARIANT_LIGATURES_NO_CONTEXTUAL},
+ {"none", SP_CSS_FONT_VARIANT_LIGATURES_NONE},
+ {"common-ligatures", SP_CSS_FONT_VARIANT_LIGATURES_COMMON},
+ {"discretionary-ligatures", SP_CSS_FONT_VARIANT_LIGATURES_DISCRETIONARY},
+ {"historical-ligatures", SP_CSS_FONT_VARIANT_LIGATURES_HISTORICAL},
+ {"contextual", SP_CSS_FONT_VARIANT_LIGATURES_CONTEXTUAL},
+ {"normal", SP_CSS_FONT_VARIANT_LIGATURES_NORMAL},
+ {"no-common-ligatures", SP_CSS_FONT_VARIANT_LIGATURES_NOCOMMON},
+ {"no-discretionary-ligatures", SP_CSS_FONT_VARIANT_LIGATURES_NODISCRETIONARY},
+ {"no-historical-ligatures", SP_CSS_FONT_VARIANT_LIGATURES_NOHISTORICAL},
+ {"no-contextual", SP_CSS_FONT_VARIANT_LIGATURES_NOCONTEXTUAL},
{NULL, -1}
};
@@ -401,7 +402,7 @@ static SPStyleEnum const enum_font_variant_caps[] = {
{"small-caps", SP_CSS_FONT_VARIANT_CAPS_SMALL},
{"all-small-caps", SP_CSS_FONT_VARIANT_CAPS_ALL_SMALL},
{"petite-caps", SP_CSS_FONT_VARIANT_CAPS_PETITE},
- {"all_petite-caps", SP_CSS_FONT_VARIANT_CAPS_ALL_PETITE},
+ {"all-petite-caps", SP_CSS_FONT_VARIANT_CAPS_ALL_PETITE},
{"unicase", SP_CSS_FONT_VARIANT_CAPS_UNICASE},
{"titling", SP_CSS_FONT_VARIANT_CAPS_TITLING},
{NULL, -1}
diff --git a/src/style-internal.cpp b/src/style-internal.cpp
index 915282301..c117a97f9 100644
--- a/src/style-internal.cpp
+++ b/src/style-internal.cpp
@@ -45,6 +45,8 @@
#include <sigc++/functors/ptr_fun.h>
#include <sigc++/adaptors/bind.h>
+#include <glibmm/regex.h>
+
// TODO REMOVE OR MAKE MEMBER FUNCTIONS
void sp_style_fill_paint_server_ref_changed( SPObject *old_ref, SPObject *ref, SPStyle *style);
void sp_style_stroke_paint_server_ref_changed(SPObject *old_ref, SPObject *ref, SPStyle *style);
@@ -664,6 +666,241 @@ SPIEnum::operator==(const SPIBase& rhs) {
}
+// SPIEnumBits ----------------------------------------------------------
+// Used for 'font-variant-xxx'
+void
+SPIEnumBits::read( gchar const *str ) {
+
+ if( !str ) return;
+ std::cout << "SPIEnumBits: " << name << ": " << str << std::endl;
+ if( !strcmp(str, "inherit") ) {
+ set = true;
+ inherit = true;
+ } else {
+ for (unsigned i = 0; enums[i].key; i++) {
+ if (!strcmp(str, enums[i].key)) {
+ std::cout << " found: " << enums[i].key << std::endl;
+ set = true;
+ inherit = false;
+ value += enums[i].value;
+ /* Save copying for values not needing it */
+ computed = value;
+ }
+ }
+ }
+}
+
+const Glib::ustring
+SPIEnumBits::write( guint const flags, SPIBase const *const base) const {
+
+ SPIEnum const *const my_base = dynamic_cast<const SPIEnum*>(base);
+ if ( (flags & SP_STYLE_FLAG_ALWAYS) ||
+ ((flags & SP_STYLE_FLAG_IFSET) && this->set) ||
+ ((flags & SP_STYLE_FLAG_IFDIFF) && this->set
+ && (!my_base->set || this != my_base )))
+ {
+ if (this->inherit) {
+ return (name + ":inherit;");
+ }
+ if (this->value == 0 ) {
+ return (name + ":normal");
+ }
+ Glib::ustring return_string = name + ":";
+ unsigned j = 1;
+ for (unsigned i = 0; enums[i].key; ++i) {
+ if (j & this->value ) {
+ return_string += enums[i].value + " ";
+ }
+ j *= 2;
+ }
+ return return_string;
+ }
+ return Glib::ustring("");
+}
+
+
+// SPILigatures -----------------------------------------------------
+// Used for 'font-variant-ligatures'
+void
+SPILigatures::read( gchar const *str ) {
+
+ if( !str ) return;
+
+ value = SP_CSS_FONT_VARIANT_LIGATURES_NORMAL;
+ if( !strcmp(str, "inherit") ) {
+ set = true;
+ inherit = true;
+ } else if (!strcmp(str, "normal" )) {
+ // Defaults for TrueType
+ inherit = false;
+ set = true;
+ } else if (!strcmp(str, "none" )) {
+ value = SP_CSS_FONT_VARIANT_LIGATURES_NONE;
+ inherit = false;
+ set = true;
+ } else {
+ // We need to parse in order
+ std::vector<Glib::ustring> tokens = Glib::Regex::split_simple("\\s+", str );
+ for( unsigned i = 0; i < tokens.size(); ++i ) {
+ for (unsigned j = 0; enums[j].key; ++j ) {
+ if (tokens[i].compare( enums[j].key ) == 0 ) {
+ set = true;
+ inherit = false;
+ if( enums[j].value < SP_CSS_FONT_VARIANT_LIGATURES_NOCOMMON ) {
+ // Turn on
+ value |= enums[j].value;
+ } else {
+ // Turn off
+ value &= ~(enums[j].value >> 4);
+ }
+ }
+ }
+ }
+ }
+ computed = value;
+}
+
+const Glib::ustring
+SPILigatures::write( guint const flags, SPIBase const *const base) const {
+
+ SPIEnum const *const my_base = dynamic_cast<const SPIEnum*>(base);
+ if ( (flags & SP_STYLE_FLAG_ALWAYS) ||
+ ((flags & SP_STYLE_FLAG_IFSET) && this->set) ||
+ ((flags & SP_STYLE_FLAG_IFDIFF) && this->set
+ && (!my_base->set || this != my_base )))
+ {
+ if (this->inherit) {
+ return (name + ":inherit;");
+ }
+ if (value == SP_CSS_FONT_VARIANT_LIGATURES_NONE ) {
+ return (name + ":none;");
+ }
+ if (value == SP_CSS_FONT_VARIANT_LIGATURES_NORMAL ) {
+ return (name + ":normal;");
+ }
+
+ Glib::ustring return_string = name + ":";
+ if ( !(value & SP_CSS_FONT_VARIANT_LIGATURES_COMMON) )
+ return_string += "no-common-ligatures ";
+ if ( value & SP_CSS_FONT_VARIANT_LIGATURES_DISCRETIONARY )
+ return_string += "discretionary-ligatures ";
+ if ( value & SP_CSS_FONT_VARIANT_LIGATURES_HISTORICAL )
+ return_string += "historical-ligatures ";
+ if ( !(value & SP_CSS_FONT_VARIANT_LIGATURES_CONTEXTUAL) )
+ return_string += "no-contextual ";
+ return_string.erase( return_string.size() - 1 );
+ return_string += ";";
+ return return_string;
+ }
+ return Glib::ustring("");
+}
+
+
+// SPINumeric -----------------------------------------------------
+// Used for 'font-variant-numeric'
+void
+SPINumeric::read( gchar const *str ) {
+
+ if( !str ) return;
+
+ value = SP_CSS_FONT_VARIANT_NUMERIC_NORMAL;
+ if( !strcmp(str, "inherit") ) {
+ set = true;
+ inherit = true;
+ } else if (!strcmp(str, "normal" )) {
+ // Defaults for TrueType
+ inherit = false;
+ set = true;
+ } else {
+ // We need to parse in order
+ std::vector<Glib::ustring> tokens = Glib::Regex::split_simple("\\s+", str );
+ for( unsigned i = 0; i < tokens.size(); ++i ) {
+ for (unsigned j = 0; enums[j].key; ++j ) {
+ if (tokens[i].compare( enums[j].key ) == 0 ) {
+ set = true;
+ inherit = false;
+ value |= enums[j].value;
+
+ // Must switch off incompatible value
+ switch (enums[j].value ) {
+ case SP_CSS_FONT_VARIANT_NUMERIC_LINING_NUMS:
+ value &= ~SP_CSS_FONT_VARIANT_NUMERIC_OLDSTYLE_NUMS;
+ break;
+ case SP_CSS_FONT_VARIANT_NUMERIC_OLDSTYLE_NUMS:
+ value &= ~SP_CSS_FONT_VARIANT_NUMERIC_LINING_NUMS;
+ break;
+
+ case SP_CSS_FONT_VARIANT_NUMERIC_PROPORTIONAL_NUMS:
+ value &= ~SP_CSS_FONT_VARIANT_NUMERIC_TABULAR_NUMS;
+ break;
+ case SP_CSS_FONT_VARIANT_NUMERIC_TABULAR_NUMS:
+ value &= ~SP_CSS_FONT_VARIANT_NUMERIC_PROPORTIONAL_NUMS;
+ break;
+
+ case SP_CSS_FONT_VARIANT_NUMERIC_DIAGONAL_FRACTIONS:
+ value &= ~SP_CSS_FONT_VARIANT_NUMERIC_STACKED_FRACTIONS;
+ break;
+ case SP_CSS_FONT_VARIANT_NUMERIC_STACKED_FRACTIONS:
+ value &= ~SP_CSS_FONT_VARIANT_NUMERIC_DIAGONAL_FRACTIONS;
+ break;
+
+ case SP_CSS_FONT_VARIANT_NUMERIC_NORMAL:
+ case SP_CSS_FONT_VARIANT_NUMERIC_ORDINAL:
+ case SP_CSS_FONT_VARIANT_NUMERIC_SLASHED_ZERO:
+ // Do nothing
+ break;
+
+ default:
+ std::cerr << "SPINumeric::read(): Invalid value." << std::endl;
+ break;
+ }
+ }
+ }
+ }
+ }
+ computed = value;
+}
+
+const Glib::ustring
+SPINumeric::write( guint const flags, SPIBase const *const base) const {
+
+ SPIEnum const *const my_base = dynamic_cast<const SPIEnum*>(base);
+ if ( (flags & SP_STYLE_FLAG_ALWAYS) ||
+ ((flags & SP_STYLE_FLAG_IFSET) && this->set) ||
+ ((flags & SP_STYLE_FLAG_IFDIFF) && this->set
+ && (!my_base->set || this != my_base )))
+ {
+ if (this->inherit) {
+ return (name + ":inherit;");
+ }
+ if (value == SP_CSS_FONT_VARIANT_NUMERIC_NORMAL ) {
+ return (name + ":normal;");
+ }
+
+ Glib::ustring return_string = name + ":";
+ if ( value & SP_CSS_FONT_VARIANT_NUMERIC_LINING_NUMS )
+ return_string += "lining-nums ";
+ if ( value & SP_CSS_FONT_VARIANT_NUMERIC_OLDSTYLE_NUMS )
+ return_string += "oldstyle-nums ";
+ if ( value & SP_CSS_FONT_VARIANT_NUMERIC_PROPORTIONAL_NUMS )
+ return_string += "proportional-nums ";
+ if ( value & SP_CSS_FONT_VARIANT_NUMERIC_TABULAR_NUMS )
+ return_string += "tabular-nums ";
+ if ( value & SP_CSS_FONT_VARIANT_NUMERIC_DIAGONAL_FRACTIONS )
+ return_string += "diagonal-fractions ";
+ if ( value & SP_CSS_FONT_VARIANT_NUMERIC_STACKED_FRACTIONS )
+ return_string += "stacked-fractions ";
+ if ( value & SP_CSS_FONT_VARIANT_NUMERIC_ORDINAL )
+ return_string += "ordinal ";
+ if ( value & SP_CSS_FONT_VARIANT_NUMERIC_SLASHED_ZERO )
+ return_string += "slashed-zero ";
+ return_string.erase( return_string.size() - 1 );
+ return_string += ";";
+ return return_string;
+ }
+ return Glib::ustring("");
+}
+
// SPIString ------------------------------------------------------------
@@ -1694,6 +1931,11 @@ SPIFontSize::read( gchar const *str ) {
unit = length.unit;
value = length.value;
computed = length.computed;
+ /* Set a minimum font size to something much smaller than should ever (ever!) be encountered in a real file.
+ If a bad SVG file is encountered and this is zero odd things
+ might happen because the inverse is used in some scaling actions.
+ */
+ if ( computed <= 1.0e-32 ) { computed = 1.0e-32; }
if( unit == SP_CSS_UNIT_PERCENT ) {
type = SP_FONT_SIZE_PERCENTAGE;
} else {
@@ -1774,6 +2016,11 @@ SPIFontSize::cascade( const SPIBase* const parent ) {
break;
}
}
+ /* Set a minimum font size to something much smaller than should ever (ever!) be encountered in a real file.
+ If a bad SVG file is encountered and this is zero odd things
+ might happen because the inverse is used in some scaling actions.
+ */
+ if ( computed <= 1.0e-32 ) { computed = 1.0e-32; }
} else {
std::cerr << "SPIFontSize::cascade(): Incorrect parent type" << std::endl;
}
@@ -1862,6 +2109,11 @@ SPIFontSize::merge( const SPIBase* const parent ) {
}
}
} // Relative size
+ /* Set a minimum font size to something much smaller than should ever (ever!) be encountered in a real file.
+ If a bad SVG file is encountered and this is zero odd things
+ might happen because the inverse is used in some scaling actions.
+ */
+ if ( computed <= 1.0e-32 ) { computed = 1.0e-32; }
} // Parent set and not inherit
} else {
std::cerr << "SPIFontSize::merge(): Incorrect parent type" << std::endl;
diff --git a/src/style-internal.h b/src/style-internal.h
index a8f0c5096..bd2a92c8c 100644
--- a/src/style-internal.h
+++ b/src/style-internal.h
@@ -510,6 +510,77 @@ private:
};
+/// SPIEnum w/ bits, allows values with multiple key words.
+class SPIEnumBits : public SPIEnum
+{
+
+public:
+ SPIEnumBits() :
+ SPIEnum( "anonymous_enumbits", NULL )
+ {}
+
+ SPIEnumBits( Glib::ustring const &name, SPStyleEnum const *enums, unsigned value = 0, bool inherits = true ) :
+ SPIEnum( name, enums, value, inherit )
+ {}
+
+ virtual ~SPIEnumBits()
+ {}
+
+ virtual void read( gchar const *str );
+ virtual const Glib::ustring write( guint const flags = SP_STYLE_FLAG_IFSET,
+ SPIBase const *const base = NULL ) const;
+
+};
+
+
+/// SPIEnum w/ extra bits. The 'font-variants-ligatures' property is a complete mess that needs
+/// special handling. For OpenType fonts the values 'common-ligatures', 'contextual',
+/// 'no-discretionary-ligatures', and 'no-historical-ligatures' are not useful but we still must be
+/// able to parse them.
+class SPILigatures : public SPIEnum
+{
+
+public:
+ SPILigatures() :
+ SPIEnum( "anonymous_enumligatures", NULL )
+ {}
+
+ SPILigatures( Glib::ustring const &name, SPStyleEnum const *enums) :
+ SPIEnum( name, enums, SP_CSS_FONT_VARIANT_NORMAL )
+ {}
+
+ virtual ~SPILigatures()
+ {}
+
+ virtual void read( gchar const *str );
+ virtual const Glib::ustring write( guint const flags = SP_STYLE_FLAG_IFSET,
+ SPIBase const *const base = NULL ) const;
+};
+
+
+/// SPIEnum w/ extra bits. The 'font-variants-numeric' property is a complete mess that needs
+/// special handling. Multiple key words can be specified, some exclusive of others.
+class SPINumeric : public SPIEnum
+{
+
+public:
+ SPINumeric() :
+ SPIEnum( "anonymous_enumnumeric", NULL )
+ {}
+
+ SPINumeric( Glib::ustring const &name, SPStyleEnum const *enums) :
+ SPIEnum( name, enums, SP_CSS_FONT_VARIANT_NUMERIC_NORMAL )
+ {}
+
+ virtual ~SPINumeric()
+ {}
+
+ virtual void read( gchar const *str );
+ virtual const Glib::ustring write( guint const flags = SP_STYLE_FLAG_IFSET,
+ SPIBase const *const base = NULL ) const;
+};
+
+
/// String type internal to SPStyle.
// Used for 'marker', ..., 'font', 'font-family', 'inkscape-font-specification'
class SPIString : public SPIBase
diff --git a/src/style-test.h b/src/style-test.h
index cd6769b24..c6bb665e0 100644
--- a/src/style-test.h
+++ b/src/style-test.h
@@ -109,13 +109,13 @@ public:
TestCase("font: 12pt/15pt sans-serif",
"font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;line-height:15pt;font-family:sans-serif"),
TestCase("font: 80% sans-serif",
- "font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:80.00000119%;line-height:normal;font-family:sans-serif"),
+ "font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:80%;line-height:normal;font-family:sans-serif"),
TestCase("font: x-large/110% 'new century schoolbook', serif",
- "font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:x-large;line-height:110.00000238%;font-family:\'new century schoolbook\', serif"),
+ "font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:x-large;line-height:110%;font-family:\'new century schoolbook\', serif"),
TestCase("font: bold italic large Palatino, serif",
"font-style:italic;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:large;line-height:normal;font-family:Palatino, serif"),
TestCase("font: normal small-caps 120%/120% fantasy",
- "font-style:normal;font-variant:small-caps;font-weight:normal;font-stretch:normal;font-size:120.00000477%;line-height:120.00000477%;font-family:fantasy"),
+ "font-style:normal;font-variant:small-caps;font-weight:normal;font-stretch:normal;font-size:120%;line-height:120%;font-family:fantasy"),
TestCase("font: condensed oblique 12pt 'Helvetica Neue', serif;",
"font-style:oblique;font-variant:normal;font-weight:normal;font-stretch:condensed;font-size:16px;line-height:normal;font-family:\'Helvetica Neue\', serif"),
@@ -137,6 +137,34 @@ public:
TestCase("font-weight:bolder"),
TestCase("font-stretch:condensed"), // SPIEnum
+ TestCase("font-variant-ligatures:none"), // SPILigatures
+ TestCase("font-variant-ligatures:normal"),
+ TestCase("font-variant-ligatures:no-common-ligatures"),
+ TestCase("font-variant-ligatures:discretionary-ligatures"),
+ TestCase("font-variant-ligatures:historical-ligatures"),
+ TestCase("font-variant-ligatures:no-contextual"),
+ TestCase("font-variant-ligatures:common-ligatures", "font-variant-ligatures:normal"),
+ TestCase("font-variant-ligatures:contextual", "font-variant-ligatures:normal"),
+ TestCase("font-variant-ligatures:no-common-ligatures historical-ligatures"),
+ TestCase("font-variant-ligatures:historical-ligatures no-contextual"),
+ TestCase("font-variant-position:normal"),
+ TestCase("font-variant-position:sub"),
+ TestCase("font-variant-position:super"),
+ TestCase("font-variant-caps:normal"),
+ TestCase("font-variant-caps:small-caps"),
+ TestCase("font-variant-caps:all-small-caps"),
+ TestCase("font-variant-numeric:normal"),
+ TestCase("font-variant-numeric:lining-nums"),
+ TestCase("font-variant-numeric:oldstyle-nums"),
+ TestCase("font-variant-numeric:proportional-nums"),
+ TestCase("font-variant-numeric:tabular-nums"),
+ TestCase("font-variant-numeric:diagonal-fractions"),
+ TestCase("font-variant-numeric:stacked-fractions"),
+ TestCase("font-variant-numeric:ordinal"),
+ TestCase("font-variant-numeric:slashed-zero"),
+ TestCase("font-variant-numeric:tabular-nums slashed-zero"),
+ TestCase("font-variant-numeric:tabular-nums proportional-nums", "font-variant-numeric:proportional-nums"),
+
// Should be moved down
TestCase("text-indent:12em"), // SPILength?
TestCase("text-align:center"), // SPIEnum
diff --git a/src/style.cpp b/src/style.cpp
index 49a13604b..b218f4e4d 100644
--- a/src/style.cpp
+++ b/src/style.cpp
@@ -119,10 +119,10 @@ SPStyle::SPStyle(SPDocument *document_in, SPObject *object_in) :
font_specification( "-inkscape-font-specification" ), // SPIString
// Font variants
- font_variant_ligatures( "font-variant-ligatures", enum_font_variant_ligatures, SP_CSS_FONT_VARIANT_LIGATURES_NORMAL ),
+ font_variant_ligatures( "font-variant-ligatures", enum_font_variant_ligatures ),
font_variant_position( "font-variant-position", enum_font_variant_position, SP_CSS_FONT_VARIANT_POSITION_NORMAL ),
font_variant_caps( "font-variant-caps", enum_font_variant_caps, SP_CSS_FONT_VARIANT_CAPS_NORMAL ),
- font_variant_numeric( "font-variant-numeric", enum_font_variant_numeric, SP_CSS_FONT_VARIANT_NUMERIC_NORMAL ),
+ font_variant_numeric( "font-variant-numeric", enum_font_variant_numeric ),
font_variant_alternates("font-variant-alternates", enum_font_variant_alternates, SP_CSS_FONT_VARIANT_ALTERNATES_NORMAL ),
font_variant_east_asian("font-variant-east_asian", enum_font_variant_east_asian, SP_CSS_FONT_VARIANT_EAST_ASIAN_NORMAL ),
font_feature_settings( "font-feature-settings", "normal" ),
diff --git a/src/style.h b/src/style.h
index 2618662f5..8e22b3121 100644
--- a/src/style.h
+++ b/src/style.h
@@ -113,13 +113,13 @@ public:
/* Font variants -------------------- */
/** Font variant ligatures */
- SPIEnum font_variant_ligatures;
+ SPILigatures font_variant_ligatures;
/** Font variant position (subscript/superscript) */
SPIEnum font_variant_position;
/** Font variant caps (small caps) */
SPIEnum font_variant_caps;
/** Font variant numeric (numerical formatting) */
- SPIEnum font_variant_numeric;
+ SPINumeric font_variant_numeric;
/** Font variant alternates (alternates/swatches) */
SPIEnum font_variant_alternates;
/** Font variant East Asian */
diff --git a/src/ui/CMakeLists.txt b/src/ui/CMakeLists.txt
index 991d11feb..fbf25d039 100644
--- a/src/ui/CMakeLists.txt
+++ b/src/ui/CMakeLists.txt
@@ -6,6 +6,7 @@ set(ui_SRC
interface.cpp
object-edit.cpp
previewholder.cpp
+ selected-color.cpp
shape-editor.cpp
tool-factory.cpp
tools-switch.cpp
@@ -115,13 +116,20 @@ set(ui_SRC
widget/anchor-selector.cpp
widget/button.cpp
widget/clipmaskicon.cpp
+ widget/color-entry.cpp
+ widget/color-icc-selector.cpp
+ widget/color-notebook.cpp
widget/color-picker.cpp
widget/color-preview.cpp
+ widget/color-scales.cpp
+ widget/color-slider.cpp
+ widget/color-wheel-selector.cpp
widget/dock-item.cpp
widget/dock.cpp
widget/entity-entry.cpp
widget/entry.cpp
widget/filter-effect-chooser.cpp
+ widget/font-variants.cpp
widget/frame.cpp
widget/gimpcolorwheel.c
widget/gimpspinscale.c
@@ -174,6 +182,7 @@ set(ui_SRC
previewable.h
previewfillable.h
previewholder.h
+ selected-color.h
shape-editor.h
tool-factory.h
tools-switch.h
@@ -287,14 +296,21 @@ set(ui_SRC
widget/anchor-selector.h
widget/attr-widget.h
widget/button.h
+ widget/color-entry.h
+ widget/color-icc-selector.h
+ widget/color-notebook.h
widget/color-picker.h
widget/color-preview.h
+ widget/color-scales.h
+ widget/color-slider.h
+ widget/color-wheel-selector.h
widget/combo-enums.h
widget/dock-item.h
widget/dock.h
widget/entity-entry.h
widget/entry.h
widget/filter-effect-chooser.h
+ widget/font-variants.h
widget/frame.h
widget/gimpspinscale.h
widget/gimpcolorwheel.h
diff --git a/src/ui/Makefile_insert b/src/ui/Makefile_insert
index f94cba4e9..bbfdb532c 100644
--- a/src/ui/Makefile_insert
+++ b/src/ui/Makefile_insert
@@ -19,6 +19,8 @@ ink_common_sources += \
ui/previewfillable.h \
ui/previewholder.cpp \
ui/previewholder.h \
+ ui/selected-color.h \
+ ui/selected-color.cpp \
ui/shape-editor.cpp \
ui/shape-editor.h \
ui/tool-factory.cpp \
diff --git a/src/ui/dialog/layers.cpp b/src/ui/dialog/layers.cpp
index 65351cb68..c6888386f 100644
--- a/src/ui/dialog/layers.cpp
+++ b/src/ui/dialog/layers.cpp
@@ -713,13 +713,21 @@ bool LayersPanel::_handleDragDrop(const Glib::RefPtr<Gdk::DragContext>& /*contex
*/
void LayersPanel::_doTreeMove( )
{
- if (_dnd_source ) {
+ if (_dnd_source && _dnd_source->getRepr() ) {
+ if(!_dnd_target){
+ _dnd_source->doWriteTransform(_dnd_source->getRepr(), _dnd_source->document->getRoot()->i2doc_affine().inverse() * _dnd_source->i2doc_affine());
+ }else{
+ SPItem* parent = _dnd_into ? _dnd_target : dynamic_cast<SPItem*>(_dnd_target->parent);
+ if(parent){
+ Geom::Affine move = parent->i2doc_affine().inverse() * _dnd_source->i2doc_affine();
+ _dnd_source->doWriteTransform(_dnd_source->getRepr(), move);
+ }
+ }
_dnd_source->moveTo(_dnd_target, _dnd_into);
_selectLayer(_dnd_source);
_dnd_source = NULL;
DocumentUndo::done( _desktop->doc() , SP_VERB_NONE,
_("Moved layer"));
-
}
}
diff --git a/src/ui/dialog/lpe-fillet-chamfer-properties.cpp b/src/ui/dialog/lpe-fillet-chamfer-properties.cpp
index f63b19e86..061055feb 100644
--- a/src/ui/dialog/lpe-fillet-chamfer-properties.cpp
+++ b/src/ui/dialog/lpe-fillet-chamfer-properties.cpp
@@ -27,7 +27,6 @@
#include "selection-chemistry.h"
#include "ui/icon-names.h"
#include "ui/widget/imagetoggler.h"
-#include "util/units.h"
#include <cmath>
//#include "event-context.h"
@@ -122,18 +121,14 @@ void FilletChamferPropertiesDialog::showDialog(
SPDesktop *desktop, Geom::Point knotpoint,
const Inkscape::LivePathEffect::
FilletChamferPointArrayParamKnotHolderEntity *pt,
- const gchar *unit,
bool use_distance,
- bool aprox_radius,
- Glib::ustring documentUnit)
+ bool aprox_radius)
{
FilletChamferPropertiesDialog *dialog = new FilletChamferPropertiesDialog();
dialog->_set_desktop(desktop);
- dialog->_set_unit(unit);
dialog->_set_use_distance(use_distance);
dialog->_set_aprox(aprox_radius);
- dialog->_set_document_unit(documentUnit);
dialog->_set_knot_point(knotpoint);
dialog->_set_pt(pt);
@@ -168,7 +163,6 @@ void FilletChamferPropertiesDialog::_apply()
}
d_pos = _index + (d_pos / 100);
} else {
- d_pos = Inkscape::Util::Quantity::convert(d_pos, unit, document_unit);
d_pos = d_pos * -1;
}
_knotpoint->knot_set_offset(Geom::Point(d_pos, d_width));
@@ -218,11 +212,9 @@ void FilletChamferPropertiesDialog::_set_knot_point(Geom::Point knotpoint)
_fillet_chamfer_position_label.set_label(_("Position (%):"));
} else {
_flexible = false;
- std::string posConcat = Glib::ustring::compose (_("%1 (%2):"), distance_or_radius, unit);
+ std::string posConcat = Glib::ustring::compose (_("%1:"), distance_or_radius);
_fillet_chamfer_position_label.set_label(_(posConcat.c_str()));
position = knotpoint[Geom::X] * -1;
-
- position = Inkscape::Util::Quantity::convert(position, document_unit, unit);
}
_fillet_chamfer_position_numeric.set_value(position);
if (knotpoint.y() == 1) {
@@ -247,16 +239,6 @@ void FilletChamferPropertiesDialog::_set_pt(
pt);
}
-void FilletChamferPropertiesDialog::_set_unit(const gchar *abbr)
-{
- unit = abbr;
-}
-
-void FilletChamferPropertiesDialog::_set_document_unit(Glib::ustring abbr)
-{
- document_unit = abbr;
-}
-
void FilletChamferPropertiesDialog::_set_use_distance(bool use_knot_distance)
{
use_distance = use_knot_distance;
diff --git a/src/ui/dialog/lpe-fillet-chamfer-properties.h b/src/ui/dialog/lpe-fillet-chamfer-properties.h
index 870a1734f..99494bd63 100644
--- a/src/ui/dialog/lpe-fillet-chamfer-properties.h
+++ b/src/ui/dialog/lpe-fillet-chamfer-properties.h
@@ -30,10 +30,8 @@ public:
static void showDialog(SPDesktop *desktop, Geom::Point knotpoint,
const Inkscape::LivePathEffect::
FilletChamferPointArrayParamKnotHolderEntity *pt,
- const gchar *unit,
bool use_distance,
- bool aprox_radius,
- Glib::ustring documentUnit);
+ bool aprox_radius);
protected:
@@ -68,15 +66,11 @@ protected:
void _set_desktop(SPDesktop *desktop);
void _set_pt(const Inkscape::LivePathEffect::
FilletChamferPointArrayParamKnotHolderEntity *pt);
- void _set_unit(const gchar *abbr);
- void _set_document_unit(Glib::ustring abbr);
void _set_use_distance(bool use_knot_distance);
void _set_aprox(bool aprox_radius);
void _apply();
void _close();
bool _flexible;
- const gchar *unit;
- Glib::ustring document_unit;
bool use_distance;
bool aprox;
void _set_knot_point(Geom::Point knotpoint);
diff --git a/src/ui/dialog/object-properties.cpp b/src/ui/dialog/object-properties.cpp
index fc21a30d4..75430ed44 100644
--- a/src/ui/dialog/object-properties.cpp
+++ b/src/ui/dialog/object-properties.cpp
@@ -529,10 +529,12 @@ void ObjectProperties::_imageRenderingChanged()
SPCSSAttr *css = sp_repr_css_attr_new();
sp_repr_css_set_property(css, "image-rendering", scale.c_str());
Inkscape::XML::Node *image_node = item->getRepr();
- if( image_node ) {
+ if (image_node) {
sp_repr_css_change(image_node, css, "style");
+ DocumentUndo::done(SP_ACTIVE_DOCUMENT, SP_VERB_DIALOG_ITEM,
+ _("Set image rendering option"));
}
- sp_repr_css_attr_unref( css );
+ sp_repr_css_attr_unref(css);
_blocked = false;
}
diff --git a/src/ui/dialog/objects.cpp b/src/ui/dialog/objects.cpp
index 781c6ef93..be04e7149 100644
--- a/src/ui/dialog/objects.cpp
+++ b/src/ui/dialog/objects.cpp
@@ -45,6 +45,7 @@
#include "style.h"
#include "ui/tools-switch.h"
#include "ui/icon-names.h"
+#include "ui/selected-color.h"
#include "ui/widget/imagetoggler.h"
#include "ui/widget/layertypeicon.h"
#include "ui/widget/insertordericon.h"
@@ -53,7 +54,7 @@
#include "ui/tools/node-tool.h"
#include "ui/tools/tool-base.h"
#include "verbs.h"
-#include "widgets/sp-color-notebook.h"
+#include "ui/widget/color-notebook.h"
#include "widgets/icon.h"
#include "xml/node.h"
#include "xml/node-observer.h"
@@ -928,12 +929,12 @@ bool ObjectsPanel::_handleButtonEvent(GdkEventButton* event)
//If the current item is not selected, store only it in the highlight source
_storeHighlightTarget(iter);
}
- if (_colorSelector)
+ if (_selectedColor)
{
//Set up the color selector
SPColor color;
color.set( row[_model->_colHighlight] );
- _colorSelector->base->setColorAlpha(color, SP_RGBA32_A_F(row[_model->_colHighlight]));
+ _selectedColor->setColorAlpha(color, SP_RGBA32_A_F(row[_model->_colHighlight]));
}
//Show the color selector dialog
_colorSelectorDialog.show();
@@ -1440,17 +1441,16 @@ void ObjectsPanel::_setExpanded(const Gtk::TreeModel::iterator& iter, const Gtk:
* @param csel Color selector
* @param cp Objects panel
*/
-void sp_highlight_picker_color_mod(SPColorSelector *csel, GObject * cp)
+void ObjectsPanel::_highlightPickerColorMod()
{
SPColor color;
float alpha = 0;
- csel->base->getColorAlpha(color, alpha);
+ _selectedColor->colorAlpha(color, alpha);
+
guint32 rgba = color.toRGBA32( alpha );
-
- ObjectsPanel *ptr = reinterpret_cast<ObjectsPanel *>(cp);
//Set the highlight color for all items in the _highlight_target (all selected items)
- for (std::vector<SPItem *>::iterator iter = ptr->_highlight_target.begin(); iter != ptr->_highlight_target.end(); ++iter)
+ for (std::vector<SPItem *>::iterator iter = _highlight_target.begin(); iter != _highlight_target.end(); ++iter)
{
SPItem * target = *iter;
target->setHighlightColor(rgba);
@@ -1922,18 +1922,16 @@ ObjectsPanel::ObjectsPanel() :
_colorSelectorDialog.set_title (_("Select Highlight Color"));
_colorSelectorDialog.set_border_width (4);
_colorSelectorDialog.property_modal() = true;
- _colorSelector = SP_COLOR_SELECTOR(sp_color_selector_new(SP_TYPE_COLOR_NOTEBOOK));
+ _selectedColor.reset(new Inkscape::UI::SelectedColor);
+ Gtk::Widget *color_selector = Gtk::manage(new Inkscape::UI::Widget::ColorNotebook(*_selectedColor));
_colorSelectorDialog.get_vbox()->pack_start (
- *Glib::wrap(&_colorSelector->vbox), true, true, 0);
+ *color_selector, true, true, 0);
- g_signal_connect(G_OBJECT(_colorSelector), "dragged",
- G_CALLBACK(sp_highlight_picker_color_mod), (void *)this);
- g_signal_connect(G_OBJECT(_colorSelector), "released",
- G_CALLBACK(sp_highlight_picker_color_mod), (void *)this);
- g_signal_connect(G_OBJECT(_colorSelector), "changed",
- G_CALLBACK(sp_highlight_picker_color_mod), (void *)this);
+ _selectedColor->signal_dragged.connect(sigc::mem_fun(*this, &ObjectsPanel::_highlightPickerColorMod));
+ _selectedColor->signal_released.connect(sigc::mem_fun(*this, &ObjectsPanel::_highlightPickerColorMod));
+ _selectedColor->signal_changed.connect(sigc::mem_fun(*this, &ObjectsPanel::_highlightPickerColorMod));
- gtk_widget_show(GTK_WIDGET(_colorSelector));
+ color_selector->show();
setDesktop( targetDesktop );
@@ -1951,7 +1949,6 @@ ObjectsPanel::~ObjectsPanel()
{
//Close the highlight selection dialog
_colorSelectorDialog.hide();
- _colorSelector = NULL;
//Set the desktop to null, which will disconnect all object watchers
setDesktop(NULL);
diff --git a/src/ui/dialog/objects.h b/src/ui/dialog/objects.h
index 1842fea11..7a826d02e 100644
--- a/src/ui/dialog/objects.h
+++ b/src/ui/dialog/objects.h
@@ -16,6 +16,7 @@
# include <config.h>
#endif
+#include <boost/scoped_ptr.hpp>
#include <gtkmm/box.h>
#include <gtkmm/treeview.h>
#include <gtkmm/treestore.h>
@@ -36,6 +37,9 @@ struct SPColorSelector;
namespace Inkscape {
namespace UI {
+
+class SelectedColor;
+
namespace Dialog {
@@ -166,8 +170,7 @@ private:
Gtk::Alignment _blur_alignment;
Gtk::Dialog _colorSelectorDialog;
- SPColorSelector *_colorSelector;
-
+ boost::scoped_ptr<Inkscape::UI::SelectedColor> _selectedColor;
//Methods:
@@ -233,7 +236,7 @@ private:
void setupDialog(const Glib::ustring &title);
- friend void sp_highlight_picker_color_mod(SPColorSelector *csel, GObject *cp);
+ void _highlightPickerColorMod();
};
diff --git a/src/ui/dialog/tags.cpp b/src/ui/dialog/tags.cpp
index ed71c826f..f36e3f18d 100644
--- a/src/ui/dialog/tags.cpp
+++ b/src/ui/dialog/tags.cpp
@@ -51,7 +51,7 @@
#include "ui/tools/tool-base.h" //"event-context.h"
#include "selection.h"
//#include "dialogs/dialog-events.h"
-#include "widgets/sp-color-notebook.h"
+#include "ui/widget/color-notebook.h"
#include "style.h"
#include "filter-chemistry.h"
#include "filters/blend.h"
diff --git a/src/ui/dialog/text-edit.cpp b/src/ui/dialog/text-edit.cpp
index 815aa12ef..1a696c820 100644
--- a/src/ui/dialog/text-edit.cpp
+++ b/src/ui/dialog/text-edit.cpp
@@ -69,6 +69,7 @@ TextEdit::TextEdit()
font_label(_("_Font"), true),
layout_frame(),
text_label(_("_Text"), true),
+ vari_label(_("_Variants"), true),
setasdefault_button(_("Set as _default")),
close_button(Gtk::Stock::CLOSE),
apply_button(Gtk::Stock::APPLY),
@@ -195,7 +196,8 @@ TextEdit::TextEdit()
notebook.append_page(font_vbox, font_label);
notebook.append_page(text_vbox, text_label);
-
+ notebook.append_page(vari_vbox, vari_label);
+
/* Buttons */
setasdefault_button.set_use_underline(true);
apply_button.set_can_default();
@@ -216,6 +218,7 @@ TextEdit::TextEdit()
setasdefault_button.signal_clicked().connect(sigc::mem_fun(*this, &TextEdit::onSetDefault));
apply_button.signal_clicked().connect(sigc::mem_fun(*this, &TextEdit::onApply));
close_button.signal_clicked().connect(sigc::bind(_signal_response.make_slot(), GTK_RESPONSE_CLOSE));
+ fontVariantChangedConn = vari_vbox.connectChanged(sigc::bind(sigc::ptr_fun(&onFontVariantChange), this));
desktopChangeConn = deskTrack.connectDesktopChanged( sigc::mem_fun(*this, &TextEdit::setTargetDesktop) );
deskTrack.connect(GTK_WIDGET(gobj()));
@@ -230,6 +233,7 @@ TextEdit::~TextEdit()
selectChangedConn.disconnect();
desktopChangeConn.disconnect();
deskTrack.disconnect();
+ fontVariantChangedConn.disconnect();
}
void TextEdit::styleButton(Gtk::RadioButton *button, gchar const *tooltip, gchar const *icon_name, Gtk::RadioButton *group_button )
@@ -384,6 +388,11 @@ void TextEdit::onReadSelection ( gboolean dostyle, gboolean /*docontent*/ )
gtk_entry_set_text ((GtkEntry *) gtk_bin_get_child ((GtkBin *) spacing_combo), sstr);
g_free(sstr);
+ // Update font variant widget
+ //int result_variants =
+ sp_desktop_query_style (SP_ACTIVE_DESKTOP, &query, QUERY_STYLE_PROPERTY_FONTVARIANTS);
+ vari_vbox.update( &query );
+
}
blocked = false;
}
@@ -510,12 +519,15 @@ SPCSSAttr *TextEdit::fillTextStyle ()
sp_repr_css_set_property (css, "writing-mode", "tb");
}
- // Note that CSS 1.1 does not support line-height; we set it for consistency, but also set
+ // Note that SVG 1.1 does not support line-height; we set it for consistency, but also set
// sodipodi:linespacing for backwards compatibility; in 1.2 we use line-height for flowtext
const gchar *sstr = gtk_combo_box_text_get_active_text ((GtkComboBoxText *) spacing_combo);
sp_repr_css_set_property (css, "line-height", sstr);
+ // Font variants
+ vari_vbox.fill_css( css );
+
return css;
}
@@ -646,6 +658,19 @@ void TextEdit::onFontChange(SPFontSelector * /*fontsel*/, gchar* fontspec, TextE
}
+void TextEdit::onFontVariantChange(TextEdit *self)
+{
+ if( self->blocked )
+ return;
+
+ SPItem *text = self->getSelectedTextItem ();
+
+ if (text) {
+ self->apply_button.set_sensitive ( true );
+ }
+ self->setasdefault_button.set_sensitive ( true );
+}
+
void TextEdit::onStartOffsetChange(GtkTextBuffer * /*text_buffer*/, TextEdit *self)
{
SPItem *text = self->getSelectedTextItem();
diff --git a/src/ui/dialog/text-edit.h b/src/ui/dialog/text-edit.h
index 117ad2e28..41f89b3e7 100644
--- a/src/ui/dialog/text-edit.h
+++ b/src/ui/dialog/text-edit.h
@@ -32,9 +32,11 @@
#include "ui/widget/panel.h"
#include "ui/widget/frame.h"
#include "ui/dialog/desktop-tracker.h"
+#include "ui/widget/font-variants.h"
class SPItem;
struct SPFontSelector;
+class FontVariants;
class font_instance;
class SPCSSAttr;
@@ -111,6 +113,17 @@ protected:
static void onFontChange (SPFontSelector *fontsel, gchar* fontspec, TextEdit *self);
/**
+ * Callback invoked when the user modifies the font variant through the dialog.
+ *
+ * onFontChange updates the dialog UI. The subfunction setPreviewText updates the preview label.
+ *
+ * @param fontsel pointer to FontVariant (currently not used).
+ * @param fontspec for the text to be previewed.
+ * @param self pointer to the current instance of the dialog.
+ */
+ static void onFontVariantChange (TextEdit *self);
+
+ /**
* Callback invoked when the user modifies the startOffset of text on a path.
*
* @param text_buffer pointer to the GtkTextBuffer with the text of the selected text object.
@@ -213,6 +226,9 @@ private:
GtkWidget *text_view; // TODO - Convert this to a Gtk::TextView, but GtkSpell doesn't seem to work with it
GtkTextBuffer *text_buffer;
+ Inkscape::UI::Widget::FontVariants vari_vbox;
+ Gtk::Label vari_label;
+
Gtk::HBox button_row;
Gtk::Button setasdefault_button;
Gtk::Button close_button;
@@ -224,6 +240,7 @@ private:
sigc::connection selectChangedConn;
sigc::connection subselChangedConn;
sigc::connection selectModifiedConn;
+ sigc::connection fontVariantChangedConn;
bool blocked;
const Glib::ustring samplephrase;
diff --git a/src/ui/selected-color.cpp b/src/ui/selected-color.cpp
new file mode 100644
index 000000000..8c37ee7e0
--- /dev/null
+++ b/src/ui/selected-color.cpp
@@ -0,0 +1,163 @@
+/** @file
+ * Color selected in color selector widget.
+ * This file was created during the refactoring of SPColorSelector
+ *//*
+ * Authors:
+ * bulia byak <buliabyak@users.sf.net>
+ * Jon A. Cruz <jon@joncruz.org>
+ * Tomasz Boczkowski <penginsbacon@gmail.com>
+ *
+ * Copyright (C) 2014 Authors
+ * Released under GNU GPL, read the file 'COPYING' for more information
+ */
+#ifdef HAVE_CONFIG_H
+# include "config.h"
+#endif
+
+#include <glibmm/ustring.h>
+#include <cmath>
+
+#include "svg/svg-icc-color.h"
+#include "ui/selected-color.h"
+
+namespace Inkscape {
+namespace UI {
+
+double const SelectedColor::_EPSILON = 1e-4;
+
+SelectedColor::SelectedColor()
+ : _color(0)
+ , _alpha(1.0)
+ , _held(false)
+ , _virgin(true)
+ , _updating(false)
+{
+
+}
+
+SelectedColor::~SelectedColor() {
+
+}
+
+void SelectedColor::setColor(SPColor const &color)
+{
+ setColorAlpha( color, _alpha);
+}
+
+SPColor SelectedColor::color() const
+{
+ return _color;
+}
+
+void SelectedColor::setAlpha(gfloat alpha)
+{
+ g_return_if_fail( ( 0.0 <= alpha ) && ( alpha <= 1.0 ) );
+ setColorAlpha( _color, alpha);
+}
+
+gfloat SelectedColor::alpha() const
+{
+ return _alpha;
+}
+
+void SelectedColor::setValue(guint32 value)
+{
+ SPColor color(value);
+ gfloat alpha = SP_RGBA32_A_F(value);
+ setColorAlpha(color, alpha);
+}
+
+guint32 SelectedColor::value() const
+{
+ return color().toRGBA32(_alpha);
+}
+
+void SelectedColor::setColorAlpha(SPColor const &color, gfloat alpha, bool emit_signal)
+{
+#ifdef DUMP_CHANGE_INFO
+ g_message("SelectedColor::setColorAlpha( this=%p, %f, %f, %f, %s, %f, %s)", this, color.v.c[0], color.v.c[1], color.v.c[2], (color.icc?color.icc->colorProfile.c_str():"<null>"), alpha, (emit_signal?"YES":"no"));
+#endif
+ g_return_if_fail( ( 0.0 <= alpha ) && ( alpha <= 1.0 ) );
+
+ if (_updating) {
+ return;
+ }
+
+#ifdef DUMP_CHANGE_INFO
+ g_message("---- SelectedColor::setColorAlpha virgin:%s !close:%s alpha is:%s",
+ (_virgin?"YES":"no"),
+ (!color.isClose( _color, _EPSILON )?"YES":"no"),
+ ((fabs((_alpha) - (alpha)) >= _EPSILON )?"YES":"no")
+ );
+#endif
+
+ if ( _virgin || !color.isClose( _color, _EPSILON ) ||
+ (fabs((_alpha) - (alpha)) >= _EPSILON )) {
+
+ _virgin = false;
+
+ _color = color;
+ _alpha = alpha;
+
+ if (emit_signal)
+ {
+ _updating = true;
+ if (_held) {
+ signal_dragged.emit();
+ } else {
+ signal_changed.emit();
+ }
+ _updating = false;
+ }
+
+#ifdef DUMP_CHANGE_INFO
+ } else {
+ g_message("++++ SelectedColor::setColorAlpha color:%08x ==> _color:%08X isClose:%s", color.toRGBA32(alpha), _color.toRGBA32(_alpha),
+ (color.isClose( _color, _EPSILON )?"YES":"no"));
+#endif
+ }
+}
+
+void SelectedColor::colorAlpha(SPColor &color, gfloat &alpha) const {
+ color = _color;
+ alpha = _alpha;
+}
+
+void SelectedColor::setHeld(bool held) {
+ if (_updating) {
+ return;
+ }
+ bool grabbed = held && !_held;
+ bool released = !held && _held;
+
+ _held = held;
+
+ _updating = true;
+ if (grabbed) {
+ signal_grabbed.emit();
+ }
+
+ if (released) {
+ signal_released.emit();
+ signal_changed.emit();
+ }
+ _updating = false;
+}
+
+void SelectedColor::preserveICC() {
+ _color.icc = _color.icc ? new SVGICCColor(*_color.icc) : 0;
+}
+
+}
+}
+
+/*
+ Local Variables:
+ mode:c++
+ c-file-style:"stroustrup"
+ c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))
+ indent-tabs-mode:nil
+ fill-column:99
+ End:
+*/
+// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:fileencoding=utf-8:textwidth=99 :
diff --git a/src/ui/selected-color.h b/src/ui/selected-color.h
new file mode 100644
index 000000000..e9e702d43
--- /dev/null
+++ b/src/ui/selected-color.h
@@ -0,0 +1,96 @@
+/** @file
+ * Color selected in color selector widget.
+ * This file was created during the refactoring of SPColorSelector
+ *//*
+ * Authors:
+ * bulia byak <buliabyak@users.sf.net>
+ * Jon A. Cruz <jon@joncruz.org>
+ * Tomasz Boczkowski <penginsbacon@gmail.com>
+ *
+ * Copyright (C) 2014 Authors
+ * Released under GNU GPL, read the file 'COPYING' for more information
+ */
+#ifndef SEEN_SELECTED_COLOR
+#define SEEN_SELECTED_COLOR
+
+#include <sigc++/signal.h>
+#include "color.h"
+
+namespace Gtk
+{
+ class Widget;
+}
+
+namespace Inkscape {
+namespace UI {
+
+class SelectedColor {
+public:
+ SelectedColor();
+ virtual ~SelectedColor();
+
+ void setColor(SPColor const &color);
+ SPColor color() const;
+
+ void setAlpha(gfloat alpha);
+ gfloat alpha() const;
+
+ void setValue(guint32 value);
+ guint32 value() const;
+
+ void setColorAlpha(SPColor const &color, gfloat alpha, bool emit_signal = true);
+ void colorAlpha(SPColor &color, gfloat &alpha) const;
+
+ void setHeld(bool held);
+
+ void preserveICC();
+
+ sigc::signal<void> signal_grabbed;
+ sigc::signal<void> signal_dragged;
+ sigc::signal<void> signal_released;
+ sigc::signal<void> signal_changed;
+private:
+ // By default, disallow copy constructor and assignment operator
+ SelectedColor(SelectedColor const &obj);
+ SelectedColor& operator=(SelectedColor const &obj);
+
+ SPColor _color;
+ /**
+ * Color alpha value guaranteed to be in [0, 1].
+ */
+ gfloat _alpha;
+
+ bool _held;
+ /**
+ * This flag is true if no color is set yet
+ */
+ bool _virgin;
+
+ bool _updating;
+
+ static double const _EPSILON;
+};
+
+class ColorSelectorFactory {
+public:
+ virtual ~ColorSelectorFactory() {
+ }
+
+ virtual Gtk::Widget* createWidget(SelectedColor &color) const = 0;
+ virtual Glib::ustring modeName() const = 0;
+};
+
+}
+}
+
+#endif
+/*
+ Local Variables:
+ mode:c++
+ c-file-style:"stroustrup"
+ c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))
+ indent-tabs-mode:nil
+ fill-column:99
+ End:
+*/
+// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:fileencoding=utf-8:textwidth=99 :
diff --git a/src/ui/widget/Makefile_insert b/src/ui/widget/Makefile_insert
index e18b790bd..eb98e6872 100644
--- a/src/ui/widget/Makefile_insert
+++ b/src/ui/widget/Makefile_insert
@@ -6,10 +6,22 @@ ink_common_sources += \
ui/widget/attr-widget.h \
ui/widget/button.h \
ui/widget/button.cpp \
+ ui/widget/color-entry.cpp \
+ ui/widget/color-entry.h \
+ ui/widget/color-icc-selector.cpp \
+ ui/widget/color-icc-selector.h \
+ ui/widget/color-notebook.cpp \
+ ui/widget/color-notebook.h \
+ ui/widget/color-wheel-selector.cpp \
+ ui/widget/color-wheel-selector.h \
ui/widget/color-picker.cpp \
ui/widget/color-picker.h \
ui/widget/color-preview.cpp \
ui/widget/color-preview.h \
+ ui/widget/color-slider.cpp \
+ ui/widget/color-slider.h \
+ ui/widget/color-scales.cpp \
+ ui/widget/color-scales.h \
ui/widget/combo-enums.h \
ui/widget/dock.h \
ui/widget/dock.cpp \
@@ -21,8 +33,10 @@ ink_common_sources += \
ui/widget/entry.h \
ui/widget/filter-effect-chooser.h \
ui/widget/filter-effect-chooser.cpp \
- ui/widget/gimpspinscale.c \
- ui/widget/gimpspinscale.h \
+ ui/widget/font-variants.h \
+ ui/widget/font-variants.cpp \
+ ui/widget/gimpspinscale.c \
+ ui/widget/gimpspinscale.h \
ui/widget/gimpcolorwheel.c \
ui/widget/gimpcolorwheel.h \
ui/widget/frame.cpp \
diff --git a/src/ui/widget/color-entry.cpp b/src/ui/widget/color-entry.cpp
new file mode 100644
index 000000000..f5658c3a6
--- /dev/null
+++ b/src/ui/widget/color-entry.cpp
@@ -0,0 +1,114 @@
+/** @file
+ * Entry widget for typing color value in css form
+ *//*
+ * Authors:
+ * Tomasz Boczkowski <penginsbacon@gmail.com>
+ *
+ * Copyright (C) 2014 Authors
+ * Released under GNU GPL, read the file 'COPYING' for more information
+ */
+#include <glibmm.h>
+#include <glibmm/i18n.h>
+#include <iomanip>
+
+#include "color-entry.h"
+
+namespace Inkscape {
+namespace UI {
+namespace Widget {
+
+ColorEntry::ColorEntry(SelectedColor &color)
+ : _color(color)
+ , _updating(false)
+ , _updatingrgba(false)
+{
+ _color_changed_connection = color.signal_changed.connect(sigc::mem_fun(this, &ColorEntry::_onColorChanged));
+ _color_dragged_connection = color.signal_dragged.connect(sigc::mem_fun(this, &ColorEntry::_onColorChanged));
+ _onColorChanged();
+
+ set_max_length(8);
+ set_width_chars(8);
+ set_tooltip_text(_("Hexadecimal RGBA value of the color"));
+}
+
+ColorEntry::~ColorEntry()
+{
+ _color_changed_connection.disconnect();
+ _color_dragged_connection.disconnect();
+}
+
+void ColorEntry::on_changed()
+{
+ if (_updating) {
+ return;
+ }
+ if (_updatingrgba) {
+ return; // Typing text into entry box
+ }
+
+ Glib::ustring text = get_text();
+ bool changed = false;
+
+ // Coerce the value format to eight hex digits
+ if (!text.empty() && text[0] == '#') {
+ changed = true;
+ text.erase(0, 1);
+ if (text.size() == 6) {
+ // it was a standard RGB hex
+ unsigned int alpha = SP_COLOR_F_TO_U(_color.alpha());
+ text += Glib::ustring::format(std::hex, std::setw(2), std::setfill(L'0'), alpha);
+ }
+ }
+
+ gchar *str = g_strdup(text.c_str());
+ gchar *end = 0;
+ guint64 rgba = g_ascii_strtoull(str, &end, 16);
+ if (end != str) {
+ ptrdiff_t len = end - str;
+ if (len < 8) {
+ rgba = rgba << (4 * (8 - len));
+ }
+ _updatingrgba = true;
+ if (changed) {
+ set_text(str);
+ }
+ SPColor color(rgba);
+ _color.setColorAlpha(color, SP_RGBA32_A_F(rgba));
+ _updatingrgba = false;
+ }
+ g_free(str);
+}
+
+
+void ColorEntry::_onColorChanged()
+{
+ if (_updatingrgba) {
+ return;
+ }
+
+ SPColor color = _color.color();
+ gdouble alpha = _color.alpha();
+
+ guint32 rgba = color.toRGBA32(alpha);
+ Glib::ustring text = Glib::ustring::format(std::hex, std::setw(8), std::setfill(L'0'), rgba);
+
+ Glib::ustring old_text = get_text();
+ if (old_text != text) {
+ _updating = true;
+ set_text(text);
+ _updating = false;
+ }
+}
+}
+}
+}
+/*
+ Local Variables:
+ mode:c++
+ c-file-style:"stroustrup"
+ c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))
+ indent-tabs-mode:nil
+ fill-column:99
+ End:
+*/
+// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:fileencoding=utf-8:textwidth=99 :
diff --git a/src/ui/widget/color-entry.h b/src/ui/widget/color-entry.h
new file mode 100644
index 000000000..edabe1980
--- /dev/null
+++ b/src/ui/widget/color-entry.h
@@ -0,0 +1,54 @@
+/** @file
+ * Entry widget for typing color value in css form
+ *//*
+ * Authors:
+ * Tomasz Boczkowski <penginsbacon@gmail.com>
+ *
+ * Copyright (C) 2014 Authors
+ * Released under GNU GPL, read the file 'COPYING' for more information
+ */
+
+#ifndef SEEN_COLOR_ENTRY_H
+#define SEEN_COLOR_ENTRY_H_
+
+#include <gtkmm/entry.h>
+#include "ui/selected-color.h"
+
+namespace Inkscape {
+namespace UI {
+namespace Widget {
+
+class ColorEntry : public Gtk::Entry
+{
+public:
+ ColorEntry(SelectedColor &color);
+ virtual ~ColorEntry();
+
+protected:
+ void on_changed();
+
+private:
+ void _onColorChanged();
+
+ SelectedColor &_color;
+ sigc::connection _color_changed_connection;
+ sigc::connection _color_dragged_connection;
+ bool _updating;
+ bool _updatingrgba;
+};
+
+}
+}
+}
+
+#endif
+/*
+ Local Variables:
+ mode:c++
+ c-file-style:"stroustrup"
+ c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))
+ indent-tabs-mode:nil
+ fill-column:99
+ End:
+*/
+// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:fileencoding=utf-8:textwidth=99 :
diff --git a/src/ui/widget/color-icc-selector.cpp b/src/ui/widget/color-icc-selector.cpp
new file mode 100644
index 000000000..1c31ae33a
--- /dev/null
+++ b/src/ui/widget/color-icc-selector.cpp
@@ -0,0 +1,1079 @@
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#include <math.h>
+#include <gtkmm/adjustment.h>
+#include <glibmm/i18n.h>
+
+#include <gtk/gtk.h>
+#include <map>
+#include <set>
+#include <vector>
+
+#include "ui/dialog-events.h"
+#include "ui/widget/color-icc-selector.h"
+#include "ui/widget/color-scales.h"
+#include "ui/widget/color-slider.h"
+#include "svg/svg-icc-color.h"
+#include "colorspace.h"
+#include "document.h"
+#include "inkscape.h"
+#include "profile-manager.h"
+#include "widgets/gradient-vector.h"
+
+#define noDEBUG_LCMS
+
+#if defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
+#include "color-profile.h"
+#include "cms-system.h"
+#include "color-profile-cms-fns.h"
+
+#ifdef DEBUG_LCMS
+#include "preferences.h"
+#endif // DEBUG_LCMS
+#endif // defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
+
+#ifdef DEBUG_LCMS
+extern guint update_in_progress;
+#define DEBUG_MESSAGE(key, ...) \
+ { \
+ Inkscape::Preferences *prefs = Inkscape::Preferences::get(); \
+ bool dump = prefs->getBool("/options/scislac/" #key); \
+ bool dumpD = prefs->getBool("/options/scislac/" #key "D"); \
+ bool dumpD2 = prefs->getBool("/options/scislac/" #key "D2"); \
+ dumpD && = ((update_in_progress == 0) || dumpD2); \
+ if (dump) { \
+ g_message(__VA_ARGS__); \
+ } \
+ if (dumpD) { \
+ GtkWidget *dialog = gtk_message_dialog_new(NULL, GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_INFO, \
+ GTK_BUTTONS_OK, __VA_ARGS__); \
+ g_signal_connect_swapped(dialog, "response", G_CALLBACK(gtk_widget_destroy), dialog); \
+ gtk_widget_show_all(dialog); \
+ } \
+ }
+#endif // DEBUG_LCMS
+
+
+#define XPAD 4
+#define YPAD 1
+
+namespace {
+
+size_t maxColorspaceComponentCount = 0;
+
+#if defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
+
+/**
+ * Internal variable to track all known colorspaces.
+ */
+std::set<cmsUInt32Number> knownColorspaces;
+
+#endif
+
+
+/**
+ * Simple helper to allow bitwise or on GtkAttachOptions.
+ */
+GtkAttachOptions operator|(GtkAttachOptions lhs, GtkAttachOptions rhs)
+{
+ return static_cast<GtkAttachOptions>(static_cast<int>(lhs) | static_cast<int>(rhs));
+}
+
+/**
+ * Helper function to handle GTK2/GTK3 attachment #ifdef code.
+ */
+void attachToGridOrTable(GtkWidget *parent, GtkWidget *child, guint left, guint top, guint width, guint height,
+ bool hexpand = false, bool centered = false, guint xpadding = XPAD, guint ypadding = YPAD)
+{
+#if GTK_CHECK_VERSION(3, 0, 0)
+ #if GTK_CHECK_VERSION(3, 12, 0)
+ gtk_widget_set_margin_start(child, xpadding);
+ gtk_widget_set_margin_end(child, xpadding);
+ #else
+ gtk_widget_set_margin_left(child, xpadding);
+ gtk_widget_set_margin_right(child, xpadding);
+ #endif
+
+ gtk_widget_set_margin_top(child, ypadding);
+ gtk_widget_set_margin_bottom(child, ypadding);
+ if (hexpand) {
+ gtk_widget_set_hexpand(child, TRUE);
+ }
+ if (centered) {
+ gtk_widget_set_halign(child, GTK_ALIGN_CENTER);
+ gtk_widget_set_valign(child, GTK_ALIGN_CENTER);
+ }
+ gtk_grid_attach(GTK_GRID(parent), child, left, top, width, height);
+#else
+ GtkAttachOptions xoptions =
+ centered ? static_cast<GtkAttachOptions>(0) : hexpand ? (GTK_EXPAND | GTK_FILL) : GTK_FILL;
+ GtkAttachOptions yoptions = centered ? static_cast<GtkAttachOptions>(0) : GTK_FILL;
+
+ gtk_table_attach(GTK_TABLE(parent), child, left, left + width, top, top + height, xoptions, yoptions, xpadding,
+ ypadding);
+#endif
+}
+
+} // namespace
+
+/*
+icSigRgbData
+icSigCmykData
+icSigCmyData
+*/
+#define SPACE_ID_RGB 0
+#define SPACE_ID_CMY 1
+#define SPACE_ID_CMYK 2
+
+
+#if defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
+static cmsUInt16Number *getScratch()
+{
+ // bytes per pixel * input channels * width
+ static cmsUInt16Number *scritch = static_cast<cmsUInt16Number *>(g_new(cmsUInt16Number, 4 * 1024));
+
+ return scritch;
+}
+
+colorspace::Component::Component()
+ : name()
+ , tip()
+ , scale(1)
+{
+}
+
+colorspace::Component::Component(std::string const &name, std::string const &tip, guint scale)
+ : name(name)
+ , tip(tip)
+ , scale(scale)
+{
+}
+
+std::vector<colorspace::Component> colorspace::getColorSpaceInfo(uint32_t space)
+{
+ static std::map<cmsUInt32Number, std::vector<Component> > sets;
+ if (sets.empty()) {
+ sets[cmsSigXYZData].push_back(Component("_X", "X", 2)); // TYPE_XYZ_16
+ sets[cmsSigXYZData].push_back(Component("_Y", "Y", 1));
+ sets[cmsSigXYZData].push_back(Component("_Z", "Z", 2));
+
+ sets[cmsSigLabData].push_back(Component("_L", "L", 100)); // TYPE_Lab_16
+ sets[cmsSigLabData].push_back(Component("_a", "a", 256));
+ sets[cmsSigLabData].push_back(Component("_b", "b", 256));
+
+ // cmsSigLuvData
+
+ sets[cmsSigYCbCrData].push_back(Component("_Y", "Y", 1)); // TYPE_YCbCr_16
+ sets[cmsSigYCbCrData].push_back(Component("C_b", "Cb", 1));
+ sets[cmsSigYCbCrData].push_back(Component("C_r", "Cr", 1));
+
+ sets[cmsSigYxyData].push_back(Component("_Y", "Y", 1)); // TYPE_Yxy_16
+ sets[cmsSigYxyData].push_back(Component("_x", "x", 1));
+ sets[cmsSigYxyData].push_back(Component("y", "y", 1));
+
+ sets[cmsSigRgbData].push_back(Component(_("_R:"), _("Red"), 1)); // TYPE_RGB_16
+ sets[cmsSigRgbData].push_back(Component(_("_G:"), _("Green"), 1));
+ sets[cmsSigRgbData].push_back(Component(_("_B:"), _("Blue"), 1));
+
+ sets[cmsSigGrayData].push_back(Component(_("G:"), _("Gray"), 1)); // TYPE_GRAY_16
+
+ sets[cmsSigHsvData].push_back(Component(_("_H:"), _("Hue"), 360)); // TYPE_HSV_16
+ sets[cmsSigHsvData].push_back(Component(_("_S:"), _("Saturation"), 1));
+ sets[cmsSigHsvData].push_back(Component("_V:", "Value", 1));
+
+ sets[cmsSigHlsData].push_back(Component(_("_H:"), _("Hue"), 360)); // TYPE_HLS_16
+ sets[cmsSigHlsData].push_back(Component(_("_L:"), _("Lightness"), 1));
+ sets[cmsSigHlsData].push_back(Component(_("_S:"), _("Saturation"), 1));
+
+ sets[cmsSigCmykData].push_back(Component(_("_C:"), _("Cyan"), 1)); // TYPE_CMYK_16
+ sets[cmsSigCmykData].push_back(Component(_("_M:"), _("Magenta"), 1));
+ sets[cmsSigCmykData].push_back(Component(_("_Y:"), _("Yellow"), 1));
+ sets[cmsSigCmykData].push_back(Component(_("_K:"), _("Black"), 1));
+
+ sets[cmsSigCmyData].push_back(Component(_("_C:"), _("Cyan"), 1)); // TYPE_CMY_16
+ sets[cmsSigCmyData].push_back(Component(_("_M:"), _("Magenta"), 1));
+ sets[cmsSigCmyData].push_back(Component(_("_Y:"), _("Yellow"), 1));
+
+ for (std::map<cmsUInt32Number, std::vector<Component> >::iterator it = sets.begin(); it != sets.end(); ++it) {
+ knownColorspaces.insert(it->first);
+ maxColorspaceComponentCount = std::max(maxColorspaceComponentCount, it->second.size());
+ }
+ }
+
+ std::vector<Component> target;
+
+ if (sets.find(space) != sets.end()) {
+ target = sets[space];
+ }
+ return target;
+}
+
+
+std::vector<colorspace::Component> colorspace::getColorSpaceInfo(Inkscape::ColorProfile *prof)
+{
+ return getColorSpaceInfo(asICColorSpaceSig(prof->getColorSpace()));
+}
+
+#endif // defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
+
+namespace Inkscape {
+namespace UI {
+namespace Widget {
+
+/**
+ * Class containing the parts for a single color component's UI presence.
+ */
+class ComponentUI {
+ public:
+ ComponentUI()
+ : _component()
+ , _adj(0)
+ , _slider(0)
+ , _btn(0)
+ , _label(0)
+ , _map(0)
+ {
+ }
+
+ ComponentUI(colorspace::Component const &component)
+ : _component(component)
+ , _adj(0)
+ , _slider(0)
+ , _btn(0)
+ , _label(0)
+ , _map(0)
+ {
+ }
+
+ colorspace::Component _component;
+ GtkAdjustment *_adj; // Component adjustment
+ Inkscape::UI::Widget::ColorSlider *_slider;
+ GtkWidget *_btn; // spinbutton
+ GtkWidget *_label; // Label
+ guchar *_map;
+};
+
+/**
+ * Class that implements the internals of the selector.
+ */
+class ColorICCSelectorImpl {
+ public:
+ ColorICCSelectorImpl(ColorICCSelector *owner, SelectedColor &color);
+
+ ~ColorICCSelectorImpl();
+
+ static void _adjustmentChanged(GtkAdjustment *adjustment, ColorICCSelectorImpl *cs);
+
+ void _sliderGrabbed();
+ void _sliderReleased();
+ void _sliderChanged();
+
+ static void _profileSelected(GtkWidget *src, gpointer data);
+ static void _fixupHit(GtkWidget *src, gpointer data);
+
+#if defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
+ void _setProfile(SVGICCColor *profile);
+ void _switchToProfile(gchar const *name);
+#endif
+ void _updateSliders(gint ignore);
+ void _profilesChanged(std::string const &name);
+
+ ColorICCSelector *_owner;
+ SelectedColor &_color;
+
+ gboolean _updating : 1;
+ gboolean _dragging : 1;
+
+ guint32 _fixupNeeded;
+ GtkWidget *_fixupBtn;
+ GtkWidget *_profileSel;
+
+ std::vector<ComponentUI> _compUI;
+
+ GtkAdjustment *_adj; // Channel adjustment
+ Inkscape::UI::Widget::ColorSlider *_slider;
+ GtkWidget *_sbtn; // Spinbutton
+ GtkWidget *_label; // Label
+
+#if defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
+ std::string _profileName;
+ Inkscape::ColorProfile *_prof;
+ guint _profChannelCount;
+ gulong _profChangedID;
+#endif // defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
+};
+
+
+
+const gchar *ColorICCSelector::MODE_NAME = N_("CMS");
+
+ColorICCSelector::ColorICCSelector(SelectedColor &color)
+ : _impl(NULL)
+{
+ _impl = new ColorICCSelectorImpl(this, color);
+ init();
+ color.signal_changed.connect(sigc::mem_fun(this, &ColorICCSelector::_colorChanged));
+ // color.signal_dragged.connect(sigc::mem_fun(this, &ColorICCSelector::_colorChanged));
+}
+
+ColorICCSelector::~ColorICCSelector()
+{
+ if (_impl) {
+ delete _impl;
+ _impl = 0;
+ }
+}
+
+
+
+ColorICCSelectorImpl::ColorICCSelectorImpl(ColorICCSelector *owner, SelectedColor &color)
+ : _owner(owner)
+ , _color(color)
+ , _updating(FALSE)
+ , _dragging(FALSE)
+ , _fixupNeeded(0)
+ , _fixupBtn(0)
+ , _profileSel(0)
+ , _compUI()
+ , _adj(0)
+ , _slider(0)
+ , _sbtn(0)
+ , _label(0)
+#if defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
+ , _profileName()
+ , _prof(0)
+ , _profChannelCount(0)
+ , _profChangedID(0)
+#endif // defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
+{
+}
+
+ColorICCSelectorImpl::~ColorICCSelectorImpl()
+{
+ _adj = 0;
+ _sbtn = 0;
+ _label = 0;
+}
+
+void ColorICCSelector::init()
+{
+ gint row = 0;
+
+ _impl->_updating = FALSE;
+ _impl->_dragging = FALSE;
+
+ GtkWidget *t = GTK_WIDGET(gobj());
+
+ _impl->_compUI.clear();
+
+ // Create components
+ row = 0;
+
+
+ _impl->_fixupBtn = gtk_button_new_with_label(_("Fix"));
+ g_signal_connect(G_OBJECT(_impl->_fixupBtn), "clicked", G_CALLBACK(ColorICCSelectorImpl::_fixupHit),
+ (gpointer)_impl);
+ gtk_widget_set_sensitive(_impl->_fixupBtn, FALSE);
+ gtk_widget_set_tooltip_text(_impl->_fixupBtn, _("Fix RGB fallback to match icc-color() value."));
+ // gtk_misc_set_alignment( GTK_MISC (_impl->_fixupBtn), 1.0, 0.5 );
+ gtk_widget_show(_impl->_fixupBtn);
+
+ attachToGridOrTable(t, _impl->_fixupBtn, 0, row, 1, 1);
+
+ // Combobox and store with 2 columns : label (0) and full name (1)
+ GtkListStore *store = gtk_list_store_new(2, G_TYPE_STRING, G_TYPE_STRING);
+ _impl->_profileSel = gtk_combo_box_new_with_model(GTK_TREE_MODEL(store));
+
+ GtkCellRenderer *renderer = gtk_cell_renderer_text_new();
+ gtk_cell_layout_pack_start(GTK_CELL_LAYOUT(_impl->_profileSel), renderer, TRUE);
+ gtk_cell_layout_set_attributes(GTK_CELL_LAYOUT(_impl->_profileSel), renderer, "text", 0, NULL);
+
+ GtkTreeIter iter;
+ gtk_list_store_append(store, &iter);
+ gtk_list_store_set(store, &iter, 0, _("<none>"), 1, _("<none>"), -1);
+
+ gtk_widget_show(_impl->_profileSel);
+ gtk_combo_box_set_active(GTK_COMBO_BOX(_impl->_profileSel), 0);
+
+ attachToGridOrTable(t, _impl->_profileSel, 1, row, 1, 1);
+
+#if defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
+ _impl->_profChangedID = g_signal_connect(G_OBJECT(_impl->_profileSel), "changed",
+ G_CALLBACK(ColorICCSelectorImpl::_profileSelected), (gpointer)_impl);
+#else
+ gtk_widget_set_sensitive(_impl->_profileSel, false);
+#endif // defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
+
+
+ row++;
+
+// populate the data for colorspaces and channels:
+#if defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
+ std::vector<colorspace::Component> things = colorspace::getColorSpaceInfo(cmsSigRgbData);
+#endif // defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
+
+ for (size_t i = 0; i < maxColorspaceComponentCount; i++) {
+#if defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
+ if (i < things.size()) {
+ _impl->_compUI.push_back(ComponentUI(things[i]));
+ }
+ else {
+ _impl->_compUI.push_back(ComponentUI());
+ }
+
+ std::string labelStr = (i < things.size()) ? things[i].name.c_str() : "";
+#else
+ _impl->_compUI.push_back(ComponentUI());
+
+ std::string labelStr = ".";
+#endif
+
+ _impl->_compUI[i]._label = gtk_label_new_with_mnemonic(labelStr.c_str());
+ gtk_misc_set_alignment(GTK_MISC(_impl->_compUI[i]._label), 1.0, 0.5);
+ gtk_widget_show(_impl->_compUI[i]._label);
+ gtk_widget_set_no_show_all(_impl->_compUI[i]._label, TRUE);
+
+ attachToGridOrTable(t, _impl->_compUI[i]._label, 0, row, 1, 1);
+
+ // Adjustment
+ guint scaleValue = _impl->_compUI[i]._component.scale;
+ gdouble step = static_cast<gdouble>(scaleValue) / 100.0;
+ gdouble page = static_cast<gdouble>(scaleValue) / 10.0;
+ gint digits = (step > 0.9) ? 0 : 2;
+ _impl->_compUI[i]._adj = GTK_ADJUSTMENT(gtk_adjustment_new(0.0, 0.0, scaleValue, step, page, page));
+
+ // Slider
+ _impl->_compUI[i]._slider =
+ Gtk::manage(new Inkscape::UI::Widget::ColorSlider(Glib::wrap(_impl->_compUI[i]._adj, true)));
+#if defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
+ _impl->_compUI[i]._slider->set_tooltip_text((i < things.size()) ? things[i].tip.c_str() : "");
+#else
+ _impl->_compUI[i]._slider->set_tooltip_text(".");
+#endif // defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
+ _impl->_compUI[i]._slider->show();
+ _impl->_compUI[i]._slider->set_no_show_all();
+
+ attachToGridOrTable(t, _impl->_compUI[i]._slider->gobj(), 1, row, 1, 1, true);
+
+ _impl->_compUI[i]._btn = gtk_spin_button_new(_impl->_compUI[i]._adj, step, digits);
+#if defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
+ gtk_widget_set_tooltip_text(_impl->_compUI[i]._btn, (i < things.size()) ? things[i].tip.c_str() : "");
+#else
+ gtk_widget_set_tooltip_text(_impl->_compUI[i]._btn, ".");
+#endif // defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
+ sp_dialog_defocus_on_enter(_impl->_compUI[i]._btn);
+ gtk_label_set_mnemonic_widget(GTK_LABEL(_impl->_compUI[i]._label), _impl->_compUI[i]._btn);
+ gtk_widget_show(_impl->_compUI[i]._btn);
+ gtk_widget_set_no_show_all(_impl->_compUI[i]._btn, TRUE);
+
+ attachToGridOrTable(t, _impl->_compUI[i]._btn, 2, row, 1, 1, false, true);
+
+ _impl->_compUI[i]._map = g_new(guchar, 4 * 1024);
+ memset(_impl->_compUI[i]._map, 0x0ff, 1024 * 4);
+
+
+ // Signals
+ g_signal_connect(G_OBJECT(_impl->_compUI[i]._adj), "value_changed",
+ G_CALLBACK(ColorICCSelectorImpl::_adjustmentChanged), _impl);
+
+ _impl->_compUI[i]._slider->signal_grabbed.connect(sigc::mem_fun(_impl, &ColorICCSelectorImpl::_sliderGrabbed));
+ _impl->_compUI[i]._slider->signal_released.connect(
+ sigc::mem_fun(_impl, &ColorICCSelectorImpl::_sliderReleased));
+ _impl->_compUI[i]._slider->signal_value_changed.connect(
+ sigc::mem_fun(_impl, &ColorICCSelectorImpl::_sliderChanged));
+
+ row++;
+ }
+
+ // Label
+ _impl->_label = gtk_label_new_with_mnemonic(_("_A:"));
+ gtk_misc_set_alignment(GTK_MISC(_impl->_label), 1.0, 0.5);
+ gtk_widget_show(_impl->_label);
+
+ attachToGridOrTable(t, _impl->_label, 0, row, 1, 1);
+
+ // Adjustment
+ _impl->_adj = GTK_ADJUSTMENT(gtk_adjustment_new(0.0, 0.0, 255.0, 1.0, 10.0, 10.0));
+
+ // Slider
+ _impl->_slider = Gtk::manage(new Inkscape::UI::Widget::ColorSlider(Glib::wrap(_impl->_adj, true)));
+ _impl->_slider->set_tooltip_text(_("Alpha (opacity)"));
+ _impl->_slider->show();
+
+ attachToGridOrTable(t, _impl->_slider->gobj(), 1, row, 1, 1, true);
+
+ _impl->_slider->setColors(SP_RGBA32_F_COMPOSE(1.0, 1.0, 1.0, 0.0), SP_RGBA32_F_COMPOSE(1.0, 1.0, 1.0, 0.5),
+ SP_RGBA32_F_COMPOSE(1.0, 1.0, 1.0, 1.0));
+
+
+ // Spinbutton
+ _impl->_sbtn = gtk_spin_button_new(GTK_ADJUSTMENT(_impl->_adj), 1.0, 0);
+ gtk_widget_set_tooltip_text(_impl->_sbtn, _("Alpha (opacity)"));
+ sp_dialog_defocus_on_enter(_impl->_sbtn);
+ gtk_label_set_mnemonic_widget(GTK_LABEL(_impl->_label), _impl->_sbtn);
+ gtk_widget_show(_impl->_sbtn);
+
+ attachToGridOrTable(t, _impl->_sbtn, 2, row, 1, 1, false, true);
+
+ // Signals
+ g_signal_connect(G_OBJECT(_impl->_adj), "value_changed", G_CALLBACK(ColorICCSelectorImpl::_adjustmentChanged),
+ _impl);
+
+ _impl->_slider->signal_grabbed.connect(sigc::mem_fun(_impl, &ColorICCSelectorImpl::_sliderGrabbed));
+ _impl->_slider->signal_released.connect(sigc::mem_fun(_impl, &ColorICCSelectorImpl::_sliderReleased));
+ _impl->_slider->signal_value_changed.connect(sigc::mem_fun(_impl, &ColorICCSelectorImpl::_sliderChanged));
+
+ gtk_widget_show(t);
+}
+
+void ColorICCSelectorImpl::_fixupHit(GtkWidget * /*src*/, gpointer data)
+{
+ ColorICCSelectorImpl *self = reinterpret_cast<ColorICCSelectorImpl *>(data);
+ gtk_widget_set_sensitive(self->_fixupBtn, FALSE);
+ self->_adjustmentChanged(self->_compUI[0]._adj, self);
+}
+
+#if defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
+void ColorICCSelectorImpl::_profileSelected(GtkWidget * /*src*/, gpointer data)
+{
+ ColorICCSelectorImpl *self = reinterpret_cast<ColorICCSelectorImpl *>(data);
+
+ GtkTreeIter iter;
+ if (gtk_combo_box_get_active_iter(GTK_COMBO_BOX(self->_profileSel), &iter)) {
+ GtkTreeModel *store = gtk_combo_box_get_model(GTK_COMBO_BOX(self->_profileSel));
+ gchar *name = 0;
+
+ gtk_tree_model_get(store, &iter, 1, &name, -1);
+ self->_switchToProfile(name);
+ gtk_widget_set_tooltip_text(self->_profileSel, name);
+
+ if (name) {
+ g_free(name);
+ }
+ }
+}
+#endif // defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
+
+#if defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
+void ColorICCSelectorImpl::_switchToProfile(gchar const *name)
+{
+ bool dirty = false;
+ SPColor tmp(_color.color());
+
+ if (name) {
+ if (tmp.icc && tmp.icc->colorProfile == name) {
+#ifdef DEBUG_LCMS
+ g_message("Already at name [%s]", name);
+#endif // DEBUG_LCMS
+ }
+ else {
+#ifdef DEBUG_LCMS
+ g_message("Need to switch to profile [%s]", name);
+#endif // DEBUG_LCMS
+ if (tmp.icc) {
+ tmp.icc->colors.clear();
+ }
+ else {
+ tmp.icc = new SVGICCColor();
+ }
+ tmp.icc->colorProfile = name;
+ Inkscape::ColorProfile *newProf = SP_ACTIVE_DOCUMENT->profileManager->find(name);
+ if (newProf) {
+ cmsHTRANSFORM trans = newProf->getTransfFromSRGB8();
+ if (trans) {
+ guint32 val = _color.color().toRGBA32(0);
+ guchar pre[4] = {
+ static_cast<guchar>(SP_RGBA32_R_U(val)),
+ static_cast<guchar>(SP_RGBA32_G_U(val)),
+ static_cast<guchar>(SP_RGBA32_B_U(val)),
+ 255};
+#ifdef DEBUG_LCMS
+ g_message("Shoving in [%02x] [%02x] [%02x]", pre[0], pre[1], pre[2]);
+#endif // DEBUG_LCMS
+ cmsUInt16Number post[4] = { 0, 0, 0, 0 };
+ cmsDoTransform(trans, pre, post, 1);
+#ifdef DEBUG_LCMS
+ g_message("got on out [%04x] [%04x] [%04x] [%04x]", post[0], post[1], post[2], post[3]);
+#endif // DEBUG_LCMS
+#if HAVE_LIBLCMS1
+ guint count = _cmsChannelsOf(asICColorSpaceSig(newProf->getColorSpace()));
+#elif HAVE_LIBLCMS2
+ guint count = cmsChannelsOf(asICColorSpaceSig(newProf->getColorSpace()));
+#endif
+
+ std::vector<colorspace::Component> things =
+ colorspace::getColorSpaceInfo(asICColorSpaceSig(newProf->getColorSpace()));
+
+ for (guint i = 0; i < count; i++) {
+ gdouble val =
+ (((gdouble)post[i]) / 65535.0) * (gdouble)((i < things.size()) ? things[i].scale : 1);
+#ifdef DEBUG_LCMS
+ g_message(" scaled %d by %d to be %f", i, ((i < things.size()) ? things[i].scale : 1), val);
+#endif // DEBUG_LCMS
+ tmp.icc->colors.push_back(val);
+ }
+ cmsHTRANSFORM retrans = newProf->getTransfToSRGB8();
+ if (retrans) {
+ cmsDoTransform(retrans, post, pre, 1);
+#ifdef DEBUG_LCMS
+ g_message(" back out [%02x] [%02x] [%02x]", pre[0], pre[1], pre[2]);
+#endif // DEBUG_LCMS
+ tmp.set(SP_RGBA32_U_COMPOSE(pre[0], pre[1], pre[2], 0xff));
+ }
+ }
+ }
+ dirty = true;
+ }
+ }
+ else {
+#ifdef DEBUG_LCMS
+ g_message("NUKE THE ICC");
+#endif // DEBUG_LCMS
+ if (tmp.icc) {
+ delete tmp.icc;
+ tmp.icc = 0;
+ dirty = true;
+ _fixupHit(0, this);
+ }
+ else {
+#ifdef DEBUG_LCMS
+ g_message("No icc to nuke");
+#endif // DEBUG_LCMS
+ }
+ }
+
+ if (dirty) {
+#ifdef DEBUG_LCMS
+ g_message("+----------------");
+ g_message("+ new color is [%s]", tmp.toString().c_str());
+#endif // DEBUG_LCMS
+ _setProfile(tmp.icc);
+ //_adjustmentChanged( _compUI[0]._adj, SP_COLOR_ICC_SELECTOR(_csel) );
+ _color.setColor(tmp);
+#ifdef DEBUG_LCMS
+ g_message("+_________________");
+#endif // DEBUG_LCMS
+ }
+}
+#endif // defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
+
+#if defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
+void ColorICCSelectorImpl::_profilesChanged(std::string const &name)
+{
+ GtkComboBox *combo = GTK_COMBO_BOX(_profileSel);
+
+ g_signal_handler_block(G_OBJECT(_profileSel), _profChangedID);
+
+ GtkListStore *store = GTK_LIST_STORE(gtk_combo_box_get_model(combo));
+ gtk_list_store_clear(store);
+
+ GtkTreeIter iter;
+ gtk_list_store_append(store, &iter);
+ gtk_list_store_set(store, &iter, 0, _("<none>"), 1, _("<none>"), -1);
+
+ gtk_combo_box_set_active(combo, 0);
+
+ int index = 1;
+ const GSList *current = SP_ACTIVE_DOCUMENT->getResourceList("iccprofile");
+ while (current) {
+ SPObject *obj = SP_OBJECT(current->data);
+ Inkscape::ColorProfile *prof = reinterpret_cast<Inkscape::ColorProfile *>(obj);
+
+ gtk_list_store_append(store, &iter);
+ gtk_list_store_set(store, &iter, 0, gr_ellipsize_text(prof->name, 25).c_str(), 1, prof->name, -1);
+
+ if (name == prof->name) {
+ gtk_combo_box_set_active(combo, index);
+ gtk_widget_set_tooltip_text(_profileSel, prof->name);
+ }
+
+ index++;
+ current = g_slist_next(current);
+ }
+
+ g_signal_handler_unblock(G_OBJECT(_profileSel), _profChangedID);
+}
+#else
+void ColorICCSelectorImpl::_profilesChanged(std::string const & /*name*/) {}
+#endif // defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
+
+void ColorICCSelector::on_show()
+{
+#if GTK_CHECK_VERSION(3, 0, 0)
+ Gtk::Grid::on_show();
+#else
+ Gtk::Table::on_show();
+#endif
+ _colorChanged();
+}
+
+// Helpers for setting color value
+
+void ColorICCSelector::_colorChanged()
+{
+ _impl->_updating = TRUE;
+// sp_color_icc_set_color( SP_COLOR_ICC( _icc ), &color );
+
+#ifdef DEBUG_LCMS
+ g_message("/^^^^^^^^^ %p::_colorChanged(%08x:%s)", this, _impl->_color.color().toRGBA32(_impl->_color.alpha()),
+ ((_impl->_color.color().icc) ? _impl->_color.color().icc->colorProfile.c_str() : "<null>"));
+#endif // DEBUG_LCMS
+
+#ifdef DEBUG_LCMS
+ g_message("FLIPPIES!!!! %p '%s'", _impl->_color.color().icc,
+ (_impl->_color.color().icc ? _impl->_color.color().icc->colorProfile.c_str() : "<null>"));
+#endif // DEBUG_LCMS
+
+ _impl->_profilesChanged((_impl->_color.color().icc) ? _impl->_color.color().icc->colorProfile : std::string(""));
+ ColorScales::setScaled(_impl->_adj, _impl->_color.alpha());
+
+#if defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
+ _impl->_setProfile(_impl->_color.color().icc);
+ _impl->_fixupNeeded = 0;
+ gtk_widget_set_sensitive(_impl->_fixupBtn, FALSE);
+
+ if (_impl->_prof) {
+ if (_impl->_prof->getTransfToSRGB8()) {
+ cmsUInt16Number tmp[4];
+ for (guint i = 0; i < _impl->_profChannelCount; i++) {
+ gdouble val = 0.0;
+ if (_impl->_color.color().icc->colors.size() > i) {
+ if (_impl->_compUI[i]._component.scale == 256) {
+ val = (_impl->_color.color().icc->colors[i] + 128.0) /
+ static_cast<gdouble>(_impl->_compUI[i]._component.scale);
+ }
+ else {
+ val = _impl->_color.color().icc->colors[i] /
+ static_cast<gdouble>(_impl->_compUI[i]._component.scale);
+ }
+ }
+ tmp[i] = val * 0x0ffff;
+ }
+ guchar post[4] = { 0, 0, 0, 0 };
+ cmsHTRANSFORM trans = _impl->_prof->getTransfToSRGB8();
+ if (trans) {
+ cmsDoTransform(trans, tmp, post, 1);
+ guint32 other = SP_RGBA32_U_COMPOSE(post[0], post[1], post[2], 255);
+ if (other != _impl->_color.color().toRGBA32(255)) {
+ _impl->_fixupNeeded = other;
+ gtk_widget_set_sensitive(_impl->_fixupBtn, TRUE);
+#ifdef DEBUG_LCMS
+ g_message("Color needs to change 0x%06x to 0x%06x", _color.toRGBA32(255) >> 8, other >> 8);
+#endif // DEBUG_LCMS
+ }
+ }
+ }
+ }
+#else
+//(void)color;
+#endif // defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
+ _impl->_updateSliders(-1);
+
+
+ _impl->_updating = FALSE;
+#ifdef DEBUG_LCMS
+ g_message("\\_________ %p::_colorChanged()", this);
+#endif // DEBUG_LCMS
+}
+
+#if defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
+void ColorICCSelectorImpl::_setProfile(SVGICCColor *profile)
+{
+#ifdef DEBUG_LCMS
+ g_message("/^^^^^^^^^ %p::_setProfile(%s)", this, ((profile) ? profile->colorProfile.c_str() : "<null>"));
+#endif // DEBUG_LCMS
+ bool profChanged = false;
+ if (_prof && (!profile || (_profileName != profile->colorProfile))) {
+ // Need to clear out the prior one
+ profChanged = true;
+ _profileName.clear();
+ _prof = 0;
+ _profChannelCount = 0;
+ }
+ else if (profile && !_prof) {
+ profChanged = true;
+ }
+
+ for (size_t i = 0; i < _compUI.size(); i++) {
+ gtk_widget_hide(_compUI[i]._label);
+ _compUI[i]._slider->hide();
+ gtk_widget_hide(_compUI[i]._btn);
+ }
+
+ if (profile) {
+ _prof = SP_ACTIVE_DOCUMENT->profileManager->find(profile->colorProfile.c_str());
+ if (_prof && (asICColorProfileClassSig(_prof->getProfileClass()) != cmsSigNamedColorClass)) {
+#if HAVE_LIBLCMS1
+ _profChannelCount = _cmsChannelsOf(asICColorSpaceSig(_prof->getColorSpace()));
+#elif HAVE_LIBLCMS2
+ _profChannelCount = cmsChannelsOf(asICColorSpaceSig(_prof->getColorSpace()));
+#endif
+
+ if (profChanged) {
+ std::vector<colorspace::Component> things =
+ colorspace::getColorSpaceInfo(asICColorSpaceSig(_prof->getColorSpace()));
+ for (size_t i = 0; (i < things.size()) && (i < _profChannelCount); ++i) {
+ _compUI[i]._component = things[i];
+ }
+
+ for (guint i = 0; i < _profChannelCount; i++) {
+ gtk_label_set_text_with_mnemonic(GTK_LABEL(_compUI[i]._label),
+ (i < things.size()) ? things[i].name.c_str() : "");
+
+ _compUI[i]._slider->set_tooltip_text((i < things.size()) ? things[i].tip.c_str() : "");
+ gtk_widget_set_tooltip_text(_compUI[i]._btn, (i < things.size()) ? things[i].tip.c_str() : "");
+
+ _compUI[i]._slider->setColors(SPColor(0.0, 0.0, 0.0).toRGBA32(0xff),
+ SPColor(0.5, 0.5, 0.5).toRGBA32(0xff),
+ SPColor(1.0, 1.0, 1.0).toRGBA32(0xff));
+ /*
+ _compUI[i]._adj = GTK_ADJUSTMENT( gtk_adjustment_new( val, 0.0, _fooScales[i],
+ step, page, page ) );
+ g_signal_connect( G_OBJECT( _compUI[i]._adj ), "value_changed", G_CALLBACK(
+ _adjustmentChanged ), _csel );
+
+ sp_color_slider_set_adjustment( SP_COLOR_SLIDER(_compUI[i]._slider),
+ _compUI[i]._adj );
+ gtk_spin_button_set_adjustment( GTK_SPIN_BUTTON(_compUI[i]._btn),
+ _compUI[i]._adj );
+ gtk_spin_button_set_digits( GTK_SPIN_BUTTON(_compUI[i]._btn), digits );
+ */
+ gtk_widget_show(_compUI[i]._label);
+ _compUI[i]._slider->show();
+ gtk_widget_show(_compUI[i]._btn);
+ // gtk_adjustment_set_value( _compUI[i]._adj, 0.0 );
+ // gtk_adjustment_set_value( _compUI[i]._adj, val );
+ }
+ for (size_t i = _profChannelCount; i < _compUI.size(); i++) {
+ gtk_widget_hide(_compUI[i]._label);
+ _compUI[i]._slider->hide();
+ gtk_widget_hide(_compUI[i]._btn);
+ }
+ }
+ }
+ else {
+ // Give up for now on named colors
+ _prof = 0;
+ }
+ }
+
+#ifdef DEBUG_LCMS
+ g_message("\\_________ %p::_setProfile()", this);
+#endif // DEBUG_LCMS
+}
+#endif // defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
+
+void ColorICCSelectorImpl::_updateSliders(gint ignore)
+{
+#if defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
+ if (_color.color().icc) {
+ for (guint i = 0; i < _profChannelCount; i++) {
+ gdouble val = 0.0;
+ if (_color.color().icc->colors.size() > i) {
+ if (_compUI[i]._component.scale == 256) {
+ val = (_color.color().icc->colors[i] + 128.0) / static_cast<gdouble>(_compUI[i]._component.scale);
+ }
+ else {
+ val = _color.color().icc->colors[i] / static_cast<gdouble>(_compUI[i]._component.scale);
+ }
+ }
+ gtk_adjustment_set_value(_compUI[i]._adj, val);
+ }
+
+ if (_prof) {
+ if (_prof->getTransfToSRGB8()) {
+ for (guint i = 0; i < _profChannelCount; i++) {
+ if (static_cast<gint>(i) != ignore) {
+ cmsUInt16Number *scratch = getScratch();
+ cmsUInt16Number filler[4] = { 0, 0, 0, 0 };
+ for (guint j = 0; j < _profChannelCount; j++) {
+ filler[j] = 0x0ffff * ColorScales::getScaled(_compUI[j]._adj);
+ }
+
+ cmsUInt16Number *p = scratch;
+ for (guint x = 0; x < 1024; x++) {
+ for (guint j = 0; j < _profChannelCount; j++) {
+ if (j == i) {
+ *p++ = x * 0x0ffff / 1024;
+ }
+ else {
+ *p++ = filler[j];
+ }
+ }
+ }
+
+ cmsHTRANSFORM trans = _prof->getTransfToSRGB8();
+ if (trans) {
+ cmsDoTransform(trans, scratch, _compUI[i]._map, 1024);
+ if (_compUI[i]._slider)
+ {
+ _compUI[i]._slider->setMap(_compUI[i]._map);
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+#else
+ (void)ignore;
+#endif // defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
+
+ guint32 start = _color.color().toRGBA32(0x00);
+ guint32 mid = _color.color().toRGBA32(0x7f);
+ guint32 end = _color.color().toRGBA32(0xff);
+
+ _slider->setColors(start, mid, end);
+}
+
+
+void ColorICCSelectorImpl::_adjustmentChanged(GtkAdjustment *adjustment, ColorICCSelectorImpl *cs)
+{
+// // TODO check this. It looks questionable:
+// // if a value is entered between 0 and 1 exclusive, normalize it to (int) 0..255 or 0..100
+// if (adjustment->value > 0.0 && adjustment->value < 1.0) {
+// gtk_adjustment_set_value( adjustment, floor ((adjustment->value) * adjustment->upper + 0.5) );
+// }
+
+#ifdef DEBUG_LCMS
+ g_message("/^^^^^^^^^ %p::_adjustmentChanged()", cs);
+#endif // DEBUG_LCMS
+
+ ColorICCSelector *iccSelector = cs->_owner;
+ if (iccSelector->_impl->_updating) {
+ return;
+ }
+
+ iccSelector->_impl->_updating = TRUE;
+
+ gint match = -1;
+
+ SPColor newColor(iccSelector->_impl->_color.color());
+ gfloat scaled = ColorScales::getScaled(iccSelector->_impl->_adj);
+ if (iccSelector->_impl->_adj == adjustment) {
+#ifdef DEBUG_LCMS
+ g_message("ALPHA");
+#endif // DEBUG_LCMS
+ }
+ else {
+#if defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
+ for (size_t i = 0; i < iccSelector->_impl->_compUI.size(); i++) {
+ if (iccSelector->_impl->_compUI[i]._adj == adjustment) {
+ match = i;
+ break;
+ }
+ }
+ if (match >= 0) {
+#ifdef DEBUG_LCMS
+ g_message(" channel %d", match);
+#endif // DEBUG_LCMS
+ }
+
+
+ cmsUInt16Number tmp[4];
+ for (guint i = 0; i < 4; i++) {
+ tmp[i] = ColorScales::getScaled(iccSelector->_impl->_compUI[i]._adj) * 0x0ffff;
+ }
+ guchar post[4] = { 0, 0, 0, 0 };
+
+ cmsHTRANSFORM trans = iccSelector->_impl->_prof->getTransfToSRGB8();
+ if (trans) {
+ cmsDoTransform(trans, tmp, post, 1);
+ }
+
+ SPColor other(SP_RGBA32_U_COMPOSE(post[0], post[1], post[2], 255));
+ other.icc = new SVGICCColor();
+ if (iccSelector->_impl->_color.color().icc) {
+ other.icc->colorProfile = iccSelector->_impl->_color.color().icc->colorProfile;
+ }
+
+ guint32 prior = iccSelector->_impl->_color.color().toRGBA32(255);
+ guint32 newer = other.toRGBA32(255);
+
+ if (prior != newer) {
+#ifdef DEBUG_LCMS
+ g_message("Transformed color from 0x%08x to 0x%08x", prior, newer);
+ g_message(" ~~~~ FLIP");
+#endif // DEBUG_LCMS
+ newColor = other;
+ newColor.icc->colors.clear();
+ for (guint i = 0; i < iccSelector->_impl->_profChannelCount; i++) {
+ gdouble val = ColorScales::getScaled(iccSelector->_impl->_compUI[i]._adj);
+ val *= iccSelector->_impl->_compUI[i]._component.scale;
+ if (iccSelector->_impl->_compUI[i]._component.scale == 256) {
+ val -= 128;
+ }
+ newColor.icc->colors.push_back(val);
+ }
+ }
+#endif // defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
+ }
+ iccSelector->_impl->_color.setColorAlpha(newColor, scaled);
+ // iccSelector->_updateInternals( newColor, scaled, iccSelector->_impl->_dragging );
+ iccSelector->_impl->_updateSliders(match);
+
+ iccSelector->_impl->_updating = FALSE;
+#ifdef DEBUG_LCMS
+ g_message("\\_________ %p::_adjustmentChanged()", cs);
+#endif // DEBUG_LCMS
+}
+
+void ColorICCSelectorImpl::_sliderGrabbed()
+{
+ // ColorICCSelector* iccSelector = dynamic_cast<ColorICCSelector*>(SP_COLOR_SELECTOR(cs)->base);
+ // if (!iccSelector->_dragging) {
+ // iccSelector->_dragging = TRUE;
+ // iccSelector->_grabbed();
+ // iccSelector->_updateInternals( iccSelector->_color, ColorScales::getScaled( iccSelector->_impl->_adj ),
+ // iccSelector->_dragging );
+ // }
+}
+
+void ColorICCSelectorImpl::_sliderReleased()
+{
+ // ColorICCSelector* iccSelector = dynamic_cast<ColorICCSelector*>(SP_COLOR_SELECTOR(cs)->base);
+ // if (iccSelector->_dragging) {
+ // iccSelector->_dragging = FALSE;
+ // iccSelector->_released();
+ // iccSelector->_updateInternals( iccSelector->_color, ColorScales::getScaled( iccSelector->_adj ),
+ // iccSelector->_dragging );
+ // }
+}
+
+#ifdef DEBUG_LCMS
+void ColorICCSelectorImpl::_sliderChanged(SPColorSlider *slider, SPColorICCSelector *cs)
+#else
+void ColorICCSelectorImpl::_sliderChanged()
+#endif // DEBUG_LCMS
+{
+#ifdef DEBUG_LCMS
+ g_message("Changed %p and %p", slider, cs);
+#endif // DEBUG_LCMS
+ // ColorICCSelector* iccSelector = dynamic_cast<ColorICCSelector*>(SP_COLOR_SELECTOR(cs)->base);
+
+ // iccSelector->_updateInternals( iccSelector->_color, ColorScales::getScaled( iccSelector->_adj ),
+ // iccSelector->_dragging );
+}
+
+Gtk::Widget *ColorICCSelectorFactory::createWidget(Inkscape::UI::SelectedColor &color) const
+{
+ Gtk::Widget *w = Gtk::manage(new ColorICCSelector(color));
+ return w;
+}
+
+Glib::ustring ColorICCSelectorFactory::modeName() const { return gettext(ColorICCSelector::MODE_NAME); }
+}
+}
+}
+/*
+ Local Variables:
+ mode:c++
+ c-file-style:"stroustrup"
+ c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))
+ indent-tabs-mode:nil
+ fill-column:99
+ End:
+*/
+// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:fileencoding=utf-8:textwidth=99 :
diff --git a/src/ui/widget/color-icc-selector.h b/src/ui/widget/color-icc-selector.h
new file mode 100644
index 000000000..1bcb0a540
--- /dev/null
+++ b/src/ui/widget/color-icc-selector.h
@@ -0,0 +1,78 @@
+#ifndef SEEN_SP_COLOR_ICC_SELECTOR_H
+#define SEEN_SP_COLOR_ICC_SELECTOR_H
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <gtkmm/widget.h>
+#if WITH_GTKMM_3_0
+#include <gtkmm/grid.h>
+#else
+#include <gtkmm/table.h>
+#endif
+
+#include "ui/selected-color.h"
+
+namespace Inkscape {
+
+class ColorProfile;
+
+namespace UI {
+namespace Widget {
+
+class ColorICCSelectorImpl;
+
+class ColorICCSelector
+#if GTK_CHECK_VERSION(3, 0, 0)
+ : public Gtk::Grid
+#else
+ : public Gtk::Table
+#endif
+ {
+ public:
+ static const gchar *MODE_NAME;
+
+ ColorICCSelector(SelectedColor &color);
+ virtual ~ColorICCSelector();
+
+ virtual void init();
+
+ protected:
+ void on_show();
+
+ virtual void _colorChanged();
+
+ void _recalcColor(gboolean changing);
+
+ private:
+ friend class ColorICCSelectorImpl;
+
+ // By default, disallow copy constructor and assignment operator
+ ColorICCSelector(const ColorICCSelector &obj);
+ ColorICCSelector &operator=(const ColorICCSelector &obj);
+
+ ColorICCSelectorImpl *_impl;
+};
+
+
+class ColorICCSelectorFactory : public ColorSelectorFactory {
+ public:
+ Gtk::Widget *createWidget(SelectedColor &color) const;
+ Glib::ustring modeName() const;
+};
+}
+}
+}
+#endif // SEEN_SP_COLOR_ICC_SELECTOR_H
+
+/*
+ Local Variables:
+ mode:c++
+ c-file-style:"stroustrup"
+ c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))
+ indent-tabs-mode:nil
+ fill-column:99
+ End:
+*/
+// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:fileencoding=utf-8:textwidth=99 :
diff --git a/src/ui/widget/color-notebook.cpp b/src/ui/widget/color-notebook.cpp
new file mode 100644
index 000000000..60abf43bf
--- /dev/null
+++ b/src/ui/widget/color-notebook.cpp
@@ -0,0 +1,379 @@
+/**
+ * @file
+ * A notebook with RGB, CMYK, CMS, HSL, and Wheel pages - implementation
+ */
+/* Authors:
+ * Lauris Kaplinski <lauris@kaplinski.com>
+ * bulia byak <buliabyak@users.sf.net>
+ * Tomasz Boczkowski <penginsbacon@gmail.com> (c++-sification)
+ *
+ * Copyright (C) 2001-2014 Authors
+ *
+ * This code is in public domain
+ */
+
+#undef SPCS_PREVIEW
+#define noDUMP_CHANGE_INFO
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#include "widgets/icon.h"
+#include <cstring>
+#include <string>
+#include <cstdlib>
+#include <cstddef>
+#include <glibmm/i18n.h>
+#include <gtkmm/label.h>
+#include <gtkmm/notebook.h>
+
+#include "preferences.h"
+#include "widgets/spw-utilities.h"
+#include "svg/svg-icc-color.h"
+#include "inkscape.h"
+#include "document.h"
+#include "profile-manager.h"
+#include "color-profile.h"
+#include "cms-system.h"
+#include "ui/dialog-events.h"
+#include "ui/tools-switch.h"
+#include "ui/tools/tool-base.h"
+#include "ui/widget/color-entry.h"
+#include "ui/widget/color-icc-selector.h"
+#include "ui/widget/color-notebook.h"
+#include "ui/widget/color-scales.h"
+#include "ui/widget/color-wheel-selector.h"
+
+using Inkscape::CMSSystem;
+
+#define XPAD 4
+#define YPAD 1
+
+namespace Inkscape {
+namespace UI {
+namespace Widget {
+
+
+ColorNotebook::ColorNotebook(SelectedColor &color)
+#if GTK_CHECK_VERSION(3, 0, 0)
+ : Gtk::Grid()
+#else
+ : Gtk::Table(2, 3, false)
+#endif
+ , _selected_color(color)
+
+{
+ Page *page;
+
+ page = new Page(new ColorScalesFactory(SP_COLOR_SCALES_MODE_RGB), true);
+ _available_pages.push_back(page);
+ page = new Page(new ColorScalesFactory(SP_COLOR_SCALES_MODE_HSV), true);
+ _available_pages.push_back(page);
+ page = new Page(new ColorScalesFactory(SP_COLOR_SCALES_MODE_CMYK), true);
+ _available_pages.push_back(page);
+ page = new Page(new ColorWheelSelectorFactory, true);
+ _available_pages.push_back(page);
+#if defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
+ page = new Page(new ColorICCSelectorFactory, true);
+ _available_pages.push_back(page);
+#endif
+
+ _initUI();
+
+ _selected_color.signal_changed.connect(sigc::mem_fun(this, &ColorNotebook::_onSelectedColorChanged));
+ _selected_color.signal_dragged.connect(sigc::mem_fun(this, &ColorNotebook::_onSelectedColorChanged));
+}
+
+ColorNotebook::~ColorNotebook()
+{
+ if (_buttons) {
+ delete[] _buttons;
+ _buttons = 0;
+ }
+}
+
+ColorNotebook::Page::Page(Inkscape::UI::ColorSelectorFactory *selector_factory, bool enabled_full)
+ : selector_factory(selector_factory)
+ , enabled_full(enabled_full)
+{
+}
+
+
+void ColorNotebook::_initUI()
+{
+ guint row = 0;
+
+ Gtk::Notebook *notebook = Gtk::manage(new Gtk::Notebook);
+ notebook->show();
+ notebook->set_show_border(false);
+ notebook->set_show_tabs(false);
+ _book = GTK_WIDGET(notebook->gobj());
+
+#if GTK_CHECK_VERSION(3, 0, 0)
+ _buttonbox = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 2);
+ gtk_box_set_homogeneous(GTK_BOX(_buttonbox), TRUE);
+#else
+ _buttonbox = gtk_hbox_new(TRUE, 2);
+#endif
+
+ gtk_widget_show(_buttonbox);
+ _buttons = new GtkWidget *[_available_pages.size()];
+
+ for (int i = 0; static_cast<size_t>(i) < _available_pages.size(); i++) {
+ _addPage(_available_pages[i]);
+ }
+
+ sp_set_font_size_smaller(_buttonbox);
+
+#if GTK_CHECK_VERSION(3, 0, 0)
+ #if GTK_CHECK_VERSION(3, 12, 0)
+ gtk_widget_set_margin_start(_buttonbox, XPAD);
+ gtk_widget_set_margin_end(_buttonbox, XPAD);
+ #else
+ gtk_widget_set_margin_left(_buttonbox, XPAD);
+ gtk_widget_set_margin_right(_buttonbox, XPAD);
+ #endif
+ gtk_widget_set_margin_top(_buttonbox, YPAD);
+ gtk_widget_set_margin_bottom(_buttonbox, YPAD);
+ gtk_widget_set_hexpand(_buttonbox, TRUE);
+ gtk_widget_set_valign(_buttonbox, GTK_ALIGN_CENTER);
+ attach(*Glib::wrap(_buttonbox), 0, row, 2, 1);
+#else
+ attach(*Glib::wrap(_buttonbox), 0, 2, row, row + 1, Gtk::EXPAND | Gtk::FILL, static_cast<Gtk::AttachOptions>(0),
+ XPAD, YPAD);
+#endif
+
+ row++;
+
+#if GTK_CHECK_VERSION(3, 0, 0)
+#if GTK_CHECK_VERSION(3, 12, 0)
+ gtk_widget_set_margin_start(_book, XPAD * 2);
+ gtk_widget_set_margin_end(_book, XPAD * 2);
+#else
+ gtk_widget_set_margin_left(_book, XPAD * 2);
+ gtk_widget_set_margin_right(_book, XPAD * 2);
+#endif
+ gtk_widget_set_margin_top(_book, YPAD);
+ gtk_widget_set_margin_bottom(_book, YPAD);
+ gtk_widget_set_hexpand(_book, TRUE);
+ gtk_widget_set_vexpand(_book, TRUE);
+ attach(*notebook, 0, row, 2, 1);
+#else
+ attach(*notebook, 0, 2, row, row + 1, Gtk::EXPAND | Gtk::FILL, Gtk::EXPAND | Gtk::FILL, XPAD * 2, YPAD);
+#endif
+
+ // restore the last active page
+ Inkscape::Preferences *prefs = Inkscape::Preferences::get();
+ _setCurrentPage(prefs->getInt("/colorselector/page", 0));
+ row++;
+
+#if GTK_CHECK_VERSION(3, 0, 0)
+ GtkWidget *rgbabox = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0);
+#else
+ GtkWidget *rgbabox = gtk_hbox_new(FALSE, 0);
+#endif
+
+#if defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
+ /* Create color management icons */
+ _box_colormanaged = gtk_event_box_new();
+ GtkWidget *colormanaged = gtk_image_new_from_icon_name("color-management-icon", GTK_ICON_SIZE_SMALL_TOOLBAR);
+ gtk_container_add(GTK_CONTAINER(_box_colormanaged), colormanaged);
+ gtk_widget_set_tooltip_text(_box_colormanaged, _("Color Managed"));
+ gtk_widget_set_sensitive(_box_colormanaged, false);
+ gtk_box_pack_start(GTK_BOX(rgbabox), _box_colormanaged, FALSE, FALSE, 2);
+
+ _box_outofgamut = gtk_event_box_new();
+ GtkWidget *outofgamut = gtk_image_new_from_icon_name("out-of-gamut-icon", GTK_ICON_SIZE_SMALL_TOOLBAR);
+ gtk_container_add(GTK_CONTAINER(_box_outofgamut), outofgamut);
+ gtk_widget_set_tooltip_text(_box_outofgamut, _("Out of gamut!"));
+ gtk_widget_set_sensitive(_box_outofgamut, false);
+ gtk_box_pack_start(GTK_BOX(rgbabox), _box_outofgamut, FALSE, FALSE, 2);
+
+ _box_toomuchink = gtk_event_box_new();
+ GtkWidget *toomuchink = gtk_image_new_from_icon_name("too-much-ink-icon", GTK_ICON_SIZE_SMALL_TOOLBAR);
+ gtk_container_add(GTK_CONTAINER(_box_toomuchink), toomuchink);
+ gtk_widget_set_tooltip_text(_box_toomuchink, _("Too much ink!"));
+ gtk_widget_set_sensitive(_box_toomuchink, false);
+ gtk_box_pack_start(GTK_BOX(rgbabox), _box_toomuchink, FALSE, FALSE, 2);
+#endif // defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
+
+
+ /* Color picker */
+ GtkWidget *picker = gtk_image_new_from_icon_name("color-picker", GTK_ICON_SIZE_SMALL_TOOLBAR);
+ _btn_picker = gtk_button_new();
+ gtk_button_set_relief(GTK_BUTTON(_btn_picker), GTK_RELIEF_NONE);
+ gtk_container_add(GTK_CONTAINER(_btn_picker), picker);
+ gtk_widget_set_tooltip_text(_btn_picker, _("Pick colors from image"));
+ gtk_box_pack_start(GTK_BOX(rgbabox), _btn_picker, FALSE, FALSE, 2);
+ g_signal_connect(G_OBJECT(_btn_picker), "clicked", G_CALLBACK(ColorNotebook::_onPickerClicked), this);
+
+ /* Create RGBA entry and color preview */
+ _rgbal = gtk_label_new_with_mnemonic(_("RGBA_:"));
+ gtk_misc_set_alignment(GTK_MISC(_rgbal), 1.0, 0.5);
+ gtk_box_pack_start(GTK_BOX(rgbabox), _rgbal, TRUE, TRUE, 2);
+
+ ColorEntry *rgba_entry = Gtk::manage(new ColorEntry(_selected_color));
+ sp_dialog_defocus_on_enter(GTK_WIDGET(rgba_entry->gobj()));
+ gtk_box_pack_start(GTK_BOX(rgbabox), GTK_WIDGET(rgba_entry->gobj()), FALSE, FALSE, 0);
+ gtk_label_set_mnemonic_widget(GTK_LABEL(_rgbal), GTK_WIDGET(rgba_entry->gobj()));
+
+ sp_set_font_size_smaller(rgbabox);
+ gtk_widget_show_all(rgbabox);
+
+#if defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
+ // the "too much ink" icon is initially hidden
+ gtk_widget_hide(GTK_WIDGET(_box_toomuchink));
+#endif // defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
+
+#if GTK_CHECK_VERSION(3, 0, 0)
+ #if GTK_CHECK_VERSION(3, 12, 0)
+ gtk_widget_set_margin_start(rgbabox, XPAD);
+ gtk_widget_set_margin_end(rgbabox, XPAD);
+ #else
+ gtk_widget_set_margin_left(rgbabox, XPAD);
+ gtk_widget_set_margin_right(rgbabox, XPAD);
+ #endif
+ gtk_widget_set_margin_top(rgbabox, YPAD);
+ gtk_widget_set_margin_bottom(rgbabox, YPAD);
+ attach(*Glib::wrap(rgbabox), 0, row, 2, 1);
+#else
+ attach(*Glib::wrap(rgbabox), 0, 2, row, row + 1, Gtk::FILL, Gtk::SHRINK, XPAD, YPAD);
+#endif
+
+#ifdef SPCS_PREVIEW
+ _p = sp_color_preview_new(0xffffffff);
+ gtk_widget_show(_p);
+ attach(*Glib::wrap(_p), 2, 3, row, row + 1, Gtk::FILL, Gtk::FILL, XPAD, YPAD);
+#endif
+
+ g_signal_connect(G_OBJECT(_book), "switch-page", G_CALLBACK(ColorNotebook::_onPageSwitched), this);
+}
+
+void ColorNotebook::_onPickerClicked(GtkWidget * /*widget*/, ColorNotebook * /*colorbook*/)
+{
+ // Set the dropper into a "one click" mode, so it reverts to the previous tool after a click
+ Inkscape::Preferences *prefs = Inkscape::Preferences::get();
+ prefs->setBool("/tools/dropper/onetimepick", true);
+ Inkscape::UI::Tools::sp_toggle_dropper(SP_ACTIVE_DESKTOP);
+}
+
+void ColorNotebook::_onButtonClicked(GtkWidget *widget, ColorNotebook *nb)
+{
+ if (!gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widget))) {
+ return;
+ }
+
+ for (gint i = 0; i < gtk_notebook_get_n_pages(GTK_NOTEBOOK(nb->_book)); i++) {
+ if (nb->_buttons[i] == widget) {
+ gtk_notebook_set_current_page(GTK_NOTEBOOK(nb->_book), i);
+ }
+ }
+}
+
+void ColorNotebook::_onSelectedColorChanged() { _updateICCButtons(); }
+
+void ColorNotebook::_onPageSwitched(GtkNotebook *notebook, GtkWidget *page, guint page_num, ColorNotebook *colorbook)
+{
+ if (colorbook->get_visible()) {
+ // remember the page we switched to
+ Inkscape::Preferences *prefs = Inkscape::Preferences::get();
+ prefs->setInt("/colorselector/page", page_num);
+ }
+}
+
+
+// TODO pass in param so as to avoid the need for SP_ACTIVE_DOCUMENT
+void ColorNotebook::_updateICCButtons()
+{
+ SPColor color = _selected_color.color();
+ gfloat alpha = _selected_color.alpha();
+
+ g_return_if_fail((0.0 <= alpha) && (alpha <= 1.0));
+
+#if defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
+ /* update color management icon*/
+ gtk_widget_set_sensitive(_box_colormanaged, color.icc != NULL);
+
+ /* update out-of-gamut icon */
+ gtk_widget_set_sensitive(_box_outofgamut, false);
+ if (color.icc) {
+ Inkscape::ColorProfile *target_profile =
+ SP_ACTIVE_DOCUMENT->profileManager->find(color.icc->colorProfile.c_str());
+ if (target_profile)
+ gtk_widget_set_sensitive(_box_outofgamut, target_profile->GamutCheck(color));
+ }
+
+ /* update too-much-ink icon */
+ gtk_widget_set_sensitive(_box_toomuchink, false);
+ if (color.icc) {
+ Inkscape::ColorProfile *prof = SP_ACTIVE_DOCUMENT->profileManager->find(color.icc->colorProfile.c_str());
+ if (prof && CMSSystem::isPrintColorSpace(prof)) {
+ gtk_widget_show(GTK_WIDGET(_box_toomuchink));
+ double ink_sum = 0;
+ for (unsigned int i = 0; i < color.icc->colors.size(); i++) {
+ ink_sum += color.icc->colors[i];
+ }
+
+ /* Some literature states that when the sum of paint values exceed 320%, it is considered to be a satured
+ color,
+ which means the paper can get too wet due to an excessive ammount of ink. This may lead to several
+ issues
+ such as misalignment and poor quality of printing in general.*/
+ if (ink_sum > 3.2)
+ gtk_widget_set_sensitive(_box_toomuchink, true);
+ }
+ else {
+ gtk_widget_hide(GTK_WIDGET(_box_toomuchink));
+ }
+ }
+#endif // defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
+}
+
+void ColorNotebook::_setCurrentPage(int i)
+{
+ gtk_notebook_set_current_page(GTK_NOTEBOOK(_book), i);
+
+ if (_buttons && (static_cast<size_t>(i) < _available_pages.size())) {
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(_buttons[i]), TRUE);
+ }
+}
+
+void ColorNotebook::_addPage(Page &page)
+{
+ Gtk::Widget *selector_widget;
+
+ selector_widget = page.selector_factory->createWidget(_selected_color);
+ if (selector_widget) {
+ selector_widget->show();
+
+ Glib::ustring mode_name = page.selector_factory->modeName();
+ Gtk::Widget *tab_label = Gtk::manage(new Gtk::Label(mode_name));
+ gint page_num = gtk_notebook_append_page(GTK_NOTEBOOK(_book), selector_widget->gobj(), tab_label->gobj());
+
+ _buttons[page_num] = gtk_radio_button_new_with_label(NULL, mode_name.c_str());
+ gtk_toggle_button_set_mode(GTK_TOGGLE_BUTTON(_buttons[page_num]), FALSE);
+ if (page_num > 0) {
+ GSList *group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(_buttons[0]));
+ gtk_radio_button_set_group(GTK_RADIO_BUTTON(_buttons[page_num]), group);
+ }
+ gtk_widget_show(_buttons[page_num]);
+ gtk_box_pack_start(GTK_BOX(_buttonbox), _buttons[page_num], TRUE, TRUE, 0);
+
+ g_signal_connect(G_OBJECT(_buttons[page_num]), "clicked", G_CALLBACK(_onButtonClicked), this);
+ }
+}
+}
+}
+}
+
+/*
+ Local Variables:
+ mode:c++
+ c-file-style:"stroustrup"
+ c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))
+ indent-tabs-mode:nil
+ fill-column:99
+ End:
+*/
+// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:fileencoding=utf-8:textwidth=99 :
diff --git a/src/ui/widget/color-notebook.h b/src/ui/widget/color-notebook.h
new file mode 100644
index 000000000..d28028c72
--- /dev/null
+++ b/src/ui/widget/color-notebook.h
@@ -0,0 +1,99 @@
+/**
+ * @file
+ * A notebook with RGB, CMYK, CMS, HSL, and Wheel pages
+ */
+/* Authors:
+ * Lauris Kaplinski <lauris@kaplinski.com>
+ * bulia byak <buliabyak@users.sf.net>
+ * Tomasz Boczkowski <penginsbacon@gmail.com> (c++-sification)
+ *
+ * Copyright (C) 2001-2014 Authors
+ *
+ * This code is in public domain
+ */
+#ifndef SEEN_SP_COLOR_NOTEBOOK_H
+#define SEEN_SP_COLOR_NOTEBOOK_H
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <boost/ptr_container/ptr_vector.hpp>
+#if WITH_GTKMM_3_0
+#include <gtkmm/grid.h>
+#else
+#include <gtkmm/table.h>
+#endif
+#include <gtk/gtk.h>
+#include <glib.h>
+
+#include "color.h"
+#include "ui/selected-color.h"
+
+namespace Inkscape {
+namespace UI {
+namespace Widget {
+
+class ColorNotebook
+#if GTK_CHECK_VERSION(3, 0, 0)
+ : public Gtk::Grid
+#else
+ : public Gtk::Table
+#endif
+{
+public:
+ ColorNotebook(SelectedColor &color);
+ virtual ~ColorNotebook();
+
+protected:
+ struct Page {
+ Page(Inkscape::UI::ColorSelectorFactory *selector_factory, bool enabled_full);
+
+ Inkscape::UI::ColorSelectorFactory *selector_factory;
+ bool enabled_full;
+ };
+
+ virtual void _initUI();
+ void _addPage(Page &page);
+
+ static void _onButtonClicked(GtkWidget *widget, ColorNotebook *colorbook);
+ static void _onPickerClicked(GtkWidget *widget, ColorNotebook *colorbook);
+ static void _onPageSwitched(GtkNotebook *notebook, GtkWidget *page, guint page_num, ColorNotebook *colorbook);
+ virtual void _onSelectedColorChanged();
+
+ void _updateICCButtons();
+ void _setCurrentPage(int i);
+
+ Inkscape::UI::SelectedColor &_selected_color;
+ gulong _entryId;
+ GtkWidget *_book;
+ GtkWidget *_buttonbox;
+ GtkWidget **_buttons;
+ GtkWidget *_rgbal; /* RGBA entry */
+#if defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
+ GtkWidget *_box_outofgamut, *_box_colormanaged, *_box_toomuchink;
+#endif // defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
+ GtkWidget *_btn_picker;
+ GtkWidget *_p; /* Color preview */
+ boost::ptr_vector<Page> _available_pages;
+
+private:
+ // By default, disallow copy constructor and assignment operator
+ ColorNotebook(const ColorNotebook &obj);
+ ColorNotebook &operator=(const ColorNotebook &obj);
+};
+}
+}
+}
+#endif // SEEN_SP_COLOR_NOTEBOOK_H
+/*
+ Local Variables:
+ mode:c++
+ c-file-style:"stroustrup"
+ c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))
+ indent-tabs-mode:nil
+ fill-column:99
+ End:
+*/
+// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:fileencoding=utf-8:textwidth=99 :
+
diff --git a/src/ui/widget/color-picker.cpp b/src/ui/widget/color-picker.cpp
index d4c4d394e..a66fbfc9c 100644
--- a/src/ui/widget/color-picker.cpp
+++ b/src/ui/widget/color-picker.cpp
@@ -17,7 +17,7 @@
#include "document-undo.h"
#include "ui/dialog-events.h"
-#include "widgets/sp-color-notebook.h"
+#include "ui/widget/color-notebook.h"
#include "verbs.h"
@@ -27,8 +27,6 @@ namespace Inkscape {
namespace UI {
namespace Widget {
-void sp_color_picker_color_mod(SPColorSelector *csel, GObject *cp);
-
ColorPicker::ColorPicker (const Glib::ustring& title, const Glib::ustring& tip,
guint32 rgba, bool undo)
: _preview(rgba), _title(title), _rgba(rgba), _undo(undo),
@@ -39,12 +37,15 @@ ColorPicker::ColorPicker (const Glib::ustring& title, const Glib::ustring& tip,
_preview.show();
add (_preview);
set_tooltip_text (tip);
+
+ _selected_color.signal_changed.connect(sigc::mem_fun(this, &ColorPicker::_onSelectedColorChanged));
+ _selected_color.signal_dragged.connect(sigc::mem_fun(this, &ColorPicker::_onSelectedColorChanged));
+ _selected_color.signal_released.connect(sigc::mem_fun(this, &ColorPicker::_onSelectedColorChanged));
}
ColorPicker::~ColorPicker()
{
closeWindow();
- _colorSelector = NULL;
}
void ColorPicker::setupDialog(const Glib::ustring &title)
@@ -55,25 +56,17 @@ void ColorPicker::setupDialog(const Glib::ustring &title)
_colorSelectorDialog.hide();
_colorSelectorDialog.set_title (title);
_colorSelectorDialog.set_border_width (4);
- _colorSelector = SP_COLOR_SELECTOR(sp_color_selector_new(SP_TYPE_COLOR_NOTEBOOK));
+
+ _color_selector = Gtk::manage(new ColorNotebook(_selected_color));
#if WITH_GTKMM_3_0
_colorSelectorDialog.get_content_area()->pack_start (
- *Glib::wrap(&_colorSelector->vbox), true, true, 0);
+ *_color_selector, true, true, 0);
#else
_colorSelectorDialog.get_vbox()->pack_start (
- *Glib::wrap(&_colorSelector->vbox), true, true, 0);
+ *_color_selector, true, true, 0);
#endif
-
- g_signal_connect(G_OBJECT(_colorSelector), "dragged",
- G_CALLBACK(sp_color_picker_color_mod), (void *)this);
- g_signal_connect(G_OBJECT(_colorSelector), "released",
- G_CALLBACK(sp_color_picker_color_mod), (void *)this);
- g_signal_connect(G_OBJECT(_colorSelector), "changed",
- G_CALLBACK(sp_color_picker_color_mod), (void *)this);
-
- gtk_widget_show(GTK_WIDGET(_colorSelector));
-
+ _color_selector->show();
}
void ColorPicker::setRgba32 (guint32 rgba)
@@ -82,11 +75,11 @@ void ColorPicker::setRgba32 (guint32 rgba)
_preview.setRgba32 (rgba);
_rgba = rgba;
- if (_colorSelector)
+ if (_color_selector)
{
- SPColor color;
- color.set( rgba );
- _colorSelector->base->setColorAlpha(color, SP_RGBA32_A_F(rgba));
+ _updating = true;
+ _selected_color.setValue(rgba);
+ _updating = false;
}
}
@@ -97,11 +90,11 @@ void ColorPicker::closeWindow()
void ColorPicker::on_clicked()
{
- if (_colorSelector)
+ if (_color_selector)
{
- SPColor color;
- color.set( _rgba );
- _colorSelector->base->setColorAlpha(color, SP_RGBA32_A_F(_rgba));
+ _updating = true;
+ _selected_color.setValue(_rgba);
+ _updating = false;
}
_colorSelectorDialog.show();
}
@@ -110,34 +103,31 @@ void ColorPicker::on_changed (guint32)
{
}
-void sp_color_picker_color_mod(SPColorSelector *csel, GObject *cp)
-{
+void ColorPicker::_onSelectedColorChanged() {
+ if (_updating) {
+ return;
+ }
+
if (_in_use) {
return;
} else {
_in_use = true;
}
- SPColor color;
- float alpha = 0;
- csel->base->getColorAlpha(color, alpha);
- guint32 rgba = color.toRGBA32( alpha );
-
- ColorPicker *ptr = reinterpret_cast<ColorPicker *>(cp);
-
- (ptr->_preview).setRgba32 (rgba);
+ guint32 rgba = _selected_color.value();
+ _preview.setRgba32(rgba);
- if (ptr->_undo && SP_ACTIVE_DESKTOP)
+ if (_undo && SP_ACTIVE_DESKTOP) {
DocumentUndo::done(SP_ACTIVE_DESKTOP->getDocument(), SP_VERB_NONE,
/* TODO: annotate */ "color-picker.cpp:130");
+ }
- ptr->on_changed (rgba);
+ on_changed(rgba);
_in_use = false;
- ptr->_changed_signal.emit (rgba);
- ptr->_rgba = rgba;
+ _changed_signal.emit(rgba);
+ _rgba = rgba;
}
-
}//namespace Widget
}//namespace UI
}//namespace Inkscape
diff --git a/src/ui/widget/color-picker.h b/src/ui/widget/color-picker.h
index 99904b081..e8a738b5b 100644
--- a/src/ui/widget/color-picker.h
+++ b/src/ui/widget/color-picker.h
@@ -18,6 +18,7 @@
#include <gtkmm/dialog.h>
#include <gtkmm/button.h>
#include <sigc++/sigc++.h>
+#include "ui/selected-color.h"
#include "ui/widget/color-preview.h"
struct SPColorSelector;
@@ -49,7 +50,7 @@ public:
protected:
- friend void sp_color_picker_color_mod(SPColorSelector *csel, GObject *cp);
+ void _onSelectedColorChanged();
virtual void on_clicked();
virtual void on_changed (guint32);
@@ -59,13 +60,14 @@ protected:
sigc::signal<void,guint32> _changed_signal;
guint32 _rgba;
bool _undo;
-
+ bool _updating;
//Dialog
void setupDialog(const Glib::ustring &title);
//Inkscape::UI::Dialog::Dialog _colorSelectorDialog;
Gtk::Dialog _colorSelectorDialog;
- SPColorSelector *_colorSelector;
+ SelectedColor _selected_color;
+ Gtk::Widget *_color_selector;
};
}//namespace Widget
diff --git a/src/ui/widget/color-scales.cpp b/src/ui/widget/color-scales.cpp
new file mode 100644
index 000000000..170f83887
--- /dev/null
+++ b/src/ui/widget/color-scales.cpp
@@ -0,0 +1,677 @@
+/*
+ * bulia byak <buliabyak@users.sf.net>
+ */
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#include <math.h>
+#include <gtkmm/adjustment.h>
+#include <glibmm/i18n.h>
+#include <gtk/gtk.h>
+
+#include "svg/svg-icc-color.h"
+#include "ui/dialog-events.h"
+#include "ui/widget/color-scales.h"
+#include "ui/widget/color-slider.h"
+
+#define CSC_CHANNEL_R (1 << 0)
+#define CSC_CHANNEL_G (1 << 1)
+#define CSC_CHANNEL_B (1 << 2)
+#define CSC_CHANNEL_A (1 << 3)
+#define CSC_CHANNEL_H (1 << 0)
+#define CSC_CHANNEL_S (1 << 1)
+#define CSC_CHANNEL_V (1 << 2)
+#define CSC_CHANNEL_C (1 << 0)
+#define CSC_CHANNEL_M (1 << 1)
+#define CSC_CHANNEL_Y (1 << 2)
+#define CSC_CHANNEL_K (1 << 3)
+#define CSC_CHANNEL_CMYKA (1 << 4)
+
+#define CSC_CHANNELS_ALL 0
+
+#define XPAD 4
+#define YPAD 1
+
+#define noDUMP_CHANGE_INFO 1
+
+namespace Inkscape {
+namespace UI {
+namespace Widget {
+
+
+static const gchar *sp_color_scales_hue_map();
+
+const gchar *ColorScales::SUBMODE_NAMES[] = { N_("None"), N_("RGB"), N_("HSL"), N_("CMYK") };
+
+ColorScales::ColorScales(SelectedColor &color, SPColorScalesMode mode)
+#if GTK_CHECK_VERSION(3, 0, 0)
+ : Gtk::Grid()
+#else
+ : Gtk::Table(5, 3, false)
+#endif
+ , _color(color)
+ , _rangeLimit(255.0)
+ , _updating(FALSE)
+ , _dragging(FALSE)
+{
+ for (gint i = 0; i < 5; i++) {
+ _l[i] = 0;
+ _a[i] = 0;
+ _s[i] = 0;
+ _b[i] = 0;
+ }
+
+ _initUI(mode);
+
+ _color.signal_changed.connect(sigc::mem_fun(this, &ColorScales::_onColorChanged));
+ _color.signal_dragged.connect(sigc::mem_fun(this, &ColorScales::_onColorChanged));
+}
+
+ColorScales::~ColorScales()
+{
+ for (gint i = 0; i < 5; i++) {
+ _l[i] = 0;
+ _a[i] = 0;
+ _s[i] = 0;
+ _b[i] = 0;
+ }
+}
+
+void ColorScales::_initUI(SPColorScalesMode mode)
+{
+ gint i;
+
+ _updating = FALSE;
+ _dragging = FALSE;
+
+ GtkWidget *t = GTK_WIDGET(gobj());
+
+ /* Create components */
+ for (i = 0; i < static_cast<gint>(G_N_ELEMENTS(_a)); i++) {
+ /* Label */
+ _l[i] = gtk_label_new("");
+ gtk_misc_set_alignment(GTK_MISC(_l[i]), 1.0, 0.5);
+ gtk_widget_show(_l[i]);
+
+#if GTK_CHECK_VERSION(3, 0, 0)
+ #if GTK_CHECK_VERSION(3, 12, 0)
+ gtk_widget_set_margin_start(_l[i], XPAD);
+ gtk_widget_set_margin_end(_l[i], XPAD);
+ #else
+ gtk_widget_set_margin_left(_l[i], XPAD);
+ gtk_widget_set_margin_right(_l[i], XPAD);
+ #endif
+ gtk_widget_set_margin_top(_l[i], YPAD);
+ gtk_widget_set_margin_bottom(_l[i], YPAD);
+ gtk_grid_attach(GTK_GRID(t), _l[i], 0, i, 1, 1);
+#else
+ gtk_table_attach(GTK_TABLE(t), _l[i], 0, 1, i, i + 1, GTK_FILL, GTK_FILL, XPAD, YPAD);
+#endif
+
+ /* Adjustment */
+ _a[i] = GTK_ADJUSTMENT(gtk_adjustment_new(0.0, 0.0, _rangeLimit, 1.0, 10.0, 10.0));
+ /* Slider */
+ _s[i] = Gtk::manage(new Inkscape::UI::Widget::ColorSlider(Glib::wrap(_a[i], true)));
+ _s[i]->show();
+
+#if GTK_CHECK_VERSION(3, 0, 0)
+ #if GTK_CHECK_VERSION(3, 12, 0)
+ _s[i]->set_margin_start(XPAD);
+ _s[i]->set_margin_end(XPAD);
+ #else
+ _s[i]->set_margin_left(XPAD);
+ _s[i]->set_margin_right(XPAD);
+ #endif
+ _s[i]->set_margin_top(YPAD);
+ _s[i]->set_margin_bottom(YPAD);
+ _s[i]->set_hexpand(true);
+ gtk_grid_attach(GTK_GRID(t), _s[i]->gobj(), 1, i, 1, 1);
+#else
+ gtk_table_attach(GTK_TABLE(t), _s[i]->gobj(), 1, 2, i, i + 1, (GtkAttachOptions)(GTK_EXPAND | GTK_FILL),
+ GTK_FILL, XPAD, YPAD);
+#endif
+
+ /* Spinbutton */
+ _b[i] = gtk_spin_button_new(GTK_ADJUSTMENT(_a[i]), 1.0, 0);
+ sp_dialog_defocus_on_enter(_b[i]);
+ gtk_label_set_mnemonic_widget(GTK_LABEL(_l[i]), _b[i]);
+ gtk_widget_show(_b[i]);
+
+#if GTK_CHECK_VERSION(3, 0, 0)
+ #if GTK_CHECK_VERSION(3, 12, 0)
+ gtk_widget_set_margin_start(_b[i], XPAD);
+ gtk_widget_set_margin_end(_b[i], XPAD);
+ #else
+ gtk_widget_set_margin_left(_b[i], XPAD);
+ gtk_widget_set_margin_right(_b[i], XPAD);
+ #endif
+ gtk_widget_set_margin_top(_b[i], YPAD);
+ gtk_widget_set_margin_bottom(_b[i], YPAD);
+ gtk_widget_set_halign(_b[i], GTK_ALIGN_CENTER);
+ gtk_widget_set_valign(_b[i], GTK_ALIGN_CENTER);
+ gtk_grid_attach(GTK_GRID(t), _b[i], 2, i, 1, 1);
+#else
+ gtk_table_attach(GTK_TABLE(t), _b[i], 2, 3, i, i + 1, (GtkAttachOptions)0, (GtkAttachOptions)0, XPAD, YPAD);
+#endif
+
+ /* Attach channel value to adjustment */
+ g_object_set_data(G_OBJECT(_a[i]), "channel", GINT_TO_POINTER(i));
+ /* Signals */
+ g_signal_connect(G_OBJECT(_a[i]), "value_changed", G_CALLBACK(_adjustmentAnyChanged), this);
+ _s[i]->signal_grabbed.connect(sigc::mem_fun(this, &ColorScales::_sliderAnyGrabbed));
+ _s[i]->signal_released.connect(sigc::mem_fun(this, &ColorScales::_sliderAnyReleased));
+ _s[i]->signal_value_changed.connect(sigc::mem_fun(this, &ColorScales::_sliderAnyChanged));
+ }
+
+ //Prevent 5th bar from being shown by PanelDialog::show_all_children
+ gtk_widget_set_no_show_all(_l[4], TRUE);
+ _s[4]->set_no_show_all(true);
+ gtk_widget_set_no_show_all(_b[4], TRUE);
+
+ /* Initial mode is none, so it works */
+ setMode(mode);
+}
+
+void ColorScales::_recalcColor()
+{
+ SPColor color;
+ gfloat alpha = 1.0;
+ gfloat c[5];
+
+ switch (_mode) {
+ case SP_COLOR_SCALES_MODE_RGB:
+ case SP_COLOR_SCALES_MODE_HSV:
+ _getRgbaFloatv(c);
+ color.set(c[0], c[1], c[2]);
+ alpha = c[3];
+ break;
+ case SP_COLOR_SCALES_MODE_CMYK: {
+ _getCmykaFloatv(c);
+
+ float rgb[3];
+ sp_color_cmyk_to_rgb_floatv(rgb, c[0], c[1], c[2], c[3]);
+ color.set(rgb[0], rgb[1], rgb[2]);
+ alpha = c[4];
+ break;
+ }
+ default:
+ g_warning("file %s: line %d: Illegal color selector mode %d", __FILE__, __LINE__, _mode);
+ break;
+ }
+
+ _color.preserveICC();
+ _color.setColorAlpha(color, alpha);
+}
+
+void ColorScales::_updateDisplay()
+{
+#ifdef DUMP_CHANGE_INFO
+ g_message("ColorScales::_onColorChanged( this=%p, %f, %f, %f, %f)", this, _color.color().v.c[0],
+ _color.color().v.c[1], _color.color().v.c[2], _color.alpha());
+#endif
+ gfloat tmp[3];
+ gfloat c[5] = { 0.0, 0.0, 0.0, 0.0 };
+
+ SPColor color = _color.color();
+
+ switch (_mode) {
+ case SP_COLOR_SCALES_MODE_RGB:
+ sp_color_get_rgb_floatv(&color, c);
+ c[3] = _color.alpha();
+ c[4] = 0.0;
+ break;
+ case SP_COLOR_SCALES_MODE_HSV:
+ sp_color_get_rgb_floatv(&color, tmp);
+ sp_color_rgb_to_hsl_floatv(c, tmp[0], tmp[1], tmp[2]);
+ c[3] = _color.alpha();
+ c[4] = 0.0;
+ break;
+ case SP_COLOR_SCALES_MODE_CMYK:
+ sp_color_get_cmyk_floatv(&color, c);
+ c[4] = _color.alpha();
+ break;
+ default:
+ g_warning("file %s: line %d: Illegal color selector mode %d", __FILE__, __LINE__, _mode);
+ break;
+ }
+
+ _updating = TRUE;
+ setScaled(_a[0], c[0]);
+ setScaled(_a[1], c[1]);
+ setScaled(_a[2], c[2]);
+ setScaled(_a[3], c[3]);
+ setScaled(_a[4], c[4]);
+ _updateSliders(CSC_CHANNELS_ALL);
+ _updating = FALSE;
+}
+
+/* Helpers for setting color value */
+gfloat ColorScales::getScaled(const GtkAdjustment *a)
+{
+ gfloat val = gtk_adjustment_get_value(const_cast<GtkAdjustment *>(a)) /
+ gtk_adjustment_get_upper(const_cast<GtkAdjustment *>(a));
+ return val;
+}
+
+void ColorScales::setScaled(GtkAdjustment *a, gfloat v)
+{
+ gfloat val = v * gtk_adjustment_get_upper(a);
+ gtk_adjustment_set_value(a, val);
+}
+
+void ColorScales::_setRangeLimit(gdouble upper)
+{
+ _rangeLimit = upper;
+ for (gint i = 0; i < static_cast<gint>(G_N_ELEMENTS(_a)); i++) {
+ gtk_adjustment_set_upper(_a[i], upper);
+ gtk_adjustment_changed(_a[i]);
+ }
+}
+
+void ColorScales::_onColorChanged()
+{
+ if (!get_visible()) {
+ return;
+ }
+ _updateDisplay();
+}
+
+void ColorScales::on_show()
+{
+#if GTK_CHECK_VERSION(3, 0, 0)
+ Gtk::Grid::on_show();
+#else
+ Gtk::Table::on_show();
+#endif
+ _updateDisplay();
+}
+
+void ColorScales::_getRgbaFloatv(gfloat *rgba)
+{
+ g_return_if_fail(rgba != NULL);
+
+ switch (_mode) {
+ case SP_COLOR_SCALES_MODE_RGB:
+ rgba[0] = getScaled(_a[0]);
+ rgba[1] = getScaled(_a[1]);
+ rgba[2] = getScaled(_a[2]);
+ rgba[3] = getScaled(_a[3]);
+ break;
+ case SP_COLOR_SCALES_MODE_HSV:
+ sp_color_hsl_to_rgb_floatv(rgba, getScaled(_a[0]), getScaled(_a[1]), getScaled(_a[2]));
+ rgba[3] = getScaled(_a[3]);
+ break;
+ case SP_COLOR_SCALES_MODE_CMYK:
+ sp_color_cmyk_to_rgb_floatv(rgba, getScaled(_a[0]), getScaled(_a[1]), getScaled(_a[2]), getScaled(_a[3]));
+ rgba[3] = getScaled(_a[4]);
+ break;
+ default:
+ g_warning("file %s: line %d: Illegal color selector mode", __FILE__, __LINE__);
+ break;
+ }
+}
+
+void ColorScales::_getCmykaFloatv(gfloat *cmyka)
+{
+ gfloat rgb[3];
+
+ g_return_if_fail(cmyka != NULL);
+
+ switch (_mode) {
+ case SP_COLOR_SCALES_MODE_RGB:
+ sp_color_rgb_to_cmyk_floatv(cmyka, getScaled(_a[0]), getScaled(_a[1]), getScaled(_a[2]));
+ cmyka[4] = getScaled(_a[3]);
+ break;
+ case SP_COLOR_SCALES_MODE_HSV:
+ sp_color_hsl_to_rgb_floatv(rgb, getScaled(_a[0]), getScaled(_a[1]), getScaled(_a[2]));
+ sp_color_rgb_to_cmyk_floatv(cmyka, rgb[0], rgb[1], rgb[2]);
+ cmyka[4] = getScaled(_a[3]);
+ break;
+ case SP_COLOR_SCALES_MODE_CMYK:
+ cmyka[0] = getScaled(_a[0]);
+ cmyka[1] = getScaled(_a[1]);
+ cmyka[2] = getScaled(_a[2]);
+ cmyka[3] = getScaled(_a[3]);
+ cmyka[4] = getScaled(_a[4]);
+ break;
+ default:
+ g_warning("file %s: line %d: Illegal color selector mode", __FILE__, __LINE__);
+ break;
+ }
+}
+
+guint32 ColorScales::_getRgba32()
+{
+ gfloat c[4];
+ guint32 rgba;
+
+ _getRgbaFloatv(c);
+
+ rgba = SP_RGBA32_F_COMPOSE(c[0], c[1], c[2], c[3]);
+
+ return rgba;
+}
+
+void ColorScales::setMode(SPColorScalesMode mode)
+{
+ gfloat rgba[4];
+ gfloat c[4];
+
+ if (_mode == mode)
+ return;
+
+ if ((_mode == SP_COLOR_SCALES_MODE_RGB) || (_mode == SP_COLOR_SCALES_MODE_HSV) ||
+ (_mode == SP_COLOR_SCALES_MODE_CMYK)) {
+ _getRgbaFloatv(rgba);
+ }
+ else {
+ rgba[0] = rgba[1] = rgba[2] = rgba[3] = 1.0;
+ }
+
+ _mode = mode;
+
+ switch (mode) {
+ case SP_COLOR_SCALES_MODE_RGB:
+ _setRangeLimit(255.0);
+ gtk_label_set_markup_with_mnemonic(GTK_LABEL(_l[0]), _("_R:"));
+ _s[0]->set_tooltip_text(_("Red"));
+ gtk_widget_set_tooltip_text(_b[0], _("Red"));
+ gtk_label_set_markup_with_mnemonic(GTK_LABEL(_l[1]), _("_G:"));
+ _s[1]->set_tooltip_text(_("Green"));
+ gtk_widget_set_tooltip_text(_b[1], _("Green"));
+ gtk_label_set_markup_with_mnemonic(GTK_LABEL(_l[2]), _("_B:"));
+ _s[2]->set_tooltip_text(_("Blue"));
+ gtk_widget_set_tooltip_text(_b[2], _("Blue"));
+ gtk_label_set_markup_with_mnemonic(GTK_LABEL(_l[3]), _("_A:"));
+ _s[3]->set_tooltip_text(_("Alpha (opacity)"));
+ gtk_widget_set_tooltip_text(_b[3], _("Alpha (opacity)"));
+ _s[0]->setMap(NULL);
+ gtk_widget_hide(_l[4]);
+ _s[4]->hide();
+ gtk_widget_hide(_b[4]);
+ _updating = TRUE;
+ setScaled(_a[0], rgba[0]);
+ setScaled(_a[1], rgba[1]);
+ setScaled(_a[2], rgba[2]);
+ setScaled(_a[3], rgba[3]);
+ _updateSliders(CSC_CHANNELS_ALL);
+ _updating = FALSE;
+ break;
+ case SP_COLOR_SCALES_MODE_HSV:
+ _setRangeLimit(255.0);
+ gtk_label_set_markup_with_mnemonic(GTK_LABEL(_l[0]), _("_H:"));
+ _s[0]->set_tooltip_text(_("Hue"));
+ gtk_widget_set_tooltip_text(_b[0], _("Hue"));
+ gtk_label_set_markup_with_mnemonic(GTK_LABEL(_l[1]), _("_S:"));
+ _s[1]->set_tooltip_text(_("Saturation"));
+ gtk_widget_set_tooltip_text(_b[1], _("Saturation"));
+ gtk_label_set_markup_with_mnemonic(GTK_LABEL(_l[2]), _("_L:"));
+ _s[2]->set_tooltip_text(_("Lightness"));
+ gtk_widget_set_tooltip_text(_b[2], _("Lightness"));
+ gtk_label_set_markup_with_mnemonic(GTK_LABEL(_l[3]), _("_A:"));
+ _s[3]->set_tooltip_text(_("Alpha (opacity)"));
+ gtk_widget_set_tooltip_text(_b[3], _("Alpha (opacity)"));
+ _s[0]->setMap((guchar *)(sp_color_scales_hue_map()));
+ gtk_widget_hide(_l[4]);
+ _s[4]->hide();
+ gtk_widget_hide(_b[4]);
+ _updating = TRUE;
+ c[0] = 0.0;
+ sp_color_rgb_to_hsl_floatv(c, rgba[0], rgba[1], rgba[2]);
+ setScaled(_a[0], c[0]);
+ setScaled(_a[1], c[1]);
+ setScaled(_a[2], c[2]);
+ setScaled(_a[3], rgba[3]);
+ _updateSliders(CSC_CHANNELS_ALL);
+ _updating = FALSE;
+ break;
+ case SP_COLOR_SCALES_MODE_CMYK:
+ _setRangeLimit(100.0);
+ gtk_label_set_markup_with_mnemonic(GTK_LABEL(_l[0]), _("_C:"));
+ _s[0]->set_tooltip_text(_("Cyan"));
+ gtk_widget_set_tooltip_text(_b[0], _("Cyan"));
+ gtk_label_set_markup_with_mnemonic(GTK_LABEL(_l[1]), _("_M:"));
+ _s[1]->set_tooltip_text(_("Magenta"));
+ gtk_widget_set_tooltip_text(_b[1], _("Magenta"));
+ gtk_label_set_markup_with_mnemonic(GTK_LABEL(_l[2]), _("_Y:"));
+ _s[2]->set_tooltip_text(_("Yellow"));
+ gtk_widget_set_tooltip_text(_b[2], _("Yellow"));
+ gtk_label_set_markup_with_mnemonic(GTK_LABEL(_l[3]), _("_K:"));
+ _s[3]->set_tooltip_text(_("Black"));
+ gtk_widget_set_tooltip_text(_b[3], _("Black"));
+ gtk_label_set_markup_with_mnemonic(GTK_LABEL(_l[4]), _("_A:"));
+ _s[4]->set_tooltip_text(_("Alpha (opacity)"));
+ gtk_widget_set_tooltip_text(_b[4], _("Alpha (opacity)"));
+ _s[0]->setMap(NULL);
+ gtk_widget_show(_l[4]);
+ _s[4]->show();
+ gtk_widget_show(_b[4]);
+ _updating = TRUE;
+
+ sp_color_rgb_to_cmyk_floatv(c, rgba[0], rgba[1], rgba[2]);
+ setScaled(_a[0], c[0]);
+ setScaled(_a[1], c[1]);
+ setScaled(_a[2], c[2]);
+ setScaled(_a[3], c[3]);
+
+ setScaled(_a[4], rgba[3]);
+ _updateSliders(CSC_CHANNELS_ALL);
+ _updating = FALSE;
+ break;
+ default:
+ g_warning("file %s: line %d: Illegal color selector mode", __FILE__, __LINE__);
+ break;
+ }
+}
+
+SPColorScalesMode ColorScales::getMode() const { return _mode; }
+
+void ColorScales::_adjustmentAnyChanged(GtkAdjustment *adjustment, ColorScales *cs)
+{
+ gint channel = GPOINTER_TO_INT(g_object_get_data(G_OBJECT(adjustment), "channel"));
+
+ _adjustmentChanged(cs, channel);
+}
+
+void ColorScales::_sliderAnyGrabbed()
+{
+ if (_updating) {
+ return;
+ }
+ if (!_dragging) {
+ _dragging = TRUE;
+ _color.setHeld(true);
+ }
+}
+
+void ColorScales::_sliderAnyReleased()
+{
+ if (_updating) {
+ return;
+ }
+ if (_dragging) {
+ _dragging = FALSE;
+ _color.setHeld(false);
+ }
+}
+
+void ColorScales::_sliderAnyChanged()
+{
+ if (_updating) {
+ return;
+ }
+ _recalcColor();
+}
+
+void ColorScales::_adjustmentChanged(ColorScales *scales, guint channel)
+{
+ if (scales->_updating) {
+ return;
+ }
+
+ scales->_updateSliders((1 << channel));
+ scales->_recalcColor();
+}
+
+void ColorScales::_updateSliders(guint channels)
+{
+ gfloat rgb0[3], rgbm[3], rgb1[3];
+#ifdef SPCS_PREVIEW
+ guint32 rgba;
+#endif
+ switch (_mode) {
+ case SP_COLOR_SCALES_MODE_RGB:
+ if ((channels != CSC_CHANNEL_R) && (channels != CSC_CHANNEL_A)) {
+ /* Update red */
+ _s[0]->setColors(SP_RGBA32_F_COMPOSE(0.0, getScaled(_a[1]), getScaled(_a[2]), 1.0),
+ SP_RGBA32_F_COMPOSE(0.5, getScaled(_a[1]), getScaled(_a[2]), 1.0),
+ SP_RGBA32_F_COMPOSE(1.0, getScaled(_a[1]), getScaled(_a[2]), 1.0));
+ }
+ if ((channels != CSC_CHANNEL_G) && (channels != CSC_CHANNEL_A)) {
+ /* Update green */
+ _s[1]->setColors(SP_RGBA32_F_COMPOSE(getScaled(_a[0]), 0.0, getScaled(_a[2]), 1.0),
+ SP_RGBA32_F_COMPOSE(getScaled(_a[0]), 0.5, getScaled(_a[2]), 1.0),
+ SP_RGBA32_F_COMPOSE(getScaled(_a[0]), 1.0, getScaled(_a[2]), 1.0));
+ }
+ if ((channels != CSC_CHANNEL_B) && (channels != CSC_CHANNEL_A)) {
+ /* Update blue */
+ _s[2]->setColors(SP_RGBA32_F_COMPOSE(getScaled(_a[0]), getScaled(_a[1]), 0.0, 1.0),
+ SP_RGBA32_F_COMPOSE(getScaled(_a[0]), getScaled(_a[1]), 0.5, 1.0),
+ SP_RGBA32_F_COMPOSE(getScaled(_a[0]), getScaled(_a[1]), 1.0, 1.0));
+ }
+ if (channels != CSC_CHANNEL_A) {
+ /* Update alpha */
+ _s[3]->setColors(SP_RGBA32_F_COMPOSE(getScaled(_a[0]), getScaled(_a[1]), getScaled(_a[2]), 0.0),
+ SP_RGBA32_F_COMPOSE(getScaled(_a[0]), getScaled(_a[1]), getScaled(_a[2]), 0.5),
+ SP_RGBA32_F_COMPOSE(getScaled(_a[0]), getScaled(_a[1]), getScaled(_a[2]), 1.0));
+ }
+ break;
+ case SP_COLOR_SCALES_MODE_HSV:
+ /* Hue is never updated */
+ if ((channels != CSC_CHANNEL_S) && (channels != CSC_CHANNEL_A)) {
+ /* Update saturation */
+ sp_color_hsl_to_rgb_floatv(rgb0, getScaled(_a[0]), 0.0, getScaled(_a[2]));
+ sp_color_hsl_to_rgb_floatv(rgbm, getScaled(_a[0]), 0.5, getScaled(_a[2]));
+ sp_color_hsl_to_rgb_floatv(rgb1, getScaled(_a[0]), 1.0, getScaled(_a[2]));
+ _s[1]->setColors(SP_RGBA32_F_COMPOSE(rgb0[0], rgb0[1], rgb0[2], 1.0),
+ SP_RGBA32_F_COMPOSE(rgbm[0], rgbm[1], rgbm[2], 1.0),
+ SP_RGBA32_F_COMPOSE(rgb1[0], rgb1[1], rgb1[2], 1.0));
+ }
+ if ((channels != CSC_CHANNEL_V) && (channels != CSC_CHANNEL_A)) {
+ /* Update value */
+ sp_color_hsl_to_rgb_floatv(rgb0, getScaled(_a[0]), getScaled(_a[1]), 0.0);
+ sp_color_hsl_to_rgb_floatv(rgbm, getScaled(_a[0]), getScaled(_a[1]), 0.5);
+ sp_color_hsl_to_rgb_floatv(rgb1, getScaled(_a[0]), getScaled(_a[1]), 1.0);
+ _s[2]->setColors(SP_RGBA32_F_COMPOSE(rgb0[0], rgb0[1], rgb0[2], 1.0),
+ SP_RGBA32_F_COMPOSE(rgbm[0], rgbm[1], rgbm[2], 1.0),
+ SP_RGBA32_F_COMPOSE(rgb1[0], rgb1[1], rgb1[2], 1.0));
+ }
+ if (channels != CSC_CHANNEL_A) {
+ /* Update alpha */
+ sp_color_hsl_to_rgb_floatv(rgb0, getScaled(_a[0]), getScaled(_a[1]), getScaled(_a[2]));
+ _s[3]->setColors(SP_RGBA32_F_COMPOSE(rgb0[0], rgb0[1], rgb0[2], 0.0),
+ SP_RGBA32_F_COMPOSE(rgb0[0], rgb0[1], rgb0[2], 0.5),
+ SP_RGBA32_F_COMPOSE(rgb0[0], rgb0[1], rgb0[2], 1.0));
+ }
+ break;
+ case SP_COLOR_SCALES_MODE_CMYK:
+ if ((channels != CSC_CHANNEL_C) && (channels != CSC_CHANNEL_CMYKA)) {
+ /* Update C */
+ sp_color_cmyk_to_rgb_floatv(rgb0, 0.0, getScaled(_a[1]), getScaled(_a[2]), getScaled(_a[3]));
+ sp_color_cmyk_to_rgb_floatv(rgbm, 0.5, getScaled(_a[1]), getScaled(_a[2]), getScaled(_a[3]));
+ sp_color_cmyk_to_rgb_floatv(rgb1, 1.0, getScaled(_a[1]), getScaled(_a[2]), getScaled(_a[3]));
+ _s[0]->setColors(SP_RGBA32_F_COMPOSE(rgb0[0], rgb0[1], rgb0[2], 1.0),
+ SP_RGBA32_F_COMPOSE(rgbm[0], rgbm[1], rgbm[2], 1.0),
+ SP_RGBA32_F_COMPOSE(rgb1[0], rgb1[1], rgb1[2], 1.0));
+ }
+ if ((channels != CSC_CHANNEL_M) && (channels != CSC_CHANNEL_CMYKA)) {
+ /* Update M */
+ sp_color_cmyk_to_rgb_floatv(rgb0, getScaled(_a[0]), 0.0, getScaled(_a[2]), getScaled(_a[3]));
+ sp_color_cmyk_to_rgb_floatv(rgbm, getScaled(_a[0]), 0.5, getScaled(_a[2]), getScaled(_a[3]));
+ sp_color_cmyk_to_rgb_floatv(rgb1, getScaled(_a[0]), 1.0, getScaled(_a[2]), getScaled(_a[3]));
+ _s[1]->setColors(SP_RGBA32_F_COMPOSE(rgb0[0], rgb0[1], rgb0[2], 1.0),
+ SP_RGBA32_F_COMPOSE(rgbm[0], rgbm[1], rgbm[2], 1.0),
+ SP_RGBA32_F_COMPOSE(rgb1[0], rgb1[1], rgb1[2], 1.0));
+ }
+ if ((channels != CSC_CHANNEL_Y) && (channels != CSC_CHANNEL_CMYKA)) {
+ /* Update Y */
+ sp_color_cmyk_to_rgb_floatv(rgb0, getScaled(_a[0]), getScaled(_a[1]), 0.0, getScaled(_a[3]));
+ sp_color_cmyk_to_rgb_floatv(rgbm, getScaled(_a[0]), getScaled(_a[1]), 0.5, getScaled(_a[3]));
+ sp_color_cmyk_to_rgb_floatv(rgb1, getScaled(_a[0]), getScaled(_a[1]), 1.0, getScaled(_a[3]));
+ _s[2]->setColors(SP_RGBA32_F_COMPOSE(rgb0[0], rgb0[1], rgb0[2], 1.0),
+ SP_RGBA32_F_COMPOSE(rgbm[0], rgbm[1], rgbm[2], 1.0),
+ SP_RGBA32_F_COMPOSE(rgb1[0], rgb1[1], rgb1[2], 1.0));
+ }
+ if ((channels != CSC_CHANNEL_K) && (channels != CSC_CHANNEL_CMYKA)) {
+ /* Update K */
+ sp_color_cmyk_to_rgb_floatv(rgb0, getScaled(_a[0]), getScaled(_a[1]), getScaled(_a[2]), 0.0);
+ sp_color_cmyk_to_rgb_floatv(rgbm, getScaled(_a[0]), getScaled(_a[1]), getScaled(_a[2]), 0.5);
+ sp_color_cmyk_to_rgb_floatv(rgb1, getScaled(_a[0]), getScaled(_a[1]), getScaled(_a[2]), 1.0);
+ _s[3]->setColors(SP_RGBA32_F_COMPOSE(rgb0[0], rgb0[1], rgb0[2], 1.0),
+ SP_RGBA32_F_COMPOSE(rgbm[0], rgbm[1], rgbm[2], 1.0),
+ SP_RGBA32_F_COMPOSE(rgb1[0], rgb1[1], rgb1[2], 1.0));
+ }
+ if (channels != CSC_CHANNEL_CMYKA) {
+ /* Update alpha */
+ sp_color_cmyk_to_rgb_floatv(rgb0, getScaled(_a[0]), getScaled(_a[1]), getScaled(_a[2]),
+ getScaled(_a[3]));
+ _s[4]->setColors(SP_RGBA32_F_COMPOSE(rgb0[0], rgb0[1], rgb0[2], 0.0),
+ SP_RGBA32_F_COMPOSE(rgb0[0], rgb0[1], rgb0[2], 0.5),
+ SP_RGBA32_F_COMPOSE(rgb0[0], rgb0[1], rgb0[2], 1.0));
+ }
+ break;
+ default:
+ g_warning("file %s: line %d: Illegal color selector mode", __FILE__, __LINE__);
+ break;
+ }
+
+#ifdef SPCS_PREVIEW
+ rgba = sp_color_scales_get_rgba32(cs);
+ sp_color_preview_set_rgba32(SP_COLOR_PREVIEW(_p), rgba);
+#endif
+}
+
+static const gchar *sp_color_scales_hue_map(void)
+{
+ static gchar *map = NULL;
+
+ if (!map) {
+ gchar *p;
+ gint h;
+ map = g_new(gchar, 4 * 1024);
+ p = map;
+ for (h = 0; h < 1024; h++) {
+ gfloat rgb[3];
+ sp_color_hsl_to_rgb_floatv(rgb, h / 1024.0, 1.0, 0.5);
+ *p++ = SP_COLOR_F_TO_U(rgb[0]);
+ *p++ = SP_COLOR_F_TO_U(rgb[1]);
+ *p++ = SP_COLOR_F_TO_U(rgb[2]);
+ *p++ = 255;
+ }
+ }
+
+ return map;
+}
+
+ColorScalesFactory::ColorScalesFactory(SPColorScalesMode submode)
+ : _submode(submode)
+{
+}
+
+ColorScalesFactory::~ColorScalesFactory() {}
+
+Gtk::Widget *ColorScalesFactory::createWidget(Inkscape::UI::SelectedColor &color) const
+{
+ Gtk::Widget *w = Gtk::manage(new ColorScales(color, _submode));
+ return w;
+}
+
+Glib::ustring ColorScalesFactory::modeName() const {
+ return gettext(ColorScales::SUBMODE_NAMES[_submode]);
+}
+
+}
+}
+}
diff --git a/src/ui/widget/color-scales.h b/src/ui/widget/color-scales.h
new file mode 100644
index 000000000..aeacfbcc1
--- /dev/null
+++ b/src/ui/widget/color-scales.h
@@ -0,0 +1,112 @@
+#ifndef SEEN_SP_COLOR_SCALES_H
+#define SEEN_SP_COLOR_SCALES_H
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#if WITH_GTKMM_3_0
+#include <gtkmm/grid.h>
+#else
+#include <gtkmm/table.h>
+#endif
+
+#include "ui/selected-color.h"
+
+namespace Inkscape {
+namespace UI {
+namespace Widget {
+
+class ColorSlider;
+
+typedef enum {
+ SP_COLOR_SCALES_MODE_NONE = 0,
+ SP_COLOR_SCALES_MODE_RGB = 1,
+ SP_COLOR_SCALES_MODE_HSV = 2,
+ SP_COLOR_SCALES_MODE_CMYK = 3
+} SPColorScalesMode;
+
+class ColorScales
+#if GTK_CHECK_VERSION(3, 0, 0)
+ : public Gtk::Grid
+#else
+ : public Gtk::Table
+#endif
+{
+public:
+ static const gchar *SUBMODE_NAMES[];
+
+ static gfloat getScaled(const GtkAdjustment *a);
+ static void setScaled(GtkAdjustment *a, gfloat v);
+
+ ColorScales(SelectedColor &color, SPColorScalesMode mode);
+ virtual ~ColorScales();
+
+ virtual void _initUI(SPColorScalesMode mode);
+
+ void setMode(SPColorScalesMode mode);
+ SPColorScalesMode getMode() const;
+
+protected:
+ void _onColorChanged();
+ void on_show();
+
+ static void _adjustmentAnyChanged(GtkAdjustment *adjustment, ColorScales *cs);
+ void _sliderAnyGrabbed();
+ void _sliderAnyReleased();
+ void _sliderAnyChanged();
+ static void _adjustmentChanged(ColorScales *cs, guint channel);
+
+ void _getRgbaFloatv(gfloat *rgba);
+ void _getCmykaFloatv(gfloat *cmyka);
+ guint32 _getRgba32();
+ void _updateSliders(guint channels);
+ void _recalcColor();
+ void _updateDisplay();
+
+ void _setRangeLimit(gdouble upper);
+
+ SelectedColor &_color;
+ SPColorScalesMode _mode;
+ gdouble _rangeLimit;
+ gboolean _updating : 1;
+ gboolean _dragging : 1;
+ GtkAdjustment *_a[5]; /* Channel adjustments */
+ Inkscape::UI::Widget::ColorSlider *_s[5]; /* Channel sliders */
+ GtkWidget *_b[5]; /* Spinbuttons */
+ GtkWidget *_l[5]; /* Labels */
+
+private:
+ // By default, disallow copy constructor and assignment operator
+ ColorScales(ColorScales const &obj);
+ ColorScales &operator=(ColorScales const &obj);
+};
+
+class ColorScalesFactory : public Inkscape::UI::ColorSelectorFactory
+{
+public:
+ ColorScalesFactory(SPColorScalesMode submode);
+ ~ColorScalesFactory();
+
+ Gtk::Widget *createWidget(Inkscape::UI::SelectedColor &color) const;
+ Glib::ustring modeName() const;
+
+private:
+ SPColorScalesMode _submode;
+};
+
+}
+}
+}
+
+#endif /* !SEEN_SP_COLOR_SCALES_H */
+/*
+ Local Variables:
+ mode:c++
+ c-file-style:"stroustrup"
+ c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))
+ indent-tabs-mode:nil
+ fill-column:99
+ End:
+*/
+// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4 :
diff --git a/src/ui/widget/color-slider.cpp b/src/ui/widget/color-slider.cpp
new file mode 100644
index 000000000..0c9586a67
--- /dev/null
+++ b/src/ui/widget/color-slider.cpp
@@ -0,0 +1,633 @@
+/**
+ * @file
+ * A slider with colored background - implementation.
+ */
+/* Author:
+ * Lauris Kaplinski <lauris@kaplinski.com>
+ * bulia byak <buliabyak@users.sf.net>
+ *
+ * Copyright (C) 2001-2002 Lauris Kaplinski
+ *
+ * This code is in public domain
+ */
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#include <gdkmm/cursor.h>
+#include <gdkmm/screen.h>
+#include <gdkmm/general.h>
+#include <gtkmm/adjustment.h>
+#if WITH_GTKMM_3_0
+#include <gtkmm/stylecontext.h>
+#else
+#include <gtkmm/style.h>
+#endif
+#include <gtk/gtk.h>
+
+#include "ui/widget/color-scales.h"
+#include "ui/widget/color-slider.h"
+#include "preferences.h"
+
+static const gint SLIDER_WIDTH = 96;
+static const gint SLIDER_HEIGHT = 8;
+static const gint ARROW_SIZE = 7;
+
+static const guchar *sp_color_slider_render_gradient(gint x0, gint y0, gint width, gint height, gint c[], gint dc[],
+ guint b0, guint b1, guint mask);
+static const guchar *sp_color_slider_render_map(gint x0, gint y0, gint width, gint height, guchar *map, gint start,
+ gint step, guint b0, guint b1, guint mask);
+
+namespace Inkscape {
+namespace UI {
+namespace Widget {
+
+#if GTK_CHECK_VERSION(3, 0, 0)
+ColorSlider::ColorSlider(Glib::RefPtr<Gtk::Adjustment> adjustment)
+ : _dragging(false)
+#else
+ColorSlider::ColorSlider(Gtk::Adjustment *adjustment)
+ : _dragging(false)
+ , _adjustment(NULL)
+#endif
+ , _value(0.0)
+ , _oldvalue(0.0)
+ , _mapsize(0)
+ , _map(NULL)
+{
+ _c0[0] = 0x00;
+ _c0[1] = 0x00;
+ _c0[2] = 0x00;
+ _c0[3] = 0xff;
+
+ _cm[0] = 0xff;
+ _cm[1] = 0x00;
+ _cm[2] = 0x00;
+ _cm[3] = 0xff;
+
+ _c0[0] = 0xff;
+ _c0[1] = 0xff;
+ _c0[2] = 0xff;
+ _c0[3] = 0xff;
+
+ _b0 = 0x5f;
+ _b1 = 0xa0;
+ _bmask = 0x08;
+
+ setAdjustment(adjustment);
+}
+
+ColorSlider::~ColorSlider()
+{
+ if (_adjustment) {
+ _adjustment_changed_connection.disconnect();
+ _adjustment_value_changed_connection.disconnect();
+#if GTK_CHECK_VERSION(3, 0, 0)
+ _adjustment.reset();
+#else
+ _adjustment->unreference();
+ _adjustment = NULL;
+#endif
+ }
+}
+
+void ColorSlider::on_realize()
+{
+ set_realized();
+
+ if (!_gdk_window) {
+ GdkWindowAttr attributes;
+ gint attributes_mask;
+ Gtk::Allocation allocation = get_allocation();
+
+ memset(&attributes, 0, sizeof(attributes));
+ attributes.x = allocation.get_x();
+ attributes.y = allocation.get_y();
+ attributes.width = allocation.get_width();
+ attributes.height = allocation.get_height();
+ attributes.window_type = GDK_WINDOW_CHILD;
+ attributes.wclass = GDK_INPUT_OUTPUT;
+ attributes.visual = gdk_screen_get_system_visual(gdk_screen_get_default());
+#if !GTK_CHECK_VERSION(3, 0, 0)
+ attributes.colormap = gdk_screen_get_system_colormap(gdk_screen_get_default());
+#endif
+ attributes.event_mask = get_events();
+ attributes.event_mask |= (Gdk::EXPOSURE_MASK | Gdk::BUTTON_PRESS_MASK | Gdk::BUTTON_RELEASE_MASK |
+ Gdk::POINTER_MOTION_MASK | Gdk::ENTER_NOTIFY_MASK | Gdk::LEAVE_NOTIFY_MASK);
+
+#if GTK_CHECK_VERSION(3, 0, 0)
+ attributes_mask = GDK_WA_X | GDK_WA_Y | GDK_WA_VISUAL;
+#else
+ attributes_mask = GDK_WA_X | GDK_WA_Y | GDK_WA_VISUAL | GDK_WA_COLORMAP;
+#endif
+
+ _gdk_window = Gdk::Window::create(get_parent_window(), &attributes, attributes_mask);
+ set_window(_gdk_window);
+ _gdk_window->set_user_data(gobj());
+
+#if !GTK_CHECK_VERSION(3, 0, 0)
+ style_attach();
+#endif
+ }
+}
+
+void ColorSlider::on_unrealize()
+{
+ _gdk_window.reset();
+
+ Gtk::Widget::on_unrealize();
+}
+
+void ColorSlider::on_size_allocate(Gtk::Allocation &allocation)
+{
+ set_allocation(allocation);
+
+ if (get_realized()) {
+ _gdk_window->move_resize(allocation.get_x(), allocation.get_y(), allocation.get_width(),
+ allocation.get_height());
+ }
+}
+
+#if GTK_CHECK_VERSION(3, 0, 0)
+
+void ColorSlider::get_preferred_width_vfunc(int &minimum_width, int &natural_width) const
+{
+ Glib::RefPtr<Gtk::StyleContext> style_context = get_style_context();
+ Gtk::Border padding = style_context->get_padding(get_state_flags());
+ int width = SLIDER_WIDTH + padding.get_left() + padding.get_right();
+ minimum_width = natural_width = width;
+}
+
+void ColorSlider::get_preferred_width_for_height_vfunc(int /*height*/, int &minimum_width, int &natural_width) const
+{
+ get_preferred_width(minimum_width, natural_width);
+}
+
+void ColorSlider::get_preferred_height_vfunc(int &minimum_height, int &natural_height) const
+{
+ Glib::RefPtr<Gtk::StyleContext> style_context = get_style_context();
+ Gtk::Border padding = style_context->get_padding(get_state_flags());
+ int height = SLIDER_HEIGHT + padding.get_top() + padding.get_bottom();
+ minimum_height = natural_height = height;
+}
+
+void ColorSlider::get_preferred_height_for_width_vfunc(int /*width*/, int &minimum_height, int &natural_height) const
+{
+ get_preferred_height(minimum_height, natural_height);
+}
+
+#else
+
+void ColorSlider::on_size_request(Gtk::Requisition *requisition)
+{
+ GtkStyle *style = gtk_widget_get_style(gobj());
+ requisition->width = SLIDER_WIDTH + style->xthickness * 2;
+ requisition->height = SLIDER_HEIGHT + style->ythickness * 2;
+}
+
+bool ColorSlider::on_expose_event(GdkEventExpose *event)
+{
+ bool result = false;
+
+ if (get_is_drawable()) {
+ Cairo::RefPtr<Cairo::Context> cr = _gdk_window->create_cairo_context();
+ result = on_draw(cr);
+ }
+ return result;
+}
+
+#endif
+
+bool ColorSlider::on_button_press_event(GdkEventButton *event)
+{
+ if (event->button == 1) {
+ Gtk::Allocation allocation = get_allocation();
+ gint cx, cw;
+#if GTK_CHECK_VERSION(3, 0, 0)
+ cx = get_style_context()->get_padding(get_state_flags()).get_left();
+#else
+ cx = get_style()->get_xthickness();
+#endif
+ cw = allocation.get_width() - 2 * cx;
+ signal_grabbed.emit();
+ _dragging = true;
+ _oldvalue = _value;
+ ColorScales::setScaled(_adjustment->gobj(), CLAMP((gfloat)(event->x - cx) / cw, 0.0, 1.0));
+ signal_dragged.emit();
+
+#if GTK_CHECK_VERSION(3, 0, 0)
+ gdk_device_grab(
+ gdk_event_get_device(reinterpret_cast<GdkEvent *>(event)), _gdk_window->gobj(), GDK_OWNERSHIP_NONE, FALSE,
+ static_cast<GdkEventMask>(GDK_POINTER_MOTION_MASK | GDK_BUTTON_RELEASE_MASK), NULL, event->time);
+#else
+ gdk_pointer_grab(get_window()->gobj(), FALSE,
+ static_cast<GdkEventMask>(GDK_POINTER_MOTION_MASK | GDK_BUTTON_RELEASE_MASK), NULL, NULL,
+ event->time);
+#endif
+ }
+
+ return false;
+}
+
+bool ColorSlider::on_button_release_event(GdkEventButton *event)
+{
+ if (event->button == 1) {
+
+#if GTK_CHECK_VERSION(3, 0, 0)
+ gdk_device_ungrab(gdk_event_get_device(reinterpret_cast<GdkEvent *>(event)),
+ gdk_event_get_time(reinterpret_cast<GdkEvent *>(event)));
+#else
+ get_window()->pointer_ungrab(event->time);
+#endif
+
+ _dragging = false;
+ signal_released.emit();
+ if (_value != _oldvalue) {
+ signal_value_changed.emit();
+ }
+ }
+
+ return false;
+}
+
+bool ColorSlider::on_motion_notify_event(GdkEventMotion *event)
+{
+ if (_dragging) {
+ gint cx, cw;
+ Gtk::Allocation allocation = get_allocation();
+#if GTK_CHECK_VERSION(3, 0, 0)
+ cx = get_style_context()->get_padding(get_state_flags()).get_left();
+#else
+ cx = get_style()->get_xthickness();
+#endif
+ cw = allocation.get_width() - 2 * cx;
+ ColorScales::setScaled(_adjustment->gobj(), CLAMP((gfloat)(event->x - cx) / cw, 0.0, 1.0));
+ signal_dragged.emit();
+ }
+
+ return false;
+}
+
+#if GTK_CHECK_VERSION(3, 0, 0)
+void ColorSlider::setAdjustment(Glib::RefPtr<Gtk::Adjustment> adjustment)
+{
+#else
+void ColorSlider::setAdjustment(Gtk::Adjustment *adjustment)
+{
+#endif
+ if (!adjustment) {
+#if GTK_CHECK_VERSION(3, 0, 0)
+ _adjustment = Gtk::Adjustment::create(0.0, 0.0, 1.0, 0.01, 0.0, 0.0);
+#else
+ _adjustment = Gtk::manage(new Gtk::Adjustment(0.0, 0.0, 1.0, 0.01, 0.0, 0.0));
+#endif
+ }
+ else {
+ adjustment->set_page_increment(0.0);
+ adjustment->set_page_size(0.0);
+ }
+
+ if (_adjustment != adjustment) {
+ if (_adjustment) {
+ _adjustment_changed_connection.disconnect();
+ _adjustment_value_changed_connection.disconnect();
+#if !GTK_CHECK_VERSION(3, 0, 0)
+ _adjustment->unreference();
+#endif
+ }
+
+ _adjustment = adjustment;
+ _adjustment_changed_connection =
+ _adjustment->signal_changed().connect(sigc::mem_fun(this, &ColorSlider::_onAdjustmentChanged));
+ _adjustment_value_changed_connection =
+ _adjustment->signal_value_changed().connect(sigc::mem_fun(this, &ColorSlider::_onAdjustmentValueChanged));
+
+ _value = ColorScales::getScaled(_adjustment->gobj());
+
+ _onAdjustmentChanged();
+ }
+}
+
+void ColorSlider::_onAdjustmentChanged() { queue_draw(); }
+
+void ColorSlider::_onAdjustmentValueChanged()
+{
+ if (_value != ColorScales::getScaled(_adjustment->gobj())) {
+ gint cx, cy, cw, ch;
+#if GTK_CHECK_VERSION(3, 0, 0)
+ Glib::RefPtr<Gtk::StyleContext> style_context = get_style_context();
+ Gtk::Allocation allocation = get_allocation();
+ Gtk::Border padding = style_context->get_padding(get_state_flags());
+ cx = padding.get_left();
+ cy = padding.get_top();
+#else
+ Glib::RefPtr<Gtk::Style> style = get_style();
+ Gtk::Allocation allocation = get_allocation();
+ cx = style->get_xthickness();
+ cy = style->get_ythickness();
+#endif
+ cw = allocation.get_width() - 2 * cx;
+ ch = allocation.get_height() - 2 * cy;
+ if ((gint)(ColorScales::getScaled(_adjustment->gobj()) * cw) != (gint)(_value * cw)) {
+ gint ax, ay;
+ gfloat value;
+ value = _value;
+ _value = ColorScales::getScaled(_adjustment->gobj());
+ ax = (int)(cx + value * cw - ARROW_SIZE / 2 - 2);
+ ay = cy;
+ queue_draw_area(ax, ay, ARROW_SIZE + 4, ch);
+ ax = (int)(cx + _value * cw - ARROW_SIZE / 2 - 2);
+ ay = cy;
+ queue_draw_area(ax, ay, ARROW_SIZE + 4, ch);
+ }
+ else {
+ _value = ColorScales::getScaled(_adjustment->gobj());
+ }
+ }
+}
+
+void ColorSlider::setColors(guint32 start, guint32 mid, guint32 end)
+{
+ // Remove any map, if set
+ _map = 0;
+
+ _c0[0] = start >> 24;
+ _c0[1] = (start >> 16) & 0xff;
+ _c0[2] = (start >> 8) & 0xff;
+ _c0[3] = start & 0xff;
+
+ _cm[0] = mid >> 24;
+ _cm[1] = (mid >> 16) & 0xff;
+ _cm[2] = (mid >> 8) & 0xff;
+ _cm[3] = mid & 0xff;
+
+ _c1[0] = end >> 24;
+ _c1[1] = (end >> 16) & 0xff;
+ _c1[2] = (end >> 8) & 0xff;
+ _c1[3] = end & 0xff;
+
+ queue_draw();
+}
+
+void ColorSlider::setMap(const guchar *map)
+{
+ _map = const_cast<guchar *>(map);
+
+ queue_draw();
+}
+
+void ColorSlider::setBackground(guint dark, guint light, guint size)
+{
+ _b0 = dark;
+ _b1 = light;
+ _bmask = size;
+
+ queue_draw();
+}
+
+bool ColorSlider::on_draw(const Cairo::RefPtr<Cairo::Context> &cr)
+{
+ gboolean colorsOnTop = Inkscape::Preferences::get()->getBool("/options/workarounds/colorsontop", false);
+
+ Gtk::Allocation allocation = get_allocation();
+
+#if GTK_CHECK_VERSION(3, 0, 0)
+ Glib::RefPtr<Gtk::StyleContext> style_context = get_style_context();
+#else
+ Glib::RefPtr<Gdk::Window> window = get_window();
+ Glib::RefPtr<Gtk::Style> style = get_style();
+#endif
+
+ // Draw shadow
+ if (colorsOnTop) {
+#if GTK_CHECK_VERSION(3, 0, 0)
+ style_context->render_frame(cr, 0, 0, allocation.get_width(), allocation.get_height());
+#else
+ gtk_paint_shadow(style->gobj(), window->gobj(), gtk_widget_get_state(gobj()), GTK_SHADOW_IN, NULL, gobj(),
+ "colorslider", 0, 0, allocation.get_width(), allocation.get_height());
+#endif
+ }
+
+ /* Paintable part of color gradient area */
+ Gdk::Rectangle carea;
+
+#if GTK_CHECK_VERSION(3, 0, 0)
+ Gtk::Border padding;
+
+ padding = style_context->get_padding(get_state_flags());
+
+ carea.set_x(padding.get_left());
+ carea.set_y(padding.get_top());
+ ;
+#else
+ carea.set_x(style->get_xthickness());
+ carea.set_y(style->get_ythickness());
+#endif
+
+ carea.set_width(allocation.get_width() - 2 * carea.get_x());
+ carea.set_height(allocation.get_height() - 2 * carea.get_y());
+
+ if (_map) {
+ /* Render map pixelstore */
+ gint d = (1024 << 16) / carea.get_width();
+ gint s = 0;
+
+ const guchar *b =
+ sp_color_slider_render_map(0, 0, carea.get_width(), carea.get_height(), _map, s, d, _b0, _b1, _bmask);
+
+ if (b != NULL && carea.get_width() > 0) {
+ Glib::RefPtr<Gdk::Pixbuf> pb = Gdk::Pixbuf::create_from_data(
+ b, Gdk::COLORSPACE_RGB, false, 8, carea.get_width(), carea.get_height(), carea.get_width() * 3);
+
+ Gdk::Cairo::set_source_pixbuf(cr, pb, carea.get_x(), carea.get_y());
+ cr->paint();
+ }
+ }
+ else {
+ gint c[4], dc[4];
+
+ /* Render gradient */
+
+ // part 1: from c0 to cm
+ if (carea.get_width() > 0) {
+ for (gint i = 0; i < 4; i++) {
+ c[i] = _c0[i] << 16;
+ dc[i] = ((_cm[i] << 16) - c[i]) / (carea.get_width() / 2);
+ }
+ guint wi = carea.get_width() / 2;
+ const guchar *b = sp_color_slider_render_gradient(0, 0, wi, carea.get_height(), c, dc, _b0, _b1, _bmask);
+
+ /* Draw pixelstore 1 */
+ if (b != NULL && wi > 0) {
+ Glib::RefPtr<Gdk::Pixbuf> pb =
+ Gdk::Pixbuf::create_from_data(b, Gdk::COLORSPACE_RGB, false, 8, wi, carea.get_height(), wi * 3);
+
+ Gdk::Cairo::set_source_pixbuf(cr, pb, carea.get_x(), carea.get_y());
+ cr->paint();
+ }
+ }
+
+ // part 2: from cm to c1
+ if (carea.get_width() > 0) {
+ for (gint i = 0; i < 4; i++) {
+ c[i] = _cm[i] << 16;
+ dc[i] = ((_c1[i] << 16) - c[i]) / (carea.get_width() / 2);
+ }
+ guint wi = carea.get_width() / 2;
+ const guchar *b = sp_color_slider_render_gradient(carea.get_width() / 2, 0, wi, carea.get_height(), c, dc,
+ _b0, _b1, _bmask);
+
+ /* Draw pixelstore 2 */
+ if (b != NULL && wi > 0) {
+ Glib::RefPtr<Gdk::Pixbuf> pb =
+ Gdk::Pixbuf::create_from_data(b, Gdk::COLORSPACE_RGB, false, 8, wi, carea.get_height(), wi * 3);
+
+ Gdk::Cairo::set_source_pixbuf(cr, pb, carea.get_width() / 2 + carea.get_x(), carea.get_y());
+ cr->paint();
+ }
+ }
+ }
+
+ /* Draw shadow */
+ if (!colorsOnTop) {
+#if GTK_CHECK_VERSION(3, 0, 0)
+ style_context->render_frame(cr, 0, 0, allocation.get_width(), allocation.get_height());
+#else
+ gtk_paint_shadow(style->gobj(), window->gobj(), gtk_widget_get_state(gobj()), GTK_SHADOW_IN, NULL, gobj(),
+ "colorslider", 0, 0, allocation.get_width(), allocation.get_height());
+#endif
+ }
+
+ /* Draw arrow */
+ gint x = (int)(_value * (carea.get_width() - 1) - ARROW_SIZE / 2 + carea.get_x());
+ gint y1 = carea.get_y();
+ gint y2 = carea.get_y() + carea.get_height() - 1;
+ cr->set_line_width(1.0);
+
+ // Define top arrow
+ cr->move_to(x - 0.5, y1 + 0.5);
+ cr->line_to(x + ARROW_SIZE - 0.5, y1 + 0.5);
+ cr->line_to(x + (ARROW_SIZE - 1) / 2.0, y1 + ARROW_SIZE / 2.0 + 0.5);
+ cr->line_to(x - 0.5, y1 + 0.5);
+
+ // Define bottom arrow
+ cr->move_to(x - 0.5, y2 + 0.5);
+ cr->line_to(x + ARROW_SIZE - 0.5, y2 + 0.5);
+ cr->line_to(x + (ARROW_SIZE - 1) / 2.0, y2 - ARROW_SIZE / 2.0 + 0.5);
+ cr->line_to(x - 0.5, y2 + 0.5);
+
+ // Render both arrows
+ cr->set_source_rgb(1.0, 1.0, 1.0);
+ cr->stroke_preserve();
+ cr->set_source_rgb(0.0, 0.0, 0.0);
+ cr->fill();
+
+ return false;
+}
+
+} // namespace Widget
+} // namespace UI
+} // namespace Inkscape
+
+/* Colors are << 16 */
+
+static const guchar *sp_color_slider_render_gradient(gint x0, gint y0, gint width, gint height, gint c[], gint dc[],
+ guint b0, guint b1, guint mask)
+{
+ static guchar *buf = NULL;
+ static gint bs = 0;
+ guchar *dp;
+ gint x, y;
+ guint r, g, b, a;
+
+ if (buf && (bs < width * height)) {
+ g_free(buf);
+ buf = NULL;
+ }
+ if (!buf) {
+ buf = g_new(guchar, width * height * 3);
+ bs = width * height;
+ }
+
+ dp = buf;
+ r = c[0];
+ g = c[1];
+ b = c[2];
+ a = c[3];
+ for (x = x0; x < x0 + width; x++) {
+ gint cr, cg, cb, ca;
+ guchar *d;
+ cr = r >> 16;
+ cg = g >> 16;
+ cb = b >> 16;
+ ca = a >> 16;
+ d = dp;
+ for (y = y0; y < y0 + height; y++) {
+ guint bg, fc;
+ /* Background value */
+ bg = ((x & mask) ^ (y & mask)) ? b0 : b1;
+ fc = (cr - bg) * ca;
+ d[0] = bg + ((fc + (fc >> 8) + 0x80) >> 8);
+ fc = (cg - bg) * ca;
+ d[1] = bg + ((fc + (fc >> 8) + 0x80) >> 8);
+ fc = (cb - bg) * ca;
+ d[2] = bg + ((fc + (fc >> 8) + 0x80) >> 8);
+ d += 3 * width;
+ }
+ r += dc[0];
+ g += dc[1];
+ b += dc[2];
+ a += dc[3];
+ dp += 3;
+ }
+
+ return buf;
+}
+
+/* Positions are << 16 */
+
+static const guchar *sp_color_slider_render_map(gint x0, gint y0, gint width, gint height, guchar *map, gint start,
+ gint step, guint b0, guint b1, guint mask)
+{
+ static guchar *buf = NULL;
+ static gint bs = 0;
+ guchar *dp;
+ gint x, y;
+
+ if (buf && (bs < width * height)) {
+ g_free(buf);
+ buf = NULL;
+ }
+ if (!buf) {
+ buf = g_new(guchar, width * height * 3);
+ bs = width * height;
+ }
+
+ dp = buf;
+ for (x = x0; x < x0 + width; x++) {
+ gint cr, cg, cb, ca;
+ guchar *d = dp;
+ guchar *sp = map + 4 * (start >> 16);
+ cr = *sp++;
+ cg = *sp++;
+ cb = *sp++;
+ ca = *sp++;
+ for (y = y0; y < y0 + height; y++) {
+ guint bg, fc;
+ /* Background value */
+ bg = ((x & mask) ^ (y & mask)) ? b0 : b1;
+ fc = (cr - bg) * ca;
+ d[0] = bg + ((fc + (fc >> 8) + 0x80) >> 8);
+ fc = (cg - bg) * ca;
+ d[1] = bg + ((fc + (fc >> 8) + 0x80) >> 8);
+ fc = (cb - bg) * ca;
+ d[2] = bg + ((fc + (fc >> 8) + 0x80) >> 8);
+ d += 3 * width;
+ }
+ dp += 3;
+ start += step;
+ }
+
+ return buf;
+}
diff --git a/src/ui/widget/color-slider.h b/src/ui/widget/color-slider.h
new file mode 100644
index 000000000..253f3123c
--- /dev/null
+++ b/src/ui/widget/color-slider.h
@@ -0,0 +1,110 @@
+/*
+ * A slider with colored background
+ *
+ * Author:
+ * Lauris Kaplinski <lauris@kaplinski.com>
+ *
+ * Copyright (C) 2001-2002 Lauris Kaplinski
+ *
+ * This code is in public domain
+ */
+
+#ifndef SEEN_COLOR_SLIDER_H
+#define SEEN_COLOR_SLIDER_H
+
+#include <gtkmm/widget.h>
+#include <sigc++/signal.h>
+
+namespace Inkscape {
+namespace UI {
+namespace Widget {
+
+/*
+ * A slider with colored background
+ */
+class ColorSlider : public Gtk::Widget {
+public:
+#if GTK_CHECK_VERSION(3, 0, 0)
+ ColorSlider(Glib::RefPtr<Gtk::Adjustment> adjustment);
+#else
+ ColorSlider(Gtk::Adjustment *adjustment);
+#endif
+ ~ColorSlider();
+
+#if GTK_CHECK_VERSION(3, 0, 0)
+ void setAdjustment(Glib::RefPtr<Gtk::Adjustment> adjustment);
+#else
+ void setAdjustment(Gtk::Adjustment *adjustment);
+#endif
+
+ void setColors(guint32 start, guint32 mid, guint32 end);
+
+ void setMap(const guchar *map);
+
+ void setBackground(guint dark, guint light, guint size);
+
+ sigc::signal<void> signal_grabbed;
+ sigc::signal<void> signal_dragged;
+ sigc::signal<void> signal_released;
+ sigc::signal<void> signal_value_changed;
+
+protected:
+ void on_size_allocate(Gtk::Allocation &allocation);
+ void on_realize();
+ void on_unrealize();
+ bool on_button_press_event(GdkEventButton *event);
+ bool on_button_release_event(GdkEventButton *event);
+ bool on_motion_notify_event(GdkEventMotion *event);
+ bool on_draw(const Cairo::RefPtr<Cairo::Context> &cr);
+
+#if GTK_CHECK_VERSION(3, 0, 0)
+ void get_preferred_width_vfunc(int &minimum_width, int &natural_width) const;
+ void get_preferred_width_for_height_vfunc(int height, int &minimum_width, int &natural_width) const;
+ void get_preferred_height_vfunc(int &minimum_height, int &natural_height) const;
+ void get_preferred_height_for_width_vfunc(int width, int &minimum_height, int &natural_height) const;
+#else
+ void on_size_request(Gtk::Requisition *requisition);
+ bool on_expose_event(GdkEventExpose *event);
+#endif
+
+private:
+ void _onAdjustmentChanged();
+ void _onAdjustmentValueChanged();
+
+ bool _dragging;
+
+#if GTK_CHECK_VERSION(3, 0, 0)
+ Glib::RefPtr<Gtk::Adjustment> _adjustment;
+#else
+ Gtk::Adjustment *_adjustment;
+#endif
+ sigc::connection _adjustment_changed_connection;
+ sigc::connection _adjustment_value_changed_connection;
+
+ gfloat _value;
+ gfloat _oldvalue;
+ guchar _c0[4], _cm[4], _c1[4];
+ guchar _b0, _b1;
+ guchar _bmask;
+
+ gint _mapsize;
+ guchar *_map;
+
+ Glib::RefPtr<Gdk::Window> _gdk_window;
+};
+
+} // namespace Widget
+} // namespace UI
+} // namespace Inkscape
+
+#endif
+/*
+ Local Variables:
+ mode:c++
+ c-file-style:"stroustrup"
+ c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))
+ indent-tabs-mode:nil
+ fill-column:99
+ End:
+*/
+// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:fileencoding=utf-8:textwidth=99 :
diff --git a/src/ui/widget/color-wheel-selector.cpp b/src/ui/widget/color-wheel-selector.cpp
new file mode 100644
index 000000000..ed3400bb5
--- /dev/null
+++ b/src/ui/widget/color-wheel-selector.cpp
@@ -0,0 +1,302 @@
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#include "color-wheel-selector.h"
+
+#include <math.h>
+#include <gtk/gtk.h>
+#include <glibmm/i18n.h>
+#include <gtkmm/adjustment.h>
+#include <gtkmm/label.h>
+#include <gtkmm/spinbutton.h>
+#include "svg/svg-icc-color.h"
+#include "ui/dialog-events.h"
+#include "ui/selected-color.h"
+#include "ui/widget/color-scales.h"
+#include "ui/widget/color-slider.h"
+#include "ui/widget/gimpcolorwheel.h"
+
+namespace Inkscape {
+namespace UI {
+namespace Widget {
+
+
+#define XPAD 4
+#define YPAD 1
+
+
+const gchar *ColorWheelSelector::MODE_NAME = N_("Wheel");
+
+ColorWheelSelector::ColorWheelSelector(SelectedColor &color)
+#if GTK_CHECK_VERSION(3, 0, 0)
+ : Gtk::Grid()
+#else
+ : Gtk::Table(5, 3, false)
+#endif
+ , _color(color)
+ , _updating(false)
+#if !GTK_CHECK_VERSION(3, 0, 0)
+ , _alpha_adjustment(NULL)
+#endif
+ , _wheel(0)
+ , _slider(0)
+{
+ _initUI();
+ _color_changed_connection = color.signal_changed.connect(sigc::mem_fun(this, &ColorWheelSelector::_colorChanged));
+ _color_dragged_connection = color.signal_dragged.connect(sigc::mem_fun(this, &ColorWheelSelector::_colorChanged));
+}
+
+ColorWheelSelector::~ColorWheelSelector()
+{
+ _wheel = 0;
+#if !GTK_CHECK_VERSION(3, 0, 0)
+ delete _alpha_adjustment;
+#endif
+
+ _color_changed_connection.disconnect();
+ _color_dragged_connection.disconnect();
+}
+
+void ColorWheelSelector::_initUI()
+{
+ /* Create components */
+ gint row = 0;
+
+ _wheel = gimp_color_wheel_new();
+ gtk_widget_show(_wheel);
+
+#if GTK_CHECK_VERSION(3, 0, 0)
+ gtk_widget_set_halign(_wheel, GTK_ALIGN_FILL);
+ gtk_widget_set_valign(_wheel, GTK_ALIGN_FILL);
+ gtk_widget_set_hexpand(_wheel, TRUE);
+ gtk_widget_set_vexpand(_wheel, TRUE);
+ gtk_grid_attach(GTK_GRID(gobj()), _wheel, 0, row, 3, 1);
+#else
+ gtk_table_attach(GTK_TABLE(gobj()), _wheel, 0, 3, row, row + 1, (GtkAttachOptions)(GTK_EXPAND | GTK_FILL),
+ (GtkAttachOptions)(GTK_EXPAND | GTK_FILL), 0, 0);
+#endif
+
+ row++;
+
+ /* Label */
+ Gtk::Label *label = Gtk::manage(new Gtk::Label(_("_A:"), true));
+ label->set_alignment(1.0, 0.5);
+ label->show();
+
+#if GTK_CHECK_VERSION(3, 0, 0)
+ #if GTK_CHECK_VERSION(3, 12, 0)
+ label->set_margin_start(XPAD);
+ label->set_margin_end(XPAD);
+ #else
+ label->set_margin_left(XPAD);
+ label->set_margin_right(XPAD);
+ #endif
+ label->set_margin_top(YPAD);
+ label->set_margin_bottom(YPAD);
+ label->set_halign(Gtk::ALIGN_FILL);
+ label->set_valign(Gtk::ALIGN_FILL);
+ attach(*label, 0, row, 1, 1);
+#else
+ attach(*label, 0, 1, row, row + 1, Gtk::FILL, Gtk::FILL, XPAD, YPAD);
+#endif
+
+/* Adjustment */
+#if GTK_CHECK_VERSION(3, 0, 0)
+ _alpha_adjustment = Gtk::Adjustment::create(0.0, 0.0, 255.0, 1.0, 10.0, 10.0);
+#else
+ _alpha_adjustment = new Gtk::Adjustment(0.0, 0.0, 255.0, 1.0, 10.0, 10.0);
+#endif
+ /* Slider */
+ _slider = Gtk::manage(new Inkscape::UI::Widget::ColorSlider(_alpha_adjustment));
+ _slider->set_tooltip_text(_("Alpha (opacity)"));
+ _slider->show();
+
+#if GTK_CHECK_VERSION(3, 0, 0)
+ #if GTK_CHECK_VERSION(3, 12, 0)
+ _slider->set_margin_start(XPAD);
+ _slider->set_margin_end(XPAD);
+ #else
+ _slider->set_margin_left(XPAD);
+ _slider->set_margin_right(XPAD);
+ #endif
+ _slider->set_margin_top(YPAD);
+ _slider->set_margin_bottom(YPAD);
+ _slider->set_hexpand(true);
+ _slider->set_halign(Gtk::ALIGN_FILL);
+ _slider->set_valign(Gtk::ALIGN_FILL);
+ attach(*_slider, 1, row, 1, 1);
+#else
+ attach(*_slider, 1, 2, row, row + 1, Gtk::EXPAND | Gtk::FILL, Gtk::FILL, XPAD, YPAD);
+#endif
+
+ _slider->setColors(SP_RGBA32_F_COMPOSE(1.0, 1.0, 1.0, 0.0), SP_RGBA32_F_COMPOSE(1.0, 1.0, 1.0, 0.5),
+ SP_RGBA32_F_COMPOSE(1.0, 1.0, 1.0, 1.0));
+
+/* Spinbutton */
+#if GTK_CHECK_VERSION(3, 0, 0)
+ Gtk::SpinButton *spin_button = Gtk::manage(new Gtk::SpinButton(_alpha_adjustment, 1.0, 0));
+#else
+ Gtk::SpinButton *spin_button = Gtk::manage(new Gtk::SpinButton(*_alpha_adjustment, 1.0, 0));
+#endif
+ spin_button->set_tooltip_text(_("Alpha (opacity)"));
+ sp_dialog_defocus_on_enter(GTK_WIDGET(spin_button->gobj()));
+ label->set_mnemonic_widget(*spin_button);
+ spin_button->show();
+
+#if GTK_CHECK_VERSION(3, 0, 0)
+ #if GTK_CHECK_VERSION(3, 12, 0)
+ spin_button->set_margin_start(XPAD);
+ spin_button->set_margin_end(XPAD);
+ #else
+ spin_button->set_margin_left(XPAD);
+ spin_button->set_margin_right(XPAD);
+ #endif
+ spin_button->set_margin_top(YPAD);
+ spin_button->set_margin_bottom(YPAD);
+ spin_button->set_halign(Gtk::ALIGN_CENTER);
+ spin_button->set_valign(Gtk::ALIGN_CENTER);
+ attach(*spin_button, 2, row, 1, 1);
+#else
+ attach(*spin_button, 2, 3, row, row + 1, (Gtk::AttachOptions)0, (Gtk::AttachOptions)0, XPAD, YPAD);
+#endif
+
+ /* Signals */
+ _alpha_adjustment->signal_value_changed().connect(sigc::mem_fun(this, &ColorWheelSelector::_adjustmentChanged));
+ _slider->signal_grabbed.connect(sigc::mem_fun(*this, &ColorWheelSelector::_sliderGrabbed));
+ _slider->signal_released.connect(sigc::mem_fun(*this, &ColorWheelSelector::_sliderReleased));
+ _slider->signal_value_changed.connect(sigc::mem_fun(*this, &ColorWheelSelector::_sliderChanged));
+
+ g_signal_connect(G_OBJECT(_wheel), "changed", G_CALLBACK(_wheelChanged), this);
+}
+
+void ColorWheelSelector::on_show()
+{
+#if GTK_CHECK_VERSION(3, 0, 0)
+ Gtk::Grid::on_show();
+#else
+ Gtk::Table::on_show();
+#endif
+ _updateDisplay();
+}
+
+void ColorWheelSelector::_colorChanged()
+{
+ _updateDisplay();
+}
+
+void ColorWheelSelector::_adjustmentChanged()
+{
+ if (_updating) {
+ return;
+ }
+
+ // TODO check this. It looks questionable:
+ // if a value is entered between 0 and 1 exclusive, normalize it to (int) 0..255 or 0..100
+ gdouble value = _alpha_adjustment->get_value();
+ gdouble upper = _alpha_adjustment->get_upper();
+ if (value > 0.0 && value < 1.0) {
+ _alpha_adjustment->set_value(floor(value * upper + 0.5));
+ }
+
+ _color.preserveICC();
+ _color.setAlpha(ColorScales::getScaled(_alpha_adjustment->gobj()));
+}
+
+void ColorWheelSelector::_sliderGrabbed()
+{
+ _color.preserveICC();
+ _color.setHeld(true);
+}
+
+void ColorWheelSelector::_sliderReleased()
+{
+ _color.preserveICC();
+ _color.setHeld(false);
+}
+
+void ColorWheelSelector::_sliderChanged()
+{
+ if (_updating) {
+ return;
+ }
+
+ _color.preserveICC();
+ _color.setAlpha(ColorScales::getScaled(_alpha_adjustment->gobj()));
+}
+
+void ColorWheelSelector::_wheelChanged(GimpColorWheel *wheel, ColorWheelSelector *wheelSelector)
+{
+ if (wheelSelector->_updating) {
+ return;
+ }
+
+ gdouble h = 0;
+ gdouble s = 0;
+ gdouble v = 0;
+ gimp_color_wheel_get_color(wheel, &h, &s, &v);
+
+ float rgb[3] = { 0, 0, 0 };
+ sp_color_hsv_to_rgb_floatv(rgb, h, s, v);
+
+ SPColor color(rgb[0], rgb[1], rgb[2]);
+
+ guint32 start = color.toRGBA32(0x00);
+ guint32 mid = color.toRGBA32(0x7f);
+ guint32 end = color.toRGBA32(0xff);
+
+ wheelSelector->_slider->setColors(start, mid, end);
+
+ wheelSelector->_color.preserveICC();
+
+ wheelSelector->_color.setHeld(gimp_color_wheel_is_adjusting(wheel));
+ wheelSelector->_color.setColor(color);
+}
+
+void ColorWheelSelector::_updateDisplay()
+{
+#ifdef DUMP_CHANGE_INFO
+ g_message("ColorWheelSelector::_colorChanged( this=%p, %f, %f, %f, %f)", this, _color.color().v.c[0],
+ _color.color().v.c[1], _color.color().v.c[2], alpha);
+#endif
+
+ bool oldval = _updating;
+ _updating = true;
+ {
+ float hsv[3] = { 0, 0, 0 };
+ sp_color_rgb_to_hsv_floatv(hsv, _color.color().v.c[0], _color.color().v.c[1], _color.color().v.c[2]);
+ gimp_color_wheel_set_color(GIMP_COLOR_WHEEL(_wheel), hsv[0], hsv[1], hsv[2]);
+ }
+
+ guint32 start = _color.color().toRGBA32(0x00);
+ guint32 mid = _color.color().toRGBA32(0x7f);
+ guint32 end = _color.color().toRGBA32(0xff);
+
+ _slider->setColors(start, mid, end);
+
+ ColorScales::setScaled(_alpha_adjustment->gobj(), _color.alpha());
+
+ _updating = oldval;
+}
+
+
+Gtk::Widget *ColorWheelSelectorFactory::createWidget(Inkscape::UI::SelectedColor &color) const
+{
+ Gtk::Widget *w = Gtk::manage(new ColorWheelSelector(color));
+ return w;
+}
+
+Glib::ustring ColorWheelSelectorFactory::modeName() const { return gettext(ColorWheelSelector::MODE_NAME); }
+}
+}
+}
+/*
+ Local Variables:
+ mode:c++
+ c-file-style:"stroustrup"
+ c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))
+ indent-tabs-mode:nil
+ fill-column:99
+ End:
+*/
+// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:fileencoding=utf-8:textwidth=99 :
diff --git a/src/ui/widget/color-wheel-selector.h b/src/ui/widget/color-wheel-selector.h
new file mode 100644
index 000000000..5711d417c
--- /dev/null
+++ b/src/ui/widget/color-wheel-selector.h
@@ -0,0 +1,101 @@
+/**
+ * @file
+ * Color selector widget containing GIMP color wheel and slider
+ */
+/* Authors:
+ * Tomasz Boczkowski <penginsbacon@gmail.com> (c++-sification)
+ *
+ * Copyright (C) 2014 Authors
+ *
+ * This code is in public domain
+ */
+#ifndef SEEN_SP_COLOR_WHEEL_SELECTOR_H
+#define SEEN_SP_COLOR_WHEEL_SELECTOR_H
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#if WITH_GTKMM_3_0
+#include <gtkmm/grid.h>
+#else
+#include <gtkmm/table.h>
+#endif
+
+#include "ui/selected-color.h"
+
+typedef struct _GimpColorWheel GimpColorWheel;
+
+namespace Inkscape {
+namespace UI {
+namespace Widget {
+
+class ColorSlider;
+
+class ColorWheelSelector
+#if GTK_CHECK_VERSION(3, 0, 0)
+ : public Gtk::Grid
+#else
+ : public Gtk::Table
+#endif
+{
+public:
+ static const gchar *MODE_NAME;
+
+ ColorWheelSelector(SelectedColor &color);
+ virtual ~ColorWheelSelector();
+
+protected:
+ void _initUI();
+
+ void on_show();
+
+ void _colorChanged();
+ void _adjustmentChanged();
+ void _sliderGrabbed();
+ void _sliderReleased();
+ void _sliderChanged();
+ static void _wheelChanged(GimpColorWheel *wheel, ColorWheelSelector *cs);
+
+ void _updateDisplay();
+
+ SelectedColor &_color;
+ bool _updating;
+#if GTK_CHECK_VERSION(3, 0, 0)
+ Glib::RefPtr<Gtk::Adjustment> _alpha_adjustment;
+#else
+ Gtk::Adjustment *_alpha_adjustment;
+#endif
+ GtkWidget *_wheel;
+ Inkscape::UI::Widget::ColorSlider *_slider;
+
+private:
+ // By default, disallow copy constructor and assignment operator
+ ColorWheelSelector(const ColorWheelSelector &obj);
+ ColorWheelSelector &operator=(const ColorWheelSelector &obj);
+
+ sigc::connection _color_changed_connection;
+ sigc::connection _color_dragged_connection;
+};
+
+class ColorWheelSelectorFactory : public ColorSelectorFactory {
+public:
+ Gtk::Widget *createWidget(SelectedColor &color) const;
+ Glib::ustring modeName() const;
+};
+}
+}
+}
+
+#endif // SEEN_SP_COLOR_WHEEL_SELECTOR_H
+
+/*
+ Local Variables:
+ mode:c++
+ c-file-style:"stroustrup"
+ c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))
+ indent-tabs-mode:nil
+ fill-column:99
+ End:
+*/
+// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:fileencoding=utf-8:textwidth=99 :
diff --git a/src/ui/widget/font-variants.cpp b/src/ui/widget/font-variants.cpp
new file mode 100644
index 000000000..637631fda
--- /dev/null
+++ b/src/ui/widget/font-variants.cpp
@@ -0,0 +1,512 @@
+/*
+ * Author:
+ * Tavmjong Bah <tavmjong@free.fr>
+ *
+ * Copyright (C) 2015 Tavmong Bah
+ *
+ * Released under GNU GPL. Read the file 'COPYING' for more information.
+ */
+
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
+#include <gtkmm.h>
+#include <glibmm/i18n.h>
+
+#include <iostream>
+
+#include "font-variants.h"
+
+// For updating from selection
+#include "desktop.h"
+#include "selection.h"
+#include "style.h"
+#include "sp-text.h"
+#include "sp-tspan.h"
+#include "sp-tref.h"
+#include "sp-textpath.h"
+#include "sp-item-group.h"
+#include "xml/repr.h"
+
+namespace Inkscape {
+namespace UI {
+namespace Widget {
+
+ FontVariants::FontVariants () :
+ Gtk::VBox (),
+ _ligatures_frame ( Glib::ustring(_("Ligatures" )) ),
+ _ligatures_common ( Glib::ustring(_("Common" )) ),
+ _ligatures_discretionary ( Glib::ustring(_("Discretionary")) ),
+ _ligatures_historical ( Glib::ustring(_("Historical" )) ),
+ _ligatures_contextual ( Glib::ustring(_("Contextual" )) ),
+
+ _position_frame ( Glib::ustring(_("Position" )) ),
+ _position_normal ( Glib::ustring(_("Normal" )) ),
+ _position_sub ( Glib::ustring(_("Subscript" )) ),
+ _position_super ( Glib::ustring(_("Superscript" )) ),
+
+ _caps_frame ( Glib::ustring(_("Capitals" )) ),
+ _caps_normal ( Glib::ustring(_("Normal" )) ),
+ _caps_small ( Glib::ustring(_("Small" )) ),
+ _caps_all_small ( Glib::ustring(_("All small" )) ),
+ _caps_petite ( Glib::ustring(_("Petite" )) ),
+ _caps_all_petite ( Glib::ustring(_("All petite" )) ),
+ _caps_unicase ( Glib::ustring(_("Unicase" )) ),
+ _caps_titling ( Glib::ustring(_("Titling" )) ),
+
+ _numeric_frame ( Glib::ustring(_("Numeric" )) ),
+ _numeric_lining ( Glib::ustring(_("Lining" )) ),
+ _numeric_old_style ( Glib::ustring(_("Old Style" )) ),
+ _numeric_default_style ( Glib::ustring(_("Default Style")) ),
+ _numeric_proportional ( Glib::ustring(_("Proportional" )) ),
+ _numeric_tabular ( Glib::ustring(_("Tabular" )) ),
+ _numeric_default_width ( Glib::ustring(_("Default Width")) ),
+ _numeric_diagonal ( Glib::ustring(_("Diagonal" )) ),
+ _numeric_stacked ( Glib::ustring(_("Stacked" )) ),
+ _numeric_default_fractions( Glib::ustring(_("Default Fractions")) ),
+ _numeric_ordinal ( Glib::ustring(_("Ordinal" )) ),
+ _numeric_slashed_zero ( Glib::ustring(_("Slashed Zero" )) ),
+
+ _ligatures_changed( false ),
+ _position_changed( false ),
+ _caps_changed( false ),
+ _numeric_changed( false )
+
+ {
+
+ // Ligatures --------------------------
+
+ // Add tooltips
+ _ligatures_common.set_tooltip_text(
+ _("Common ligatures. On by default. OpenType tables: 'liga', 'clig'"));
+ _ligatures_discretionary.set_tooltip_text(
+ _("Discretionary ligatures. Off by default. OpenType table: 'dlig'"));
+ _ligatures_historical.set_tooltip_text(
+ _("Historical ligatures. Off by default. OpenType table: 'hlig'"));
+ _ligatures_contextual.set_tooltip_text(
+ _("Contextual forms. On by default. OpenType table: 'calt'"));
+
+ // Add signals
+ _ligatures_common.signal_clicked().connect ( sigc::mem_fun(*this, &FontVariants::ligatures_callback) );
+ _ligatures_discretionary.signal_clicked().connect ( sigc::mem_fun(*this, &FontVariants::ligatures_callback) );
+ _ligatures_historical.signal_clicked().connect ( sigc::mem_fun(*this, &FontVariants::ligatures_callback) );
+ _ligatures_contextual.signal_clicked().connect ( sigc::mem_fun(*this, &FontVariants::ligatures_callback) );
+
+ // Add to frame
+ _ligatures_vbox.add( _ligatures_common );
+ _ligatures_vbox.add( _ligatures_discretionary );
+ _ligatures_vbox.add( _ligatures_historical );
+ _ligatures_vbox.add( _ligatures_contextual );
+ _ligatures_frame.add( _ligatures_vbox );
+ add( _ligatures_frame );
+
+ ligatures_init();
+
+ // Position ----------------------------------
+
+ // Add tooltips
+ _position_normal.set_tooltip_text( _("Normal position."));
+ _position_sub.set_tooltip_text( _("Subscript. OpenType table: 'subs'") );
+ _position_super.set_tooltip_text( _("Superscript. OpenType table: 'sups'") );
+
+ // Group buttons
+ Gtk::RadioButton::Group position_group = _position_normal.get_group();
+ _position_sub.set_group(position_group);
+ _position_super.set_group(position_group);
+
+ // Add signals
+ _position_normal.signal_pressed().connect ( sigc::mem_fun(*this, &FontVariants::position_callback) );
+ _position_sub.signal_pressed().connect ( sigc::mem_fun(*this, &FontVariants::position_callback) );
+ _position_super.signal_pressed().connect ( sigc::mem_fun(*this, &FontVariants::position_callback) );
+
+ // Add to frame
+ _position_vbox.add( _position_normal );
+ _position_vbox.add( _position_sub );
+ _position_vbox.add( _position_super );
+ _position_frame.add( _position_vbox );
+ add( _position_frame );
+
+ position_init();
+
+ // Caps ----------------------------------
+
+ // Add tooltips
+ _caps_normal.set_tooltip_text( _("Normal capitalization."));
+ _caps_small.set_tooltip_text( _("Small-caps (lowercase). OpenType table: 'smcp'"));
+ _caps_all_small.set_tooltip_text( _("All small-caps (uppercase and lowercase). OpenType tables: 'c2sc' and 'smcp'"));
+ _caps_petite.set_tooltip_text( _("Petite-caps (lowercase). OpenType table: 'pcap'"));
+ _caps_all_petite.set_tooltip_text( _("All petite-caps (uppercase and lowercase). OpenType tables: 'c2sc' and 'pcap'"));
+ _caps_unicase.set_tooltip_text( _("Unicase (small caps for uppercase, normal for lowercase). OpenType table: 'unic'"));
+ _caps_titling.set_tooltip_text( _("Titling caps (lighter-weight uppercase for use in titles). OpenType table: 'titl'"));
+
+ // Group buttons
+ Gtk::RadioButton::Group caps_group = _caps_normal.get_group();
+ _caps_small.set_group(caps_group);
+ _caps_all_small.set_group(caps_group);
+ _caps_petite.set_group(caps_group);
+ _caps_all_petite.set_group(caps_group);
+ _caps_unicase.set_group(caps_group);
+ _caps_titling.set_group(caps_group);
+
+ // Add signals
+ _caps_normal.signal_clicked().connect ( sigc::mem_fun(*this, &FontVariants::caps_callback) );
+ _caps_small.signal_clicked().connect ( sigc::mem_fun(*this, &FontVariants::caps_callback) );
+ _caps_all_small.signal_clicked().connect ( sigc::mem_fun(*this, &FontVariants::caps_callback) );
+ _caps_petite.signal_clicked().connect ( sigc::mem_fun(*this, &FontVariants::caps_callback) );
+ _caps_all_petite.signal_clicked().connect ( sigc::mem_fun(*this, &FontVariants::caps_callback) );
+ _caps_unicase.signal_clicked().connect ( sigc::mem_fun(*this, &FontVariants::caps_callback) );
+ _caps_titling.signal_clicked().connect ( sigc::mem_fun(*this, &FontVariants::caps_callback) );
+
+ // Add to frame
+ _caps_vbox.add( _caps_normal );
+ _caps_vbox.add( _caps_small );
+ _caps_vbox.add( _caps_all_small );
+ _caps_vbox.add( _caps_petite );
+ _caps_vbox.add( _caps_all_petite );
+ _caps_vbox.add( _caps_unicase );
+ _caps_vbox.add( _caps_titling );
+ _caps_frame.add( _caps_vbox );
+ add( _caps_frame );
+
+ caps_init();
+
+ // Numeric ------------------------------
+
+ // Add tooltips
+ _numeric_default_style.set_tooltip_text( _("Normal style."));
+ _numeric_lining.set_tooltip_text( _("Lining numerals. OpenType table: 'lnum'"));
+ _numeric_old_style.set_tooltip_text( _("Old style numerals. OpenType table: 'onum'"));
+ _numeric_default_width.set_tooltip_text( _("Normal widths."));
+ _numeric_proportional.set_tooltip_text( _("Proportional width numerals. OpenType table: 'pnum'"));
+ _numeric_tabular.set_tooltip_text( _("Same width numerals. OpenType table: 'tnum'"));
+ _numeric_default_fractions.set_tooltip_text( _("Normal fractions."));
+ _numeric_diagonal.set_tooltip_text( _("Diagonal fractions. OpenType table: 'frac'"));
+ _numeric_stacked.set_tooltip_text( _("Stacked fractions. OpenType table: 'afrc'"));
+ _numeric_ordinal.set_tooltip_text( _("Ordinals (raised 'th', etc.). OpenType table: 'ordn'"));
+ _numeric_slashed_zero.set_tooltip_text( _("Slashed zeros. OpenType table: 'zero'"));
+
+ // Group buttons
+ Gtk::RadioButton::Group style_group = _numeric_default_style.get_group();
+ _numeric_lining.set_group(style_group);
+ _numeric_old_style.set_group(style_group);
+
+ Gtk::RadioButton::Group width_group = _numeric_default_width.get_group();
+ _numeric_proportional.set_group(width_group);
+ _numeric_tabular.set_group(width_group);
+
+ Gtk::RadioButton::Group fraction_group = _numeric_default_fractions.get_group();
+ _numeric_diagonal.set_group(fraction_group);
+ _numeric_stacked.set_group(fraction_group);
+
+ // Add signals
+ _numeric_default_style.signal_clicked().connect ( sigc::mem_fun(*this, &FontVariants::numeric_callback) );
+ _numeric_lining.signal_clicked().connect ( sigc::mem_fun(*this, &FontVariants::numeric_callback) );
+ _numeric_old_style.signal_clicked().connect ( sigc::mem_fun(*this, &FontVariants::numeric_callback) );
+ _numeric_default_width.signal_clicked().connect ( sigc::mem_fun(*this, &FontVariants::numeric_callback) );
+ _numeric_proportional.signal_clicked().connect ( sigc::mem_fun(*this, &FontVariants::numeric_callback) );
+ _numeric_tabular.signal_clicked().connect ( sigc::mem_fun(*this, &FontVariants::numeric_callback) );
+ _numeric_default_fractions.signal_clicked().connect ( sigc::mem_fun(*this, &FontVariants::numeric_callback) );
+ _numeric_diagonal.signal_clicked().connect ( sigc::mem_fun(*this, &FontVariants::numeric_callback) );
+ _numeric_stacked.signal_clicked().connect ( sigc::mem_fun(*this, &FontVariants::numeric_callback) );
+ _numeric_ordinal.signal_clicked().connect ( sigc::mem_fun(*this, &FontVariants::numeric_callback) );
+ _numeric_slashed_zero.signal_clicked().connect ( sigc::mem_fun(*this, &FontVariants::numeric_callback) );
+
+ // Add to frame
+ _numeric_stylebox.add( _numeric_default_style );
+ _numeric_stylebox.add( _numeric_lining );
+ _numeric_stylebox.add( _numeric_old_style );
+ _numeric_vbox.add( _numeric_stylebox );
+ _numeric_widthbox.add( _numeric_default_width );
+ _numeric_widthbox.add( _numeric_proportional );
+ _numeric_widthbox.add( _numeric_tabular );
+ _numeric_vbox.add( _numeric_widthbox );
+ _numeric_fractionbox.add( _numeric_default_fractions );
+ _numeric_fractionbox.add( _numeric_diagonal );
+ _numeric_fractionbox.add( _numeric_stacked );
+ _numeric_vbox.add( _numeric_fractionbox );
+ _numeric_vbox.add( _numeric_ordinal );
+ _numeric_vbox.add( _numeric_slashed_zero );
+ _numeric_frame.add( _numeric_vbox );
+ add( _numeric_frame );
+
+
+ show_all_children();
+
+ }
+
+ void
+ FontVariants::ligatures_init() {
+ // std::cout << "FontVariants::ligatures_init()" << std::endl;
+ }
+
+ void
+ FontVariants::ligatures_callback() {
+ // std::cout << "FontVariants::ligatures_callback()" << std::endl;
+ _ligatures_changed = true;
+ _changed_signal.emit();
+ }
+
+ void
+ FontVariants::position_init() {
+ // std::cout << "FontVariants::position_init()" << std::endl;
+ }
+
+ void
+ FontVariants::position_callback() {
+ // std::cout << "FontVariants::position_callback()" << std::endl;
+ _position_changed = true;
+ _changed_signal.emit();
+ }
+
+ void
+ FontVariants::caps_init() {
+ // std::cout << "FontVariants::caps_init()" << std::endl;
+ }
+
+ void
+ FontVariants::caps_callback() {
+ // std::cout << "FontVariants::caps_callback()" << std::endl;
+ _caps_changed = true;
+ _changed_signal.emit();
+ }
+
+ void
+ FontVariants::numeric_init() {
+ // std::cout << "FontVariants::numeric_init()" << std::endl;
+ }
+
+ void
+ FontVariants::numeric_callback() {
+ // std::cout << "FontVariants::numeric_callback()" << std::endl;
+ _numeric_changed = true;
+ _changed_signal.emit();
+ }
+
+ // Update GUI based on query.
+ void
+ FontVariants::update( SPStyle const *query ) {
+
+ _ligatures_all = query->font_variant_ligatures.computed;
+ _ligatures_mix = query->font_variant_ligatures.value;
+
+ _ligatures_common.set_active( _ligatures_all & SP_CSS_FONT_VARIANT_LIGATURES_COMMON );
+ _ligatures_discretionary.set_active(_ligatures_all & SP_CSS_FONT_VARIANT_LIGATURES_DISCRETIONARY );
+ _ligatures_historical.set_active( _ligatures_all & SP_CSS_FONT_VARIANT_LIGATURES_HISTORICAL );
+ _ligatures_contextual.set_active( _ligatures_all & SP_CSS_FONT_VARIANT_LIGATURES_CONTEXTUAL );
+
+ _ligatures_common.set_inconsistent( _ligatures_mix & SP_CSS_FONT_VARIANT_LIGATURES_COMMON );
+ _ligatures_discretionary.set_inconsistent( _ligatures_mix & SP_CSS_FONT_VARIANT_LIGATURES_DISCRETIONARY );
+ _ligatures_historical.set_inconsistent( _ligatures_mix & SP_CSS_FONT_VARIANT_LIGATURES_HISTORICAL );
+ _ligatures_contextual.set_inconsistent( _ligatures_mix & SP_CSS_FONT_VARIANT_LIGATURES_CONTEXTUAL );
+
+ _position_all = query->font_variant_position.computed;
+ _position_mix = query->font_variant_position.value;
+
+ _position_normal.set_active( _position_all & SP_CSS_FONT_VARIANT_POSITION_NORMAL );
+ _position_sub.set_active( _position_all & SP_CSS_FONT_VARIANT_POSITION_SUB );
+ _position_super.set_active( _position_all & SP_CSS_FONT_VARIANT_POSITION_SUPER );
+
+ _position_normal.set_inconsistent( _position_mix & SP_CSS_FONT_VARIANT_POSITION_NORMAL );
+ _position_sub.set_inconsistent( _position_mix & SP_CSS_FONT_VARIANT_POSITION_SUB );
+ _position_super.set_inconsistent( _position_mix & SP_CSS_FONT_VARIANT_POSITION_SUPER );
+
+ _caps_all = query->font_variant_caps.computed;
+ _caps_mix = query->font_variant_caps.value;
+
+ _caps_normal.set_active( _caps_all & SP_CSS_FONT_VARIANT_CAPS_NORMAL );
+ _caps_small.set_active( _caps_all & SP_CSS_FONT_VARIANT_CAPS_SMALL );
+ _caps_all_small.set_active( _caps_all & SP_CSS_FONT_VARIANT_CAPS_ALL_SMALL );
+ _caps_petite.set_active( _caps_all & SP_CSS_FONT_VARIANT_CAPS_PETITE );
+ _caps_all_petite.set_active( _caps_all & SP_CSS_FONT_VARIANT_CAPS_ALL_PETITE );
+ _caps_unicase.set_active( _caps_all & SP_CSS_FONT_VARIANT_CAPS_UNICASE );
+ _caps_titling.set_active( _caps_all & SP_CSS_FONT_VARIANT_CAPS_TITLING );
+
+ _caps_normal.set_inconsistent( _caps_mix & SP_CSS_FONT_VARIANT_CAPS_NORMAL );
+ _caps_small.set_inconsistent( _caps_mix & SP_CSS_FONT_VARIANT_CAPS_SMALL );
+ _caps_all_small.set_inconsistent( _caps_mix & SP_CSS_FONT_VARIANT_CAPS_ALL_SMALL );
+ _caps_petite.set_inconsistent( _caps_mix & SP_CSS_FONT_VARIANT_CAPS_PETITE );
+ _caps_all_petite.set_inconsistent( _caps_mix & SP_CSS_FONT_VARIANT_CAPS_ALL_PETITE );
+ _caps_unicase.set_inconsistent( _caps_mix & SP_CSS_FONT_VARIANT_CAPS_UNICASE );
+ _caps_titling.set_inconsistent( _caps_mix & SP_CSS_FONT_VARIANT_CAPS_TITLING );
+
+ _numeric_all = query->font_variant_numeric.computed;
+ _numeric_mix = query->font_variant_numeric.value;
+
+ if (_numeric_all & SP_CSS_FONT_VARIANT_NUMERIC_LINING_NUMS) {
+ _numeric_lining.set_active();
+ } else if (_numeric_all & SP_CSS_FONT_VARIANT_NUMERIC_OLDSTYLE_NUMS) {
+ _numeric_old_style.set_active();
+ } else {
+ _numeric_default_style.set_active();
+ }
+
+ if (_numeric_all & SP_CSS_FONT_VARIANT_NUMERIC_PROPORTIONAL_NUMS) {
+ _numeric_proportional.set_active();
+ } else if (_numeric_all & SP_CSS_FONT_VARIANT_NUMERIC_TABULAR_NUMS) {
+ _numeric_tabular.set_active();
+ } else {
+ _numeric_default_width.set_active();
+ }
+
+ if (_numeric_all & SP_CSS_FONT_VARIANT_NUMERIC_DIAGONAL_FRACTIONS) {
+ _numeric_diagonal.set_active();
+ } else if (_numeric_all & SP_CSS_FONT_VARIANT_NUMERIC_STACKED_FRACTIONS) {
+ _numeric_stacked.set_active();
+ } else {
+ _numeric_default_fractions.set_active();
+ }
+
+ _numeric_ordinal.set_active( _numeric_all & SP_CSS_FONT_VARIANT_NUMERIC_ORDINAL );
+ _numeric_slashed_zero.set_active( _numeric_all & SP_CSS_FONT_VARIANT_NUMERIC_SLASHED_ZERO );
+
+
+ _numeric_lining.set_inconsistent( _numeric_mix & SP_CSS_FONT_VARIANT_NUMERIC_LINING_NUMS );
+ _numeric_old_style.set_inconsistent( _numeric_mix & SP_CSS_FONT_VARIANT_NUMERIC_OLDSTYLE_NUMS );
+ _numeric_proportional.set_inconsistent( _numeric_mix & SP_CSS_FONT_VARIANT_NUMERIC_PROPORTIONAL_NUMS );
+ _numeric_tabular.set_inconsistent( _numeric_mix & SP_CSS_FONT_VARIANT_NUMERIC_TABULAR_NUMS );
+ _numeric_diagonal.set_inconsistent( _numeric_mix & SP_CSS_FONT_VARIANT_NUMERIC_DIAGONAL_FRACTIONS );
+ _numeric_stacked.set_inconsistent( _numeric_mix & SP_CSS_FONT_VARIANT_NUMERIC_STACKED_FRACTIONS );
+ _numeric_ordinal.set_inconsistent( _numeric_mix & SP_CSS_FONT_VARIANT_NUMERIC_ORDINAL );
+ _numeric_slashed_zero.set_inconsistent( _numeric_mix & SP_CSS_FONT_VARIANT_NUMERIC_SLASHED_ZERO );
+
+ _ligatures_changed = false;
+ _position_changed = false;
+ _caps_changed = false;
+ _numeric_changed = false;
+ }
+
+ void
+ FontVariants::fill_css( SPCSSAttr *css ) {
+
+ // Ligatures
+ bool common = _ligatures_common.get_active();
+ bool discretionary = _ligatures_discretionary.get_active();
+ bool historical = _ligatures_historical.get_active();
+ bool contextual = _ligatures_contextual.get_active();
+
+ if( !common && !discretionary && !historical && !contextual ) {
+ sp_repr_css_set_property(css, "font-variant-ligatures", "none" );
+ } else if ( common && !discretionary && !historical && contextual ) {
+ sp_repr_css_set_property(css, "font-variant-ligatures", "normal" );
+ } else {
+ Glib::ustring css_string;
+ if ( !common )
+ css_string += "no-common-ligatures ";
+ if ( discretionary )
+ css_string += "discretionary-ligatures ";
+ if ( historical )
+ css_string += "historical-ligatures ";
+ if ( !contextual )
+ css_string += "no-contextual ";
+ sp_repr_css_set_property(css, "font-variant-ligatures", css_string.c_str() );
+ }
+
+ // Position
+ {
+ unsigned position_new = SP_CSS_FONT_VARIANT_POSITION_NORMAL;
+ Glib::ustring css_string;
+ if( _position_normal.get_active() ) {
+ css_string = "normal";
+ } else if( _position_sub.get_active() ) {
+ css_string = "sub";
+ position_new = SP_CSS_FONT_VARIANT_POSITION_SUB;
+ } else if( _position_super.get_active() ) {
+ css_string = "super";
+ position_new = SP_CSS_FONT_VARIANT_POSITION_SUPER;
+ }
+
+ // 'if' may not be necessary... need to test.
+ if( (_position_all != position_new) || ((_position_mix != 0) && _position_changed) ) {
+ sp_repr_css_set_property(css, "font-variant-position", css_string.c_str() );
+ }
+ }
+
+ // Caps
+ {
+ unsigned caps_new = SP_CSS_FONT_VARIANT_CAPS_NORMAL;
+ Glib::ustring css_string;
+ if( _caps_normal.get_active() ) {
+ css_string = "normal";
+ caps_new = SP_CSS_FONT_VARIANT_CAPS_NORMAL;
+ } else if( _caps_small.get_active() ) {
+ css_string = "small-caps";
+ caps_new = SP_CSS_FONT_VARIANT_CAPS_SMALL;
+ } else if( _caps_all_small.get_active() ) {
+ css_string = "all-small-caps";
+ caps_new = SP_CSS_FONT_VARIANT_CAPS_ALL_SMALL;
+ } else if( _caps_all_petite.get_active() ) {
+ css_string = "petite";
+ caps_new = SP_CSS_FONT_VARIANT_CAPS_PETITE;
+ } else if( _caps_all_petite.get_active() ) {
+ css_string = "all-petite";
+ caps_new = SP_CSS_FONT_VARIANT_CAPS_ALL_PETITE;
+ } else if( _caps_unicase.get_active() ) {
+ css_string = "unicase";
+ caps_new = SP_CSS_FONT_VARIANT_CAPS_UNICASE;
+ } else if( _caps_titling.get_active() ) {
+ css_string = "titling";
+ caps_new = SP_CSS_FONT_VARIANT_CAPS_TITLING;
+ }
+
+ // May not be necessary... need to test.
+ //if( (_caps_all != caps_new) || ((_caps_mix != 0) && _caps_changed) ) {
+ sp_repr_css_set_property(css, "font-variant-caps", css_string.c_str() );
+ //}
+ }
+
+ // Numeric
+ bool default_style = _numeric_default_style.get_active();
+ bool lining = _numeric_lining.get_active();
+ bool old_style = _numeric_old_style.get_active();
+
+ bool default_width = _numeric_default_width.get_active();
+ bool proportional = _numeric_proportional.get_active();
+ bool tabular = _numeric_tabular.get_active();
+
+ bool default_fractions = _numeric_default_fractions.get_active();
+ bool diagonal = _numeric_diagonal.get_active();
+ bool stacked = _numeric_stacked.get_active();
+
+ bool ordinal = _numeric_ordinal.get_active();
+ bool slashed_zero = _numeric_slashed_zero.get_active();
+
+ if (default_style & default_width & default_fractions & !ordinal & !slashed_zero) {
+ sp_repr_css_set_property(css, "font-variant-numeric", "normal");
+ } else {
+ Glib::ustring css_string;
+ if ( lining )
+ css_string += "lining-nums ";
+ if ( old_style )
+ css_string += "oldstyle-nums ";
+ if ( proportional )
+ css_string += "proportional-nums ";
+ if ( tabular )
+ css_string += "tabular-nums ";
+ if ( diagonal )
+ css_string += "diagonal-fractions ";
+ if ( stacked )
+ css_string += "stacked-fractions ";
+ if ( ordinal )
+ css_string += "ordinal ";
+ if ( slashed_zero )
+ css_string += "slashed-zero ";
+ sp_repr_css_set_property(css, "font-variant-numeric", css_string.c_str() );
+ }
+
+ }
+
+} // namespace Widget
+} // namespace UI
+} // namespace Inkscape
+
+/*
+ Local Variables:
+ mode:c++
+ c-file-style:"stroustrup"
+ c-file-offsets:((innamespace . 0)(inline-open . 0))
+ indent-tabs-mode:nil
+ fill-column:99
+ End:
+*/
+// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:fileencoding=utf-8:textwidth=99 :
diff --git a/src/ui/widget/font-variants.h b/src/ui/widget/font-variants.h
new file mode 100644
index 000000000..e6a9dd68b
--- /dev/null
+++ b/src/ui/widget/font-variants.h
@@ -0,0 +1,152 @@
+/*
+ * Author:
+ * Tavmjong Bah <tavmjong@free.fr>
+ *
+ * Copyright (C) 2015 Tavmong Bah
+ *
+ * Released under GNU GPL. Read the file 'COPYING' for more information.
+ */
+
+#ifndef INKSCAPE_UI_WIDGET_FONT_VARIANT_H
+#define INKSCAPE_UI_WIDGET_FONT_VARIANT_H
+
+#include <gtkmm/expander.h>
+#include <gtkmm/checkbutton.h>
+#include <gtkmm/radiobutton.h>
+
+class SPDesktop;
+class SPObject;
+class SPStyle;
+class SPCSSAttr;
+
+namespace Inkscape {
+namespace UI {
+namespace Widget {
+
+/**
+ * A container for selecting font variants (OpenType Features).
+ */
+class FontVariants : public Gtk::VBox
+{
+
+public:
+
+ /**
+ * Constructor
+ */
+ FontVariants();
+
+protected:
+ // To start, use four check buttons.
+ Gtk::Expander _ligatures_frame;
+ Gtk::VBox _ligatures_vbox;
+ Gtk::CheckButton _ligatures_common;
+ Gtk::CheckButton _ligatures_discretionary;
+ Gtk::CheckButton _ligatures_historical;
+ Gtk::CheckButton _ligatures_contextual;
+
+ // Exclusive options
+ Gtk::Expander _position_frame;
+ Gtk::VBox _position_vbox;
+ Gtk::RadioButton _position_normal;
+ Gtk::RadioButton _position_sub;
+ Gtk::RadioButton _position_super;
+
+ // Exclusive options (maybe a dropdown menu to save space?)
+ Gtk::Expander _caps_frame;
+ Gtk::VBox _caps_vbox;
+ Gtk::RadioButton _caps_normal;
+ Gtk::RadioButton _caps_small;
+ Gtk::RadioButton _caps_all_small;
+ Gtk::RadioButton _caps_petite;
+ Gtk::RadioButton _caps_all_petite;
+ Gtk::RadioButton _caps_unicase;
+ Gtk::RadioButton _caps_titling;
+
+ // Complicated!
+ Gtk::Expander _numeric_frame;
+ Gtk::VBox _numeric_vbox;
+ Gtk::HBox _numeric_stylebox;
+ Gtk::RadioButton _numeric_lining;
+ Gtk::RadioButton _numeric_old_style;
+ Gtk::RadioButton _numeric_default_style;
+ Gtk::HBox _numeric_widthbox;
+ Gtk::RadioButton _numeric_proportional;
+ Gtk::RadioButton _numeric_tabular;
+ Gtk::RadioButton _numeric_default_width;
+ Gtk::HBox _numeric_fractionbox;
+ Gtk::RadioButton _numeric_diagonal;
+ Gtk::RadioButton _numeric_stacked;
+ Gtk::RadioButton _numeric_default_fractions;
+ Gtk::CheckButton _numeric_ordinal;
+ Gtk::CheckButton _numeric_slashed_zero;
+
+private:
+ void ligatures_init();
+ void ligatures_callback();
+
+ void position_init();
+ void position_callback();
+
+ void caps_init();
+ void caps_callback();
+
+ void numeric_init();
+ void numeric_callback();
+
+ // To determine if we need to write out property (may not be necessary)
+ unsigned _ligatures_all;
+ unsigned _position_all;
+ unsigned _caps_all;
+ unsigned _numeric_all;
+
+ unsigned _ligatures_mix;
+ unsigned _position_mix;
+ unsigned _caps_mix;
+ unsigned _numeric_mix;
+
+ bool _ligatures_changed;
+ bool _position_changed;
+ bool _caps_changed;
+ bool _numeric_changed;
+
+ sigc::signal<void> _changed_signal;
+
+public:
+
+ /**
+ * Update GUI based on query results.
+ */
+ void update( SPStyle const *query );
+
+ /**
+ * Fill SPCSSAttr based on settings of buttons.
+ */
+ void fill_css( SPCSSAttr* css );
+
+ /**
+ * Let others know that user has changed GUI settings.
+ * (Used to enable 'Apply' and 'Default' buttons.)
+ */
+ sigc::connection connectChanged(sigc::slot<void> slot) {
+ return _changed_signal.connect(slot);
+ }
+};
+
+
+} // namespace Widget
+} // namespace UI
+} // namespace Inkscape
+
+#endif // INKSCAPE_UI_WIDGET_FONT_VARIANT_H
+
+/*
+ Local Variables:
+ mode:c++
+ c-file-style:"stroustrup"
+ c-file-offsets:((innamespace . 0)(inline-open . 0))
+ indent-tabs-mode:nil
+ fill-column:99
+ End:
+*/
+// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:fileencoding=utf-8:textwidth=99 :
diff --git a/src/verbs.cpp b/src/verbs.cpp
index ea2c06dcf..e0ef27b0d 100644
--- a/src/verbs.cpp
+++ b/src/verbs.cpp
@@ -1350,39 +1350,9 @@ void LayerVerb::perform(SPAction *action, void *data)
}
case SP_VERB_LAYER_DUPLICATE: {
if ( dt->currentLayer() != dt->currentRoot() ) {
- // Note with either approach:
- // Any clone masters are duplicated, their clones use the *original*,
- // but the duplicated master is not linked up as master nor clone of the original.
-#if 0
- // Only copies selectable things, honoring locks, visibility, avoids sublayers.
- SPObject *new_layer = Inkscape::create_layer(dt->currentRoot(), dt->currentLayer(), LPOS_BELOW);
- if ( dt->currentLayer()->label() ) {
- gchar* name = g_strdup_printf(_("%s copy"), dt->currentLayer()->label());
- dt->layer_manager->renameLayer( new_layer, name, TRUE );
- g_free(name);
- }
- sp_edit_select_all(dt);
- sp_selection_duplicate(dt, true);
- sp_selection_to_prev_layer(dt, true);
- dt->setCurrentLayer(new_layer);
- sp_edit_select_all(dt);
-#else
- // Copies everything, regardless of locks, visibility, sublayers.
- //XML Tree being directly used here while it shouldn't be.
- Inkscape::XML::Node *selected = dt->currentLayer()->getRepr();
- Inkscape::XML::Node *parent = selected->parent();
- Inkscape::XML::Node *dup = selected->duplicate(parent->document());
- parent->addChild(dup, selected);
- SPObject *new_layer = dt->currentLayer()->next;
- if (new_layer) {
- if (new_layer->label()) {
- gchar* name = g_strdup_printf(_("%s copy"), new_layer->label());
- dt->layer_manager->renameLayer( new_layer, name, TRUE );
- g_free(name);
- }
- dt->setCurrentLayer(new_layer);
- }
-#endif
+
+ sp_selection_duplicate(dt, true, true);
+
DocumentUndo::done(dt->getDocument(), SP_VERB_LAYER_DUPLICATE,
_("Duplicate layer"));
diff --git a/src/widgets/CMakeLists.txt b/src/widgets/CMakeLists.txt
index 072b905a2..a3e9e14d0 100644
--- a/src/widgets/CMakeLists.txt
+++ b/src/widgets/CMakeLists.txt
@@ -41,12 +41,7 @@ set(widgets_SRC
select-toolbar.cpp
shrink-wrap-button.cpp
sp-attribute-widget.cpp
- sp-color-icc-selector.cpp
- sp-color-notebook.cpp
- sp-color-scales.cpp
sp-color-selector.cpp
- sp-color-slider.cpp
- sp-color-wheel-selector.cpp
sp-widget.cpp
sp-xmlview-attr-list.cpp
sp-xmlview-content.cpp
@@ -103,12 +98,7 @@ set(widgets_SRC
select-toolbar.h
shrink-wrap-button.h
sp-attribute-widget.h
- sp-color-icc-selector.h
- sp-color-notebook.h
- sp-color-scales.h
sp-color-selector.h
- sp-color-slider.h
- sp-color-wheel-selector.h
sp-widget.h
sp-xmlview-attr-list.h
sp-xmlview-content.h
diff --git a/src/widgets/Makefile_insert b/src/widgets/Makefile_insert
index dc4c12967..f66be66ed 100644
--- a/src/widgets/Makefile_insert
+++ b/src/widgets/Makefile_insert
@@ -76,18 +76,8 @@ ink_common_sources += \
widgets/spiral-toolbar.h \
widgets/sp-attribute-widget.cpp \
widgets/sp-attribute-widget.h \
- widgets/sp-color-icc-selector.cpp \
- widgets/sp-color-icc-selector.h \
- widgets/sp-color-notebook.cpp \
- widgets/sp-color-notebook.h \
- widgets/sp-color-scales.cpp \
- widgets/sp-color-scales.h \
widgets/sp-color-selector.cpp \
widgets/sp-color-selector.h \
- widgets/sp-color-slider.cpp \
- widgets/sp-color-slider.h \
- widgets/sp-color-wheel-selector.cpp \
- widgets/sp-color-wheel-selector.h \
widgets/spinbutton-events.cpp \
widgets/spinbutton-events.h \
widgets/sp-widget.cpp \
diff --git a/src/widgets/fill-style.cpp b/src/widgets/fill-style.cpp
index b1f812338..fa5eabab4 100644
--- a/src/widgets/fill-style.cpp
+++ b/src/widgets/fill-style.cpp
@@ -300,7 +300,7 @@ void FillNStroke::performUpdate()
psel->setGradientProperties( rg->getUnits(),
rg->getSpread() );
} else if (SP_IS_PATTERN(server)) {
- SPPattern *pat = pattern_getroot(SP_PATTERN(server));
+ SPPattern *pat = SP_PATTERN(server)->rootPattern();
psel->updatePatternList( pat );
}
}
@@ -431,8 +431,7 @@ void FillNStroke::dragFromPaint()
update = true;
switch (psel->mode) {
- case SPPaintSelector::MODE_COLOR_RGB:
- case SPPaintSelector::MODE_COLOR_CMYK:
+ case SPPaintSelector::MODE_SOLID_COLOR:
{
// local change, do not update from selection
dragId = g_timeout_add_full(G_PRIORITY_DEFAULT, 100, dragDelayCB, this, 0);
@@ -505,8 +504,7 @@ void FillNStroke::updateFromPaint()
break;
}
- case SPPaintSelector::MODE_COLOR_RGB:
- case SPPaintSelector::MODE_COLOR_CMYK:
+ case SPPaintSelector::MODE_SOLID_COLOR:
{
if (kind == FILL) {
// FIXME: fix for GTK breakage, see comment in SelectedStyle::on_opacity_changed; here it results in losing release events
@@ -656,7 +654,7 @@ void FillNStroke::updateFromPaint()
SPPaintServer *server = (kind == FILL) ?
selobj->style->getFillPaintServer() :
selobj->style->getStrokePaintServer();
- if (SP_IS_PATTERN(server) && pattern_getroot(SP_PATTERN(server)) == pattern)
+ if (SP_IS_PATTERN(server) && SP_PATTERN(server)->rootPattern() == pattern)
// only if this object's pattern is not rooted in our selected pattern, apply
continue;
}
diff --git a/src/widgets/gradient-selector.cpp b/src/widgets/gradient-selector.cpp
index 42e59cbfe..402f30846 100644
--- a/src/widgets/gradient-selector.cpp
+++ b/src/widgets/gradient-selector.cpp
@@ -17,6 +17,10 @@
# include "config.h"
#endif
+#if GLIBMM_DISABLE_DEPRECATED && HAVE_GLIBMM_THREADS_H
+#include <glibmm/threads.h>
+#endif
+
#include <gtkmm/treeview.h>
#include "gradient-vector.h"
diff --git a/src/widgets/gradient-vector.cpp b/src/widgets/gradient-vector.cpp
index 10d1cc107..259d4c9af 100644
--- a/src/widgets/gradient-vector.cpp
+++ b/src/widgets/gradient-vector.cpp
@@ -31,17 +31,16 @@
#include "macros.h"
#include <glibmm/i18n.h>
#include <set>
-#include "widgets/gradient-image.h"
-#include "inkscape.h"
-#include "document-private.h"
-#include "gradient-chemistry.h"
-#include "helper/window.h"
+#include "../widgets/gradient-image.h"
+#include "../inkscape.h"
+#include "../document-private.h"
+#include "../gradient-chemistry.h"
+#include "../helper/window.h"
#include "io/resource.h"
#include "xml/repr.h"
-#include "ui/dialog-events.h"
-#include "preferences.h"
+#include "../preferences.h"
#include "svg/css-ostringstream.h"
#include "sp-stop.h"
#include "selection-chemistry.h"
@@ -51,10 +50,16 @@
#include "desktop.h"
#include "layer-manager.h"
-#include <sigc++/sigc++.h>
+#include <sigc++/functors/ptr_fun.h>
+#include <sigc++/adaptors/bind.h>
#include "document-undo.h"
+#include "ui/dialog-events.h"
+#include "ui/selected-color.h"
+#include "ui/widget/color-notebook.h"
+
using Inkscape::DocumentUndo;
+using Inkscape::UI::SelectedColor;
enum {
VECTOR_SET,
@@ -468,11 +473,10 @@ void SPGradientVectorSelector::setSwatched()
### Vector Editing Widget
##################################################################*/
-#include "widgets/sp-color-notebook.h"
#include "widgets/widget-sizes.h"
#include "xml/node-event-vector.h"
#include "svg/svg-color.h"
-
+#include "ui/widget/color-notebook.h"
#define PAD 4
@@ -491,8 +495,8 @@ static void sp_gradient_vector_widget_destroy(GtkObject *object, gpointer data);
static void sp_gradient_vector_gradient_release(SPObject *obj, GtkWidget *widget);
static void sp_gradient_vector_gradient_modified(SPObject *obj, guint flags, GtkWidget *widget);
-static void sp_gradient_vector_color_dragged(SPColorSelector *csel, GObject *object);
-static void sp_gradient_vector_color_changed(SPColorSelector *csel, GObject *object);
+static void sp_gradient_vector_color_dragged(Inkscape::UI::SelectedColor *selected_color, GObject *object);
+static void sp_gradient_vector_color_changed(Inkscape::UI::SelectedColor *selected_color, GObject *object);
static void update_stop_list( GtkWidget *vb, SPGradient *gradient, SPStop *new_stop);
static gboolean blocked = FALSE;
@@ -649,9 +653,11 @@ static void sp_grad_edit_combo_box_changed (GtkComboBox * /*widget*/, GtkWidget
blocked = TRUE;
- SPColorSelector *csel = static_cast<SPColorSelector*>(g_object_get_data(G_OBJECT(tbl), "cselector"));
+ SelectedColor *csel = static_cast<SelectedColor*>(g_object_get_data(G_OBJECT(tbl), "cselector"));
// set its color, from the stored array
- csel->base->setColorAlpha( stop->getEffectiveColor(), stop->opacity );
+ g_object_set_data(G_OBJECT(tbl), "updating_color", reinterpret_cast<void*>(1));
+ csel->setColorAlpha(stop->getEffectiveColor(), stop->opacity);
+ g_object_set_data(G_OBJECT(tbl), "updating_color", reinterpret_cast<void*>(0));
GtkWidget *offspin = GTK_WIDGET(g_object_get_data(G_OBJECT(tbl), "offspn"));
GtkWidget *offslide =GTK_WIDGET(g_object_get_data(G_OBJECT(tbl), "offslide"));
@@ -832,7 +838,9 @@ static void sp_grd_ed_del_stop(GtkWidget */*widget*/, GtkWidget *vb)
static GtkWidget * sp_gradient_vector_widget_new(SPGradient *gradient, SPStop *select_stop)
{
- GtkWidget *vb, *w, *f, *csel;
+ using Inkscape::UI::Widget::ColorNotebook;
+
+ GtkWidget *vb, *w, *f;
g_return_val_if_fail(!gradient || SP_IS_GRADIENT(gradient), NULL);
@@ -960,12 +968,23 @@ static GtkWidget * sp_gradient_vector_widget_new(SPGradient *gradient, SPStop *s
f = gtk_frame_new(_("Stop Color"));
gtk_widget_show(f);
gtk_box_pack_start(GTK_BOX(vb), f, TRUE, TRUE, PAD);
- csel = static_cast<GtkWidget*>(sp_color_selector_new(SP_TYPE_COLOR_NOTEBOOK));
- g_object_set_data(G_OBJECT(vb), "cselector", csel);
+
+ Inkscape::UI::SelectedColor *selected_color = new Inkscape::UI::SelectedColor;
+ g_object_set_data(G_OBJECT(vb), "cselector", selected_color);
+ g_object_set_data(G_OBJECT(vb), "updating_color", reinterpret_cast<void*>(0));
+ selected_color->signal_dragged.connect(sigc::bind(sigc::ptr_fun(&sp_gradient_vector_color_dragged), selected_color, G_OBJECT(vb)));
+ selected_color->signal_dragged.connect(sigc::bind(sigc::ptr_fun(&sp_gradient_vector_color_changed), selected_color, G_OBJECT(vb)));
+
+ Gtk::Widget *color_selector = Gtk::manage(new ColorNotebook(*selected_color));
+ color_selector->show();
+ gtk_container_add(GTK_CONTAINER(f), color_selector->gobj());
+
+ /*
gtk_widget_show(csel);
gtk_container_add(GTK_CONTAINER(f), csel);
g_signal_connect(G_OBJECT(csel), "dragged", G_CALLBACK(sp_gradient_vector_color_dragged), vb);
g_signal_connect(G_OBJECT(csel), "changed", G_CALLBACK(sp_gradient_vector_color_changed), vb);
+ */
gtk_widget_show(vb);
@@ -1126,9 +1145,11 @@ static void sp_gradient_vector_widget_load_gradient(GtkWidget *widget, SPGradien
}
// get the color selector
- SPColorSelector *csel = SP_COLOR_SELECTOR(g_object_get_data(G_OBJECT(widget), "cselector"));
+ SelectedColor *csel = static_cast<SelectedColor*>(g_object_get_data(G_OBJECT(widget), "cselector"));
- csel->base->setColorAlpha( stop->getEffectiveColor(), stop->opacity );
+ g_object_set_data(G_OBJECT(widget), "updating_color", reinterpret_cast<void*>(1));
+ csel->setColorAlpha(stop->getEffectiveColor(), stop->opacity);
+ g_object_set_data(G_OBJECT(widget), "updating_color", reinterpret_cast<void*>(0));
/* Fill preview */
GtkWidget *w = static_cast<GtkWidget *>(g_object_get_data(G_OBJECT(widget), "preview"));
@@ -1228,6 +1249,12 @@ static void sp_gradient_vector_widget_destroy(GtkObject *object, gpointer /*data
sp_repr_remove_listener_by_data(gradient->getRepr(), object);
}
}
+
+ SelectedColor *selected_color = static_cast<SelectedColor *>(g_object_get_data(G_OBJECT(object), "cselector"));
+ if (selected_color) {
+ delete selected_color;
+ g_object_set_data(G_OBJECT(object), "cselector", NULL);
+ }
}
static void sp_gradient_vector_gradient_release(SPObject */*object*/, GtkWidget *widget)
@@ -1245,7 +1272,7 @@ static void sp_gradient_vector_gradient_modified(SPObject *object, guint /*flags
}
}
-static void sp_gradient_vector_color_dragged(SPColorSelector *csel, GObject *object)
+static void sp_gradient_vector_color_dragged(Inkscape::UI::SelectedColor *selected_color, GObject *object)
{
SPGradient *gradient, *ngr;
@@ -1273,14 +1300,21 @@ static void sp_gradient_vector_color_dragged(SPColorSelector *csel, GObject *obj
return;
}
- csel->base->getColorAlpha(stop->specified_color, stop->opacity);
+ selected_color->colorAlpha(stop->specified_color, stop->opacity);
stop->currentColor = false;
blocked = FALSE;
}
-static void sp_gradient_vector_color_changed(SPColorSelector *csel, GObject *object)
+static void sp_gradient_vector_color_changed(Inkscape::UI::SelectedColor *selected_color, GObject *object)
{
+ (void)selected_color;
+
+ void* updating_color = g_object_get_data(G_OBJECT(object), "updating_color");
+ if (updating_color) {
+ return;
+ }
+
if (blocked) {
return;
}
@@ -1309,10 +1343,10 @@ static void sp_gradient_vector_color_changed(SPColorSelector *csel, GObject *obj
return;
}
- csel = static_cast<SPColorSelector*>(g_object_get_data(G_OBJECT(object), "cselector"));
+ SelectedColor *csel = static_cast<SelectedColor *>(g_object_get_data(G_OBJECT(object), "cselector"));
SPColor color;
float alpha = 0;
- csel->base->getColorAlpha( color, alpha );
+ csel->colorAlpha(color, alpha);
sp_repr_set_css_double(stop->getRepr(), "offset", stop->offset);
Inkscape::CSSOStringStream os;
diff --git a/src/widgets/paint-selector.cpp b/src/widgets/paint-selector.cpp
index 221344296..846ded511 100644
--- a/src/widgets/paint-selector.cpp
+++ b/src/widgets/paint-selector.cpp
@@ -31,7 +31,6 @@
#include "widgets/widget-sizes.h"
#include "xml/repr.h"
-#include "sp-color-notebook.h"
#include "sp-linear-gradient.h"
#include "sp-radial-gradient.h"
#include "sp-mesh.h"
@@ -48,6 +47,7 @@
#include "io/sys.h"
#include "helper/stock-items.h"
#include "ui/icon-names.h"
+#include "ui/widget/color-notebook.h"
#include "paint-selector.h"
@@ -58,6 +58,7 @@
#include <gtk/gtk.h>
using Inkscape::Widgets::SwatchSelector;
+using Inkscape::UI::SelectedColor;
enum {
MODE_CHANGED,
@@ -94,8 +95,7 @@ static gchar const* modeStrings[] = {
"MODE_EMPTY",
"MODE_MULTIPLE",
"MODE_NONE",
- "MODE_COLOR_RGB",
- "MODE_COLOR_CMYK",
+ "MODE_SOLID_COLOR",
"MODE_GRADIENT_LINEAR",
"MODE_GRADIENT_RADIAL",
"MODE_PATTERN",
@@ -218,7 +218,7 @@ sp_paint_selector_init(SPPaintSelector *psel)
psel->none = sp_paint_selector_style_button_add(psel, INKSCAPE_ICON("paint-none"),
SPPaintSelector::MODE_NONE, _("No paint"));
psel->solid = sp_paint_selector_style_button_add(psel, INKSCAPE_ICON("paint-solid"),
- SPPaintSelector::MODE_COLOR_RGB, _("Flat color"));
+ SPPaintSelector::MODE_SOLID_COLOR, _("Flat color"));
psel->gradient = sp_paint_selector_style_button_add(psel, INKSCAPE_ICON("paint-gradient-linear"),
SPPaintSelector::MODE_GRADIENT_LINEAR, _("Linear gradient"));
psel->radial = sp_paint_selector_style_button_add(psel, INKSCAPE_ICON("paint-gradient-radial"),
@@ -292,8 +292,13 @@ sp_paint_selector_init(SPPaintSelector *psel)
/* Last used color */
- psel->color.set( 0.0, 0.0, 0.0 );
- psel->alpha = 1.0;
+ psel->selected_color = new SelectedColor;
+ psel->updating_color = false;
+
+ psel->selected_color->signal_grabbed.connect(sigc::mem_fun(psel, &SPPaintSelector::onSelectedColorGrabbed));
+ psel->selected_color->signal_dragged.connect(sigc::mem_fun(psel, &SPPaintSelector::onSelectedColorDragged));
+ psel->selected_color->signal_released.connect(sigc::mem_fun(psel, &SPPaintSelector::onSelectedColorReleased));
+ psel->selected_color->signal_changed.connect(sigc::mem_fun(psel, &SPPaintSelector::onSelectedColorChanged));
}
static void sp_paint_selector_dispose(GObject *object)
@@ -303,6 +308,11 @@ static void sp_paint_selector_dispose(GObject *object)
// clean up our long-living pattern menu
g_object_set_data(G_OBJECT(psel),"patternmenu",NULL);
+ if (psel->selected_color) {
+ delete psel->selected_color;
+ psel->selected_color = NULL;
+ }
+
if ((G_OBJECT_CLASS(sp_paint_selector_parent_class))->dispose)
(G_OBJECT_CLASS(sp_paint_selector_parent_class))->dispose(object);
}
@@ -396,8 +406,7 @@ void SPPaintSelector::setMode(Mode mode)
case MODE_NONE:
sp_paint_selector_set_mode_none(this);
break;
- case MODE_COLOR_RGB:
- case MODE_COLOR_CMYK:
+ case MODE_SOLID_COLOR:
sp_paint_selector_set_mode_color(this, mode);
break;
case MODE_GRADIENT_LINEAR:
@@ -438,7 +447,6 @@ void SPPaintSelector::setFillrule(FillRule fillrule)
void SPPaintSelector::setColorAlpha(SPColor const &color, float alpha)
{
g_return_if_fail( ( 0.0 <= alpha ) && ( alpha <= 1.0 ) );
- SPColorSelector *csel = 0;
/*
guint32 rgba = 0;
@@ -455,12 +463,13 @@ void SPPaintSelector::setColorAlpha(SPColor const &color, float alpha)
#ifdef SP_PS_VERBOSE
g_print("PaintSelector set RGBA\n");
#endif
- setMode(MODE_COLOR_RGB);
+ setMode(MODE_SOLID_COLOR);
}
- csel = reinterpret_cast<SPColorSelector*>(g_object_get_data(G_OBJECT(selector), "color-selector"));
+ updating_color = true;
+ selected_color->setColorAlpha(color, alpha);
+ updating_color = false;
//rgba = color.toRGBA32( alpha );
- csel->base->setColorAlpha( color, alpha );
}
void SPPaintSelector::setSwatch(SPGradient *vector )
@@ -541,11 +550,7 @@ void SPPaintSelector::getGradientProperties( SPGradientUnits &units, SPGradientS
*/
void SPPaintSelector::getColorAlpha(SPColor &color, gfloat &alpha) const
{
- SPColorSelector *csel;
-
- csel = reinterpret_cast<SPColorSelector*>(g_object_get_data(G_OBJECT(selector), "color-selector"));
-
- csel->base->getColorAlpha( color, alpha );
+ selected_color->colorAlpha(color, alpha);
g_assert( ( 0.0 <= alpha )
&& ( alpha <= 1.0 ) );
@@ -581,6 +586,9 @@ sp_paint_selector_clear_frame(SPPaintSelector *psel)
if (psel->selector) {
+ //This is a hack to work around GtkNotebook bug in ColorSelector. Is sends signal switch-page on destroy
+ //The widget is hidden firts so it can recognize that it should not process signals from notebook child
+ gtk_widget_set_visible(psel->selector, false);
gtk_widget_destroy(psel->selector);
psel->selector = NULL;
}
@@ -633,82 +641,82 @@ sp_paint_selector_set_mode_none(SPPaintSelector *psel)
/* Color paint */
-static void sp_paint_selector_color_grabbed(SPColorSelector * /*csel*/, SPPaintSelector *psel)
-{
- g_signal_emit(G_OBJECT(psel), psel_signals[GRABBED], 0);
+void SPPaintSelector::onSelectedColorGrabbed() {
+ g_signal_emit(G_OBJECT(this), psel_signals[GRABBED], 0);
}
-static void sp_paint_selector_color_dragged(SPColorSelector * /*csel*/, SPPaintSelector *psel)
-{
- g_signal_emit(G_OBJECT(psel), psel_signals[DRAGGED], 0);
+void SPPaintSelector::onSelectedColorDragged() {
+ if (updating_color) {
+ return;
+ }
+ g_signal_emit(G_OBJECT(this), psel_signals[DRAGGED], 0);
}
-static void sp_paint_selector_color_released(SPColorSelector * /*csel*/, SPPaintSelector *psel)
-{
- g_signal_emit(G_OBJECT(psel), psel_signals[RELEASED], 0);
+void SPPaintSelector::onSelectedColorReleased() {
+ g_signal_emit(G_OBJECT(this), psel_signals[RELEASED], 0);
}
-static void
-sp_paint_selector_color_changed(SPColorSelector *csel, SPPaintSelector *psel)
-{
- csel->base->getColorAlpha( psel->color, psel->alpha );
+void SPPaintSelector::onSelectedColorChanged() {
+ if (updating_color) {
+ return;
+ }
- g_signal_emit(G_OBJECT(psel), psel_signals[CHANGED], 0);
+ if (mode == MODE_SOLID_COLOR) {
+ g_signal_emit(G_OBJECT(this), psel_signals[CHANGED], 0);
+ } else {
+ g_warning("SPPaintSelector::onSelectedColorChanged(): selected color changed while not in color selection mode");
+ }
}
static void sp_paint_selector_set_mode_color(SPPaintSelector *psel, SPPaintSelector::Mode /*mode*/)
{
- GtkWidget *csel;
-
- SPColor newcolor = psel->color;
- float newalpha = psel->alpha;
-
+ using Inkscape::UI::Widget::ColorNotebook;
+
if ((psel->mode == SPPaintSelector::MODE_SWATCH)
|| (psel->mode == SPPaintSelector::MODE_GRADIENT_LINEAR)
|| (psel->mode == SPPaintSelector::MODE_GRADIENT_RADIAL) ) {
SPGradientSelector *gsel = getGradientFromData(psel);
if (gsel) {
SPGradient *gradient = gsel->getVector();
- newcolor = gradient->getFirstStop()->specified_color;
- newalpha = gradient->getFirstStop()->opacity;
+
+ // Gradient can be null if object paint is changed externally (ie. with a color picker tool)
+ if (gradient)
+ {
+ SPColor color = gradient->getFirstStop()->specified_color;
+ float alpha = gradient->getFirstStop()->opacity;
+ psel->selected_color->setColorAlpha(color, alpha, false);
+ }
}
}
sp_paint_selector_set_style_buttons(psel, psel->solid);
gtk_widget_set_sensitive(psel->style, TRUE);
- if ((psel->mode == SPPaintSelector::MODE_COLOR_RGB) || (psel->mode == SPPaintSelector::MODE_COLOR_CMYK)) {
+ if ((psel->mode == SPPaintSelector::MODE_SOLID_COLOR)) {
/* Already have color selector */
- csel = GTK_WIDGET(g_object_get_data(G_OBJECT(psel->selector), "color-selector"));
+ // Do nothing
} else {
sp_paint_selector_clear_frame(psel);
/* Create new color selector */
/* Create vbox */
#if GTK_CHECK_VERSION(3,0,0)
- GtkWidget *vb = gtk_box_new(GTK_ORIENTATION_VERTICAL, 4);
- gtk_box_set_homogeneous(GTK_BOX(vb), FALSE);
+ GtkWidget *vb = gtk_box_new(GTK_ORIENTATION_VERTICAL, 4);
+ gtk_box_set_homogeneous(GTK_BOX(vb), FALSE);
#else
GtkWidget *vb = gtk_vbox_new(FALSE, 4);
#endif
gtk_widget_show(vb);
/* Color selector */
- csel = sp_color_selector_new( SP_TYPE_COLOR_NOTEBOOK );
- gtk_widget_show(csel);
- g_object_set_data(G_OBJECT(vb), "color-selector", csel);
- gtk_box_pack_start(GTK_BOX(vb), csel, TRUE, TRUE, 0);
- g_signal_connect(G_OBJECT(csel), "grabbed", G_CALLBACK(sp_paint_selector_color_grabbed), psel);
- g_signal_connect(G_OBJECT(csel), "dragged", G_CALLBACK(sp_paint_selector_color_dragged), psel);
- g_signal_connect(G_OBJECT(csel), "released", G_CALLBACK(sp_paint_selector_color_released), psel);
- g_signal_connect(G_OBJECT(csel), "changed", G_CALLBACK(sp_paint_selector_color_changed), psel);
+ Gtk::Widget *color_selector = Gtk::manage(new ColorNotebook(*(psel->selected_color)));
+ color_selector->show();
+ gtk_box_pack_start(GTK_BOX(vb), color_selector->gobj(), TRUE, TRUE, 0);
+
/* Pack everything to frame */
gtk_container_add(GTK_CONTAINER(psel->frame), vb);
psel->selector = vb;
-
- /* Set color */
- SP_COLOR_SELECTOR( csel )->base->setColorAlpha( newcolor, newalpha );
}
gtk_label_set_markup(GTK_LABEL(psel->label), _("<b>Flat color</b>"));
@@ -720,22 +728,22 @@ static void sp_paint_selector_set_mode_color(SPPaintSelector *psel, SPPaintSelec
/* Gradient */
-static void sp_paint_selector_gradient_grabbed(SPColorSelector * /*csel*/, SPPaintSelector *psel)
+static void sp_paint_selector_gradient_grabbed(SPGradientSelector * /*csel*/, SPPaintSelector *psel)
{
g_signal_emit(G_OBJECT(psel), psel_signals[GRABBED], 0);
}
-static void sp_paint_selector_gradient_dragged(SPColorSelector * /*csel*/, SPPaintSelector *psel)
+static void sp_paint_selector_gradient_dragged(SPGradientSelector * /*csel*/, SPPaintSelector *psel)
{
g_signal_emit(G_OBJECT(psel), psel_signals[DRAGGED], 0);
}
-static void sp_paint_selector_gradient_released(SPColorSelector * /*csel*/, SPPaintSelector *psel)
+static void sp_paint_selector_gradient_released(SPGradientSelector * /*csel*/, SPPaintSelector *psel)
{
g_signal_emit(G_OBJECT(psel), psel_signals[RELEASED], 0);
}
-static void sp_paint_selector_gradient_changed(SPColorSelector * /*csel*/, SPPaintSelector *psel)
+static void sp_paint_selector_gradient_changed(SPGradientSelector * /*csel*/, SPPaintSelector *psel)
{
g_signal_emit(G_OBJECT(psel), psel_signals[CHANGED], 0);
}
@@ -838,7 +846,7 @@ ink_pattern_list_get (SPDocument *source)
GSList *pl = NULL;
GSList const *patterns = source->getResourceList("pattern");
for (GSList *l = const_cast<GSList *>(patterns); l != NULL; l = l->next) {
- if (SP_PATTERN(l->data) == pattern_getroot(SP_PATTERN(l->data))) { // only if this is a root pattern
+ if (SP_PATTERN(l->data) == SP_PATTERN(l->data)->rootPattern()) { // only if this is a root pattern
pl = g_slist_prepend(pl, l->data);
}
}
@@ -1158,7 +1166,7 @@ SPPattern *SPPaintSelector::getPattern()
}
g_free(paturn);
} else {
- pat = pattern_getroot(SP_PATTERN(patid));
+ pat = SP_PATTERN(patid)->rootPattern();
}
if (pat && !SP_IS_PATTERN(pat)) {
@@ -1265,7 +1273,7 @@ SPPaintSelector::Mode SPPaintSelector::getModeForStyle(SPStyle const & style, Fi
}
} else if ( target.isColor() ) {
// TODO this is no longer a valid assertion:
- mode = MODE_COLOR_RGB; // so far only rgb can be read from svg
+ mode = MODE_SOLID_COLOR; // so far only rgb can be read from svg
} else if ( target.isNone() ) {
mode = MODE_NONE;
} else {
diff --git a/src/widgets/paint-selector.h b/src/widgets/paint-selector.h
index 788aa673e..23c2dd456 100644
--- a/src/widgets/paint-selector.h
+++ b/src/widgets/paint-selector.h
@@ -12,12 +12,18 @@
*
*/
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
+#include <glib.h>
#include <gtk/gtk.h>
#include "color.h"
#include "fill-or-stroke.h"
#include "sp-gradient-spread.h"
#include "sp-gradient-units.h"
+#include "ui/selected-color.h"
class SPGradient;
class SPDesktop;
@@ -44,8 +50,7 @@ struct SPPaintSelector {
MODE_EMPTY,
MODE_MULTIPLE,
MODE_NONE,
- MODE_COLOR_RGB,
- MODE_COLOR_CMYK,
+ MODE_SOLID_COLOR,
MODE_GRADIENT_LINEAR,
MODE_GRADIENT_RADIAL,
#ifdef WITH_MESH
@@ -83,9 +88,8 @@ struct SPPaintSelector {
GtkWidget *frame, *selector;
GtkWidget *label;
- SPColor color;
- float alpha;
-
+ Inkscape::UI::SelectedColor *selected_color;
+ bool updating_color;
static Mode getModeForStyle(SPStyle const & style, FillOrStroke kind);
@@ -114,6 +118,11 @@ struct SPPaintSelector {
// TODO move this elsewhere:
void setFlatColor( SPDesktop *desktop, const gchar *color_property, const gchar *opacity_property );
+
+ void onSelectedColorGrabbed();
+ void onSelectedColorDragged();
+ void onSelectedColorReleased();
+ void onSelectedColorChanged();
};
enum {COMBO_COL_LABEL=0, COMBO_COL_STOCK=1, COMBO_COL_PATTERN=2, COMBO_COL_SEP=3, COMBO_N_COLS=4};
diff --git a/src/widgets/sp-color-icc-selector.cpp b/src/widgets/sp-color-icc-selector.cpp
deleted file mode 100644
index 6e910c582..000000000
--- a/src/widgets/sp-color-icc-selector.cpp
+++ /dev/null
@@ -1,1113 +0,0 @@
-#ifdef HAVE_CONFIG_H
-# include "config.h"
-#endif
-
-#include "gradient-vector.h"
-#include <math.h>
-#include <gtk/gtk.h>
-#include <glibmm/i18n.h>
-#include <map>
-#include <set>
-#include <vector>
-
-#include "ui/dialog-events.h"
-#include "sp-color-icc-selector.h"
-#include "sp-color-scales.h"
-#include "sp-color-slider.h"
-#include "svg/svg-icc-color.h"
-#include "colorspace.h"
-#include "document.h"
-#include "inkscape.h"
-#include "profile-manager.h"
-
-#define noDEBUG_LCMS
-
-#if defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
-#include "color-profile.h"
-#include "cms-system.h"
-#include "color-profile-cms-fns.h"
-
-#ifdef DEBUG_LCMS
-#include "preferences.h"
-#endif // DEBUG_LCMS
-#endif // defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
-
-
-#ifdef DEBUG_LCMS
-extern guint update_in_progress;
-#define DEBUG_MESSAGE(key, ...) \
-{\
- Inkscape::Preferences *prefs = Inkscape::Preferences::get();\
- bool dump = prefs->getBool("/options/scislac/" #key);\
- bool dumpD = prefs->getBool("/options/scislac/" #key "D");\
- bool dumpD2 = prefs->getBool("/options/scislac/" #key "D2");\
- dumpD &&= ( (update_in_progress == 0) || dumpD2 );\
- if ( dump )\
- {\
- g_message( __VA_ARGS__ );\
-\
- }\
- if ( dumpD )\
- {\
- GtkWidget *dialog = gtk_message_dialog_new(NULL,\
- GTK_DIALOG_DESTROY_WITH_PARENT, \
- GTK_MESSAGE_INFO, \
- GTK_BUTTONS_OK, \
- __VA_ARGS__ \
- );\
- g_signal_connect_swapped(dialog, "response",\
- G_CALLBACK(gtk_widget_destroy), \
- dialog); \
- gtk_widget_show_all( dialog );\
- }\
-}
-#endif // DEBUG_LCMS
-
-
-
-G_BEGIN_DECLS
-
-static void sp_color_icc_selector_dispose(GObject *object);
-static void sp_color_icc_selector_show_all (GtkWidget *widget);
-static void sp_color_icc_selector_hide(GtkWidget *widget);
-
-G_END_DECLS
-
-/**
- * Class containing the parts for a single color component's UI presence.
- */
-class ComponentUI
-{
-public:
- ComponentUI() :
- _component(),
- _adj(0),
- _slider(0),
- _btn(0),
- _label(0),
- _map(0)
- {
- }
-
- ComponentUI(colorspace::Component const &component) :
- _component(component),
- _adj(0),
- _slider(0),
- _btn(0),
- _label(0),
- _map(0)
- {
- }
-
- colorspace::Component _component;
- GtkAdjustment *_adj; // Component adjustment
- GtkWidget *_slider;
- GtkWidget *_btn; // spinbutton
- GtkWidget *_label; // Label
- guchar *_map;
-};
-
-/**
- * Class that implements the internals of the selector.
- */
-class ColorICCSelectorImpl
-{
-public:
-
- ColorICCSelectorImpl( ColorICCSelector *owner);
-
- ~ColorICCSelectorImpl();
-
- static void _adjustmentChanged ( GtkAdjustment *adjustment, SPColorICCSelector *cs );
-
- static void _sliderGrabbed( SPColorSlider *slider, SPColorICCSelector *cs );
- static void _sliderReleased( SPColorSlider *slider, SPColorICCSelector *cs );
- static void _sliderChanged( SPColorSlider *slider, SPColorICCSelector *cs );
-
- static void _profileSelected( GtkWidget* src, gpointer data );
- static void _fixupHit( GtkWidget* src, gpointer data );
-
-#if defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
- void _setProfile( SVGICCColor* profile );
- void _switchToProfile( gchar const* name );
-#endif
- void _updateSliders( gint ignore );
- void _profilesChanged( std::string const & name );
-
- ColorICCSelector *_owner;
-
- gboolean _updating : 1;
- gboolean _dragging : 1;
-
- guint32 _fixupNeeded;
- GtkWidget* _fixupBtn;
- GtkWidget* _profileSel;
-
- std::vector<ComponentUI> _compUI;
-
- GtkAdjustment* _adj; // Channel adjustment
- GtkWidget* _slider;
- GtkWidget* _sbtn; // Spinbutton
- GtkWidget* _label; // Label
-
-#if defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
- std::string _profileName;
- Inkscape::ColorProfile* _prof;
- guint _profChannelCount;
- gulong _profChangedID;
-#endif // defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
-};
-
-#define XPAD 4
-#define YPAD 1
-
-namespace
-{
-
-size_t maxColorspaceComponentCount = 0;
-
-#if defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
-
-/**
- * Internal variable to track all known colorspaces.
- */
-std::set<cmsUInt32Number> knownColorspaces;
-
-#endif
-
-
-/**
- * Simple helper to allow bitwise or on GtkAttachOptions.
- */
-GtkAttachOptions operator|(GtkAttachOptions lhs, GtkAttachOptions rhs)
-{
- return static_cast<GtkAttachOptions>(static_cast<int>(lhs) | static_cast<int>(rhs));
-}
-
-/**
- * Helper function to handle GTK2/GTK3 attachment #ifdef code.
- */
-void attachToGridOrTable(GtkWidget *parent,
- GtkWidget *child,
- guint left,
- guint top,
- guint width,
- guint height,
- bool hexpand = false,
- bool centered = false,
- guint xpadding = XPAD,
- guint ypadding = YPAD)
-{
-#if GTK_CHECK_VERSION(3,0,0)
- #if GTK_CHECK_VERSION(3,12,0)
- gtk_widget_set_margin_start( child, xpadding );
- gtk_widget_set_margin_end( child, xpadding );
- #else
- gtk_widget_set_margin_left( child, xpadding );
- gtk_widget_set_margin_right( child, xpadding );
- #endif
-
- gtk_widget_set_margin_top( child, ypadding );
- gtk_widget_set_margin_bottom( child, ypadding );
- if (hexpand) {
- gtk_widget_set_hexpand(child, TRUE);
- }
- if (centered) {
- gtk_widget_set_halign( child, GTK_ALIGN_CENTER );
- gtk_widget_set_valign( child, GTK_ALIGN_CENTER );
- }
- gtk_grid_attach( GTK_GRID(parent), child, left, top, width, height );
-#else
- GtkAttachOptions xoptions = centered ? static_cast<GtkAttachOptions>(0) : hexpand ? (GTK_EXPAND | GTK_FILL) : GTK_FILL;
- GtkAttachOptions yoptions = centered ? static_cast<GtkAttachOptions>(0) : GTK_FILL;
-
- gtk_table_attach( GTK_TABLE(parent), child, left, left + width, top, top + height, xoptions, yoptions, xpadding, ypadding );
-#endif
-}
-
-} // namespace
-
-G_DEFINE_TYPE(SPColorICCSelector, sp_color_icc_selector, SP_TYPE_COLOR_SELECTOR);
-
-static void sp_color_icc_selector_class_init(SPColorICCSelectorClass *klass)
-{
- static const gchar* nameset[] = {N_("CMS"), 0};
- GObjectClass *object_class = G_OBJECT_CLASS(klass);
- GtkWidgetClass *widget_class = GTK_WIDGET_CLASS(klass);
- SPColorSelectorClass *selector_class = SP_COLOR_SELECTOR_CLASS (klass);
-
- selector_class->name = nameset;
- selector_class->submode_count = 1;
-
- object_class->dispose = sp_color_icc_selector_dispose;
-
- widget_class->show_all = sp_color_icc_selector_show_all;
- widget_class->hide = sp_color_icc_selector_hide;
-}
-
-
-ColorICCSelector::ColorICCSelector( SPColorSelector* csel )
- : ColorSelector( csel ),
- _impl(NULL)
-{
-}
-
-ColorICCSelector::~ColorICCSelector()
-{
- if (_impl)
- {
- delete _impl;
- _impl = 0;
- }
-}
-
-void sp_color_icc_selector_init(SPColorICCSelector *cs)
-{
- SP_COLOR_SELECTOR(cs)->base = new ColorICCSelector( SP_COLOR_SELECTOR(cs) );
-
- if ( SP_COLOR_SELECTOR(cs)->base )
- {
- SP_COLOR_SELECTOR(cs)->base->init();
- }
-}
-
-
-/*
-icSigRgbData
-icSigCmykData
-icSigCmyData
-*/
-#define SPACE_ID_RGB 0
-#define SPACE_ID_CMY 1
-#define SPACE_ID_CMYK 2
-
-
-#if defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
-static cmsUInt16Number* getScratch() {
- // bytes per pixel * input channels * width
- static cmsUInt16Number* scritch = static_cast<cmsUInt16Number*>(g_new(cmsUInt16Number, 4 * 1024));
-
- return scritch;
-}
-
-colorspace::Component::Component() :
- name(),
- tip(),
- scale(1)
-{
-}
-
-colorspace::Component::Component(std::string const &name, std::string const &tip, guint scale) :
- name(name),
- tip(tip),
- scale(scale)
-{
-}
-
-std::vector<colorspace::Component> colorspace::getColorSpaceInfo( uint32_t space )
-{
- static std::map<cmsUInt32Number, std::vector<Component> > sets;
- if (sets.empty())
- {
- sets[cmsSigXYZData].push_back(Component("_X", "X", 2)); // TYPE_XYZ_16
- sets[cmsSigXYZData].push_back(Component("_Y", "Y", 1));
- sets[cmsSigXYZData].push_back(Component("_Z", "Z", 2));
-
- sets[cmsSigLabData].push_back(Component("_L", "L", 100)); // TYPE_Lab_16
- sets[cmsSigLabData].push_back(Component("_a", "a", 256));
- sets[cmsSigLabData].push_back(Component("_b", "b", 256));
-
- //cmsSigLuvData
-
- sets[cmsSigYCbCrData].push_back(Component("_Y", "Y", 1)); // TYPE_YCbCr_16
- sets[cmsSigYCbCrData].push_back(Component("C_b", "Cb", 1));
- sets[cmsSigYCbCrData].push_back(Component("C_r", "Cr", 1));
-
- sets[cmsSigYxyData].push_back(Component("_Y", "Y", 1)); // TYPE_Yxy_16
- sets[cmsSigYxyData].push_back(Component("_x", "x", 1));
- sets[cmsSigYxyData].push_back(Component("y", "y", 1));
-
- sets[cmsSigRgbData].push_back(Component(_("_R:"), _("Red"), 1)); // TYPE_RGB_16
- sets[cmsSigRgbData].push_back(Component(_("_G:"), _("Green"), 1));
- sets[cmsSigRgbData].push_back(Component(_("_B:"), _("Blue"), 1));
-
- sets[cmsSigGrayData].push_back(Component(_("G:"), _("Gray"), 1)); // TYPE_GRAY_16
-
- sets[cmsSigHsvData].push_back(Component(_("_H:"), _("Hue"), 360)); // TYPE_HSV_16
- sets[cmsSigHsvData].push_back(Component(_("_S:"), _("Saturation"), 1));
- sets[cmsSigHsvData].push_back(Component("_V:", "Value", 1));
-
- sets[cmsSigHlsData].push_back(Component(_("_H:"), _("Hue"), 360)); // TYPE_HLS_16
- sets[cmsSigHlsData].push_back(Component(_("_L:"), _("Lightness"), 1));
- sets[cmsSigHlsData].push_back(Component(_("_S:"), _("Saturation"), 1));
-
- sets[cmsSigCmykData].push_back(Component(_("_C:"), _("Cyan"), 1)); // TYPE_CMYK_16
- sets[cmsSigCmykData].push_back(Component(_("_M:"), _("Magenta"), 1));
- sets[cmsSigCmykData].push_back(Component(_("_Y:"), _("Yellow"), 1));
- sets[cmsSigCmykData].push_back(Component(_("_K:"), _("Black"), 1));
-
- sets[cmsSigCmyData].push_back(Component(_("_C:"), _("Cyan"), 1)); // TYPE_CMY_16
- sets[cmsSigCmyData].push_back(Component(_("_M:"), _("Magenta"), 1));
- sets[cmsSigCmyData].push_back(Component(_("_Y:"), _("Yellow"), 1));
-
- for (std::map<cmsUInt32Number, std::vector<Component> >::iterator it = sets.begin(); it != sets.end(); ++it)
- {
- knownColorspaces.insert(it->first);
- maxColorspaceComponentCount = std::max(maxColorspaceComponentCount, it->second.size());
- }
- }
-
- std::vector<Component> target;
-
- if (sets.find(space) != sets.end())
- {
- target = sets[space];
- }
- return target;
-}
-
-
-std::vector<colorspace::Component> colorspace::getColorSpaceInfo( Inkscape::ColorProfile *prof )
-{
- return getColorSpaceInfo( asICColorSpaceSig(prof->getColorSpace()) );
-}
-
-#endif // defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
-
-ColorICCSelectorImpl::ColorICCSelectorImpl(ColorICCSelector *owner) :
- _owner(owner),
- _updating( FALSE ),
- _dragging( FALSE ),
- _fixupNeeded(0),
- _fixupBtn(0),
- _profileSel(0),
- _compUI(),
- _adj(0),
- _slider(0),
- _sbtn(0),
- _label(0)
-#if defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
- ,
- _profileName(),
- _prof(0),
- _profChannelCount(0),
- _profChangedID(0)
-#endif // defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
-{
-}
-
-ColorICCSelectorImpl::~ColorICCSelectorImpl()
-{
- _adj = 0;
- _sbtn = 0;
- _label = 0;
-}
-
-void ColorICCSelector::init()
-{
- if (_impl) delete(_impl);
- _impl = new ColorICCSelectorImpl(this);
- gint row = 0;
-
- _impl->_updating = FALSE;
- _impl->_dragging = FALSE;
-
-#if GTK_CHECK_VERSION(3,0,0)
- GtkWidget *t = gtk_grid_new();
-#else
- GtkWidget *t = gtk_table_new(5, 3, FALSE);
-#endif
-
- gtk_widget_show (t);
- gtk_box_pack_start (GTK_BOX (_csel), t, TRUE, TRUE, 4);
-
- _impl->_compUI.clear();
-
- // Create components
- row = 0;
-
-
- _impl->_fixupBtn = gtk_button_new_with_label(_("Fix"));
- g_signal_connect( G_OBJECT(_impl->_fixupBtn), "clicked", G_CALLBACK(ColorICCSelectorImpl::_fixupHit), (gpointer)_impl );
- gtk_widget_set_sensitive( _impl->_fixupBtn, FALSE );
- gtk_widget_set_tooltip_text( _impl->_fixupBtn, _("Fix RGB fallback to match icc-color() value.") );
- //gtk_misc_set_alignment( GTK_MISC (_impl->_fixupBtn), 1.0, 0.5 );
- gtk_widget_show( _impl->_fixupBtn );
-
- attachToGridOrTable(t, _impl->_fixupBtn, 0, row, 1, 1);
-
- // Combobox and store with 2 columns : label (0) and full name (1)
- GtkListStore *store = gtk_list_store_new (2, G_TYPE_STRING, G_TYPE_STRING);
- _impl->_profileSel = gtk_combo_box_new_with_model (GTK_TREE_MODEL (store));
-
- GtkCellRenderer *renderer = gtk_cell_renderer_text_new ();
- gtk_cell_layout_pack_start(GTK_CELL_LAYOUT(_impl->_profileSel), renderer, TRUE);
- gtk_cell_layout_set_attributes(GTK_CELL_LAYOUT(_impl->_profileSel), renderer, "text", 0, NULL);
-
- GtkTreeIter iter;
- gtk_list_store_append (store, &iter);
- gtk_list_store_set (store, &iter, 0, _("<none>"), 1, _("<none>"), -1);
-
- gtk_widget_show( _impl->_profileSel );
- gtk_combo_box_set_active( GTK_COMBO_BOX(_impl->_profileSel), 0 );
-
- attachToGridOrTable(t, _impl->_profileSel, 1, row, 1, 1);
-
-#if defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
- _impl->_profChangedID = g_signal_connect( G_OBJECT(_impl->_profileSel), "changed", G_CALLBACK(ColorICCSelectorImpl::_profileSelected), (gpointer)_impl );
-#else
- gtk_widget_set_sensitive( _impl->_profileSel, false );
-#endif // defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
-
-
- row++;
-
- // populate the data for colorspaces and channels:
-#if defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
- std::vector<colorspace::Component> things = colorspace::getColorSpaceInfo( cmsSigRgbData );
-#endif // defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
-
- for ( size_t i = 0; i < maxColorspaceComponentCount; i++ ) {
-#if defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
- if (i < things.size()) {
- _impl->_compUI.push_back(ComponentUI(things[i]));
- } else {
- _impl->_compUI.push_back(ComponentUI());
- }
-
- std::string labelStr = (i < things.size()) ? things[i].name.c_str() : "";
-#else
- _impl->_compUI.push_back(ComponentUI());
-
- std::string labelStr = ".";
-#endif
-
- _impl->_compUI[i]._label = gtk_label_new_with_mnemonic( labelStr.c_str() );
- gtk_misc_set_alignment( GTK_MISC (_impl->_compUI[i]._label), 1.0, 0.5 );
- gtk_widget_show( _impl->_compUI[i]._label );
-
- attachToGridOrTable(t, _impl->_compUI[i]._label, 0, row, 1, 1);
-
- // Adjustment
- guint scaleValue = _impl->_compUI[i]._component.scale;
- gdouble step = static_cast<gdouble>(scaleValue) / 100.0;
- gdouble page = static_cast<gdouble>(scaleValue) / 10.0;
- gint digits = (step > 0.9) ? 0 : 2;
- _impl->_compUI[i]._adj = GTK_ADJUSTMENT( gtk_adjustment_new( 0.0, 0.0, scaleValue, step, page, page ) );
-
- // Slider
- _impl->_compUI[i]._slider = sp_color_slider_new( _impl->_compUI[i]._adj );
-#if defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
- gtk_widget_set_tooltip_text( _impl->_compUI[i]._slider, (i < things.size()) ? things[i].tip.c_str() : "" );
-#else
- gtk_widget_set_tooltip_text( _impl->_compUI[i]._slider, "." );
-#endif // defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
- gtk_widget_show( _impl->_compUI[i]._slider );
-
- attachToGridOrTable(t, _impl->_compUI[i]._slider, 1, row, 1, 1, true);
-
- _impl->_compUI[i]._btn = gtk_spin_button_new( _impl->_compUI[i]._adj, step, digits );
-#if defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
- gtk_widget_set_tooltip_text( _impl->_compUI[i]._btn, (i < things.size()) ? things[i].tip.c_str() : "" );
-#else
- gtk_widget_set_tooltip_text( _impl->_compUI[i]._btn, "." );
-#endif // defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
- sp_dialog_defocus_on_enter( _impl->_compUI[i]._btn );
- gtk_label_set_mnemonic_widget( GTK_LABEL(_impl->_compUI[i]._label), _impl->_compUI[i]._btn );
- gtk_widget_show( _impl->_compUI[i]._btn );
-
- attachToGridOrTable(t, _impl->_compUI[i]._btn, 2, row, 1, 1, false, true);
-
- _impl->_compUI[i]._map = g_new( guchar, 4 * 1024 );
- memset( _impl->_compUI[i]._map, 0x0ff, 1024 * 4 );
-
-
- // Signals
- g_signal_connect( G_OBJECT( _impl->_compUI[i]._adj ), "value_changed", G_CALLBACK( ColorICCSelectorImpl::_adjustmentChanged ), _csel );
-
- g_signal_connect( G_OBJECT( _impl->_compUI[i]._slider ), "grabbed", G_CALLBACK( ColorICCSelectorImpl::_sliderGrabbed ), _csel );
- g_signal_connect( G_OBJECT( _impl->_compUI[i]._slider ), "released", G_CALLBACK( ColorICCSelectorImpl::_sliderReleased ), _csel );
- g_signal_connect( G_OBJECT( _impl->_compUI[i]._slider ), "changed", G_CALLBACK( ColorICCSelectorImpl::_sliderChanged ), _csel );
-
- row++;
- }
-
- // Label
- _impl->_label = gtk_label_new_with_mnemonic(_("_A:"));
- gtk_misc_set_alignment(GTK_MISC(_impl->_label), 1.0, 0.5);
- gtk_widget_show(_impl->_label);
-
- attachToGridOrTable(t, _impl->_label, 0, row, 1, 1);
-
- // Adjustment
- _impl->_adj = GTK_ADJUSTMENT(gtk_adjustment_new(0.0, 0.0, 255.0, 1.0, 10.0, 10.0));
-
- // Slider
- _impl->_slider = sp_color_slider_new(_impl->_adj);
- gtk_widget_set_tooltip_text(_impl->_slider, _("Alpha (opacity)"));
- gtk_widget_show(_impl->_slider);
-
- attachToGridOrTable(t, _impl->_slider, 1, row, 1, 1, true);
-
- sp_color_slider_set_colors( SP_COLOR_SLIDER( _impl->_slider ),
- SP_RGBA32_F_COMPOSE( 1.0, 1.0, 1.0, 0.0 ),
- SP_RGBA32_F_COMPOSE( 1.0, 1.0, 1.0, 0.5 ),
- SP_RGBA32_F_COMPOSE( 1.0, 1.0, 1.0, 1.0 ) );
-
-
- // Spinbutton
- _impl->_sbtn = gtk_spin_button_new(GTK_ADJUSTMENT(_impl->_adj), 1.0, 0);
- gtk_widget_set_tooltip_text(_impl->_sbtn, _("Alpha (opacity)"));
- sp_dialog_defocus_on_enter(_impl->_sbtn);
- gtk_label_set_mnemonic_widget(GTK_LABEL(_impl->_label), _impl->_sbtn);
- gtk_widget_show(_impl->_sbtn);
-
- attachToGridOrTable(t, _impl->_sbtn, 2, row, 1, 1, false, true);
-
- // Signals
- g_signal_connect(G_OBJECT(_impl->_adj), "value_changed", G_CALLBACK(ColorICCSelectorImpl::_adjustmentChanged), _csel);
-
- g_signal_connect(G_OBJECT(_impl->_slider), "grabbed", G_CALLBACK(ColorICCSelectorImpl::_sliderGrabbed), _csel);
- g_signal_connect(G_OBJECT(_impl->_slider), "released", G_CALLBACK(ColorICCSelectorImpl::_sliderReleased), _csel);
- g_signal_connect(G_OBJECT(_impl->_slider), "changed", G_CALLBACK(ColorICCSelectorImpl::_sliderChanged), _csel);
-}
-
-static void sp_color_icc_selector_dispose(GObject *object)
-{
- if (G_OBJECT_CLASS(sp_color_icc_selector_parent_class)->dispose) {
- G_OBJECT_CLASS(sp_color_icc_selector_parent_class)->dispose(object);
- }
-}
-
-static void
-sp_color_icc_selector_show_all (GtkWidget *widget)
-{
- gtk_widget_show (widget);
-}
-
-static void sp_color_icc_selector_hide(GtkWidget *widget)
-{
- gtk_widget_hide(widget);
-}
-
-GtkWidget *
-sp_color_icc_selector_new (void)
-{
- SPColorICCSelector *csel;
-
- csel = static_cast<SPColorICCSelector*>(g_object_new (SP_TYPE_COLOR_ICC_SELECTOR, NULL));
-
- return GTK_WIDGET (csel);
-}
-
-
-void ColorICCSelectorImpl::_fixupHit( GtkWidget* /*src*/, gpointer data )
-{
- ColorICCSelectorImpl* self = reinterpret_cast<ColorICCSelectorImpl*>(data);
- gtk_widget_set_sensitive( self->_fixupBtn, FALSE );
- self->_adjustmentChanged( self->_compUI[0]._adj, SP_COLOR_ICC_SELECTOR(self->_owner->_csel) );
-}
-
-#if defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
-void ColorICCSelectorImpl::_profileSelected( GtkWidget* /*src*/, gpointer data )
-{
- ColorICCSelectorImpl* self = reinterpret_cast<ColorICCSelectorImpl*>(data);
-
- GtkTreeIter iter;
- if (gtk_combo_box_get_active_iter(GTK_COMBO_BOX(self->_profileSel), &iter)) {
- GtkTreeModel *store = gtk_combo_box_get_model(GTK_COMBO_BOX(self->_profileSel));
- gchar* name = 0;
-
- gtk_tree_model_get(store, &iter, 1, &name, -1);
- self->_switchToProfile( name );
- gtk_widget_set_tooltip_text(self->_profileSel, name );
-
- if ( name ) {
- g_free( name );
- }
- }
-}
-#endif // defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
-
-#if defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
-void ColorICCSelectorImpl::_switchToProfile( gchar const* name )
-{
- bool dirty = false;
- SPColor tmp( _owner->_color );
-
- if ( name ) {
- if ( tmp.icc && tmp.icc->colorProfile == name ) {
-#ifdef DEBUG_LCMS
- g_message("Already at name [%s]", name );
-#endif // DEBUG_LCMS
- } else {
-#ifdef DEBUG_LCMS
- g_message("Need to switch to profile [%s]", name );
-#endif // DEBUG_LCMS
- if ( tmp.icc ) {
- tmp.icc->colors.clear();
- } else {
- tmp.icc = new SVGICCColor();
- }
- tmp.icc->colorProfile = name;
- Inkscape::ColorProfile* newProf = SP_ACTIVE_DOCUMENT->profileManager->find(name);
- if ( newProf ) {
- cmsHTRANSFORM trans = newProf->getTransfFromSRGB8();
- if ( trans ) {
- guint32 val = _owner->_color.toRGBA32(0);
- guchar pre[4] = {
- static_cast<guchar>(SP_RGBA32_R_U(val)),
- static_cast<guchar>(SP_RGBA32_G_U(val)),
- static_cast<guchar>(SP_RGBA32_B_U(val)),
- 255};
-#ifdef DEBUG_LCMS
- g_message("Shoving in [%02x] [%02x] [%02x]", pre[0], pre[1], pre[2]);
-#endif // DEBUG_LCMS
- cmsUInt16Number post[4] = {0,0,0,0};
- cmsDoTransform( trans, pre, post, 1 );
-#ifdef DEBUG_LCMS
- g_message("got on out [%04x] [%04x] [%04x] [%04x]", post[0], post[1], post[2], post[3]);
-#endif // DEBUG_LCMS
-#if HAVE_LIBLCMS1
- guint count = _cmsChannelsOf( asICColorSpaceSig(newProf->getColorSpace()) );
-#elif HAVE_LIBLCMS2
- guint count = cmsChannelsOf( asICColorSpaceSig(newProf->getColorSpace()) );
-#endif
-
- std::vector<colorspace::Component> things = colorspace::getColorSpaceInfo(asICColorSpaceSig(newProf->getColorSpace()));
-
- for ( guint i = 0; i < count; i++ ) {
- gdouble val = (((gdouble)post[i])/65535.0) * (gdouble)((i < things.size()) ? things[i].scale : 1);
-#ifdef DEBUG_LCMS
- g_message(" scaled %d by %d to be %f", i, ((i < things.size()) ? things[i].scale : 1), val);
-#endif // DEBUG_LCMS
- tmp.icc->colors.push_back(val);
- }
- cmsHTRANSFORM retrans = newProf->getTransfToSRGB8();
- if ( retrans ) {
- cmsDoTransform( retrans, post, pre, 1 );
-#ifdef DEBUG_LCMS
- g_message(" back out [%02x] [%02x] [%02x]", pre[0], pre[1], pre[2]);
-#endif // DEBUG_LCMS
- tmp.set(SP_RGBA32_U_COMPOSE(pre[0], pre[1], pre[2], 0xff));
- }
- }
- }
- dirty = true;
- }
- } else {
-#ifdef DEBUG_LCMS
- g_message("NUKE THE ICC");
-#endif // DEBUG_LCMS
- if ( tmp.icc ) {
- delete tmp.icc;
- tmp.icc = 0;
- dirty = true;
- _fixupHit( 0, this );
- } else {
-#ifdef DEBUG_LCMS
- g_message("No icc to nuke");
-#endif // DEBUG_LCMS
- }
- }
-
- if ( dirty ) {
-#ifdef DEBUG_LCMS
- g_message("+----------------");
- g_message("+ new color is [%s]", tmp.toString().c_str());
-#endif // DEBUG_LCMS
- _setProfile( tmp.icc );
- //_adjustmentChanged( _compUI[0]._adj, SP_COLOR_ICC_SELECTOR(_csel) );
- _owner->setColorAlpha( tmp, _owner->_alpha, true );
-#ifdef DEBUG_LCMS
- g_message("+_________________");
-#endif // DEBUG_LCMS
- }
-}
-#endif // defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
-
-#if defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
-void ColorICCSelectorImpl::_profilesChanged( std::string const & name )
-{
- GtkComboBox* combo = GTK_COMBO_BOX(_profileSel);
-
- g_signal_handler_block( G_OBJECT(_profileSel), _profChangedID );
-
- GtkListStore *store = GTK_LIST_STORE(gtk_combo_box_get_model(combo));
- gtk_list_store_clear(store);
-
- GtkTreeIter iter;
- gtk_list_store_append (store, &iter);
- gtk_list_store_set(store, &iter, 0, _("<none>"), 1, _("<none>"), -1);
-
- gtk_combo_box_set_active( combo, 0 );
-
- int index = 1;
- const GSList *current = SP_ACTIVE_DOCUMENT->getResourceList( "iccprofile" );
- while ( current ) {
- SPObject* obj = SP_OBJECT(current->data);
- Inkscape::ColorProfile* prof = reinterpret_cast<Inkscape::ColorProfile*>(obj);
-
- gtk_list_store_append (store, &iter);
- gtk_list_store_set(store, &iter, 0, gr_ellipsize_text(prof->name, 25).c_str(), 1, prof->name, -1);
-
- if ( name == prof->name ) {
- gtk_combo_box_set_active( combo, index );
- gtk_widget_set_tooltip_text(_profileSel, prof->name );
- }
-
- index++;
- current = g_slist_next(current);
- }
-
- g_signal_handler_unblock( G_OBJECT(_profileSel), _profChangedID );
-}
-#else
-void ColorICCSelectorImpl::_profilesChanged( std::string const & /*name*/ )
-{
-}
-#endif // defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
-
-// Helpers for setting color value
-
-void ColorICCSelector::_colorChanged()
-{
- _impl->_updating = TRUE;
- //sp_color_icc_set_color( SP_COLOR_ICC( _icc ), &color );
-
-#ifdef DEBUG_LCMS
- g_message( "/^^^^^^^^^ %p::_colorChanged(%08x:%s)", this,
- _color.toRGBA32(_alpha), ( (_color.icc) ? _color.icc->colorProfile.c_str(): "<null>" )
- );
-#endif // DEBUG_LCMS
-
-#ifdef DEBUG_LCMS
- g_message("FLIPPIES!!!! %p '%s'", _color.icc, (_color.icc ? _color.icc->colorProfile.c_str():"<null>"));
-#endif // DEBUG_LCMS
-
- _impl->_profilesChanged( (_color.icc) ? _color.icc->colorProfile : std::string("") );
- ColorScales::setScaled( _impl->_adj, _alpha );
-
-#if defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
- _impl->_setProfile( _color.icc );
- _impl->_fixupNeeded = 0;
- gtk_widget_set_sensitive( _impl->_fixupBtn, FALSE );
-
- if (_impl->_prof) {
- if (_impl->_prof->getTransfToSRGB8() ) {
- cmsUInt16Number tmp[4];
- for ( guint i = 0; i < _impl->_profChannelCount; i++ ) {
- gdouble val = 0.0;
- if ( _color.icc->colors.size() > i ) {
- if ( _impl->_compUI[i]._component.scale == 256 ) {
- val = (_color.icc->colors[i] + 128.0) / static_cast<gdouble>(_impl->_compUI[i]._component.scale);
- } else {
- val = _color.icc->colors[i] / static_cast<gdouble>(_impl->_compUI[i]._component.scale);
- }
- }
- tmp[i] = val * 0x0ffff;
- }
- guchar post[4] = {0,0,0,0};
- cmsHTRANSFORM trans = _impl->_prof->getTransfToSRGB8();
- if ( trans ) {
- cmsDoTransform( trans, tmp, post, 1 );
- guint32 other = SP_RGBA32_U_COMPOSE(post[0], post[1], post[2], 255 );
- if ( other != _color.toRGBA32(255) ) {
- _impl->_fixupNeeded = other;
- gtk_widget_set_sensitive( _impl->_fixupBtn, TRUE );
-#ifdef DEBUG_LCMS
- g_message("Color needs to change 0x%06x to 0x%06x", _color.toRGBA32(255) >> 8, other >> 8 );
-#endif // DEBUG_LCMS
- }
- }
- }
- }
-#else
- //(void)color;
-#endif // defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
- _impl->_updateSliders( -1 );
-
-
- _impl->_updating = FALSE;
-#ifdef DEBUG_LCMS
- g_message( "\\_________ %p::_colorChanged()", this );
-#endif // DEBUG_LCMS
-}
-
-#if defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
-void ColorICCSelectorImpl::_setProfile( SVGICCColor* profile )
-{
-#ifdef DEBUG_LCMS
- g_message( "/^^^^^^^^^ %p::_setProfile(%s)", this,
- ( (profile) ? profile->colorProfile.c_str() : "<null>")
- );
-#endif // DEBUG_LCMS
- bool profChanged = false;
- if ( _prof && (!profile || (_profileName != profile->colorProfile) ) ) {
- // Need to clear out the prior one
- profChanged = true;
- _profileName.clear();
- _prof = 0;
- _profChannelCount = 0;
- } else if ( profile && !_prof ) {
- profChanged = true;
- }
-
- for ( size_t i = 0; i < _compUI.size(); i++ ) {
- gtk_widget_hide( _compUI[i]._label );
- gtk_widget_hide( _compUI[i]._slider );
- gtk_widget_hide( _compUI[i]._btn );
- }
-
- if ( profile ) {
- _prof = SP_ACTIVE_DOCUMENT->profileManager->find(profile->colorProfile.c_str());
- if ( _prof && (asICColorProfileClassSig(_prof->getProfileClass()) != cmsSigNamedColorClass) ) {
-#if HAVE_LIBLCMS1
- _profChannelCount = _cmsChannelsOf( asICColorSpaceSig(_prof->getColorSpace()) );
-#elif HAVE_LIBLCMS2
- _profChannelCount = cmsChannelsOf( asICColorSpaceSig(_prof->getColorSpace()) );
-#endif
-
- if ( profChanged ) {
- std::vector<colorspace::Component> things = colorspace::getColorSpaceInfo(asICColorSpaceSig(_prof->getColorSpace()));
- for (size_t i = 0; (i < things.size()) && (i < _profChannelCount); ++i)
- {
- _compUI[i]._component = things[i];
- }
-
- for ( guint i = 0; i < _profChannelCount; i++ ) {
- gtk_label_set_text_with_mnemonic( GTK_LABEL(_compUI[i]._label), (i < things.size()) ? things[i].name.c_str() : "");
-
- gtk_widget_set_tooltip_text( _compUI[i]._slider, (i < things.size()) ? things[i].tip.c_str() : "" );
- gtk_widget_set_tooltip_text( _compUI[i]._btn, (i < things.size()) ? things[i].tip.c_str() : "" );
-
- sp_color_slider_set_colors( SP_COLOR_SLIDER(_compUI[i]._slider),
- SPColor(0.0, 0.0, 0.0).toRGBA32(0xff),
- SPColor(0.5, 0.5, 0.5).toRGBA32(0xff),
- SPColor(1.0, 1.0, 1.0).toRGBA32(0xff) );
-/*
- _compUI[i]._adj = GTK_ADJUSTMENT( gtk_adjustment_new( val, 0.0, _fooScales[i], step, page, page ) );
- g_signal_connect( G_OBJECT( _compUI[i]._adj ), "value_changed", G_CALLBACK( _adjustmentChanged ), _csel );
-
- sp_color_slider_set_adjustment( SP_COLOR_SLIDER(_compUI[i]._slider), _compUI[i]._adj );
- gtk_spin_button_set_adjustment( GTK_SPIN_BUTTON(_compUI[i]._btn), _compUI[i]._adj );
- gtk_spin_button_set_digits( GTK_SPIN_BUTTON(_compUI[i]._btn), digits );
-*/
- gtk_widget_show( _compUI[i]._label );
- gtk_widget_show( _compUI[i]._slider );
- gtk_widget_show( _compUI[i]._btn );
- //gtk_adjustment_set_value( _compUI[i]._adj, 0.0 );
- //gtk_adjustment_set_value( _compUI[i]._adj, val );
- }
- for ( size_t i = _profChannelCount; i < _compUI.size(); i++ ) {
- gtk_widget_hide( _compUI[i]._label );
- gtk_widget_hide( _compUI[i]._slider );
- gtk_widget_hide( _compUI[i]._btn );
- }
- }
- } else {
- // Give up for now on named colors
- _prof = 0;
- }
- }
-
-#ifdef DEBUG_LCMS
- g_message( "\\_________ %p::_setProfile()", this );
-#endif // DEBUG_LCMS
-}
-#endif // defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
-
-void ColorICCSelectorImpl::_updateSliders( gint ignore )
-{
-#if defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
- if ( _owner->_color.icc )
- {
- for ( guint i = 0; i < _profChannelCount; i++ ) {
- gdouble val = 0.0;
- if ( _owner->_color.icc->colors.size() > i ) {
- if ( _compUI[i]._component.scale == 256 ) {
- val = (_owner->_color.icc->colors[i] + 128.0) / static_cast<gdouble>(_compUI[i]._component.scale);
- } else {
- val = _owner->_color.icc->colors[i] / static_cast<gdouble>(_compUI[i]._component.scale);
- }
- }
- gtk_adjustment_set_value( _compUI[i]._adj, val );
- }
-
- if ( _prof ) {
- if ( _prof->getTransfToSRGB8() ) {
- for ( guint i = 0; i < _profChannelCount; i++ ) {
- if ( static_cast<gint>(i) != ignore ) {
- cmsUInt16Number* scratch = getScratch();
- cmsUInt16Number filler[4] = {0, 0, 0, 0};
- for ( guint j = 0; j < _profChannelCount; j++ ) {
- filler[j] = 0x0ffff * ColorScales::getScaled( _compUI[j]._adj );
- }
-
- cmsUInt16Number* p = scratch;
- for ( guint x = 0; x < 1024; x++ ) {
- for ( guint j = 0; j < _profChannelCount; j++ ) {
- if ( j == i ) {
- *p++ = x * 0x0ffff / 1024;
- } else {
- *p++ = filler[j];
- }
- }
- }
-
- cmsHTRANSFORM trans = _prof->getTransfToSRGB8();
- if ( trans ) {
- cmsDoTransform( trans, scratch, _compUI[i]._map, 1024 );
- sp_color_slider_set_map( SP_COLOR_SLIDER(_compUI[i]._slider), _compUI[i]._map );
- }
- }
- }
- }
- }
- }
-#else
- (void)ignore;
-#endif // defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
-
- guint32 start = _owner->_color.toRGBA32( 0x00 );
- guint32 mid = _owner->_color.toRGBA32( 0x7f );
- guint32 end = _owner->_color.toRGBA32( 0xff );
-
- sp_color_slider_set_colors( SP_COLOR_SLIDER(_slider), start, mid, end );
-}
-
-
-void ColorICCSelectorImpl::_adjustmentChanged( GtkAdjustment *adjustment, SPColorICCSelector *cs )
-{
-// // TODO check this. It looks questionable:
-// // if a value is entered between 0 and 1 exclusive, normalize it to (int) 0..255 or 0..100
-// if (adjustment->value > 0.0 && adjustment->value < 1.0) {
-// gtk_adjustment_set_value( adjustment, floor ((adjustment->value) * adjustment->upper + 0.5) );
-// }
-
-#ifdef DEBUG_LCMS
- g_message( "/^^^^^^^^^ %p::_adjustmentChanged()", cs );
-#endif // DEBUG_LCMS
-
- ColorICCSelector* iccSelector = static_cast<ColorICCSelector*>(SP_COLOR_SELECTOR(cs)->base);
- if (iccSelector->_impl->_updating) {
- return;
- }
-
- iccSelector->_impl->_updating = TRUE;
-
- gint match = -1;
-
- SPColor newColor( iccSelector->_color );
- gfloat scaled = ColorScales::getScaled( iccSelector->_impl->_adj );
- if ( iccSelector->_impl->_adj == adjustment ) {
-#ifdef DEBUG_LCMS
- g_message("ALPHA");
-#endif // DEBUG_LCMS
- } else {
-#if defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
- for ( size_t i = 0; i < iccSelector->_impl->_compUI.size(); i++ ) {
- if ( iccSelector->_impl->_compUI[i]._adj == adjustment ) {
- match = i;
- break;
- }
- }
- if ( match >= 0 ) {
-#ifdef DEBUG_LCMS
- g_message(" channel %d", match );
-#endif // DEBUG_LCMS
- }
-
-
- cmsUInt16Number tmp[4];
- for ( guint i = 0; i < 4; i++ ) {
- tmp[i] = ColorScales::getScaled( iccSelector->_impl->_compUI[i]._adj ) * 0x0ffff;
- }
- guchar post[4] = {0,0,0,0};
-
- cmsHTRANSFORM trans = iccSelector->_impl->_prof->getTransfToSRGB8();
- if ( trans ) {
- cmsDoTransform( trans, tmp, post, 1 );
- }
-
- SPColor other( SP_RGBA32_U_COMPOSE(post[0], post[1], post[2], 255) );
- other.icc = new SVGICCColor();
- if ( iccSelector->_color.icc ) {
- other.icc->colorProfile = iccSelector->_color.icc->colorProfile;
- }
-
- guint32 prior = iccSelector->_color.toRGBA32(255);
- guint32 newer = other.toRGBA32(255);
-
- if ( prior != newer ) {
-#ifdef DEBUG_LCMS
- g_message("Transformed color from 0x%08x to 0x%08x", prior, newer );
- g_message(" ~~~~ FLIP");
-#endif // DEBUG_LCMS
- newColor = other;
- newColor.icc->colors.clear();
- for ( guint i = 0; i < iccSelector->_impl->_profChannelCount; i++ ) {
- gdouble val = ColorScales::getScaled( iccSelector->_impl->_compUI[i]._adj );
- val *= iccSelector->_impl->_compUI[i]._component.scale;
- if ( iccSelector->_impl->_compUI[i]._component.scale == 256 ) {
- val -= 128;
- }
- newColor.icc->colors.push_back( val );
- }
- }
-#endif // defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
- }
- iccSelector->_updateInternals( newColor, scaled, iccSelector->_impl->_dragging );
- iccSelector->_impl->_updateSliders( match );
-
- iccSelector->_impl->_updating = FALSE;
-#ifdef DEBUG_LCMS
- g_message( "\\_________ %p::_adjustmentChanged()", cs );
-#endif // DEBUG_LCMS
-}
-
-void ColorICCSelectorImpl::_sliderGrabbed( SPColorSlider * /*slider*/, SPColorICCSelector * /*cs*/ )
-{
-// ColorICCSelector* iccSelector = dynamic_cast<ColorICCSelector*>(SP_COLOR_SELECTOR(cs)->base);
-// if (!iccSelector->_dragging) {
-// iccSelector->_dragging = TRUE;
-// iccSelector->_grabbed();
-// iccSelector->_updateInternals( iccSelector->_color, ColorScales::getScaled( iccSelector->_impl->_adj ), iccSelector->_dragging );
-// }
-}
-
-void ColorICCSelectorImpl::_sliderReleased( SPColorSlider * /*slider*/, SPColorICCSelector * /*cs*/ )
-{
-// ColorICCSelector* iccSelector = dynamic_cast<ColorICCSelector*>(SP_COLOR_SELECTOR(cs)->base);
-// if (iccSelector->_dragging) {
-// iccSelector->_dragging = FALSE;
-// iccSelector->_released();
-// iccSelector->_updateInternals( iccSelector->_color, ColorScales::getScaled( iccSelector->_adj ), iccSelector->_dragging );
-// }
-}
-
-#ifdef DEBUG_LCMS
-void ColorICCSelectorImpl::_sliderChanged( SPColorSlider *slider, SPColorICCSelector *cs )
-#else
-void ColorICCSelectorImpl::_sliderChanged( SPColorSlider * /*slider*/, SPColorICCSelector * /*cs*/ )
-#endif // DEBUG_LCMS
-{
-#ifdef DEBUG_LCMS
- g_message("Changed %p and %p", slider, cs );
-#endif // DEBUG_LCMS
-// ColorICCSelector* iccSelector = dynamic_cast<ColorICCSelector*>(SP_COLOR_SELECTOR(cs)->base);
-
-// iccSelector->_updateInternals( iccSelector->_color, ColorScales::getScaled( iccSelector->_adj ), iccSelector->_dragging );
-}
-
-
-/*
- Local Variables:
- mode:c++
- c-file-style:"stroustrup"
- c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))
- indent-tabs-mode:nil
- fill-column:99
- End:
-*/
-// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:fileencoding=utf-8:textwidth=99 :
diff --git a/src/widgets/sp-color-icc-selector.h b/src/widgets/sp-color-icc-selector.h
deleted file mode 100644
index 6cdaff639..000000000
--- a/src/widgets/sp-color-icc-selector.h
+++ /dev/null
@@ -1,72 +0,0 @@
-#ifndef SEEN_SP_COLOR_ICC_SELECTOR_H
-#define SEEN_SP_COLOR_ICC_SELECTOR_H
-
-#include <glib.h>
-#include "sp-color-selector.h"
-
-namespace Inkscape {
-class ColorProfile;
-}
-
-struct SPColorICCSelector;
-struct SPColorICCSelectorClass;
-
-class ColorICCSelectorImpl;
-
-class ColorICCSelector: public ColorSelector
-{
-public:
- ColorICCSelector( SPColorSelector* csel );
- virtual ~ColorICCSelector();
-
- virtual void init();
-
-protected:
- virtual void _colorChanged();
-
- void _recalcColor( gboolean changing );
-
-private:
- friend class ColorICCSelectorImpl;
-
- // By default, disallow copy constructor and assignment operator
- ColorICCSelector( const ColorICCSelector& obj );
- ColorICCSelector& operator=( const ColorICCSelector& obj );
-
- ColorICCSelectorImpl *_impl;
-};
-
-
-
-#define SP_TYPE_COLOR_ICC_SELECTOR (sp_color_icc_selector_get_type())
-#define SP_COLOR_ICC_SELECTOR(o) (G_TYPE_CHECK_INSTANCE_CAST((o), SP_TYPE_COLOR_ICC_SELECTOR, SPColorICCSelector))
-#define SP_COLOR_ICC_SELECTOR_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), SP_TYPE_COLOR_ICC_SELECTOR, SPColorICCSelectorClass))
-#define SP_IS_COLOR_ICC_SELECTOR(o) (G_TYPE_CHECK_INSTANCE_TYPE((o), SP_TYPE_COLOR_ICC_SELECTOR))
-#define SP_IS_COLOR_ICC_SELECTOR_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE((k), SP_TYPE_COLOR_ICC_SELECTOR))
-
-struct SPColorICCSelector {
- SPColorSelector parent;
-};
-
-struct SPColorICCSelectorClass {
- SPColorSelectorClass parent_class;
-};
-
-GType sp_color_icc_selector_get_type(void);
-
-GtkWidget *sp_color_icc_selector_new(void);
-
-
-
-#endif // SEEN_SP_COLOR_ICC_SELECTOR_H
-
-/*
- Local Variables:
- mode:c++
- c-file-style:"stroustrup"
- c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))
- indent-tabs-mode:nil
- fill-column:99
- End:
-*/
-// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:fileencoding=utf-8:textwidth=99 :
diff --git a/src/widgets/sp-color-notebook.cpp b/src/widgets/sp-color-notebook.cpp
deleted file mode 100644
index c7fa96efd..000000000
--- a/src/widgets/sp-color-notebook.cpp
+++ /dev/null
@@ -1,826 +0,0 @@
-/*
- * A notebook with RGB, CMYK, CMS, HSL, and Wheel pages
- *
- * Author:
- * Lauris Kaplinski <lauris@kaplinski.com>
- * bulia byak <buliabyak@users.sf.net>
- *
- * Copyright (C) 2001-2002 Lauris Kaplinski
- *
- * This code is in public domain
- */
-
-#undef SPCS_PREVIEW
-#define noDUMP_CHANGE_INFO
-
-#ifdef HAVE_CONFIG_H
-# include "config.h"
-#endif
-
-#include "widgets/icon.h"
-#include <cstring>
-#include <string>
-#include <cstdlib>
-#include <cstddef>
-#include <gtk/gtk.h>
-#include <glibmm/i18n.h>
-
-#include "ui/dialog-events.h"
-#include "../preferences.h"
-#include "sp-color-notebook.h"
-#include "spw-utilities.h"
-#include "sp-color-scales.h"
-#include "sp-color-icc-selector.h"
-#include "sp-color-wheel-selector.h"
-#include "svg/svg-icc-color.h"
-#include "../inkscape.h"
-#include "../document.h"
-#include "../profile-manager.h"
-#include "color-profile.h"
-#include "cms-system.h"
-#include "ui/tools-switch.h"
-#include "ui/tools/tool-base.h"
-
-using Inkscape::CMSSystem;
-
-struct SPColorNotebookTracker {
- const gchar* name;
- const gchar* className;
- GType type;
- guint submode;
- gboolean enabledFull;
- gboolean enabledBrief;
- SPColorNotebook *backPointer;
-};
-
-static void sp_color_notebook_dispose(GObject *object);
-
-static void sp_color_notebook_show_all (GtkWidget *widget);
-static void sp_color_notebook_hide(GtkWidget *widget);
-
-#define XPAD 4
-#define YPAD 1
-
-G_DEFINE_TYPE(SPColorNotebook, sp_color_notebook, SP_TYPE_COLOR_SELECTOR);
-
-static void sp_color_notebook_class_init(SPColorNotebookClass *klass)
-{
- GObjectClass *object_class = reinterpret_cast<GObjectClass *>(klass);
- GtkWidgetClass *widget_class = reinterpret_cast<GtkWidgetClass *>(klass);
-
- object_class->dispose = sp_color_notebook_dispose;
-
- widget_class->show_all = sp_color_notebook_show_all;
- widget_class->hide = sp_color_notebook_hide;
-}
-
-static void
-sp_color_notebook_switch_page(GtkNotebook *notebook,
- GtkWidget *page,
- guint page_num,
- SPColorNotebook *colorbook)
-{
- if ( colorbook )
- {
- ColorNotebook* nb = dynamic_cast<ColorNotebook*>(SP_COLOR_SELECTOR(colorbook)->base);
- nb->switchPage( notebook, page, page_num );
-
- // remember the page we switched to
- Inkscape::Preferences *prefs = Inkscape::Preferences::get();
- prefs->setInt("/colorselector/page", page_num);
- }
-}
-
-void ColorNotebook::switchPage(GtkNotebook*,
- GtkWidget*,
- guint page_num)
-{
- SPColorSelector* csel;
- GtkWidget* widget;
-
- if ( gtk_notebook_get_current_page (GTK_NOTEBOOK (_book)) >= 0 )
- {
- csel = getCurrentSelector();
- csel->base->getColorAlpha(_color, _alpha);
- }
- widget = gtk_notebook_get_nth_page (GTK_NOTEBOOK (_book), page_num);
- if ( widget && SP_IS_COLOR_SELECTOR(widget) )
- {
- csel = SP_COLOR_SELECTOR (widget);
- csel->base->setColorAlpha( _color, _alpha );
-
- // Temporary workaround to undo a spurious GRABBED
- _released();
- }
-}
-
-static gint sp_color_notebook_menu_handler( GtkWidget *widget, GdkEvent *event )
-{
- if (event->type == GDK_BUTTON_PRESS)
- {
- SPColorSelector* csel = SP_COLOR_SELECTOR(widget);
- (dynamic_cast<ColorNotebook*>(csel->base))->menuHandler( event );
-
- /* Tell calling code that we have handled this event; the buck
- * stops here. */
- return TRUE;
- }
-
- /* Tell calling code that we have not handled this event; pass it on. */
- return FALSE;
-}
-
-gint ColorNotebook::menuHandler( GdkEvent* event )
-{
- GdkEventButton *bevent = (GdkEventButton *) event;
- gtk_menu_popup (GTK_MENU( _popup ), NULL, NULL, NULL, NULL,
- bevent->button, bevent->time);
- return TRUE;
-}
-
-static void sp_color_notebook_menuitem_response (GtkMenuItem *menuitem, gpointer user_data)
-{
- gboolean active = gtk_check_menu_item_get_active (GTK_CHECK_MENU_ITEM (menuitem));
- SPColorNotebookTracker *entry = reinterpret_cast< SPColorNotebookTracker* > (user_data);
- if ( entry )
- {
- if ( active )
- {
- (dynamic_cast<ColorNotebook*>(SP_COLOR_SELECTOR(entry->backPointer)->base))->addPage(entry->type, entry->submode);
- }
- else
- {
- (dynamic_cast<ColorNotebook*>(SP_COLOR_SELECTOR(entry->backPointer)->base))->removePage(entry->type, entry->submode);
- }
- }
-}
-
-static void
-sp_color_notebook_init (SPColorNotebook *colorbook)
-{
- SP_COLOR_SELECTOR(colorbook)->base = new ColorNotebook( SP_COLOR_SELECTOR(colorbook) );
-
- if ( SP_COLOR_SELECTOR(colorbook)->base )
- {
- SP_COLOR_SELECTOR(colorbook)->base->init();
- }
-}
-
-void ColorNotebook::init()
-{
- guint row = 0;
- guint i = 0;
- guint j = 0;
- GType *selector_types = 0;
- guint selector_type_count = 0;
-
- /* tempory hardcoding to get types loaded */
- SP_TYPE_COLOR_SCALES;
- SP_TYPE_COLOR_WHEEL_SELECTOR;
-#if defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
- SP_TYPE_COLOR_ICC_SELECTOR;
-#endif // defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
-
- /* REJON: Comment out the next line to not use the normal GTK Color
- wheel. */
-
-// SP_TYPE_COLOR_GTKSELECTOR;
-
- _updating = FALSE;
- _updatingrgba = FALSE;
- _btn = 0;
- _popup = 0;
- _trackerList = g_ptr_array_new ();
-
- _book = gtk_notebook_new ();
- gtk_widget_show (_book);
-
- // Dont show the notebook tabs, use radiobuttons instead
- gtk_notebook_set_show_border (GTK_NOTEBOOK (_book), false);
- gtk_notebook_set_show_tabs (GTK_NOTEBOOK (_book), false);
-
- selector_types = g_type_children (SP_TYPE_COLOR_SELECTOR, &selector_type_count);
-
- for ( i = 0; i < selector_type_count; i++ )
- {
- if (!g_type_is_a (selector_types[i], SP_TYPE_COLOR_NOTEBOOK))
- {
- guint howmany = 1;
- gpointer klass = g_type_class_ref (selector_types[i]);
- if ( klass && SP_IS_COLOR_SELECTOR_CLASS(klass) )
- {
- SPColorSelectorClass *ck = SP_COLOR_SELECTOR_CLASS (klass);
- howmany = MAX (1, ck->submode_count);
- for ( j = 0; j < howmany; j++ )
- {
- SPColorNotebookTracker *entry = reinterpret_cast< SPColorNotebookTracker* > (malloc(sizeof(SPColorNotebookTracker)));
- if ( entry )
- {
- memset( entry, 0, sizeof(SPColorNotebookTracker) );
- entry->name = ck->name[j];
- entry->type = selector_types[i];
- entry->submode = j;
- entry->enabledFull = TRUE;
- entry->enabledBrief = TRUE;
- entry->backPointer = SP_COLOR_NOTEBOOK(_csel);
-
- g_ptr_array_add (_trackerList, entry);
- }
- }
- }
- }
- }
-
-#if GTK_CHECK_VERSION(3,0,0)
- _buttonbox = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 2);
- gtk_box_set_homogeneous(GTK_BOX(_buttonbox), TRUE);
-#else
- _buttonbox = gtk_hbox_new (TRUE, 2);
-#endif
-
- gtk_widget_show (_buttonbox);
- _buttons = new GtkWidget *[_trackerList->len];
-
- for ( i = 0; i < _trackerList->len; i++ )
- {
- SPColorNotebookTracker *entry =
- reinterpret_cast< SPColorNotebookTracker* > (g_ptr_array_index (_trackerList, i));
- if ( entry )
- {
- addPage(entry->type, entry->submode);
- }
- }
-
-#if GTK_CHECK_VERSION(3,0,0)
- GtkWidget* table = gtk_grid_new();
-#else
- GtkWidget* table = gtk_table_new(2, 3, FALSE);
-#endif
-
- gtk_widget_show (table);
-
- gtk_box_pack_start (GTK_BOX (_csel), table, TRUE, TRUE, 0);
-
- sp_set_font_size_smaller (_buttonbox);
-
-#if GTK_CHECK_VERSION(3,0,0)
- #if GTK_CHECK_VERSION(3,12,0)
- gtk_widget_set_margin_start(_buttonbox, XPAD);
- gtk_widget_set_margin_end(_buttonbox, XPAD);
- #else
- gtk_widget_set_margin_left(_buttonbox, XPAD);
- gtk_widget_set_margin_right(_buttonbox, XPAD);
- #endif
- gtk_widget_set_margin_top(_buttonbox, YPAD);
- gtk_widget_set_margin_bottom(_buttonbox, YPAD);
- gtk_widget_set_hexpand(_buttonbox, TRUE);
- gtk_widget_set_valign(_buttonbox, GTK_ALIGN_CENTER);
- gtk_grid_attach(GTK_GRID(table), _buttonbox, 0, row, 2, 1);
-#else
- gtk_table_attach (GTK_TABLE (table), _buttonbox, 0, 2, row, row + 1,
- static_cast<GtkAttachOptions>(GTK_EXPAND|GTK_FILL),
- static_cast<GtkAttachOptions>(0),
- XPAD, YPAD);
-#endif
-
- row++;
-
-#if GTK_CHECK_VERSION(3,0,0)
- #if GTK_CHECK_VERSION(3,12,0)
- gtk_widget_set_margin_start(_book, XPAD*2);
- gtk_widget_set_margin_end(_book, XPAD*2);
- #else
- gtk_widget_set_margin_left(_book, XPAD*2);
- gtk_widget_set_margin_right(_book, XPAD*2);
- #endif
- gtk_widget_set_margin_top(_book, YPAD);
- gtk_widget_set_margin_bottom(_book, YPAD);
- gtk_widget_set_hexpand(_book, TRUE);
- gtk_widget_set_vexpand(_book, TRUE);
- gtk_grid_attach(GTK_GRID(table), _book, 0, row, 2, 1);
-#else
- gtk_table_attach (GTK_TABLE (table), _book, 0, 2, row, row + 1,
- static_cast<GtkAttachOptions>(GTK_EXPAND|GTK_FILL),
- static_cast<GtkAttachOptions>(GTK_EXPAND|GTK_FILL),
- XPAD*2, YPAD);
-#endif
-
- // restore the last active page
- Inkscape::Preferences *prefs = Inkscape::Preferences::get();
- _setCurrentPage(prefs->getInt("/colorselector/page", 0));
-
- {
- gboolean found = FALSE;
-
- _popup = gtk_menu_new();
- GtkMenu *menu = GTK_MENU (_popup);
-
- for ( i = 0; i < _trackerList->len; i++ )
- {
- SPColorNotebookTracker *entry = reinterpret_cast< SPColorNotebookTracker* > (g_ptr_array_index (_trackerList, i));
- if ( entry )
- {
- GtkWidget *item = gtk_check_menu_item_new_with_label (_(entry->name));
- gtk_check_menu_item_set_active (GTK_CHECK_MENU_ITEM (item), entry->enabledFull);
- gtk_widget_show (item);
- gtk_menu_shell_append (GTK_MENU_SHELL(menu), item);
-
- g_signal_connect (G_OBJECT (item), "activate",
- G_CALLBACK (sp_color_notebook_menuitem_response),
- reinterpret_cast< gpointer > (entry) );
- found = TRUE;
- }
- }
-
- GtkWidget *arrow = gtk_arrow_new(GTK_ARROW_RIGHT, GTK_SHADOW_NONE);
- gtk_widget_show (arrow);
-
- _btn = gtk_button_new ();
- gtk_widget_show (_btn);
- gtk_container_add (GTK_CONTAINER (_btn), arrow);
-
- GtkWidget *align = gtk_alignment_new (1.0, 0.0, 0.0, 0.0);
- gtk_widget_show (align);
- gtk_container_add (GTK_CONTAINER (align), _btn);
-
- // uncomment to reenable the "show/hide modes" menu,
- // but first fix it so it remembers its settings in prefs and does not take that much space (entire vertical column!)
- //gtk_table_attach (GTK_TABLE (table), align, 2, 3, row, row + 1, GTK_FILL, GTK_FILL, XPAD, YPAD);
-
- g_signal_connect_swapped(G_OBJECT(_btn), "event", G_CALLBACK (sp_color_notebook_menu_handler), G_OBJECT(_csel));
- if ( !found )
- {
- gtk_widget_set_sensitive (_btn, FALSE);
- }
- }
-
- row++;
-
-#if GTK_CHECK_VERSION(3,0,0)
- GtkWidget *rgbabox = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0);
-#else
- GtkWidget *rgbabox = gtk_hbox_new (FALSE, 0);
-#endif
-
-#if defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
- /* Create color management icons */
- _box_colormanaged = gtk_event_box_new ();
- GtkWidget *colormanaged = gtk_image_new_from_icon_name ("color-management-icon", GTK_ICON_SIZE_SMALL_TOOLBAR);
- gtk_container_add (GTK_CONTAINER (_box_colormanaged), colormanaged);
- gtk_widget_set_tooltip_text (_box_colormanaged, _("Color Managed"));
- gtk_widget_set_sensitive (_box_colormanaged, false);
- gtk_box_pack_start(GTK_BOX(rgbabox), _box_colormanaged, FALSE, FALSE, 2);
-
- _box_outofgamut = gtk_event_box_new ();
- GtkWidget *outofgamut = gtk_image_new_from_icon_name ("out-of-gamut-icon", GTK_ICON_SIZE_SMALL_TOOLBAR);
- gtk_container_add (GTK_CONTAINER (_box_outofgamut), outofgamut);
- gtk_widget_set_tooltip_text (_box_outofgamut, _("Out of gamut!"));
- gtk_widget_set_sensitive (_box_outofgamut, false);
- gtk_box_pack_start(GTK_BOX(rgbabox), _box_outofgamut, FALSE, FALSE, 2);
-
- _box_toomuchink = gtk_event_box_new ();
- GtkWidget *toomuchink = gtk_image_new_from_icon_name ("too-much-ink-icon", GTK_ICON_SIZE_SMALL_TOOLBAR);
- gtk_container_add (GTK_CONTAINER (_box_toomuchink), toomuchink);
- gtk_widget_set_tooltip_text (_box_toomuchink, _("Too much ink!"));
- gtk_widget_set_sensitive (_box_toomuchink, false);
- gtk_box_pack_start(GTK_BOX(rgbabox), _box_toomuchink, FALSE, FALSE, 2);
-#endif //defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
-
-
- /* Color picker */
- GtkWidget *picker = gtk_image_new_from_icon_name ("color-picker", GTK_ICON_SIZE_SMALL_TOOLBAR);
- _btn_picker = gtk_button_new ();
- gtk_button_set_relief(GTK_BUTTON(_btn_picker), GTK_RELIEF_NONE);
- gtk_widget_show (_btn);
- gtk_container_add (GTK_CONTAINER (_btn_picker), picker);
- gtk_widget_set_tooltip_text (_btn_picker, _("Pick colors from image"));
- gtk_box_pack_start(GTK_BOX(rgbabox), _btn_picker, FALSE, FALSE, 2);
- g_signal_connect(G_OBJECT(_btn_picker), "clicked", G_CALLBACK(ColorNotebook::_picker_clicked), _csel);
-
- /* Create RGBA entry and color preview */
- _rgbal = gtk_label_new_with_mnemonic (_("RGBA_:"));
- gtk_misc_set_alignment (GTK_MISC (_rgbal), 1.0, 0.5);
- gtk_box_pack_start(GTK_BOX(rgbabox), _rgbal, TRUE, TRUE, 2);
-
- _rgbae = gtk_entry_new ();
- sp_dialog_defocus_on_enter (_rgbae);
- gtk_entry_set_max_length (GTK_ENTRY (_rgbae), 8);
- gtk_entry_set_width_chars (GTK_ENTRY (_rgbae), 8);
- gtk_widget_set_tooltip_text (_rgbae, _("Hexadecimal RGBA value of the color"));
- gtk_box_pack_start(GTK_BOX(rgbabox), _rgbae, FALSE, FALSE, 0);
- gtk_label_set_mnemonic_widget (GTK_LABEL(_rgbal), _rgbae);
-
- sp_set_font_size_smaller (rgbabox);
- gtk_widget_show_all (rgbabox);
-
-#if defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
- //the "too much ink" icon is initially hidden
- gtk_widget_hide(GTK_WIDGET(_box_toomuchink));
-#endif //defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
-
-#if GTK_CHECK_VERSION(3,0,0)
- #if GTK_CHECK_VERSION(3,12,0)
- gtk_widget_set_margin_start(rgbabox, XPAD);
- gtk_widget_set_margin_end(rgbabox, XPAD);
- #else
- gtk_widget_set_margin_left(rgbabox, XPAD);
- gtk_widget_set_margin_right(rgbabox, XPAD);
- #endif
- gtk_widget_set_margin_top(rgbabox, YPAD);
- gtk_widget_set_margin_bottom(rgbabox, YPAD);
- gtk_grid_attach(GTK_GRID(table), rgbabox, 0, row, 2, 1);
-#else
- gtk_table_attach (GTK_TABLE (table), rgbabox, 0, 2, row, row + 1, GTK_FILL, GTK_SHRINK, XPAD, YPAD);
-#endif
-
-#ifdef SPCS_PREVIEW
- _p = sp_color_preview_new (0xffffffff);
- gtk_widget_show (_p);
- gtk_table_attach (GTK_TABLE (table), _p, 2, 3, row, row + 1, GTK_FILL, GTK_FILL, XPAD, YPAD);
-#endif
-
- _switchId = g_signal_connect(G_OBJECT (_book), "switch-page",
- G_CALLBACK (sp_color_notebook_switch_page), SP_COLOR_NOTEBOOK(_csel));
-
- _entryId = g_signal_connect (G_OBJECT (_rgbae), "changed", G_CALLBACK (ColorNotebook::_rgbaEntryChangedHook), _csel);
-}
-
-static void sp_color_notebook_dispose(GObject *object)
-{
- if (G_OBJECT_CLASS(sp_color_notebook_parent_class)->dispose)
- G_OBJECT_CLASS(sp_color_notebook_parent_class)->dispose(object);
-}
-
-ColorNotebook::~ColorNotebook()
-{
- if ( _trackerList )
- {
- g_ptr_array_free (_trackerList, TRUE);
- _trackerList = 0;
- }
-
- if ( _switchId )
- {
- if ( _book )
- {
- g_signal_handler_disconnect (_book, _switchId);
- _switchId = 0;
- }
- }
-
- if ( _buttons )
- {
- delete [] _buttons;
- _buttons = 0;
- }
-
-}
-
-static void
-sp_color_notebook_show_all (GtkWidget *widget)
-{
- gtk_widget_show (widget);
-}
-
-static void sp_color_notebook_hide(GtkWidget *widget)
-{
- gtk_widget_hide(widget);
-}
-
-GtkWidget *sp_color_notebook_new()
-{
- SPColorNotebook *colorbook = SP_COLOR_NOTEBOOK(g_object_new (SP_TYPE_COLOR_NOTEBOOK, NULL));
-
- return GTK_WIDGET(colorbook);
-}
-
-ColorNotebook::ColorNotebook( SPColorSelector* csel )
- : ColorSelector( csel )
-{
-}
-
-SPColorSelector* ColorNotebook::getCurrentSelector()
-{
- SPColorSelector* csel = NULL;
- gint current_page = gtk_notebook_get_current_page (GTK_NOTEBOOK (_book));
-
- if ( current_page >= 0 )
- {
- GtkWidget* widget = gtk_notebook_get_nth_page (GTK_NOTEBOOK (_book), current_page);
- if ( SP_IS_COLOR_SELECTOR (widget) )
- {
- csel = SP_COLOR_SELECTOR (widget);
- }
- }
-
- return csel;
-}
-
-void ColorNotebook::_colorChanged()
-{
- SPColorSelector* cselPage = getCurrentSelector();
- if ( cselPage )
- {
- cselPage->base->setColorAlpha( _color, _alpha );
- }
-
- _updateRgbaEntry( _color, _alpha );
-}
-
-void ColorNotebook::_picker_clicked(GtkWidget * /*widget*/, SPColorNotebook * /*colorbook*/)
-{
- // Set the dropper into a "one click" mode, so it reverts to the previous tool after a click
- Inkscape::Preferences *prefs = Inkscape::Preferences::get();
- prefs->setBool("/tools/dropper/onetimepick", true);
- Inkscape::UI::Tools::sp_toggle_dropper(SP_ACTIVE_DESKTOP);
-}
-
-void ColorNotebook::_rgbaEntryChangedHook(GtkEntry *entry, SPColorNotebook *colorbook)
-{
- (dynamic_cast<ColorNotebook*>(SP_COLOR_SELECTOR(colorbook)->base))->_rgbaEntryChanged( entry );
-}
-
-void ColorNotebook::_rgbaEntryChanged(GtkEntry* entry)
-{
- if (_updating) return;
- if (_updatingrgba) return;
-
- const gchar *t = gtk_entry_get_text( entry );
-
- if (t) {
- Glib::ustring text = t;
- bool changed = false;
- if (!text.empty() && text[0] == '#') {
- changed = true;
- text.erase(0,1);
- if (text.size() == 6) {
- // it was a standard RGB hex
- unsigned int alph = SP_COLOR_F_TO_U(_alpha);
- gchar* tmp = g_strdup_printf("%02x", alph);
- text += tmp;
- g_free(tmp);
- }
- }
- gchar* str = g_strdup(text.c_str());
- gchar* end = 0;
- guint64 rgba = g_ascii_strtoull( str, &end, 16 );
- if ( end != str ) {
- ptrdiff_t len = end - str;
- if ( len < 8 ) {
- rgba = rgba << ( 4 * ( 8 - len ) );
- }
- _updatingrgba = TRUE;
- if ( changed ) {
- gtk_entry_set_text( entry, str );
- }
- SPColor color( rgba );
- setColorAlpha( color, SP_RGBA32_A_F(rgba), true );
- _updatingrgba = FALSE;
- }
- g_free(str);
- }
-}
-
-// TODO pass in param so as to avoid the need for SP_ACTIVE_DOCUMENT
-void ColorNotebook::_updateRgbaEntry( const SPColor& color, gfloat alpha )
-{
- g_return_if_fail( ( 0.0 <= alpha ) && ( alpha <= 1.0 ) );
-
-#if defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
- /* update color management icon*/
- gtk_widget_set_sensitive (_box_colormanaged, color.icc != NULL);
-
- /* update out-of-gamut icon */
- gtk_widget_set_sensitive (_box_outofgamut, false);
- if (color.icc){
- Inkscape::ColorProfile* target_profile = SP_ACTIVE_DOCUMENT->profileManager->find(color.icc->colorProfile.c_str());
- if ( target_profile )
- gtk_widget_set_sensitive(_box_outofgamut, target_profile->GamutCheck(color));
- }
-
- /* update too-much-ink icon */
- gtk_widget_set_sensitive (_box_toomuchink, false);
- if (color.icc){
- Inkscape::ColorProfile* prof = SP_ACTIVE_DOCUMENT->profileManager->find(color.icc->colorProfile.c_str());
- if ( prof && CMSSystem::isPrintColorSpace(prof) ) {
- gtk_widget_show(GTK_WIDGET(_box_toomuchink));
- double ink_sum = 0;
- for (unsigned int i=0; i<color.icc->colors.size(); i++){
- ink_sum += color.icc->colors[i];
- }
-
- /* Some literature states that when the sum of paint values exceed 320%, it is considered to be a satured color,
- which means the paper can get too wet due to an excessive ammount of ink. This may lead to several issues
- such as misalignment and poor quality of printing in general.*/
- if ( ink_sum > 3.2 )
- gtk_widget_set_sensitive (_box_toomuchink, true);
- } else {
- gtk_widget_hide(GTK_WIDGET(_box_toomuchink));
- }
- }
-#endif //defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
-
- if ( !_updatingrgba )
- {
- gchar s[32];
- guint32 rgba;
-
- /* Update RGBA entry */
- rgba = color.toRGBA32( alpha );
-
- g_snprintf (s, 32, "%08x", rgba);
- const gchar* oldText = gtk_entry_get_text( GTK_ENTRY( _rgbae ) );
- if ( strcmp( oldText, s ) != 0 )
- {
- g_signal_handler_block( _rgbae, _entryId );
- gtk_entry_set_text( GTK_ENTRY(_rgbae), s );
- g_signal_handler_unblock( _rgbae, _entryId );
- }
- }
-}
-
-void ColorNotebook::_setCurrentPage(int i)
-{
- gtk_notebook_set_current_page(GTK_NOTEBOOK(_book), i);
-
- if (_buttons && _trackerList && (static_cast<size_t>(i) < _trackerList->len) ) {
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(_buttons[i]), TRUE);
- }
-}
-
-void ColorNotebook::_buttonClicked(GtkWidget *widget, SPColorNotebook *colorbook)
-{
- ColorNotebook* nb = dynamic_cast<ColorNotebook*>(SP_COLOR_SELECTOR(colorbook)->base);
-
- if (!gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON(widget))) {
- return;
- }
-
- for(gint i = 0; i < gtk_notebook_get_n_pages (GTK_NOTEBOOK (nb->_book)); i++) {
- if (nb->_buttons[i] == widget) {
- gtk_notebook_set_current_page (GTK_NOTEBOOK (nb->_book), i);
- }
- }
-}
-
-void ColorNotebook::_entryGrabbed (SPColorSelector *, SPColorNotebook *colorbook)
-{
- ColorNotebook* nb = dynamic_cast<ColorNotebook*>(SP_COLOR_SELECTOR(colorbook)->base);
- nb->_grabbed();
-}
-
-void ColorNotebook::_entryDragged (SPColorSelector *csel, SPColorNotebook *colorbook)
-{
- gboolean oldState;
- ColorNotebook* nb = dynamic_cast<ColorNotebook*>(SP_COLOR_SELECTOR(colorbook)->base);
-
- oldState = nb->_dragging;
-
- nb->_dragging = TRUE;
- nb->_entryModified( csel, colorbook );
-
- nb->_dragging = oldState;
-}
-
-void ColorNotebook::_entryReleased (SPColorSelector *, SPColorNotebook *colorbook)
-{
- ColorNotebook* nb = dynamic_cast<ColorNotebook*>(SP_COLOR_SELECTOR(colorbook)->base);
- nb->_released();
-}
-
-void ColorNotebook::_entryChanged (SPColorSelector *csel, SPColorNotebook *colorbook)
-{
- gboolean oldState;
- ColorNotebook* nb = dynamic_cast<ColorNotebook*>(SP_COLOR_SELECTOR(colorbook)->base);
-
- oldState = nb->_dragging;
-
- nb->_dragging = FALSE;
- nb->_entryModified( csel, colorbook );
-
- nb->_dragging = oldState;
-}
-
-void ColorNotebook::_entryModified (SPColorSelector *csel, SPColorNotebook *colorbook)
-{
- g_return_if_fail (colorbook != NULL);
- g_return_if_fail (SP_IS_COLOR_NOTEBOOK (colorbook));
- g_return_if_fail (csel != NULL);
- g_return_if_fail (SP_IS_COLOR_SELECTOR (csel));
-
- ColorNotebook* nb = dynamic_cast<ColorNotebook*>(SP_COLOR_SELECTOR(colorbook)->base);
- SPColor color;
- gfloat alpha = 1.0;
-
- csel->base->getColorAlpha( color, alpha );
- nb->_updateRgbaEntry( color, alpha );
- nb->_updateInternals( color, alpha, nb->_dragging );
-}
-
-GtkWidget* ColorNotebook::addPage(GType page_type, guint submode)
-{
- GtkWidget *page;
-
- page = sp_color_selector_new( page_type );
- if ( page )
- {
- GtkWidget* tab_label = 0;
- SPColorSelector* csel;
-
- csel = SP_COLOR_SELECTOR (page);
- if ( submode > 0 )
- {
- csel->base->setSubmode( submode );
- }
- gtk_widget_show (page);
- int index = csel->base ? csel->base->getSubmode() : 0;
- const gchar* str = _(SP_COLOR_SELECTOR_GET_CLASS (csel)->name[index]);
-// g_message( "Hitting up for tab for '%s'", str );
- tab_label = gtk_label_new(_(str));
- gint pageNum = gtk_notebook_append_page( GTK_NOTEBOOK (_book), page, tab_label );
-
- // Add a button for each page
- _buttons[pageNum] = gtk_radio_button_new_with_label(NULL, _(str));
- gtk_toggle_button_set_mode(GTK_TOGGLE_BUTTON(_buttons[pageNum]), FALSE);
- if (pageNum > 0) {
- GSList *group = gtk_radio_button_get_group (GTK_RADIO_BUTTON(_buttons[0]));
- gtk_radio_button_set_group (GTK_RADIO_BUTTON(_buttons[pageNum]), group);
- }
- gtk_widget_show (_buttons[pageNum]);
- gtk_box_pack_start (GTK_BOX (_buttonbox), _buttons[pageNum], TRUE, TRUE, 0);
-
- g_signal_connect (G_OBJECT (_buttons[pageNum]), "clicked", G_CALLBACK (_buttonClicked), _csel);
- g_signal_connect (G_OBJECT (page), "grabbed", G_CALLBACK (_entryGrabbed), _csel);
- g_signal_connect (G_OBJECT (page), "dragged", G_CALLBACK (_entryDragged), _csel);
- g_signal_connect (G_OBJECT (page), "released", G_CALLBACK (_entryReleased), _csel);
- g_signal_connect (G_OBJECT (page), "changed", G_CALLBACK (_entryChanged), _csel);
- }
-
- return page;
-}
-
-GtkWidget* ColorNotebook::getPage(GType page_type, guint submode)
-{
- gint count = 0;
- gint i = 0;
- GtkWidget* page = 0;
-
-// count = gtk_notebook_get_n_pages (_book);
- count = 200;
- for ( i = 0; i < count && !page; i++ )
- {
- page = gtk_notebook_get_nth_page (GTK_NOTEBOOK (_book), i);
- if ( page )
- {
- SPColorSelector* csel;
- guint pagemode;
- csel = SP_COLOR_SELECTOR (page);
- pagemode = csel->base->getSubmode();
- if ( G_TYPE_FROM_INSTANCE (page) == page_type
- && pagemode == submode )
- {
- // found it.
- break;
- }
- else
- {
- page = 0;
- }
- }
- else
- {
- break;
- }
- }
- return page;
-}
-
-void ColorNotebook::removePage( GType page_type, guint submode )
-{
- GtkWidget *page = 0;
-
- page = getPage(page_type, submode);
- if ( page )
- {
- gint where = gtk_notebook_page_num (GTK_NOTEBOOK (_book), page);
- if ( where >= 0 )
- {
- if ( gtk_notebook_get_current_page (GTK_NOTEBOOK (_book)) == where )
- {
-// getColorAlpha(_color, &_alpha);
- }
- gtk_notebook_remove_page (GTK_NOTEBOOK (_book), where);
- }
- }
-}
-
-/*
- Local Variables:
- mode:c++
- c-file-style:"stroustrup"
- c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))
- indent-tabs-mode:nil
- fill-column:99
- End:
-*/
-// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:fileencoding=utf-8:textwidth=99 :
diff --git a/src/widgets/sp-color-notebook.h b/src/widgets/sp-color-notebook.h
deleted file mode 100644
index 469bb56e8..000000000
--- a/src/widgets/sp-color-notebook.h
+++ /dev/null
@@ -1,120 +0,0 @@
-#ifndef SEEN_SP_COLOR_NOTEBOOK_H
-#define SEEN_SP_COLOR_NOTEBOOK_H
-
-/*
- * A notebook with RGB, CMYK, CMS, HSL, and Wheel pages
- *
- * Author:
- * Lauris Kaplinski <lauris@kaplinski.com>
- *
- * Copyright (C) 2001-2002 Lauris Kaplinski
- *
- * This code is in public domain
- */
-
-#include "sp-color-selector.h"
-
-#include <glib.h>
-
-struct SPColorNotebook;
-
-class ColorNotebook: public ColorSelector
-{
-public:
- ColorNotebook( SPColorSelector* csel );
- virtual ~ColorNotebook();
-
- virtual void init();
-
- SPColorSelector* getCurrentSelector();
- void switchPage( GtkNotebook *notebook, GtkWidget *page, guint page_num );
-
- GtkWidget* addPage( GType page_type, guint submode );
- void removePage( GType page_type, guint submode );
- GtkWidget* getPage( GType page_type, guint submode );
-
- gint menuHandler( GdkEvent* event );
-
-protected:
- static void _rgbaEntryChangedHook( GtkEntry* entry, SPColorNotebook *colorbook );
- static void _entryGrabbed( SPColorSelector *csel, SPColorNotebook *colorbook );
- static void _entryDragged( SPColorSelector *csel, SPColorNotebook *colorbook );
- static void _entryReleased( SPColorSelector *csel, SPColorNotebook *colorbook );
- static void _entryChanged( SPColorSelector *csel, SPColorNotebook *colorbook );
- static void _entryModified( SPColorSelector *csel, SPColorNotebook *colorbook );
- static void _buttonClicked(GtkWidget *widget, SPColorNotebook *colorbook);
- static void _picker_clicked(GtkWidget *widget, SPColorNotebook *colorbook);
-
- virtual void _colorChanged();
-
- void _rgbaEntryChanged( GtkEntry* entry );
- void _updateRgbaEntry( const SPColor& color, gfloat alpha );
- void _setCurrentPage(int i);
-
- gboolean _updating : 1;
- gboolean _updatingrgba : 1;
- gboolean _dragging : 1;
- gulong _switchId;
- gulong _entryId;
- GtkWidget *_book;
- GtkWidget *_buttonbox;
- GtkWidget **_buttons;
- GtkWidget *_rgbal, *_rgbae; /* RGBA entry */
-#if defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
- GtkWidget *_box_outofgamut, *_box_colormanaged, *_box_toomuchink;
-#endif //defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
- GtkWidget *_btn_picker;
- GtkWidget *_p; /* Color preview */
- GtkWidget *_btn;
- GtkWidget *_popup;
- GPtrArray *_trackerList;
-
-private:
- // By default, disallow copy constructor and assignment operator
- ColorNotebook( const ColorNotebook& obj );
- ColorNotebook& operator=( const ColorNotebook& obj );
-};
-
-
-
-#define SP_TYPE_COLOR_NOTEBOOK (sp_color_notebook_get_type ())
-#define SP_COLOR_NOTEBOOK(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), SP_TYPE_COLOR_NOTEBOOK, SPColorNotebook))
-#define SP_COLOR_NOTEBOOK_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), SP_TYPE_COLOR_NOTEBOOK, SPColorNotebookClass))
-#define SP_IS_COLOR_NOTEBOOK(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), SP_TYPE_COLOR_NOTEBOOK))
-#define SP_IS_COLOR_NOTEBOOK_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), SP_TYPE_COLOR_NOTEBOOK))
-
-struct SPColorNotebook {
- SPColorSelector parent; /* Parent */
-};
-
-struct SPColorNotebookClass {
- SPColorSelectorClass parent_class;
-
- void (* grabbed) (SPColorNotebook *rgbsel);
- void (* dragged) (SPColorNotebook *rgbsel);
- void (* released) (SPColorNotebook *rgbsel);
- void (* changed) (SPColorNotebook *rgbsel);
-};
-
-GType sp_color_notebook_get_type(void);
-
-GtkWidget *sp_color_notebook_new (void);
-
-/* void sp_color_notebook_set_mode (SPColorNotebook *csel, SPColorNotebookMode mode); */
-/* SPColorNotebookMode sp_color_notebook_get_mode (SPColorNotebook *csel); */
-
-
-
-#endif // SEEN_SP_COLOR_NOTEBOOK_H
-
-/*
- Local Variables:
- mode:c++
- c-file-style:"stroustrup"
- c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))
- indent-tabs-mode:nil
- fill-column:99
- End:
-*/
-// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:fileencoding=utf-8:textwidth=99 :
-
diff --git a/src/widgets/sp-color-scales.cpp b/src/widgets/sp-color-scales.cpp
deleted file mode 100644
index 60ba62ec5..000000000
--- a/src/widgets/sp-color-scales.cpp
+++ /dev/null
@@ -1,760 +0,0 @@
-/*
- * bulia byak <buliabyak@users.sf.net>
- */
-
-#ifdef HAVE_CONFIG_H
-# include "config.h"
-#endif
-#include <math.h>
-#include <gtk/gtk.h>
-#include <glibmm/i18n.h>
-#include "ui/dialog-events.h"
-#include "sp-color-scales.h"
-#include "sp-color-slider.h"
-#include "svg/svg-icc-color.h"
-
-#define CSC_CHANNEL_R (1 << 0)
-#define CSC_CHANNEL_G (1 << 1)
-#define CSC_CHANNEL_B (1 << 2)
-#define CSC_CHANNEL_A (1 << 3)
-#define CSC_CHANNEL_H (1 << 0)
-#define CSC_CHANNEL_S (1 << 1)
-#define CSC_CHANNEL_V (1 << 2)
-#define CSC_CHANNEL_C (1 << 0)
-#define CSC_CHANNEL_M (1 << 1)
-#define CSC_CHANNEL_Y (1 << 2)
-#define CSC_CHANNEL_K (1 << 3)
-#define CSC_CHANNEL_CMYKA (1 << 4)
-
-#define CSC_CHANNELS_ALL 0
-
-
-G_BEGIN_DECLS
-
-static void sp_color_scales_dispose(GObject *object);
-
-static void sp_color_scales_show_all (GtkWidget *widget);
-static void sp_color_scales_hide(GtkWidget *widget);
-
-static const gchar *sp_color_scales_hue_map (void);
-
-G_END_DECLS
-
-#define XPAD 4
-#define YPAD 1
-
-#define noDUMP_CHANGE_INFO 1
-
-G_DEFINE_TYPE(SPColorScales, sp_color_scales, SP_TYPE_COLOR_SELECTOR);
-
-static void
-sp_color_scales_class_init (SPColorScalesClass *klass)
-{
- static const gchar* nameset[] = {N_("RGB"), N_("HSL"), N_("CMYK"), 0};
- GObjectClass *object_class = G_OBJECT_CLASS(klass);
- GtkWidgetClass *widget_class = GTK_WIDGET_CLASS(klass);
- SPColorSelectorClass *selector_class = SP_COLOR_SELECTOR_CLASS (klass);
-
- selector_class->name = nameset;
- selector_class->submode_count = 3;
-
- object_class->dispose = sp_color_scales_dispose;
-
- widget_class->show_all = sp_color_scales_show_all;
- widget_class->hide = sp_color_scales_hide;
-}
-
-ColorScales::ColorScales( SPColorSelector* csel )
- : ColorSelector( csel ),
- _mode( SP_COLOR_SCALES_MODE_NONE ),
- _rangeLimit( 255.0 ),
- _updating( FALSE ),
- _dragging( FALSE )
-{
- for (gint i = 0; i < 5; i++) {
- _l[i] = 0;
- _a[i] = 0;
- _s[i] = 0;
- _b[i] = 0;
- }
-}
-
-ColorScales::~ColorScales()
-{
- for (gint i = 0; i < 5; i++) {
- _l[i] = 0;
- _a[i] = 0;
- _s[i] = 0;
- _b[i] = 0;
- }
-}
-
-void sp_color_scales_init (SPColorScales *cs)
-{
- SP_COLOR_SELECTOR(cs)->base = new ColorScales( SP_COLOR_SELECTOR(cs) );
-
- if ( SP_COLOR_SELECTOR(cs)->base )
- {
- SP_COLOR_SELECTOR(cs)->base->init();
- }
-}
-
-void ColorScales::init()
-{
- gint i;
-
- _updating = FALSE;
- _dragging = FALSE;
-
-#if GTK_CHECK_VERSION(3,0,0)
- GtkWidget *t = gtk_grid_new();
-#else
- GtkWidget *t = gtk_table_new (5, 3, FALSE);
-#endif
- gtk_widget_show (t);
- gtk_box_pack_start (GTK_BOX (_csel), t, TRUE, TRUE, 4);
-
- /* Create components */
- for (i = 0; i < static_cast< gint > (G_N_ELEMENTS(_a)) ; i++) {
- /* Label */
- _l[i] = gtk_label_new("");
- gtk_misc_set_alignment (GTK_MISC (_l[i]), 1.0, 0.5);
- gtk_widget_show (_l[i]);
-
-#if GTK_CHECK_VERSION(3,0,0)
- #if GTK_CHECK_VERSION(3,12,0)
- gtk_widget_set_margin_start(_l[i], XPAD);
- gtk_widget_set_margin_end(_l[i], XPAD);
- #else
- gtk_widget_set_margin_left(_l[i], XPAD);
- gtk_widget_set_margin_right(_l[i], XPAD);
- #endif
- gtk_widget_set_margin_top(_l[i], YPAD);
- gtk_widget_set_margin_bottom(_l[i], YPAD);
- gtk_grid_attach(GTK_GRID(t), _l[i], 0, i, 1, 1);
-#else
- gtk_table_attach (GTK_TABLE (t), _l[i], 0, 1, i, i + 1, GTK_FILL, GTK_FILL, XPAD, YPAD);
-#endif
-
- /* Adjustment */
- _a[i] = GTK_ADJUSTMENT(gtk_adjustment_new(0.0, 0.0, _rangeLimit, 1.0, 10.0, 10.0));
- /* Slider */
- _s[i] = sp_color_slider_new (_a[i]);
- gtk_widget_show (_s[i]);
-
-#if GTK_CHECK_VERSION(3,0,0)
- #if GTK_CHECK_VERSION(3,12,0)
- gtk_widget_set_margin_start(_s[i], XPAD);
- gtk_widget_set_margin_end(_s[i], XPAD);
- #else
- gtk_widget_set_margin_left(_s[i], XPAD);
- gtk_widget_set_margin_right(_s[i], XPAD);
- #endif
- gtk_widget_set_margin_top(_s[i], YPAD);
- gtk_widget_set_margin_bottom(_s[i], YPAD);
- gtk_widget_set_hexpand(_s[i], TRUE);
- gtk_grid_attach(GTK_GRID(t), _s[i], 1, i, 1, 1);
-#else
- gtk_table_attach (GTK_TABLE (t), _s[i], 1, 2, i, i + 1, (GtkAttachOptions)(GTK_EXPAND | GTK_FILL), GTK_FILL, XPAD, YPAD);
-#endif
-
- /* Spinbutton */
- _b[i] = gtk_spin_button_new (GTK_ADJUSTMENT (_a[i]), 1.0, 0);
- sp_dialog_defocus_on_enter (_b[i]);
- gtk_label_set_mnemonic_widget (GTK_LABEL(_l[i]), _b[i]);
- gtk_widget_show (_b[i]);
-
-#if GTK_CHECK_VERSION(3,0,0)
- #if GTK_CHECK_VERSION(3,12,0)
- gtk_widget_set_margin_start(_b[i], XPAD);
- gtk_widget_set_margin_end(_b[i], XPAD);
- #else
- gtk_widget_set_margin_left(_b[i], XPAD);
- gtk_widget_set_margin_right(_b[i], XPAD);
- #endif
- gtk_widget_set_margin_top(_b[i], YPAD);
- gtk_widget_set_margin_bottom(_b[i], YPAD);
- gtk_widget_set_halign(_b[i], GTK_ALIGN_CENTER);
- gtk_widget_set_valign(_b[i], GTK_ALIGN_CENTER);
- gtk_grid_attach(GTK_GRID(t), _b[i], 2, i, 1, 1);
-#else
- gtk_table_attach (GTK_TABLE (t), _b[i], 2, 3, i, i + 1, (GtkAttachOptions)0, (GtkAttachOptions)0, XPAD, YPAD);
-#endif
-
- /* Attach channel value to adjustment */
- g_object_set_data (G_OBJECT (_a[i]), "channel", GINT_TO_POINTER (i));
- /* Signals */
- g_signal_connect (G_OBJECT (_a[i]), "value_changed",
- G_CALLBACK (_adjustmentAnyChanged), _csel);
- g_signal_connect (G_OBJECT (_s[i]), "grabbed",
- G_CALLBACK (_sliderAnyGrabbed), _csel);
- g_signal_connect (G_OBJECT (_s[i]), "released",
- G_CALLBACK (_sliderAnyReleased), _csel);
- g_signal_connect (G_OBJECT (_s[i]), "changed",
- G_CALLBACK (_sliderAnyChanged), _csel);
- }
-
- /* Initial mode is none, so it works */
- setMode(SP_COLOR_SCALES_MODE_RGB);
-}
-
-static void sp_color_scales_dispose(GObject *object)
-{
- if (G_OBJECT_CLASS(sp_color_scales_parent_class)->dispose)
- G_OBJECT_CLASS(sp_color_scales_parent_class)->dispose(object);
-}
-
-static void
-sp_color_scales_show_all (GtkWidget *widget)
-{
- gtk_widget_show (widget);
-}
-
-static void sp_color_scales_hide(GtkWidget *widget)
-{
- gtk_widget_hide(widget);
-}
-
-GtkWidget *sp_color_scales_new()
-{
- SPColorScales *csel = SP_COLOR_SCALES(g_object_new (SP_TYPE_COLOR_SCALES, NULL));
-
- return GTK_WIDGET (csel);
-}
-
-void ColorScales::_recalcColor( gboolean changing )
-{
- if ( changing )
- {
- SPColor color;
- gfloat alpha = 1.0;
- gfloat c[5];
-
- switch (_mode) {
- case SP_COLOR_SCALES_MODE_RGB:
- case SP_COLOR_SCALES_MODE_HSV:
- _getRgbaFloatv(c);
- color.set( c[0], c[1], c[2] );
- alpha = c[3];
- break;
- case SP_COLOR_SCALES_MODE_CMYK:
- {
- _getCmykaFloatv( c );
-
- float rgb[3];
- sp_color_cmyk_to_rgb_floatv( rgb, c[0], c[1], c[2], c[3] );
- color.set( rgb[0], rgb[1], rgb[2] );
- alpha = c[4];
- break;
- }
- default:
- g_warning ("file %s: line %d: Illegal color selector mode %d", __FILE__, __LINE__, _mode);
- break;
- }
-
- /* Preserve ICC */
- color.icc = _color.icc ? new SVGICCColor(*_color.icc) : 0;
-
- _updateInternals( color, alpha, _dragging );
- }
- else
- {
- _updateInternals( _color, _alpha, _dragging );
- }
-}
-
-/* Helpers for setting color value */
-gfloat ColorScales::getScaled( const GtkAdjustment *a )
-{
- gfloat val = gtk_adjustment_get_value (const_cast<GtkAdjustment*>(a))
- / gtk_adjustment_get_upper (const_cast<GtkAdjustment*>(a));
- return val;
-}
-
-void ColorScales::setScaled( GtkAdjustment *a, gfloat v )
-{
- gfloat val = v * gtk_adjustment_get_upper (a);
- gtk_adjustment_set_value( a, val );
-}
-
-void ColorScales::_setRangeLimit( gdouble upper )
-{
- _rangeLimit = upper;
- for ( gint i = 0; i < static_cast<gint>(G_N_ELEMENTS(_a)); i++ ) {
- gtk_adjustment_set_upper (_a[i], upper);
- gtk_adjustment_changed( _a[i] );
- }
-}
-
-void ColorScales::_colorChanged()
-{
-#ifdef DUMP_CHANGE_INFO
- g_message("ColorScales::_colorChanged( this=%p, %f, %f, %f, %f)", this, _color.v.c[0], _color.v.c[1], _color.v.c[2], _alpha );
-#endif
- gfloat tmp[3];
- gfloat c[5] = {0.0, 0.0, 0.0, 0.0};
-
- switch (_mode) {
- case SP_COLOR_SCALES_MODE_RGB:
- sp_color_get_rgb_floatv( &_color, c );
- c[3] = _alpha;
- c[4] = 0.0;
- break;
- case SP_COLOR_SCALES_MODE_HSV:
- sp_color_get_rgb_floatv( &_color, tmp );
- sp_color_rgb_to_hsl_floatv (c, tmp[0], tmp[1], tmp[2]);
- c[3] = _alpha;
- c[4] = 0.0;
- break;
- case SP_COLOR_SCALES_MODE_CMYK:
- sp_color_get_cmyk_floatv( &_color, c );
- c[4] = _alpha;
- break;
- default:
- g_warning ("file %s: line %d: Illegal color selector mode %d", __FILE__, __LINE__, _mode);
- break;
- }
-
- _updating = TRUE;
- setScaled( _a[0], c[0] );
- setScaled( _a[1], c[1] );
- setScaled( _a[2], c[2] );
- setScaled( _a[3], c[3] );
- setScaled( _a[4], c[4] );
- _updateSliders( CSC_CHANNELS_ALL );
- _updating = FALSE;
-}
-
-void ColorScales::_getRgbaFloatv( gfloat *rgba )
-{
- g_return_if_fail (rgba != NULL);
-
- switch (_mode) {
- case SP_COLOR_SCALES_MODE_RGB:
- rgba[0] = getScaled(_a[0]);
- rgba[1] = getScaled(_a[1]);
- rgba[2] = getScaled(_a[2]);
- rgba[3] = getScaled(_a[3]);
- break;
- case SP_COLOR_SCALES_MODE_HSV:
- sp_color_hsl_to_rgb_floatv (rgba, getScaled(_a[0]), getScaled(_a[1]), getScaled(_a[2]));
- rgba[3] = getScaled(_a[3]);
- break;
- case SP_COLOR_SCALES_MODE_CMYK:
- sp_color_cmyk_to_rgb_floatv (rgba, getScaled(_a[0]), getScaled(_a[1]), getScaled(_a[2]), getScaled(_a[3]));
- rgba[3] = getScaled(_a[4]);
- break;
- default:
- g_warning ("file %s: line %d: Illegal color selector mode", __FILE__, __LINE__);
- break;
- }
-}
-
-void ColorScales::_getCmykaFloatv( gfloat *cmyka )
-{
- gfloat rgb[3];
-
- g_return_if_fail (cmyka != NULL);
-
- switch (_mode) {
- case SP_COLOR_SCALES_MODE_RGB:
- sp_color_rgb_to_cmyk_floatv (cmyka, getScaled(_a[0]), getScaled(_a[1]), getScaled(_a[2]));
- cmyka[4] = getScaled(_a[3]);
- break;
- case SP_COLOR_SCALES_MODE_HSV:
- sp_color_hsl_to_rgb_floatv (rgb, getScaled(_a[0]), getScaled(_a[1]), getScaled(_a[2]));
- sp_color_rgb_to_cmyk_floatv (cmyka, rgb[0], rgb[1], rgb[2]);
- cmyka[4] = getScaled(_a[3]);
- break;
- case SP_COLOR_SCALES_MODE_CMYK:
- cmyka[0] = getScaled(_a[0]);
- cmyka[1] = getScaled(_a[1]);
- cmyka[2] = getScaled(_a[2]);
- cmyka[3] = getScaled(_a[3]);
- cmyka[4] = getScaled(_a[4]);
- break;
- default:
- g_warning ("file %s: line %d: Illegal color selector mode", __FILE__, __LINE__);
- break;
- }
-}
-
-guint32 ColorScales::_getRgba32()
-{
- gfloat c[4];
- guint32 rgba;
-
- _getRgbaFloatv(c);
-
- rgba = SP_RGBA32_F_COMPOSE (c[0], c[1], c[2], c[3]);
-
- return rgba;
-}
-
-void ColorScales::setMode(SPColorScalesMode mode)
-{
- gfloat rgba[4];
- gfloat c[4];
-
- if (_mode == mode) return;
-
- if ((_mode == SP_COLOR_SCALES_MODE_RGB) ||
- (_mode == SP_COLOR_SCALES_MODE_HSV) ||
- (_mode == SP_COLOR_SCALES_MODE_CMYK)) {
- _getRgbaFloatv(rgba);
- } else {
- rgba[0] = rgba[1] = rgba[2] = rgba[3] = 1.0;
- }
-
- _mode = mode;
-
- switch (mode) {
- case SP_COLOR_SCALES_MODE_RGB:
- _setRangeLimit(255.0);
- gtk_label_set_markup_with_mnemonic (GTK_LABEL (_l[0]), _("_R:"));
- gtk_widget_set_tooltip_text (_s[0], _("Red"));
- gtk_widget_set_tooltip_text (_b[0], _("Red"));
- gtk_label_set_markup_with_mnemonic (GTK_LABEL (_l[1]), _("_G:"));
- gtk_widget_set_tooltip_text (_s[1], _("Green"));
- gtk_widget_set_tooltip_text (_b[1], _("Green"));
- gtk_label_set_markup_with_mnemonic (GTK_LABEL (_l[2]), _("_B:"));
- gtk_widget_set_tooltip_text (_s[2], _("Blue"));
- gtk_widget_set_tooltip_text (_b[2], _("Blue"));
- gtk_label_set_markup_with_mnemonic (GTK_LABEL (_l[3]), _("_A:"));
- gtk_widget_set_tooltip_text (_s[3], _("Alpha (opacity)"));
- gtk_widget_set_tooltip_text (_b[3], _("Alpha (opacity)"));
- sp_color_slider_set_map (SP_COLOR_SLIDER (_s[0]), NULL);
- gtk_widget_hide (_l[4]);
- gtk_widget_hide (_s[4]);
- gtk_widget_hide (_b[4]);
- _updating = TRUE;
- setScaled( _a[0], rgba[0] );
- setScaled( _a[1], rgba[1] );
- setScaled( _a[2], rgba[2] );
- setScaled( _a[3], rgba[3] );
- _updating = FALSE;
- _updateSliders( CSC_CHANNELS_ALL );
- break;
- case SP_COLOR_SCALES_MODE_HSV:
- _setRangeLimit(255.0);
- gtk_label_set_markup_with_mnemonic (GTK_LABEL (_l[0]), _("_H:"));
- gtk_widget_set_tooltip_text (_s[0], _("Hue"));
- gtk_widget_set_tooltip_text (_b[0], _("Hue"));
- gtk_label_set_markup_with_mnemonic (GTK_LABEL (_l[1]), _("_S:"));
- gtk_widget_set_tooltip_text (_s[1], _("Saturation"));
- gtk_widget_set_tooltip_text (_b[1], _("Saturation"));
- gtk_label_set_markup_with_mnemonic (GTK_LABEL (_l[2]), _("_L:"));
- gtk_widget_set_tooltip_text (_s[2], _("Lightness"));
- gtk_widget_set_tooltip_text (_b[2], _("Lightness"));
- gtk_label_set_markup_with_mnemonic (GTK_LABEL (_l[3]), _("_A:"));
- gtk_widget_set_tooltip_text (_s[3], _("Alpha (opacity)"));
- gtk_widget_set_tooltip_text (_b[3], _("Alpha (opacity)"));
- sp_color_slider_set_map (SP_COLOR_SLIDER (_s[0]), (guchar *)(sp_color_scales_hue_map()));
- gtk_widget_hide (_l[4]);
- gtk_widget_hide (_s[4]);
- gtk_widget_hide (_b[4]);
- _updating = TRUE;
- c[0] = 0.0;
- sp_color_rgb_to_hsl_floatv (c, rgba[0], rgba[1], rgba[2]);
- setScaled( _a[0], c[0] );
- setScaled( _a[1], c[1] );
- setScaled( _a[2], c[2] );
- setScaled( _a[3], rgba[3] );
- _updating = FALSE;
- _updateSliders( CSC_CHANNELS_ALL );
- break;
- case SP_COLOR_SCALES_MODE_CMYK:
- _setRangeLimit(100.0);
- gtk_label_set_markup_with_mnemonic (GTK_LABEL (_l[0]), _("_C:"));
- gtk_widget_set_tooltip_text (_s[0], _("Cyan"));
- gtk_widget_set_tooltip_text (_b[0], _("Cyan"));
- gtk_label_set_markup_with_mnemonic (GTK_LABEL (_l[1]), _("_M:"));
- gtk_widget_set_tooltip_text (_s[1], _("Magenta"));
- gtk_widget_set_tooltip_text (_b[1], _("Magenta"));
- gtk_label_set_markup_with_mnemonic (GTK_LABEL (_l[2]), _("_Y:"));
- gtk_widget_set_tooltip_text (_s[2], _("Yellow"));
- gtk_widget_set_tooltip_text (_b[2], _("Yellow"));
- gtk_label_set_markup_with_mnemonic (GTK_LABEL (_l[3]), _("_K:"));
- gtk_widget_set_tooltip_text (_s[3], _("Black"));
- gtk_widget_set_tooltip_text (_b[3], _("Black"));
- gtk_label_set_markup_with_mnemonic (GTK_LABEL (_l[4]), _("_A:"));
- gtk_widget_set_tooltip_text (_s[4], _("Alpha (opacity)"));
- gtk_widget_set_tooltip_text (_b[4], _("Alpha (opacity)"));
- sp_color_slider_set_map (SP_COLOR_SLIDER (_s[0]), NULL);
- gtk_widget_show (_l[4]);
- gtk_widget_show (_s[4]);
- gtk_widget_show (_b[4]);
- _updating = TRUE;
-
- sp_color_rgb_to_cmyk_floatv (c, rgba[0], rgba[1], rgba[2]);
- setScaled( _a[0], c[0] );
- setScaled( _a[1], c[1] );
- setScaled( _a[2], c[2] );
- setScaled( _a[3], c[3] );
-
- setScaled( _a[4], rgba[3] );
- _updating = FALSE;
- _updateSliders( CSC_CHANNELS_ALL );
- break;
- default:
- g_warning ("file %s: line %d: Illegal color selector mode", __FILE__, __LINE__);
- break;
- }
-}
-
-SPColorScalesMode ColorScales::getMode() const
-{
- return _mode;
-}
-
-void ColorScales::setSubmode( guint submode )
-{
- g_return_if_fail (_csel != NULL);
- g_return_if_fail (SP_IS_COLOR_SCALES (_csel));
- g_return_if_fail (submode < 3);
-
- switch ( submode )
- {
- default:
- case 0:
- setMode(SP_COLOR_SCALES_MODE_RGB);
- break;
- case 1:
- setMode(SP_COLOR_SCALES_MODE_HSV);
- break;
- case 2:
- setMode(SP_COLOR_SCALES_MODE_CMYK);
- break;
- }
-}
-
-guint ColorScales::getSubmode() const
-{
- guint submode = 0;
-
- switch ( _mode )
- {
- case SP_COLOR_SCALES_MODE_HSV:
- submode = 1;
- break;
- case SP_COLOR_SCALES_MODE_CMYK:
- submode = 2;
- break;
- case SP_COLOR_SCALES_MODE_RGB:
- default:
- submode = 0;
- }
-
- return submode;
-}
-
-void ColorScales::_adjustmentAnyChanged( GtkAdjustment *adjustment, SPColorScales *cs )
-{
- gint channel = GPOINTER_TO_INT (g_object_get_data(G_OBJECT (adjustment), "channel"));
-
- _adjustmentChanged(cs, channel);
-}
-
-void ColorScales::_sliderAnyGrabbed( SPColorSlider *slider, SPColorScales *cs )
-{
- (void)slider;
- ColorScales* scales = static_cast<ColorScales*>(SP_COLOR_SELECTOR(cs)->base);
- if (!scales->_dragging) {
- scales->_dragging = TRUE;
- scales->_grabbed();
- scales->_recalcColor( FALSE );
- }
-}
-
-void ColorScales::_sliderAnyReleased( SPColorSlider *slider, SPColorScales *cs )
-{
- (void)slider;
- ColorScales* scales = static_cast<ColorScales*>(SP_COLOR_SELECTOR(cs)->base);
- if (scales->_dragging) {
- scales->_dragging = FALSE;
- scales->_released();
- scales->_recalcColor( FALSE );
- }
-}
-
-void ColorScales::_sliderAnyChanged( SPColorSlider *slider, SPColorScales *cs )
-{
- (void)slider;
- ColorScales* scales = static_cast<ColorScales*>(SP_COLOR_SELECTOR(cs)->base);
-
- scales->_recalcColor( TRUE );
-}
-
-void ColorScales::_adjustmentChanged( SPColorScales *cs, guint channel )
-{
- ColorScales* scales = static_cast<ColorScales*>(SP_COLOR_SELECTOR(cs)->base);
- if (scales->_updating) return;
-
- scales->_updating = TRUE;
-
- scales->_updateSliders( (1 << channel) );
-
- scales->_recalcColor (TRUE);
-
- scales->_updating = FALSE;
-}
-
-void ColorScales::_updateSliders( guint channels )
-{
- gfloat rgb0[3], rgbm[3], rgb1[3];
-#ifdef SPCS_PREVIEW
- guint32 rgba;
-#endif
- switch (_mode) {
- case SP_COLOR_SCALES_MODE_RGB:
- if ((channels != CSC_CHANNEL_R) && (channels != CSC_CHANNEL_A)) {
- /* Update red */
- sp_color_slider_set_colors (SP_COLOR_SLIDER (_s[0]),
- SP_RGBA32_F_COMPOSE (0.0, getScaled(_a[1]), getScaled(_a[2]), 1.0),
- SP_RGBA32_F_COMPOSE (0.5, getScaled(_a[1]), getScaled(_a[2]), 1.0),
- SP_RGBA32_F_COMPOSE (1.0, getScaled(_a[1]), getScaled(_a[2]), 1.0));
- }
- if ((channels != CSC_CHANNEL_G) && (channels != CSC_CHANNEL_A)) {
- /* Update green */
- sp_color_slider_set_colors (SP_COLOR_SLIDER (_s[1]),
- SP_RGBA32_F_COMPOSE (getScaled(_a[0]), 0.0, getScaled(_a[2]), 1.0),
- SP_RGBA32_F_COMPOSE (getScaled(_a[0]), 0.5, getScaled(_a[2]), 1.0),
- SP_RGBA32_F_COMPOSE (getScaled(_a[0]), 1.0, getScaled(_a[2]), 1.0));
- }
- if ((channels != CSC_CHANNEL_B) && (channels != CSC_CHANNEL_A)) {
- /* Update blue */
- sp_color_slider_set_colors (SP_COLOR_SLIDER (_s[2]),
- SP_RGBA32_F_COMPOSE (getScaled(_a[0]), getScaled(_a[1]), 0.0, 1.0),
- SP_RGBA32_F_COMPOSE (getScaled(_a[0]), getScaled(_a[1]), 0.5, 1.0),
- SP_RGBA32_F_COMPOSE (getScaled(_a[0]), getScaled(_a[1]), 1.0, 1.0));
- }
- if (channels != CSC_CHANNEL_A) {
- /* Update alpha */
- sp_color_slider_set_colors (SP_COLOR_SLIDER (_s[3]),
- SP_RGBA32_F_COMPOSE (getScaled(_a[0]), getScaled(_a[1]), getScaled(_a[2]), 0.0),
- SP_RGBA32_F_COMPOSE (getScaled(_a[0]), getScaled(_a[1]), getScaled(_a[2]), 0.5),
- SP_RGBA32_F_COMPOSE (getScaled(_a[0]), getScaled(_a[1]), getScaled(_a[2]), 1.0));
- }
- break;
- case SP_COLOR_SCALES_MODE_HSV:
- /* Hue is never updated */
- if ((channels != CSC_CHANNEL_S) && (channels != CSC_CHANNEL_A)) {
- /* Update saturation */
- sp_color_hsl_to_rgb_floatv (rgb0, getScaled(_a[0]), 0.0, getScaled(_a[2]));
- sp_color_hsl_to_rgb_floatv (rgbm, getScaled(_a[0]), 0.5, getScaled(_a[2]));
- sp_color_hsl_to_rgb_floatv (rgb1, getScaled(_a[0]), 1.0, getScaled(_a[2]));
- sp_color_slider_set_colors (SP_COLOR_SLIDER (_s[1]),
- SP_RGBA32_F_COMPOSE (rgb0[0], rgb0[1], rgb0[2], 1.0),
- SP_RGBA32_F_COMPOSE (rgbm[0], rgbm[1], rgbm[2], 1.0),
- SP_RGBA32_F_COMPOSE (rgb1[0], rgb1[1], rgb1[2], 1.0));
- }
- if ((channels != CSC_CHANNEL_V) && (channels != CSC_CHANNEL_A)) {
- /* Update value */
- sp_color_hsl_to_rgb_floatv (rgb0, getScaled(_a[0]), getScaled(_a[1]), 0.0);
- sp_color_hsl_to_rgb_floatv (rgbm, getScaled(_a[0]), getScaled(_a[1]), 0.5);
- sp_color_hsl_to_rgb_floatv (rgb1, getScaled(_a[0]), getScaled(_a[1]), 1.0);
- sp_color_slider_set_colors (SP_COLOR_SLIDER (_s[2]),
- SP_RGBA32_F_COMPOSE (rgb0[0], rgb0[1], rgb0[2], 1.0),
- SP_RGBA32_F_COMPOSE (rgbm[0], rgbm[1], rgbm[2], 1.0),
- SP_RGBA32_F_COMPOSE (rgb1[0], rgb1[1], rgb1[2], 1.0));
- }
- if (channels != CSC_CHANNEL_A) {
- /* Update alpha */
- sp_color_hsl_to_rgb_floatv (rgb0, getScaled(_a[0]), getScaled(_a[1]), getScaled(_a[2]));
- sp_color_slider_set_colors (SP_COLOR_SLIDER (_s[3]),
- SP_RGBA32_F_COMPOSE (rgb0[0], rgb0[1], rgb0[2], 0.0),
- SP_RGBA32_F_COMPOSE (rgb0[0], rgb0[1], rgb0[2], 0.5),
- SP_RGBA32_F_COMPOSE (rgb0[0], rgb0[1], rgb0[2], 1.0));
- }
- break;
- case SP_COLOR_SCALES_MODE_CMYK:
- if ((channels != CSC_CHANNEL_C) && (channels != CSC_CHANNEL_CMYKA)) {
- /* Update C */
- sp_color_cmyk_to_rgb_floatv (rgb0, 0.0, getScaled(_a[1]), getScaled(_a[2]), getScaled(_a[3]));
- sp_color_cmyk_to_rgb_floatv (rgbm, 0.5, getScaled(_a[1]), getScaled(_a[2]), getScaled(_a[3]));
- sp_color_cmyk_to_rgb_floatv (rgb1, 1.0, getScaled(_a[1]), getScaled(_a[2]), getScaled(_a[3]));
- sp_color_slider_set_colors (SP_COLOR_SLIDER (_s[0]),
- SP_RGBA32_F_COMPOSE (rgb0[0], rgb0[1], rgb0[2], 1.0),
- SP_RGBA32_F_COMPOSE (rgbm[0], rgbm[1], rgbm[2], 1.0),
- SP_RGBA32_F_COMPOSE (rgb1[0], rgb1[1], rgb1[2], 1.0));
- }
- if ((channels != CSC_CHANNEL_M) && (channels != CSC_CHANNEL_CMYKA)) {
- /* Update M */
- sp_color_cmyk_to_rgb_floatv (rgb0, getScaled(_a[0]), 0.0, getScaled(_a[2]), getScaled(_a[3]));
- sp_color_cmyk_to_rgb_floatv (rgbm, getScaled(_a[0]), 0.5, getScaled(_a[2]), getScaled(_a[3]));
- sp_color_cmyk_to_rgb_floatv (rgb1, getScaled(_a[0]), 1.0, getScaled(_a[2]), getScaled(_a[3]));
- sp_color_slider_set_colors (SP_COLOR_SLIDER (_s[1]),
- SP_RGBA32_F_COMPOSE (rgb0[0], rgb0[1], rgb0[2], 1.0),
- SP_RGBA32_F_COMPOSE (rgbm[0], rgbm[1], rgbm[2], 1.0),
- SP_RGBA32_F_COMPOSE (rgb1[0], rgb1[1], rgb1[2], 1.0));
- }
- if ((channels != CSC_CHANNEL_Y) && (channels != CSC_CHANNEL_CMYKA)) {
- /* Update Y */
- sp_color_cmyk_to_rgb_floatv (rgb0, getScaled(_a[0]), getScaled(_a[1]), 0.0, getScaled(_a[3]));
- sp_color_cmyk_to_rgb_floatv (rgbm, getScaled(_a[0]), getScaled(_a[1]), 0.5, getScaled(_a[3]));
- sp_color_cmyk_to_rgb_floatv (rgb1, getScaled(_a[0]), getScaled(_a[1]), 1.0, getScaled(_a[3]));
- sp_color_slider_set_colors (SP_COLOR_SLIDER (_s[2]),
- SP_RGBA32_F_COMPOSE (rgb0[0], rgb0[1], rgb0[2], 1.0),
- SP_RGBA32_F_COMPOSE (rgbm[0], rgbm[1], rgbm[2], 1.0),
- SP_RGBA32_F_COMPOSE (rgb1[0], rgb1[1], rgb1[2], 1.0));
- }
- if ((channels != CSC_CHANNEL_K) && (channels != CSC_CHANNEL_CMYKA)) {
- /* Update K */
- sp_color_cmyk_to_rgb_floatv (rgb0, getScaled(_a[0]), getScaled(_a[1]), getScaled(_a[2]), 0.0);
- sp_color_cmyk_to_rgb_floatv (rgbm, getScaled(_a[0]), getScaled(_a[1]), getScaled(_a[2]), 0.5);
- sp_color_cmyk_to_rgb_floatv (rgb1, getScaled(_a[0]), getScaled(_a[1]), getScaled(_a[2]), 1.0);
- sp_color_slider_set_colors (SP_COLOR_SLIDER (_s[3]),
- SP_RGBA32_F_COMPOSE (rgb0[0], rgb0[1], rgb0[2], 1.0),
- SP_RGBA32_F_COMPOSE (rgbm[0], rgbm[1], rgbm[2], 1.0),
- SP_RGBA32_F_COMPOSE (rgb1[0], rgb1[1], rgb1[2], 1.0));
- }
- if (channels != CSC_CHANNEL_CMYKA) {
- /* Update alpha */
- sp_color_cmyk_to_rgb_floatv (rgb0, getScaled(_a[0]), getScaled(_a[1]), getScaled(_a[2]), getScaled(_a[3]));
- sp_color_slider_set_colors (SP_COLOR_SLIDER (_s[4]),
- SP_RGBA32_F_COMPOSE (rgb0[0], rgb0[1], rgb0[2], 0.0),
- SP_RGBA32_F_COMPOSE (rgb0[0], rgb0[1], rgb0[2], 0.5),
- SP_RGBA32_F_COMPOSE (rgb0[0], rgb0[1], rgb0[2], 1.0));
- }
- break;
- default:
- g_warning ("file %s: line %d: Illegal color selector mode", __FILE__, __LINE__);
- break;
- }
-
- // Force the internal color to be updated
- if ( !_updating )
- {
- _recalcColor( TRUE );
- }
-
-#ifdef SPCS_PREVIEW
- rgba = sp_color_scales_get_rgba32 (cs);
- sp_color_preview_set_rgba32 (SP_COLOR_PREVIEW (_p), rgba);
-#endif
-}
-
-static const gchar *
-sp_color_scales_hue_map (void)
-{
- static gchar *map = NULL;
-
- if (!map) {
- gchar *p;
- gint h;
- map = g_new (gchar, 4 * 1024);
- p = map;
- for (h = 0; h < 1024; h++) {
- gfloat rgb[3];
- sp_color_hsl_to_rgb_floatv (rgb, h / 1024.0, 1.0, 0.5);
- *p++ = SP_COLOR_F_TO_U (rgb[0]);
- *p++ = SP_COLOR_F_TO_U (rgb[1]);
- *p++ = SP_COLOR_F_TO_U (rgb[2]);
- *p++ = 255;
- }
- }
-
- return map;
-}
-
-
diff --git a/src/widgets/sp-color-scales.h b/src/widgets/sp-color-scales.h
deleted file mode 100644
index 72cbafa2f..000000000
--- a/src/widgets/sp-color-scales.h
+++ /dev/null
@@ -1,102 +0,0 @@
-#ifndef SEEN_SP_COLOR_SCALES_H
-#define SEEN_SP_COLOR_SCALES_H
-
-#include <glib.h>
-
-#include <widgets/sp-color-selector.h>
-
-struct SPColorScales;
-struct SPColorScalesClass;
-struct SPColorSlider;
-
-typedef enum {
- SP_COLOR_SCALES_MODE_NONE = 0,
- SP_COLOR_SCALES_MODE_RGB = 1,
- SP_COLOR_SCALES_MODE_HSV = 2,
- SP_COLOR_SCALES_MODE_CMYK = 3
-} SPColorScalesMode;
-
-
-
-class ColorScales: public ColorSelector
-{
-public:
- static gfloat getScaled( const GtkAdjustment *a );
- static void setScaled( GtkAdjustment *a, gfloat v);
-
- ColorScales(SPColorSelector *csel);
- virtual ~ColorScales();
-
- virtual void init();
-
- virtual void setSubmode(guint submode);
- virtual guint getSubmode() const;
-
- void setMode(SPColorScalesMode mode);
- SPColorScalesMode getMode() const;
-
-
-protected:
- virtual void _colorChanged();
-
- static void _adjustmentAnyChanged(GtkAdjustment *adjustment, SPColorScales *cs);
- static void _sliderAnyGrabbed(SPColorSlider *slider, SPColorScales *cs);
- static void _sliderAnyReleased(SPColorSlider *slider, SPColorScales *cs);
- static void _sliderAnyChanged(SPColorSlider *slider, SPColorScales *cs);
- static void _adjustmentChanged(SPColorScales *cs, guint channel);
-
- void _getRgbaFloatv(gfloat *rgba);
- void _getCmykaFloatv(gfloat *cmyka);
- guint32 _getRgba32();
- void _updateSliders(guint channels);
- void _recalcColor(gboolean changing);
-
- void _setRangeLimit( gdouble upper );
-
- SPColorScalesMode _mode;
- gdouble _rangeLimit;
- gboolean _updating : 1;
- gboolean _dragging : 1;
- GtkAdjustment *_a[5]; /* Channel adjustments */
- GtkWidget *_s[5]; /* Channel sliders */
- GtkWidget *_b[5]; /* Spinbuttons */
- GtkWidget *_l[5]; /* Labels */
-
-private:
- // By default, disallow copy constructor and assignment operator
- ColorScales(ColorScales const &obj);
- ColorScales &operator=(ColorScales const &obj );
-};
-
-
-
-#define SP_TYPE_COLOR_SCALES (sp_color_scales_get_type())
-#define SP_COLOR_SCALES(o) (G_TYPE_CHECK_INSTANCE_CAST((o), SP_TYPE_COLOR_SCALES, SPColorScales))
-#define SP_COLOR_SCALES_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), SP_TYPE_COLOR_SCALES, SPColorScalesClass))
-#define SP_IS_COLOR_SCALES(o) (G_TYPE_CHECK_INSTANCE_TYPE((o), SP_TYPE_COLOR_SCALES))
-#define SP_IS_COLOR_SCALES_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE((k), SP_TYPE_COLOR_SCALES))
-
-struct SPColorScales {
- SPColorSelector parent;
-};
-
-struct SPColorScalesClass {
- SPColorSelectorClass parent_class;
-};
-
-GType sp_color_scales_get_type();
-
-GtkWidget *sp_color_scales_new();
-
-#endif /* !SEEN_SP_COLOR_SCALES_H */
-
-/*
- Local Variables:
- mode:c++
- c-file-style:"stroustrup"
- c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))
- indent-tabs-mode:nil
- fill-column:99
- End:
-*/
-// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4 :
diff --git a/src/widgets/sp-color-selector.cpp b/src/widgets/sp-color-selector.cpp
index e97c36431..dad0a18b0 100644
--- a/src/widgets/sp-color-selector.cpp
+++ b/src/widgets/sp-color-selector.cpp
@@ -6,6 +6,11 @@
#ifdef HAVE_CONFIG_H
# include "config.h"
#endif
+
+#if GLIBMM_DISABLE_DEPRECATED && HAVE_GLIBMM_THREADS_H
+#include <glibmm/threads.h>
+#endif
+
#include <math.h>
#include <gtk/gtk.h>
#include <glibmm/i18n.h>
@@ -289,7 +294,7 @@ void ColorSelector::_updateInternals( const SPColor& color, gfloat alpha, gboole
(_held ? "CHANGED" : "DRAGGED" ),
color.toRGBA32( alpha ), (color.icc?color.icc->colorProfile.c_str():"<null>"), FOO_NAME(_csel));
#endif
- g_signal_emit(G_OBJECT(_csel), csel_signals[_held ? CHANGED : DRAGGED], 0);
+ g_signal_emit(G_OBJECT(_csel), csel_signals[_held ? DRAGGED : CHANGED], 0);
}
}
diff --git a/src/widgets/sp-color-selector.h b/src/widgets/sp-color-selector.h
index 30061774a..308a5519c 100644
--- a/src/widgets/sp-color-selector.h
+++ b/src/widgets/sp-color-selector.h
@@ -1,6 +1,14 @@
#ifndef SEEN_SP_COLOR_SELECTOR_H
#define SEEN_SP_COLOR_SELECTOR_H
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
+#if GLIBMM_DISABLE_DEPRECATED && HAVE_GLIBMM_THREADS_H
+#include <glibmm/threads.h>
+#endif
+
#include <gtk/gtk.h>
#include "color.h"
diff --git a/src/widgets/sp-color-slider.cpp b/src/widgets/sp-color-slider.cpp
deleted file mode 100644
index ab7e2cd84..000000000
--- a/src/widgets/sp-color-slider.cpp
+++ /dev/null
@@ -1,749 +0,0 @@
-/*
- * A slider with colored background
- *
- * Author:
- * Lauris Kaplinski <lauris@kaplinski.com>
- * bulia byak <buliabyak@users.sf.net>
- *
- * Copyright (C) 2001-2002 Lauris Kaplinski
- *
- * This code is in public domain
- */
-
-#include <gtk/gtk.h>
-#include "sp-color-scales.h"
-#include "sp-color-slider.h"
-#include "preferences.h"
-
-#define SLIDER_WIDTH 96
-#define SLIDER_HEIGHT 8
-#define ARROW_SIZE 7
-
-enum {
- GRABBED,
- DRAGGED,
- RELEASED,
- CHANGED,
- LAST_SIGNAL
-};
-
-static void sp_color_slider_dispose(GObject *object);
-
-static void sp_color_slider_realize (GtkWidget *widget);
-static void sp_color_slider_size_request (GtkWidget *widget, GtkRequisition *requisition);
-
-#if GTK_CHECK_VERSION(3,0,0)
-static void sp_color_slider_get_preferred_width(GtkWidget *widget,
- gint *minimal_width,
- gint *natural_width);
-
-static void sp_color_slider_get_preferred_height(GtkWidget *widget,
- gint *minimal_height,
- gint *natural_height);
-#else
-static gboolean sp_color_slider_expose(GtkWidget *widget, GdkEventExpose *event);
-#endif
-
-static void sp_color_slider_size_allocate (GtkWidget *widget, GtkAllocation *allocation);
-
-static gboolean sp_color_slider_draw(GtkWidget *widget, cairo_t *cr);
-
-static gint sp_color_slider_button_press (GtkWidget *widget, GdkEventButton *event);
-static gint sp_color_slider_button_release (GtkWidget *widget, GdkEventButton *event);
-static gint sp_color_slider_motion_notify (GtkWidget *widget, GdkEventMotion *event);
-
-static void sp_color_slider_adjustment_changed (GtkAdjustment *adjustment, SPColorSlider *slider);
-static void sp_color_slider_adjustment_value_changed (GtkAdjustment *adjustment, SPColorSlider *slider);
-
-static const guchar *sp_color_slider_render_gradient (gint x0, gint y0, gint width, gint height,
- gint c[], gint dc[], guint b0, guint b1, guint mask);
-static const guchar *sp_color_slider_render_map (gint x0, gint y0, gint width, gint height,
- guchar *map, gint start, gint step, guint b0, guint b1, guint mask);
-
-static guint slider_signals[LAST_SIGNAL] = {0};
-
-G_DEFINE_TYPE(SPColorSlider, sp_color_slider, GTK_TYPE_WIDGET);
-
-static void sp_color_slider_class_init(SPColorSliderClass *klass)
-{
- GObjectClass *object_class = G_OBJECT_CLASS(klass);
- GtkWidgetClass *widget_class = GTK_WIDGET_CLASS(klass);
-
- slider_signals[GRABBED] = g_signal_new ("grabbed",
- G_TYPE_FROM_CLASS(object_class),
- (GSignalFlags)(G_SIGNAL_RUN_FIRST | G_SIGNAL_NO_RECURSE),
- G_STRUCT_OFFSET (SPColorSliderClass, grabbed),
- NULL, NULL,
- g_cclosure_marshal_VOID__VOID,
- G_TYPE_NONE, 0);
- slider_signals[DRAGGED] = g_signal_new ("dragged",
- G_TYPE_FROM_CLASS(object_class),
- (GSignalFlags)(G_SIGNAL_RUN_FIRST | G_SIGNAL_NO_RECURSE),
- G_STRUCT_OFFSET (SPColorSliderClass, dragged),
- NULL, NULL,
- g_cclosure_marshal_VOID__VOID,
- G_TYPE_NONE, 0);
- slider_signals[RELEASED] = g_signal_new ("released",
- G_TYPE_FROM_CLASS(object_class),
- (GSignalFlags)(G_SIGNAL_RUN_FIRST | G_SIGNAL_NO_RECURSE),
- G_STRUCT_OFFSET (SPColorSliderClass, released),
- NULL, NULL,
- g_cclosure_marshal_VOID__VOID,
- G_TYPE_NONE, 0);
- slider_signals[CHANGED] = g_signal_new ("changed",
- G_TYPE_FROM_CLASS(object_class),
- (GSignalFlags)(G_SIGNAL_RUN_FIRST | G_SIGNAL_NO_RECURSE),
- G_STRUCT_OFFSET (SPColorSliderClass, changed),
- NULL, NULL,
- g_cclosure_marshal_VOID__VOID,
- G_TYPE_NONE, 0);
-
- object_class->dispose = sp_color_slider_dispose;
-
- widget_class->realize = sp_color_slider_realize;
-#if GTK_CHECK_VERSION(3,0,0)
- widget_class->get_preferred_width = sp_color_slider_get_preferred_width;
- widget_class->get_preferred_height = sp_color_slider_get_preferred_height;
- widget_class->draw = sp_color_slider_draw;
-#else
- widget_class->size_request = sp_color_slider_size_request;
- widget_class->expose_event = sp_color_slider_expose;
-#endif
- widget_class->size_allocate = sp_color_slider_size_allocate;
-/* widget_class->draw_focus = sp_color_slider_draw_focus; */
-/* widget_class->draw_default = sp_color_slider_draw_default; */
-
- widget_class->button_press_event = sp_color_slider_button_press;
- widget_class->button_release_event = sp_color_slider_button_release;
- widget_class->motion_notify_event = sp_color_slider_motion_notify;
-}
-
-static void
-sp_color_slider_init (SPColorSlider *slider)
-{
- /* We are widget with window */
- gtk_widget_set_has_window (GTK_WIDGET(slider), TRUE);
-
- slider->dragging = FALSE;
-
- slider->adjustment = NULL;
- slider->value = 0.0;
-
- slider->c0[0] = 0x00;
- slider->c0[1] = 0x00;
- slider->c0[2] = 0x00;
- slider->c0[3] = 0xff;
-
- slider->cm[0] = 0xff;
- slider->cm[1] = 0x00;
- slider->cm[2] = 0x00;
- slider->cm[3] = 0xff;
-
- slider->c1[0] = 0xff;
- slider->c1[1] = 0xff;
- slider->c1[2] = 0xff;
- slider->c1[3] = 0xff;
-
- slider->b0 = 0x5f;
- slider->b1 = 0xa0;
- slider->bmask = 0x08;
-
- slider->map = NULL;
-}
-
-static void sp_color_slider_dispose(GObject *object)
-{
- SPColorSlider *slider = SP_COLOR_SLIDER (object);
-
- if (slider->adjustment) {
- g_signal_handlers_disconnect_matched (G_OBJECT (slider->adjustment), G_SIGNAL_MATCH_DATA, 0, 0, NULL, NULL, slider);
- g_object_unref (slider->adjustment);
- slider->adjustment = NULL;
- }
-
- if (G_OBJECT_CLASS(sp_color_slider_parent_class)->dispose)
- G_OBJECT_CLASS(sp_color_slider_parent_class)->dispose (object);
-}
-
-static void
-sp_color_slider_realize (GtkWidget *widget)
-{
- GdkWindowAttr attributes;
- gint attributes_mask;
- GtkAllocation allocation;
-
- gtk_widget_get_allocation(widget, &allocation);
- gtk_widget_set_realized (widget, TRUE);
-
- attributes.window_type = GDK_WINDOW_CHILD;
- attributes.x = allocation.x;
- attributes.y = allocation.y;
- attributes.width = allocation.width;
- attributes.height = allocation.height;
- attributes.wclass = GDK_INPUT_OUTPUT;
- attributes.visual = gdk_screen_get_system_visual(gdk_screen_get_default());
-
-#if !GTK_CHECK_VERSION(3,0,0)
- attributes.colormap = gdk_screen_get_system_colormap(gdk_screen_get_default());
-#endif
-
- attributes.event_mask = gtk_widget_get_events (widget);
- attributes.event_mask |= (GDK_EXPOSURE_MASK |
- GDK_BUTTON_PRESS_MASK |
- GDK_BUTTON_RELEASE_MASK |
- GDK_POINTER_MOTION_MASK |
- GDK_ENTER_NOTIFY_MASK |
- GDK_LEAVE_NOTIFY_MASK);
-#if GTK_CHECK_VERSION(3,0,0)
- attributes_mask = GDK_WA_X | GDK_WA_Y | GDK_WA_VISUAL;
-#else
- attributes_mask = GDK_WA_X | GDK_WA_Y | GDK_WA_VISUAL | GDK_WA_COLORMAP;
-#endif
-
- gtk_widget_set_window(widget,
- gdk_window_new(gtk_widget_get_parent_window(widget),
- &attributes, attributes_mask));
-
- gdk_window_set_user_data(gtk_widget_get_window(widget), widget);
-
-#if !GTK_CHECK_VERSION(3,0,0)
- // This doesn't do anything in GTK+ 3
- gtk_widget_set_style(widget,
- gtk_style_attach(gtk_widget_get_style(widget),
- gtk_widget_get_window(widget)));
-#endif
-}
-
-static void
-sp_color_slider_size_request (GtkWidget *widget, GtkRequisition *requisition)
-{
- GtkStyle *style = gtk_widget_get_style(widget);
- requisition->width = SLIDER_WIDTH + style->xthickness * 2;
- requisition->height = SLIDER_HEIGHT + style->ythickness * 2;
-}
-
-#if GTK_CHECK_VERSION(3,0,0)
-static void sp_color_slider_get_preferred_width(GtkWidget *widget, gint *minimal_width, gint *natural_width)
-{
- GtkRequisition requisition;
- sp_color_slider_size_request(widget, &requisition);
- *minimal_width = *natural_width = requisition.width;
-}
-
-static void sp_color_slider_get_preferred_height(GtkWidget *widget, gint *minimal_height, gint *natural_height)
-{
- GtkRequisition requisition;
- sp_color_slider_size_request(widget, &requisition);
- *minimal_height = *natural_height = requisition.height;
-}
-#endif
-
-static void
-sp_color_slider_size_allocate (GtkWidget *widget, GtkAllocation *allocation)
-{
- gtk_widget_set_allocation(widget, allocation);
-
- if (gtk_widget_get_realized (widget)) {
- /* Resize GdkWindow */
- gdk_window_move_resize(gtk_widget_get_window(widget),
- allocation->x, allocation->y,
- allocation->width, allocation->height);
- }
-}
-
-#if !GTK_CHECK_VERSION(3,0,0)
-static gboolean sp_color_slider_expose(GtkWidget *widget, GdkEventExpose * /*event*/)
-{
- gboolean result = FALSE;
-
- if (gtk_widget_is_drawable(widget)) {
- GdkWindow *window = gtk_widget_get_window(widget);
- cairo_t *cr = gdk_cairo_create(window);
- result = sp_color_slider_draw(widget, cr);
- cairo_destroy(cr);
- }
-
- return result;
-}
-#endif
-
-static gint
-sp_color_slider_button_press (GtkWidget *widget, GdkEventButton *event)
-{
- SPColorSlider *slider;
-
- slider = SP_COLOR_SLIDER (widget);
-
- if (event->button == 1) {
- GtkAllocation allocation;
- gtk_widget_get_allocation(widget, &allocation);
- gint cx, cw;
- cx = gtk_widget_get_style(widget)->xthickness;
- cw = allocation.width - 2 * cx;
- g_signal_emit (G_OBJECT (slider), slider_signals[GRABBED], 0);
- slider->dragging = TRUE;
- slider->oldvalue = slider->value;
- ColorScales::setScaled( slider->adjustment, CLAMP ((gfloat) (event->x - cx) / cw, 0.0, 1.0) );
- g_signal_emit (G_OBJECT (slider), slider_signals[DRAGGED], 0);
-
-#if GTK_CHECK_VERSION(3,0,0)
- gdk_device_grab(gdk_event_get_device(reinterpret_cast<GdkEvent *>(event)),
- gtk_widget_get_window(widget),
- GDK_OWNERSHIP_NONE,
- FALSE,
- static_cast<GdkEventMask>(GDK_POINTER_MOTION_MASK | GDK_BUTTON_RELEASE_MASK),
- NULL,
- event->time);
-#else
- gdk_pointer_grab(gtk_widget_get_window(widget), FALSE,
- static_cast<GdkEventMask>(GDK_POINTER_MOTION_MASK | GDK_BUTTON_RELEASE_MASK),
- NULL, NULL, event->time);
-#endif
- }
-
- return FALSE;
-}
-
-static gint
-sp_color_slider_button_release (GtkWidget *widget, GdkEventButton *event)
-{
- SPColorSlider *slider;
-
- slider = SP_COLOR_SLIDER (widget);
-
- if (event->button == 1) {
-
-#if GTK_CHECK_VERSION(3,0,0)
- gdk_device_ungrab(gdk_event_get_device(reinterpret_cast<GdkEvent *>(event)),
- gdk_event_get_time(reinterpret_cast<GdkEvent *>(event)));
-#else
- gdk_pointer_ungrab (event->time);
-#endif
-
- slider->dragging = FALSE;
- g_signal_emit (G_OBJECT (slider), slider_signals[RELEASED], 0);
- if (slider->value != slider->oldvalue) g_signal_emit (G_OBJECT (slider), slider_signals[CHANGED], 0);
- }
-
- return FALSE;
-}
-
-static gint
-sp_color_slider_motion_notify (GtkWidget *widget, GdkEventMotion *event)
-{
- SPColorSlider *slider;
-
- slider = SP_COLOR_SLIDER (widget);
-
- if (slider->dragging) {
- gint cx, cw;
- GtkAllocation allocation;
- gtk_widget_get_allocation(widget, &allocation);
- cx = gtk_widget_get_style(widget)->xthickness;
- cw = allocation.width - 2 * cx;
- ColorScales::setScaled( slider->adjustment, CLAMP ((gfloat) (event->x - cx) / cw, 0.0, 1.0) );
- g_signal_emit (G_OBJECT (slider), slider_signals[DRAGGED], 0);
- }
-
- return FALSE;
-}
-
-GtkWidget *sp_color_slider_new(GtkAdjustment *adjustment)
-{
- SPColorSlider *slider = SP_COLOR_SLIDER(g_object_new(SP_TYPE_COLOR_SLIDER, NULL));
-
- sp_color_slider_set_adjustment (slider, adjustment);
-
- return GTK_WIDGET (slider);
-}
-
-void sp_color_slider_set_adjustment(SPColorSlider *slider, GtkAdjustment *adjustment)
-{
- g_return_if_fail (slider != NULL);
- g_return_if_fail (SP_IS_COLOR_SLIDER (slider));
-
- if (!adjustment) {
- adjustment = GTK_ADJUSTMENT(gtk_adjustment_new(0.0, 0.0, 1.0, 0.01, 0.0, 0.0));
- } else {
- gtk_adjustment_set_page_increment(adjustment, 0.0);
- gtk_adjustment_set_page_size(adjustment, 0.0);
- }
-
- if (slider->adjustment != adjustment) {
- if (slider->adjustment) {
- g_signal_handlers_disconnect_matched (G_OBJECT (slider->adjustment), G_SIGNAL_MATCH_DATA, 0, 0, NULL, NULL, slider);
- g_object_unref (slider->adjustment);
- }
-
- slider->adjustment = adjustment;
- g_object_ref (adjustment);
- g_object_ref_sink (adjustment);
-
- g_signal_connect (G_OBJECT (adjustment), "changed",
- G_CALLBACK (sp_color_slider_adjustment_changed), slider);
- g_signal_connect (G_OBJECT (adjustment), "value_changed",
- G_CALLBACK (sp_color_slider_adjustment_value_changed), slider);
-
- slider->value = ColorScales::getScaled( adjustment );
-
- sp_color_slider_adjustment_changed (adjustment, slider);
- }
-}
-
-void
-sp_color_slider_set_colors (SPColorSlider *slider, guint32 start, guint32 mid, guint32 end)
-{
- g_return_if_fail (slider != NULL);
- g_return_if_fail (SP_IS_COLOR_SLIDER (slider));
-
- // Remove any map, if set
- slider->map = 0;
-
- slider->c0[0] = start >> 24;
- slider->c0[1] = (start >> 16) & 0xff;
- slider->c0[2] = (start >> 8) & 0xff;
- slider->c0[3] = start & 0xff;
-
- slider->cm[0] = mid >> 24;
- slider->cm[1] = (mid >> 16) & 0xff;
- slider->cm[2] = (mid >> 8) & 0xff;
- slider->cm[3] = mid & 0xff;
-
- slider->c1[0] = end >> 24;
- slider->c1[1] = (end >> 16) & 0xff;
- slider->c1[2] = (end >> 8) & 0xff;
- slider->c1[3] = end & 0xff;
-
- gtk_widget_queue_draw (GTK_WIDGET (slider));
-}
-
-void
-sp_color_slider_set_map (SPColorSlider *slider, const guchar *map)
-{
- g_return_if_fail (slider != NULL);
- g_return_if_fail (SP_IS_COLOR_SLIDER (slider));
-
- slider->map = const_cast<guchar *>(map);
-
- gtk_widget_queue_draw (GTK_WIDGET (slider));
-}
-
-void
-sp_color_slider_set_background (SPColorSlider *slider, guint dark, guint light, guint size)
-{
- g_return_if_fail (slider != NULL);
- g_return_if_fail (SP_IS_COLOR_SLIDER (slider));
-
- slider->b0 = dark;
- slider->b1 = light;
- slider->bmask = size;
-
- gtk_widget_queue_draw (GTK_WIDGET (slider));
-}
-
-static void
-sp_color_slider_adjustment_changed (GtkAdjustment */*adjustment*/, SPColorSlider *slider)
-{
- gtk_widget_queue_draw (GTK_WIDGET (slider));
-}
-
-static void
-sp_color_slider_adjustment_value_changed (GtkAdjustment *adjustment, SPColorSlider *slider)
-{
- GtkWidget *widget;
-
- widget = GTK_WIDGET (slider);
-
- if (slider->value != ColorScales::getScaled( adjustment )) {
- gint cx, cy, cw, ch;
- GtkStyle *style = gtk_widget_get_style(widget);
- GtkAllocation allocation;
- gtk_widget_get_allocation(widget, &allocation);
- cx = style->xthickness;
- cy = style->ythickness;
- cw = allocation.width - 2 * cx;
- ch = allocation.height - 2 * cy;
- if ((gint) (ColorScales::getScaled( adjustment ) * cw) != (gint) (slider->value * cw)) {
- gint ax, ay;
- gfloat value;
- value = slider->value;
- slider->value = ColorScales::getScaled( adjustment );
- ax = (int)(cx + value * cw - ARROW_SIZE / 2 - 2);
- ay = cy;
- gtk_widget_queue_draw_area (widget, ax, ay, ARROW_SIZE + 4, ch);
- ax = (int)(cx + slider->value * cw - ARROW_SIZE / 2 - 2);
- ay = cy;
- gtk_widget_queue_draw_area (widget, ax, ay, ARROW_SIZE + 4, ch);
- } else {
- slider->value = ColorScales::getScaled( adjustment );
- }
- }
-}
-
-static gboolean sp_color_slider_draw(GtkWidget *widget, cairo_t *cr)
-{
- SPColorSlider *slider = SP_COLOR_SLIDER(widget);
-
- gboolean colorsOnTop = Inkscape::Preferences::get()->getBool("/options/workarounds/colorsontop", false);
-
- GtkAllocation allocation;
- gtk_widget_get_allocation(widget, &allocation);
-
-#if GTK_CHECK_VERSION(3,0,0)
- GtkStyleContext *context = gtk_widget_get_style_context(widget);
-#else
- GdkWindow *window = gtk_widget_get_window(widget);
- GtkStyle *style = gtk_widget_get_style(widget);
-#endif
-
- // Draw shadow
- if (colorsOnTop) {
-#if GTK_CHECK_VERSION(3,0,0)
- gtk_render_frame(context,
- cr,
- 0, 0,
- allocation.width, allocation.height);
-#else
- gtk_paint_shadow( style, window,
- gtk_widget_get_state(widget), GTK_SHADOW_IN,
- NULL, widget, "colorslider",
- 0, 0,
- allocation.width, allocation.height);
-#endif
- }
-
- /* Paintable part of color gradient area */
- GdkRectangle carea;
-
-#if GTK_CHECK_VERSION(3,0,0)
- GtkBorder padding;
-
- gtk_style_context_get_padding(context,
- gtk_widget_get_state_flags(widget),
- &padding);
-
- carea.x = padding.left;
- carea.y = padding.top;
-#else
- carea.x = style->xthickness;
- carea.y = style->ythickness;
-#endif
-
- carea.width = allocation.width - 2 * carea.x;
- carea.height = allocation.height - 2 * carea.y;
-
- if (slider->map) {
- /* Render map pixelstore */
- gint d = (1024 << 16) / carea.width;
- gint s = 0;
-
- const guchar *b = sp_color_slider_render_map(0, 0, carea.width, carea.height,
- slider->map, s, d,
- slider->b0, slider->b1, slider->bmask);
-
- if (b != NULL && carea.width > 0) {
- GdkPixbuf *pb = gdk_pixbuf_new_from_data (b, GDK_COLORSPACE_RGB,
- 0, 8, carea.width, carea.height, carea.width * 3, NULL, NULL);
-
- gdk_cairo_set_source_pixbuf(cr, pb, carea.x, carea.y);
- cairo_paint(cr);
- g_object_unref(pb);
- }
-
- } else {
- gint c[4], dc[4];
-
- /* Render gradient */
-
- // part 1: from c0 to cm
- if (carea.width > 0) {
- for (gint i = 0; i < 4; i++) {
- c[i] = slider->c0[i] << 16;
- dc[i] = ((slider->cm[i] << 16) - c[i]) / (carea.width/2);
- }
- guint wi = carea.width/2;
- const guchar *b = sp_color_slider_render_gradient(0, 0, wi, carea.height,
- c, dc, slider->b0, slider->b1, slider->bmask);
-
- /* Draw pixelstore 1 */
- if (b != NULL && wi > 0) {
- GdkPixbuf *pb = gdk_pixbuf_new_from_data (b, GDK_COLORSPACE_RGB,
- 0, 8, wi, carea.height, wi * 3, NULL, NULL);
-
- gdk_cairo_set_source_pixbuf(cr, pb, carea.x, carea.y);
- cairo_paint(cr);
- g_object_unref(pb);
- }
- }
-
- // part 2: from cm to c1
- if (carea.width > 0) {
- for (gint i = 0; i < 4; i++) {
- c[i] = slider->cm[i] << 16;
- dc[i] = ((slider->c1[i] << 16) - c[i]) / (carea.width/2);
- }
- guint wi = carea.width/2;
- const guchar *b = sp_color_slider_render_gradient(carea.width/2, 0, wi, carea.height,
- c, dc,
- slider->b0, slider->b1, slider->bmask);
-
- /* Draw pixelstore 2 */
- if (b != NULL && wi > 0) {
- GdkPixbuf *pb = gdk_pixbuf_new_from_data (b, GDK_COLORSPACE_RGB,
- 0, 8, wi, carea.height, wi * 3, NULL, NULL);
-
- gdk_cairo_set_source_pixbuf(cr, pb, carea.width/2 + carea.x, carea.y);
- cairo_paint(cr);
-
- g_object_unref(pb);
- }
- }
- }
-
- /* Draw shadow */
- if (!colorsOnTop) {
-#if GTK_CHECK_VERSION(3,0,0)
- gtk_render_frame(context,
- cr,
- 0, 0,
- allocation.width, allocation.height);
-#else
- gtk_paint_shadow( style, window,
- gtk_widget_get_state(widget), GTK_SHADOW_IN,
- NULL, widget, "colorslider",
- 0, 0,
- allocation.width, allocation.height);
-#endif
- }
-
- /* Draw arrow */
- gint x = (int)(slider->value * (carea.width - 1) - ARROW_SIZE / 2 + carea.x);
- gint y1 = carea.y;
- gint y2 = carea.y + carea.height - 1;
- cairo_set_line_width(cr, 1.0);
-
- // Define top arrow
- cairo_move_to(cr, x - 0.5, y1 + 0.5);
- cairo_line_to(cr, x + ARROW_SIZE - 0.5, y1 + 0.5);
- cairo_line_to(cr, x + (ARROW_SIZE-1)/2.0, y1 + ARROW_SIZE/2.0 + 0.5);
- cairo_line_to(cr, x - 0.5, y1 + 0.5);
-
- // Define bottom arrow
- cairo_move_to(cr, x - 0.5, y2 + 0.5);
- cairo_line_to(cr, x + ARROW_SIZE - 0.5, y2 + 0.5);
- cairo_line_to(cr, x + (ARROW_SIZE-1)/2.0, y2 - ARROW_SIZE/2.0 + 0.5);
- cairo_line_to(cr, x - 0.5, y2 + 0.5);
-
- // Render both arrows
- cairo_set_source_rgb(cr, 1.0, 1.0, 1.0);
- cairo_stroke_preserve(cr);
- cairo_set_source_rgb(cr, 0.0, 0.0, 0.0);
- cairo_fill(cr);
-
- return FALSE;
-}
-
-/* Colors are << 16 */
-
-static const guchar *
-sp_color_slider_render_gradient (gint x0, gint y0, gint width, gint height,
- gint c[], gint dc[], guint b0, guint b1, guint mask)
-{
- static guchar *buf = NULL;
- static gint bs = 0;
- guchar *dp;
- gint x, y;
- guint r, g, b, a;
-
- if (buf && (bs < width * height)) {
- g_free (buf);
- buf = NULL;
- }
- if (!buf) {
- buf = g_new (guchar, width * height * 3);
- bs = width * height;
- }
-
- dp = buf;
- r = c[0];
- g = c[1];
- b = c[2];
- a = c[3];
- for (x = x0; x < x0 + width; x++) {
- gint cr, cg, cb, ca;
- guchar *d;
- cr = r >> 16;
- cg = g >> 16;
- cb = b >> 16;
- ca = a >> 16;
- d = dp;
- for (y = y0; y < y0 + height; y++) {
- guint bg, fc;
- /* Background value */
- bg = ((x & mask) ^ (y & mask)) ? b0 : b1;
- fc = (cr - bg) * ca;
- d[0] = bg + ((fc + (fc >> 8) + 0x80) >> 8);
- fc = (cg - bg) * ca;
- d[1] = bg + ((fc + (fc >> 8) + 0x80) >> 8);
- fc = (cb - bg) * ca;
- d[2] = bg + ((fc + (fc >> 8) + 0x80) >> 8);
- d += 3 * width;
- }
- r += dc[0];
- g += dc[1];
- b += dc[2];
- a += dc[3];
- dp += 3;
- }
-
- return buf;
-}
-
-/* Positions are << 16 */
-
-static const guchar *
-sp_color_slider_render_map (gint x0, gint y0, gint width, gint height,
- guchar *map, gint start, gint step, guint b0, guint b1, guint mask)
-{
- static guchar *buf = NULL;
- static gint bs = 0;
- guchar *dp;
- gint x, y;
-
- if (buf && (bs < width * height)) {
- g_free (buf);
- buf = NULL;
- }
- if (!buf) {
- buf = g_new (guchar, width * height * 3);
- bs = width * height;
- }
-
- dp = buf;
- for (x = x0; x < x0 + width; x++) {
- gint cr, cg, cb, ca;
- guchar *d = dp;
- guchar *sp = map + 4 * (start >> 16);
- cr = *sp++;
- cg = *sp++;
- cb = *sp++;
- ca = *sp++;
- for (y = y0; y < y0 + height; y++) {
- guint bg, fc;
- /* Background value */
- bg = ((x & mask) ^ (y & mask)) ? b0 : b1;
- fc = (cr - bg) * ca;
- d[0] = bg + ((fc + (fc >> 8) + 0x80) >> 8);
- fc = (cg - bg) * ca;
- d[1] = bg + ((fc + (fc >> 8) + 0x80) >> 8);
- fc = (cb - bg) * ca;
- d[2] = bg + ((fc + (fc >> 8) + 0x80) >> 8);
- d += 3 * width;
- }
- dp += 3;
- start += step;
- }
-
- return buf;
-}
-
diff --git a/src/widgets/sp-color-slider.h b/src/widgets/sp-color-slider.h
deleted file mode 100644
index b81d62e41..000000000
--- a/src/widgets/sp-color-slider.h
+++ /dev/null
@@ -1,60 +0,0 @@
-#ifndef __SP_COLOR_SLIDER_H__
-#define __SP_COLOR_SLIDER_H__
-
-/*
- * A slider with colored background
- *
- * Author:
- * Lauris Kaplinski <lauris@kaplinski.com>
- *
- * Copyright (C) 2001-2002 Lauris Kaplinski
- *
- * This code is in public domain
- */
-
-#include <gtk/gtk.h>
-
-#define SP_TYPE_COLOR_SLIDER (sp_color_slider_get_type ())
-#define SP_COLOR_SLIDER(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), SP_TYPE_COLOR_SLIDER, SPColorSlider))
-#define SP_COLOR_SLIDER_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), SP_TYPE_COLOR_SLIDER, SPColorSliderClass))
-#define SP_IS_COLOR_SLIDER(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), SP_TYPE_COLOR_SLIDER))
-#define SP_IS_COLOR_SLIDER_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), SP_TYPE_COLOR_SLIDER))
-
-struct SPColorSlider {
- GtkWidget widget;
-
- guint dragging : 1;
-
- GtkAdjustment *adjustment;
-
- gfloat value;
- gfloat oldvalue;
- guchar c0[4], cm[4], c1[4];
- guchar b0, b1;
- guchar bmask;
-
- gint mapsize;
- guchar *map;
-};
-
-struct SPColorSliderClass {
- GtkWidgetClass parent_class;
-
- void (* grabbed) (SPColorSlider *slider);
- void (* dragged) (SPColorSlider *slider);
- void (* released) (SPColorSlider *slider);
- void (* changed) (SPColorSlider *slider);
-};
-
-GType sp_color_slider_get_type (void);
-
-GtkWidget *sp_color_slider_new (GtkAdjustment *adjustment);
-
-void sp_color_slider_set_adjustment (SPColorSlider *slider, GtkAdjustment *adjustment);
-void sp_color_slider_set_colors (SPColorSlider *slider, guint32 start, guint32 mid, guint32 end);
-void sp_color_slider_set_map (SPColorSlider *slider, const guchar *map);
-void sp_color_slider_set_background (SPColorSlider *slider, guint dark, guint light, guint size);
-
-
-
-#endif
diff --git a/src/widgets/sp-color-wheel-selector.cpp b/src/widgets/sp-color-wheel-selector.cpp
deleted file mode 100644
index 6cfa7c14d..000000000
--- a/src/widgets/sp-color-wheel-selector.cpp
+++ /dev/null
@@ -1,348 +0,0 @@
-#ifdef HAVE_CONFIG_H
-# include "config.h"
-#endif
-#include <math.h>
-#include <gtk/gtk.h>
-#include <glibmm/i18n.h>
-#include "ui/dialog-events.h"
-#include "sp-color-wheel-selector.h"
-#include "sp-color-scales.h"
-#include "sp-color-slider.h"
-#include "sp-color-icc-selector.h"
-#include "../svg/svg-icc-color.h"
-#include "ui/widget/gimpcolorwheel.h"
-
-G_BEGIN_DECLS
-
-static void sp_color_wheel_selector_dispose(GObject *object);
-
-static void sp_color_wheel_selector_show_all (GtkWidget *widget);
-static void sp_color_wheel_selector_hide(GtkWidget *widget);
-
-
-G_END_DECLS
-
-#define XPAD 4
-#define YPAD 1
-
-G_DEFINE_TYPE(SPColorWheelSelector, sp_color_wheel_selector, SP_TYPE_COLOR_SELECTOR);
-
-static void sp_color_wheel_selector_class_init(SPColorWheelSelectorClass *klass)
-{
- static const gchar* nameset[] = {N_("Wheel"), 0};
- GObjectClass *object_class = G_OBJECT_CLASS(klass);
- GtkWidgetClass *widget_class = GTK_WIDGET_CLASS(klass);
- SPColorSelectorClass *selector_class = SP_COLOR_SELECTOR_CLASS (klass);
-
- selector_class->name = nameset;
- selector_class->submode_count = 1;
-
- object_class->dispose = sp_color_wheel_selector_dispose;
-
- widget_class->show_all = sp_color_wheel_selector_show_all;
- widget_class->hide = sp_color_wheel_selector_hide;
-}
-
-ColorWheelSelector::ColorWheelSelector( SPColorSelector* csel )
- : ColorSelector( csel ),
- _updating( FALSE ),
- _dragging( FALSE ),
- _adj(0),
- _wheel(0),
- _slider(0),
- _sbtn(0),
- _label(0)
-{
-}
-
-ColorWheelSelector::~ColorWheelSelector()
-{
- _adj = 0;
- _wheel = 0;
- _sbtn = 0;
- _label = 0;
-}
-
-void sp_color_wheel_selector_init (SPColorWheelSelector *cs)
-{
- SP_COLOR_SELECTOR(cs)->base = new ColorWheelSelector( SP_COLOR_SELECTOR(cs) );
-
- if ( SP_COLOR_SELECTOR(cs)->base )
- {
- SP_COLOR_SELECTOR(cs)->base->init();
- }
-}
-
-void ColorWheelSelector::init()
-{
- gint row = 0;
-
- _updating = FALSE;
- _dragging = FALSE;
-
-#if GTK_CHECK_VERSION(3,0,0)
- GtkWidget *t = gtk_grid_new();
-#else
- GtkWidget *t = gtk_table_new (5, 3, FALSE);
-#endif
-
- gtk_widget_show (t);
- gtk_box_pack_start (GTK_BOX (_csel), t, TRUE, TRUE, 0);
-
- /* Create components */
- row = 0;
-
- _wheel = gimp_color_wheel_new();
- gtk_widget_show( _wheel );
-
-#if GTK_CHECK_VERSION(3,0,0)
- gtk_widget_set_halign(_wheel, GTK_ALIGN_FILL);
- gtk_widget_set_valign(_wheel, GTK_ALIGN_FILL);
- gtk_widget_set_hexpand(_wheel, TRUE);
- gtk_widget_set_vexpand(_wheel, TRUE);
- gtk_grid_attach(GTK_GRID(t), _wheel, 0, row, 3, 1);
-#else
- gtk_table_attach(GTK_TABLE(t), _wheel, 0, 3, row, row + 1, (GtkAttachOptions)(GTK_EXPAND | GTK_FILL), (GtkAttachOptions)(GTK_EXPAND | GTK_FILL), 0, 0);
-#endif
-
- row++;
-
- /* Label */
- _label = gtk_label_new_with_mnemonic (_("_A:"));
- gtk_misc_set_alignment (GTK_MISC (_label), 1.0, 0.5);
- gtk_widget_show (_label);
-
-#if GTK_CHECK_VERSION(3,0,0)
- #if GTK_CHECK_VERSION(3,12,0)
- gtk_widget_set_margin_start(_label, XPAD);
- gtk_widget_set_margin_end(_label, XPAD);
- #else
- gtk_widget_set_margin_left(_label, XPAD);
- gtk_widget_set_margin_right(_label, XPAD);
- #endif
- gtk_widget_set_margin_top(_label, YPAD);
- gtk_widget_set_margin_bottom(_label, YPAD);
- gtk_widget_set_halign(_label, GTK_ALIGN_FILL);
- gtk_widget_set_valign(_label, GTK_ALIGN_FILL);
- gtk_grid_attach(GTK_GRID(t), _label, 0, row, 1, 1);
-#else
- gtk_table_attach (GTK_TABLE (t), _label, 0, 1, row, row + 1, GTK_FILL, GTK_FILL, XPAD, YPAD);
-#endif
-
- /* Adjustment */
- _adj = GTK_ADJUSTMENT(gtk_adjustment_new(0.0, 0.0, 255.0, 1.0, 10.0, 10.0));
-
- /* Slider */
- _slider = sp_color_slider_new (_adj);
- gtk_widget_set_tooltip_text (_slider, _("Alpha (opacity)"));
- gtk_widget_show (_slider);
-
-#if GTK_CHECK_VERSION(3,0,0)
- #if GTK_CHECK_VERSION(3,12,0)
- gtk_widget_set_margin_start(_slider, XPAD);
- gtk_widget_set_margin_end(_slider, XPAD);
- #else
- gtk_widget_set_margin_left(_slider, XPAD);
- gtk_widget_set_margin_right(_slider, XPAD);
- #endif
- gtk_widget_set_margin_top(_slider, YPAD);
- gtk_widget_set_margin_bottom(_slider, YPAD);
- gtk_widget_set_hexpand(_slider, TRUE);
- gtk_widget_set_halign(_slider, GTK_ALIGN_FILL);
- gtk_widget_set_valign(_slider, GTK_ALIGN_FILL);
- gtk_grid_attach(GTK_GRID(t), _slider, 1, row, 1, 1);
-#else
- gtk_table_attach(GTK_TABLE (t), _slider, 1, 2, row, row + 1, (GtkAttachOptions)(GTK_EXPAND | GTK_FILL), GTK_FILL, XPAD, YPAD);
-#endif
-
- sp_color_slider_set_colors (SP_COLOR_SLIDER (_slider),
- SP_RGBA32_F_COMPOSE (1.0, 1.0, 1.0, 0.0),
- SP_RGBA32_F_COMPOSE (1.0, 1.0, 1.0, 0.5),
- SP_RGBA32_F_COMPOSE (1.0, 1.0, 1.0, 1.0));
-
-
- /* Spinbutton */
- _sbtn = gtk_spin_button_new (GTK_ADJUSTMENT (_adj), 1.0, 0);
- gtk_widget_set_tooltip_text (_sbtn, _("Alpha (opacity)"));
- sp_dialog_defocus_on_enter (_sbtn);
- gtk_label_set_mnemonic_widget (GTK_LABEL(_label), _sbtn);
- gtk_widget_show (_sbtn);
-
-#if GTK_CHECK_VERSION(3,0,0)
- #if GTK_CHECK_VERSION(3,12,0)
- gtk_widget_set_margin_start(_sbtn, XPAD);
- gtk_widget_set_margin_end(_sbtn, XPAD);
- #else
- gtk_widget_set_margin_left(_sbtn, XPAD);
- gtk_widget_set_margin_right(_sbtn, XPAD);
- #endif
- gtk_widget_set_margin_top(_sbtn, YPAD);
- gtk_widget_set_margin_bottom(_sbtn, YPAD);
- gtk_widget_set_halign(_sbtn, GTK_ALIGN_CENTER);
- gtk_widget_set_valign(_sbtn, GTK_ALIGN_CENTER);
- gtk_grid_attach(GTK_GRID(t), _sbtn, 2, row, 1, 1);
-#else
- gtk_table_attach (GTK_TABLE (t), _sbtn, 2, 3, row, row + 1, (GtkAttachOptions)0, (GtkAttachOptions)0, XPAD, YPAD);
-#endif
-
- /* Signals */
- g_signal_connect (G_OBJECT (_adj), "value_changed",
- G_CALLBACK (_adjustmentChanged), _csel);
-
- g_signal_connect (G_OBJECT (_slider), "grabbed",
- G_CALLBACK (_sliderGrabbed), _csel);
- g_signal_connect (G_OBJECT (_slider), "released",
- G_CALLBACK (_sliderReleased), _csel);
- g_signal_connect (G_OBJECT (_slider), "changed",
- G_CALLBACK (_sliderChanged), _csel);
-
- g_signal_connect( G_OBJECT(_wheel), "changed",
- G_CALLBACK (_wheelChanged), _csel );
-}
-
-static void sp_color_wheel_selector_dispose(GObject *object)
-{
- if (G_OBJECT_CLASS(sp_color_wheel_selector_parent_class)->dispose)
- G_OBJECT_CLASS(sp_color_wheel_selector_parent_class)->dispose(object);
-}
-
-static void
-sp_color_wheel_selector_show_all (GtkWidget *widget)
-{
- gtk_widget_show (widget);
-}
-
-static void sp_color_wheel_selector_hide(GtkWidget *widget)
-{
- gtk_widget_hide(widget);
-}
-
-GtkWidget *sp_color_wheel_selector_new()
-{
- SPColorWheelSelector *csel = SP_COLOR_WHEEL_SELECTOR(g_object_new (SP_TYPE_COLOR_WHEEL_SELECTOR, NULL));
-
- return GTK_WIDGET (csel);
-}
-
-/* Helpers for setting color value */
-
-static void preserve_icc(SPColor *color, SPColorWheelSelector *cs){
- ColorSelector* selector = static_cast<ColorSelector*>(SP_COLOR_SELECTOR(cs)->base);
- color->icc = selector->getColor().icc ? new SVGICCColor(*selector->getColor().icc) : 0;
-}
-
-void ColorWheelSelector::_colorChanged()
-{
-#ifdef DUMP_CHANGE_INFO
- g_message("ColorWheelSelector::_colorChanged( this=%p, %f, %f, %f, %f)", this, color.v.c[0], color.v.c[1], color.v.c[2], alpha );
-#endif
- _updating = TRUE;
- {
- float hsv[3] = {0,0,0};
- sp_color_rgb_to_hsv_floatv(hsv, _color.v.c[0], _color.v.c[1], _color.v.c[2]);
- gimp_color_wheel_set_color( GIMP_COLOR_WHEEL(_wheel), hsv[0], hsv[1], hsv[2] );
- }
-
- guint32 start = _color.toRGBA32( 0x00 );
- guint32 mid = _color.toRGBA32( 0x7f );
- guint32 end = _color.toRGBA32( 0xff );
-
- sp_color_slider_set_colors(SP_COLOR_SLIDER(_slider), start, mid, end);
-
- ColorScales::setScaled(_adj, _alpha);
-
- _updating = FALSE;
-}
-
-void ColorWheelSelector::_adjustmentChanged( GtkAdjustment *adjustment, SPColorWheelSelector *cs )
-{
-// TODO check this. It looks questionable:
- // if a value is entered between 0 and 1 exclusive, normalize it to (int) 0..255 or 0..100
- gdouble value = gtk_adjustment_get_value (adjustment);
- gdouble upper = gtk_adjustment_get_upper (adjustment);
-
- if (value > 0.0 && value < 1.0) {
- gtk_adjustment_set_value( adjustment, floor (value * upper + 0.5) );
- }
-
- ColorWheelSelector* wheelSelector = static_cast<ColorWheelSelector*>(SP_COLOR_SELECTOR(cs)->base);
- if (wheelSelector->_updating) return;
-
- wheelSelector->_updating = TRUE;
-
- preserve_icc(&wheelSelector->_color, cs);
- wheelSelector->_updateInternals( wheelSelector->_color, ColorScales::getScaled( wheelSelector->_adj ), wheelSelector->_dragging );
-
- wheelSelector->_updating = FALSE;
-}
-
-void ColorWheelSelector::_sliderGrabbed( SPColorSlider *slider, SPColorWheelSelector *cs )
-{
- (void)slider;
- ColorWheelSelector* wheelSelector = static_cast<ColorWheelSelector*>(SP_COLOR_SELECTOR(cs)->base);
- if (!wheelSelector->_dragging) {
- wheelSelector->_dragging = TRUE;
- wheelSelector->_grabbed();
-
- preserve_icc(&wheelSelector->_color, cs);
- wheelSelector->_updateInternals( wheelSelector->_color, ColorScales::getScaled( wheelSelector->_adj ), wheelSelector->_dragging );
- }
-}
-
-void ColorWheelSelector::_sliderReleased( SPColorSlider *slider, SPColorWheelSelector *cs )
-{
- (void)slider;
- ColorWheelSelector* wheelSelector = static_cast<ColorWheelSelector*>(SP_COLOR_SELECTOR(cs)->base);
- if (wheelSelector->_dragging) {
- wheelSelector->_dragging = FALSE;
- wheelSelector->_released();
-
- preserve_icc(&wheelSelector->_color, cs);
- wheelSelector->_updateInternals( wheelSelector->_color, ColorScales::getScaled( wheelSelector->_adj ), wheelSelector->_dragging );
- }
-}
-
-void ColorWheelSelector::_sliderChanged( SPColorSlider *slider, SPColorWheelSelector *cs )
-{
- (void)slider;
- ColorWheelSelector* wheelSelector = static_cast<ColorWheelSelector*>(SP_COLOR_SELECTOR(cs)->base);
-
- preserve_icc(&wheelSelector->_color, cs);
- wheelSelector->_updateInternals( wheelSelector->_color, ColorScales::getScaled( wheelSelector->_adj ), wheelSelector->_dragging );
-}
-
-void ColorWheelSelector::_wheelChanged( GimpColorWheel *wheel, SPColorWheelSelector *cs )
-{
- ColorWheelSelector* wheelSelector = static_cast<ColorWheelSelector*>(SP_COLOR_SELECTOR(cs)->base);
-
- gdouble h = 0;
- gdouble s = 0;
- gdouble v = 0;
- gimp_color_wheel_get_color( wheel, &h, &s, &v );
-
- float rgb[3] = {0,0,0};
- sp_color_hsv_to_rgb_floatv (rgb, h, s, v);
-
- SPColor color(rgb[0], rgb[1], rgb[2]);
-
- guint32 start = color.toRGBA32( 0x00 );
- guint32 mid = color.toRGBA32( 0x7f );
- guint32 end = color.toRGBA32( 0xff );
-
- sp_color_slider_set_colors (SP_COLOR_SLIDER(wheelSelector->_slider), start, mid, end);
-
- preserve_icc(&color, cs);
- wheelSelector->_updateInternals( color, wheelSelector->_alpha, gimp_color_wheel_is_adjusting(wheel) );
-}
-
-
-/*
- Local Variables:
- mode:c++
- c-file-style:"stroustrup"
- c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))
- indent-tabs-mode:nil
- fill-column:99
- End:
-*/
-// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:fileencoding=utf-8:textwidth=99 :
diff --git a/src/widgets/sp-color-wheel-selector.h b/src/widgets/sp-color-wheel-selector.h
deleted file mode 100644
index 12b060dbe..000000000
--- a/src/widgets/sp-color-wheel-selector.h
+++ /dev/null
@@ -1,82 +0,0 @@
-#ifndef SEEN_SP_COLOR_WHEEL_SELECTOR_H
-#define SEEN_SP_COLOR_WHEEL_SELECTOR_H
-
-#include <gtk/gtk.h>
-
-#include "sp-color-selector.h"
-
-typedef struct _GimpColorWheel GimpColorWheel;
-struct SPColorSlider;
-struct SPColorWheelSelector;
-struct SPColorWheelSelectorClass;
-
-class ColorWheelSelector: public ColorSelector
-{
-public:
- ColorWheelSelector( SPColorSelector* csel );
- virtual ~ColorWheelSelector();
-
- virtual void init();
-
-protected:
- virtual void _colorChanged();
-
- static void _adjustmentChanged ( GtkAdjustment *adjustment, SPColorWheelSelector *cs );
-
- static void _sliderGrabbed( SPColorSlider *slider, SPColorWheelSelector *cs );
- static void _sliderReleased( SPColorSlider *slider, SPColorWheelSelector *cs );
- static void _sliderChanged( SPColorSlider *slider, SPColorWheelSelector *cs );
- static void _wheelChanged( GimpColorWheel *wheel, SPColorWheelSelector *cs );
-
- static void _fooChanged( GtkWidget foo, SPColorWheelSelector *cs );
-
- void _recalcColor( gboolean changing );
-
- gboolean _updating : 1;
- gboolean _dragging : 1;
- GtkAdjustment* _adj; // Channel adjustment
- GtkWidget* _wheel;
- GtkWidget* _slider;
- GtkWidget* _sbtn; // Spinbutton
- GtkWidget* _label; // Label
-
-private:
- // By default, disallow copy constructor and assignment operator
- ColorWheelSelector( const ColorWheelSelector& obj );
- ColorWheelSelector& operator=( const ColorWheelSelector& obj );
-};
-
-
-
-#define SP_TYPE_COLOR_WHEEL_SELECTOR (sp_color_wheel_selector_get_type ())
-#define SP_COLOR_WHEEL_SELECTOR(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), SP_TYPE_COLOR_WHEEL_SELECTOR, SPColorWheelSelector))
-#define SP_COLOR_WHEEL_SELECTOR_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), SP_TYPE_COLOR_WHEEL_SELECTOR, SPColorWheelSelectorClass))
-#define SP_IS_COLOR_WHEEL_SELECTOR(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), SP_TYPE_COLOR_WHEEL_SELECTOR))
-#define SP_IS_COLOR_WHEEL_SELECTOR_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), SP_TYPE_COLOR_WHEEL_SELECTOR))
-
-struct SPColorWheelSelector {
- SPColorSelector parent;
-};
-
-struct SPColorWheelSelectorClass {
- SPColorSelectorClass parent_class;
-};
-
-GType sp_color_wheel_selector_get_type (void);
-
-GtkWidget *sp_color_wheel_selector_new (void);
-
-
-
-#endif // SEEN_SP_COLOR_WHEEL_SELECTOR_H
-
-/*
- Local Variables:
- mode:c++
- c-file-style:"stroustrup"
- c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))
- indent-tabs-mode:nil
- fill-column:99
- End:
-*/
-// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:fileencoding=utf-8:textwidth=99 :
diff --git a/src/widgets/swatch-selector.cpp b/src/widgets/swatch-selector.cpp
index 7178ad072..6f2807255 100644
--- a/src/widgets/swatch-selector.cpp
+++ b/src/widgets/swatch-selector.cpp
@@ -5,11 +5,11 @@
#include "document-undo.h"
#include "gradient-chemistry.h"
#include "gradient-selector.h"
-#include "sp-color-notebook.h"
#include "sp-stop.h"
#include "svg/css-ostringstream.h"
#include "svg/svg-color.h"
#include "verbs.h"
+#include "ui/widget/color-notebook.h"
#include "xml/node.h"
namespace Inkscape
@@ -20,8 +20,10 @@ namespace Widgets
SwatchSelector::SwatchSelector() :
Gtk::VBox(),
_gsel(0),
- _csel(0)
+ _updating_color(false)
{
+ using Inkscape::UI::Widget::ColorNotebook;
+
GtkWidget *gsel = sp_gradient_selector_new();
_gsel = SP_GRADIENT_SELECTOR(gsel);
g_object_set_data( G_OBJECT(gobj()), "base", this );
@@ -31,27 +33,18 @@ SwatchSelector::SwatchSelector() :
pack_start(*Gtk::manage(Glib::wrap(gsel)));
+ Gtk::Widget *color_selector = Gtk::manage(new ColorNotebook(_selected_color));
+ color_selector->show();
+ pack_start(*color_selector);
- GtkWidget *csel = sp_color_selector_new( SP_TYPE_COLOR_NOTEBOOK );
- _csel = SP_COLOR_SELECTOR(csel);
- Gtk::Widget *wrappedCSel = Glib::wrap(csel);
- wrappedCSel->show();
- //gtk_widget_show(csel);
-
-
- GObject *obj = G_OBJECT(csel);
-
- g_signal_connect(obj, "grabbed", G_CALLBACK(_grabbedCb), this);
- g_signal_connect(obj, "dragged", G_CALLBACK(_draggedCb), this);
- g_signal_connect(obj, "released", G_CALLBACK(_releasedCb), this);
- g_signal_connect(obj, "changed", G_CALLBACK(_changedCb), this);
-
- pack_start(*Gtk::manage(wrappedCSel));
+ _selected_color.signal_grabbed.connect(sigc::mem_fun(this, &SwatchSelector::_grabbedCb));
+ _selected_color.signal_dragged.connect(sigc::mem_fun(this, &SwatchSelector::_draggedCb));
+ _selected_color.signal_released.connect(sigc::mem_fun(this, &SwatchSelector::_releasedCb));
+ _selected_color.signal_changed.connect(sigc::mem_fun(this, &SwatchSelector::_changedCb));
}
SwatchSelector::~SwatchSelector()
{
- _csel = 0; // dtor should be handled by Gtk::manage()
_gsel = 0;
}
@@ -60,13 +53,13 @@ SPGradientSelector *SwatchSelector::getGradientSelector()
return _gsel;
}
-void SwatchSelector::_grabbedCb(SPColorSelector * /*csel*/, void * /*data*/)
+void SwatchSelector::_grabbedCb()
{
}
-void SwatchSelector::_draggedCb(SPColorSelector * /*csel*/, void *data)
+void SwatchSelector::_draggedCb()
{
- if (data) {
+ // if (data) {
//SwatchSelector *swsel = reinterpret_cast<SwatchSelector*>(data);
// TODO might have to block cycles
@@ -92,50 +85,46 @@ void SwatchSelector::_draggedCb(SPColorSelector * /*csel*/, void *data)
}
}
*/
- }
+ // }
}
-void SwatchSelector::_releasedCb(SPColorSelector * /*csel*/, void * /*data*/)
+void SwatchSelector::_releasedCb()
{
}
-void SwatchSelector::_changedCb(SPColorSelector */*csel*/, void *data)
+void SwatchSelector::_changedCb()
{
- if (data) {
- SwatchSelector *swsel = reinterpret_cast<SwatchSelector*>(data);
+ if (_updating_color) {
+ return;
+ }
+ // TODO might have to block cycles
+
+ if (_gsel && _gsel->getVector()) {
+ SPGradient *gradient = _gsel->getVector();
+ SPGradient *ngr = sp_gradient_ensure_vector_normalized(gradient);
+ if (ngr != gradient) {
+ /* Our master gradient has changed */
+ // TODO replace with proper - sp_gradient_vector_widget_load_gradient(GTK_WIDGET(swsel->_gsel), ngr);
+ }
- // TODO might have to block cycles
+ ngr->ensureVector();
- if (swsel->_gsel && swsel->_gsel->getVector()) {
- SPGradient *gradient = swsel->_gsel->getVector();
- SPGradient *ngr = sp_gradient_ensure_vector_normalized(gradient);
- if (ngr != gradient) {
- /* Our master gradient has changed */
- // TODO replace with proper - sp_gradient_vector_widget_load_gradient(GTK_WIDGET(swsel->_gsel), ngr);
- }
- ngr->ensureVector();
+ SPStop* stop = ngr->getFirstStop();
+ if (stop) {
+ SPColor color = _selected_color.color();
+ gfloat alpha = _selected_color.alpha();
+ guint32 rgb = color.toRGBA32( 0x00 );
+ // TODO replace with generic shared code that also handles icc-color
+ Inkscape::CSSOStringStream os;
+ gchar c[64];
+ sp_svg_write_color(c, sizeof(c), rgb);
+ os << "stop-color:" << c << ";stop-opacity:" << static_cast<gdouble>(alpha) <<";";
+ stop->getRepr()->setAttribute("style", os.str().c_str());
- SPStop* stop = ngr->getFirstStop();
- if (stop) {
- SPColor color;
- float alpha = 0;
- guint32 rgb = 0;
-
- swsel->_csel->base->getColorAlpha( color, alpha );
- rgb = color.toRGBA32( 0x00 );
-
- // TODO replace with generic shared code that also handles icc-color
- Inkscape::CSSOStringStream os;
- gchar c[64];
- sp_svg_write_color(c, sizeof(c), rgb);
- os << "stop-color:" << c << ";stop-opacity:" << static_cast<gdouble>(alpha) <<";";
- stop->getRepr()->setAttribute("style", os.str().c_str());
-
- DocumentUndo::done(ngr->document, SP_VERB_CONTEXT_GRADIENT,
- _("Change swatch color"));
- }
+ DocumentUndo::done(ngr->document, SP_VERB_CONTEXT_GRADIENT,
+ _("Change swatch color"));
}
}
}
@@ -173,11 +162,10 @@ void SwatchSelector::setVector(SPDocument */*doc*/, SPGradient *vector)
SPStop* stop = vector->getFirstStop();
guint32 const colorVal = stop->get_rgba32();
- _csel->base->setAlpha(SP_RGBA32_A_F(colorVal));
- SPColor color( SP_RGBA32_R_F(colorVal), SP_RGBA32_G_F(colorVal), SP_RGBA32_B_F(colorVal) );
- // set its color, from the stored array
- _csel->base->setColor( color );
- gtk_widget_show_all( GTK_WIDGET(_csel) );
+ _updating_color = true;
+ _selected_color.setValue(colorVal);
+ _updating_color = false;
+ // gtk_widget_show_all( GTK_WIDGET(_csel) );
} else {
//gtk_widget_hide( GTK_WIDGET(_csel) );
}
diff --git a/src/widgets/swatch-selector.h b/src/widgets/swatch-selector.h
index 4b7aa483f..16a8cfac8 100644
--- a/src/widgets/swatch-selector.h
+++ b/src/widgets/swatch-selector.h
@@ -2,6 +2,7 @@
#define SEEN_SP_SWATCH_SELECTOR_H
#include <gtkmm/box.h>
+#include "ui/selected-color.h"
class SPDocument;
class SPGradient;
@@ -29,13 +30,14 @@ public:
SPGradientSelector *getGradientSelector();
private:
- static void _grabbedCb(SPColorSelector *csel, void *data);
- static void _draggedCb(SPColorSelector *csel, void *data);
- static void _releasedCb(SPColorSelector *csel, void *data);
- static void _changedCb(SPColorSelector *csel, void *data);
+ void _grabbedCb();
+ void _draggedCb();
+ void _releasedCb();
+ void _changedCb();
SPGradientSelector *_gsel;
- SPColorSelector *_csel;
+ Inkscape::UI::SelectedColor _selected_color;
+ bool _updating_color;
};