diff options
| author | Krzysztof Kosi??ski <tweenk.pl@gmail.com> | 2015-05-22 07:02:44 +0000 |
|---|---|---|
| committer | Krzysztof KosiĆski <tweenk.pl@gmail.com> | 2015-05-22 07:02:44 +0000 |
| commit | 35d94a8e1c01cd60e4fcf4c15f46fee38c765fca (patch) | |
| tree | d8366acd729a6a9d4bdc1001f050a43f30d8b7ad | |
| parent | Undo changes to CMakeLists.txt in 2geom directory after syncs (diff) | |
| parent | minor tweaks to libUEMF and related code (diff) | |
| download | inkscape-35d94a8e1c01cd60e4fcf4c15f46fee38c765fca.tar.gz inkscape-35d94a8e1c01cd60e4fcf4c15f46fee38c765fca.zip | |
Merge from trunk
(bzr r14059.2.15)
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) @@ -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 <" "defs>)" 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°; 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°; 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 × %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 × %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 × %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 × %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 × %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 <" "defs> 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 > Pattern > 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)" @@ -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 <defs>)" msgstr "Objekts, ko mÄÄŁinÄt atlasÄ«t, <b>nav redzams</b> (tas atrodas <defs>)" -#: ../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°; with <b>Ctrl</b> to snap angle" msgstr "<b>Ć Ä·iebt</b>: %0.2f°; 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°; with <b>Ctrl</b> to snap angle" msgstr "<b>Griezt</b>: %0.2f°; 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 × %d: %s" msgstr "%d × %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°, distance %s; with <b>Ctrl</b> to msgstr "<b>LÄ«nijas posms</b>: leĆÄ·is %3.2f°, 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°, 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°, 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°, 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°, 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°, 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°, 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 × %s (constrained to ratio %d:%d); with <b>Shift</b> to draw around the starting point" msgstr "<b>TaisnstĆ«ris</b>: %s × %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 × %s (constrained to golden ratio 1.618 : 1); with <b>Shift</b> to draw around the starting point" msgstr "<b>TaisnstĆ«ris</b>: %s × %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 × %s (constrained to golden ratio 1 : 1.618); with <b>Shift</b> to draw around the starting point" msgstr "<b>TaisnstĆ«ris</b>: %s × %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 × %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 × %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 <defs> of the document" msgstr "AizvÄkt neizmantotos iestatÄ«jumus (piemÄram, krÄsu pÄrejas vai izgrieĆĄanas ceÄŒus) no dokumenta <defs>" -#: ../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 > Pattern > 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 > FaktĆ«ra > 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" @@ -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 <" "defs>)" @@ -12550,132 +12548,132 @@ msgstr "" "Đб'ŃĐșŃ, ŃĐșĐžĐč ĐČĐž ĐœĐ°ĐŒĐ°ĐłĐ°ŃŃĐ”ŃŃ ĐżĐŸĐ·ĐœĐ°ŃĐžŃĐž, Ń <b>ĐœĐ”ĐČĐžĐŽĐžĐŒĐžĐŒ</b> (Đ·ĐœĐ°Ń
ĐŸĐŽĐžŃŃŃŃ Ń <" "defs>)" -#: ../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°; with <b>Ctrl</b> to snap angle" msgstr "<b>ĐаŃ
Ол</b>: %0.2f°; Đ· <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°; with <b>Ctrl</b> to snap angle" msgstr "<b>ĐбДŃŃĐ°ĐœĐœŃ</b>: %0.2f°; Đ· <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 × %d: %s" msgstr "%d × %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 × %s (constrained to ratio %d:%d); with <b>Shift</" @@ -23725,7 +23729,7 @@ msgstr "" "<b>ĐŃŃĐŒĐŸĐșŃŃĐœĐžĐș</b>: %s × %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 × %s (constrained to golden ratio 1.618 : 1); with " @@ -23734,7 +23738,7 @@ msgstr "" "<b>ĐŃŃĐŒĐŸĐșŃŃĐœĐžĐș</b>: %s × %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 × %s (constrained to golden ratio 1 : 1.618); with " @@ -23743,7 +23747,7 @@ msgstr "" "<b>ĐŃŃĐŒĐŸĐșŃŃĐœĐžĐș</b>: %s × %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 × %s; with <b>Ctrl</b> to make square or integer-" @@ -23752,7 +23756,7 @@ msgstr "" "<b>ĐŃŃĐŒĐŸĐșŃŃĐœĐžĐș</b>: %s × %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 <" "defs> of the document" @@ -25214,145 +25255,145 @@ msgstr "" "ĐŃОбŃаŃĐž ĐœĐ”ĐżĐŸŃŃŃĐ±ĐœŃ ĐČĐžĐ·ĐœĐ°ŃĐ”ĐœĐœŃ (ĐœĐ°ĐżŃĐžĐșлаЎ, ĐłŃаЎŃŃĐœŃĐž ŃĐž ĐČĐžŃŃĐ·Đ°ĐœĐœŃ) Đ· <" "defs> ĐŽĐŸĐșŃĐŒĐ”ĐœŃа" -#: ../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 > Pattern > Objects to Pattern</b> to " @@ -28757,27 +28802,27 @@ msgstr "" "ĐŃĐ·Đ”ŃŃĐœĐŸĐș > Đб'ŃĐșŃĐž Ń ĐČŃĐ·Đ”ŃŃĐœĐŸĐș</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; }; |
