diff options
| author | Liam P. White <inkscapebrony@gmail.com> | 2014-11-09 05:13:46 +0000 |
|---|---|---|
| committer | Liam P. White <inkscapebrony@gmail.com> | 2014-11-09 05:13:46 +0000 |
| commit | 4b236f3f1e3fe5374e18dac9e6c35567d9dc0995 (patch) | |
| tree | d6a8f361b37294feb8da05c2ce61271e5137a237 | |
| parent | Remove FIXME from refactoring (diff) | |
| parent | Fix bug in previous commit. Add test against it (diff) | |
| download | inkscape-4b236f3f1e3fe5374e18dac9e6c35567d9dc0995.tar.gz inkscape-4b236f3f1e3fe5374e18dac9e6c35567d9dc0995.zip | |
Update to trunk r13690
(bzr r13341.5.22)
78 files changed, 4468 insertions, 3461 deletions
diff --git a/Makefile.am b/Makefile.am index 7745f0dc3..fb1bfa126 100644 --- a/Makefile.am +++ b/Makefile.am @@ -122,7 +122,6 @@ EXTRA_DIST = \ packaging/macosx/Resources/application-vnd.wordperfect-graphic.icns \ packaging/macosx/Resources/bin/gimp-wrapper.sh \ packaging/macosx/Resources/bin/inkscape \ - packaging/macosx/Resources/bin/python-wrapper.sh \ packaging/macosx/Resources/etc/fonts/fonts.conf \ packaging/macosx/Resources/etc/gtk-2.0/gtkrc \ packaging/macosx/Resources/image-svg+xml-compressed.icns \ @@ -836,7 +836,8 @@ --> <target name="check" depends="linkcxxtests,distbase" description="perform unit tests"> - <cxxtestrun command="${build}/cxxtests" workingdir="${dist}" /> + <copy todir="${dist}" file="${build}/cxxtests.exe"/> + <cxxtestrun command="${dist}/cxxtests" workingdir="${dist}" /> </target> <!-- diff --git a/packaging/macosx/dmg_background.png b/packaging/macosx/dmg_background.png Binary files differindex 0ee039718..cbb27c341 100644 --- a/packaging/macosx/dmg_background.png +++ b/packaging/macosx/dmg_background.png diff --git a/packaging/macosx/dmg_background.svg b/packaging/macosx/dmg_background.svg index a62beb370..650069fbd 100644 --- a/packaging/macosx/dmg_background.svg +++ b/packaging/macosx/dmg_background.svg @@ -14,7 +14,7 @@ height="800" id="svg13532" version="1.1" - inkscape:version="0.91pre2 r13554 custom" + inkscape:version="0.91+devel r13674" viewBox="0 0 1280 800" sodipodi:docname="dmg_background.svg"> <defs @@ -562,9 +562,9 @@ borderopacity="1" inkscape:pageopacity="0.0" inkscape:pageshadow="2" - inkscape:zoom="1" - inkscape:cx="1655" - inkscape:cy="550" + inkscape:zoom="0.70710678" + inkscape:cx="1680" + inkscape:cy="533.33334" inkscape:document-units="px" inkscape:current-layer="layer5" showgrid="false" @@ -575,7 +575,7 @@ inkscape:window-width="1163" inkscape:window-height="742" inkscape:window-x="53" - inkscape:window-y="0" + inkscape:window-y="22" inkscape:window-maximized="0" inkscape:snap-bbox="true" inkscape:bbox-nodes="true" @@ -986,15 +986,15 @@ sodipodi:role="line">Inkscape is Free and Open Source Software licensed under the GPL.</tspan></text> <text xml:space="preserve" - style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:14px;line-height:125%;font-family:Ubuntu;-inkscape-font-specification:Ubuntu;letter-spacing:0px;word-spacing:0px;display:inline;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" - x="376.46323" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:14px;line-height:125%;font-family:Ubuntu;-inkscape-font-specification:Ubuntu;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;display:inline;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" + x="459" y="141.78999" id="text4804" sodipodi:linespacing="125%"><tspan sodipodi:role="line" id="tspan4806" - x="376.46323" - y="141.78999">Inkscape 0.91pre2 custom</tspan></text> + x="459" + y="141.78999">Inkscape 0.91+devel</tspan></text> <path sodipodi:nodetypes="cccccccc" style="color:#000000;display:inline;overflow:visible;visibility:visible;opacity:0.8258427;fill:url(#linearGradient3762);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none" @@ -1008,7 +1008,7 @@ y="0" xlink:href="#g4785" id="dmg_background" - transform="matrix(1.25,0,0,1.25,1280,0)" + transform="matrix(1.3333333,0,0,1.3333333,1280,0)" width="100%" height="100%" inkscape:export-xdpi="72" diff --git a/po/inkscape.pot b/po/inkscape.pot index ec5cec712..a8220e7a3 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: 2014-10-19 12:42+0200\n" +"POT-Creation-Date: 2014-11-05 22:05+0100\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" @@ -660,7 +660,7 @@ msgstr "" #: ../share/filters/filters.svg.h:839 ../share/filters/filters.svg.h:843 #: ../src/extension/internal/filter/morphology.h:76 #: ../src/extension/internal/filter/morphology.h:203 -#: ../src/filter-enums.cpp:31 +#: ../src/filter-enums.cpp:32 msgid "Morphology" msgstr "" @@ -1058,7 +1058,7 @@ msgstr "" #: ../src/extension/internal/filter/paint.h:717 #: ../src/extension/internal/filter/shadows.h:73 #: ../src/extension/internal/filter/transparency.h:345 -#: ../src/filter-enums.cpp:66 ../src/ui/dialog/clonetiler.cpp:832 +#: ../src/filter-enums.cpp:67 ../src/ui/dialog/clonetiler.cpp:832 #: ../src/ui/dialog/clonetiler.cpp:983 #: ../src/ui/dialog/document-properties.cpp:157 #: ../share/extensions/color_HSL_adjust.inx.h:20 @@ -4318,87 +4318,7 @@ msgid "Wind Surfing" msgstr "" #: ../share/templates/templates.h:1 -msgid "A4 Landscape Page" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "Empty A4 landscape sheet" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "A4 paper sheet empty landscape" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "A4 Page" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "Empty A4 sheet" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "A4 paper sheet empty" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "Black Opaque" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "Empty black page" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "black opaque empty" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "White Opaque" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "Empty white page" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "white opaque empty" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "Business Card 85x54mm" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "Empty business card template." -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "business card empty 85x54" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "Business Card 90x50mm" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "business card empty 90x50" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "CD Cover 300dpi" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "Empty CD box cover." -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "CD cover disc disk 300dpi box" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "CD Label 120x120 " +msgid "CD Label 120mmx120mm " msgstr "" #: ../share/templates/templates.h:1 @@ -4410,182 +4330,6 @@ msgid "CD label 120x120 disc disk" msgstr "" #: ../share/templates/templates.h:1 -msgid "DVD Cover Regular 300dpi " -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "Template for both-sides DVD covers." -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "DVD cover regular 300dpi" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "DVD Cover Slim 300dpi " -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "Template for both-sides DVD slim covers." -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "DVD cover slim 300dpi" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "DVD Cover Superslim 300dpi " -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "Template for both-sides DVD superslim covers." -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "DVD cover superslim 300dpi" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "DVD Cover Ultraslim 300dpi " -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "Template for both-sides DVD ultraslim covers." -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "DVD cover ultraslim 300dpi" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "Desktop 1024x768" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "Empty desktop size sheet" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "desktop 1024x768 wallpaper" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "Desktop 1600x1200" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "desktop 1600x1200 wallpaper" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "Desktop 640x480" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "desktop 640x480 wallpaper" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "Desktop 800x600" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "desktop 800x600 wallpaper" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "Fontforge Glyph" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "font fontforge glyph 1000x1000" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "Icon 16x16" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "Small 16x16 icon template." -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "icon 16x16 empty" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "Icon 32x32" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "32x32 icon template." -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "icon 32x32 empty" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "Icon 48x48" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "48x48 icon template." -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "icon 48x48 empty" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "Icon 64x64" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "64x64 icon template." -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "icon 64x64 empty" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "Letter Landscape" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "Standard letter landscape sheet - 792x612" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "letter landscape 792x612 empty" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "Letter" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "Standard letter sheet - 612x792" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "letter 612x792 empty" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "No Borders" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "Empty sheet with no borders" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "no borders empty" -msgstr "" - -#: ../share/templates/templates.h:1 msgid "No Layers" msgstr "" @@ -4598,66 +4342,6 @@ msgid "no layers empty" msgstr "" #: ../share/templates/templates.h:1 -msgid "Video HDTV 1920x1080" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "HDTV video template for 1920x1080 resolution." -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "HDTV video empty 1920x1080" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "Video NTSC 720x486" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "NTSC video template for 720x486 resolution." -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "NTSC video empty 720x486" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "Video PAL 728x576" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "PAL video template for 728x576 resolution." -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "PAL video empty 728x576" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "Web Banner 468x60" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "Empty 468x60 web banner template." -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "web banner 468x60 empty" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "Web Banner 728x90" -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "Empty 728x90 web banner template." -msgstr "" - -#: ../share/templates/templates.h:1 -msgid "web banner 728x90 empty" -msgstr "" - -#: ../share/templates/templates.h:1 msgid "LaTeX Beamer" msgstr "" @@ -4682,7 +4366,7 @@ msgid "guidelines typography canvas" msgstr "" #. 3D box -#: ../src/box3d.cpp:260 ../src/box3d.cpp:1313 +#: ../src/box3d.cpp:260 ../src/box3d.cpp:1312 #: ../src/ui/dialog/inkscape-preferences.cpp:400 msgid "3D Box" msgstr "" @@ -4701,11 +4385,11 @@ msgctxt "Profile name" msgid "None" msgstr "" -#: ../src/context-fns.cpp:36 ../src/context-fns.cpp:65 +#: ../src/context-fns.cpp:33 ../src/context-fns.cpp:62 msgid "<b>Current layer is hidden</b>. Unhide it to be able to draw on it." msgstr "" -#: ../src/context-fns.cpp:42 ../src/context-fns.cpp:71 +#: ../src/context-fns.cpp:39 ../src/context-fns.cpp:68 msgid "<b>Current layer is locked</b>. Unlock it to be able to draw on it." msgstr "" @@ -4713,16 +4397,16 @@ msgstr "" msgid "Create guide" msgstr "" -#: ../src/desktop-events.cpp:471 +#: ../src/desktop-events.cpp:481 msgid "Move guide" msgstr "" -#: ../src/desktop-events.cpp:478 ../src/desktop-events.cpp:536 +#: ../src/desktop-events.cpp:488 ../src/desktop-events.cpp:546 #: ../src/ui/dialog/guides.cpp:138 msgid "Delete guide" msgstr "" -#: ../src/desktop-events.cpp:516 +#: ../src/desktop-events.cpp:526 #, c-format msgid "<b>Guideline</b>: %s" msgstr "" @@ -4735,31 +4419,31 @@ msgstr "" msgid "No next zoom." msgstr "" -#: ../src/display/canvas-axonomgrid.cpp:317 ../src/display/canvas-grid.cpp:693 +#: ../src/display/canvas-axonomgrid.cpp:317 ../src/display/canvas-grid.cpp:667 msgid "Grid _units:" msgstr "" -#: ../src/display/canvas-axonomgrid.cpp:319 ../src/display/canvas-grid.cpp:695 +#: ../src/display/canvas-axonomgrid.cpp:319 ../src/display/canvas-grid.cpp:669 msgid "_Origin X:" msgstr "" -#: ../src/display/canvas-axonomgrid.cpp:319 ../src/display/canvas-grid.cpp:695 +#: ../src/display/canvas-axonomgrid.cpp:319 ../src/display/canvas-grid.cpp:669 #: ../src/ui/dialog/inkscape-preferences.cpp:739 #: ../src/ui/dialog/inkscape-preferences.cpp:764 msgid "X coordinate of grid origin" msgstr "" -#: ../src/display/canvas-axonomgrid.cpp:321 ../src/display/canvas-grid.cpp:697 +#: ../src/display/canvas-axonomgrid.cpp:321 ../src/display/canvas-grid.cpp:671 msgid "O_rigin Y:" msgstr "" -#: ../src/display/canvas-axonomgrid.cpp:321 ../src/display/canvas-grid.cpp:697 +#: ../src/display/canvas-axonomgrid.cpp:321 ../src/display/canvas-grid.cpp:671 #: ../src/ui/dialog/inkscape-preferences.cpp:740 #: ../src/ui/dialog/inkscape-preferences.cpp:765 msgid "Y coordinate of grid origin" msgstr "" -#: ../src/display/canvas-axonomgrid.cpp:323 ../src/display/canvas-grid.cpp:701 +#: ../src/display/canvas-axonomgrid.cpp:323 ../src/display/canvas-grid.cpp:675 msgid "Spacing _Y:" msgstr "" @@ -4770,7 +4454,7 @@ msgstr "" #: ../src/display/canvas-axonomgrid.cpp:325 #: ../src/ui/dialog/inkscape-preferences.cpp:771 -#: ../src/widgets/box3d-toolbar.cpp:299 +#: ../src/widgets/box3d-toolbar.cpp:302 msgid "Angle X:" msgstr "" @@ -4781,7 +4465,7 @@ msgstr "" #: ../src/display/canvas-axonomgrid.cpp:327 #: ../src/ui/dialog/inkscape-preferences.cpp:772 -#: ../src/widgets/box3d-toolbar.cpp:378 +#: ../src/widgets/box3d-toolbar.cpp:381 msgid "Angle Z:" msgstr "" @@ -4790,37 +4474,37 @@ msgstr "" msgid "Angle of z-axis" msgstr "" -#: ../src/display/canvas-axonomgrid.cpp:331 ../src/display/canvas-grid.cpp:705 +#: ../src/display/canvas-axonomgrid.cpp:331 ../src/display/canvas-grid.cpp:679 msgid "Minor grid line _color:" msgstr "" -#: ../src/display/canvas-axonomgrid.cpp:331 ../src/display/canvas-grid.cpp:705 +#: ../src/display/canvas-axonomgrid.cpp:331 ../src/display/canvas-grid.cpp:679 #: ../src/ui/dialog/inkscape-preferences.cpp:723 msgid "Minor grid line color" msgstr "" -#: ../src/display/canvas-axonomgrid.cpp:331 ../src/display/canvas-grid.cpp:705 +#: ../src/display/canvas-axonomgrid.cpp:331 ../src/display/canvas-grid.cpp:679 msgid "Color of the minor grid lines" msgstr "" -#: ../src/display/canvas-axonomgrid.cpp:336 ../src/display/canvas-grid.cpp:710 +#: ../src/display/canvas-axonomgrid.cpp:336 ../src/display/canvas-grid.cpp:684 msgid "Ma_jor grid line color:" msgstr "" -#: ../src/display/canvas-axonomgrid.cpp:336 ../src/display/canvas-grid.cpp:710 +#: ../src/display/canvas-axonomgrid.cpp:336 ../src/display/canvas-grid.cpp:684 #: ../src/ui/dialog/inkscape-preferences.cpp:725 msgid "Major grid line color" msgstr "" -#: ../src/display/canvas-axonomgrid.cpp:337 ../src/display/canvas-grid.cpp:711 +#: ../src/display/canvas-axonomgrid.cpp:337 ../src/display/canvas-grid.cpp:685 msgid "Color of the major (highlighted) grid lines" msgstr "" -#: ../src/display/canvas-axonomgrid.cpp:341 ../src/display/canvas-grid.cpp:715 +#: ../src/display/canvas-axonomgrid.cpp:341 ../src/display/canvas-grid.cpp:689 msgid "_Major grid line every:" msgstr "" -#: ../src/display/canvas-axonomgrid.cpp:341 ../src/display/canvas-grid.cpp:715 +#: ../src/display/canvas-axonomgrid.cpp:341 ../src/display/canvas-grid.cpp:689 msgid "lines" msgstr "" @@ -4832,59 +4516,59 @@ msgstr "" msgid "Axonometric grid" msgstr "" -#: ../src/display/canvas-grid.cpp:275 +#: ../src/display/canvas-grid.cpp:249 msgid "Create new grid" msgstr "" -#: ../src/display/canvas-grid.cpp:341 +#: ../src/display/canvas-grid.cpp:315 msgid "_Enabled" msgstr "" -#: ../src/display/canvas-grid.cpp:342 +#: ../src/display/canvas-grid.cpp:316 msgid "" "Determines whether to snap to this grid or not. Can be 'on' for invisible " "grids." msgstr "" -#: ../src/display/canvas-grid.cpp:346 +#: ../src/display/canvas-grid.cpp:320 msgid "Snap to visible _grid lines only" msgstr "" -#: ../src/display/canvas-grid.cpp:347 +#: ../src/display/canvas-grid.cpp:321 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:351 +#: ../src/display/canvas-grid.cpp:325 msgid "_Visible" msgstr "" -#: ../src/display/canvas-grid.cpp:352 +#: ../src/display/canvas-grid.cpp:326 msgid "" "Determines whether the grid is displayed or not. Objects are still snapped " "to invisible grids." msgstr "" -#: ../src/display/canvas-grid.cpp:699 +#: ../src/display/canvas-grid.cpp:673 msgid "Spacing _X:" msgstr "" -#: ../src/display/canvas-grid.cpp:699 +#: ../src/display/canvas-grid.cpp:673 #: ../src/ui/dialog/inkscape-preferences.cpp:745 msgid "Distance between vertical grid lines" msgstr "" -#: ../src/display/canvas-grid.cpp:701 +#: ../src/display/canvas-grid.cpp:675 #: ../src/ui/dialog/inkscape-preferences.cpp:746 msgid "Distance between horizontal grid lines" msgstr "" -#: ../src/display/canvas-grid.cpp:732 +#: ../src/display/canvas-grid.cpp:706 msgid "_Show dots instead of lines" msgstr "" -#: ../src/display/canvas-grid.cpp:733 +#: ../src/display/canvas-grid.cpp:707 msgid "If set, displays dots at gridpoints instead of gridlines" msgstr "" @@ -5034,11 +4718,11 @@ msgstr "" msgid "Bounding box side midpoint" msgstr "" -#: ../src/display/snap-indicator.cpp:196 ../src/ui/tool/node.cpp:1319 +#: ../src/display/snap-indicator.cpp:196 ../src/ui/tool/node.cpp:1505 msgid "Smooth node" msgstr "" -#: ../src/display/snap-indicator.cpp:199 ../src/ui/tool/node.cpp:1318 +#: ../src/display/snap-indicator.cpp:199 ../src/ui/tool/node.cpp:1504 msgid "Cusp node" msgstr "" @@ -5108,7 +4792,7 @@ msgstr "" msgid "Memory document %1" msgstr "" -#: ../src/document.cpp:786 +#: ../src/document.cpp:792 #, c-format msgid "Unnamed document %d" msgstr "" @@ -5118,11 +4802,11 @@ msgid "[Unchanged]" msgstr "" #. Edit -#: ../src/event-log.cpp:371 ../src/event-log.cpp:374 ../src/verbs.cpp:2386 +#: ../src/event-log.cpp:371 ../src/event-log.cpp:374 ../src/verbs.cpp:2469 msgid "_Undo" msgstr "" -#: ../src/event-log.cpp:381 ../src/event-log.cpp:385 ../src/verbs.cpp:2388 +#: ../src/event-log.cpp:381 ../src/event-log.cpp:385 ../src/verbs.cpp:2471 msgid "_Redo" msgstr "" @@ -5150,7 +4834,7 @@ msgstr "" msgid " (No preferences)" msgstr "" -#: ../src/extension/effect.h:70 ../src/verbs.cpp:2160 +#: ../src/extension/effect.h:70 ../src/verbs.cpp:2243 msgid "Extensions" msgstr "" @@ -5279,6 +4963,7 @@ msgstr "" #: ../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 @@ -5594,7 +5279,7 @@ msgid "Equalize selected bitmap(s); histogram equalization" msgstr "" #: ../src/extension/internal/bitmap/gaussianBlur.cpp:38 -#: ../src/filter-enums.cpp:28 +#: ../src/filter-enums.cpp:29 msgid "Gaussian Blur" msgstr "" @@ -5727,7 +5412,7 @@ msgstr "" #: ../src/extension/internal/bitmap/opacity.cpp:40 #: ../src/ui/dialog/filter-effects-dialog.cpp:2884 -#: ../src/widgets/dropper-toolbar.cpp:83 +#: ../src/ui/dialog/objects.cpp:1621 ../src/widgets/dropper-toolbar.cpp:83 msgid "Opacity:" msgstr "" @@ -5832,7 +5517,7 @@ msgstr "" #: ../src/extension/internal/bitmap/threshold.cpp:40 #: ../src/extension/internal/bitmap/unsharpmask.cpp:46 -#: ../src/widgets/paintbucket-toolbar.cpp:146 +#: ../src/widgets/paintbucket-toolbar.cpp:148 msgid "Threshold:" msgstr "" @@ -5914,7 +5599,7 @@ msgstr "" #: ../src/extension/internal/cairo-ps-out.cpp:372 #: ../src/extension/internal/cairo-renderer-pdf-out.cpp:250 #: ../src/extension/internal/emf-inout.cpp:3569 -#: ../src/extension/internal/wmf-inout.cpp:3143 +#: ../src/extension/internal/wmf-inout.cpp:3144 msgid "Convert texts to paths" msgstr "" @@ -6027,56 +5712,56 @@ msgstr "" msgid "out of %i" msgstr "" -#: ../src/extension/internal/cdr-input.cpp:159 -#: ../src/extension/internal/vsd-input.cpp:159 +#: ../src/extension/internal/cdr-input.cpp:165 +#: ../src/extension/internal/vsd-input.cpp:165 msgid "Page Selector" msgstr "" -#: ../src/extension/internal/cdr-input.cpp:294 +#: ../src/extension/internal/cdr-input.cpp:300 msgid "Corel DRAW Input" msgstr "" -#: ../src/extension/internal/cdr-input.cpp:299 +#: ../src/extension/internal/cdr-input.cpp:305 msgid "Corel DRAW 7-X4 files (*.cdr)" msgstr "" -#: ../src/extension/internal/cdr-input.cpp:300 +#: ../src/extension/internal/cdr-input.cpp:306 msgid "Open files saved in Corel DRAW 7-X4" msgstr "" -#: ../src/extension/internal/cdr-input.cpp:307 +#: ../src/extension/internal/cdr-input.cpp:313 msgid "Corel DRAW templates input" msgstr "" -#: ../src/extension/internal/cdr-input.cpp:312 +#: ../src/extension/internal/cdr-input.cpp:318 msgid "Corel DRAW 7-13 template files (*.cdt)" msgstr "" -#: ../src/extension/internal/cdr-input.cpp:313 +#: ../src/extension/internal/cdr-input.cpp:319 msgid "Open files saved in Corel DRAW 7-13" msgstr "" -#: ../src/extension/internal/cdr-input.cpp:320 +#: ../src/extension/internal/cdr-input.cpp:326 msgid "Corel DRAW Compressed Exchange files input" msgstr "" -#: ../src/extension/internal/cdr-input.cpp:325 +#: ../src/extension/internal/cdr-input.cpp:331 msgid "Corel DRAW Compressed Exchange files (*.ccx)" msgstr "" -#: ../src/extension/internal/cdr-input.cpp:326 +#: ../src/extension/internal/cdr-input.cpp:332 msgid "Open compressed exchange files saved in Corel DRAW" msgstr "" -#: ../src/extension/internal/cdr-input.cpp:333 +#: ../src/extension/internal/cdr-input.cpp:339 msgid "Corel DRAW Presentation Exchange files input" msgstr "" -#: ../src/extension/internal/cdr-input.cpp:338 +#: ../src/extension/internal/cdr-input.cpp:344 msgid "Corel DRAW Presentation Exchange files (*.cmx)" msgstr "" -#: ../src/extension/internal/cdr-input.cpp:339 +#: ../src/extension/internal/cdr-input.cpp:345 msgid "Open presentation exchange files saved in Corel DRAW" msgstr "" @@ -6097,37 +5782,37 @@ msgid "EMF Output" msgstr "" #: ../src/extension/internal/emf-inout.cpp:3570 -#: ../src/extension/internal/wmf-inout.cpp:3144 +#: ../src/extension/internal/wmf-inout.cpp:3145 msgid "Map Unicode to Symbol font" msgstr "" #: ../src/extension/internal/emf-inout.cpp:3571 -#: ../src/extension/internal/wmf-inout.cpp:3145 +#: ../src/extension/internal/wmf-inout.cpp:3146 msgid "Map Unicode to Wingdings" msgstr "" #: ../src/extension/internal/emf-inout.cpp:3572 -#: ../src/extension/internal/wmf-inout.cpp:3146 +#: ../src/extension/internal/wmf-inout.cpp:3147 msgid "Map Unicode to Zapf Dingbats" msgstr "" #: ../src/extension/internal/emf-inout.cpp:3573 -#: ../src/extension/internal/wmf-inout.cpp:3147 +#: ../src/extension/internal/wmf-inout.cpp:3148 msgid "Use MS Unicode PUA (0xF020-0xF0FF) for converted characters" msgstr "" #: ../src/extension/internal/emf-inout.cpp:3574 -#: ../src/extension/internal/wmf-inout.cpp:3148 +#: ../src/extension/internal/wmf-inout.cpp:3149 msgid "Compensate for PPT font bug" msgstr "" #: ../src/extension/internal/emf-inout.cpp:3575 -#: ../src/extension/internal/wmf-inout.cpp:3149 +#: ../src/extension/internal/wmf-inout.cpp:3150 msgid "Convert dashed/dotted lines to single lines" msgstr "" #: ../src/extension/internal/emf-inout.cpp:3576 -#: ../src/extension/internal/wmf-inout.cpp:3150 +#: ../src/extension/internal/wmf-inout.cpp:3151 msgid "Convert gradients to colored polygon series" msgstr "" @@ -6323,7 +6008,7 @@ msgstr "" #: ../src/extension/internal/filter/color.h:1602 #: ../src/extension/internal/filter/paint.h:705 #: ../src/extension/internal/filter/transparency.h:63 -#: ../src/filter-enums.cpp:54 +#: ../src/filter-enums.cpp:55 msgid "Darken" msgstr "" @@ -6340,7 +6025,7 @@ msgstr "" #: ../src/extension/internal/filter/color.h:1594 #: ../src/extension/internal/filter/paint.h:703 #: ../src/extension/internal/filter/transparency.h:62 -#: ../src/filter-enums.cpp:53 ../src/ui/dialog/input.cpp:382 +#: ../src/filter-enums.cpp:54 ../src/ui/dialog/input.cpp:382 msgid "Screen" msgstr "" @@ -6358,7 +6043,7 @@ msgstr "" #: ../src/extension/internal/filter/color.h:1601 #: ../src/extension/internal/filter/paint.h:701 #: ../src/extension/internal/filter/transparency.h:60 -#: ../src/filter-enums.cpp:52 +#: ../src/filter-enums.cpp:53 msgid "Multiply" msgstr "" @@ -6373,7 +6058,7 @@ msgstr "" #: ../src/extension/internal/filter/color.h:1593 #: ../src/extension/internal/filter/paint.h:704 #: ../src/extension/internal/filter/transparency.h:64 -#: ../src/filter-enums.cpp:55 +#: ../src/filter-enums.cpp:56 msgid "Lighten" msgstr "" @@ -6441,7 +6126,7 @@ msgstr "" #: ../src/extension/internal/filter/paint.h:702 #: ../src/extension/internal/filter/textures.h:77 #: ../src/extension/internal/filter/transparency.h:61 -#: ../src/filter-enums.cpp:51 ../src/ui/dialog/inkscape-preferences.cpp:646 +#: ../src/filter-enums.cpp:52 ../src/ui/dialog/inkscape-preferences.cpp:646 msgid "Normal" msgstr "" @@ -6478,10 +6163,10 @@ msgstr "" #: ../src/extension/internal/filter/color.h:637 #: ../src/extension/internal/filter/color.h:821 #: ../src/extension/internal/filter/transparency.h:132 -#: ../src/filter-enums.cpp:127 ../src/ui/tools/flood-tool.cpp:193 -#: ../src/widgets/sp-color-icc-selector.cpp:355 -#: ../src/widgets/sp-color-scales.cpp:429 -#: ../src/widgets/sp-color-scales.cpp:430 +#: ../src/filter-enums.cpp:128 ../src/ui/tools/flood-tool.cpp:193 +#: ../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 "" @@ -6491,10 +6176,10 @@ msgstr "" #: ../src/extension/internal/filter/color.h:638 #: ../src/extension/internal/filter/color.h:822 #: ../src/extension/internal/filter/transparency.h:133 -#: ../src/filter-enums.cpp:128 ../src/ui/tools/flood-tool.cpp:194 -#: ../src/widgets/sp-color-icc-selector.cpp:356 -#: ../src/widgets/sp-color-scales.cpp:432 -#: ../src/widgets/sp-color-scales.cpp:433 +#: ../src/filter-enums.cpp:129 ../src/ui/tools/flood-tool.cpp:194 +#: ../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 "" @@ -6504,10 +6189,10 @@ msgstr "" #: ../src/extension/internal/filter/color.h:639 #: ../src/extension/internal/filter/color.h:823 #: ../src/extension/internal/filter/transparency.h:134 -#: ../src/filter-enums.cpp:129 ../src/ui/tools/flood-tool.cpp:195 -#: ../src/widgets/sp-color-icc-selector.cpp:357 -#: ../src/widgets/sp-color-scales.cpp:435 -#: ../src/widgets/sp-color-scales.cpp:436 +#: ../src/filter-enums.cpp:130 ../src/ui/tools/flood-tool.cpp:195 +#: ../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 "" @@ -6530,7 +6215,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:331 +#: ../src/widgets/rect-toolbar.cpp:335 #: ../share/extensions/interp_att_g.inx.h:11 msgid "Height" msgstr "" @@ -6544,9 +6229,9 @@ msgstr "" #: ../src/extension/internal/filter/paint.h:592 #: ../src/extension/internal/filter/paint.h:707 #: ../src/ui/tools/flood-tool.cpp:198 -#: ../src/widgets/sp-color-icc-selector.cpp:366 -#: ../src/widgets/sp-color-scales.cpp:461 -#: ../src/widgets/sp-color-scales.cpp:462 ../src/widgets/tweak-toolbar.cpp:318 +#: ../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 "" @@ -6658,7 +6343,7 @@ msgstr "" #: ../src/extension/internal/filter/bumps.h:322 #: ../src/extension/internal/filter/transparency.h:57 -#: ../src/filter-enums.cpp:29 ../src/sp-image.cpp:517 +#: ../src/filter-enums.cpp:30 ../src/sp-image.cpp:518 msgid "Image" msgstr "" @@ -6697,14 +6382,14 @@ msgstr "" #: ../src/extension/internal/filter/bumps.h:353 #: ../src/extension/internal/filter/morphology.h:176 -#: ../src/filter-enums.cpp:90 +#: ../src/filter-enums.cpp:91 msgid "Atop" msgstr "" #: ../src/extension/internal/filter/bumps.h:354 #: ../src/extension/internal/filter/distort.h:70 #: ../src/extension/internal/filter/morphology.h:174 -#: ../src/filter-enums.cpp:88 +#: ../src/filter-enums.cpp:89 msgid "In" msgstr "" @@ -6741,20 +6426,20 @@ msgstr "" #: ../src/extension/internal/filter/color.h:156 #: ../src/extension/internal/filter/color.h:257 -#: ../src/extension/internal/filter/paint.h:87 ../src/filter-enums.cpp:65 +#: ../src/extension/internal/filter/paint.h:87 ../src/filter-enums.cpp:66 #: ../src/ui/dialog/inkscape-preferences.cpp:945 #: ../src/ui/tools/flood-tool.cpp:197 -#: ../src/widgets/sp-color-icc-selector.cpp:362 -#: ../src/widgets/sp-color-icc-selector.cpp:367 -#: ../src/widgets/sp-color-scales.cpp:458 -#: ../src/widgets/sp-color-scales.cpp:459 ../src/widgets/tweak-toolbar.cpp:302 +#: ../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 "" #: ../src/extension/internal/filter/color.h:160 #: ../src/extension/internal/filter/transparency.h:135 -#: ../src/filter-enums.cpp:130 ../src/ui/tools/flood-tool.cpp:199 +#: ../src/filter-enums.cpp:131 ../src/ui/tools/flood-tool.cpp:199 msgid "Alpha" msgstr "" @@ -6800,32 +6485,33 @@ msgstr "" msgid "Blend image or object with a flood color" msgstr "" -#: ../src/extension/internal/filter/color.h:424 ../src/filter-enums.cpp:22 +#: ../src/extension/internal/filter/color.h:424 ../src/filter-enums.cpp:23 msgid "Component Transfer" msgstr "" -#: ../src/extension/internal/filter/color.h:427 ../src/filter-enums.cpp:109 +#: ../src/extension/internal/filter/color.h:427 ../src/filter-enums.cpp:110 msgid "Identity" msgstr "" #: ../src/extension/internal/filter/color.h:428 -#: ../src/extension/internal/filter/paint.h:498 ../src/filter-enums.cpp:110 +#: ../src/extension/internal/filter/paint.h:498 ../src/filter-enums.cpp:111 #: ../src/ui/dialog/filter-effects-dialog.cpp:1050 msgid "Table" msgstr "" #: ../src/extension/internal/filter/color.h:429 -#: ../src/extension/internal/filter/paint.h:499 ../src/filter-enums.cpp:111 +#: ../src/extension/internal/filter/paint.h:499 ../src/filter-enums.cpp:112 #: ../src/ui/dialog/filter-effects-dialog.cpp:1053 msgid "Discrete" msgstr "" -#: ../src/extension/internal/filter/color.h:430 ../src/filter-enums.cpp:112 -#: ../src/live_effects/lpe-powerstroke.cpp:188 +#: ../src/extension/internal/filter/color.h:430 ../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:113 +#: ../src/extension/internal/filter/color.h:431 ../src/filter-enums.cpp:114 msgid "Gamma" msgstr "" @@ -6878,26 +6564,26 @@ msgid "Extract Channel" msgstr "" #: ../src/extension/internal/filter/color.h:640 -#: ../src/widgets/sp-color-icc-selector.cpp:369 -#: ../src/widgets/sp-color-icc-selector.cpp:374 -#: ../src/widgets/sp-color-scales.cpp:483 -#: ../src/widgets/sp-color-scales.cpp:484 +#: ../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 msgid "Cyan" msgstr "" #: ../src/extension/internal/filter/color.h:641 -#: ../src/widgets/sp-color-icc-selector.cpp:370 -#: ../src/widgets/sp-color-icc-selector.cpp:375 -#: ../src/widgets/sp-color-scales.cpp:486 -#: ../src/widgets/sp-color-scales.cpp:487 +#: ../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 msgid "Magenta" msgstr "" #: ../src/extension/internal/filter/color.h:642 -#: ../src/widgets/sp-color-icc-selector.cpp:371 -#: ../src/widgets/sp-color-icc-selector.cpp:376 -#: ../src/widgets/sp-color-scales.cpp:489 -#: ../src/widgets/sp-color-scales.cpp:490 +#: ../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 msgid "Yellow" msgstr "" @@ -6922,15 +6608,15 @@ msgid "Fade to:" msgstr "" #: ../src/extension/internal/filter/color.h:744 -#: ../src/ui/widget/selected-style.cpp:261 -#: ../src/widgets/sp-color-icc-selector.cpp:372 -#: ../src/widgets/sp-color-scales.cpp:492 -#: ../src/widgets/sp-color-scales.cpp:493 +#: ../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 "" #: ../src/extension/internal/filter/color.h:745 -#: ../src/ui/widget/selected-style.cpp:257 +#: ../src/ui/widget/selected-style.cpp:270 msgid "White" msgstr "" @@ -6953,7 +6639,7 @@ msgid "Customize greyscale components" msgstr "" #: ../src/extension/internal/filter/color.h:905 -#: ../src/ui/widget/selected-style.cpp:253 +#: ../src/ui/widget/selected-style.cpp:266 msgid "Invert" msgstr "" @@ -7006,8 +6692,8 @@ msgid "Shadows" msgstr "" #: ../src/extension/internal/filter/color.h:1044 -#: ../src/extension/internal/filter/paint.h:356 ../src/filter-enums.cpp:32 -#: ../src/live_effects/effect.cpp:95 +#: ../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:1156 msgid "Offset" @@ -7174,13 +6860,13 @@ msgstr "" #: ../src/extension/internal/filter/distort.h:71 #: ../src/extension/internal/filter/morphology.h:175 -#: ../src/filter-enums.cpp:89 +#: ../src/filter-enums.cpp:90 msgid "Out" msgstr "" #: ../src/extension/internal/filter/distort.h:77 #: ../src/extension/internal/filter/textures.h:75 -#: ../src/ui/widget/selected-style.cpp:131 +#: ../src/ui/widget/selected-style.cpp:132 #: ../src/ui/widget/style-swatch.cpp:128 msgid "Stroke:" msgstr "" @@ -7213,8 +6899,8 @@ msgstr "" #: ../src/extension/internal/filter/distort.h:85 #: ../src/extension/internal/filter/distort.h:194 #: ../src/extension/internal/filter/overlays.h:62 -#: ../src/extension/internal/filter/paint.h:693 ../src/filter-enums.cpp:35 -#: ../src/filter-enums.cpp:144 +#: ../src/extension/internal/filter/paint.h:693 ../src/filter-enums.cpp:36 +#: ../src/filter-enums.cpp:145 msgid "Turbulence" msgstr "" @@ -7256,6 +6942,7 @@ msgid "Blur and displace edges of shapes and pictures" msgstr "" #: ../src/extension/internal/filter/distort.h:190 +#: ../src/live_effects/effect.cpp:140 msgid "Roughen" msgstr "" @@ -7332,7 +7019,7 @@ 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:314 ../src/widgets/spray-toolbar.cpp:116 +#: ../src/widgets/rect-toolbar.cpp:318 ../src/widgets/spray-toolbar.cpp:116 #: ../src/widgets/tweak-toolbar.cpp:128 #: ../share/extensions/interp_att_g.inx.h:10 msgid "Width" @@ -7368,17 +7055,18 @@ msgid "Composite type:" msgstr "" #: ../src/extension/internal/filter/morphology.h:173 -#: ../src/filter-enums.cpp:87 +#: ../src/filter-enums.cpp:88 msgid "Over" msgstr "" #: ../src/extension/internal/filter/morphology.h:177 -#: ../src/filter-enums.cpp:91 +#: ../src/filter-enums.cpp:92 msgid "XOR" msgstr "" #: ../src/extension/internal/filter/morphology.h:179 #: ../src/ui/dialog/layer-properties.cpp:185 +#: ../src/ui/dialog/lpe-powerstroke-properties.cpp:59 msgid "Position:" msgstr "" @@ -7570,10 +7258,12 @@ msgstr "" msgid "Drawing" msgstr "" +#. 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/splivarot.cpp:2212 +#: ../src/extension/internal/filter/paint.h:976 +#: ../src/live_effects/effect.cpp:151 ../src/splivarot.cpp:2212 msgid "Simplify" msgstr "" @@ -7644,6 +7334,7 @@ msgid "Contrasted" msgstr "" #: ../src/extension/internal/filter/paint.h:591 +#: ../src/live_effects/lpe-jointype.cpp:51 msgid "Line width" msgstr "" @@ -7839,7 +7530,7 @@ msgid "Inkblot on tissue or rough paper" msgstr "" #: ../src/extension/internal/filter/transparency.h:53 -#: ../src/filter-enums.cpp:20 +#: ../src/filter-enums.cpp:21 msgid "Blend" msgstr "" @@ -7848,14 +7539,14 @@ msgid "Source:" msgstr "" #: ../src/extension/internal/filter/transparency.h:56 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1551 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1590 msgid "Background" msgstr "" #: ../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:127 ../src/widgets/spray-toolbar.cpp:186 +#: ../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:" @@ -7902,79 +7593,79 @@ msgstr "" msgid "Repaint anything visible monochrome" msgstr "" -#: ../src/extension/internal/gdkpixbuf-input.cpp:184 +#: ../src/extension/internal/gdkpixbuf-input.cpp:183 #, c-format msgid "%s bitmap image import" msgstr "" -#: ../src/extension/internal/gdkpixbuf-input.cpp:191 +#: ../src/extension/internal/gdkpixbuf-input.cpp:190 msgid "Image Import Type:" msgstr "" -#: ../src/extension/internal/gdkpixbuf-input.cpp:191 +#: ../src/extension/internal/gdkpixbuf-input.cpp:190 msgid "" "Embed results in stand-alone, larger SVG files. Link references a file " "outside this SVG document and all files must be moved together." msgstr "" -#: ../src/extension/internal/gdkpixbuf-input.cpp:192 +#: ../src/extension/internal/gdkpixbuf-input.cpp:191 #: ../src/ui/dialog/inkscape-preferences.cpp:1449 msgid "Embed" msgstr "" -#: ../src/extension/internal/gdkpixbuf-input.cpp:193 ../src/sp-anchor.cpp:119 +#: ../src/extension/internal/gdkpixbuf-input.cpp:192 ../src/sp-anchor.cpp:119 #: ../src/ui/dialog/inkscape-preferences.cpp:1449 msgid "Link" msgstr "" -#: ../src/extension/internal/gdkpixbuf-input.cpp:196 +#: ../src/extension/internal/gdkpixbuf-input.cpp:195 msgid "Image DPI:" msgstr "" -#: ../src/extension/internal/gdkpixbuf-input.cpp:196 +#: ../src/extension/internal/gdkpixbuf-input.cpp:195 msgid "" "Take information from file or use default bitmap import resolution as " "defined in the preferences." msgstr "" -#: ../src/extension/internal/gdkpixbuf-input.cpp:197 +#: ../src/extension/internal/gdkpixbuf-input.cpp:196 msgid "From file" msgstr "" -#: ../src/extension/internal/gdkpixbuf-input.cpp:198 +#: ../src/extension/internal/gdkpixbuf-input.cpp:197 msgid "Default import resolution" msgstr "" -#: ../src/extension/internal/gdkpixbuf-input.cpp:201 +#: ../src/extension/internal/gdkpixbuf-input.cpp:200 msgid "Image Rendering Mode:" msgstr "" -#: ../src/extension/internal/gdkpixbuf-input.cpp:201 +#: ../src/extension/internal/gdkpixbuf-input.cpp:200 msgid "" "When an image is upscaled, apply smoothing or keep blocky (pixelated). (Will " "not work in all browsers.)" msgstr "" -#: ../src/extension/internal/gdkpixbuf-input.cpp:202 +#: ../src/extension/internal/gdkpixbuf-input.cpp:201 #: ../src/ui/dialog/inkscape-preferences.cpp:1456 msgid "None (auto)" msgstr "" -#: ../src/extension/internal/gdkpixbuf-input.cpp:203 +#: ../src/extension/internal/gdkpixbuf-input.cpp:202 #: ../src/ui/dialog/inkscape-preferences.cpp:1456 msgid "Smooth (optimizeQuality)" msgstr "" -#: ../src/extension/internal/gdkpixbuf-input.cpp:204 +#: ../src/extension/internal/gdkpixbuf-input.cpp:203 #: ../src/ui/dialog/inkscape-preferences.cpp:1456 msgid "Blocky (optimizeSpeed)" msgstr "" -#: ../src/extension/internal/gdkpixbuf-input.cpp:207 +#: ../src/extension/internal/gdkpixbuf-input.cpp:206 msgid "Hide the dialog next time and always apply the same actions." msgstr "" -#: ../src/extension/internal/gdkpixbuf-input.cpp:207 +#: ../src/extension/internal/gdkpixbuf-input.cpp:206 msgid "Don't ask again" msgstr "" @@ -8037,6 +7728,7 @@ msgstr "" #: ../share/extensions/render_barcode_qrcode.inx.h:18 #: ../share/extensions/render_gear_rack.inx.h:5 #: ../share/extensions/render_gears.inx.h:11 ../share/extensions/rtree.inx.h:4 +#: ../share/extensions/seamless_pattern.inx.h:5 #: ../share/extensions/spirograph.inx.h:10 #: ../share/extensions/svgcalendar.inx.h:38 #: ../share/extensions/triangle.inx.h:14 @@ -8290,78 +7982,78 @@ msgstr "" msgid "Scalable Vector Graphics format compressed with GZip" msgstr "" -#: ../src/extension/internal/vsd-input.cpp:295 +#: ../src/extension/internal/vsd-input.cpp:301 msgid "VSD Input" msgstr "" -#: ../src/extension/internal/vsd-input.cpp:300 +#: ../src/extension/internal/vsd-input.cpp:306 msgid "Microsoft Visio Diagram (*.vsd)" msgstr "" -#: ../src/extension/internal/vsd-input.cpp:301 +#: ../src/extension/internal/vsd-input.cpp:307 msgid "File format used by Microsoft Visio 6 and later" msgstr "" -#: ../src/extension/internal/vsd-input.cpp:308 +#: ../src/extension/internal/vsd-input.cpp:314 msgid "VDX Input" msgstr "" -#: ../src/extension/internal/vsd-input.cpp:313 +#: ../src/extension/internal/vsd-input.cpp:319 msgid "Microsoft Visio XML Diagram (*.vdx)" msgstr "" -#: ../src/extension/internal/vsd-input.cpp:314 +#: ../src/extension/internal/vsd-input.cpp:320 msgid "File format used by Microsoft Visio 2010 and later" msgstr "" -#: ../src/extension/internal/vsd-input.cpp:321 +#: ../src/extension/internal/vsd-input.cpp:327 msgid "VSDM Input" msgstr "" -#: ../src/extension/internal/vsd-input.cpp:326 +#: ../src/extension/internal/vsd-input.cpp:332 msgid "Microsoft Visio 2013 drawing (*.vsdm)" msgstr "" -#: ../src/extension/internal/vsd-input.cpp:327 -#: ../src/extension/internal/vsd-input.cpp:340 +#: ../src/extension/internal/vsd-input.cpp:333 +#: ../src/extension/internal/vsd-input.cpp:346 msgid "File format used by Microsoft Visio 2013 and later" msgstr "" -#: ../src/extension/internal/vsd-input.cpp:334 +#: ../src/extension/internal/vsd-input.cpp:340 msgid "VSDX Input" msgstr "" -#: ../src/extension/internal/vsd-input.cpp:339 +#: ../src/extension/internal/vsd-input.cpp:345 msgid "Microsoft Visio 2013 drawing (*.vsdx)" msgstr "" -#: ../src/extension/internal/wmf-inout.cpp:3127 +#: ../src/extension/internal/wmf-inout.cpp:3128 msgid "WMF Input" msgstr "" -#: ../src/extension/internal/wmf-inout.cpp:3132 +#: ../src/extension/internal/wmf-inout.cpp:3133 msgid "Windows Metafiles (*.wmf)" msgstr "" -#: ../src/extension/internal/wmf-inout.cpp:3133 +#: ../src/extension/internal/wmf-inout.cpp:3134 msgid "Windows Metafiles" msgstr "" -#: ../src/extension/internal/wmf-inout.cpp:3141 +#: ../src/extension/internal/wmf-inout.cpp:3142 msgid "WMF Output" msgstr "" -#: ../src/extension/internal/wmf-inout.cpp:3151 +#: ../src/extension/internal/wmf-inout.cpp:3152 msgid "Map all fill patterns to standard WMF hatches" msgstr "" -#: ../src/extension/internal/wmf-inout.cpp:3155 +#: ../src/extension/internal/wmf-inout.cpp:3156 #: ../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:3156 +#: ../src/extension/internal/wmf-inout.cpp:3157 msgid "Windows Metafile" msgstr "" @@ -8506,202 +8198,202 @@ msgstr "" msgid "Import Clip Art" msgstr "" -#: ../src/filter-enums.cpp:21 +#: ../src/filter-enums.cpp:22 msgid "Color Matrix" msgstr "" -#: ../src/filter-enums.cpp:23 +#: ../src/filter-enums.cpp:24 msgid "Composite" msgstr "" -#: ../src/filter-enums.cpp:24 +#: ../src/filter-enums.cpp:25 msgid "Convolve Matrix" msgstr "" -#: ../src/filter-enums.cpp:25 +#: ../src/filter-enums.cpp:26 msgid "Diffuse Lighting" msgstr "" -#: ../src/filter-enums.cpp:26 +#: ../src/filter-enums.cpp:27 msgid "Displacement Map" msgstr "" -#: ../src/filter-enums.cpp:27 +#: ../src/filter-enums.cpp:28 msgid "Flood" msgstr "" -#: ../src/filter-enums.cpp:30 ../share/extensions/text_merge.inx.h:1 +#: ../src/filter-enums.cpp:31 ../share/extensions/text_merge.inx.h:1 msgid "Merge" msgstr "" -#: ../src/filter-enums.cpp:33 +#: ../src/filter-enums.cpp:34 msgid "Specular Lighting" msgstr "" -#: ../src/filter-enums.cpp:34 +#: ../src/filter-enums.cpp:35 msgid "Tile" msgstr "" -#: ../src/filter-enums.cpp:40 +#: ../src/filter-enums.cpp:41 msgid "Source Graphic" msgstr "" -#: ../src/filter-enums.cpp:41 +#: ../src/filter-enums.cpp:42 msgid "Source Alpha" msgstr "" -#: ../src/filter-enums.cpp:42 +#: ../src/filter-enums.cpp:43 msgid "Background Image" msgstr "" -#: ../src/filter-enums.cpp:43 +#: ../src/filter-enums.cpp:44 msgid "Background Alpha" msgstr "" -#: ../src/filter-enums.cpp:44 +#: ../src/filter-enums.cpp:45 msgid "Fill Paint" msgstr "" -#: ../src/filter-enums.cpp:45 +#: ../src/filter-enums.cpp:46 msgid "Stroke Paint" msgstr "" #. New in Compositing and Blending Level 1 -#: ../src/filter-enums.cpp:57 +#: ../src/filter-enums.cpp:58 msgid "Overlay" msgstr "" -#: ../src/filter-enums.cpp:58 +#: ../src/filter-enums.cpp:59 msgid "Color Dodge" msgstr "" -#: ../src/filter-enums.cpp:59 +#: ../src/filter-enums.cpp:60 msgid "Color Burn" msgstr "" -#: ../src/filter-enums.cpp:60 +#: ../src/filter-enums.cpp:61 msgid "Hard Light" msgstr "" -#: ../src/filter-enums.cpp:61 +#: ../src/filter-enums.cpp:62 msgid "Soft Light" msgstr "" -#: ../src/filter-enums.cpp:62 ../src/splivarot.cpp:88 ../src/splivarot.cpp:94 +#: ../src/filter-enums.cpp:63 ../src/splivarot.cpp:88 ../src/splivarot.cpp:94 msgid "Difference" msgstr "" -#: ../src/filter-enums.cpp:63 ../src/splivarot.cpp:100 +#: ../src/filter-enums.cpp:64 ../src/splivarot.cpp:100 msgid "Exclusion" msgstr "" -#: ../src/filter-enums.cpp:64 ../src/ui/tools/flood-tool.cpp:196 -#: ../src/widgets/sp-color-icc-selector.cpp:361 -#: ../src/widgets/sp-color-icc-selector.cpp:365 -#: ../src/widgets/sp-color-scales.cpp:455 -#: ../src/widgets/sp-color-scales.cpp:456 ../src/widgets/tweak-toolbar.cpp:286 +#: ../src/filter-enums.cpp:65 ../src/ui/tools/flood-tool.cpp:196 +#: ../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 "" -#: ../src/filter-enums.cpp:67 +#: ../src/filter-enums.cpp:68 msgid "Luminosity" msgstr "" -#: ../src/filter-enums.cpp:77 +#: ../src/filter-enums.cpp:78 msgid "Matrix" msgstr "" -#: ../src/filter-enums.cpp:78 +#: ../src/filter-enums.cpp:79 msgid "Saturate" msgstr "" -#: ../src/filter-enums.cpp:79 +#: ../src/filter-enums.cpp:80 msgid "Hue Rotate" msgstr "" -#: ../src/filter-enums.cpp:80 +#: ../src/filter-enums.cpp:81 msgid "Luminance to Alpha" msgstr "" #. File -#: ../src/filter-enums.cpp:86 ../src/verbs.cpp:2352 +#: ../src/filter-enums.cpp:87 ../src/verbs.cpp:2435 #: ../share/extensions/jessyInk_mouseHandler.inx.h:3 #: ../share/extensions/jessyInk_transitions.inx.h:7 msgid "Default" msgstr "" #. New CSS -#: ../src/filter-enums.cpp:94 +#: ../src/filter-enums.cpp:95 msgid "Clear" msgstr "" -#: ../src/filter-enums.cpp:95 +#: ../src/filter-enums.cpp:96 msgid "Copy" msgstr "" -#: ../src/filter-enums.cpp:96 ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1571 +#: ../src/filter-enums.cpp:97 ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1610 msgid "Destination" msgstr "" -#: ../src/filter-enums.cpp:97 +#: ../src/filter-enums.cpp:98 msgid "Destination Over" msgstr "" -#: ../src/filter-enums.cpp:98 +#: ../src/filter-enums.cpp:99 msgid "Destination In" msgstr "" -#: ../src/filter-enums.cpp:99 +#: ../src/filter-enums.cpp:100 msgid "Destination Out" msgstr "" -#: ../src/filter-enums.cpp:100 +#: ../src/filter-enums.cpp:101 msgid "Destination Atop" msgstr "" -#: ../src/filter-enums.cpp:101 +#: ../src/filter-enums.cpp:102 msgid "Lighter" msgstr "" -#: ../src/filter-enums.cpp:103 +#: ../src/filter-enums.cpp:104 msgid "Arithmetic" msgstr "" -#: ../src/filter-enums.cpp:119 ../src/selection-chemistry.cpp:535 +#: ../src/filter-enums.cpp:120 ../src/selection-chemistry.cpp:550 msgid "Duplicate" msgstr "" -#: ../src/filter-enums.cpp:120 +#: ../src/filter-enums.cpp:121 msgid "Wrap" msgstr "" -#: ../src/filter-enums.cpp:121 +#: ../src/filter-enums.cpp:122 msgctxt "Convolve matrix, edge mode" msgid "None" msgstr "" -#: ../src/filter-enums.cpp:136 +#: ../src/filter-enums.cpp:137 msgid "Erode" msgstr "" -#: ../src/filter-enums.cpp:137 +#: ../src/filter-enums.cpp:138 msgid "Dilate" msgstr "" -#: ../src/filter-enums.cpp:143 +#: ../src/filter-enums.cpp:144 msgid "Fractal Noise" msgstr "" -#: ../src/filter-enums.cpp:150 +#: ../src/filter-enums.cpp:151 msgid "Distant Light" msgstr "" -#: ../src/filter-enums.cpp:151 +#: ../src/filter-enums.cpp:152 msgid "Point Light" msgstr "" -#: ../src/filter-enums.cpp:152 +#: ../src/filter-enums.cpp:153 msgid "Spot Light" msgstr "" @@ -8713,7 +8405,7 @@ msgstr "" msgid "Reverse gradient" msgstr "" -#: ../src/gradient-chemistry.cpp:1620 ../src/widgets/gradient-selector.cpp:245 +#: ../src/gradient-chemistry.cpp:1620 ../src/widgets/gradient-selector.cpp:227 msgid "Delete swatch" msgstr "" @@ -8773,7 +8465,7 @@ msgstr "" msgid "Move gradient handle" msgstr "" -#: ../src/gradient-drag.cpp:1163 ../src/widgets/gradient-vector.cpp:847 +#: ../src/gradient-drag.cpp:1163 ../src/widgets/gradient-vector.cpp:827 msgid "Delete gradient stop" msgstr "" @@ -8824,310 +8516,72 @@ msgstr "" msgid "Delete gradient stop(s)" msgstr "" -#: ../src/inkscape.cpp:344 +#: ../src/inkscape.cpp:310 msgid "Autosave failed! Cannot create directory %1." msgstr "" -#: ../src/inkscape.cpp:353 +#: ../src/inkscape.cpp:319 msgid "Autosave failed! Cannot open directory %1." msgstr "" -#: ../src/inkscape.cpp:369 +#: ../src/inkscape.cpp:335 msgid "Autosaving documents..." msgstr "" -#: ../src/inkscape.cpp:442 +#: ../src/inkscape.cpp:408 msgid "Autosave failed! Could not find inkscape extension to save document." msgstr "" -#: ../src/inkscape.cpp:445 ../src/inkscape.cpp:452 +#: ../src/inkscape.cpp:411 ../src/inkscape.cpp:418 #, c-format msgid "Autosave failed! File %s could not be saved." msgstr "" -#: ../src/inkscape.cpp:467 +#: ../src/inkscape.cpp:433 msgid "Autosave complete." msgstr "" -#: ../src/inkscape.cpp:715 +#: ../src/inkscape.cpp:681 msgid "Untitled document" msgstr "" #. Show nice dialog box -#: ../src/inkscape.cpp:747 +#: ../src/inkscape.cpp:713 msgid "Inkscape encountered an internal error and will close now.\n" msgstr "" -#: ../src/inkscape.cpp:748 +#: ../src/inkscape.cpp:714 msgid "" "Automatic backups of unsaved documents were done to the following " "locations:\n" msgstr "" -#: ../src/inkscape.cpp:749 +#: ../src/inkscape.cpp:715 msgid "Automatic backup of the following documents failed:\n" msgstr "" -#: ../src/interface.cpp:748 -msgctxt "Interface setup" -msgid "Default" -msgstr "" - -#: ../src/interface.cpp:748 -msgid "Default interface setup" -msgstr "" - -#: ../src/interface.cpp:749 -msgctxt "Interface setup" -msgid "Custom" -msgstr "" - -#: ../src/interface.cpp:749 -msgid "Setup for custom task" -msgstr "" - -#: ../src/interface.cpp:750 -msgctxt "Interface setup" -msgid "Wide" -msgstr "" - -#: ../src/interface.cpp:750 -msgid "Setup for widescreen work" -msgstr "" - -#: ../src/interface.cpp:862 -#, c-format -msgid "Verb \"%s\" Unknown" -msgstr "" - -#: ../src/interface.cpp:901 -msgid "Open _Recent" -msgstr "" - -#: ../src/interface.cpp:1009 ../src/interface.cpp:1095 -#: ../src/interface.cpp:1198 ../src/ui/widget/selected-style.cpp:532 -msgid "Drop color" -msgstr "" - -#: ../src/interface.cpp:1048 ../src/interface.cpp:1158 -msgid "Drop color on gradient" -msgstr "" - -#: ../src/interface.cpp:1211 -msgid "Could not parse SVG data" -msgstr "" - -#: ../src/interface.cpp:1250 -msgid "Drop SVG" -msgstr "" - -#: ../src/interface.cpp:1263 -msgid "Drop Symbol" -msgstr "" - -#: ../src/interface.cpp:1294 -msgid "Drop bitmap image" -msgstr "" - -#: ../src/interface.cpp:1386 -#, c-format -msgid "" -"<span weight=\"bold\" size=\"larger\">A file named \"%s\" already exists. Do " -"you want to replace it?</span>\n" -"\n" -"The file already exists in \"%s\". Replacing it will overwrite its contents." -msgstr "" - -#: ../src/interface.cpp:1392 ../src/ui/dialog/export.cpp:1302 -#: ../src/widgets/desktop-widget.cpp:1122 -#: ../src/widgets/desktop-widget.cpp:1184 -msgid "_Cancel" -msgstr "" - -#: ../src/interface.cpp:1393 ../share/extensions/web-set-att.inx.h:21 -#: ../share/extensions/web-transmit-att.inx.h:19 -msgid "Replace" -msgstr "" - -#: ../src/interface.cpp:1464 -msgid "Go to parent" -msgstr "" - -#. TRANSLATORS: #%1 is the id of the group e.g. <g id="#g7">, not a number. -#: ../src/interface.cpp:1505 -msgid "Enter group #%1" -msgstr "" - -#. Item dialog -#: ../src/interface.cpp:1641 ../src/verbs.cpp:2849 -msgid "_Object Properties..." -msgstr "" - -#: ../src/interface.cpp:1650 -msgid "_Select This" -msgstr "" - -#: ../src/interface.cpp:1661 -msgid "Select Same" -msgstr "" - -#. Select same fill and stroke -#: ../src/interface.cpp:1671 -msgid "Fill and Stroke" -msgstr "" - -#. Select same fill color -#: ../src/interface.cpp:1678 -msgid "Fill Color" -msgstr "" - -#. Select same stroke color -#: ../src/interface.cpp:1685 -msgid "Stroke Color" -msgstr "" - -#. Select same stroke style -#: ../src/interface.cpp:1692 -msgid "Stroke Style" -msgstr "" - -#. Select same stroke style -#: ../src/interface.cpp:1699 -msgid "Object type" -msgstr "" - -#. Move to layer -#: ../src/interface.cpp:1706 -msgid "_Move to layer ..." -msgstr "" - -#. Create link -#: ../src/interface.cpp:1716 -msgid "Create _Link" -msgstr "" - -#. Set mask -#: ../src/interface.cpp:1739 -msgid "Set Mask" -msgstr "" - -#. Release mask -#: ../src/interface.cpp:1750 -msgid "Release Mask" -msgstr "" - -#. Set Clip -#: ../src/interface.cpp:1761 -msgid "Set Cl_ip" -msgstr "" - -#. Release Clip -#: ../src/interface.cpp:1772 -msgid "Release C_lip" -msgstr "" - -#. Group -#: ../src/interface.cpp:1783 ../src/verbs.cpp:2486 -msgid "_Group" -msgstr "" - -#: ../src/interface.cpp:1854 -msgid "Create link" -msgstr "" - -#. Ungroup -#: ../src/interface.cpp:1885 ../src/verbs.cpp:2488 -msgid "_Ungroup" -msgstr "" - -#. Link dialog -#: ../src/interface.cpp:1910 -msgid "Link _Properties..." -msgstr "" - -#. Select item -#: ../src/interface.cpp:1916 -msgid "_Follow Link" -msgstr "" - -#. Reset transformations -#: ../src/interface.cpp:1922 -msgid "_Remove Link" -msgstr "" - -#: ../src/interface.cpp:1953 -msgid "Remove link" -msgstr "" - -#. Image properties -#: ../src/interface.cpp:1964 -msgid "Image _Properties..." -msgstr "" - -#. Edit externally -#: ../src/interface.cpp:1970 -msgid "Edit Externally..." -msgstr "" - -#. Trace Bitmap -#. TRANSLATORS: "to trace" means "to convert a bitmap to vector graphics" (to vectorize) -#: ../src/interface.cpp:1979 ../src/verbs.cpp:2549 -msgid "_Trace Bitmap..." -msgstr "" - -#. Trace Pixel Art -#: ../src/interface.cpp:1988 -msgid "Trace Pixel Art" -msgstr "" - -#: ../src/interface.cpp:1998 -msgctxt "Context menu" -msgid "Embed Image" -msgstr "" - -#: ../src/interface.cpp:2009 -msgctxt "Context menu" -msgid "Extract Image..." -msgstr "" - -#. Item dialog -#. Fill and Stroke dialog -#: ../src/interface.cpp:2154 ../src/interface.cpp:2174 ../src/verbs.cpp:2812 -msgid "_Fill and Stroke..." -msgstr "" - -#. Edit Text dialog -#: ../src/interface.cpp:2180 ../src/verbs.cpp:2831 -msgid "_Text and Font..." -msgstr "" - -#. Spellcheck dialog -#: ../src/interface.cpp:2186 ../src/verbs.cpp:2839 -msgid "Check Spellin_g..." -msgstr "" - -#: ../src/knot.cpp:332 +#: ../src/knot.cpp:346 msgid "Node or handle drag canceled." msgstr "" -#: ../src/knotholder.cpp:158 +#: ../src/knotholder.cpp:170 msgid "Change handle" msgstr "" -#: ../src/knotholder.cpp:237 +#: ../src/knotholder.cpp:257 msgid "Move handle" msgstr "" #. TRANSLATORS: This refers to the pattern that's inside the object -#: ../src/knotholder.cpp:256 ../src/knotholder.cpp:278 +#: ../src/knotholder.cpp:276 ../src/knotholder.cpp:298 msgid "<b>Move</b> the pattern fill inside the object" msgstr "" -#: ../src/knotholder.cpp:260 ../src/knotholder.cpp:282 +#: ../src/knotholder.cpp:280 ../src/knotholder.cpp:302 msgid "<b>Scale</b> the pattern fill; uniformly if with <b>Ctrl</b>" msgstr "" -#: ../src/knotholder.cpp:264 ../src/knotholder.cpp:286 +#: ../src/knotholder.cpp:284 ../src/knotholder.cpp:306 msgid "<b>Rotate</b> the pattern fill; with <b>Ctrl</b> to snap angle" msgstr "" @@ -9297,8 +8751,9 @@ msgstr "" #: ../src/libgdl/gdl-dock-notebook.c:132 #: ../src/ui/dialog/align-and-distribute.cpp:1003 #: ../src/ui/dialog/document-properties.cpp:153 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1497 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1536 #: ../src/widgets/desktop-widget.cpp:1992 +#: ../share/extensions/empty_page.inx.h:1 #: ../share/extensions/voronoi2svg.inx.h:9 msgid "Page" msgstr "" @@ -9308,10 +8763,11 @@ msgid "The index of the current page" msgstr "" #: ../src/libgdl/gdl-dock-object.c:125 +#: ../src/live_effects/parameter/originalpatharray.cpp:86 #: ../src/ui/dialog/inkscape-preferences.cpp:1504 #: ../src/ui/widget/page-sizer.cpp:258 -#: ../src/widgets/gradient-selector.cpp:158 -#: ../src/widgets/sp-xmlview-attr-list.cpp:54 +#: ../src/widgets/gradient-selector.cpp:140 +#: ../src/widgets/sp-xmlview-attr-list.cpp:49 msgid "Name" msgstr "" @@ -9506,175 +8962,292 @@ msgstr "" msgid "Dock #%d" msgstr "" -#: ../src/libnrtype/FontFactory.cpp:617 +#: ../src/libnrtype/FontFactory.cpp:618 msgid "Ignoring font without family that will crash Pango" msgstr "" -#: ../src/live_effects/effect.cpp:84 +#: ../src/live_effects/effect.cpp:99 msgid "doEffect stack test" msgstr "" -#: ../src/live_effects/effect.cpp:85 +#: ../src/live_effects/effect.cpp:100 msgid "Angle bisector" msgstr "" #. TRANSLATORS: boolean operations -#: ../src/live_effects/effect.cpp:87 +#: ../src/live_effects/effect.cpp:102 msgid "Boolops" msgstr "" -#: ../src/live_effects/effect.cpp:88 +#: ../src/live_effects/effect.cpp:103 msgid "Circle (by center and radius)" msgstr "" -#: ../src/live_effects/effect.cpp:89 +#: ../src/live_effects/effect.cpp:104 msgid "Circle by 3 points" msgstr "" -#: ../src/live_effects/effect.cpp:90 +#: ../src/live_effects/effect.cpp:105 msgid "Dynamic stroke" msgstr "" -#: ../src/live_effects/effect.cpp:91 ../share/extensions/extrude.inx.h:1 +#: ../src/live_effects/effect.cpp:106 ../share/extensions/extrude.inx.h:1 msgid "Extrude" msgstr "" -#: ../src/live_effects/effect.cpp:92 +#: ../src/live_effects/effect.cpp:107 msgid "Lattice Deformation" msgstr "" -#: ../src/live_effects/effect.cpp:93 +#: ../src/live_effects/effect.cpp:108 msgid "Line Segment" msgstr "" -#: ../src/live_effects/effect.cpp:94 +#: ../src/live_effects/effect.cpp:109 msgid "Mirror symmetry" msgstr "" -#: ../src/live_effects/effect.cpp:96 +#: ../src/live_effects/effect.cpp:111 msgid "Parallel" msgstr "" -#: ../src/live_effects/effect.cpp:97 +#: ../src/live_effects/effect.cpp:112 msgid "Path length" msgstr "" -#: ../src/live_effects/effect.cpp:98 +#: ../src/live_effects/effect.cpp:113 msgid "Perpendicular bisector" msgstr "" -#: ../src/live_effects/effect.cpp:99 +#: ../src/live_effects/effect.cpp:114 msgid "Perspective path" msgstr "" -#: ../src/live_effects/effect.cpp:100 +#: ../src/live_effects/effect.cpp:115 msgid "Rotate copies" msgstr "" -#: ../src/live_effects/effect.cpp:101 +#: ../src/live_effects/effect.cpp:116 msgid "Recursive skeleton" msgstr "" -#: ../src/live_effects/effect.cpp:102 +#: ../src/live_effects/effect.cpp:117 msgid "Tangent to curve" msgstr "" -#: ../src/live_effects/effect.cpp:103 +#: ../src/live_effects/effect.cpp:118 msgid "Text label" msgstr "" #. 0.46 -#: ../src/live_effects/effect.cpp:106 +#: ../src/live_effects/effect.cpp:121 msgid "Bend" msgstr "" -#: ../src/live_effects/effect.cpp:107 +#: ../src/live_effects/effect.cpp:122 msgid "Gears" msgstr "" -#: ../src/live_effects/effect.cpp:108 +#: ../src/live_effects/effect.cpp:123 msgid "Pattern Along Path" msgstr "" #. for historic reasons, this effect is called skeletal(strokes) in Inkscape:SVG -#: ../src/live_effects/effect.cpp:109 +#: ../src/live_effects/effect.cpp:124 msgid "Stitch Sub-Paths" msgstr "" #. 0.47 -#: ../src/live_effects/effect.cpp:111 +#: ../src/live_effects/effect.cpp:126 msgid "VonKoch" msgstr "" -#: ../src/live_effects/effect.cpp:112 +#: ../src/live_effects/effect.cpp:127 msgid "Knot" msgstr "" -#: ../src/live_effects/effect.cpp:113 +#: ../src/live_effects/effect.cpp:128 msgid "Construct grid" msgstr "" -#: ../src/live_effects/effect.cpp:114 +#: ../src/live_effects/effect.cpp:129 msgid "Spiro spline" msgstr "" -#: ../src/live_effects/effect.cpp:115 +#: ../src/live_effects/effect.cpp:130 msgid "Envelope Deformation" msgstr "" -#: ../src/live_effects/effect.cpp:116 +#: ../src/live_effects/effect.cpp:131 msgid "Interpolate Sub-Paths" msgstr "" -#: ../src/live_effects/effect.cpp:117 +#: ../src/live_effects/effect.cpp:132 msgid "Hatches (rough)" msgstr "" -#: ../src/live_effects/effect.cpp:118 +#: ../src/live_effects/effect.cpp:133 msgid "Sketch" msgstr "" -#: ../src/live_effects/effect.cpp:119 +#: ../src/live_effects/effect.cpp:134 msgid "Ruler" msgstr "" -#. 0.49 -#: ../src/live_effects/effect.cpp:121 +#. 0.91 +#: ../src/live_effects/effect.cpp:136 msgid "Power stroke" msgstr "" -#: ../src/live_effects/effect.cpp:122 ../src/selection-chemistry.cpp:2837 +#: ../src/live_effects/effect.cpp:137 msgid "Clone original path" msgstr "" -#: ../src/live_effects/effect.cpp:284 +#. EXPERIMENTAL +#: ../src/live_effects/effect.cpp:139 +#: ../src/live_effects/lpe-show_handles.cpp:26 +msgid "Show handles" +msgstr "" + +#: ../src/live_effects/effect.cpp:141 ../src/widgets/pencil-toolbar.cpp:109 +msgid "BSpline" +msgstr "" + +#: ../src/live_effects/effect.cpp:142 +#: ../src/live_effects/lpe-taperstroke.cpp:78 +msgid "Join type" +msgstr "" + +#: ../src/live_effects/effect.cpp:143 +msgid "Taper stroke" +msgstr "" + +#. Ponyscape +#: ../src/live_effects/effect.cpp:145 +msgid "Attach path" +msgstr "" + +#: ../src/live_effects/effect.cpp:146 +msgid "Fill between strokes" +msgstr "" + +#: ../src/live_effects/effect.cpp:147 ../src/selection-chemistry.cpp:2926 +msgid "Fill between many" +msgstr "" + +#: ../src/live_effects/effect.cpp:148 +msgid "Ellipse by 5 points" +msgstr "" + +#: ../src/live_effects/effect.cpp:149 +msgid "Bounding Box" +msgstr "" + +#: ../src/live_effects/effect.cpp:152 +msgid "Lattice Deformation 2" +msgstr "" + +#: ../src/live_effects/effect.cpp:153 +msgid "Perspective/Envelope" +msgstr "" + +#: ../src/live_effects/effect.cpp:154 +msgid "Fillet/Chamfer" +msgstr "" + +#: ../src/live_effects/effect.cpp:155 +msgid "Interpolate points" +msgstr "" + +#: ../src/live_effects/effect.cpp:362 msgid "Is visible?" msgstr "" -#: ../src/live_effects/effect.cpp:284 +#: ../src/live_effects/effect.cpp:362 msgid "" "If unchecked, the effect remains applied to the object but is temporarily " "disabled on canvas" msgstr "" -#: ../src/live_effects/effect.cpp:305 +#: ../src/live_effects/effect.cpp:384 msgid "No effect" msgstr "" -#: ../src/live_effects/effect.cpp:352 +#: ../src/live_effects/effect.cpp:490 #, c-format msgid "Please specify a parameter path for the LPE '%s' with %d mouse clicks" msgstr "" -#: ../src/live_effects/effect.cpp:624 +#: ../src/live_effects/effect.cpp:757 #, c-format msgid "Editing parameter <b>%s</b>." msgstr "" -#: ../src/live_effects/effect.cpp:629 +#: ../src/live_effects/effect.cpp:762 msgid "None of the applied path effect's parameters can be edited on-canvas." msgstr "" +#: ../src/live_effects/lpe-attach-path.cpp:29 +msgid "Start path:" +msgstr "" + +#: ../src/live_effects/lpe-attach-path.cpp:29 +msgid "Path to attach to the start of this path" +msgstr "" + +#: ../src/live_effects/lpe-attach-path.cpp:30 +msgid "Start path position:" +msgstr "" + +#: ../src/live_effects/lpe-attach-path.cpp:30 +msgid "Position to attach path start to" +msgstr "" + +#: ../src/live_effects/lpe-attach-path.cpp:31 +msgid "Start path curve start:" +msgstr "" + +#: ../src/live_effects/lpe-attach-path.cpp:31 +#: ../src/live_effects/lpe-attach-path.cpp:35 +msgid "Starting curve" +msgstr "" + +#. , true +#: ../src/live_effects/lpe-attach-path.cpp:32 +msgid "Start path curve end:" +msgstr "" + +#: ../src/live_effects/lpe-attach-path.cpp:32 +#: ../src/live_effects/lpe-attach-path.cpp:36 +msgid "Ending curve" +msgstr "" + +#. , true +#: ../src/live_effects/lpe-attach-path.cpp:33 +msgid "End path:" +msgstr "" + +#: ../src/live_effects/lpe-attach-path.cpp:33 +msgid "Path to attach to the end of this path" +msgstr "" + +#: ../src/live_effects/lpe-attach-path.cpp:34 +msgid "End path position:" +msgstr "" + +#: ../src/live_effects/lpe-attach-path.cpp:34 +msgid "Position to attach path end to" +msgstr "" + +#: ../src/live_effects/lpe-attach-path.cpp:35 +msgid "End path curve start:" +msgstr "" + +#. , true +#: ../src/live_effects/lpe-attach-path.cpp:36 +msgid "End path curve end:" +msgstr "" + #: ../src/live_effects/lpe-bendpath.cpp:53 msgid "Bend path:" msgstr "" @@ -9710,14 +9283,71 @@ msgstr "" msgid "Rotates the original 90 degrees, before bending it along the bend path" msgstr "" +#: ../src/live_effects/lpe-bounding-box.cpp:24 #: ../src/live_effects/lpe-clone-original.cpp:18 +#: ../src/live_effects/lpe-fill-between-many.cpp:25 +#: ../src/live_effects/lpe-fill-between-strokes.cpp:23 msgid "Linked path:" msgstr "" +#: ../src/live_effects/lpe-bounding-box.cpp:24 #: ../src/live_effects/lpe-clone-original.cpp:18 +#: ../src/live_effects/lpe-fill-between-strokes.cpp:23 msgid "Path from which to take the original path data" msgstr "" +#: ../src/live_effects/lpe-bounding-box.cpp:25 +msgid "Visual Bounds" +msgstr "" + +#: ../src/live_effects/lpe-bounding-box.cpp:25 +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 +msgid "Steps with CTRL:" +msgstr "" + +#: ../src/live_effects/lpe-bspline.cpp:60 +msgid "Change number of steps with CTRL pressed" +msgstr "" + +#: ../src/live_effects/lpe-bspline.cpp:61 +msgid "Ignore cusp nodes" +msgstr "" + +#: ../src/live_effects/lpe-bspline.cpp:61 +msgid "Change ignoring cusp nodes" +msgstr "" + +#: ../src/live_effects/lpe-bspline.cpp:62 +#: ../src/live_effects/lpe-fillet-chamfer.cpp:57 +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 +msgid "Change weight:" +msgstr "" + +#: ../src/live_effects/lpe-bspline.cpp:64 +msgid "Change weight of the effect" +msgstr "" + +#: ../src/live_effects/lpe-bspline.cpp:304 +msgid "Default weight" +msgstr "" + +#: ../src/live_effects/lpe-bspline.cpp:309 +msgid "Make cusp" +msgstr "" + #: ../src/live_effects/lpe-constructgrid.cpp:27 msgid "Size _X:" msgstr "" @@ -9806,6 +9436,14 @@ msgstr "" msgid "Scale the width of the stitch path relative to its length" msgstr "" +#: ../src/live_effects/lpe-ellipse_5pts.cpp:77 +msgid "Five points required for constructing an ellipse" +msgstr "" + +#: ../src/live_effects/lpe-ellipse_5pts.cpp:162 +msgid "No ellipse found for specified points" +msgstr "" + #: ../src/live_effects/lpe-envelope.cpp:31 msgid "Top bend path:" msgstr "" @@ -9839,7 +9477,7 @@ msgid "Left path along which to bend the original path" msgstr "" #: ../src/live_effects/lpe-envelope.cpp:35 -msgid "E_nable left & right paths" +msgid "_Enable left & right paths" msgstr "" #: ../src/live_effects/lpe-envelope.cpp:35 @@ -9862,6 +9500,106 @@ msgstr "" msgid "Defines the direction and magnitude of the extrusion" msgstr "" +#: ../src/live_effects/lpe-fill-between-many.cpp:25 +msgid "Paths from which to take the original path data" +msgstr "" + +#: ../src/live_effects/lpe-fill-between-strokes.cpp:24 +msgid "Second path:" +msgstr "" + +#: ../src/live_effects/lpe-fill-between-strokes.cpp:24 +msgid "Second path from which to take the original path data" +msgstr "" + +#: ../src/live_effects/lpe-fill-between-strokes.cpp:25 +msgid "Reverse Second" +msgstr "" + +#: ../src/live_effects/lpe-fill-between-strokes.cpp:25 +msgid "Reverses the second path order" +msgstr "" + +#: ../src/live_effects/lpe-fillet-chamfer.cpp:42 +#: ../share/extensions/render_barcode_qrcode.inx.h:5 +msgid "Auto" +msgstr "" + +#: ../src/live_effects/lpe-fillet-chamfer.cpp:43 +msgid "Force arc" +msgstr "" + +#: ../src/live_effects/lpe-fillet-chamfer.cpp:44 +msgid "Force bezier" +msgstr "" + +#: ../src/live_effects/lpe-fillet-chamfer.cpp:54 +msgid "Fillet point" +msgstr "" + +#: ../src/live_effects/lpe-fillet-chamfer.cpp:55 +msgid "Hide knots" +msgstr "" + +#: ../src/live_effects/lpe-fillet-chamfer.cpp:56 +msgid "Ignore 0 radius knots" +msgstr "" + +#: ../src/live_effects/lpe-fillet-chamfer.cpp:58 +msgid "Flexible radius size (%)" +msgstr "" + +#: ../src/live_effects/lpe-fillet-chamfer.cpp:59 +msgid "Use knots distance instead radius" +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:201 +msgid "Unit" +msgstr "" + +#: ../src/live_effects/lpe-fillet-chamfer.cpp:61 +#: ../src/live_effects/lpe-roughen.cpp:40 +msgid "Method" +msgstr "" + +#: ../src/live_effects/lpe-fillet-chamfer.cpp:61 +msgid "Fillets methods" +msgstr "" + +#: ../src/live_effects/lpe-fillet-chamfer.cpp:62 +msgid "Radius (unit or %)" +msgstr "" + +#: ../src/live_effects/lpe-fillet-chamfer.cpp:62 +msgid "Radius, in unit or %" +msgstr "" + +#: ../src/live_effects/lpe-fillet-chamfer.cpp:63 +msgid "Chamfer steps" +msgstr "" + +#: ../src/live_effects/lpe-fillet-chamfer.cpp:65 +msgid "Helper size with direction" +msgstr "" + +#: ../src/live_effects/lpe-fillet-chamfer.cpp:158 +#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:76 +msgid "Fillet" +msgstr "" + +#: ../src/live_effects/lpe-fillet-chamfer.cpp:162 +#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:78 +msgid "Inverse fillet" +msgstr "" + +#: ../src/live_effects/lpe-fillet-chamfer.cpp:166 +#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:80 +msgid "Chamfer" +msgstr "" + #: ../src/live_effects/lpe-gears.cpp:214 msgid "_Teeth:" msgstr "" @@ -9907,64 +9645,403 @@ msgid "" "trajectory path." msgstr "" +#: ../src/live_effects/lpe-interpolate_points.cpp:26 +#: ../src/live_effects/lpe-powerstroke.cpp:195 +msgid "CubicBezierFit" +msgstr "" + +#: ../src/live_effects/lpe-interpolate_points.cpp:27 +#: ../src/live_effects/lpe-powerstroke.cpp:196 +msgid "CubicBezierJohan" +msgstr "" + +#: ../src/live_effects/lpe-interpolate_points.cpp:28 +#: ../src/live_effects/lpe-powerstroke.cpp:197 +msgid "SpiroInterpolator" +msgstr "" + +#: ../src/live_effects/lpe-interpolate_points.cpp:29 +#: ../src/live_effects/lpe-powerstroke.cpp:198 +msgid "Centripetal Catmull-Rom" +msgstr "" + +#: ../src/live_effects/lpe-interpolate_points.cpp:37 +#: ../src/live_effects/lpe-powerstroke.cpp:240 +msgid "Interpolator type:" +msgstr "" + +#: ../src/live_effects/lpe-interpolate_points.cpp:38 +#: ../src/live_effects/lpe-powerstroke.cpp:240 +msgid "" +"Determines which kind of interpolator will be used to interpolate between " +"stroke width along the path" +msgstr "" + +#: ../src/live_effects/lpe-jointype.cpp:31 +#: ../src/live_effects/lpe-powerstroke.cpp:227 +#: ../src/live_effects/lpe-taperstroke.cpp:63 +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 +msgid "Rounded" +msgstr "" + +#: ../src/live_effects/lpe-jointype.cpp:33 +#: ../src/live_effects/lpe-powerstroke.cpp:231 +#: ../src/live_effects/lpe-taperstroke.cpp:66 +msgid "Miter" +msgstr "" + +#: ../src/live_effects/lpe-jointype.cpp:34 +#: ../src/live_effects/lpe-taperstroke.cpp:65 +#: ../src/widgets/gradient-toolbar.cpp:1115 +msgid "Reflected" +msgstr "" + +#. {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 +msgid "Extrapolated arc" +msgstr "" + +#: ../src/live_effects/lpe-jointype.cpp:39 +#: ../src/live_effects/lpe-powerstroke.cpp:210 +msgid "Butt" +msgstr "" + +#: ../src/live_effects/lpe-jointype.cpp:41 +#: ../src/live_effects/lpe-powerstroke.cpp:211 +msgid "Square" +msgstr "" + +#: ../src/live_effects/lpe-jointype.cpp:42 +#: ../src/live_effects/lpe-powerstroke.cpp:213 +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 "" + +#: ../src/live_effects/lpe-jointype.cpp:52 +msgid "Line cap" +msgstr "" + +#: ../src/live_effects/lpe-jointype.cpp:52 +msgid "The end shape of the stroke" +msgstr "" + +#. Join type +#. TRANSLATORS: The line join style specifies the shape to be used at the +#. corners of paths. It can be "miter", "round" or "bevel". +#: ../src/live_effects/lpe-jointype.cpp:53 +#: ../src/live_effects/lpe-powerstroke.cpp:243 +#: ../src/widgets/stroke-style.cpp:227 +msgid "Join:" +msgstr "" + +#: ../src/live_effects/lpe-jointype.cpp:53 +#: ../src/live_effects/lpe-powerstroke.cpp:243 +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 "" + +#: ../src/live_effects/lpe-jointype.cpp:56 +#: ../src/live_effects/lpe-powerstroke.cpp:244 +msgid "Miter limit:" +msgstr "" + +#: ../src/live_effects/lpe-jointype.cpp:56 +msgid "Maximum length of the miter join (in units of stroke width)" +msgstr "" + +#: ../src/live_effects/lpe-jointype.cpp:57 +msgid "Force miter" +msgstr "" + +#: ../src/live_effects/lpe-jointype.cpp:57 +msgid "Overrides the miter limit and forces a join." +msgstr "" + #. initialise your parameters here: -#: ../src/live_effects/lpe-knot.cpp:350 +#: ../src/live_effects/lpe-knot.cpp:351 msgid "Fi_xed width:" msgstr "" -#: ../src/live_effects/lpe-knot.cpp:350 +#: ../src/live_effects/lpe-knot.cpp:351 msgid "Size of hidden region of lower string" msgstr "" -#: ../src/live_effects/lpe-knot.cpp:351 +#: ../src/live_effects/lpe-knot.cpp:352 msgid "_In units of stroke width" msgstr "" -#: ../src/live_effects/lpe-knot.cpp:351 +#: ../src/live_effects/lpe-knot.cpp:352 msgid "Consider 'Interruption width' as a ratio of stroke width" msgstr "" -#: ../src/live_effects/lpe-knot.cpp:352 +#: ../src/live_effects/lpe-knot.cpp:353 msgid "St_roke width" msgstr "" -#: ../src/live_effects/lpe-knot.cpp:352 +#: ../src/live_effects/lpe-knot.cpp:353 msgid "Add the stroke width to the interruption size" msgstr "" -#: ../src/live_effects/lpe-knot.cpp:353 +#: ../src/live_effects/lpe-knot.cpp:354 msgid "_Crossing path stroke width" msgstr "" -#: ../src/live_effects/lpe-knot.cpp:353 +#: ../src/live_effects/lpe-knot.cpp:354 msgid "Add crossed stroke width to the interruption size" msgstr "" -#: ../src/live_effects/lpe-knot.cpp:354 +#: ../src/live_effects/lpe-knot.cpp:355 msgid "S_witcher size:" msgstr "" -#: ../src/live_effects/lpe-knot.cpp:354 +#: ../src/live_effects/lpe-knot.cpp:355 msgid "Orientation indicator/switcher size" msgstr "" -#: ../src/live_effects/lpe-knot.cpp:355 +#: ../src/live_effects/lpe-knot.cpp:356 msgid "Crossing Signs" msgstr "" -#: ../src/live_effects/lpe-knot.cpp:355 +#: ../src/live_effects/lpe-knot.cpp:356 msgid "Crossings signs" msgstr "" -#: ../src/live_effects/lpe-knot.cpp:622 +#: ../src/live_effects/lpe-knot.cpp:627 msgid "Drag to select a crossing, click to flip it" msgstr "" #. / @todo Is this the right verb? -#: ../src/live_effects/lpe-knot.cpp:660 +#: ../src/live_effects/lpe-knot.cpp:665 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 - Ctrl+Alt+Click to reset" +msgstr "" + +#: ../src/live_effects/lpe-lattice2.cpp:48 +msgid "Control handle 1:" +msgstr "" + +#: ../src/live_effects/lpe-lattice2.cpp:48 +msgid "Control handle 1 - Ctrl+Alt+Click to reset" +msgstr "" + +#: ../src/live_effects/lpe-lattice2.cpp:49 +msgid "Control handle 2:" +msgstr "" + +#: ../src/live_effects/lpe-lattice2.cpp:49 +msgid "Control handle 2 - Ctrl+Alt+Click to reset" +msgstr "" + +#: ../src/live_effects/lpe-lattice2.cpp:50 +msgid "Control handle 3:" +msgstr "" + +#: ../src/live_effects/lpe-lattice2.cpp:50 +msgid "Control handle 3 - Ctrl+Alt+Click to reset" +msgstr "" + +#: ../src/live_effects/lpe-lattice2.cpp:51 +msgid "Control handle 4:" +msgstr "" + +#: ../src/live_effects/lpe-lattice2.cpp:51 +msgid "Control handle 4 - Ctrl+Alt+Click to reset" +msgstr "" + +#: ../src/live_effects/lpe-lattice2.cpp:52 +msgid "Control handle 5:" +msgstr "" + +#: ../src/live_effects/lpe-lattice2.cpp:52 +msgid "Control handle 5 - Ctrl+Alt+Click to reset" +msgstr "" + +#: ../src/live_effects/lpe-lattice2.cpp:53 +msgid "Control handle 6:" +msgstr "" + +#: ../src/live_effects/lpe-lattice2.cpp:53 +msgid "Control handle 6 - Ctrl+Alt+Click to reset" +msgstr "" + +#: ../src/live_effects/lpe-lattice2.cpp:54 +msgid "Control handle 7:" +msgstr "" + +#: ../src/live_effects/lpe-lattice2.cpp:54 +msgid "Control handle 7 - Ctrl+Alt+Click to reset" +msgstr "" + +#: ../src/live_effects/lpe-lattice2.cpp:55 +msgid "Control handle 8x9:" +msgstr "" + +#: ../src/live_effects/lpe-lattice2.cpp:55 +msgid "Control handle 8x9 - Ctrl+Alt+Click to reset" +msgstr "" + +#: ../src/live_effects/lpe-lattice2.cpp:56 +msgid "Control handle 10x11:" +msgstr "" + +#: ../src/live_effects/lpe-lattice2.cpp:56 +msgid "Control handle 10x11 - Ctrl+Alt+Click to reset" +msgstr "" + +#: ../src/live_effects/lpe-lattice2.cpp:57 +msgid "Control handle 12:" +msgstr "" + +#: ../src/live_effects/lpe-lattice2.cpp:57 +msgid "Control handle 12 - Ctrl+Alt+Click to reset" +msgstr "" + +#: ../src/live_effects/lpe-lattice2.cpp:58 +msgid "Control handle 13:" +msgstr "" + +#: ../src/live_effects/lpe-lattice2.cpp:58 +msgid "Control handle 13 - Ctrl+Alt+Click to reset" +msgstr "" + +#: ../src/live_effects/lpe-lattice2.cpp:59 +msgid "Control handle 14:" +msgstr "" + +#: ../src/live_effects/lpe-lattice2.cpp:59 +msgid "Control handle 14 - Ctrl+Alt+Click to reset" +msgstr "" + +#: ../src/live_effects/lpe-lattice2.cpp:60 +msgid "Control handle 15:" +msgstr "" + +#: ../src/live_effects/lpe-lattice2.cpp:60 +msgid "Control handle 15 - Ctrl+Alt+Click to reset" +msgstr "" + +#: ../src/live_effects/lpe-lattice2.cpp:61 +msgid "Control handle 16:" +msgstr "" + +#: ../src/live_effects/lpe-lattice2.cpp:61 +msgid "Control handle 16 - Ctrl+Alt+Click to reset" +msgstr "" + +#: ../src/live_effects/lpe-lattice2.cpp:62 +msgid "Control handle 17:" +msgstr "" + +#: ../src/live_effects/lpe-lattice2.cpp:62 +msgid "Control handle 17 - Ctrl+Alt+Click to reset" +msgstr "" + +#: ../src/live_effects/lpe-lattice2.cpp:63 +msgid "Control handle 18:" +msgstr "" + +#: ../src/live_effects/lpe-lattice2.cpp:63 +msgid "Control handle 18 - Ctrl+Alt+Click to reset" +msgstr "" + +#: ../src/live_effects/lpe-lattice2.cpp:64 +msgid "Control handle 19:" +msgstr "" + +#: ../src/live_effects/lpe-lattice2.cpp:64 +msgid "Control handle 19 - Ctrl+Alt+Click to reset" +msgstr "" + +#: ../src/live_effects/lpe-lattice2.cpp:65 +msgid "Control handle 20x21:" +msgstr "" + +#: ../src/live_effects/lpe-lattice2.cpp:65 +msgid "Control handle 20x21 - Ctrl+Alt+Click to reset" +msgstr "" + +#: ../src/live_effects/lpe-lattice2.cpp:66 +msgid "Control handle 22x23:" +msgstr "" + +#: ../src/live_effects/lpe-lattice2.cpp:66 +msgid "Control handle 22x23 - Ctrl+Alt+Click to reset" +msgstr "" + +#: ../src/live_effects/lpe-lattice2.cpp:67 +msgid "Control handle 24x26:" +msgstr "" + +#: ../src/live_effects/lpe-lattice2.cpp:67 +msgid "Control handle 24x26 - Ctrl+Alt+Click to reset" +msgstr "" + +#: ../src/live_effects/lpe-lattice2.cpp:68 +msgid "Control handle 25x27:" +msgstr "" + +#: ../src/live_effects/lpe-lattice2.cpp:68 +msgid "Control handle 25x27 - Ctrl+Alt+Click to reset" +msgstr "" + +#: ../src/live_effects/lpe-lattice2.cpp:69 +msgid "Control handle 28x30:" +msgstr "" + +#: ../src/live_effects/lpe-lattice2.cpp:69 +msgid "Control handle 28x30 - Ctrl+Alt+Click to reset" +msgstr "" + +#: ../src/live_effects/lpe-lattice2.cpp:70 +msgid "Control handle 29x31:" +msgstr "" + +#: ../src/live_effects/lpe-lattice2.cpp:70 +msgid "Control handle 29x31 - Ctrl+Alt+Click to reset" +msgstr "" + +#: ../src/live_effects/lpe-lattice2.cpp:71 +msgid "Control handle 32x33x34x35:" +msgstr "" + +#: ../src/live_effects/lpe-lattice2.cpp:71 +msgid "Control handle 32x33x34x35 - Ctrl+Alt+Click to reset" +msgstr "" + +#: ../src/live_effects/lpe-lattice2.cpp:221 +msgid "Reset grid" +msgstr "" + #: ../src/live_effects/lpe-patternalongpath.cpp:50 #: ../share/extensions/pathalongpath.inx.h:10 msgid "Single" @@ -10058,133 +10135,119 @@ msgstr "" msgid "Fuse ends closer than this number. 0 means don't fuse." msgstr "" -#: ../src/live_effects/lpe-powerstroke.cpp:189 -msgid "CubicBezierFit" +#: ../src/live_effects/lpe-perspective-envelope.cpp:37 +#: ../share/extensions/perspective.inx.h:1 +msgid "Perspective" msgstr "" -#: ../src/live_effects/lpe-powerstroke.cpp:190 -msgid "CubicBezierJohan" +#: ../src/live_effects/lpe-perspective-envelope.cpp:38 +msgid "Envelope deformation" msgstr "" -#: ../src/live_effects/lpe-powerstroke.cpp:191 -msgid "SpiroInterpolator" +#. initialise your parameters here: +#: ../src/live_effects/lpe-perspective-envelope.cpp:46 +msgid "Type" msgstr "" -#: ../src/live_effects/lpe-powerstroke.cpp:192 -msgid "Centripetal Catmull-Rom" +#: ../src/live_effects/lpe-perspective-envelope.cpp:46 +msgid "Select the type of deformation" msgstr "" -#: ../src/live_effects/lpe-powerstroke.cpp:204 -msgid "Butt" +#: ../src/live_effects/lpe-perspective-envelope.cpp:47 +msgid "Top Left" msgstr "" -#: ../src/live_effects/lpe-powerstroke.cpp:205 -msgid "Square" +#: ../src/live_effects/lpe-perspective-envelope.cpp:47 +msgid "Top Left - Ctrl+Alt+Click to reset" msgstr "" -#: ../src/live_effects/lpe-powerstroke.cpp:206 -#: ../share/extensions/gcodetools_prepare_path_for_plasma.inx.h:13 -msgid "Round" +#: ../src/live_effects/lpe-perspective-envelope.cpp:48 +msgid "Top Right" msgstr "" -#: ../src/live_effects/lpe-powerstroke.cpp:207 -msgid "Peak" +#: ../src/live_effects/lpe-perspective-envelope.cpp:48 +msgid "Top Right - Ctrl+Alt+Click to reset" msgstr "" -#: ../src/live_effects/lpe-powerstroke.cpp:208 -msgid "Zero width" +#: ../src/live_effects/lpe-perspective-envelope.cpp:49 +msgid "Down Left" msgstr "" -#: ../src/live_effects/lpe-powerstroke.cpp:221 -msgid "Beveled" +#: ../src/live_effects/lpe-perspective-envelope.cpp:49 +msgid "Down Left - Ctrl+Alt+Click to reset" msgstr "" -#: ../src/live_effects/lpe-powerstroke.cpp:222 -#: ../src/widgets/star-toolbar.cpp:534 -msgid "Rounded" +#: ../src/live_effects/lpe-perspective-envelope.cpp:50 +msgid "Down Right" msgstr "" -#. {LINEJOIN_EXTRP_MITER, N_("Extrapolated"), "extrapolated"}, // disabled because doesn't work well -#: ../src/live_effects/lpe-powerstroke.cpp:224 -msgid "Extrapolated arc" +#: ../src/live_effects/lpe-perspective-envelope.cpp:50 +msgid "Down Right - Ctrl+Alt+Click to reset" msgstr "" -#: ../src/live_effects/lpe-powerstroke.cpp:225 -msgid "Miter" +#: ../src/live_effects/lpe-perspective-envelope.cpp:257 +msgid "Handles:" +msgstr "" + +#: ../src/live_effects/lpe-powerstroke.cpp:193 +msgid "CubicBezierSmooth" msgstr "" -#: ../src/live_effects/lpe-powerstroke.cpp:226 +#: ../src/live_effects/lpe-powerstroke.cpp:212 +#: ../share/extensions/gcodetools_prepare_path_for_plasma.inx.h:13 +msgid "Round" +msgstr "" + +#: ../src/live_effects/lpe-powerstroke.cpp:214 +msgid "Zero width" +msgstr "" + +#: ../src/live_effects/lpe-powerstroke.cpp:232 #: ../src/widgets/pencil-toolbar.cpp:103 msgid "Spiro" msgstr "" -#: ../src/live_effects/lpe-powerstroke.cpp:232 +#: ../src/live_effects/lpe-powerstroke.cpp:238 msgid "Offset points" msgstr "" -#: ../src/live_effects/lpe-powerstroke.cpp:233 +#: ../src/live_effects/lpe-powerstroke.cpp:239 msgid "Sort points" msgstr "" -#: ../src/live_effects/lpe-powerstroke.cpp:233 +#: ../src/live_effects/lpe-powerstroke.cpp:239 msgid "Sort offset points according to their time value along the curve" msgstr "" -#: ../src/live_effects/lpe-powerstroke.cpp:234 -msgid "Interpolator type:" -msgstr "" - -#: ../src/live_effects/lpe-powerstroke.cpp:234 -msgid "" -"Determines which kind of interpolator will be used to interpolate between " -"stroke width along the path" -msgstr "" - -#: ../src/live_effects/lpe-powerstroke.cpp:235 +#: ../src/live_effects/lpe-powerstroke.cpp:241 #: ../share/extensions/fractalize.inx.h:3 msgid "Smoothness:" msgstr "" -#: ../src/live_effects/lpe-powerstroke.cpp:235 +#: ../src/live_effects/lpe-powerstroke.cpp:241 msgid "" "Sets the smoothness for the CubicBezierJohan interpolator; 0 = linear " "interpolation, 1 = smooth" msgstr "" -#: ../src/live_effects/lpe-powerstroke.cpp:236 +#: ../src/live_effects/lpe-powerstroke.cpp:242 msgid "Start cap:" msgstr "" -#: ../src/live_effects/lpe-powerstroke.cpp:236 +#: ../src/live_effects/lpe-powerstroke.cpp:242 msgid "Determines the shape of the path's start" msgstr "" -#. Join type -#. TRANSLATORS: The line join style specifies the shape to be used at the -#. corners of paths. It can be "miter", "round" or "bevel". -#: ../src/live_effects/lpe-powerstroke.cpp:237 -#: ../src/widgets/stroke-style.cpp:227 -msgid "Join:" -msgstr "" - -#: ../src/live_effects/lpe-powerstroke.cpp:237 -msgid "Determines the shape of the path's corners" -msgstr "" - -#: ../src/live_effects/lpe-powerstroke.cpp:238 -msgid "Miter limit:" -msgstr "" - -#: ../src/live_effects/lpe-powerstroke.cpp:238 +#: ../src/live_effects/lpe-powerstroke.cpp:244 #: ../src/widgets/stroke-style.cpp:278 msgid "Maximum length of the miter (in units of stroke width)" msgstr "" -#: ../src/live_effects/lpe-powerstroke.cpp:239 +#: ../src/live_effects/lpe-powerstroke.cpp:245 msgid "End cap:" msgstr "" -#: ../src/live_effects/lpe-powerstroke.cpp:239 +#: ../src/live_effects/lpe-powerstroke.cpp:245 msgid "Determines the shape of the path's end" msgstr "" @@ -10360,6 +10423,64 @@ msgid "" "amount" msgstr "" +#: ../src/live_effects/lpe-roughen.cpp:30 ../share/extensions/addnodes.inx.h:4 +msgid "By number of segments" +msgstr "" + +#: ../src/live_effects/lpe-roughen.cpp:31 +msgid "By max. segment size" +msgstr "" + +#: ../src/live_effects/lpe-roughen.cpp:40 +msgid "Division method" +msgstr "" + +#: ../src/live_effects/lpe-roughen.cpp:42 +msgid "Max. segment size" +msgstr "" + +#: ../src/live_effects/lpe-roughen.cpp:44 +msgid "Number of segments" +msgstr "" + +#: ../src/live_effects/lpe-roughen.cpp:46 +msgid "Max. displacement in X" +msgstr "" + +#: ../src/live_effects/lpe-roughen.cpp:48 +msgid "Max. displacement in Y" +msgstr "" + +#: ../src/live_effects/lpe-roughen.cpp:50 +msgid "Global randomize" +msgstr "" + +#: ../src/live_effects/lpe-roughen.cpp:52 +#: ../share/extensions/radiusrand.inx.h:5 +msgid "Shift nodes" +msgstr "" + +#: ../src/live_effects/lpe-roughen.cpp:54 +#: ../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 +msgid "<b>Add nodes</b> Subdivide each segment" +msgstr "" + +#: ../src/live_effects/lpe-roughen.cpp:120 +msgid "<b>Jitter nodes</b> Move nodes/handles" +msgstr "" + +#: ../src/live_effects/lpe-roughen.cpp:129 +msgid "<b>Extra roughen</b> Add a extra layer of rough" +msgstr "" + #: ../src/live_effects/lpe-ruler.cpp:25 ../share/extensions/restack.inx.h:12 #: ../share/extensions/text_extract.inx.h:8 #: ../share/extensions/text_merge.inx.h:8 @@ -10381,11 +10502,11 @@ msgctxt "Border mark" msgid "None" msgstr "" -#: ../src/live_effects/lpe-ruler.cpp:33 ../src/widgets/arc-toolbar.cpp:326 +#: ../src/live_effects/lpe-ruler.cpp:33 ../src/widgets/arc-toolbar.cpp:328 msgid "Start" msgstr "" -#: ../src/live_effects/lpe-ruler.cpp:34 ../src/widgets/arc-toolbar.cpp:339 +#: ../src/live_effects/lpe-ruler.cpp:34 ../src/widgets/arc-toolbar.cpp:341 msgid "End" msgstr "" @@ -10405,10 +10526,6 @@ msgstr "" msgid "Unit:" msgstr "" -#: ../src/live_effects/lpe-ruler.cpp:42 ../src/widgets/ruler.cpp:201 -msgid "Unit" -msgstr "" - #: ../src/live_effects/lpe-ruler.cpp:43 msgid "Ma_jor length:" msgstr "" @@ -10465,6 +10582,76 @@ msgstr "" msgid "Choose whether to draw marks at the beginning and end of the path" msgstr "" +#: ../src/live_effects/lpe-show_handles.cpp:25 +msgid "Show nodes" +msgstr "" + +#: ../src/live_effects/lpe-show_handles.cpp:27 +msgid "Show path" +msgstr "" + +#: ../src/live_effects/lpe-show_handles.cpp:28 +msgid "Scale nodes and handles" +msgstr "" + +#: ../src/live_effects/lpe-show_handles.cpp:50 +msgid "" +"The \"show handles\" path effect will remove any custom style on the object " +"you are applying it to. If this is not what you want, click Cancel." +msgstr "" + +#: ../src/live_effects/lpe-simplify.cpp:29 +msgid "Steps:" +msgstr "" + +#: ../src/live_effects/lpe-simplify.cpp:29 +msgid "Change number of simplify steps " +msgstr "" + +#: ../src/live_effects/lpe-simplify.cpp:30 +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 "Helper nodes" +msgstr "" + +#: ../src/live_effects/lpe-simplify.cpp:32 +msgid "Show helper nodes" +msgstr "" + +#: ../src/live_effects/lpe-simplify.cpp:34 +msgid "Helper handles" +msgstr "" + +#: ../src/live_effects/lpe-simplify.cpp:34 +msgid "Show helper handles" +msgstr "" + +#: ../src/live_effects/lpe-simplify.cpp:36 +msgid "Paths separately" +msgstr "" + +#: ../src/live_effects/lpe-simplify.cpp:36 +msgid "Simplifying paths (separately)" +msgstr "" + +#: ../src/live_effects/lpe-simplify.cpp:38 +msgid "Just coalesce" +msgstr "" + +#: ../src/live_effects/lpe-simplify.cpp:38 +msgid "Simplify just coalesce" +msgstr "" + #. initialise your parameters here: #. testpointA(_("Test Point A"), _("Test A"), "ptA", &wr, this, Geom::Point(100,100)), #: ../src/live_effects/lpe-sketch.cpp:38 @@ -10601,6 +10788,63 @@ msgstr "" msgid "max curvature" msgstr "" +#: ../src/live_effects/lpe-taperstroke.cpp:67 +msgid "Extrapolated" +msgstr "" + +#: ../src/live_effects/lpe-taperstroke.cpp:74 +#: ../src/widgets/stroke-style.cpp:192 +msgid "Stroke width" +msgstr "" + +#: ../src/live_effects/lpe-taperstroke.cpp:74 +msgid "The (non-tapered) width of the path" +msgstr "" + +#: ../src/live_effects/lpe-taperstroke.cpp:75 +msgid "Start offset" +msgstr "" + +#: ../src/live_effects/lpe-taperstroke.cpp:75 +msgid "Taper distance from path start" +msgstr "" + +#: ../src/live_effects/lpe-taperstroke.cpp:76 +msgid "End offset" +msgstr "" + +#: ../src/live_effects/lpe-taperstroke.cpp:76 +msgid "The ending position of the taper" +msgstr "" + +#: ../src/live_effects/lpe-taperstroke.cpp:77 +msgid "Taper smoothing" +msgstr "" + +#: ../src/live_effects/lpe-taperstroke.cpp:77 +msgid "Amount of smoothing to apply to the tapers" +msgstr "" + +#: ../src/live_effects/lpe-taperstroke.cpp:78 +msgid "Join type for non-smooth nodes" +msgstr "" + +#: ../src/live_effects/lpe-taperstroke.cpp:79 +msgid "Miter limit" +msgstr "" + +#: ../src/live_effects/lpe-taperstroke.cpp:79 +msgid "Limit for miter joins" +msgstr "" + +#: ../src/live_effects/lpe-taperstroke.cpp:536 +msgid "Start point of the taper" +msgstr "" + +#: ../src/live_effects/lpe-taperstroke.cpp:540 +msgid "End point of the taper" +msgstr "" + #: ../src/live_effects/lpe-vonkoch.cpp:46 msgid "N_r of generations:" msgstr "" @@ -10663,7 +10907,29 @@ msgstr "" msgid "Change enumeration parameter" msgstr "" +#: ../src/live_effects/parameter/filletchamferpointarray.cpp:792 +#: ../src/live_effects/parameter/filletchamferpointarray.cpp:849 +msgid "" +"<b>Chamfer</b>: <b>Ctrl+Click</b> toogle type, <b>Shift+Click</b> open " +"dialog, <b>Ctrl+Alt+Click</b> reset" +msgstr "" + +#: ../src/live_effects/parameter/filletchamferpointarray.cpp:796 +#: ../src/live_effects/parameter/filletchamferpointarray.cpp:853 +msgid "" +"<b>Inverse Fillet</b>: <b>Ctrl+Click</b> toogle type, <b>Shift+Click</b> " +"open dialog, <b>Ctrl+Alt+Click</b> reset" +msgstr "" + +#: ../src/live_effects/parameter/filletchamferpointarray.cpp:800 +#: ../src/live_effects/parameter/filletchamferpointarray.cpp:857 +msgid "" +"<b>Fillet</b>: <b>Ctrl+Click</b> toogle 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 msgid "Link to path" msgstr "" @@ -10671,7 +10937,44 @@ msgstr "" msgid "Select original" msgstr "" -#: ../src/live_effects/parameter/parameter.cpp:147 +#: ../src/live_effects/parameter/originalpatharray.cpp:94 +#: ../src/widgets/gradient-toolbar.cpp:1202 +msgid "Reverse" +msgstr "" + +#: ../src/live_effects/parameter/originalpatharray.cpp:134 +#: ../src/live_effects/parameter/originalpatharray.cpp:319 +#: ../src/live_effects/parameter/path.cpp:475 +msgid "Link path parameter to path" +msgstr "" + +#: ../src/live_effects/parameter/originalpatharray.cpp:171 +msgid "Remove Path" +msgstr "" + +#: ../src/live_effects/parameter/originalpatharray.cpp:183 +#: ../src/ui/dialog/objects.cpp:1847 +msgid "Move Down" +msgstr "" + +#: ../src/live_effects/parameter/originalpatharray.cpp:195 +#: ../src/ui/dialog/objects.cpp:1862 +msgid "Move Up" +msgstr "" + +#: ../src/live_effects/parameter/originalpatharray.cpp:235 +msgid "Move path up" +msgstr "" + +#: ../src/live_effects/parameter/originalpatharray.cpp:265 +msgid "Move path down" +msgstr "" + +#: ../src/live_effects/parameter/originalpatharray.cpp:283 +msgid "Remove path" +msgstr "" + +#: ../src/live_effects/parameter/parameter.cpp:168 msgid "Change scalar parameter" msgstr "" @@ -10695,19 +10998,17 @@ msgstr "" msgid "Paste path parameter" msgstr "" -#: ../src/live_effects/parameter/path.cpp:475 -msgid "Link path parameter to path" -msgstr "" - #: ../src/live_effects/parameter/point.cpp:89 +#: ../src/live_effects/parameter/pointreseteable.cpp:103 msgid "Change point parameter" msgstr "" -#: ../src/live_effects/parameter/powerstrokepointarray.cpp:217 -#: ../src/live_effects/parameter/powerstrokepointarray.cpp:229 +#: ../src/live_effects/parameter/powerstrokepointarray.cpp:239 +#: ../src/live_effects/parameter/powerstrokepointarray.cpp:256 msgid "" "<b>Stroke width control point</b>: drag to alter the stroke width. <b>Ctrl" -"+click</b> adds a control point, <b>Ctrl+Alt+click</b> deletes it." +"+click</b> adds a control point, <b>Ctrl+Alt+click</b> deletes it, <b>Shift" +"+click</b> launches width dialog." msgstr "" #: ../src/live_effects/parameter/random.cpp:134 @@ -10718,14 +11019,19 @@ msgstr "" msgid "Change text parameter" msgstr "" -#: ../src/live_effects/parameter/unit.cpp:80 -msgid "Change unit parameter" +#: ../src/live_effects/parameter/togglebutton.cpp:112 +msgid "Change togglebutton parameter" msgstr "" +#: ../src/live_effects/parameter/transformedpoint.cpp:98 #: ../src/live_effects/parameter/vector.cpp:99 msgid "Change vector parameter" msgstr "" +#: ../src/live_effects/parameter/unit.cpp:80 +msgid "Change unit parameter" +msgstr "" + #: ../src/main-cmdlineact.cpp:50 #, c-format msgid "Unable to find verb ID '%s' specified on the command line.\n" @@ -10769,7 +11075,7 @@ msgstr "" #: ../src/main.cpp:325 msgid "" "Resolution for exporting to bitmap and for rasterization of filters in PS/" -"EPS/PDF (default 90)" +"EPS/PDF (default 96)" msgstr "" #: ../src/main.cpp:326 ../src/ui/widget/rendering-options.cpp:37 @@ -11013,17 +11319,18 @@ msgstr "" msgid "_File" msgstr "" -#: ../src/menus-skeleton.h:17 +#. Tag +#: ../src/menus-skeleton.h:17 ../src/verbs.cpp:2730 msgid "_New" msgstr "" #. " <verb verb-id=\"FileExportToOCAL\" />\n" #. " <verb verb-id=\"DialogMetadata\" />\n" -#: ../src/menus-skeleton.h:43 ../src/verbs.cpp:2634 ../src/verbs.cpp:2640 +#: ../src/menus-skeleton.h:43 ../src/verbs.cpp:2717 ../src/verbs.cpp:2725 msgid "_Edit" msgstr "" -#: ../src/menus-skeleton.h:53 ../src/verbs.cpp:2398 +#: ../src/menus-skeleton.h:53 ../src/verbs.cpp:2481 msgid "Paste Si_ze" msgstr "" @@ -11071,195 +11378,104 @@ msgstr "" msgid "_Object" msgstr "" -#: ../src/menus-skeleton.h:188 +#: ../src/menus-skeleton.h:191 msgid "Cli_p" msgstr "" -#: ../src/menus-skeleton.h:192 +#: ../src/menus-skeleton.h:195 msgid "Mas_k" msgstr "" -#: ../src/menus-skeleton.h:196 +#: ../src/menus-skeleton.h:199 msgid "Patter_n" msgstr "" -#: ../src/menus-skeleton.h:220 +#: ../src/menus-skeleton.h:223 msgid "_Path" msgstr "" -#: ../src/menus-skeleton.h:248 ../src/ui/dialog/find.cpp:77 +#: ../src/menus-skeleton.h:251 ../src/ui/dialog/find.cpp:77 #: ../src/ui/dialog/text-edit.cpp:71 msgid "_Text" msgstr "" -#: ../src/menus-skeleton.h:266 +#: ../src/menus-skeleton.h:269 msgid "Filter_s" msgstr "" -#: ../src/menus-skeleton.h:272 +#: ../src/menus-skeleton.h:275 msgid "Exte_nsions" msgstr "" -#: ../src/menus-skeleton.h:278 +#: ../src/menus-skeleton.h:281 msgid "_Help" msgstr "" -#: ../src/menus-skeleton.h:282 +#: ../src/menus-skeleton.h:285 msgid "Tutorials" msgstr "" -#: ../src/object-edit.cpp:439 -msgid "" -"Adjust the <b>horizontal rounding</b> radius; with <b>Ctrl</b> to make the " -"vertical radius the same" -msgstr "" - -#: ../src/object-edit.cpp:444 -msgid "" -"Adjust the <b>vertical rounding</b> radius; with <b>Ctrl</b> to make the " -"horizontal radius the same" -msgstr "" - -#: ../src/object-edit.cpp:449 ../src/object-edit.cpp:454 -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/object-edit.cpp:689 ../src/object-edit.cpp:693 -#: ../src/object-edit.cpp:697 ../src/object-edit.cpp:701 -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/object-edit.cpp:705 ../src/object-edit.cpp:709 -#: ../src/object-edit.cpp:713 ../src/object-edit.cpp:717 -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/object-edit.cpp:721 -msgid "Move the box in perspective" -msgstr "" - -#: ../src/object-edit.cpp:948 -msgid "Adjust ellipse <b>width</b>, with <b>Ctrl</b> to make circle" -msgstr "" - -#: ../src/object-edit.cpp:952 -msgid "Adjust ellipse <b>height</b>, with <b>Ctrl</b> to make circle" -msgstr "" - -#: ../src/object-edit.cpp:956 -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/object-edit.cpp:961 -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/object-edit.cpp:1101 -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/object-edit.cpp:1109 -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/object-edit.cpp:1299 -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/object-edit.cpp:1303 -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/object-edit.cpp:1348 -msgid "Adjust the <b>offset distance</b>" -msgstr "" - -#: ../src/object-edit.cpp:1384 -msgid "Drag to resize the <b>flowed text frame</b>" -msgstr "" - -#: ../src/path-chemistry.cpp:53 +#: ../src/path-chemistry.cpp:54 msgid "Select <b>object(s)</b> to combine." msgstr "" -#: ../src/path-chemistry.cpp:57 +#: ../src/path-chemistry.cpp:58 msgid "Combining paths..." msgstr "" -#: ../src/path-chemistry.cpp:171 +#: ../src/path-chemistry.cpp:174 msgid "Combine" msgstr "" -#: ../src/path-chemistry.cpp:178 +#: ../src/path-chemistry.cpp:181 msgid "<b>No path(s)</b> to combine in the selection." msgstr "" -#: ../src/path-chemistry.cpp:190 +#: ../src/path-chemistry.cpp:193 msgid "Select <b>path(s)</b> to break apart." msgstr "" -#: ../src/path-chemistry.cpp:194 +#: ../src/path-chemistry.cpp:197 msgid "Breaking apart paths..." msgstr "" -#: ../src/path-chemistry.cpp:285 +#: ../src/path-chemistry.cpp:287 msgid "Break apart" msgstr "" -#: ../src/path-chemistry.cpp:287 +#: ../src/path-chemistry.cpp:289 msgid "<b>No path(s)</b> to break apart in the selection." msgstr "" -#: ../src/path-chemistry.cpp:297 +#: ../src/path-chemistry.cpp:299 msgid "Select <b>object(s)</b> to convert to path." msgstr "" -#: ../src/path-chemistry.cpp:303 +#: ../src/path-chemistry.cpp:305 msgid "Converting objects to paths..." msgstr "" -#: ../src/path-chemistry.cpp:325 +#: ../src/path-chemistry.cpp:327 msgid "Object to path" msgstr "" -#: ../src/path-chemistry.cpp:327 +#: ../src/path-chemistry.cpp:329 msgid "<b>No objects</b> to convert to path in the selection." msgstr "" -#: ../src/path-chemistry.cpp:604 +#: ../src/path-chemistry.cpp:620 msgid "Select <b>path(s)</b> to reverse." msgstr "" -#: ../src/path-chemistry.cpp:613 +#: ../src/path-chemistry.cpp:629 msgid "Reversing paths..." msgstr "" -#: ../src/path-chemistry.cpp:648 +#: ../src/path-chemistry.cpp:664 msgid "Reverse path" msgstr "" -#: ../src/path-chemistry.cpp:650 +#: ../src/path-chemistry.cpp:666 msgid "<b>No paths</b> to reverse in the selection." msgstr "" @@ -11271,27 +11487,27 @@ msgstr "" msgid "Toggle multiple vanishing points" msgstr "" -#: ../src/preferences-skeleton.h:101 +#: ../src/preferences-skeleton.h:102 msgid "Dip pen" msgstr "" -#: ../src/preferences-skeleton.h:102 +#: ../src/preferences-skeleton.h:103 msgid "Marker" msgstr "" -#: ../src/preferences-skeleton.h:103 +#: ../src/preferences-skeleton.h:104 msgid "Brush" msgstr "" -#: ../src/preferences-skeleton.h:104 +#: ../src/preferences-skeleton.h:105 msgid "Wiggly" msgstr "" -#: ../src/preferences-skeleton.h:105 +#: ../src/preferences-skeleton.h:106 msgid "Splotchy" msgstr "" -#: ../src/preferences-skeleton.h:106 +#: ../src/preferences-skeleton.h:107 msgid "Tracing" msgstr "" @@ -11523,15 +11739,15 @@ msgstr "" msgid "Fixup broken links" msgstr "" -#: ../src/selection-chemistry.cpp:396 +#: ../src/selection-chemistry.cpp:406 msgid "Delete text" msgstr "" -#: ../src/selection-chemistry.cpp:404 +#: ../src/selection-chemistry.cpp:414 msgid "<b>Nothing</b> was deleted." msgstr "" -#: ../src/selection-chemistry.cpp:423 +#: ../src/selection-chemistry.cpp:433 #: ../src/ui/dialog/calligraphic-profile-rename.cpp:75 #: ../src/ui/dialog/swatches.cpp:278 ../src/ui/tools/text-tool.cpp:974 #: ../src/widgets/eraser-toolbar.cpp:93 @@ -11542,390 +11758,390 @@ msgstr "" msgid "Delete" msgstr "" -#: ../src/selection-chemistry.cpp:451 +#: ../src/selection-chemistry.cpp:461 msgid "Select <b>object(s)</b> to duplicate." msgstr "" -#: ../src/selection-chemistry.cpp:560 +#: ../src/selection-chemistry.cpp:576 msgid "Delete all" msgstr "" -#: ../src/selection-chemistry.cpp:750 +#: ../src/selection-chemistry.cpp:767 msgid "Select <b>some objects</b> to group." msgstr "" -#: ../src/selection-chemistry.cpp:765 +#: ../src/selection-chemistry.cpp:782 msgctxt "Verb" msgid "Group" msgstr "" -#: ../src/selection-chemistry.cpp:788 +#: ../src/selection-chemistry.cpp:805 msgid "Select a <b>group</b> to ungroup." msgstr "" -#: ../src/selection-chemistry.cpp:803 +#: ../src/selection-chemistry.cpp:820 msgid "<b>No groups</b> to ungroup in the selection." msgstr "" -#: ../src/selection-chemistry.cpp:861 ../src/sp-item-group.cpp:562 +#: ../src/selection-chemistry.cpp:878 ../src/sp-item-group.cpp:563 msgid "Ungroup" msgstr "" -#: ../src/selection-chemistry.cpp:942 +#: ../src/selection-chemistry.cpp:960 msgid "Select <b>object(s)</b> to raise." msgstr "" -#: ../src/selection-chemistry.cpp:948 ../src/selection-chemistry.cpp:1004 -#: ../src/selection-chemistry.cpp:1032 ../src/selection-chemistry.cpp:1093 +#: ../src/selection-chemistry.cpp:966 ../src/selection-chemistry.cpp:1023 +#: ../src/selection-chemistry.cpp:1051 ../src/selection-chemistry.cpp:1113 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:988 +#: ../src/selection-chemistry.cpp:1007 msgctxt "Undo action" msgid "Raise" msgstr "" -#: ../src/selection-chemistry.cpp:996 +#: ../src/selection-chemistry.cpp:1015 msgid "Select <b>object(s)</b> to raise to top." msgstr "" -#: ../src/selection-chemistry.cpp:1019 +#: ../src/selection-chemistry.cpp:1038 msgid "Raise to top" msgstr "" -#: ../src/selection-chemistry.cpp:1026 +#: ../src/selection-chemistry.cpp:1045 msgid "Select <b>object(s)</b> to lower." msgstr "" #. TRANSLATORS: "Lower" means "to lower an object" in the undo history -#: ../src/selection-chemistry.cpp:1077 +#: ../src/selection-chemistry.cpp:1097 msgctxt "Undo action" msgid "Lower" msgstr "" -#: ../src/selection-chemistry.cpp:1085 +#: ../src/selection-chemistry.cpp:1105 msgid "Select <b>object(s)</b> to lower to bottom." msgstr "" -#: ../src/selection-chemistry.cpp:1120 +#: ../src/selection-chemistry.cpp:1140 msgid "Lower to bottom" msgstr "" -#: ../src/selection-chemistry.cpp:1130 +#: ../src/selection-chemistry.cpp:1150 msgid "Nothing to undo." msgstr "" -#: ../src/selection-chemistry.cpp:1141 +#: ../src/selection-chemistry.cpp:1161 msgid "Nothing to redo." msgstr "" -#: ../src/selection-chemistry.cpp:1208 +#: ../src/selection-chemistry.cpp:1230 msgid "Paste" msgstr "" -#: ../src/selection-chemistry.cpp:1216 +#: ../src/selection-chemistry.cpp:1238 msgid "Paste style" msgstr "" -#: ../src/selection-chemistry.cpp:1226 +#: ../src/selection-chemistry.cpp:1248 msgid "Paste live path effect" msgstr "" -#: ../src/selection-chemistry.cpp:1248 +#: ../src/selection-chemistry.cpp:1270 msgid "Select <b>object(s)</b> to remove live path effects from." msgstr "" -#: ../src/selection-chemistry.cpp:1260 +#: ../src/selection-chemistry.cpp:1282 msgid "Remove live path effect" msgstr "" -#: ../src/selection-chemistry.cpp:1271 +#: ../src/selection-chemistry.cpp:1293 msgid "Select <b>object(s)</b> to remove filters from." msgstr "" -#: ../src/selection-chemistry.cpp:1281 +#: ../src/selection-chemistry.cpp:1303 #: ../src/ui/dialog/filter-effects-dialog.cpp:1678 msgid "Remove filter" msgstr "" -#: ../src/selection-chemistry.cpp:1290 +#: ../src/selection-chemistry.cpp:1312 msgid "Paste size" msgstr "" -#: ../src/selection-chemistry.cpp:1299 +#: ../src/selection-chemistry.cpp:1321 msgid "Paste size separately" msgstr "" -#: ../src/selection-chemistry.cpp:1309 +#: ../src/selection-chemistry.cpp:1331 msgid "Select <b>object(s)</b> to move to the layer above." msgstr "" -#: ../src/selection-chemistry.cpp:1335 +#: ../src/selection-chemistry.cpp:1357 msgid "Raise to next layer" msgstr "" -#: ../src/selection-chemistry.cpp:1342 +#: ../src/selection-chemistry.cpp:1364 msgid "No more layers above." msgstr "" -#: ../src/selection-chemistry.cpp:1354 +#: ../src/selection-chemistry.cpp:1376 msgid "Select <b>object(s)</b> to move to the layer below." msgstr "" -#: ../src/selection-chemistry.cpp:1380 +#: ../src/selection-chemistry.cpp:1402 msgid "Lower to previous layer" msgstr "" -#: ../src/selection-chemistry.cpp:1387 +#: ../src/selection-chemistry.cpp:1409 msgid "No more layers below." msgstr "" -#: ../src/selection-chemistry.cpp:1399 +#: ../src/selection-chemistry.cpp:1421 msgid "Select <b>object(s)</b> to move." msgstr "" -#: ../src/selection-chemistry.cpp:1416 ../src/verbs.cpp:2577 +#: ../src/selection-chemistry.cpp:1438 ../src/verbs.cpp:2660 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:1503 ../src/seltrans.cpp:388 +#: ../src/selection-chemistry.cpp:1528 ../src/seltrans.cpp:388 msgid "Cannot transform an embedded SVG." msgstr "" -#: ../src/selection-chemistry.cpp:1649 +#: ../src/selection-chemistry.cpp:1699 msgid "Remove transform" msgstr "" -#: ../src/selection-chemistry.cpp:1752 +#: ../src/selection-chemistry.cpp:1806 msgid "Rotate 90° CCW" msgstr "" -#: ../src/selection-chemistry.cpp:1752 +#: ../src/selection-chemistry.cpp:1806 msgid "Rotate 90° CW" msgstr "" -#: ../src/selection-chemistry.cpp:1773 ../src/seltrans.cpp:483 +#: ../src/selection-chemistry.cpp:1827 ../src/seltrans.cpp:483 #: ../src/ui/dialog/transformation.cpp:894 msgid "Rotate" msgstr "" -#: ../src/selection-chemistry.cpp:2144 +#: ../src/selection-chemistry.cpp:2214 msgid "Rotate by pixels" msgstr "" -#: ../src/selection-chemistry.cpp:2174 ../src/seltrans.cpp:480 +#: ../src/selection-chemistry.cpp:2244 ../src/seltrans.cpp:480 #: ../src/ui/dialog/transformation.cpp:869 #: ../share/extensions/interp_att_g.inx.h:12 msgid "Scale" msgstr "" -#: ../src/selection-chemistry.cpp:2199 +#: ../src/selection-chemistry.cpp:2269 msgid "Scale by whole factor" msgstr "" -#: ../src/selection-chemistry.cpp:2214 +#: ../src/selection-chemistry.cpp:2284 msgid "Move vertically" msgstr "" -#: ../src/selection-chemistry.cpp:2217 +#: ../src/selection-chemistry.cpp:2287 msgid "Move horizontally" msgstr "" -#: ../src/selection-chemistry.cpp:2220 ../src/selection-chemistry.cpp:2246 +#: ../src/selection-chemistry.cpp:2290 ../src/selection-chemistry.cpp:2316 #: ../src/seltrans.cpp:477 ../src/ui/dialog/transformation.cpp:807 msgid "Move" msgstr "" -#: ../src/selection-chemistry.cpp:2240 +#: ../src/selection-chemistry.cpp:2310 msgid "Move vertically by pixels" msgstr "" -#: ../src/selection-chemistry.cpp:2243 +#: ../src/selection-chemistry.cpp:2313 msgid "Move horizontally by pixels" msgstr "" -#: ../src/selection-chemistry.cpp:2375 +#: ../src/selection-chemistry.cpp:2445 msgid "The selection has no applied path effect." msgstr "" -#: ../src/selection-chemistry.cpp:2544 ../src/ui/dialog/clonetiler.cpp:2218 +#: ../src/selection-chemistry.cpp:2617 ../src/ui/dialog/clonetiler.cpp:2218 msgid "Select an <b>object</b> to clone." msgstr "" -#: ../src/selection-chemistry.cpp:2580 +#: ../src/selection-chemistry.cpp:2653 msgctxt "Action" msgid "Clone" msgstr "" -#: ../src/selection-chemistry.cpp:2596 +#: ../src/selection-chemistry.cpp:2669 msgid "Select <b>clones</b> to relink." msgstr "" -#: ../src/selection-chemistry.cpp:2603 +#: ../src/selection-chemistry.cpp:2676 msgid "Copy an <b>object</b> to clipboard to relink clones to." msgstr "" -#: ../src/selection-chemistry.cpp:2627 +#: ../src/selection-chemistry.cpp:2699 msgid "<b>No clones to relink</b> in the selection." msgstr "" -#: ../src/selection-chemistry.cpp:2630 +#: ../src/selection-chemistry.cpp:2702 msgid "Relink clone" msgstr "" -#: ../src/selection-chemistry.cpp:2644 +#: ../src/selection-chemistry.cpp:2716 msgid "Select <b>clones</b> to unlink." msgstr "" -#: ../src/selection-chemistry.cpp:2698 +#: ../src/selection-chemistry.cpp:2772 msgid "<b>No clones to unlink</b> in the selection." msgstr "" -#: ../src/selection-chemistry.cpp:2702 +#: ../src/selection-chemistry.cpp:2776 msgid "Unlink clone" msgstr "" -#: ../src/selection-chemistry.cpp:2715 +#: ../src/selection-chemistry.cpp:2789 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:2748 +#: ../src/selection-chemistry.cpp:2837 msgid "" "<b>Cannot find</b> the object to select (orphaned clone, offset, textpath, " "flowed text?)" msgstr "" -#: ../src/selection-chemistry.cpp:2754 +#: ../src/selection-chemistry.cpp:2843 msgid "" "The object you're trying to select is <b>not visible</b> (it is in <" "defs>)" msgstr "" -#: ../src/selection-chemistry.cpp:2799 -msgid "Select <b>one</b> path to clone." +#: ../src/selection-chemistry.cpp:2928 +msgid "Select path(s) to fill." msgstr "" -#: ../src/selection-chemistry.cpp:2803 -msgid "Select one <b>path</b> to clone." -msgstr "" - -#: ../src/selection-chemistry.cpp:2859 +#: ../src/selection-chemistry.cpp:2946 msgid "Select <b>object(s)</b> to convert to marker." msgstr "" -#: ../src/selection-chemistry.cpp:2926 +#: ../src/selection-chemistry.cpp:3021 msgid "Objects to marker" msgstr "" -#: ../src/selection-chemistry.cpp:2950 +#: ../src/selection-chemistry.cpp:3046 msgid "Select <b>object(s)</b> to convert to guides." msgstr "" -#: ../src/selection-chemistry.cpp:2973 +#: ../src/selection-chemistry.cpp:3069 msgid "Objects to guides" msgstr "" -#: ../src/selection-chemistry.cpp:3009 +#: ../src/selection-chemistry.cpp:3105 msgid "Select <b>objects</b> to convert to symbol." msgstr "" -#: ../src/selection-chemistry.cpp:3115 +#: ../src/selection-chemistry.cpp:3211 msgid "Group to symbol" msgstr "" -#: ../src/selection-chemistry.cpp:3134 +#: ../src/selection-chemistry.cpp:3230 msgid "Select a <b>symbol</b> to extract objects from." msgstr "" -#: ../src/selection-chemistry.cpp:3143 +#: ../src/selection-chemistry.cpp:3239 msgid "Select only one <b>symbol</b> in Symbol dialog to convert to group." msgstr "" -#: ../src/selection-chemistry.cpp:3201 +#: ../src/selection-chemistry.cpp:3297 msgid "Group from symbol" msgstr "" -#: ../src/selection-chemistry.cpp:3219 +#: ../src/selection-chemistry.cpp:3315 msgid "Select <b>object(s)</b> to convert to pattern." msgstr "" -#: ../src/selection-chemistry.cpp:3309 +#: ../src/selection-chemistry.cpp:3414 msgid "Objects to pattern" msgstr "" -#: ../src/selection-chemistry.cpp:3325 +#: ../src/selection-chemistry.cpp:3430 msgid "Select an <b>object with pattern fill</b> to extract objects from." msgstr "" -#: ../src/selection-chemistry.cpp:3380 +#: ../src/selection-chemistry.cpp:3491 msgid "<b>No pattern fills</b> in the selection." msgstr "" -#: ../src/selection-chemistry.cpp:3383 +#: ../src/selection-chemistry.cpp:3494 msgid "Pattern to objects" msgstr "" -#: ../src/selection-chemistry.cpp:3474 +#: ../src/selection-chemistry.cpp:3585 msgid "Select <b>object(s)</b> to make a bitmap copy." msgstr "" -#: ../src/selection-chemistry.cpp:3478 +#: ../src/selection-chemistry.cpp:3589 msgid "Rendering bitmap..." msgstr "" -#: ../src/selection-chemistry.cpp:3657 +#: ../src/selection-chemistry.cpp:3776 msgid "Create bitmap" msgstr "" -#: ../src/selection-chemistry.cpp:3689 +#: ../src/selection-chemistry.cpp:3801 ../src/selection-chemistry.cpp:3920 msgid "Select <b>object(s)</b> to create clippath or mask from." msgstr "" -#: ../src/selection-chemistry.cpp:3692 +#: ../src/selection-chemistry.cpp:3894 +msgid "Create Clip Group" +msgstr "" + +#: ../src/selection-chemistry.cpp:3923 msgid "Select mask object and <b>object(s)</b> to apply clippath or mask to." msgstr "" -#: ../src/selection-chemistry.cpp:3875 +#: ../src/selection-chemistry.cpp:4106 msgid "Set clipping path" msgstr "" -#: ../src/selection-chemistry.cpp:3877 +#: ../src/selection-chemistry.cpp:4108 msgid "Set mask" msgstr "" -#: ../src/selection-chemistry.cpp:3892 +#: ../src/selection-chemistry.cpp:4123 msgid "Select <b>object(s)</b> to remove clippath or mask from." msgstr "" -#: ../src/selection-chemistry.cpp:4003 +#: ../src/selection-chemistry.cpp:4243 msgid "Release clipping path" msgstr "" -#: ../src/selection-chemistry.cpp:4005 +#: ../src/selection-chemistry.cpp:4245 msgid "Release mask" msgstr "" -#: ../src/selection-chemistry.cpp:4024 +#: ../src/selection-chemistry.cpp:4264 msgid "Select <b>object(s)</b> to fit canvas to." msgstr "" #. Fit Page -#: ../src/selection-chemistry.cpp:4044 ../src/verbs.cpp:2905 +#: ../src/selection-chemistry.cpp:4284 ../src/verbs.cpp:2996 msgid "Fit Page to Selection" msgstr "" -#: ../src/selection-chemistry.cpp:4073 ../src/verbs.cpp:2907 +#: ../src/selection-chemistry.cpp:4313 ../src/verbs.cpp:2998 msgid "Fit Page to Drawing" msgstr "" -#: ../src/selection-chemistry.cpp:4094 ../src/verbs.cpp:2909 +#: ../src/selection-chemistry.cpp:4334 ../src/verbs.cpp:3000 msgid "Fit Page to Selection or Drawing" msgstr "" @@ -12120,22 +12336,22 @@ msgstr "" msgid "without URI" msgstr "" -#: ../src/sp-ellipse.cpp:374 +#: ../src/sp-ellipse.cpp:373 msgid "Segment" msgstr "" -#: ../src/sp-ellipse.cpp:376 +#: ../src/sp-ellipse.cpp:375 msgid "Arc" msgstr "" #. Ellipse -#: ../src/sp-ellipse.cpp:379 ../src/sp-ellipse.cpp:386 +#: ../src/sp-ellipse.cpp:378 ../src/sp-ellipse.cpp:385 #: ../src/ui/dialog/inkscape-preferences.cpp:405 -#: ../src/widgets/pencil-toolbar.cpp:158 +#: ../src/widgets/pencil-toolbar.cpp:163 msgid "Ellipse" msgstr "" -#: ../src/sp-ellipse.cpp:383 +#: ../src/sp-ellipse.cpp:382 msgid "Circle" msgstr "" @@ -12160,7 +12376,7 @@ msgstr "" msgid "Linked Flowed Text" msgstr "" -#: ../src/sp-flowtext.cpp:298 ../src/sp-text.cpp:341 +#: ../src/sp-flowtext.cpp:298 ../src/sp-text.cpp:371 #: ../src/ui/tools/text-tool.cpp:1566 msgid " [truncated]" msgstr "" @@ -12172,88 +12388,88 @@ msgid_plural "(%d characters%s)" msgstr[0] "" msgstr[1] "" -#: ../src/sp-guide.cpp:303 +#: ../src/sp-guide.cpp:225 msgid "Create Guides Around the Page" msgstr "" -#: ../src/sp-guide.cpp:315 ../src/verbs.cpp:2470 +#: ../src/sp-guide.cpp:237 ../src/verbs.cpp:2553 msgid "Delete All Guides" msgstr "" #. Guide has probably been deleted and no longer has an attached namedview. -#: ../src/sp-guide.cpp:475 +#: ../src/sp-guide.cpp:407 msgid "Deleted" msgstr "" -#: ../src/sp-guide.cpp:484 +#: ../src/sp-guide.cpp:416 msgid "" "<b>Shift+drag</b> to rotate, <b>Ctrl+drag</b> to move origin, <b>Del</b> to " "delete" msgstr "" -#: ../src/sp-guide.cpp:488 +#: ../src/sp-guide.cpp:420 #, c-format msgid "vertical, at %s" msgstr "" -#: ../src/sp-guide.cpp:491 +#: ../src/sp-guide.cpp:423 #, c-format msgid "horizontal, at %s" msgstr "" -#: ../src/sp-guide.cpp:496 +#: ../src/sp-guide.cpp:428 #, c-format msgid "at %d degrees, through (%s,%s)" msgstr "" -#: ../src/sp-image.cpp:525 +#: ../src/sp-image.cpp:526 msgid "embedded" msgstr "" -#: ../src/sp-image.cpp:533 +#: ../src/sp-image.cpp:534 #, c-format msgid "[bad reference]: %s" msgstr "" -#: ../src/sp-image.cpp:534 +#: ../src/sp-image.cpp:535 #, c-format msgid "%d × %d: %s" msgstr "" -#: ../src/sp-item-group.cpp:329 +#: ../src/sp-item-group.cpp:327 msgid "Group" msgstr "" -#: ../src/sp-item-group.cpp:335 ../src/sp-switch.cpp:82 +#: ../src/sp-item-group.cpp:333 ../src/sp-switch.cpp:82 #, c-format msgid "of <b>%d</b> object" msgstr "" -#: ../src/sp-item-group.cpp:335 ../src/sp-switch.cpp:82 +#: ../src/sp-item-group.cpp:333 ../src/sp-switch.cpp:82 #, c-format msgid "of <b>%d</b> objects" msgstr "" -#: ../src/sp-item.cpp:1035 ../src/verbs.cpp:213 +#: ../src/sp-item.cpp:1075 ../src/verbs.cpp:214 msgid "Object" msgstr "" -#: ../src/sp-item.cpp:1052 +#: ../src/sp-item.cpp:1092 #, c-format msgid "%s; <i>clipped</i>" msgstr "" -#: ../src/sp-item.cpp:1058 +#: ../src/sp-item.cpp:1098 #, c-format msgid "%s; <i>masked</i>" msgstr "" -#: ../src/sp-item.cpp:1068 +#: ../src/sp-item.cpp:1108 #, c-format msgid "%s; <i>filtered (%s)</i>" msgstr "" -#: ../src/sp-item.cpp:1070 +#: ../src/sp-item.cpp:1110 #, c-format msgid "%s; <i>filtered</i>" msgstr "" @@ -12262,7 +12478,7 @@ msgstr "" msgid "Line" msgstr "" -#: ../src/sp-lpe-item.cpp:262 +#: ../src/sp-lpe-item.cpp:261 msgid "An exception occurred during execution of the Path Effect." msgstr "" @@ -12335,11 +12551,11 @@ msgstr "" #. Star #: ../src/sp-star.cpp:256 ../src/ui/dialog/inkscape-preferences.cpp:409 -#: ../src/widgets/star-toolbar.cpp:469 +#: ../src/widgets/star-toolbar.cpp:471 msgid "Star" msgstr "" -#: ../src/sp-star.cpp:257 ../src/widgets/star-toolbar.cpp:462 +#: ../src/sp-star.cpp:257 ../src/widgets/star-toolbar.cpp:464 msgid "Polygon" msgstr "" @@ -12360,7 +12576,7 @@ msgstr "" msgid "Conditional Group" msgstr "" -#: ../src/sp-text.cpp:325 ../src/verbs.cpp:328 +#: ../src/sp-text.cpp:355 ../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 @@ -12375,12 +12591,12 @@ msgstr "" msgid "Text" msgstr "" -#: ../src/sp-text.cpp:345 +#: ../src/sp-text.cpp:375 #, c-format msgid "on path%s (%s, %s)" msgstr "" -#: ../src/sp-text.cpp:346 +#: ../src/sp-text.cpp:376 #, c-format msgid "%s (%s, %s)" msgstr "" @@ -12557,7 +12773,7 @@ msgstr "" 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:2492 +#: ../src/text-chemistry.cpp:185 ../src/verbs.cpp:2575 msgid "Put text on path" msgstr "" @@ -12569,7 +12785,7 @@ msgstr "" msgid "<b>No texts-on-paths</b> in the selection." msgstr "" -#: ../src/text-chemistry.cpp:221 ../src/verbs.cpp:2494 +#: ../src/text-chemistry.cpp:221 ../src/verbs.cpp:2577 msgid "Remove text from path" msgstr "" @@ -12619,129 +12835,6 @@ msgstr "" msgid "You cannot edit <b>cloned character data</b>." msgstr "" -#: ../src/tools-switch.cpp:91 -msgid "" -"<b>Click</b> to Select and Transform objects, <b>Drag</b> to select many " -"objects." -msgstr "" - -#: ../src/tools-switch.cpp:92 -msgid "Modify selected path points (nodes) directly." -msgstr "" - -#: ../src/tools-switch.cpp:93 -msgid "To tweak a path by pushing, select it and drag over it." -msgstr "" - -#: ../src/tools-switch.cpp:94 -msgid "" -"<b>Drag</b>, <b>click</b> or <b>click and scroll</b> to spray the selected " -"objects." -msgstr "" - -#: ../src/tools-switch.cpp:95 -msgid "" -"<b>Drag</b> to create a rectangle. <b>Drag controls</b> to round corners and " -"resize. <b>Click</b> to select." -msgstr "" - -#: ../src/tools-switch.cpp:96 -msgid "" -"<b>Drag</b> to create a 3D box. <b>Drag controls</b> to resize in " -"perspective. <b>Click</b> to select (with <b>Ctrl+Alt</b> for single faces)." -msgstr "" - -#: ../src/tools-switch.cpp:97 -msgid "" -"<b>Drag</b> to create an ellipse. <b>Drag controls</b> to make an arc or " -"segment. <b>Click</b> to select." -msgstr "" - -#: ../src/tools-switch.cpp:98 -msgid "" -"<b>Drag</b> to create a star. <b>Drag controls</b> to edit the star shape. " -"<b>Click</b> to select." -msgstr "" - -#: ../src/tools-switch.cpp:99 -msgid "" -"<b>Drag</b> to create a spiral. <b>Drag controls</b> to edit the spiral " -"shape. <b>Click</b> to select." -msgstr "" - -#: ../src/tools-switch.cpp:100 -msgid "" -"<b>Drag</b> to create a freehand line. <b>Shift</b> appends to selected " -"path, <b>Alt</b> activates sketch mode." -msgstr "" - -#: ../src/tools-switch.cpp:101 -msgid "" -"<b>Click</b> or <b>click and drag</b> to start a path; with <b>Shift</b> to " -"append to selected path. <b>Ctrl+click</b> to create single dots (straight " -"line modes only)." -msgstr "" - -#: ../src/tools-switch.cpp:102 -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 "" - -#: ../src/tools-switch.cpp:103 ../src/ui/tools/text-tool.cpp:1593 -msgid "" -"<b>Click</b> to select or create text, <b>drag</b> to create flowed text; " -"then type." -msgstr "" - -#: ../src/tools-switch.cpp:104 -msgid "" -"<b>Drag</b> or <b>double click</b> to create a gradient on selected objects, " -"<b>drag handles</b> to adjust gradients." -msgstr "" - -#: ../src/tools-switch.cpp:105 -msgid "" -"<b>Drag</b> or <b>double click</b> to create a mesh on selected objects, " -"<b>drag handles</b> to adjust meshes." -msgstr "" - -#: ../src/tools-switch.cpp:106 -msgid "" -"<b>Click</b> or <b>drag around an area</b> to zoom in, <b>Shift+click</b> to " -"zoom out." -msgstr "" - -#: ../src/tools-switch.cpp:107 -msgid "<b>Drag</b> to measure the dimensions of objects." -msgstr "" - -#: ../src/tools-switch.cpp:108 ../src/ui/tools/dropper-tool.cpp:285 -msgid "" -"<b>Click</b> to set fill, <b>Shift+click</b> to set stroke; <b>drag</b> to " -"average color in area; with <b>Alt</b> to pick inverse color; <b>Ctrl+C</b> " -"to copy the color under mouse to clipboard" -msgstr "" - -#: ../src/tools-switch.cpp:109 -msgid "<b>Click and drag</b> between shapes to create a connector." -msgstr "" - -#: ../src/tools-switch.cpp:110 -msgid "" -"<b>Click</b> to paint a bounded area, <b>Shift+click</b> to union the new " -"fill with the current selection, <b>Ctrl+click</b> to change the clicked " -"object's fill and stroke to the current setting." -msgstr "" - -#: ../src/tools-switch.cpp:111 -msgid "<b>Drag</b> to erase." -msgstr "" - -#: ../src/tools-switch.cpp:112 -msgid "Choose a subtool from the toolbar" -msgstr "" - #: ../src/trace/potrace/inkscape-potrace.cpp:512 #: ../src/trace/potrace/inkscape-potrace.cpp:575 msgid "Trace: %1. %2 nodes" @@ -12793,41 +12886,41 @@ msgid "Trace: Done. %ld nodes created" msgstr "" #. check whether something is selected -#: ../src/ui/clipboard.cpp:261 +#: ../src/ui/clipboard.cpp:262 msgid "Nothing was copied." msgstr "" -#: ../src/ui/clipboard.cpp:374 ../src/ui/clipboard.cpp:583 -#: ../src/ui/clipboard.cpp:612 +#: ../src/ui/clipboard.cpp:375 ../src/ui/clipboard.cpp:587 +#: ../src/ui/clipboard.cpp:616 msgid "Nothing on the clipboard." msgstr "" -#: ../src/ui/clipboard.cpp:432 +#: ../src/ui/clipboard.cpp:433 msgid "Select <b>object(s)</b> to paste style to." msgstr "" -#: ../src/ui/clipboard.cpp:443 ../src/ui/clipboard.cpp:460 +#: ../src/ui/clipboard.cpp:444 ../src/ui/clipboard.cpp:461 msgid "No style on the clipboard." msgstr "" -#: ../src/ui/clipboard.cpp:485 +#: ../src/ui/clipboard.cpp:486 msgid "Select <b>object(s)</b> to paste size to." msgstr "" -#: ../src/ui/clipboard.cpp:492 +#: ../src/ui/clipboard.cpp:493 msgid "No size on the clipboard." msgstr "" -#: ../src/ui/clipboard.cpp:545 +#: ../src/ui/clipboard.cpp:549 msgid "Select <b>object(s)</b> to paste live path effect to." msgstr "" #. no_effect: -#: ../src/ui/clipboard.cpp:570 +#: ../src/ui/clipboard.cpp:574 msgid "No effect on the clipboard." msgstr "" -#: ../src/ui/clipboard.cpp:589 ../src/ui/clipboard.cpp:626 +#: ../src/ui/clipboard.cpp:593 ../src/ui/clipboard.cpp:630 msgid "Clipboard does not contain a path." msgstr "" @@ -12954,53 +13047,53 @@ msgid "_Treat selection as group: " msgstr "" #. Align -#: ../src/ui/dialog/align-and-distribute.cpp:877 ../src/verbs.cpp:2937 -#: ../src/verbs.cpp:2938 +#: ../src/ui/dialog/align-and-distribute.cpp:877 ../src/verbs.cpp:3028 +#: ../src/verbs.cpp:3029 msgid "Align right edges of objects to the left edge of the anchor" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:880 ../src/verbs.cpp:2939 -#: ../src/verbs.cpp:2940 +#: ../src/ui/dialog/align-and-distribute.cpp:880 ../src/verbs.cpp:3030 +#: ../src/verbs.cpp:3031 msgid "Align left edges" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:883 ../src/verbs.cpp:2941 -#: ../src/verbs.cpp:2942 +#: ../src/ui/dialog/align-and-distribute.cpp:883 ../src/verbs.cpp:3032 +#: ../src/verbs.cpp:3033 msgid "Center on vertical axis" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:886 ../src/verbs.cpp:2943 -#: ../src/verbs.cpp:2944 +#: ../src/ui/dialog/align-and-distribute.cpp:886 ../src/verbs.cpp:3034 +#: ../src/verbs.cpp:3035 msgid "Align right sides" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:889 ../src/verbs.cpp:2945 -#: ../src/verbs.cpp:2946 +#: ../src/ui/dialog/align-and-distribute.cpp:889 ../src/verbs.cpp:3036 +#: ../src/verbs.cpp:3037 msgid "Align left edges of objects to the right edge of the anchor" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:892 ../src/verbs.cpp:2947 -#: ../src/verbs.cpp:2948 +#: ../src/ui/dialog/align-and-distribute.cpp:892 ../src/verbs.cpp:3038 +#: ../src/verbs.cpp:3039 msgid "Align bottom edges of objects to the top edge of the anchor" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:895 ../src/verbs.cpp:2949 -#: ../src/verbs.cpp:2950 +#: ../src/ui/dialog/align-and-distribute.cpp:895 ../src/verbs.cpp:3040 +#: ../src/verbs.cpp:3041 msgid "Align top edges" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:898 ../src/verbs.cpp:2951 -#: ../src/verbs.cpp:2952 +#: ../src/ui/dialog/align-and-distribute.cpp:898 ../src/verbs.cpp:3042 +#: ../src/verbs.cpp:3043 msgid "Center on horizontal axis" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:901 ../src/verbs.cpp:2953 -#: ../src/verbs.cpp:2954 +#: ../src/ui/dialog/align-and-distribute.cpp:901 ../src/verbs.cpp:3044 +#: ../src/verbs.cpp:3045 msgid "Align bottom edges" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:904 ../src/verbs.cpp:2955 -#: ../src/verbs.cpp:2956 +#: ../src/ui/dialog/align-and-distribute.cpp:904 ../src/verbs.cpp:3046 +#: ../src/verbs.cpp:3047 msgid "Align top edges of objects to the bottom edge of the anchor" msgstr "" @@ -13855,11 +13948,11 @@ msgstr "" msgid "Set fill color to none" msgstr "" -#: ../src/ui/dialog/color-item.cpp:700 +#: ../src/ui/dialog/color-item.cpp:702 msgid "Set stroke color from swatch" msgstr "" -#: ../src/ui/dialog/color-item.cpp:700 +#: ../src/ui/dialog/color-item.cpp:702 msgid "Set fill color from swatch" msgstr "" @@ -14124,7 +14217,7 @@ msgstr "" msgid "Guides" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:156 ../src/verbs.cpp:2744 +#: ../src/ui/dialog/document-properties.cpp:156 ../src/verbs.cpp:2831 msgid "Snap" msgstr "" @@ -14168,7 +14261,7 @@ msgstr "" #. Inkscape::GC::release(defsRepr); #. inform the document, so we can undo #. Color Management -#: ../src/ui/dialog/document-properties.cpp:498 ../src/verbs.cpp:2921 +#: ../src/ui/dialog/document-properties.cpp:498 ../src/verbs.cpp:3012 msgid "Link Color Profile" msgstr "" @@ -14214,7 +14307,7 @@ msgstr "" #: ../src/ui/dialog/document-properties.cpp:763 #: ../src/ui/dialog/document-properties.cpp:852 -#: ../src/ui/widget/selected-style.cpp:343 +#: ../src/ui/widget/selected-style.cpp:356 msgid "Remove" msgstr "" @@ -14300,15 +14393,15 @@ msgstr "" msgid "Changed document unit" msgstr "" -#: ../src/ui/dialog/export.cpp:152 ../src/verbs.cpp:2796 +#: ../src/ui/dialog/export.cpp:152 ../src/verbs.cpp:2883 msgid "_Page" msgstr "" -#: ../src/ui/dialog/export.cpp:152 ../src/verbs.cpp:2800 +#: ../src/ui/dialog/export.cpp:152 ../src/verbs.cpp:2887 msgid "_Drawing" msgstr "" -#: ../src/ui/dialog/export.cpp:152 ../src/verbs.cpp:2802 +#: ../src/ui/dialog/export.cpp:152 ../src/verbs.cpp:2889 msgid "_Selection" msgstr "" @@ -14490,8 +14583,14 @@ msgstr "" msgid "Export aborted." msgstr "" +#: ../src/ui/dialog/export.cpp:1302 ../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:1303 ../src/ui/dialog/input.cpp:1082 -#: ../src/verbs.cpp:2358 ../src/widgets/desktop-widget.cpp:1123 +#: ../src/verbs.cpp:2441 ../src/widgets/desktop-widget.cpp:1123 msgid "_Save" msgstr "" @@ -14499,8 +14598,8 @@ msgstr "" msgid "Information" msgstr "" -#: ../src/ui/dialog/extension-editor.cpp:82 ../src/verbs.cpp:290 -#: ../src/verbs.cpp:309 ../share/extensions/color_HSL_adjust.inx.h:11 +#: ../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 #: ../share/extensions/dots.inx.h:7 @@ -14553,103 +14652,103 @@ msgid "Parameters" msgstr "" #. Fill in the template -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:376 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:415 msgid "No preview" msgstr "" -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:480 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:519 msgid "too large for preview" msgstr "" -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:565 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:604 msgid "Enable preview" msgstr "" -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:715 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:728 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:732 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:735 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:743 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:759 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:754 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:767 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:771 #: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:774 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:782 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:798 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:813 #: ../src/ui/dialog/filedialogimpl-win32.cpp:282 #: ../src/ui/dialog/filedialogimpl-win32.cpp:413 msgid "All Files" msgstr "" -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:740 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:756 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:771 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:779 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:795 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:810 #: ../src/ui/dialog/filedialogimpl-win32.cpp:283 msgid "All Inkscape Files" msgstr "" -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:747 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:763 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:777 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:786 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:802 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:816 #: ../src/ui/dialog/filedialogimpl-win32.cpp:284 msgid "All Images" msgstr "" -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:750 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:766 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:780 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:789 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:805 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:819 #: ../src/ui/dialog/filedialogimpl-win32.cpp:285 msgid "All Vectors" msgstr "" -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:753 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:769 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:783 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:792 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:808 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:822 #: ../src/ui/dialog/filedialogimpl-win32.cpp:286 msgid "All Bitmaps" msgstr "" #. ###### File options #. ###### Do we want the .xxx extension automatically added? -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1002 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1560 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1041 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1599 msgid "Append filename extension automatically" msgstr "" -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1175 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1428 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1214 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1467 msgid "Guess from extension" msgstr "" -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1447 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1486 msgid "Left edge of source" msgstr "" -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1448 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1487 msgid "Top edge of source" msgstr "" -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1449 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1488 msgid "Right edge of source" msgstr "" -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1450 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1489 msgid "Bottom edge of source" msgstr "" -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1451 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1490 msgid "Source width" msgstr "" -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1452 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1491 msgid "Source height" msgstr "" -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1453 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1492 msgid "Destination width" msgstr "" -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1454 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1493 msgid "Destination height" msgstr "" -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1455 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1494 msgid "Resolution (dots per inch)" msgstr "" @@ -14657,30 +14756,30 @@ msgstr "" #. ## EXTRA WIDGET -- SOURCE SIDE #. ######################################### #. ##### Export options buttons/spinners, etc -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1493 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1532 msgid "Document" msgstr "" -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1501 ../src/verbs.cpp:175 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1540 ../src/verbs.cpp:176 #: ../src/widgets/desktop-widget.cpp:2000 #: ../share/extensions/printing_marks.inx.h:18 msgid "Selection" msgstr "" -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1505 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1544 msgctxt "Export dialog" msgid "Custom" msgstr "" -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1525 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1564 msgid "Source" msgstr "" -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1545 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1584 msgid "Cairo" msgstr "" -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1548 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1587 msgid "Antialias" msgstr "" @@ -14947,7 +15046,7 @@ msgid "R:" msgstr "" #: ../src/ui/dialog/filter-effects-dialog.cpp:2848 -#: ../src/widgets/sp-color-icc-selector.cpp:359 +#: ../src/widgets/sp-color-icc-selector.cpp:334 msgid "G:" msgstr "" @@ -16503,12 +16602,12 @@ msgstr "" msgid "Guideline" msgstr "" -#: ../src/ui/dialog/guides.cpp:310 +#: ../src/ui/dialog/guides.cpp:311 #, c-format msgid "Guideline ID: %s" msgstr "" -#: ../src/ui/dialog/guides.cpp:316 +#: ../src/ui/dialog/guides.cpp:317 #, c-format msgid "Current: %s" msgstr "" @@ -16857,7 +16956,7 @@ msgid "Zoom" msgstr "" #. Measure -#: ../src/ui/dialog/inkscape-preferences.cpp:383 ../src/verbs.cpp:2678 +#: ../src/ui/dialog/inkscape-preferences.cpp:383 ../src/verbs.cpp:2765 msgctxt "ContextVerb" msgid "Measure" msgstr "" @@ -16912,7 +17011,7 @@ msgid "" msgstr "" #. Text -#: ../src/ui/dialog/inkscape-preferences.cpp:441 ../src/verbs.cpp:2670 +#: ../src/ui/dialog/inkscape-preferences.cpp:441 ../src/verbs.cpp:2757 msgctxt "ContextVerb" msgid "Text" msgstr "" @@ -17001,8 +17100,8 @@ msgstr "" #. Gradient #: ../src/ui/dialog/inkscape-preferences.cpp:480 -#: ../src/widgets/gradient-selector.cpp:152 -#: ../src/widgets/gradient-selector.cpp:320 +#: ../src/widgets/gradient-selector.cpp:134 +#: ../src/widgets/gradient-selector.cpp:302 msgid "Gradient" msgstr "" @@ -17737,9 +17836,10 @@ msgstr "" #: ../src/ui/dialog/inkscape-preferences.cpp:841 msgid "" -"When this option is on, the \"Save as...\" and \"Save a Copy\" dialogs will " -"always open in the directory where the currently open document is; when it's " -"off, each will open in the directory where you last saved a file using it" +"When this option is on, the \"Save as...\" and \"Save a Copy...\" dialogs " +"will always open in the directory where the currently open document is; when " +"it's off, each will open in the directory where you last saved a file using " +"it" msgstr "" #: ../src/ui/dialog/inkscape-preferences.cpp:843 @@ -18133,8 +18233,8 @@ msgid "Preserve K channel in CMYK -> CMYK transforms" msgstr "" #: ../src/ui/dialog/inkscape-preferences.cpp:1039 -#: ../src/widgets/sp-color-icc-selector.cpp:474 -#: ../src/widgets/sp-color-icc-selector.cpp:766 +#: ../src/widgets/sp-color-icc-selector.cpp:449 +#: ../src/widgets/sp-color-icc-selector.cpp:741 msgid "<none>" msgstr "" @@ -18334,7 +18434,7 @@ msgstr "" #. Transforms options #: ../src/ui/dialog/inkscape-preferences.cpp:1173 -#: ../src/widgets/select-toolbar.cpp:570 +#: ../src/widgets/select-toolbar.cpp:572 msgid "Scale stroke width" msgstr "" @@ -18355,22 +18455,22 @@ msgid "Preserved" msgstr "" #: ../src/ui/dialog/inkscape-preferences.cpp:1181 -#: ../src/widgets/select-toolbar.cpp:571 +#: ../src/widgets/select-toolbar.cpp:573 msgid "When scaling objects, scale the stroke width by the same proportion" msgstr "" #: ../src/ui/dialog/inkscape-preferences.cpp:1183 -#: ../src/widgets/select-toolbar.cpp:582 +#: ../src/widgets/select-toolbar.cpp:584 msgid "When scaling rectangles, scale the radii of rounded corners" msgstr "" #: ../src/ui/dialog/inkscape-preferences.cpp:1185 -#: ../src/widgets/select-toolbar.cpp:593 +#: ../src/widgets/select-toolbar.cpp:595 msgid "Move gradients (in fill or stroke) along with the objects" msgstr "" #: ../src/ui/dialog/inkscape-preferences.cpp:1187 -#: ../src/widgets/select-toolbar.cpp:604 +#: ../src/widgets/select-toolbar.cpp:606 msgid "Move patterns (in fill or stroke) along with the objects" msgstr "" @@ -18595,6 +18695,8 @@ msgid "_Zoom in/out by:" msgstr "" #: ../src/ui/dialog/inkscape-preferences.cpp:1273 +#: ../src/ui/dialog/objects.cpp:1622 +#: ../src/ui/widget/filter-effect-chooser.cpp:27 msgid "%" msgstr "" @@ -18870,7 +18972,7 @@ msgid "Rendering" msgstr "" #. Note: /options/bitmapoversample removed with Cairo renderer -#: ../src/ui/dialog/inkscape-preferences.cpp:1427 ../src/verbs.cpp:156 +#: ../src/ui/dialog/inkscape-preferences.cpp:1427 ../src/verbs.cpp:157 #: ../src/widgets/calligraphy-toolbar.cpp:626 msgid "Edit" msgstr "" @@ -19264,7 +19366,7 @@ msgid "Y tilt" msgstr "" #: ../src/ui/dialog/input.cpp:1616 -#: ../src/widgets/sp-color-wheel-selector.cpp:59 +#: ../src/widgets/sp-color-wheel-selector.cpp:32 msgid "Wheel" msgstr "" @@ -19299,8 +19401,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:194 -#: ../src/verbs.cpp:2289 +#: ../src/ui/dialog/layer-properties.cpp:410 ../src/verbs.cpp:195 +#: ../src/verbs.cpp:2372 msgid "Layer" msgstr "" @@ -19334,6 +19436,7 @@ 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:114 msgid "_Move" msgstr "" @@ -19354,11 +19457,13 @@ msgstr "" msgid "Unlock layer" msgstr "" -#: ../src/ui/dialog/layers.cpp:624 ../src/verbs.cpp:1405 +#: ../src/ui/dialog/layers.cpp:624 ../src/ui/dialog/objects.cpp:845 +#: ../src/verbs.cpp:1438 msgid "Toggle layer solo" msgstr "" -#: ../src/ui/dialog/layers.cpp:627 ../src/verbs.cpp:1429 +#: ../src/ui/dialog/layers.cpp:627 ../src/ui/dialog/objects.cpp:848 +#: ../src/verbs.cpp:1462 msgid "Lock other layers" msgstr "" @@ -19465,6 +19570,46 @@ msgstr "" msgid "Deactivate path effect" msgstr "" +#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:57 +msgid "Radius (pixels):" +msgstr "" + +#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:69 +msgid "Chamfer subdivisions:" +msgstr "" + +#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:139 +msgid "Modify Fillet-Chamfer" +msgstr "" + +#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:140 +msgid "_Modify" +msgstr "" + +#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:203 +msgid "Radius " +msgstr "" + +#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:205 +msgid "Radius approximated " +msgstr "" + +#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:208 +msgid "Knot distance " +msgstr "" + +#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:215 +msgid "Position (%):" +msgstr "" + +#: ../src/ui/dialog/lpe-fillet-chamfer-properties.cpp:219 +msgid "(" +msgstr "" + +#: ../src/ui/dialog/lpe-powerstroke-properties.cpp:119 +msgid "Modify Node Position" +msgstr "" + #: ../src/ui/dialog/memory.cpp:96 msgid "Heap" msgstr "" @@ -19512,11 +19657,11 @@ msgstr "" msgid "Log capture stopped." msgstr "" -#: ../src/ui/dialog/new-from-template.cpp:24 +#: ../src/ui/dialog/new-from-template.cpp:27 msgid "Create from template" msgstr "" -#: ../src/ui/dialog/new-from-template.cpp:26 +#: ../src/ui/dialog/new-from-template.cpp:29 msgid "New From Template" msgstr "" @@ -19615,8 +19760,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:2632 -#: ../src/verbs.cpp:2638 +#: ../src/ui/dialog/object-properties.cpp:325 ../src/verbs.cpp:2715 +#: ../src/verbs.cpp:2721 msgid "_Set" msgstr "" @@ -19670,6 +19815,79 @@ msgstr "" msgid "Unhide object" msgstr "" +#: ../src/ui/dialog/objects.cpp:875 +msgid "Unhide objects" +msgstr "" + +#: ../src/ui/dialog/objects.cpp:875 +msgid "Hide objects" +msgstr "" + +#: ../src/ui/dialog/objects.cpp:895 +msgid "Lock objects" +msgstr "" + +#: ../src/ui/dialog/objects.cpp:895 +msgid "Unlock objects" +msgstr "" + +#: ../src/ui/dialog/objects.cpp:907 +msgid "Layer to group" +msgstr "" + +#: ../src/ui/dialog/objects.cpp:907 +msgid "Group to layer" +msgstr "" + +#: ../src/ui/dialog/objects.cpp:1105 +msgid "Moved objects" +msgstr "" + +#: ../src/ui/dialog/objects.cpp:1354 ../src/ui/dialog/tags.cpp:875 +#: ../src/ui/dialog/tags.cpp:882 +msgid "Rename object" +msgstr "" + +#: ../src/ui/dialog/objects.cpp:1461 +msgid "Set object highlight color" +msgstr "" + +#: ../src/ui/dialog/objects.cpp:1471 +msgid "Set object opacity" +msgstr "" + +#: ../src/ui/dialog/objects.cpp:1504 +msgid "Set object blend mode" +msgstr "" + +#: ../src/ui/dialog/objects.cpp:1560 +msgid "Set object blur" +msgstr "" + +#: ../src/ui/dialog/objects.cpp:1802 +msgid "Add layer..." +msgstr "" + +#: ../src/ui/dialog/objects.cpp:1817 +msgid "Remove object" +msgstr "" + +#: ../src/ui/dialog/objects.cpp:1832 +msgid "Move To Bottom" +msgstr "" + +#: ../src/ui/dialog/objects.cpp:1877 +msgid "Move To Top" +msgstr "" + +#: ../src/ui/dialog/objects.cpp:1892 +msgid "Collapse All" +msgstr "" + +#: ../src/ui/dialog/objects.cpp:1974 +msgid "Select Highlight Color" +msgstr "" + #: ../src/ui/dialog/ocaldialogs.cpp:715 msgid "Clipart found" msgstr "" @@ -19824,62 +20042,62 @@ msgstr "" msgid "Trace pixel art" msgstr "" -#: ../src/ui/dialog/polar-arrange-tab.cpp:43 +#: ../src/ui/dialog/polar-arrange-tab.cpp:48 msgctxt "Polar arrange tab" msgid "Anchor point:" msgstr "" -#: ../src/ui/dialog/polar-arrange-tab.cpp:47 +#: ../src/ui/dialog/polar-arrange-tab.cpp:52 msgctxt "Polar arrange tab" msgid "Object's bounding box:" msgstr "" -#: ../src/ui/dialog/polar-arrange-tab.cpp:54 +#: ../src/ui/dialog/polar-arrange-tab.cpp:59 msgctxt "Polar arrange tab" msgid "Object's rotational center" msgstr "" -#: ../src/ui/dialog/polar-arrange-tab.cpp:59 +#: ../src/ui/dialog/polar-arrange-tab.cpp:64 msgctxt "Polar arrange tab" msgid "Arrange on:" msgstr "" -#: ../src/ui/dialog/polar-arrange-tab.cpp:63 +#: ../src/ui/dialog/polar-arrange-tab.cpp:68 msgctxt "Polar arrange tab" msgid "First selected circle/ellipse/arc" msgstr "" -#: ../src/ui/dialog/polar-arrange-tab.cpp:68 +#: ../src/ui/dialog/polar-arrange-tab.cpp:73 msgctxt "Polar arrange tab" msgid "Last selected circle/ellipse/arc" msgstr "" -#: ../src/ui/dialog/polar-arrange-tab.cpp:73 +#: ../src/ui/dialog/polar-arrange-tab.cpp:78 msgctxt "Polar arrange tab" msgid "Parameterized:" msgstr "" -#: ../src/ui/dialog/polar-arrange-tab.cpp:78 +#: ../src/ui/dialog/polar-arrange-tab.cpp:83 msgid "Center X/Y:" msgstr "" -#: ../src/ui/dialog/polar-arrange-tab.cpp:91 +#: ../src/ui/dialog/polar-arrange-tab.cpp:105 msgid "Radius X/Y:" msgstr "" -#: ../src/ui/dialog/polar-arrange-tab.cpp:104 +#: ../src/ui/dialog/polar-arrange-tab.cpp:127 msgid "Angle X/Y:" msgstr "" -#: ../src/ui/dialog/polar-arrange-tab.cpp:118 +#: ../src/ui/dialog/polar-arrange-tab.cpp:150 msgid "Rotate objects" msgstr "" -#: ../src/ui/dialog/polar-arrange-tab.cpp:306 +#: ../src/ui/dialog/polar-arrange-tab.cpp:338 msgid "Couldn't find an ellipse in selection" msgstr "" -#: ../src/ui/dialog/polar-arrange-tab.cpp:371 +#: ../src/ui/dialog/polar-arrange-tab.cpp:403 msgid "Arrange on ellipse" msgstr "" @@ -20141,9 +20359,9 @@ msgstr "" msgid "Preview Text:" msgstr "" -#: ../src/ui/dialog/swatches.cpp:203 ../src/ui/tools/gradient-tool.cpp:367 -#: ../src/ui/tools/gradient-tool.cpp:465 -#: ../src/widgets/gradient-vector.cpp:814 +#: ../src/ui/dialog/swatches.cpp:203 ../src/ui/tools/gradient-tool.cpp:370 +#: ../src/ui/tools/gradient-tool.cpp:468 +#: ../src/widgets/gradient-vector.cpp:794 msgid "Add gradient stop" msgstr "" @@ -20212,6 +20430,31 @@ msgstr "" msgid "Unnamed Symbols" msgstr "" +#: ../src/ui/dialog/tags.cpp:293 ../src/ui/dialog/tags.cpp:591 +#: ../src/ui/dialog/tags.cpp:705 +msgid "Remove from selection set" +msgstr "" + +#: ../src/ui/dialog/tags.cpp:449 +msgid "Items" +msgstr "" + +#: ../src/ui/dialog/tags.cpp:688 +msgid "Add selection to set" +msgstr "" + +#: ../src/ui/dialog/tags.cpp:846 +msgid "Moved sets" +msgstr "" + +#: ../src/ui/dialog/tags.cpp:1016 +msgid "Add a new selection set" +msgstr "" + +#: ../src/ui/dialog/tags.cpp:1025 +msgid "Remove Item/Set" +msgstr "" + #: ../src/ui/dialog/template-widget.cpp:37 msgid "More info" msgstr "" @@ -20802,32 +21045,361 @@ msgstr "" msgid "Change attribute" msgstr "" -#: ../src/ui/tool/curve-drag-point.cpp:100 +#: ../src/ui/interface.cpp:748 +msgctxt "Interface setup" +msgid "Default" +msgstr "" + +#: ../src/ui/interface.cpp:748 +msgid "Default interface setup" +msgstr "" + +#: ../src/ui/interface.cpp:749 +msgctxt "Interface setup" +msgid "Custom" +msgstr "" + +#: ../src/ui/interface.cpp:749 +msgid "Setup for custom task" +msgstr "" + +#: ../src/ui/interface.cpp:750 +msgctxt "Interface setup" +msgid "Wide" +msgstr "" + +#: ../src/ui/interface.cpp:750 +msgid "Setup for widescreen work" +msgstr "" + +#: ../src/ui/interface.cpp:862 +#, c-format +msgid "Verb \"%s\" Unknown" +msgstr "" + +#: ../src/ui/interface.cpp:901 +msgid "Open _Recent" +msgstr "" + +#: ../src/ui/interface.cpp:1009 ../src/ui/interface.cpp:1095 +#: ../src/ui/interface.cpp:1198 ../src/ui/widget/selected-style.cpp:545 +msgid "Drop color" +msgstr "" + +#: ../src/ui/interface.cpp:1048 ../src/ui/interface.cpp:1158 +msgid "Drop color on gradient" +msgstr "" + +#: ../src/ui/interface.cpp:1211 +msgid "Could not parse SVG data" +msgstr "" + +#: ../src/ui/interface.cpp:1250 +msgid "Drop SVG" +msgstr "" + +#: ../src/ui/interface.cpp:1263 +msgid "Drop Symbol" +msgstr "" + +#: ../src/ui/interface.cpp:1294 +msgid "Drop bitmap image" +msgstr "" + +#: ../src/ui/interface.cpp:1386 +#, c-format +msgid "" +"<span weight=\"bold\" size=\"larger\">A file named \"%s\" already exists. Do " +"you want to replace it?</span>\n" +"\n" +"The file already exists in \"%s\". Replacing it will overwrite its contents." +msgstr "" + +#: ../src/ui/interface.cpp:1393 ../share/extensions/web-set-att.inx.h:21 +#: ../share/extensions/web-transmit-att.inx.h:19 +msgid "Replace" +msgstr "" + +#: ../src/ui/interface.cpp:1464 +msgid "Go to parent" +msgstr "" + +#. TRANSLATORS: #%1 is the id of the group e.g. <g id="#g7">, not a number. +#: ../src/ui/interface.cpp:1505 +msgid "Enter group #%1" +msgstr "" + +#. Item dialog +#: ../src/ui/interface.cpp:1641 ../src/verbs.cpp:2936 +msgid "_Object Properties..." +msgstr "" + +#: ../src/ui/interface.cpp:1650 +msgid "_Select This" +msgstr "" + +#: ../src/ui/interface.cpp:1661 +msgid "Select Same" +msgstr "" + +#. Select same fill and stroke +#: ../src/ui/interface.cpp:1671 +msgid "Fill and Stroke" +msgstr "" + +#. Select same fill color +#: ../src/ui/interface.cpp:1678 +msgid "Fill Color" +msgstr "" + +#. Select same stroke color +#: ../src/ui/interface.cpp:1685 +msgid "Stroke Color" +msgstr "" + +#. Select same stroke style +#: ../src/ui/interface.cpp:1692 +msgid "Stroke Style" +msgstr "" + +#. Select same stroke style +#: ../src/ui/interface.cpp:1699 +msgid "Object type" +msgstr "" + +#. Move to layer +#: ../src/ui/interface.cpp:1706 +msgid "_Move to layer ..." +msgstr "" + +#. Create link +#: ../src/ui/interface.cpp:1716 +msgid "Create _Link" +msgstr "" + +#. Set mask +#: ../src/ui/interface.cpp:1739 +msgid "Set Mask" +msgstr "" + +#. Release mask +#: ../src/ui/interface.cpp:1750 +msgid "Release Mask" +msgstr "" + +#. SSet Clip Group +#: ../src/ui/interface.cpp:1761 +msgid "Create Clip G_roup" +msgstr "" + +#. Set Clip +#: ../src/ui/interface.cpp:1768 +msgid "Set Cl_ip" +msgstr "" + +#. Release Clip +#: ../src/ui/interface.cpp:1779 +msgid "Release C_lip" +msgstr "" + +#. Group +#: ../src/ui/interface.cpp:1790 ../src/verbs.cpp:2569 +msgid "_Group" +msgstr "" + +#: ../src/ui/interface.cpp:1861 +msgid "Create link" +msgstr "" + +#. Ungroup +#: ../src/ui/interface.cpp:1896 ../src/verbs.cpp:2571 +msgid "_Ungroup" +msgstr "" + +#. Link dialog +#: ../src/ui/interface.cpp:1921 +msgid "Link _Properties..." +msgstr "" + +#. Select item +#: ../src/ui/interface.cpp:1927 +msgid "_Follow Link" +msgstr "" + +#. Reset transformations +#: ../src/ui/interface.cpp:1933 +msgid "_Remove Link" +msgstr "" + +#: ../src/ui/interface.cpp:1964 +msgid "Remove link" +msgstr "" + +#. Image properties +#: ../src/ui/interface.cpp:1975 +msgid "Image _Properties..." +msgstr "" + +#. Edit externally +#: ../src/ui/interface.cpp:1981 +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:2632 +msgid "_Trace Bitmap..." +msgstr "" + +#. Trace Pixel Art +#: ../src/ui/interface.cpp:1999 +msgid "Trace Pixel Art" +msgstr "" + +#: ../src/ui/interface.cpp:2009 +msgctxt "Context menu" +msgid "Embed Image" +msgstr "" + +#: ../src/ui/interface.cpp:2020 +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:2899 +msgid "_Fill and Stroke..." +msgstr "" + +#. Edit Text dialog +#: ../src/ui/interface.cpp:2191 ../src/verbs.cpp:2918 +msgid "_Text and Font..." +msgstr "" + +#. Spellcheck dialog +#: ../src/ui/interface.cpp:2197 ../src/verbs.cpp:2926 +msgid "Check Spellin_g..." +msgstr "" + +#: ../src/ui/object-edit.cpp:456 +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:461 +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:466 ../src/ui/object-edit.cpp:471 +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:718 ../src/ui/object-edit.cpp:722 +#: ../src/ui/object-edit.cpp:726 ../src/ui/object-edit.cpp:730 +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:734 ../src/ui/object-edit.cpp:738 +#: ../src/ui/object-edit.cpp:742 ../src/ui/object-edit.cpp:746 +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:750 +msgid "Move the box in perspective" +msgstr "" + +#: ../src/ui/object-edit.cpp:989 +msgid "Adjust ellipse <b>width</b>, with <b>Ctrl</b> to make circle" +msgstr "" + +#: ../src/ui/object-edit.cpp:993 +msgid "Adjust ellipse <b>height</b>, with <b>Ctrl</b> to make circle" +msgstr "" + +#: ../src/ui/object-edit.cpp:997 +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:1002 +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:1148 +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:1156 +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:1351 +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:1355 +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:1402 +msgid "Adjust the <b>offset distance</b>" +msgstr "" + +#: ../src/ui/object-edit.cpp:1439 +msgid "Drag to resize the <b>flowed text frame</b>" +msgstr "" + +#: ../src/ui/tool/curve-drag-point.cpp:105 msgid "Drag curve" msgstr "" -#: ../src/ui/tool/curve-drag-point.cpp:157 +#: ../src/ui/tool/curve-drag-point.cpp:162 msgid "Add node" msgstr "" -#: ../src/ui/tool/curve-drag-point.cpp:167 +#: ../src/ui/tool/curve-drag-point.cpp:172 msgctxt "Path segment tip" msgid "<b>Shift</b>: click to toggle segment selection" msgstr "" -#: ../src/ui/tool/curve-drag-point.cpp:171 +#: ../src/ui/tool/curve-drag-point.cpp:176 msgctxt "Path segment tip" msgid "<b>Ctrl+Alt</b>: click to insert a node" msgstr "" -#: ../src/ui/tool/curve-drag-point.cpp:175 +#: ../src/ui/tool/curve-drag-point.cpp:180 msgctxt "Path segment tip" msgid "" "<b>Linear segment</b>: drag to convert to a Bezier segment, doubleclick to " "insert node, click to select (more: Shift, Ctrl+Alt)" msgstr "" -#: ../src/ui/tool/curve-drag-point.cpp:179 +#: ../src/ui/tool/curve-drag-point.cpp:184 msgctxt "Path segment tip" msgid "" "<b>Bezier segment</b>: drag to shape the segment, doubleclick to insert " @@ -20838,7 +21410,7 @@ msgstr "" msgid "Retract handles" msgstr "" -#: ../src/ui/tool/multi-path-manipulator.cpp:315 ../src/ui/tool/node.cpp:270 +#: ../src/ui/tool/multi-path-manipulator.cpp:315 ../src/ui/tool/node.cpp:296 msgid "Change node type" msgstr "" @@ -20876,83 +21448,88 @@ msgstr "" msgid "Delete nodes" msgstr "" -#: ../src/ui/tool/multi-path-manipulator.cpp:757 +#: ../src/ui/tool/multi-path-manipulator.cpp:768 msgid "Move nodes" msgstr "" -#: ../src/ui/tool/multi-path-manipulator.cpp:760 +#: ../src/ui/tool/multi-path-manipulator.cpp:771 msgid "Move nodes horizontally" msgstr "" -#: ../src/ui/tool/multi-path-manipulator.cpp:764 +#: ../src/ui/tool/multi-path-manipulator.cpp:775 msgid "Move nodes vertically" msgstr "" -#: ../src/ui/tool/multi-path-manipulator.cpp:768 -#: ../src/ui/tool/multi-path-manipulator.cpp:771 +#: ../src/ui/tool/multi-path-manipulator.cpp:779 +#: ../src/ui/tool/multi-path-manipulator.cpp:782 msgid "Rotate nodes" msgstr "" -#: ../src/ui/tool/multi-path-manipulator.cpp:775 -#: ../src/ui/tool/multi-path-manipulator.cpp:781 +#: ../src/ui/tool/multi-path-manipulator.cpp:786 +#: ../src/ui/tool/multi-path-manipulator.cpp:792 msgid "Scale nodes uniformly" msgstr "" -#: ../src/ui/tool/multi-path-manipulator.cpp:778 +#: ../src/ui/tool/multi-path-manipulator.cpp:789 msgid "Scale nodes" msgstr "" -#: ../src/ui/tool/multi-path-manipulator.cpp:785 +#: ../src/ui/tool/multi-path-manipulator.cpp:796 msgid "Scale nodes horizontally" msgstr "" -#: ../src/ui/tool/multi-path-manipulator.cpp:789 +#: ../src/ui/tool/multi-path-manipulator.cpp:800 msgid "Scale nodes vertically" msgstr "" -#: ../src/ui/tool/multi-path-manipulator.cpp:793 +#: ../src/ui/tool/multi-path-manipulator.cpp:804 msgid "Skew nodes horizontally" msgstr "" -#: ../src/ui/tool/multi-path-manipulator.cpp:797 +#: ../src/ui/tool/multi-path-manipulator.cpp:808 msgid "Skew nodes vertically" msgstr "" -#: ../src/ui/tool/multi-path-manipulator.cpp:801 +#: ../src/ui/tool/multi-path-manipulator.cpp:812 msgid "Flip nodes horizontally" msgstr "" -#: ../src/ui/tool/multi-path-manipulator.cpp:804 +#: ../src/ui/tool/multi-path-manipulator.cpp:815 msgid "Flip nodes vertically" msgstr "" -#: ../src/ui/tool/node.cpp:245 +#: ../src/ui/tool/node.cpp:271 msgid "Cusp node handle" msgstr "" -#: ../src/ui/tool/node.cpp:246 +#: ../src/ui/tool/node.cpp:272 msgid "Smooth node handle" msgstr "" -#: ../src/ui/tool/node.cpp:247 +#: ../src/ui/tool/node.cpp:273 msgid "Symmetric node handle" msgstr "" -#: ../src/ui/tool/node.cpp:248 +#: ../src/ui/tool/node.cpp:274 msgid "Auto-smooth node handle" msgstr "" -#: ../src/ui/tool/node.cpp:432 +#: ../src/ui/tool/node.cpp:493 msgctxt "Path handle tip" msgid "more: Shift, Ctrl, Alt" msgstr "" -#: ../src/ui/tool/node.cpp:434 +#: ../src/ui/tool/node.cpp:495 +msgctxt "Path handle tip" +msgid "more: Ctrl" +msgstr "" + +#: ../src/ui/tool/node.cpp:497 msgctxt "Path handle tip" msgid "more: Ctrl, Alt" msgstr "" -#: ../src/ui/tool/node.cpp:440 +#: ../src/ui/tool/node.cpp:503 #, c-format msgctxt "Path handle tip" msgid "" @@ -20960,24 +21537,24 @@ msgid "" "increments while rotating both handles" msgstr "" -#: ../src/ui/tool/node.cpp:445 +#: ../src/ui/tool/node.cpp:508 #, 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:451 +#: ../src/ui/tool/node.cpp:514 msgctxt "Path handle tip" msgid "<b>Shift+Alt</b>: preserve handle length and rotate both handles" msgstr "" -#: ../src/ui/tool/node.cpp:454 +#: ../src/ui/tool/node.cpp:517 msgctxt "Path handle tip" msgid "<b>Alt</b>: preserve handle length while dragging" msgstr "" -#: ../src/ui/tool/node.cpp:461 +#: ../src/ui/tool/node.cpp:524 #, c-format msgctxt "Path handle tip" msgid "" @@ -20985,67 +21562,85 @@ msgid "" "handles" msgstr "" -#: ../src/ui/tool/node.cpp:465 +#: ../src/ui/tool/node.cpp:528 +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 #, 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:470 +#: ../src/ui/tool/node.cpp:536 msgctxt "Path hande tip" msgid "<b>Shift</b>: rotate both handles by the same angle" msgstr "" -#: ../src/ui/tool/node.cpp:477 +#: ../src/ui/tool/node.cpp:539 +msgctxt "Path hande tip" +msgid "<b>Shift</b>: move handle" +msgstr "" + +#: ../src/ui/tool/node.cpp:546 ../src/ui/tool/node.cpp:550 #, 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:480 +#: ../src/ui/tool/node.cpp:553 #, c-format msgctxt "Path handle tip" -msgid "<b>%s</b>: drag to shape the segment (%s)" +msgid "<b>BSpline node handle</b>: Shift to drag, double click to reset (%s)" msgstr "" -#: ../src/ui/tool/node.cpp:500 +#: ../src/ui/tool/node.cpp:573 #, c-format msgctxt "Path handle tip" msgid "Move handle by %s, %s; angle %.2f°, length %s" msgstr "" -#: ../src/ui/tool/node.cpp:1270 +#: ../src/ui/tool/node.cpp:1447 msgctxt "Path node tip" msgid "<b>Shift</b>: drag out a handle, click to toggle selection" msgstr "" -#: ../src/ui/tool/node.cpp:1272 +#: ../src/ui/tool/node.cpp:1449 msgctxt "Path node tip" msgid "<b>Shift</b>: click to toggle selection" msgstr "" -#: ../src/ui/tool/node.cpp:1277 +#: ../src/ui/tool/node.cpp:1454 msgctxt "Path node tip" msgid "<b>Ctrl+Alt</b>: move along handle lines, click to delete node" msgstr "" -#: ../src/ui/tool/node.cpp:1280 +#: ../src/ui/tool/node.cpp:1457 msgctxt "Path node tip" msgid "<b>Ctrl</b>: move along axes, click to change node type" msgstr "" -#: ../src/ui/tool/node.cpp:1284 +#: ../src/ui/tool/node.cpp:1461 msgctxt "Path node tip" msgid "<b>Alt</b>: sculpt nodes" msgstr "" -#: ../src/ui/tool/node.cpp:1292 +#: ../src/ui/tool/node.cpp:1469 #, 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:1295 +#: ../src/ui/tool/node.cpp:1472 +#, c-format +msgctxt "Path node tip" +msgid "" +"<b>BSpline node</b>: %g weight, drag to shape the path (more: Shift, Ctrl, " +"Alt)" +msgstr "" + +#: ../src/ui/tool/node.cpp:1475 #, c-format msgctxt "Path node tip" msgid "" @@ -21053,7 +21648,7 @@ msgid "" "(more: Shift, Ctrl, Alt)" msgstr "" -#: ../src/ui/tool/node.cpp:1298 +#: ../src/ui/tool/node.cpp:1479 #, c-format msgctxt "Path node tip" msgid "" @@ -21061,43 +21656,50 @@ msgid "" "Shift, Ctrl, Alt)" msgstr "" -#: ../src/ui/tool/node.cpp:1309 +#: ../src/ui/tool/node.cpp:1482 +msgctxt "Path node tip" +msgid "" +"<b>BSpline node</b>: drag to shape the path, click to select only this node " +"(more: Shift, Ctrl, Alt)" +msgstr "" + +#: ../src/ui/tool/node.cpp:1495 #, c-format msgctxt "Path node tip" msgid "Move node by %s, %s" msgstr "" -#: ../src/ui/tool/node.cpp:1320 +#: ../src/ui/tool/node.cpp:1506 msgid "Symmetric node" msgstr "" -#: ../src/ui/tool/node.cpp:1321 +#: ../src/ui/tool/node.cpp:1507 msgid "Auto-smooth node" msgstr "" -#: ../src/ui/tool/path-manipulator.cpp:821 +#: ../src/ui/tool/path-manipulator.cpp:836 msgid "Scale handle" msgstr "" -#: ../src/ui/tool/path-manipulator.cpp:845 +#: ../src/ui/tool/path-manipulator.cpp:860 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:1384 +#: ../src/ui/tool/path-manipulator.cpp:1520 #: ../src/widgets/node-toolbar.cpp:397 msgid "Delete node" msgstr "" -#: ../src/ui/tool/path-manipulator.cpp:1392 +#: ../src/ui/tool/path-manipulator.cpp:1528 msgid "Cycle node type" msgstr "" -#: ../src/ui/tool/path-manipulator.cpp:1407 +#: ../src/ui/tool/path-manipulator.cpp:1543 msgid "Drag handle" msgstr "" -#: ../src/ui/tool/path-manipulator.cpp:1416 +#: ../src/ui/tool/path-manipulator.cpp:1552 msgid "Retract handle" msgstr "" @@ -21213,6 +21815,129 @@ msgctxt "Transform handle tip" msgid "<b>Rotation center</b>: drag to change the origin of transforms" msgstr "" +#: ../src/ui/tools-switch.cpp:95 +msgid "" +"<b>Click</b> to Select and Transform objects, <b>Drag</b> to select many " +"objects." +msgstr "" + +#: ../src/ui/tools-switch.cpp:96 +msgid "Modify selected path points (nodes) directly." +msgstr "" + +#: ../src/ui/tools-switch.cpp:97 +msgid "To tweak a path by pushing, select it and drag over it." +msgstr "" + +#: ../src/ui/tools-switch.cpp:98 +msgid "" +"<b>Drag</b>, <b>click</b> or <b>click and scroll</b> to spray the selected " +"objects." +msgstr "" + +#: ../src/ui/tools-switch.cpp:99 +msgid "" +"<b>Drag</b> to create a rectangle. <b>Drag controls</b> to round corners and " +"resize. <b>Click</b> to select." +msgstr "" + +#: ../src/ui/tools-switch.cpp:100 +msgid "" +"<b>Drag</b> to create a 3D box. <b>Drag controls</b> to resize in " +"perspective. <b>Click</b> to select (with <b>Ctrl+Alt</b> for single faces)." +msgstr "" + +#: ../src/ui/tools-switch.cpp:101 +msgid "" +"<b>Drag</b> to create an ellipse. <b>Drag controls</b> to make an arc or " +"segment. <b>Click</b> to select." +msgstr "" + +#: ../src/ui/tools-switch.cpp:102 +msgid "" +"<b>Drag</b> to create a star. <b>Drag controls</b> to edit the star shape. " +"<b>Click</b> to select." +msgstr "" + +#: ../src/ui/tools-switch.cpp:103 +msgid "" +"<b>Drag</b> to create a spiral. <b>Drag controls</b> to edit the spiral " +"shape. <b>Click</b> to select." +msgstr "" + +#: ../src/ui/tools-switch.cpp:104 +msgid "" +"<b>Drag</b> to create a freehand line. <b>Shift</b> appends to selected " +"path, <b>Alt</b> activates sketch mode." +msgstr "" + +#: ../src/ui/tools-switch.cpp:105 +msgid "" +"<b>Click</b> or <b>click and drag</b> to start a path; with <b>Shift</b> to " +"append to selected path. <b>Ctrl+click</b> to create single dots (straight " +"line modes only)." +msgstr "" + +#: ../src/ui/tools-switch.cpp:106 +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 "" + +#: ../src/ui/tools-switch.cpp:107 ../src/ui/tools/text-tool.cpp:1593 +msgid "" +"<b>Click</b> to select or create text, <b>drag</b> to create flowed text; " +"then type." +msgstr "" + +#: ../src/ui/tools-switch.cpp:108 +msgid "" +"<b>Drag</b> or <b>double click</b> to create a gradient on selected objects, " +"<b>drag handles</b> to adjust gradients." +msgstr "" + +#: ../src/ui/tools-switch.cpp:109 +msgid "" +"<b>Drag</b> or <b>double click</b> to create a mesh on selected objects, " +"<b>drag handles</b> to adjust meshes." +msgstr "" + +#: ../src/ui/tools-switch.cpp:110 +msgid "" +"<b>Click</b> or <b>drag around an area</b> to zoom in, <b>Shift+click</b> to " +"zoom out." +msgstr "" + +#: ../src/ui/tools-switch.cpp:111 +msgid "<b>Drag</b> to measure the dimensions of objects." +msgstr "" + +#: ../src/ui/tools-switch.cpp:112 ../src/ui/tools/dropper-tool.cpp:285 +msgid "" +"<b>Click</b> to set fill, <b>Shift+click</b> to set stroke; <b>drag</b> to " +"average color in area; with <b>Alt</b> to pick inverse color; <b>Ctrl+C</b> " +"to copy the color under mouse to clipboard" +msgstr "" + +#: ../src/ui/tools-switch.cpp:113 +msgid "<b>Click and drag</b> between shapes to create a connector." +msgstr "" + +#: ../src/ui/tools-switch.cpp:114 +msgid "" +"<b>Click</b> to paint a bounded area, <b>Shift+click</b> to union the new " +"fill with the current selection, <b>Ctrl+click</b> to change the clicked " +"object's fill and stroke to the current setting." +msgstr "" + +#: ../src/ui/tools-switch.cpp:115 +msgid "<b>Drag</b> to erase." +msgstr "" + +#: ../src/ui/tools-switch.cpp:116 +msgid "Choose a subtool from the toolbar" +msgstr "" + #: ../src/ui/tools/arc-tool.cpp:252 msgid "" "<b>Ctrl</b>: make circle or integer-ratio ellipse, snap arc/segment angle" @@ -21419,24 +22144,24 @@ msgid "<b>Draw over</b> areas to add to fill, hold <b>Alt</b> for touch fill" msgstr "" #. We hit green anchor, closing Green-Blue-Red -#: ../src/ui/tools/freehand-base.cpp:517 +#: ../src/ui/tools/freehand-base.cpp:559 msgid "Path is closed." msgstr "" #. We hit bot start and end of single curve, closing paths -#: ../src/ui/tools/freehand-base.cpp:532 +#: ../src/ui/tools/freehand-base.cpp:574 msgid "Closing path." msgstr "" -#: ../src/ui/tools/freehand-base.cpp:634 +#: ../src/ui/tools/freehand-base.cpp:711 msgid "Draw path" msgstr "" -#: ../src/ui/tools/freehand-base.cpp:791 +#: ../src/ui/tools/freehand-base.cpp:867 msgid "Creating single dot" msgstr "" -#: ../src/ui/tools/freehand-base.cpp:792 +#: ../src/ui/tools/freehand-base.cpp:868 msgid "Create single dot" msgstr "" @@ -21491,38 +22216,38 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" -#: ../src/ui/tools/gradient-tool.cpp:440 +#: ../src/ui/tools/gradient-tool.cpp:443 msgid "Simplify gradient" msgstr "" -#: ../src/ui/tools/gradient-tool.cpp:516 +#: ../src/ui/tools/gradient-tool.cpp:519 msgid "Create default gradient" msgstr "" -#: ../src/ui/tools/gradient-tool.cpp:575 ../src/ui/tools/mesh-tool.cpp:570 +#: ../src/ui/tools/gradient-tool.cpp:578 ../src/ui/tools/mesh-tool.cpp:570 msgid "<b>Draw around</b> handles to select them" msgstr "" -#: ../src/ui/tools/gradient-tool.cpp:698 +#: ../src/ui/tools/gradient-tool.cpp:701 msgid "<b>Ctrl</b>: snap gradient angle" msgstr "" -#: ../src/ui/tools/gradient-tool.cpp:699 +#: ../src/ui/tools/gradient-tool.cpp:702 msgid "<b>Shift</b>: draw gradient around the starting point" msgstr "" -#: ../src/ui/tools/gradient-tool.cpp:953 ../src/ui/tools/mesh-tool.cpp:993 +#: ../src/ui/tools/gradient-tool.cpp:956 ../src/ui/tools/mesh-tool.cpp:993 #, 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:957 ../src/ui/tools/mesh-tool.cpp:997 +#: ../src/ui/tools/gradient-tool.cpp:960 ../src/ui/tools/mesh-tool.cpp:997 msgid "Select <b>objects</b> on which to create gradient." msgstr "" -#: ../src/ui/tools/lpe-tool.cpp:207 +#: ../src/ui/tools/lpe-tool.cpp:206 msgid "Choose a construction tool from the toolbar." msgstr "" @@ -21585,145 +22310,171 @@ msgstr "" msgid "FIXME<b>Shift</b>: draw mesh around the starting point" msgstr "" -#: ../src/ui/tools/node-tool.cpp:594 +#: ../src/ui/tools/node-tool.cpp:612 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:598 +#: ../src/ui/tools/node-tool.cpp:616 msgctxt "Node tool tip" msgid "<b>Shift</b>: drag to add nodes to the selection" msgstr "" -#: ../src/ui/tools/node-tool.cpp:610 +#: ../src/ui/tools/node-tool.cpp:628 #, 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:616 +#: ../src/ui/tools/node-tool.cpp:634 #, 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:622 +#: ../src/ui/tools/node-tool.cpp:640 #, c-format msgctxt "Node tool tip" msgid "%s Drag to select nodes, click clear the selection" msgstr "" -#: ../src/ui/tools/node-tool.cpp:631 +#: ../src/ui/tools/node-tool.cpp:649 msgctxt "Node tool tip" msgid "Drag to select nodes, click to edit only this object" msgstr "" -#: ../src/ui/tools/node-tool.cpp:634 +#: ../src/ui/tools/node-tool.cpp:652 msgctxt "Node tool tip" msgid "Drag to select nodes, click to clear the selection" msgstr "" -#: ../src/ui/tools/node-tool.cpp:639 +#: ../src/ui/tools/node-tool.cpp:657 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:642 +#: ../src/ui/tools/node-tool.cpp:660 msgctxt "Node tool tip" msgid "Drag to select objects to edit" msgstr "" -#: ../src/ui/tools/pen-tool.cpp:186 ../src/ui/tools/pencil-tool.cpp:465 +#: ../src/ui/tools/pen-tool.cpp:230 ../src/ui/tools/pencil-tool.cpp:466 msgid "Drawing cancelled" msgstr "" -#: ../src/ui/tools/pen-tool.cpp:407 ../src/ui/tools/pencil-tool.cpp:203 +#: ../src/ui/tools/pen-tool.cpp:466 ../src/ui/tools/pencil-tool.cpp:204 msgid "Continuing selected path" msgstr "" -#: ../src/ui/tools/pen-tool.cpp:417 ../src/ui/tools/pencil-tool.cpp:211 +#: ../src/ui/tools/pen-tool.cpp:476 ../src/ui/tools/pencil-tool.cpp:212 msgid "Creating new path" msgstr "" -#: ../src/ui/tools/pen-tool.cpp:419 ../src/ui/tools/pencil-tool.cpp:214 +#: ../src/ui/tools/pen-tool.cpp:478 ../src/ui/tools/pencil-tool.cpp:215 msgid "Appending to selected path" msgstr "" -#: ../src/ui/tools/pen-tool.cpp:576 +#: ../src/ui/tools/pen-tool.cpp:638 msgid "<b>Click</b> or <b>click and drag</b> to close and finish the path." msgstr "" -#: ../src/ui/tools/pen-tool.cpp:586 +#: ../src/ui/tools/pen-tool.cpp:640 +msgid "" +"<b>Click</b> or <b>click and drag</b> to close and finish the path. Shift" +"+Click make a cusp node" +msgstr "" + +#: ../src/ui/tools/pen-tool.cpp:652 msgid "" "<b>Click</b> or <b>click and drag</b> to continue the path from this point." msgstr "" -#: ../src/ui/tools/pen-tool.cpp:1211 +#: ../src/ui/tools/pen-tool.cpp:654 +msgid "" +"<b>Click</b> or <b>click and drag</b> to continue the path from this point. " +"Shift+Click make a cusp node" +msgstr "" + +#: ../src/ui/tools/pen-tool.cpp:2096 #, c-format msgid "" "<b>Curve segment</b>: angle %3.2f°, distance %s; with <b>Ctrl</b> to " "snap angle, <b>Enter</b> to finish the path" msgstr "" -#: ../src/ui/tools/pen-tool.cpp:1212 +#: ../src/ui/tools/pen-tool.cpp:2097 #, c-format msgid "" "<b>Line segment</b>: angle %3.2f°, distance %s; with <b>Ctrl</b> to " "snap angle, <b>Enter</b> to finish the path" msgstr "" -#: ../src/ui/tools/pen-tool.cpp:1228 +#: ../src/ui/tools/pen-tool.cpp:2100 +#, 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 "" + +#: ../src/ui/tools/pen-tool.cpp:2101 +#, 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 "" + +#: ../src/ui/tools/pen-tool.cpp:2118 #, c-format msgid "" "<b>Curve handle</b>: angle %3.2f°, length %s; with <b>Ctrl</b> to snap " "angle" msgstr "" -#: ../src/ui/tools/pen-tool.cpp:1250 +#: ../src/ui/tools/pen-tool.cpp:2142 #, c-format msgid "" "<b>Curve handle, symmetric</b>: angle %3.2f°, length %s; with <b>Ctrl</" "b> to snap angle, with <b>Shift</b> to move this handle only" msgstr "" -#: ../src/ui/tools/pen-tool.cpp:1251 +#: ../src/ui/tools/pen-tool.cpp:2143 #, c-format msgid "" "<b>Curve handle</b>: angle %3.2f°, length %s; with <b>Ctrl</b> to snap " "angle, with <b>Shift</b> to move this handle only" msgstr "" -#: ../src/ui/tools/pen-tool.cpp:1294 +#: ../src/ui/tools/pen-tool.cpp:2191 msgid "Drawing finished" msgstr "" -#: ../src/ui/tools/pencil-tool.cpp:315 +#: ../src/ui/tools/pencil-tool.cpp:316 msgid "<b>Release</b> here to close and finish the path." msgstr "" -#: ../src/ui/tools/pencil-tool.cpp:321 +#: ../src/ui/tools/pencil-tool.cpp:322 msgid "Drawing a freehand path" msgstr "" -#: ../src/ui/tools/pencil-tool.cpp:326 +#: ../src/ui/tools/pencil-tool.cpp:327 msgid "<b>Drag</b> to continue the path from this point." msgstr "" #. Write curves to object -#: ../src/ui/tools/pencil-tool.cpp:411 +#: ../src/ui/tools/pencil-tool.cpp:412 msgid "Finishing freehand" msgstr "" -#: ../src/ui/tools/pencil-tool.cpp:514 +#: ../src/ui/tools/pencil-tool.cpp:515 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:541 +#: ../src/ui/tools/pencil-tool.cpp:542 msgid "Finishing freehand sketch" msgstr "" @@ -21783,33 +22534,33 @@ msgstr "" msgid "Selection canceled." msgstr "" -#: ../src/ui/tools/select-tool.cpp:642 +#: ../src/ui/tools/select-tool.cpp:653 msgid "" "<b>Draw over</b> objects to select them; release <b>Alt</b> to switch to " "rubberband selection" msgstr "" -#: ../src/ui/tools/select-tool.cpp:644 +#: ../src/ui/tools/select-tool.cpp:655 msgid "" "<b>Drag around</b> objects to select them; press <b>Alt</b> to switch to " "touch selection" msgstr "" -#: ../src/ui/tools/select-tool.cpp:932 +#: ../src/ui/tools/select-tool.cpp:950 msgid "<b>Ctrl</b>: click to select in groups; drag to move hor/vert" msgstr "" -#: ../src/ui/tools/select-tool.cpp:933 +#: ../src/ui/tools/select-tool.cpp:951 msgid "<b>Shift</b>: click to toggle select; drag for rubberband selection" msgstr "" -#: ../src/ui/tools/select-tool.cpp:934 +#: ../src/ui/tools/select-tool.cpp:952 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:1142 +#: ../src/ui/tools/select-tool.cpp:1160 msgid "Selected object is not a group. Cannot enter." msgstr "" @@ -21863,19 +22614,19 @@ msgid "" "initial selection." msgstr "" -#: ../src/ui/tools/spray-tool.cpp:656 +#: ../src/ui/tools/spray-tool.cpp:664 msgid "<b>Nothing selected!</b> Select objects to spray." msgstr "" -#: ../src/ui/tools/spray-tool.cpp:731 ../src/widgets/spray-toolbar.cpp:166 +#: ../src/ui/tools/spray-tool.cpp:739 ../src/widgets/spray-toolbar.cpp:166 msgid "Spray with copies" msgstr "" -#: ../src/ui/tools/spray-tool.cpp:735 ../src/widgets/spray-toolbar.cpp:173 +#: ../src/ui/tools/spray-tool.cpp:743 ../src/widgets/spray-toolbar.cpp:173 msgid "Spray with clones" msgstr "" -#: ../src/ui/tools/spray-tool.cpp:739 +#: ../src/ui/tools/spray-tool.cpp:747 msgid "Spray in single path" msgstr "" @@ -22042,7 +22793,7 @@ msgstr[1] "" msgid "Type text" msgstr "" -#: ../src/ui/tools/tool-base.cpp:704 +#: ../src/ui/tools/tool-base.cpp:705 msgid "<b>Space+mouse move</b> to pan canvas" msgstr "" @@ -22114,63 +22865,67 @@ msgid "" "%s. Drag or click to <b>increase blur</b>; with Shift to <b>decrease</b>." msgstr "" -#: ../src/ui/tools/tweak-tool.cpp:1193 +#: ../src/ui/tools/tweak-tool.cpp:1205 msgid "<b>Nothing selected!</b> Select objects to tweak." msgstr "" -#: ../src/ui/tools/tweak-tool.cpp:1227 +#: ../src/ui/tools/tweak-tool.cpp:1239 msgid "Move tweak" msgstr "" -#: ../src/ui/tools/tweak-tool.cpp:1231 +#: ../src/ui/tools/tweak-tool.cpp:1243 msgid "Move in/out tweak" msgstr "" -#: ../src/ui/tools/tweak-tool.cpp:1235 +#: ../src/ui/tools/tweak-tool.cpp:1247 msgid "Move jitter tweak" msgstr "" -#: ../src/ui/tools/tweak-tool.cpp:1239 +#: ../src/ui/tools/tweak-tool.cpp:1251 msgid "Scale tweak" msgstr "" -#: ../src/ui/tools/tweak-tool.cpp:1243 +#: ../src/ui/tools/tweak-tool.cpp:1255 msgid "Rotate tweak" msgstr "" -#: ../src/ui/tools/tweak-tool.cpp:1247 +#: ../src/ui/tools/tweak-tool.cpp:1259 msgid "Duplicate/delete tweak" msgstr "" -#: ../src/ui/tools/tweak-tool.cpp:1251 +#: ../src/ui/tools/tweak-tool.cpp:1263 msgid "Push path tweak" msgstr "" -#: ../src/ui/tools/tweak-tool.cpp:1255 +#: ../src/ui/tools/tweak-tool.cpp:1267 msgid "Shrink/grow path tweak" msgstr "" -#: ../src/ui/tools/tweak-tool.cpp:1259 +#: ../src/ui/tools/tweak-tool.cpp:1271 msgid "Attract/repel path tweak" msgstr "" -#: ../src/ui/tools/tweak-tool.cpp:1263 +#: ../src/ui/tools/tweak-tool.cpp:1275 msgid "Roughen path tweak" msgstr "" -#: ../src/ui/tools/tweak-tool.cpp:1267 +#: ../src/ui/tools/tweak-tool.cpp:1279 msgid "Color paint tweak" msgstr "" -#: ../src/ui/tools/tweak-tool.cpp:1271 +#: ../src/ui/tools/tweak-tool.cpp:1283 msgid "Color jitter tweak" msgstr "" -#: ../src/ui/tools/tweak-tool.cpp:1275 +#: ../src/ui/tools/tweak-tool.cpp:1287 msgid "Blur tweak" msgstr "" -#: ../src/ui/widget/filter-effect-chooser.cpp:27 +#: ../src/ui/widget/filter-effect-chooser.cpp:26 +msgid "_Blur:" +msgstr "" + +#: ../src/ui/widget/filter-effect-chooser.cpp:29 msgid "Blur (%)" msgstr "" @@ -22199,8 +22954,8 @@ msgid "MetadataLicence|Other" msgstr "" #: ../src/ui/widget/object-composite-settings.cpp:67 -#: ../src/ui/widget/selected-style.cpp:1099 -#: ../src/ui/widget/selected-style.cpp:1100 +#: ../src/ui/widget/selected-style.cpp:1120 +#: ../src/ui/widget/selected-style.cpp:1121 msgid "Opacity (%)" msgstr "" @@ -22209,8 +22964,8 @@ msgid "Change blur" msgstr "" #: ../src/ui/widget/object-composite-settings.cpp:220 -#: ../src/ui/widget/selected-style.cpp:931 -#: ../src/ui/widget/selected-style.cpp:1227 +#: ../src/ui/widget/selected-style.cpp:944 +#: ../src/ui/widget/selected-style.cpp:1248 msgid "Change opacity" msgstr "" @@ -22431,284 +23186,296 @@ msgid "" "will be rendered exactly as displayed." msgstr "" -#: ../src/ui/widget/selected-style.cpp:130 +#: ../src/ui/widget/selected-style.cpp:131 #: ../src/ui/widget/style-swatch.cpp:127 msgid "Fill:" msgstr "" -#: ../src/ui/widget/selected-style.cpp:132 +#: ../src/ui/widget/selected-style.cpp:133 msgid "O:" msgstr "" -#: ../src/ui/widget/selected-style.cpp:177 +#: ../src/ui/widget/selected-style.cpp:178 msgid "N/A" msgstr "" -#: ../src/ui/widget/selected-style.cpp:180 -#: ../src/ui/widget/selected-style.cpp:1092 -#: ../src/ui/widget/selected-style.cpp:1093 +#: ../src/ui/widget/selected-style.cpp:181 +#: ../src/ui/widget/selected-style.cpp:1113 +#: ../src/ui/widget/selected-style.cpp:1114 #: ../src/widgets/gradient-toolbar.cpp:162 msgid "Nothing selected" msgstr "" -#: ../src/ui/widget/selected-style.cpp:183 +#: ../src/ui/widget/selected-style.cpp:184 msgctxt "Fill" msgid "<i>None</i>" msgstr "" -#: ../src/ui/widget/selected-style.cpp:185 +#: ../src/ui/widget/selected-style.cpp:186 msgctxt "Stroke" msgid "<i>None</i>" msgstr "" -#: ../src/ui/widget/selected-style.cpp:189 +#: ../src/ui/widget/selected-style.cpp:190 #: ../src/ui/widget/style-swatch.cpp:322 msgctxt "Fill and stroke" msgid "No fill" msgstr "" -#: ../src/ui/widget/selected-style.cpp:189 +#: ../src/ui/widget/selected-style.cpp:190 #: ../src/ui/widget/style-swatch.cpp:322 msgctxt "Fill and stroke" msgid "No stroke" msgstr "" -#: ../src/ui/widget/selected-style.cpp:191 -#: ../src/ui/widget/style-swatch.cpp:301 ../src/widgets/paint-selector.cpp:242 +#: ../src/ui/widget/selected-style.cpp:192 +#: ../src/ui/widget/style-swatch.cpp:301 ../src/widgets/paint-selector.cpp:234 msgid "Pattern" msgstr "" -#: ../src/ui/widget/selected-style.cpp:194 +#: ../src/ui/widget/selected-style.cpp:195 #: ../src/ui/widget/style-swatch.cpp:303 msgid "Pattern fill" msgstr "" -#: ../src/ui/widget/selected-style.cpp:194 +#: ../src/ui/widget/selected-style.cpp:195 #: ../src/ui/widget/style-swatch.cpp:303 msgid "Pattern stroke" msgstr "" -#: ../src/ui/widget/selected-style.cpp:196 +#: ../src/ui/widget/selected-style.cpp:197 msgid "<b>L</b>" msgstr "" -#: ../src/ui/widget/selected-style.cpp:199 +#: ../src/ui/widget/selected-style.cpp:200 #: ../src/ui/widget/style-swatch.cpp:295 msgid "Linear gradient fill" msgstr "" -#: ../src/ui/widget/selected-style.cpp:199 +#: ../src/ui/widget/selected-style.cpp:200 #: ../src/ui/widget/style-swatch.cpp:295 msgid "Linear gradient stroke" msgstr "" -#: ../src/ui/widget/selected-style.cpp:206 +#: ../src/ui/widget/selected-style.cpp:207 msgid "<b>R</b>" msgstr "" -#: ../src/ui/widget/selected-style.cpp:209 +#: ../src/ui/widget/selected-style.cpp:210 #: ../src/ui/widget/style-swatch.cpp:299 msgid "Radial gradient fill" msgstr "" -#: ../src/ui/widget/selected-style.cpp:209 +#: ../src/ui/widget/selected-style.cpp:210 #: ../src/ui/widget/style-swatch.cpp:299 msgid "Radial gradient stroke" msgstr "" -#: ../src/ui/widget/selected-style.cpp:216 +#: ../src/ui/widget/selected-style.cpp:218 +msgid "<b>M</b>" +msgstr "" + +#: ../src/ui/widget/selected-style.cpp:221 +msgid "Mesh gradient fill" +msgstr "" + +#: ../src/ui/widget/selected-style.cpp:221 +msgid "Mesh gradient stroke" +msgstr "" + +#: ../src/ui/widget/selected-style.cpp:229 msgid "Different" msgstr "" -#: ../src/ui/widget/selected-style.cpp:219 +#: ../src/ui/widget/selected-style.cpp:232 msgid "Different fills" msgstr "" -#: ../src/ui/widget/selected-style.cpp:219 +#: ../src/ui/widget/selected-style.cpp:232 msgid "Different strokes" msgstr "" -#: ../src/ui/widget/selected-style.cpp:221 +#: ../src/ui/widget/selected-style.cpp:234 #: ../src/ui/widget/style-swatch.cpp:325 msgid "<b>Unset</b>" msgstr "" #. TRANSLATORS COMMENT: unset is a verb here -#: ../src/ui/widget/selected-style.cpp:224 -#: ../src/ui/widget/selected-style.cpp:282 -#: ../src/ui/widget/selected-style.cpp:563 +#: ../src/ui/widget/selected-style.cpp:237 +#: ../src/ui/widget/selected-style.cpp:295 +#: ../src/ui/widget/selected-style.cpp:576 #: ../src/ui/widget/style-swatch.cpp:327 ../src/widgets/fill-style.cpp:712 msgid "Unset fill" msgstr "" -#: ../src/ui/widget/selected-style.cpp:224 -#: ../src/ui/widget/selected-style.cpp:282 -#: ../src/ui/widget/selected-style.cpp:579 +#: ../src/ui/widget/selected-style.cpp:237 +#: ../src/ui/widget/selected-style.cpp:295 +#: ../src/ui/widget/selected-style.cpp:592 #: ../src/ui/widget/style-swatch.cpp:327 ../src/widgets/fill-style.cpp:712 msgid "Unset stroke" msgstr "" -#: ../src/ui/widget/selected-style.cpp:227 +#: ../src/ui/widget/selected-style.cpp:240 msgid "Flat color fill" msgstr "" -#: ../src/ui/widget/selected-style.cpp:227 +#: ../src/ui/widget/selected-style.cpp:240 msgid "Flat color stroke" msgstr "" #. TRANSLATOR COMMENT: A means "Averaged" -#: ../src/ui/widget/selected-style.cpp:230 +#: ../src/ui/widget/selected-style.cpp:243 msgid "<b>a</b>" msgstr "" -#: ../src/ui/widget/selected-style.cpp:233 +#: ../src/ui/widget/selected-style.cpp:246 msgid "Fill is averaged over selected objects" msgstr "" -#: ../src/ui/widget/selected-style.cpp:233 +#: ../src/ui/widget/selected-style.cpp:246 msgid "Stroke is averaged over selected objects" msgstr "" #. TRANSLATOR COMMENT: M means "Multiple" -#: ../src/ui/widget/selected-style.cpp:236 +#: ../src/ui/widget/selected-style.cpp:249 msgid "<b>m</b>" msgstr "" -#: ../src/ui/widget/selected-style.cpp:239 +#: ../src/ui/widget/selected-style.cpp:252 msgid "Multiple selected objects have the same fill" msgstr "" -#: ../src/ui/widget/selected-style.cpp:239 +#: ../src/ui/widget/selected-style.cpp:252 msgid "Multiple selected objects have the same stroke" msgstr "" -#: ../src/ui/widget/selected-style.cpp:241 +#: ../src/ui/widget/selected-style.cpp:254 msgid "Edit fill..." msgstr "" -#: ../src/ui/widget/selected-style.cpp:241 +#: ../src/ui/widget/selected-style.cpp:254 msgid "Edit stroke..." msgstr "" -#: ../src/ui/widget/selected-style.cpp:245 +#: ../src/ui/widget/selected-style.cpp:258 msgid "Last set color" msgstr "" -#: ../src/ui/widget/selected-style.cpp:249 +#: ../src/ui/widget/selected-style.cpp:262 msgid "Last selected color" msgstr "" -#: ../src/ui/widget/selected-style.cpp:265 +#: ../src/ui/widget/selected-style.cpp:278 msgid "Copy color" msgstr "" -#: ../src/ui/widget/selected-style.cpp:269 +#: ../src/ui/widget/selected-style.cpp:282 msgid "Paste color" msgstr "" -#: ../src/ui/widget/selected-style.cpp:273 -#: ../src/ui/widget/selected-style.cpp:856 +#: ../src/ui/widget/selected-style.cpp:286 +#: ../src/ui/widget/selected-style.cpp:869 msgid "Swap fill and stroke" msgstr "" -#: ../src/ui/widget/selected-style.cpp:277 -#: ../src/ui/widget/selected-style.cpp:588 -#: ../src/ui/widget/selected-style.cpp:597 +#: ../src/ui/widget/selected-style.cpp:290 +#: ../src/ui/widget/selected-style.cpp:601 +#: ../src/ui/widget/selected-style.cpp:610 msgid "Make fill opaque" msgstr "" -#: ../src/ui/widget/selected-style.cpp:277 +#: ../src/ui/widget/selected-style.cpp:290 msgid "Make stroke opaque" msgstr "" -#: ../src/ui/widget/selected-style.cpp:286 -#: ../src/ui/widget/selected-style.cpp:545 ../src/widgets/fill-style.cpp:510 +#: ../src/ui/widget/selected-style.cpp:299 +#: ../src/ui/widget/selected-style.cpp:558 ../src/widgets/fill-style.cpp:510 msgid "Remove fill" msgstr "" -#: ../src/ui/widget/selected-style.cpp:286 -#: ../src/ui/widget/selected-style.cpp:554 ../src/widgets/fill-style.cpp:510 +#: ../src/ui/widget/selected-style.cpp:299 +#: ../src/ui/widget/selected-style.cpp:567 ../src/widgets/fill-style.cpp:510 msgid "Remove stroke" msgstr "" -#: ../src/ui/widget/selected-style.cpp:609 +#: ../src/ui/widget/selected-style.cpp:622 msgid "Apply last set color to fill" msgstr "" -#: ../src/ui/widget/selected-style.cpp:621 +#: ../src/ui/widget/selected-style.cpp:634 msgid "Apply last set color to stroke" msgstr "" -#: ../src/ui/widget/selected-style.cpp:632 +#: ../src/ui/widget/selected-style.cpp:645 msgid "Apply last selected color to fill" msgstr "" -#: ../src/ui/widget/selected-style.cpp:643 +#: ../src/ui/widget/selected-style.cpp:656 msgid "Apply last selected color to stroke" msgstr "" -#: ../src/ui/widget/selected-style.cpp:669 +#: ../src/ui/widget/selected-style.cpp:682 msgid "Invert fill" msgstr "" -#: ../src/ui/widget/selected-style.cpp:693 +#: ../src/ui/widget/selected-style.cpp:706 msgid "Invert stroke" msgstr "" -#: ../src/ui/widget/selected-style.cpp:705 +#: ../src/ui/widget/selected-style.cpp:718 msgid "White fill" msgstr "" -#: ../src/ui/widget/selected-style.cpp:717 +#: ../src/ui/widget/selected-style.cpp:730 msgid "White stroke" msgstr "" -#: ../src/ui/widget/selected-style.cpp:729 +#: ../src/ui/widget/selected-style.cpp:742 msgid "Black fill" msgstr "" -#: ../src/ui/widget/selected-style.cpp:741 +#: ../src/ui/widget/selected-style.cpp:754 msgid "Black stroke" msgstr "" -#: ../src/ui/widget/selected-style.cpp:784 +#: ../src/ui/widget/selected-style.cpp:797 msgid "Paste fill" msgstr "" -#: ../src/ui/widget/selected-style.cpp:802 +#: ../src/ui/widget/selected-style.cpp:815 msgid "Paste stroke" msgstr "" -#: ../src/ui/widget/selected-style.cpp:958 +#: ../src/ui/widget/selected-style.cpp:971 msgid "Change stroke width" msgstr "" -#: ../src/ui/widget/selected-style.cpp:1053 +#: ../src/ui/widget/selected-style.cpp:1074 msgid ", drag to adjust" msgstr "" -#: ../src/ui/widget/selected-style.cpp:1138 +#: ../src/ui/widget/selected-style.cpp:1159 #, c-format msgid "Stroke width: %.5g%s%s" msgstr "" -#: ../src/ui/widget/selected-style.cpp:1142 +#: ../src/ui/widget/selected-style.cpp:1163 msgid " (averaged)" msgstr "" -#: ../src/ui/widget/selected-style.cpp:1170 +#: ../src/ui/widget/selected-style.cpp:1191 msgid "0 (transparent)" msgstr "" -#: ../src/ui/widget/selected-style.cpp:1194 +#: ../src/ui/widget/selected-style.cpp:1215 msgid "100% (opaque)" msgstr "" -#: ../src/ui/widget/selected-style.cpp:1368 +#: ../src/ui/widget/selected-style.cpp:1389 msgid "Adjust alpha" msgstr "" -#: ../src/ui/widget/selected-style.cpp:1370 +#: ../src/ui/widget/selected-style.cpp:1391 #, c-format msgid "" "Adjusting <b>alpha</b>: was %.3g, now <b>%.3g</b> (diff %.3g); with <b>Ctrl</" @@ -22716,11 +23483,11 @@ msgid "" "modifiers to adjust hue" msgstr "" -#: ../src/ui/widget/selected-style.cpp:1374 +#: ../src/ui/widget/selected-style.cpp:1395 msgid "Adjust saturation" msgstr "" -#: ../src/ui/widget/selected-style.cpp:1376 +#: ../src/ui/widget/selected-style.cpp:1397 #, c-format msgid "" "Adjusting <b>saturation</b>: was %.3g, now <b>%.3g</b> (diff %.3g); with " @@ -22728,11 +23495,11 @@ msgid "" "modifiers to adjust hue" msgstr "" -#: ../src/ui/widget/selected-style.cpp:1380 +#: ../src/ui/widget/selected-style.cpp:1401 msgid "Adjust lightness" msgstr "" -#: ../src/ui/widget/selected-style.cpp:1382 +#: ../src/ui/widget/selected-style.cpp:1403 #, c-format msgid "" "Adjusting <b>lightness</b>: was %.3g, now <b>%.3g</b> (diff %.3g); with " @@ -22740,11 +23507,11 @@ msgid "" "modifiers to adjust hue" msgstr "" -#: ../src/ui/widget/selected-style.cpp:1386 +#: ../src/ui/widget/selected-style.cpp:1407 msgid "Adjust hue" msgstr "" -#: ../src/ui/widget/selected-style.cpp:1388 +#: ../src/ui/widget/selected-style.cpp:1409 #, c-format msgid "" "Adjusting <b>hue</b>: was %.3g, now <b>%.3g</b> (diff %.3g); with <b>Shift</" @@ -22752,12 +23519,12 @@ msgid "" "to adjust lightness" msgstr "" -#: ../src/ui/widget/selected-style.cpp:1506 -#: ../src/ui/widget/selected-style.cpp:1520 +#: ../src/ui/widget/selected-style.cpp:1527 +#: ../src/ui/widget/selected-style.cpp:1541 msgid "Adjust stroke width" msgstr "" -#: ../src/ui/widget/selected-style.cpp:1507 +#: ../src/ui/widget/selected-style.cpp:1528 #, c-format msgid "Adjusting <b>stroke width</b>: was %.3g, now <b>%.3g</b> (diff %.3g)" msgstr "" @@ -22806,15 +23573,15 @@ msgstr "" msgid "Opacity: %2.1f %%" msgstr "" -#: ../src/vanishing-point.cpp:132 +#: ../src/vanishing-point.cpp:133 msgid "Split vanishing points" msgstr "" -#: ../src/vanishing-point.cpp:177 +#: ../src/vanishing-point.cpp:178 msgid "Merge vanishing points" msgstr "" -#: ../src/vanishing-point.cpp:243 +#: ../src/vanishing-point.cpp:244 msgid "3D box: Move vanishing point" msgstr "" @@ -22848,2399 +23615,2431 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" -#: ../src/verbs.cpp:137 +#: ../src/verbs.cpp:138 msgid "File" msgstr "" -#: ../src/verbs.cpp:232 +#: ../src/verbs.cpp:233 ../share/extensions/interp_att_g.inx.h:22 +msgid "Tag" +msgstr "" + +#: ../src/verbs.cpp:252 msgid "Context" msgstr "" -#: ../src/verbs.cpp:251 ../src/verbs.cpp:2223 +#: ../src/verbs.cpp:271 ../src/verbs.cpp:2306 #: ../share/extensions/jessyInk_view.inx.h:1 #: ../share/extensions/polyhedron_3d.inx.h:26 msgid "View" msgstr "" -#: ../src/verbs.cpp:271 +#: ../src/verbs.cpp:291 msgid "Dialog" msgstr "" -#: ../src/verbs.cpp:1227 +#: ../src/verbs.cpp:1260 msgid "Switch to next layer" msgstr "" -#: ../src/verbs.cpp:1228 +#: ../src/verbs.cpp:1261 msgid "Switched to next layer." msgstr "" -#: ../src/verbs.cpp:1230 +#: ../src/verbs.cpp:1263 msgid "Cannot go past last layer." msgstr "" -#: ../src/verbs.cpp:1239 +#: ../src/verbs.cpp:1272 msgid "Switch to previous layer" msgstr "" -#: ../src/verbs.cpp:1240 +#: ../src/verbs.cpp:1273 msgid "Switched to previous layer." msgstr "" -#: ../src/verbs.cpp:1242 +#: ../src/verbs.cpp:1275 msgid "Cannot go before first layer." msgstr "" -#: ../src/verbs.cpp:1263 ../src/verbs.cpp:1360 ../src/verbs.cpp:1396 -#: ../src/verbs.cpp:1402 ../src/verbs.cpp:1426 ../src/verbs.cpp:1441 +#: ../src/verbs.cpp:1296 ../src/verbs.cpp:1393 ../src/verbs.cpp:1429 +#: ../src/verbs.cpp:1435 ../src/verbs.cpp:1459 ../src/verbs.cpp:1474 msgid "No current layer." msgstr "" -#: ../src/verbs.cpp:1292 ../src/verbs.cpp:1296 +#: ../src/verbs.cpp:1325 ../src/verbs.cpp:1329 #, c-format msgid "Raised layer <b>%s</b>." msgstr "" -#: ../src/verbs.cpp:1293 +#: ../src/verbs.cpp:1326 msgid "Layer to top" msgstr "" -#: ../src/verbs.cpp:1297 +#: ../src/verbs.cpp:1330 msgid "Raise layer" msgstr "" -#: ../src/verbs.cpp:1300 ../src/verbs.cpp:1304 +#: ../src/verbs.cpp:1333 ../src/verbs.cpp:1337 #, c-format msgid "Lowered layer <b>%s</b>." msgstr "" -#: ../src/verbs.cpp:1301 +#: ../src/verbs.cpp:1334 msgid "Layer to bottom" msgstr "" -#: ../src/verbs.cpp:1305 +#: ../src/verbs.cpp:1338 msgid "Lower layer" msgstr "" -#: ../src/verbs.cpp:1314 +#: ../src/verbs.cpp:1347 msgid "Cannot move layer any further." msgstr "" -#: ../src/verbs.cpp:1328 ../src/verbs.cpp:1347 +#: ../src/verbs.cpp:1361 ../src/verbs.cpp:1380 #, c-format msgid "%s copy" msgstr "" -#: ../src/verbs.cpp:1355 +#: ../src/verbs.cpp:1388 msgid "Duplicate layer" msgstr "" #. TRANSLATORS: this means "The layer has been duplicated." -#: ../src/verbs.cpp:1358 +#: ../src/verbs.cpp:1391 msgid "Duplicated layer." msgstr "" -#: ../src/verbs.cpp:1391 +#: ../src/verbs.cpp:1424 msgid "Delete layer" msgstr "" #. TRANSLATORS: this means "The layer has been deleted." -#: ../src/verbs.cpp:1394 +#: ../src/verbs.cpp:1427 msgid "Deleted layer." msgstr "" -#: ../src/verbs.cpp:1411 +#: ../src/verbs.cpp:1444 msgid "Show all layers" msgstr "" -#: ../src/verbs.cpp:1416 +#: ../src/verbs.cpp:1449 msgid "Hide all layers" msgstr "" -#: ../src/verbs.cpp:1421 +#: ../src/verbs.cpp:1454 msgid "Lock all layers" msgstr "" -#: ../src/verbs.cpp:1435 +#: ../src/verbs.cpp:1468 msgid "Unlock all layers" msgstr "" -#: ../src/verbs.cpp:1519 +#: ../src/verbs.cpp:1552 msgid "Flip horizontally" msgstr "" -#: ../src/verbs.cpp:1524 +#: ../src/verbs.cpp:1557 msgid "Flip vertically" msgstr "" +#: ../src/verbs.cpp:1618 ../src/verbs.cpp:2731 +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:2105 +#: ../src/verbs.cpp:2188 msgid "tutorial-basic.svg" msgstr "" #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2109 +#: ../src/verbs.cpp:2192 msgid "tutorial-shapes.svg" msgstr "" #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2113 +#: ../src/verbs.cpp:2196 msgid "tutorial-advanced.svg" msgstr "" #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2117 +#: ../src/verbs.cpp:2200 msgid "tutorial-tracing.svg" msgstr "" -#: ../src/verbs.cpp:2120 +#: ../src/verbs.cpp:2203 msgid "tutorial-tracing-pixelart.svg" msgstr "" #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2124 +#: ../src/verbs.cpp:2207 msgid "tutorial-calligraphy.svg" msgstr "" #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2128 +#: ../src/verbs.cpp:2211 msgid "tutorial-interpolate.svg" msgstr "" #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2132 +#: ../src/verbs.cpp:2215 msgid "tutorial-elements.svg" msgstr "" #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2136 +#: ../src/verbs.cpp:2219 msgid "tutorial-tips.svg" msgstr "" -#: ../src/verbs.cpp:2322 ../src/verbs.cpp:2913 +#: ../src/verbs.cpp:2405 ../src/verbs.cpp:3004 msgid "Unlock all objects in the current layer" msgstr "" -#: ../src/verbs.cpp:2326 ../src/verbs.cpp:2915 +#: ../src/verbs.cpp:2409 ../src/verbs.cpp:3006 msgid "Unlock all objects in all layers" msgstr "" -#: ../src/verbs.cpp:2330 ../src/verbs.cpp:2917 +#: ../src/verbs.cpp:2413 ../src/verbs.cpp:3008 msgid "Unhide all objects in the current layer" msgstr "" -#: ../src/verbs.cpp:2334 ../src/verbs.cpp:2919 +#: ../src/verbs.cpp:2417 ../src/verbs.cpp:3010 msgid "Unhide all objects in all layers" msgstr "" -#: ../src/verbs.cpp:2349 +#: ../src/verbs.cpp:2432 msgctxt "Verb" msgid "None" msgstr "" -#: ../src/verbs.cpp:2349 +#: ../src/verbs.cpp:2432 msgid "Does nothing" msgstr "" -#: ../src/verbs.cpp:2352 +#: ../src/verbs.cpp:2435 msgid "Create new document from the default template" msgstr "" -#: ../src/verbs.cpp:2354 +#: ../src/verbs.cpp:2437 msgid "_Open..." msgstr "" -#: ../src/verbs.cpp:2355 +#: ../src/verbs.cpp:2438 msgid "Open an existing document" msgstr "" -#: ../src/verbs.cpp:2356 +#: ../src/verbs.cpp:2439 msgid "Re_vert" msgstr "" -#: ../src/verbs.cpp:2357 +#: ../src/verbs.cpp:2440 msgid "Revert to the last saved version of document (changes will be lost)" msgstr "" -#: ../src/verbs.cpp:2358 +#: ../src/verbs.cpp:2441 msgid "Save document" msgstr "" -#: ../src/verbs.cpp:2360 +#: ../src/verbs.cpp:2443 msgid "Save _As..." msgstr "" -#: ../src/verbs.cpp:2361 +#: ../src/verbs.cpp:2444 msgid "Save document under a new name" msgstr "" -#: ../src/verbs.cpp:2362 +#: ../src/verbs.cpp:2445 msgid "Save a Cop_y..." msgstr "" -#: ../src/verbs.cpp:2363 +#: ../src/verbs.cpp:2446 msgid "Save a copy of the document under a new name" msgstr "" -#: ../src/verbs.cpp:2364 +#: ../src/verbs.cpp:2447 msgid "_Print..." msgstr "" -#: ../src/verbs.cpp:2364 +#: ../src/verbs.cpp:2447 msgid "Print document" msgstr "" #. TRANSLATORS: "Vacuum Defs" means "Clean up defs" (so as to remove unused definitions) -#: ../src/verbs.cpp:2367 +#: ../src/verbs.cpp:2450 msgid "Clean _up document" msgstr "" -#: ../src/verbs.cpp:2367 +#: ../src/verbs.cpp:2450 msgid "" "Remove unused definitions (such as gradients or clipping paths) from the <" "defs> of the document" msgstr "" -#: ../src/verbs.cpp:2369 +#: ../src/verbs.cpp:2452 msgid "_Import..." msgstr "" -#: ../src/verbs.cpp:2370 +#: ../src/verbs.cpp:2453 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:2372 +#: ../src/verbs.cpp:2455 msgid "Import Clip Art..." msgstr "" -#: ../src/verbs.cpp:2373 +#: ../src/verbs.cpp:2456 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:2375 +#: ../src/verbs.cpp:2458 msgid "N_ext Window" msgstr "" -#: ../src/verbs.cpp:2376 +#: ../src/verbs.cpp:2459 msgid "Switch to the next document window" msgstr "" -#: ../src/verbs.cpp:2377 +#: ../src/verbs.cpp:2460 msgid "P_revious Window" msgstr "" -#: ../src/verbs.cpp:2378 +#: ../src/verbs.cpp:2461 msgid "Switch to the previous document window" msgstr "" -#: ../src/verbs.cpp:2379 +#: ../src/verbs.cpp:2462 msgid "_Close" msgstr "" -#: ../src/verbs.cpp:2380 +#: ../src/verbs.cpp:2463 msgid "Close this document window" msgstr "" -#: ../src/verbs.cpp:2381 +#: ../src/verbs.cpp:2464 msgid "_Quit" msgstr "" -#: ../src/verbs.cpp:2381 +#: ../src/verbs.cpp:2464 msgid "Quit Inkscape" msgstr "" -#: ../src/verbs.cpp:2382 +#: ../src/verbs.cpp:2465 msgid "_Templates..." msgstr "" -#: ../src/verbs.cpp:2383 +#: ../src/verbs.cpp:2466 msgid "Create new project from template" msgstr "" -#: ../src/verbs.cpp:2386 +#: ../src/verbs.cpp:2469 msgid "Undo last action" msgstr "" -#: ../src/verbs.cpp:2389 +#: ../src/verbs.cpp:2472 msgid "Do again the last undone action" msgstr "" -#: ../src/verbs.cpp:2390 +#: ../src/verbs.cpp:2473 msgid "Cu_t" msgstr "" -#: ../src/verbs.cpp:2391 +#: ../src/verbs.cpp:2474 msgid "Cut selection to clipboard" msgstr "" -#: ../src/verbs.cpp:2392 +#: ../src/verbs.cpp:2475 msgid "_Copy" msgstr "" -#: ../src/verbs.cpp:2393 +#: ../src/verbs.cpp:2476 msgid "Copy selection to clipboard" msgstr "" -#: ../src/verbs.cpp:2394 +#: ../src/verbs.cpp:2477 msgid "_Paste" msgstr "" -#: ../src/verbs.cpp:2395 +#: ../src/verbs.cpp:2478 msgid "Paste objects from clipboard to mouse point, or paste text" msgstr "" -#: ../src/verbs.cpp:2396 +#: ../src/verbs.cpp:2479 msgid "Paste _Style" msgstr "" -#: ../src/verbs.cpp:2397 +#: ../src/verbs.cpp:2480 msgid "Apply the style of the copied object to selection" msgstr "" -#: ../src/verbs.cpp:2399 +#: ../src/verbs.cpp:2482 msgid "Scale selection to match the size of the copied object" msgstr "" -#: ../src/verbs.cpp:2400 +#: ../src/verbs.cpp:2483 msgid "Paste _Width" msgstr "" -#: ../src/verbs.cpp:2401 +#: ../src/verbs.cpp:2484 msgid "Scale selection horizontally to match the width of the copied object" msgstr "" -#: ../src/verbs.cpp:2402 +#: ../src/verbs.cpp:2485 msgid "Paste _Height" msgstr "" -#: ../src/verbs.cpp:2403 +#: ../src/verbs.cpp:2486 msgid "Scale selection vertically to match the height of the copied object" msgstr "" -#: ../src/verbs.cpp:2404 +#: ../src/verbs.cpp:2487 msgid "Paste Size Separately" msgstr "" -#: ../src/verbs.cpp:2405 +#: ../src/verbs.cpp:2488 msgid "Scale each selected object to match the size of the copied object" msgstr "" -#: ../src/verbs.cpp:2406 +#: ../src/verbs.cpp:2489 msgid "Paste Width Separately" msgstr "" -#: ../src/verbs.cpp:2407 +#: ../src/verbs.cpp:2490 msgid "" "Scale each selected object horizontally to match the width of the copied " "object" msgstr "" -#: ../src/verbs.cpp:2408 +#: ../src/verbs.cpp:2491 msgid "Paste Height Separately" msgstr "" -#: ../src/verbs.cpp:2409 +#: ../src/verbs.cpp:2492 msgid "" "Scale each selected object vertically to match the height of the copied " "object" msgstr "" -#: ../src/verbs.cpp:2410 +#: ../src/verbs.cpp:2493 msgid "Paste _In Place" msgstr "" -#: ../src/verbs.cpp:2411 +#: ../src/verbs.cpp:2494 msgid "Paste objects from clipboard to the original location" msgstr "" -#: ../src/verbs.cpp:2412 +#: ../src/verbs.cpp:2495 msgid "Paste Path _Effect" msgstr "" -#: ../src/verbs.cpp:2413 +#: ../src/verbs.cpp:2496 msgid "Apply the path effect of the copied object to selection" msgstr "" -#: ../src/verbs.cpp:2414 +#: ../src/verbs.cpp:2497 msgid "Remove Path _Effect" msgstr "" -#: ../src/verbs.cpp:2415 +#: ../src/verbs.cpp:2498 msgid "Remove any path effects from selected objects" msgstr "" -#: ../src/verbs.cpp:2416 +#: ../src/verbs.cpp:2499 msgid "_Remove Filters" msgstr "" -#: ../src/verbs.cpp:2417 +#: ../src/verbs.cpp:2500 msgid "Remove any filters from selected objects" msgstr "" -#: ../src/verbs.cpp:2418 +#: ../src/verbs.cpp:2501 msgid "_Delete" msgstr "" -#: ../src/verbs.cpp:2419 +#: ../src/verbs.cpp:2502 msgid "Delete selection" msgstr "" -#: ../src/verbs.cpp:2420 +#: ../src/verbs.cpp:2503 msgid "Duplic_ate" msgstr "" -#: ../src/verbs.cpp:2421 +#: ../src/verbs.cpp:2504 msgid "Duplicate selected objects" msgstr "" -#: ../src/verbs.cpp:2422 +#: ../src/verbs.cpp:2505 msgid "Create Clo_ne" msgstr "" -#: ../src/verbs.cpp:2423 +#: ../src/verbs.cpp:2506 msgid "Create a clone (a copy linked to the original) of selected object" msgstr "" -#: ../src/verbs.cpp:2424 +#: ../src/verbs.cpp:2507 msgid "Unlin_k Clone" msgstr "" -#: ../src/verbs.cpp:2425 +#: ../src/verbs.cpp:2508 msgid "" "Cut the selected clones' links to the originals, turning them into " "standalone objects" msgstr "" -#: ../src/verbs.cpp:2426 +#: ../src/verbs.cpp:2509 msgid "Relink to Copied" msgstr "" -#: ../src/verbs.cpp:2427 +#: ../src/verbs.cpp:2510 msgid "Relink the selected clones to the object currently on the clipboard" msgstr "" -#: ../src/verbs.cpp:2428 +#: ../src/verbs.cpp:2511 msgid "Select _Original" msgstr "" -#: ../src/verbs.cpp:2429 +#: ../src/verbs.cpp:2512 msgid "Select the object to which the selected clone is linked" msgstr "" -#: ../src/verbs.cpp:2430 +#: ../src/verbs.cpp:2513 msgid "Clone original path (LPE)" msgstr "" -#: ../src/verbs.cpp:2431 +#: ../src/verbs.cpp:2514 msgid "" "Creates a new path, applies the Clone original LPE, and refers it to the " "selected path" msgstr "" -#: ../src/verbs.cpp:2432 +#: ../src/verbs.cpp:2515 msgid "Objects to _Marker" msgstr "" -#: ../src/verbs.cpp:2433 +#: ../src/verbs.cpp:2516 msgid "Convert selection to a line marker" msgstr "" -#: ../src/verbs.cpp:2434 +#: ../src/verbs.cpp:2517 msgid "Objects to Gu_ides" msgstr "" -#: ../src/verbs.cpp:2435 +#: ../src/verbs.cpp:2518 msgid "" "Convert selected objects to a collection of guidelines aligned with their " "edges" msgstr "" -#: ../src/verbs.cpp:2436 +#: ../src/verbs.cpp:2519 msgid "Objects to Patter_n" msgstr "" -#: ../src/verbs.cpp:2437 +#: ../src/verbs.cpp:2520 msgid "Convert selection to a rectangle with tiled pattern fill" msgstr "" -#: ../src/verbs.cpp:2438 +#: ../src/verbs.cpp:2521 msgid "Pattern to _Objects" msgstr "" -#: ../src/verbs.cpp:2439 +#: ../src/verbs.cpp:2522 msgid "Extract objects from a tiled pattern fill" msgstr "" -#: ../src/verbs.cpp:2440 +#: ../src/verbs.cpp:2523 msgid "Group to Symbol" msgstr "" -#: ../src/verbs.cpp:2441 +#: ../src/verbs.cpp:2524 msgid "Convert group to a symbol" msgstr "" -#: ../src/verbs.cpp:2442 +#: ../src/verbs.cpp:2525 msgid "Symbol to Group" msgstr "" -#: ../src/verbs.cpp:2443 +#: ../src/verbs.cpp:2526 msgid "Extract group from a symbol" msgstr "" -#: ../src/verbs.cpp:2444 +#: ../src/verbs.cpp:2527 msgid "Clea_r All" msgstr "" -#: ../src/verbs.cpp:2445 +#: ../src/verbs.cpp:2528 msgid "Delete all objects from document" msgstr "" -#: ../src/verbs.cpp:2446 +#: ../src/verbs.cpp:2529 msgid "Select Al_l" msgstr "" -#: ../src/verbs.cpp:2447 +#: ../src/verbs.cpp:2530 msgid "Select all objects or all nodes" msgstr "" -#: ../src/verbs.cpp:2448 +#: ../src/verbs.cpp:2531 msgid "Select All in All La_yers" msgstr "" -#: ../src/verbs.cpp:2449 +#: ../src/verbs.cpp:2532 msgid "Select all objects in all visible and unlocked layers" msgstr "" -#: ../src/verbs.cpp:2450 +#: ../src/verbs.cpp:2533 msgid "Fill _and Stroke" msgstr "" -#: ../src/verbs.cpp:2451 +#: ../src/verbs.cpp:2534 msgid "" "Select all objects with the same fill and stroke as the selected objects" msgstr "" -#: ../src/verbs.cpp:2452 +#: ../src/verbs.cpp:2535 msgid "_Fill Color" msgstr "" -#: ../src/verbs.cpp:2453 +#: ../src/verbs.cpp:2536 msgid "Select all objects with the same fill as the selected objects" msgstr "" -#: ../src/verbs.cpp:2454 +#: ../src/verbs.cpp:2537 msgid "_Stroke Color" msgstr "" -#: ../src/verbs.cpp:2455 +#: ../src/verbs.cpp:2538 msgid "Select all objects with the same stroke as the selected objects" msgstr "" -#: ../src/verbs.cpp:2456 +#: ../src/verbs.cpp:2539 msgid "Stroke St_yle" msgstr "" -#: ../src/verbs.cpp:2457 +#: ../src/verbs.cpp:2540 msgid "" "Select all objects with the same stroke style (width, dash, markers) as the " "selected objects" msgstr "" -#: ../src/verbs.cpp:2458 +#: ../src/verbs.cpp:2541 msgid "_Object Type" msgstr "" -#: ../src/verbs.cpp:2459 +#: ../src/verbs.cpp:2542 msgid "" "Select all objects with the same object type (rect, arc, text, path, bitmap " "etc) as the selected objects" msgstr "" -#: ../src/verbs.cpp:2460 +#: ../src/verbs.cpp:2543 msgid "In_vert Selection" msgstr "" -#: ../src/verbs.cpp:2461 +#: ../src/verbs.cpp:2544 msgid "Invert selection (unselect what is selected and select everything else)" msgstr "" -#: ../src/verbs.cpp:2462 +#: ../src/verbs.cpp:2545 msgid "Invert in All Layers" msgstr "" -#: ../src/verbs.cpp:2463 +#: ../src/verbs.cpp:2546 msgid "Invert selection in all visible and unlocked layers" msgstr "" -#: ../src/verbs.cpp:2464 +#: ../src/verbs.cpp:2547 msgid "Select Next" msgstr "" -#: ../src/verbs.cpp:2465 +#: ../src/verbs.cpp:2548 msgid "Select next object or node" msgstr "" -#: ../src/verbs.cpp:2466 +#: ../src/verbs.cpp:2549 msgid "Select Previous" msgstr "" -#: ../src/verbs.cpp:2467 +#: ../src/verbs.cpp:2550 msgid "Select previous object or node" msgstr "" -#: ../src/verbs.cpp:2468 +#: ../src/verbs.cpp:2551 msgid "D_eselect" msgstr "" -#: ../src/verbs.cpp:2469 +#: ../src/verbs.cpp:2552 msgid "Deselect any selected objects or nodes" msgstr "" -#: ../src/verbs.cpp:2471 +#: ../src/verbs.cpp:2554 msgid "Delete all the guides in the document" msgstr "" -#: ../src/verbs.cpp:2472 +#: ../src/verbs.cpp:2555 msgid "Create _Guides Around the Page" msgstr "" -#: ../src/verbs.cpp:2473 +#: ../src/verbs.cpp:2556 msgid "Create four guides aligned with the page borders" msgstr "" -#: ../src/verbs.cpp:2474 +#: ../src/verbs.cpp:2557 msgid "Next path effect parameter" msgstr "" -#: ../src/verbs.cpp:2475 +#: ../src/verbs.cpp:2558 msgid "Show next editable path effect parameter" msgstr "" #. Selection -#: ../src/verbs.cpp:2478 +#: ../src/verbs.cpp:2561 msgid "Raise to _Top" msgstr "" -#: ../src/verbs.cpp:2479 +#: ../src/verbs.cpp:2562 msgid "Raise selection to top" msgstr "" -#: ../src/verbs.cpp:2480 +#: ../src/verbs.cpp:2563 msgid "Lower to _Bottom" msgstr "" -#: ../src/verbs.cpp:2481 +#: ../src/verbs.cpp:2564 msgid "Lower selection to bottom" msgstr "" -#: ../src/verbs.cpp:2482 +#: ../src/verbs.cpp:2565 msgid "_Raise" msgstr "" -#: ../src/verbs.cpp:2483 +#: ../src/verbs.cpp:2566 msgid "Raise selection one step" msgstr "" -#: ../src/verbs.cpp:2484 +#: ../src/verbs.cpp:2567 msgid "_Lower" msgstr "" -#: ../src/verbs.cpp:2485 +#: ../src/verbs.cpp:2568 msgid "Lower selection one step" msgstr "" -#: ../src/verbs.cpp:2487 +#: ../src/verbs.cpp:2570 msgid "Group selected objects" msgstr "" -#: ../src/verbs.cpp:2489 +#: ../src/verbs.cpp:2572 msgid "Ungroup selected groups" msgstr "" -#: ../src/verbs.cpp:2491 +#: ../src/verbs.cpp:2574 msgid "_Put on Path" msgstr "" -#: ../src/verbs.cpp:2493 +#: ../src/verbs.cpp:2576 msgid "_Remove from Path" msgstr "" -#: ../src/verbs.cpp:2495 +#: ../src/verbs.cpp:2578 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:2498 +#: ../src/verbs.cpp:2581 msgid "Remove all manual kerns and glyph rotations from a text object" msgstr "" -#: ../src/verbs.cpp:2500 +#: ../src/verbs.cpp:2583 msgid "_Union" msgstr "" -#: ../src/verbs.cpp:2501 +#: ../src/verbs.cpp:2584 msgid "Create union of selected paths" msgstr "" -#: ../src/verbs.cpp:2502 +#: ../src/verbs.cpp:2585 msgid "_Intersection" msgstr "" -#: ../src/verbs.cpp:2503 +#: ../src/verbs.cpp:2586 msgid "Create intersection of selected paths" msgstr "" -#: ../src/verbs.cpp:2504 +#: ../src/verbs.cpp:2587 msgid "_Difference" msgstr "" -#: ../src/verbs.cpp:2505 +#: ../src/verbs.cpp:2588 msgid "Create difference of selected paths (bottom minus top)" msgstr "" -#: ../src/verbs.cpp:2506 +#: ../src/verbs.cpp:2589 msgid "E_xclusion" msgstr "" -#: ../src/verbs.cpp:2507 +#: ../src/verbs.cpp:2590 msgid "" "Create exclusive OR of selected paths (those parts that belong to only one " "path)" msgstr "" -#: ../src/verbs.cpp:2508 +#: ../src/verbs.cpp:2591 msgid "Di_vision" msgstr "" -#: ../src/verbs.cpp:2509 +#: ../src/verbs.cpp:2592 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:2512 +#: ../src/verbs.cpp:2595 msgid "Cut _Path" msgstr "" -#: ../src/verbs.cpp:2513 +#: ../src/verbs.cpp:2596 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:2517 +#: ../src/verbs.cpp:2600 msgid "Outs_et" msgstr "" -#: ../src/verbs.cpp:2518 +#: ../src/verbs.cpp:2601 msgid "Outset selected paths" msgstr "" -#: ../src/verbs.cpp:2520 +#: ../src/verbs.cpp:2603 msgid "O_utset Path by 1 px" msgstr "" -#: ../src/verbs.cpp:2521 +#: ../src/verbs.cpp:2604 msgid "Outset selected paths by 1 px" msgstr "" -#: ../src/verbs.cpp:2523 +#: ../src/verbs.cpp:2606 msgid "O_utset Path by 10 px" msgstr "" -#: ../src/verbs.cpp:2524 +#: ../src/verbs.cpp:2607 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:2528 +#: ../src/verbs.cpp:2611 msgid "I_nset" msgstr "" -#: ../src/verbs.cpp:2529 +#: ../src/verbs.cpp:2612 msgid "Inset selected paths" msgstr "" -#: ../src/verbs.cpp:2531 +#: ../src/verbs.cpp:2614 msgid "I_nset Path by 1 px" msgstr "" -#: ../src/verbs.cpp:2532 +#: ../src/verbs.cpp:2615 msgid "Inset selected paths by 1 px" msgstr "" -#: ../src/verbs.cpp:2534 +#: ../src/verbs.cpp:2617 msgid "I_nset Path by 10 px" msgstr "" -#: ../src/verbs.cpp:2535 +#: ../src/verbs.cpp:2618 msgid "Inset selected paths by 10 px" msgstr "" -#: ../src/verbs.cpp:2537 +#: ../src/verbs.cpp:2620 msgid "D_ynamic Offset" msgstr "" -#: ../src/verbs.cpp:2537 +#: ../src/verbs.cpp:2620 msgid "Create a dynamic offset object" msgstr "" -#: ../src/verbs.cpp:2539 +#: ../src/verbs.cpp:2622 msgid "_Linked Offset" msgstr "" -#: ../src/verbs.cpp:2540 +#: ../src/verbs.cpp:2623 msgid "Create a dynamic offset object linked to the original path" msgstr "" -#: ../src/verbs.cpp:2542 +#: ../src/verbs.cpp:2625 msgid "_Stroke to Path" msgstr "" -#: ../src/verbs.cpp:2543 +#: ../src/verbs.cpp:2626 msgid "Convert selected object's stroke to paths" msgstr "" -#: ../src/verbs.cpp:2544 +#: ../src/verbs.cpp:2627 msgid "Si_mplify" msgstr "" -#: ../src/verbs.cpp:2545 +#: ../src/verbs.cpp:2628 msgid "Simplify selected paths (remove extra nodes)" msgstr "" -#: ../src/verbs.cpp:2546 +#: ../src/verbs.cpp:2629 msgid "_Reverse" msgstr "" -#: ../src/verbs.cpp:2547 +#: ../src/verbs.cpp:2630 msgid "Reverse the direction of selected paths (useful for flipping markers)" msgstr "" -#: ../src/verbs.cpp:2550 +#: ../src/verbs.cpp:2633 msgid "Create one or more paths from a bitmap by tracing it" msgstr "" -#: ../src/verbs.cpp:2551 +#: ../src/verbs.cpp:2634 msgid "Trace Pixel Art..." msgstr "" -#: ../src/verbs.cpp:2552 +#: ../src/verbs.cpp:2635 msgid "Create paths using Kopf-Lischinski algorithm to vectorize pixel art" msgstr "" -#: ../src/verbs.cpp:2553 +#: ../src/verbs.cpp:2636 msgid "Make a _Bitmap Copy" msgstr "" -#: ../src/verbs.cpp:2554 +#: ../src/verbs.cpp:2637 msgid "Export selection to a bitmap and insert it into document" msgstr "" -#: ../src/verbs.cpp:2555 +#: ../src/verbs.cpp:2638 msgid "_Combine" msgstr "" -#: ../src/verbs.cpp:2556 +#: ../src/verbs.cpp:2639 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:2559 +#: ../src/verbs.cpp:2642 msgid "Break _Apart" msgstr "" -#: ../src/verbs.cpp:2560 +#: ../src/verbs.cpp:2643 msgid "Break selected paths into subpaths" msgstr "" -#: ../src/verbs.cpp:2561 +#: ../src/verbs.cpp:2644 msgid "_Arrange..." msgstr "" -#: ../src/verbs.cpp:2562 +#: ../src/verbs.cpp:2645 msgid "Arrange selected objects in a table or circle" msgstr "" #. Layer -#: ../src/verbs.cpp:2564 +#: ../src/verbs.cpp:2647 msgid "_Add Layer..." msgstr "" -#: ../src/verbs.cpp:2565 +#: ../src/verbs.cpp:2648 msgid "Create a new layer" msgstr "" -#: ../src/verbs.cpp:2566 +#: ../src/verbs.cpp:2649 msgid "Re_name Layer..." msgstr "" -#: ../src/verbs.cpp:2567 +#: ../src/verbs.cpp:2650 msgid "Rename the current layer" msgstr "" -#: ../src/verbs.cpp:2568 +#: ../src/verbs.cpp:2651 msgid "Switch to Layer Abov_e" msgstr "" -#: ../src/verbs.cpp:2569 +#: ../src/verbs.cpp:2652 msgid "Switch to the layer above the current" msgstr "" -#: ../src/verbs.cpp:2570 +#: ../src/verbs.cpp:2653 msgid "Switch to Layer Belo_w" msgstr "" -#: ../src/verbs.cpp:2571 +#: ../src/verbs.cpp:2654 msgid "Switch to the layer below the current" msgstr "" -#: ../src/verbs.cpp:2572 +#: ../src/verbs.cpp:2655 msgid "Move Selection to Layer Abo_ve" msgstr "" -#: ../src/verbs.cpp:2573 +#: ../src/verbs.cpp:2656 msgid "Move selection to the layer above the current" msgstr "" -#: ../src/verbs.cpp:2574 +#: ../src/verbs.cpp:2657 msgid "Move Selection to Layer Bel_ow" msgstr "" -#: ../src/verbs.cpp:2575 +#: ../src/verbs.cpp:2658 msgid "Move selection to the layer below the current" msgstr "" -#: ../src/verbs.cpp:2576 +#: ../src/verbs.cpp:2659 msgid "Move Selection to Layer..." msgstr "" -#: ../src/verbs.cpp:2578 +#: ../src/verbs.cpp:2661 msgid "Layer to _Top" msgstr "" -#: ../src/verbs.cpp:2579 +#: ../src/verbs.cpp:2662 msgid "Raise the current layer to the top" msgstr "" -#: ../src/verbs.cpp:2580 +#: ../src/verbs.cpp:2663 msgid "Layer to _Bottom" msgstr "" -#: ../src/verbs.cpp:2581 +#: ../src/verbs.cpp:2664 msgid "Lower the current layer to the bottom" msgstr "" -#: ../src/verbs.cpp:2582 +#: ../src/verbs.cpp:2665 msgid "_Raise Layer" msgstr "" -#: ../src/verbs.cpp:2583 +#: ../src/verbs.cpp:2666 msgid "Raise the current layer" msgstr "" -#: ../src/verbs.cpp:2584 +#: ../src/verbs.cpp:2667 msgid "_Lower Layer" msgstr "" -#: ../src/verbs.cpp:2585 +#: ../src/verbs.cpp:2668 msgid "Lower the current layer" msgstr "" -#: ../src/verbs.cpp:2586 +#: ../src/verbs.cpp:2669 msgid "D_uplicate Current Layer" msgstr "" -#: ../src/verbs.cpp:2587 +#: ../src/verbs.cpp:2670 msgid "Duplicate an existing layer" msgstr "" -#: ../src/verbs.cpp:2588 +#: ../src/verbs.cpp:2671 msgid "_Delete Current Layer" msgstr "" -#: ../src/verbs.cpp:2589 +#: ../src/verbs.cpp:2672 msgid "Delete the current layer" msgstr "" -#: ../src/verbs.cpp:2590 +#: ../src/verbs.cpp:2673 msgid "_Show/hide other layers" msgstr "" -#: ../src/verbs.cpp:2591 +#: ../src/verbs.cpp:2674 msgid "Solo the current layer" msgstr "" -#: ../src/verbs.cpp:2592 +#: ../src/verbs.cpp:2675 msgid "_Show all layers" msgstr "" -#: ../src/verbs.cpp:2593 +#: ../src/verbs.cpp:2676 msgid "Show all the layers" msgstr "" -#: ../src/verbs.cpp:2594 +#: ../src/verbs.cpp:2677 msgid "_Hide all layers" msgstr "" -#: ../src/verbs.cpp:2595 +#: ../src/verbs.cpp:2678 msgid "Hide all the layers" msgstr "" -#: ../src/verbs.cpp:2596 +#: ../src/verbs.cpp:2679 msgid "_Lock all layers" msgstr "" -#: ../src/verbs.cpp:2597 +#: ../src/verbs.cpp:2680 msgid "Lock all the layers" msgstr "" -#: ../src/verbs.cpp:2598 +#: ../src/verbs.cpp:2681 msgid "Lock/Unlock _other layers" msgstr "" -#: ../src/verbs.cpp:2599 +#: ../src/verbs.cpp:2682 msgid "Lock all the other layers" msgstr "" -#: ../src/verbs.cpp:2600 +#: ../src/verbs.cpp:2683 msgid "_Unlock all layers" msgstr "" -#: ../src/verbs.cpp:2601 +#: ../src/verbs.cpp:2684 msgid "Unlock all the layers" msgstr "" -#: ../src/verbs.cpp:2602 +#: ../src/verbs.cpp:2685 msgid "_Lock/Unlock Current Layer" msgstr "" -#: ../src/verbs.cpp:2603 +#: ../src/verbs.cpp:2686 msgid "Toggle lock on current layer" msgstr "" -#: ../src/verbs.cpp:2604 +#: ../src/verbs.cpp:2687 msgid "_Show/hide Current Layer" msgstr "" -#: ../src/verbs.cpp:2605 +#: ../src/verbs.cpp:2688 msgid "Toggle visibility of current layer" msgstr "" #. Object -#: ../src/verbs.cpp:2608 +#: ../src/verbs.cpp:2691 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:2611 +#: ../src/verbs.cpp:2694 msgid "Rotate selection 90° clockwise" msgstr "" -#: ../src/verbs.cpp:2612 +#: ../src/verbs.cpp:2695 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:2615 +#: ../src/verbs.cpp:2698 msgid "Rotate selection 90° counter-clockwise" msgstr "" -#: ../src/verbs.cpp:2616 +#: ../src/verbs.cpp:2699 msgid "Remove _Transformations" msgstr "" -#: ../src/verbs.cpp:2617 +#: ../src/verbs.cpp:2700 msgid "Remove transformations from object" msgstr "" -#: ../src/verbs.cpp:2618 +#: ../src/verbs.cpp:2701 msgid "_Object to Path" msgstr "" -#: ../src/verbs.cpp:2619 +#: ../src/verbs.cpp:2702 msgid "Convert selected object to path" msgstr "" -#: ../src/verbs.cpp:2620 +#: ../src/verbs.cpp:2703 msgid "_Flow into Frame" msgstr "" -#: ../src/verbs.cpp:2621 +#: ../src/verbs.cpp:2704 msgid "" "Put text into a frame (path or shape), creating a flowed text linked to the " "frame object" msgstr "" -#: ../src/verbs.cpp:2622 +#: ../src/verbs.cpp:2705 msgid "_Unflow" msgstr "" -#: ../src/verbs.cpp:2623 +#: ../src/verbs.cpp:2706 msgid "Remove text from frame (creates a single-line text object)" msgstr "" -#: ../src/verbs.cpp:2624 +#: ../src/verbs.cpp:2707 msgid "_Convert to Text" msgstr "" -#: ../src/verbs.cpp:2625 +#: ../src/verbs.cpp:2708 msgid "Convert flowed text to regular text object (preserves appearance)" msgstr "" -#: ../src/verbs.cpp:2627 +#: ../src/verbs.cpp:2710 msgid "Flip _Horizontal" msgstr "" -#: ../src/verbs.cpp:2627 +#: ../src/verbs.cpp:2710 msgid "Flip selected objects horizontally" msgstr "" -#: ../src/verbs.cpp:2630 +#: ../src/verbs.cpp:2713 msgid "Flip _Vertical" msgstr "" -#: ../src/verbs.cpp:2630 +#: ../src/verbs.cpp:2713 msgid "Flip selected objects vertically" msgstr "" -#: ../src/verbs.cpp:2633 +#: ../src/verbs.cpp:2716 msgid "Apply mask to selection (using the topmost object as mask)" msgstr "" -#: ../src/verbs.cpp:2635 +#: ../src/verbs.cpp:2718 msgid "Edit mask" msgstr "" -#: ../src/verbs.cpp:2636 ../src/verbs.cpp:2642 +#: ../src/verbs.cpp:2719 ../src/verbs.cpp:2727 msgid "_Release" msgstr "" -#: ../src/verbs.cpp:2637 +#: ../src/verbs.cpp:2720 msgid "Remove mask from selection" msgstr "" -#: ../src/verbs.cpp:2639 +#: ../src/verbs.cpp:2722 msgid "" "Apply clipping path to selection (using the topmost object as clipping path)" msgstr "" -#: ../src/verbs.cpp:2641 +#: ../src/verbs.cpp:2723 +msgid "Create Cl_ip Group" +msgstr "" + +#: ../src/verbs.cpp:2724 +msgid "Creates a clip group using the selected objects as a base" +msgstr "" + +#: ../src/verbs.cpp:2726 msgid "Edit clipping path" msgstr "" -#: ../src/verbs.cpp:2643 +#: ../src/verbs.cpp:2728 msgid "Remove clipping path from selection" msgstr "" #. Tools -#: ../src/verbs.cpp:2646 +#: ../src/verbs.cpp:2733 msgctxt "ContextVerb" msgid "Select" msgstr "" -#: ../src/verbs.cpp:2647 +#: ../src/verbs.cpp:2734 msgid "Select and transform objects" msgstr "" -#: ../src/verbs.cpp:2648 +#: ../src/verbs.cpp:2735 msgctxt "ContextVerb" msgid "Node Edit" msgstr "" -#: ../src/verbs.cpp:2649 +#: ../src/verbs.cpp:2736 msgid "Edit paths by nodes" msgstr "" -#: ../src/verbs.cpp:2650 +#: ../src/verbs.cpp:2737 msgctxt "ContextVerb" msgid "Tweak" msgstr "" -#: ../src/verbs.cpp:2651 +#: ../src/verbs.cpp:2738 msgid "Tweak objects by sculpting or painting" msgstr "" -#: ../src/verbs.cpp:2652 +#: ../src/verbs.cpp:2739 msgctxt "ContextVerb" msgid "Spray" msgstr "" -#: ../src/verbs.cpp:2653 +#: ../src/verbs.cpp:2740 msgid "Spray objects by sculpting or painting" msgstr "" -#: ../src/verbs.cpp:2654 +#: ../src/verbs.cpp:2741 msgctxt "ContextVerb" msgid "Rectangle" msgstr "" -#: ../src/verbs.cpp:2655 +#: ../src/verbs.cpp:2742 msgid "Create rectangles and squares" msgstr "" -#: ../src/verbs.cpp:2656 +#: ../src/verbs.cpp:2743 msgctxt "ContextVerb" msgid "3D Box" msgstr "" -#: ../src/verbs.cpp:2657 +#: ../src/verbs.cpp:2744 msgid "Create 3D boxes" msgstr "" -#: ../src/verbs.cpp:2658 +#: ../src/verbs.cpp:2745 msgctxt "ContextVerb" msgid "Ellipse" msgstr "" -#: ../src/verbs.cpp:2659 +#: ../src/verbs.cpp:2746 msgid "Create circles, ellipses, and arcs" msgstr "" -#: ../src/verbs.cpp:2660 +#: ../src/verbs.cpp:2747 msgctxt "ContextVerb" msgid "Star" msgstr "" -#: ../src/verbs.cpp:2661 +#: ../src/verbs.cpp:2748 msgid "Create stars and polygons" msgstr "" -#: ../src/verbs.cpp:2662 +#: ../src/verbs.cpp:2749 msgctxt "ContextVerb" msgid "Spiral" msgstr "" -#: ../src/verbs.cpp:2663 +#: ../src/verbs.cpp:2750 msgid "Create spirals" msgstr "" -#: ../src/verbs.cpp:2664 +#: ../src/verbs.cpp:2751 msgctxt "ContextVerb" msgid "Pencil" msgstr "" -#: ../src/verbs.cpp:2665 +#: ../src/verbs.cpp:2752 msgid "Draw freehand lines" msgstr "" -#: ../src/verbs.cpp:2666 +#: ../src/verbs.cpp:2753 msgctxt "ContextVerb" msgid "Pen" msgstr "" -#: ../src/verbs.cpp:2667 +#: ../src/verbs.cpp:2754 msgid "Draw Bezier curves and straight lines" msgstr "" -#: ../src/verbs.cpp:2668 +#: ../src/verbs.cpp:2755 msgctxt "ContextVerb" msgid "Calligraphy" msgstr "" -#: ../src/verbs.cpp:2669 +#: ../src/verbs.cpp:2756 msgid "Draw calligraphic or brush strokes" msgstr "" -#: ../src/verbs.cpp:2671 +#: ../src/verbs.cpp:2758 msgid "Create and edit text objects" msgstr "" -#: ../src/verbs.cpp:2672 +#: ../src/verbs.cpp:2759 msgctxt "ContextVerb" msgid "Gradient" msgstr "" -#: ../src/verbs.cpp:2673 +#: ../src/verbs.cpp:2760 msgid "Create and edit gradients" msgstr "" -#: ../src/verbs.cpp:2674 +#: ../src/verbs.cpp:2761 msgctxt "ContextVerb" msgid "Mesh" msgstr "" -#: ../src/verbs.cpp:2675 +#: ../src/verbs.cpp:2762 msgid "Create and edit meshes" msgstr "" -#: ../src/verbs.cpp:2676 +#: ../src/verbs.cpp:2763 msgctxt "ContextVerb" msgid "Zoom" msgstr "" -#: ../src/verbs.cpp:2677 +#: ../src/verbs.cpp:2764 msgid "Zoom in or out" msgstr "" -#: ../src/verbs.cpp:2679 +#: ../src/verbs.cpp:2766 msgid "Measurement tool" msgstr "" -#: ../src/verbs.cpp:2680 +#: ../src/verbs.cpp:2767 msgctxt "ContextVerb" msgid "Dropper" msgstr "" -#: ../src/verbs.cpp:2681 ../src/widgets/sp-color-notebook.cpp:411 +#: ../src/verbs.cpp:2768 ../src/widgets/sp-color-notebook.cpp:396 msgid "Pick colors from image" msgstr "" -#: ../src/verbs.cpp:2682 +#: ../src/verbs.cpp:2769 msgctxt "ContextVerb" msgid "Connector" msgstr "" -#: ../src/verbs.cpp:2683 +#: ../src/verbs.cpp:2770 msgid "Create diagram connectors" msgstr "" -#: ../src/verbs.cpp:2684 +#: ../src/verbs.cpp:2771 msgctxt "ContextVerb" msgid "Paint Bucket" msgstr "" -#: ../src/verbs.cpp:2685 +#: ../src/verbs.cpp:2772 msgid "Fill bounded areas" msgstr "" -#: ../src/verbs.cpp:2686 +#: ../src/verbs.cpp:2773 msgctxt "ContextVerb" msgid "LPE Edit" msgstr "" -#: ../src/verbs.cpp:2687 +#: ../src/verbs.cpp:2774 msgid "Edit Path Effect parameters" msgstr "" -#: ../src/verbs.cpp:2688 +#: ../src/verbs.cpp:2775 msgctxt "ContextVerb" msgid "Eraser" msgstr "" -#: ../src/verbs.cpp:2689 +#: ../src/verbs.cpp:2776 msgid "Erase existing paths" msgstr "" -#: ../src/verbs.cpp:2690 +#: ../src/verbs.cpp:2777 msgctxt "ContextVerb" msgid "LPE Tool" msgstr "" -#: ../src/verbs.cpp:2691 +#: ../src/verbs.cpp:2778 msgid "Do geometric constructions" msgstr "" #. Tool prefs -#: ../src/verbs.cpp:2693 +#: ../src/verbs.cpp:2780 msgid "Selector Preferences" msgstr "" -#: ../src/verbs.cpp:2694 +#: ../src/verbs.cpp:2781 msgid "Open Preferences for the Selector tool" msgstr "" -#: ../src/verbs.cpp:2695 +#: ../src/verbs.cpp:2782 msgid "Node Tool Preferences" msgstr "" -#: ../src/verbs.cpp:2696 +#: ../src/verbs.cpp:2783 msgid "Open Preferences for the Node tool" msgstr "" -#: ../src/verbs.cpp:2697 +#: ../src/verbs.cpp:2784 msgid "Tweak Tool Preferences" msgstr "" -#: ../src/verbs.cpp:2698 +#: ../src/verbs.cpp:2785 msgid "Open Preferences for the Tweak tool" msgstr "" -#: ../src/verbs.cpp:2699 +#: ../src/verbs.cpp:2786 msgid "Spray Tool Preferences" msgstr "" -#: ../src/verbs.cpp:2700 +#: ../src/verbs.cpp:2787 msgid "Open Preferences for the Spray tool" msgstr "" -#: ../src/verbs.cpp:2701 +#: ../src/verbs.cpp:2788 msgid "Rectangle Preferences" msgstr "" -#: ../src/verbs.cpp:2702 +#: ../src/verbs.cpp:2789 msgid "Open Preferences for the Rectangle tool" msgstr "" -#: ../src/verbs.cpp:2703 +#: ../src/verbs.cpp:2790 msgid "3D Box Preferences" msgstr "" -#: ../src/verbs.cpp:2704 +#: ../src/verbs.cpp:2791 msgid "Open Preferences for the 3D Box tool" msgstr "" -#: ../src/verbs.cpp:2705 +#: ../src/verbs.cpp:2792 msgid "Ellipse Preferences" msgstr "" -#: ../src/verbs.cpp:2706 +#: ../src/verbs.cpp:2793 msgid "Open Preferences for the Ellipse tool" msgstr "" -#: ../src/verbs.cpp:2707 +#: ../src/verbs.cpp:2794 msgid "Star Preferences" msgstr "" -#: ../src/verbs.cpp:2708 +#: ../src/verbs.cpp:2795 msgid "Open Preferences for the Star tool" msgstr "" -#: ../src/verbs.cpp:2709 +#: ../src/verbs.cpp:2796 msgid "Spiral Preferences" msgstr "" -#: ../src/verbs.cpp:2710 +#: ../src/verbs.cpp:2797 msgid "Open Preferences for the Spiral tool" msgstr "" -#: ../src/verbs.cpp:2711 +#: ../src/verbs.cpp:2798 msgid "Pencil Preferences" msgstr "" -#: ../src/verbs.cpp:2712 +#: ../src/verbs.cpp:2799 msgid "Open Preferences for the Pencil tool" msgstr "" -#: ../src/verbs.cpp:2713 +#: ../src/verbs.cpp:2800 msgid "Pen Preferences" msgstr "" -#: ../src/verbs.cpp:2714 +#: ../src/verbs.cpp:2801 msgid "Open Preferences for the Pen tool" msgstr "" -#: ../src/verbs.cpp:2715 +#: ../src/verbs.cpp:2802 msgid "Calligraphic Preferences" msgstr "" -#: ../src/verbs.cpp:2716 +#: ../src/verbs.cpp:2803 msgid "Open Preferences for the Calligraphy tool" msgstr "" -#: ../src/verbs.cpp:2717 +#: ../src/verbs.cpp:2804 msgid "Text Preferences" msgstr "" -#: ../src/verbs.cpp:2718 +#: ../src/verbs.cpp:2805 msgid "Open Preferences for the Text tool" msgstr "" -#: ../src/verbs.cpp:2719 +#: ../src/verbs.cpp:2806 msgid "Gradient Preferences" msgstr "" -#: ../src/verbs.cpp:2720 +#: ../src/verbs.cpp:2807 msgid "Open Preferences for the Gradient tool" msgstr "" -#: ../src/verbs.cpp:2721 +#: ../src/verbs.cpp:2808 msgid "Mesh Preferences" msgstr "" -#: ../src/verbs.cpp:2722 +#: ../src/verbs.cpp:2809 msgid "Open Preferences for the Mesh tool" msgstr "" -#: ../src/verbs.cpp:2723 +#: ../src/verbs.cpp:2810 msgid "Zoom Preferences" msgstr "" -#: ../src/verbs.cpp:2724 +#: ../src/verbs.cpp:2811 msgid "Open Preferences for the Zoom tool" msgstr "" -#: ../src/verbs.cpp:2725 +#: ../src/verbs.cpp:2812 msgid "Measure Preferences" msgstr "" -#: ../src/verbs.cpp:2726 +#: ../src/verbs.cpp:2813 msgid "Open Preferences for the Measure tool" msgstr "" -#: ../src/verbs.cpp:2727 +#: ../src/verbs.cpp:2814 msgid "Dropper Preferences" msgstr "" -#: ../src/verbs.cpp:2728 +#: ../src/verbs.cpp:2815 msgid "Open Preferences for the Dropper tool" msgstr "" -#: ../src/verbs.cpp:2729 +#: ../src/verbs.cpp:2816 msgid "Connector Preferences" msgstr "" -#: ../src/verbs.cpp:2730 +#: ../src/verbs.cpp:2817 msgid "Open Preferences for the Connector tool" msgstr "" -#: ../src/verbs.cpp:2731 +#: ../src/verbs.cpp:2818 msgid "Paint Bucket Preferences" msgstr "" -#: ../src/verbs.cpp:2732 +#: ../src/verbs.cpp:2819 msgid "Open Preferences for the Paint Bucket tool" msgstr "" -#: ../src/verbs.cpp:2733 +#: ../src/verbs.cpp:2820 msgid "Eraser Preferences" msgstr "" -#: ../src/verbs.cpp:2734 +#: ../src/verbs.cpp:2821 msgid "Open Preferences for the Eraser tool" msgstr "" -#: ../src/verbs.cpp:2735 +#: ../src/verbs.cpp:2822 msgid "LPE Tool Preferences" msgstr "" -#: ../src/verbs.cpp:2736 +#: ../src/verbs.cpp:2823 msgid "Open Preferences for the LPETool tool" msgstr "" #. Zoom/View -#: ../src/verbs.cpp:2738 +#: ../src/verbs.cpp:2825 msgid "Zoom In" msgstr "" -#: ../src/verbs.cpp:2738 +#: ../src/verbs.cpp:2825 msgid "Zoom in" msgstr "" -#: ../src/verbs.cpp:2739 +#: ../src/verbs.cpp:2826 msgid "Zoom Out" msgstr "" -#: ../src/verbs.cpp:2739 +#: ../src/verbs.cpp:2826 msgid "Zoom out" msgstr "" -#: ../src/verbs.cpp:2740 +#: ../src/verbs.cpp:2827 msgid "_Rulers" msgstr "" -#: ../src/verbs.cpp:2740 +#: ../src/verbs.cpp:2827 msgid "Show or hide the canvas rulers" msgstr "" -#: ../src/verbs.cpp:2741 +#: ../src/verbs.cpp:2828 msgid "Scroll_bars" msgstr "" -#: ../src/verbs.cpp:2741 +#: ../src/verbs.cpp:2828 msgid "Show or hide the canvas scrollbars" msgstr "" -#: ../src/verbs.cpp:2742 +#: ../src/verbs.cpp:2829 msgid "Page _Grid" msgstr "" -#: ../src/verbs.cpp:2742 +#: ../src/verbs.cpp:2829 msgid "Show or hide the page grid" msgstr "" -#: ../src/verbs.cpp:2743 +#: ../src/verbs.cpp:2830 msgid "G_uides" msgstr "" -#: ../src/verbs.cpp:2743 +#: ../src/verbs.cpp:2830 msgid "Show or hide guides (drag from a ruler to create a guide)" msgstr "" -#: ../src/verbs.cpp:2744 +#: ../src/verbs.cpp:2831 msgid "Enable snapping" msgstr "" -#: ../src/verbs.cpp:2745 +#: ../src/verbs.cpp:2832 msgid "_Commands Bar" msgstr "" -#: ../src/verbs.cpp:2745 +#: ../src/verbs.cpp:2832 msgid "Show or hide the Commands bar (under the menu)" msgstr "" -#: ../src/verbs.cpp:2746 +#: ../src/verbs.cpp:2833 msgid "Sn_ap Controls Bar" msgstr "" -#: ../src/verbs.cpp:2746 +#: ../src/verbs.cpp:2833 msgid "Show or hide the snapping controls" msgstr "" -#: ../src/verbs.cpp:2747 +#: ../src/verbs.cpp:2834 msgid "T_ool Controls Bar" msgstr "" -#: ../src/verbs.cpp:2747 +#: ../src/verbs.cpp:2834 msgid "Show or hide the Tool Controls bar" msgstr "" -#: ../src/verbs.cpp:2748 +#: ../src/verbs.cpp:2835 msgid "_Toolbox" msgstr "" -#: ../src/verbs.cpp:2748 +#: ../src/verbs.cpp:2835 msgid "Show or hide the main toolbox (on the left)" msgstr "" -#: ../src/verbs.cpp:2749 +#: ../src/verbs.cpp:2836 msgid "_Palette" msgstr "" -#: ../src/verbs.cpp:2749 +#: ../src/verbs.cpp:2836 msgid "Show or hide the color palette" msgstr "" -#: ../src/verbs.cpp:2750 +#: ../src/verbs.cpp:2837 msgid "_Statusbar" msgstr "" -#: ../src/verbs.cpp:2750 +#: ../src/verbs.cpp:2837 msgid "Show or hide the statusbar (at the bottom of the window)" msgstr "" -#: ../src/verbs.cpp:2751 +#: ../src/verbs.cpp:2838 msgid "Nex_t Zoom" msgstr "" -#: ../src/verbs.cpp:2751 +#: ../src/verbs.cpp:2838 msgid "Next zoom (from the history of zooms)" msgstr "" -#: ../src/verbs.cpp:2753 +#: ../src/verbs.cpp:2840 msgid "Pre_vious Zoom" msgstr "" -#: ../src/verbs.cpp:2753 +#: ../src/verbs.cpp:2840 msgid "Previous zoom (from the history of zooms)" msgstr "" -#: ../src/verbs.cpp:2755 +#: ../src/verbs.cpp:2842 msgid "Zoom 1:_1" msgstr "" -#: ../src/verbs.cpp:2755 +#: ../src/verbs.cpp:2842 msgid "Zoom to 1:1" msgstr "" -#: ../src/verbs.cpp:2757 +#: ../src/verbs.cpp:2844 msgid "Zoom 1:_2" msgstr "" -#: ../src/verbs.cpp:2757 +#: ../src/verbs.cpp:2844 msgid "Zoom to 1:2" msgstr "" -#: ../src/verbs.cpp:2759 +#: ../src/verbs.cpp:2846 msgid "_Zoom 2:1" msgstr "" -#: ../src/verbs.cpp:2759 +#: ../src/verbs.cpp:2846 msgid "Zoom to 2:1" msgstr "" -#: ../src/verbs.cpp:2762 +#: ../src/verbs.cpp:2849 msgid "_Fullscreen" msgstr "" -#: ../src/verbs.cpp:2762 ../src/verbs.cpp:2764 +#: ../src/verbs.cpp:2849 ../src/verbs.cpp:2851 msgid "Stretch this document window to full screen" msgstr "" -#: ../src/verbs.cpp:2764 +#: ../src/verbs.cpp:2851 msgid "Fullscreen & Focus Mode" msgstr "" -#: ../src/verbs.cpp:2767 +#: ../src/verbs.cpp:2854 msgid "Toggle _Focus Mode" msgstr "" -#: ../src/verbs.cpp:2767 +#: ../src/verbs.cpp:2854 msgid "Remove excess toolbars to focus on drawing" msgstr "" -#: ../src/verbs.cpp:2769 +#: ../src/verbs.cpp:2856 msgid "Duplic_ate Window" msgstr "" -#: ../src/verbs.cpp:2769 +#: ../src/verbs.cpp:2856 msgid "Open a new window with the same document" msgstr "" -#: ../src/verbs.cpp:2771 +#: ../src/verbs.cpp:2858 msgid "_New View Preview" msgstr "" -#: ../src/verbs.cpp:2772 +#: ../src/verbs.cpp:2859 msgid "New View Preview" msgstr "" #. "view_new_preview" -#: ../src/verbs.cpp:2774 ../src/verbs.cpp:2782 +#: ../src/verbs.cpp:2861 ../src/verbs.cpp:2869 msgid "_Normal" msgstr "" -#: ../src/verbs.cpp:2775 +#: ../src/verbs.cpp:2862 msgid "Switch to normal display mode" msgstr "" -#: ../src/verbs.cpp:2776 +#: ../src/verbs.cpp:2863 msgid "No _Filters" msgstr "" -#: ../src/verbs.cpp:2777 +#: ../src/verbs.cpp:2864 msgid "Switch to normal display without filters" msgstr "" -#: ../src/verbs.cpp:2778 +#: ../src/verbs.cpp:2865 msgid "_Outline" msgstr "" -#: ../src/verbs.cpp:2779 +#: ../src/verbs.cpp:2866 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:2780 ../src/verbs.cpp:2788 +#: ../src/verbs.cpp:2867 ../src/verbs.cpp:2875 msgid "_Toggle" msgstr "" -#: ../src/verbs.cpp:2781 +#: ../src/verbs.cpp:2868 msgid "Toggle between normal and outline display modes" msgstr "" -#: ../src/verbs.cpp:2783 +#: ../src/verbs.cpp:2870 msgid "Switch to normal color display mode" msgstr "" -#: ../src/verbs.cpp:2784 +#: ../src/verbs.cpp:2871 msgid "_Grayscale" msgstr "" -#: ../src/verbs.cpp:2785 +#: ../src/verbs.cpp:2872 msgid "Switch to grayscale display mode" msgstr "" -#: ../src/verbs.cpp:2789 +#: ../src/verbs.cpp:2876 msgid "Toggle between normal and grayscale color display modes" msgstr "" -#: ../src/verbs.cpp:2791 +#: ../src/verbs.cpp:2878 msgid "Color-managed view" msgstr "" -#: ../src/verbs.cpp:2792 +#: ../src/verbs.cpp:2879 msgid "Toggle color-managed display for this document window" msgstr "" -#: ../src/verbs.cpp:2794 +#: ../src/verbs.cpp:2881 msgid "Ico_n Preview..." msgstr "" -#: ../src/verbs.cpp:2795 +#: ../src/verbs.cpp:2882 msgid "Open a window to preview objects at different icon resolutions" msgstr "" -#: ../src/verbs.cpp:2797 +#: ../src/verbs.cpp:2884 msgid "Zoom to fit page in window" msgstr "" -#: ../src/verbs.cpp:2798 +#: ../src/verbs.cpp:2885 msgid "Page _Width" msgstr "" -#: ../src/verbs.cpp:2799 +#: ../src/verbs.cpp:2886 msgid "Zoom to fit page width in window" msgstr "" -#: ../src/verbs.cpp:2801 +#: ../src/verbs.cpp:2888 msgid "Zoom to fit drawing in window" msgstr "" -#: ../src/verbs.cpp:2803 +#: ../src/verbs.cpp:2890 msgid "Zoom to fit selection in window" msgstr "" #. Dialogs -#: ../src/verbs.cpp:2806 +#: ../src/verbs.cpp:2893 msgid "P_references..." msgstr "" -#: ../src/verbs.cpp:2807 +#: ../src/verbs.cpp:2894 msgid "Edit global Inkscape preferences" msgstr "" -#: ../src/verbs.cpp:2808 +#: ../src/verbs.cpp:2895 msgid "_Document Properties..." msgstr "" -#: ../src/verbs.cpp:2809 +#: ../src/verbs.cpp:2896 msgid "Edit properties of this document (to be saved with the document)" msgstr "" -#: ../src/verbs.cpp:2810 +#: ../src/verbs.cpp:2897 msgid "Document _Metadata..." msgstr "" -#: ../src/verbs.cpp:2811 +#: ../src/verbs.cpp:2898 msgid "Edit document metadata (to be saved with the document)" msgstr "" -#: ../src/verbs.cpp:2813 +#: ../src/verbs.cpp:2900 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:2815 +#: ../src/verbs.cpp:2902 msgid "Gl_yphs..." msgstr "" -#: ../src/verbs.cpp:2816 +#: ../src/verbs.cpp:2903 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:2819 +#: ../src/verbs.cpp:2906 msgid "S_watches..." msgstr "" -#: ../src/verbs.cpp:2820 +#: ../src/verbs.cpp:2907 msgid "Select colors from a swatches palette" msgstr "" -#: ../src/verbs.cpp:2821 +#: ../src/verbs.cpp:2908 msgid "S_ymbols..." msgstr "" -#: ../src/verbs.cpp:2822 +#: ../src/verbs.cpp:2909 msgid "Select symbol from a symbols palette" msgstr "" -#: ../src/verbs.cpp:2823 +#: ../src/verbs.cpp:2910 msgid "Transfor_m..." msgstr "" -#: ../src/verbs.cpp:2824 +#: ../src/verbs.cpp:2911 msgid "Precisely control objects' transformations" msgstr "" -#: ../src/verbs.cpp:2825 +#: ../src/verbs.cpp:2912 msgid "_Align and Distribute..." msgstr "" -#: ../src/verbs.cpp:2826 +#: ../src/verbs.cpp:2913 msgid "Align and distribute objects" msgstr "" -#: ../src/verbs.cpp:2827 +#: ../src/verbs.cpp:2914 msgid "_Spray options..." msgstr "" -#: ../src/verbs.cpp:2828 +#: ../src/verbs.cpp:2915 msgid "Some options for the spray" msgstr "" -#: ../src/verbs.cpp:2829 +#: ../src/verbs.cpp:2916 msgid "Undo _History..." msgstr "" -#: ../src/verbs.cpp:2830 +#: ../src/verbs.cpp:2917 msgid "Undo History" msgstr "" -#: ../src/verbs.cpp:2832 +#: ../src/verbs.cpp:2919 msgid "View and select font family, font size and other text properties" msgstr "" -#: ../src/verbs.cpp:2833 +#: ../src/verbs.cpp:2920 msgid "_XML Editor..." msgstr "" -#: ../src/verbs.cpp:2834 +#: ../src/verbs.cpp:2921 msgid "View and edit the XML tree of the document" msgstr "" -#: ../src/verbs.cpp:2835 +#: ../src/verbs.cpp:2922 msgid "_Find/Replace..." msgstr "" -#: ../src/verbs.cpp:2836 +#: ../src/verbs.cpp:2923 msgid "Find objects in document" msgstr "" -#: ../src/verbs.cpp:2837 +#: ../src/verbs.cpp:2924 msgid "Find and _Replace Text..." msgstr "" -#: ../src/verbs.cpp:2838 +#: ../src/verbs.cpp:2925 msgid "Find and replace text in document" msgstr "" -#: ../src/verbs.cpp:2840 +#: ../src/verbs.cpp:2927 msgid "Check spelling of text in document" msgstr "" -#: ../src/verbs.cpp:2841 +#: ../src/verbs.cpp:2928 msgid "_Messages..." msgstr "" -#: ../src/verbs.cpp:2842 +#: ../src/verbs.cpp:2929 msgid "View debug messages" msgstr "" -#: ../src/verbs.cpp:2843 +#: ../src/verbs.cpp:2930 msgid "Show/Hide D_ialogs" msgstr "" -#: ../src/verbs.cpp:2844 +#: ../src/verbs.cpp:2931 msgid "Show or hide all open dialogs" msgstr "" -#: ../src/verbs.cpp:2845 +#: ../src/verbs.cpp:2932 msgid "Create Tiled Clones..." msgstr "" -#: ../src/verbs.cpp:2846 +#: ../src/verbs.cpp:2933 msgid "" "Create multiple clones of selected object, arranging them into a pattern or " "scattering" msgstr "" -#: ../src/verbs.cpp:2847 +#: ../src/verbs.cpp:2934 msgid "_Object attributes..." msgstr "" -#: ../src/verbs.cpp:2848 +#: ../src/verbs.cpp:2935 msgid "Edit the object attributes..." msgstr "" -#: ../src/verbs.cpp:2850 +#: ../src/verbs.cpp:2937 msgid "Edit the ID, locked and visible status, and other object properties" msgstr "" -#: ../src/verbs.cpp:2851 +#: ../src/verbs.cpp:2938 msgid "_Input Devices..." msgstr "" -#: ../src/verbs.cpp:2852 +#: ../src/verbs.cpp:2939 msgid "Configure extended input devices, such as a graphics tablet" msgstr "" -#: ../src/verbs.cpp:2853 +#: ../src/verbs.cpp:2940 msgid "_Extensions..." msgstr "" -#: ../src/verbs.cpp:2854 +#: ../src/verbs.cpp:2941 msgid "Query information about extensions" msgstr "" -#: ../src/verbs.cpp:2855 +#: ../src/verbs.cpp:2942 msgid "Layer_s..." msgstr "" -#: ../src/verbs.cpp:2856 +#: ../src/verbs.cpp:2943 msgid "View Layers" msgstr "" -#: ../src/verbs.cpp:2857 +#: ../src/verbs.cpp:2944 +msgid "Object_s..." +msgstr "" + +#: ../src/verbs.cpp:2945 +msgid "View Objects" +msgstr "" + +#: ../src/verbs.cpp:2946 +msgid "Selection se_ts..." +msgstr "" + +#: ../src/verbs.cpp:2947 +msgid "View Tags" +msgstr "" + +#: ../src/verbs.cpp:2948 msgid "Path E_ffects ..." msgstr "" -#: ../src/verbs.cpp:2858 +#: ../src/verbs.cpp:2949 msgid "Manage, edit, and apply path effects" msgstr "" -#: ../src/verbs.cpp:2859 +#: ../src/verbs.cpp:2950 msgid "Filter _Editor..." msgstr "" -#: ../src/verbs.cpp:2860 +#: ../src/verbs.cpp:2951 msgid "Manage, edit, and apply SVG filters" msgstr "" -#: ../src/verbs.cpp:2861 +#: ../src/verbs.cpp:2952 msgid "SVG Font Editor..." msgstr "" -#: ../src/verbs.cpp:2862 +#: ../src/verbs.cpp:2953 msgid "Edit SVG fonts" msgstr "" -#: ../src/verbs.cpp:2863 +#: ../src/verbs.cpp:2954 msgid "Print Colors..." msgstr "" -#: ../src/verbs.cpp:2864 +#: ../src/verbs.cpp:2955 msgid "" "Select which color separations to render in Print Colors Preview rendermode" msgstr "" -#: ../src/verbs.cpp:2865 +#: ../src/verbs.cpp:2956 msgid "_Export PNG Image..." msgstr "" -#: ../src/verbs.cpp:2866 +#: ../src/verbs.cpp:2957 msgid "Export this document or a selection as a PNG image" msgstr "" #. Help -#: ../src/verbs.cpp:2868 +#: ../src/verbs.cpp:2959 msgid "About E_xtensions" msgstr "" -#: ../src/verbs.cpp:2869 +#: ../src/verbs.cpp:2960 msgid "Information on Inkscape extensions" msgstr "" -#: ../src/verbs.cpp:2870 +#: ../src/verbs.cpp:2961 msgid "About _Memory" msgstr "" -#: ../src/verbs.cpp:2871 +#: ../src/verbs.cpp:2962 msgid "Memory usage information" msgstr "" -#: ../src/verbs.cpp:2872 +#: ../src/verbs.cpp:2963 msgid "_About Inkscape" msgstr "" -#: ../src/verbs.cpp:2873 +#: ../src/verbs.cpp:2964 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:2878 +#: ../src/verbs.cpp:2969 msgid "Inkscape: _Basic" msgstr "" -#: ../src/verbs.cpp:2879 +#: ../src/verbs.cpp:2970 msgid "Getting started with Inkscape" msgstr "" #. "tutorial_basic" -#: ../src/verbs.cpp:2880 +#: ../src/verbs.cpp:2971 msgid "Inkscape: _Shapes" msgstr "" -#: ../src/verbs.cpp:2881 +#: ../src/verbs.cpp:2972 msgid "Using shape tools to create and edit shapes" msgstr "" -#: ../src/verbs.cpp:2882 +#: ../src/verbs.cpp:2973 msgid "Inkscape: _Advanced" msgstr "" -#: ../src/verbs.cpp:2883 +#: ../src/verbs.cpp:2974 msgid "Advanced Inkscape topics" msgstr "" #. "tutorial_advanced" #. TRANSLATORS: "to trace" means "to convert a bitmap to vector graphics" (to vectorize) -#: ../src/verbs.cpp:2885 +#: ../src/verbs.cpp:2976 msgid "Inkscape: T_racing" msgstr "" -#: ../src/verbs.cpp:2886 +#: ../src/verbs.cpp:2977 msgid "Using bitmap tracing" msgstr "" #. "tutorial_tracing" -#: ../src/verbs.cpp:2887 +#: ../src/verbs.cpp:2978 msgid "Inkscape: Tracing Pixel Art" msgstr "" -#: ../src/verbs.cpp:2888 +#: ../src/verbs.cpp:2979 msgid "Using Trace Pixel Art dialog" msgstr "" -#: ../src/verbs.cpp:2889 +#: ../src/verbs.cpp:2980 msgid "Inkscape: _Calligraphy" msgstr "" -#: ../src/verbs.cpp:2890 +#: ../src/verbs.cpp:2981 msgid "Using the Calligraphy pen tool" msgstr "" -#: ../src/verbs.cpp:2891 +#: ../src/verbs.cpp:2982 msgid "Inkscape: _Interpolate" msgstr "" -#: ../src/verbs.cpp:2892 +#: ../src/verbs.cpp:2983 msgid "Using the interpolate extension" msgstr "" #. "tutorial_interpolate" -#: ../src/verbs.cpp:2893 +#: ../src/verbs.cpp:2984 msgid "_Elements of Design" msgstr "" -#: ../src/verbs.cpp:2894 +#: ../src/verbs.cpp:2985 msgid "Principles of design in the tutorial form" msgstr "" #. "tutorial_design" -#: ../src/verbs.cpp:2895 +#: ../src/verbs.cpp:2986 msgid "_Tips and Tricks" msgstr "" -#: ../src/verbs.cpp:2896 +#: ../src/verbs.cpp:2987 msgid "Miscellaneous tips and tricks" msgstr "" #. "tutorial_tips" #. Effect -- renamed Extension -#: ../src/verbs.cpp:2899 +#: ../src/verbs.cpp:2990 msgid "Previous Exte_nsion" msgstr "" -#: ../src/verbs.cpp:2900 +#: ../src/verbs.cpp:2991 msgid "Repeat the last extension with the same settings" msgstr "" -#: ../src/verbs.cpp:2901 +#: ../src/verbs.cpp:2992 msgid "_Previous Extension Settings..." msgstr "" -#: ../src/verbs.cpp:2902 +#: ../src/verbs.cpp:2993 msgid "Repeat the last extension with new settings" msgstr "" -#: ../src/verbs.cpp:2906 +#: ../src/verbs.cpp:2997 msgid "Fit the page to the current selection" msgstr "" -#: ../src/verbs.cpp:2908 +#: ../src/verbs.cpp:2999 msgid "Fit the page to the drawing" msgstr "" -#: ../src/verbs.cpp:2910 +#: ../src/verbs.cpp:3001 msgid "" "Fit the page to the current selection or the drawing if there is no selection" msgstr "" #. LockAndHide -#: ../src/verbs.cpp:2912 +#: ../src/verbs.cpp:3003 msgid "Unlock All" msgstr "" -#: ../src/verbs.cpp:2914 +#: ../src/verbs.cpp:3005 msgid "Unlock All in All Layers" msgstr "" -#: ../src/verbs.cpp:2916 +#: ../src/verbs.cpp:3007 msgid "Unhide All" msgstr "" -#: ../src/verbs.cpp:2918 +#: ../src/verbs.cpp:3009 msgid "Unhide All in All Layers" msgstr "" -#: ../src/verbs.cpp:2922 +#: ../src/verbs.cpp:3013 msgid "Link an ICC color profile" msgstr "" -#: ../src/verbs.cpp:2923 +#: ../src/verbs.cpp:3014 msgid "Remove Color Profile" msgstr "" -#: ../src/verbs.cpp:2924 +#: ../src/verbs.cpp:3015 msgid "Remove a linked ICC color profile" msgstr "" -#: ../src/verbs.cpp:2927 +#: ../src/verbs.cpp:3018 msgid "Add External Script" msgstr "" -#: ../src/verbs.cpp:2927 +#: ../src/verbs.cpp:3018 msgid "Add an external script" msgstr "" -#: ../src/verbs.cpp:2929 +#: ../src/verbs.cpp:3020 msgid "Add Embedded Script" msgstr "" -#: ../src/verbs.cpp:2929 +#: ../src/verbs.cpp:3020 msgid "Add an embedded script" msgstr "" -#: ../src/verbs.cpp:2931 +#: ../src/verbs.cpp:3022 msgid "Edit Embedded Script" msgstr "" -#: ../src/verbs.cpp:2931 +#: ../src/verbs.cpp:3022 msgid "Edit an embedded script" msgstr "" -#: ../src/verbs.cpp:2933 +#: ../src/verbs.cpp:3024 msgid "Remove External Script" msgstr "" -#: ../src/verbs.cpp:2933 +#: ../src/verbs.cpp:3024 msgid "Remove an external script" msgstr "" -#: ../src/verbs.cpp:2935 +#: ../src/verbs.cpp:3026 msgid "Remove Embedded Script" msgstr "" -#: ../src/verbs.cpp:2935 +#: ../src/verbs.cpp:3026 msgid "Remove an embedded script" msgstr "" -#: ../src/verbs.cpp:2957 ../src/verbs.cpp:2958 +#: ../src/verbs.cpp:3048 ../src/verbs.cpp:3049 msgid "Center on horizontal and vertical axis" msgstr "" -#: ../src/widgets/arc-toolbar.cpp:131 +#: ../src/widgets/arc-toolbar.cpp:132 msgid "Arc: Change start/end" msgstr "" -#: ../src/widgets/arc-toolbar.cpp:197 +#: ../src/widgets/arc-toolbar.cpp:198 msgid "Arc: Change open/closed" msgstr "" -#: ../src/widgets/arc-toolbar.cpp:288 ../src/widgets/arc-toolbar.cpp:317 -#: ../src/widgets/rect-toolbar.cpp:258 ../src/widgets/rect-toolbar.cpp:296 +#: ../src/widgets/arc-toolbar.cpp:289 ../src/widgets/arc-toolbar.cpp:319 +#: ../src/widgets/rect-toolbar.cpp:261 ../src/widgets/rect-toolbar.cpp:300 #: ../src/widgets/spiral-toolbar.cpp:214 ../src/widgets/spiral-toolbar.cpp:238 -#: ../src/widgets/star-toolbar.cpp:383 ../src/widgets/star-toolbar.cpp:444 +#: ../src/widgets/star-toolbar.cpp:384 ../src/widgets/star-toolbar.cpp:446 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:291 ../src/widgets/arc-toolbar.cpp:302 -#: ../src/widgets/rect-toolbar.cpp:266 ../src/widgets/rect-toolbar.cpp:284 +#: ../src/widgets/arc-toolbar.cpp:292 ../src/widgets/arc-toolbar.cpp:303 +#: ../src/widgets/rect-toolbar.cpp:269 ../src/widgets/rect-toolbar.cpp:287 #: ../src/widgets/spiral-toolbar.cpp:216 ../src/widgets/spiral-toolbar.cpp:227 -#: ../src/widgets/star-toolbar.cpp:385 +#: ../src/widgets/star-toolbar.cpp:386 msgid "<b>Change:</b>" msgstr "" -#: ../src/widgets/arc-toolbar.cpp:326 +#: ../src/widgets/arc-toolbar.cpp:328 msgid "Start:" msgstr "" -#: ../src/widgets/arc-toolbar.cpp:327 +#: ../src/widgets/arc-toolbar.cpp:329 msgid "The angle (in degrees) from the horizontal to the arc's start point" msgstr "" -#: ../src/widgets/arc-toolbar.cpp:339 +#: ../src/widgets/arc-toolbar.cpp:341 msgid "End:" msgstr "" -#: ../src/widgets/arc-toolbar.cpp:340 +#: ../src/widgets/arc-toolbar.cpp:342 msgid "The angle (in degrees) from the horizontal to the arc's end point" msgstr "" -#: ../src/widgets/arc-toolbar.cpp:356 +#: ../src/widgets/arc-toolbar.cpp:358 msgid "Closed arc" msgstr "" -#: ../src/widgets/arc-toolbar.cpp:357 +#: ../src/widgets/arc-toolbar.cpp:359 msgid "Switch to segment (closed shape with two radii)" msgstr "" -#: ../src/widgets/arc-toolbar.cpp:363 +#: ../src/widgets/arc-toolbar.cpp:365 msgid "Open Arc" msgstr "" -#: ../src/widgets/arc-toolbar.cpp:364 +#: ../src/widgets/arc-toolbar.cpp:366 msgid "Switch to arc (unclosed shape)" msgstr "" -#: ../src/widgets/arc-toolbar.cpp:387 +#: ../src/widgets/arc-toolbar.cpp:389 msgid "Make whole" msgstr "" -#: ../src/widgets/arc-toolbar.cpp:388 +#: ../src/widgets/arc-toolbar.cpp:390 msgid "Make the shape a whole ellipse, not arc or segment" msgstr "" #. TODO: use the correct axis here, too -#: ../src/widgets/box3d-toolbar.cpp:232 +#: ../src/widgets/box3d-toolbar.cpp:233 msgid "3D Box: Change perspective (angle of infinite axis)" msgstr "" -#: ../src/widgets/box3d-toolbar.cpp:299 +#: ../src/widgets/box3d-toolbar.cpp:302 msgid "Angle in X direction" msgstr "" #. Translators: PL is short for 'perspective line' -#: ../src/widgets/box3d-toolbar.cpp:301 +#: ../src/widgets/box3d-toolbar.cpp:304 msgid "Angle of PLs in X direction" msgstr "" #. Translators: VP is short for 'vanishing point' -#: ../src/widgets/box3d-toolbar.cpp:323 +#: ../src/widgets/box3d-toolbar.cpp:326 msgid "State of VP in X direction" msgstr "" -#: ../src/widgets/box3d-toolbar.cpp:324 +#: ../src/widgets/box3d-toolbar.cpp:327 msgid "Toggle VP in X direction between 'finite' and 'infinite' (=parallel)" msgstr "" -#: ../src/widgets/box3d-toolbar.cpp:339 +#: ../src/widgets/box3d-toolbar.cpp:342 msgid "Angle in Y direction" msgstr "" -#: ../src/widgets/box3d-toolbar.cpp:339 +#: ../src/widgets/box3d-toolbar.cpp:342 msgid "Angle Y:" msgstr "" #. Translators: PL is short for 'perspective line' -#: ../src/widgets/box3d-toolbar.cpp:341 +#: ../src/widgets/box3d-toolbar.cpp:344 msgid "Angle of PLs in Y direction" msgstr "" #. Translators: VP is short for 'vanishing point' -#: ../src/widgets/box3d-toolbar.cpp:362 +#: ../src/widgets/box3d-toolbar.cpp:365 msgid "State of VP in Y direction" msgstr "" -#: ../src/widgets/box3d-toolbar.cpp:363 +#: ../src/widgets/box3d-toolbar.cpp:366 msgid "Toggle VP in Y direction between 'finite' and 'infinite' (=parallel)" msgstr "" -#: ../src/widgets/box3d-toolbar.cpp:378 +#: ../src/widgets/box3d-toolbar.cpp:381 msgid "Angle in Z direction" msgstr "" #. Translators: PL is short for 'perspective line' -#: ../src/widgets/box3d-toolbar.cpp:380 +#: ../src/widgets/box3d-toolbar.cpp:383 msgid "Angle of PLs in Z direction" msgstr "" #. Translators: VP is short for 'vanishing point' -#: ../src/widgets/box3d-toolbar.cpp:401 +#: ../src/widgets/box3d-toolbar.cpp:404 msgid "State of VP in Z direction" msgstr "" -#: ../src/widgets/box3d-toolbar.cpp:402 +#: ../src/widgets/box3d-toolbar.cpp:405 msgid "Toggle VP in Z direction between 'finite' and 'infinite' (=parallel)" msgstr "" @@ -25262,7 +26061,7 @@ msgstr "" #. Scale #: ../src/widgets/calligraphy-toolbar.cpp:427 #: ../src/widgets/calligraphy-toolbar.cpp:460 -#: ../src/widgets/eraser-toolbar.cpp:125 ../src/widgets/pencil-toolbar.cpp:269 +#: ../src/widgets/eraser-toolbar.cpp:125 ../src/widgets/pencil-toolbar.cpp:275 #: ../src/widgets/spray-toolbar.cpp:113 ../src/widgets/spray-toolbar.cpp:129 #: ../src/widgets/spray-toolbar.cpp:145 ../src/widgets/spray-toolbar.cpp:205 #: ../src/widgets/spray-toolbar.cpp:235 ../src/widgets/spray-toolbar.cpp:253 @@ -25802,44 +26601,44 @@ msgstr "" msgid "Set pattern on stroke" msgstr "" -#: ../src/widgets/font-selector.cpp:134 ../src/widgets/text-toolbar.cpp:958 +#: ../src/widgets/font-selector.cpp:120 ../src/widgets/text-toolbar.cpp:958 #: ../src/widgets/text-toolbar.cpp:1272 msgid "Font size" msgstr "" #. Family frame -#: ../src/widgets/font-selector.cpp:148 +#: ../src/widgets/font-selector.cpp:134 msgid "Font family" msgstr "" #. Style frame -#: ../src/widgets/font-selector.cpp:193 +#: ../src/widgets/font-selector.cpp:179 msgctxt "Font selector" msgid "Style" msgstr "" -#: ../src/widgets/font-selector.cpp:225 +#: ../src/widgets/font-selector.cpp:211 msgid "Face" msgstr "" -#: ../src/widgets/font-selector.cpp:254 ../share/extensions/dots.inx.h:3 +#: ../src/widgets/font-selector.cpp:240 ../share/extensions/dots.inx.h:3 msgid "Font size:" msgstr "" -#: ../src/widgets/gradient-selector.cpp:214 +#: ../src/widgets/gradient-selector.cpp:196 msgid "Create a duplicate gradient" msgstr "" -#: ../src/widgets/gradient-selector.cpp:230 +#: ../src/widgets/gradient-selector.cpp:212 msgid "Edit gradient" msgstr "" -#: ../src/widgets/gradient-selector.cpp:306 -#: ../src/widgets/paint-selector.cpp:244 +#: ../src/widgets/gradient-selector.cpp:288 +#: ../src/widgets/paint-selector.cpp:236 msgid "Swatch" msgstr "" -#: ../src/widgets/gradient-selector.cpp:356 +#: ../src/widgets/gradient-selector.cpp:338 msgid "Rename gradient" msgstr "" @@ -25859,7 +26658,7 @@ msgid "Multiple stops" msgstr "" #: ../src/widgets/gradient-toolbar.cpp:774 -#: ../src/widgets/gradient-vector.cpp:629 +#: ../src/widgets/gradient-vector.cpp:609 msgid "No stops in gradient" msgstr "" @@ -25872,7 +26671,7 @@ msgid "Set gradient repeat" msgstr "" #: ../src/widgets/gradient-toolbar.cpp:987 -#: ../src/widgets/gradient-vector.cpp:740 +#: ../src/widgets/gradient-vector.cpp:720 msgid "Change gradient stop offset" msgstr "" @@ -25893,32 +26692,32 @@ msgid "Create radial (elliptic or circular) gradient" msgstr "" #: ../src/widgets/gradient-toolbar.cpp:1041 -#: ../src/widgets/mesh-toolbar.cpp:211 +#: ../src/widgets/mesh-toolbar.cpp:207 msgid "New:" msgstr "" #: ../src/widgets/gradient-toolbar.cpp:1064 -#: ../src/widgets/mesh-toolbar.cpp:234 +#: ../src/widgets/mesh-toolbar.cpp:230 msgid "fill" msgstr "" #: ../src/widgets/gradient-toolbar.cpp:1064 -#: ../src/widgets/mesh-toolbar.cpp:234 +#: ../src/widgets/mesh-toolbar.cpp:230 msgid "Create gradient in the fill" msgstr "" #: ../src/widgets/gradient-toolbar.cpp:1068 -#: ../src/widgets/mesh-toolbar.cpp:238 +#: ../src/widgets/mesh-toolbar.cpp:234 msgid "stroke" msgstr "" #: ../src/widgets/gradient-toolbar.cpp:1068 -#: ../src/widgets/mesh-toolbar.cpp:238 +#: ../src/widgets/mesh-toolbar.cpp:234 msgid "Create gradient in the stroke" msgstr "" #: ../src/widgets/gradient-toolbar.cpp:1071 -#: ../src/widgets/mesh-toolbar.cpp:241 +#: ../src/widgets/mesh-toolbar.cpp:237 msgid "on:" msgstr "" @@ -25939,10 +26738,6 @@ msgctxt "Gradient repeat type" msgid "None" msgstr "" -#: ../src/widgets/gradient-toolbar.cpp:1115 -msgid "Reflected" -msgstr "" - #: ../src/widgets/gradient-toolbar.cpp:1118 msgid "Direct" msgstr "" @@ -25982,7 +26777,7 @@ msgstr "" #. Label #: ../src/widgets/gradient-toolbar.cpp:1156 -#: ../src/widgets/gradient-vector.cpp:926 +#: ../src/widgets/gradient-vector.cpp:906 msgctxt "Gradient" msgid "Offset:" msgstr "" @@ -25998,14 +26793,10 @@ msgstr "" #: ../src/widgets/gradient-toolbar.cpp:1188 #: ../src/widgets/gradient-toolbar.cpp:1189 -#: ../src/widgets/gradient-vector.cpp:908 +#: ../src/widgets/gradient-vector.cpp:888 msgid "Delete stop" msgstr "" -#: ../src/widgets/gradient-toolbar.cpp:1202 -msgid "Reverse" -msgstr "" - #: ../src/widgets/gradient-toolbar.cpp:1203 msgid "Reverse the direction of the gradient" msgstr "" @@ -26018,43 +26809,43 @@ msgstr "" msgid "Link gradients to change all related gradients" msgstr "" -#: ../src/widgets/gradient-vector.cpp:332 -#: ../src/widgets/paint-selector.cpp:922 +#: ../src/widgets/gradient-vector.cpp:312 +#: ../src/widgets/paint-selector.cpp:947 #: ../src/widgets/stroke-marker-selector.cpp:154 msgid "No document selected" msgstr "" -#: ../src/widgets/gradient-vector.cpp:336 +#: ../src/widgets/gradient-vector.cpp:316 msgid "No gradients in document" msgstr "" -#: ../src/widgets/gradient-vector.cpp:340 +#: ../src/widgets/gradient-vector.cpp:320 msgid "No gradient selected" msgstr "" #. TRANSLATORS: "Stop" means: a "phase" of a gradient -#: ../src/widgets/gradient-vector.cpp:903 +#: ../src/widgets/gradient-vector.cpp:883 msgid "Add stop" msgstr "" -#: ../src/widgets/gradient-vector.cpp:906 +#: ../src/widgets/gradient-vector.cpp:886 msgid "Add another control stop to gradient" msgstr "" -#: ../src/widgets/gradient-vector.cpp:911 +#: ../src/widgets/gradient-vector.cpp:891 msgid "Delete current control stop from gradient" msgstr "" #. TRANSLATORS: "Stop" means: a "phase" of a gradient -#: ../src/widgets/gradient-vector.cpp:979 +#: ../src/widgets/gradient-vector.cpp:959 msgid "Stop Color" msgstr "" -#: ../src/widgets/gradient-vector.cpp:1007 +#: ../src/widgets/gradient-vector.cpp:987 msgid "Gradient editor" msgstr "" -#: ../src/widgets/gradient-vector.cpp:1307 +#: ../src/widgets/gradient-vector.cpp:1287 msgid "Change gradient stop color" msgstr "" @@ -26074,56 +26865,56 @@ msgstr "" msgid "Open both" msgstr "" -#: ../src/widgets/lpe-toolbar.cpp:298 +#: ../src/widgets/lpe-toolbar.cpp:301 msgid "All inactive" msgstr "" -#: ../src/widgets/lpe-toolbar.cpp:299 +#: ../src/widgets/lpe-toolbar.cpp:302 msgid "No geometric tool is active" msgstr "" -#: ../src/widgets/lpe-toolbar.cpp:332 +#: ../src/widgets/lpe-toolbar.cpp:335 msgid "Show limiting bounding box" msgstr "" -#: ../src/widgets/lpe-toolbar.cpp:333 +#: ../src/widgets/lpe-toolbar.cpp:336 msgid "Show bounding box (used to cut infinite lines)" msgstr "" -#: ../src/widgets/lpe-toolbar.cpp:344 +#: ../src/widgets/lpe-toolbar.cpp:347 msgid "Get limiting bounding box from selection" msgstr "" -#: ../src/widgets/lpe-toolbar.cpp:345 +#: ../src/widgets/lpe-toolbar.cpp:348 msgid "" "Set limiting bounding box (used to cut infinite lines) to the bounding box " "of current selection" msgstr "" -#: ../src/widgets/lpe-toolbar.cpp:357 +#: ../src/widgets/lpe-toolbar.cpp:360 msgid "Choose a line segment type" msgstr "" -#: ../src/widgets/lpe-toolbar.cpp:373 +#: ../src/widgets/lpe-toolbar.cpp:376 msgid "Display measuring info" msgstr "" -#: ../src/widgets/lpe-toolbar.cpp:374 +#: ../src/widgets/lpe-toolbar.cpp:377 msgid "Display measuring info for selected items" msgstr "" #. Add the units menu. -#: ../src/widgets/lpe-toolbar.cpp:384 ../src/widgets/node-toolbar.cpp:613 -#: ../src/widgets/paintbucket-toolbar.cpp:166 -#: ../src/widgets/rect-toolbar.cpp:375 ../src/widgets/select-toolbar.cpp:536 +#: ../src/widgets/lpe-toolbar.cpp:387 ../src/widgets/node-toolbar.cpp:613 +#: ../src/widgets/paintbucket-toolbar.cpp:168 +#: ../src/widgets/rect-toolbar.cpp:379 ../src/widgets/select-toolbar.cpp:538 msgid "Units" msgstr "" -#: ../src/widgets/lpe-toolbar.cpp:394 +#: ../src/widgets/lpe-toolbar.cpp:397 msgid "Open LPE dialog" msgstr "" -#: ../src/widgets/lpe-toolbar.cpp:395 +#: ../src/widgets/lpe-toolbar.cpp:398 msgid "Open LPE dialog (to adapt parameters numerically)" msgstr "" @@ -26144,70 +26935,70 @@ msgstr "" msgid "The units to be used for the measurements" msgstr "" -#: ../src/widgets/mesh-toolbar.cpp:204 +#: ../src/widgets/mesh-toolbar.cpp:200 msgid "normal" msgstr "" -#: ../src/widgets/mesh-toolbar.cpp:204 +#: ../src/widgets/mesh-toolbar.cpp:200 msgid "Create mesh gradient" msgstr "" -#: ../src/widgets/mesh-toolbar.cpp:208 +#: ../src/widgets/mesh-toolbar.cpp:204 msgid "conical" msgstr "" -#: ../src/widgets/mesh-toolbar.cpp:208 +#: ../src/widgets/mesh-toolbar.cpp:204 msgid "Create conical gradient" msgstr "" -#: ../src/widgets/mesh-toolbar.cpp:263 +#: ../src/widgets/mesh-toolbar.cpp:259 msgid "Rows" msgstr "" -#: ../src/widgets/mesh-toolbar.cpp:263 +#: ../src/widgets/mesh-toolbar.cpp:259 #: ../share/extensions/guides_creator.inx.h:5 #: ../share/extensions/layout_nup.inx.h:12 msgid "Rows:" msgstr "" -#: ../src/widgets/mesh-toolbar.cpp:263 +#: ../src/widgets/mesh-toolbar.cpp:259 msgid "Number of rows in new mesh" msgstr "" -#: ../src/widgets/mesh-toolbar.cpp:279 +#: ../src/widgets/mesh-toolbar.cpp:275 msgid "Columns" msgstr "" -#: ../src/widgets/mesh-toolbar.cpp:279 +#: ../src/widgets/mesh-toolbar.cpp:275 #: ../share/extensions/guides_creator.inx.h:4 msgid "Columns:" msgstr "" -#: ../src/widgets/mesh-toolbar.cpp:279 +#: ../src/widgets/mesh-toolbar.cpp:275 msgid "Number of columns in new mesh" msgstr "" -#: ../src/widgets/mesh-toolbar.cpp:293 +#: ../src/widgets/mesh-toolbar.cpp:289 msgid "Edit Fill" msgstr "" -#: ../src/widgets/mesh-toolbar.cpp:294 +#: ../src/widgets/mesh-toolbar.cpp:290 msgid "Edit fill mesh" msgstr "" -#: ../src/widgets/mesh-toolbar.cpp:305 +#: ../src/widgets/mesh-toolbar.cpp:301 msgid "Edit Stroke" msgstr "" -#: ../src/widgets/mesh-toolbar.cpp:306 +#: ../src/widgets/mesh-toolbar.cpp:302 msgid "Edit stroke mesh" msgstr "" -#: ../src/widgets/mesh-toolbar.cpp:317 ../src/widgets/node-toolbar.cpp:521 +#: ../src/widgets/mesh-toolbar.cpp:313 ../src/widgets/node-toolbar.cpp:521 msgid "Show Handles" msgstr "" -#: ../src/widgets/mesh-toolbar.cpp:318 +#: ../src/widgets/mesh-toolbar.cpp:314 msgid "Show side and tensor handles" msgstr "" @@ -26403,129 +27194,137 @@ msgstr "" msgid "Y coordinate of selected node(s)" msgstr "" -#: ../src/widgets/paint-selector.cpp:234 +#: ../src/widgets/paint-selector.cpp:222 msgid "No paint" msgstr "" -#: ../src/widgets/paint-selector.cpp:236 +#: ../src/widgets/paint-selector.cpp:224 msgid "Flat color" msgstr "" -#: ../src/widgets/paint-selector.cpp:238 +#: ../src/widgets/paint-selector.cpp:226 msgid "Linear gradient" msgstr "" -#: ../src/widgets/paint-selector.cpp:240 +#: ../src/widgets/paint-selector.cpp:228 msgid "Radial gradient" msgstr "" -#: ../src/widgets/paint-selector.cpp:246 +#: ../src/widgets/paint-selector.cpp:231 +msgid "Mesh gradient" +msgstr "" + +#: ../src/widgets/paint-selector.cpp:238 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:263 +#: ../src/widgets/paint-selector.cpp:255 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:274 +#: ../src/widgets/paint-selector.cpp:266 msgid "" "Fill is solid unless a subpath is counterdirectional (fill-rule: nonzero)" msgstr "" -#: ../src/widgets/paint-selector.cpp:590 +#: ../src/widgets/paint-selector.cpp:600 msgid "<b>No objects</b>" msgstr "" -#: ../src/widgets/paint-selector.cpp:601 +#: ../src/widgets/paint-selector.cpp:611 msgid "<b>Multiple styles</b>" msgstr "" -#: ../src/widgets/paint-selector.cpp:612 +#: ../src/widgets/paint-selector.cpp:622 msgid "<b>Paint is undefined</b>" msgstr "" -#: ../src/widgets/paint-selector.cpp:623 +#: ../src/widgets/paint-selector.cpp:633 msgid "<b>No paint</b>" msgstr "" -#: ../src/widgets/paint-selector.cpp:694 +#: ../src/widgets/paint-selector.cpp:704 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:758 +#: ../src/widgets/paint-selector.cpp:773 msgid "<b>Linear gradient</b>" msgstr "" -#: ../src/widgets/paint-selector.cpp:761 +#: ../src/widgets/paint-selector.cpp:776 msgid "<b>Radial gradient</b>" msgstr "" -#: ../src/widgets/paint-selector.cpp:1055 +#: ../src/widgets/paint-selector.cpp:781 +msgid "<b>Mesh gradient</b>" +msgstr "" + +#: ../src/widgets/paint-selector.cpp:1080 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:1068 +#: ../src/widgets/paint-selector.cpp:1093 msgid "<b>Pattern fill</b>" msgstr "" -#: ../src/widgets/paint-selector.cpp:1162 +#: ../src/widgets/paint-selector.cpp:1187 msgid "<b>Swatch fill</b>" msgstr "" -#: ../src/widgets/paintbucket-toolbar.cpp:133 +#: ../src/widgets/paintbucket-toolbar.cpp:135 msgid "Fill by" msgstr "" -#: ../src/widgets/paintbucket-toolbar.cpp:134 +#: ../src/widgets/paintbucket-toolbar.cpp:136 msgid "Fill by:" msgstr "" -#: ../src/widgets/paintbucket-toolbar.cpp:146 +#: ../src/widgets/paintbucket-toolbar.cpp:148 msgid "Fill Threshold" msgstr "" -#: ../src/widgets/paintbucket-toolbar.cpp:147 +#: ../src/widgets/paintbucket-toolbar.cpp:149 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:174 +#: ../src/widgets/paintbucket-toolbar.cpp:176 msgid "Grow/shrink by" msgstr "" -#: ../src/widgets/paintbucket-toolbar.cpp:174 +#: ../src/widgets/paintbucket-toolbar.cpp:176 msgid "Grow/shrink by:" msgstr "" -#: ../src/widgets/paintbucket-toolbar.cpp:175 +#: ../src/widgets/paintbucket-toolbar.cpp:177 msgid "" "The amount to grow (positive) or shrink (negative) the created fill path" msgstr "" -#: ../src/widgets/paintbucket-toolbar.cpp:200 +#: ../src/widgets/paintbucket-toolbar.cpp:202 msgid "Close gaps" msgstr "" -#: ../src/widgets/paintbucket-toolbar.cpp:201 +#: ../src/widgets/paintbucket-toolbar.cpp:203 msgid "Close gaps:" msgstr "" -#: ../src/widgets/paintbucket-toolbar.cpp:212 -#: ../src/widgets/pencil-toolbar.cpp:293 ../src/widgets/spiral-toolbar.cpp:289 -#: ../src/widgets/star-toolbar.cpp:564 +#: ../src/widgets/paintbucket-toolbar.cpp:214 +#: ../src/widgets/pencil-toolbar.cpp:299 ../src/widgets/spiral-toolbar.cpp:289 +#: ../src/widgets/star-toolbar.cpp:566 msgid "Defaults" msgstr "" -#: ../src/widgets/paintbucket-toolbar.cpp:213 +#: ../src/widgets/paintbucket-toolbar.cpp:215 msgid "" "Reset paint bucket parameters to defaults (use Inkscape Preferences > Tools " "to change defaults)" @@ -26543,130 +27342,138 @@ msgstr "" msgid "Create Spiro path" msgstr "" -#: ../src/widgets/pencil-toolbar.cpp:111 +#: ../src/widgets/pencil-toolbar.cpp:110 +msgid "Create BSpline path" +msgstr "" + +#: ../src/widgets/pencil-toolbar.cpp:116 msgid "Zigzag" msgstr "" -#: ../src/widgets/pencil-toolbar.cpp:112 +#: ../src/widgets/pencil-toolbar.cpp:117 msgid "Create a sequence of straight line segments" msgstr "" -#: ../src/widgets/pencil-toolbar.cpp:118 +#: ../src/widgets/pencil-toolbar.cpp:123 msgid "Paraxial" msgstr "" -#: ../src/widgets/pencil-toolbar.cpp:119 +#: ../src/widgets/pencil-toolbar.cpp:124 msgid "Create a sequence of paraxial line segments" msgstr "" -#: ../src/widgets/pencil-toolbar.cpp:127 +#: ../src/widgets/pencil-toolbar.cpp:132 msgid "Mode of new lines drawn by this tool" msgstr "" -#: ../src/widgets/pencil-toolbar.cpp:155 +#: ../src/widgets/pencil-toolbar.cpp:160 msgctxt "Freehand shape" msgid "None" msgstr "" -#: ../src/widgets/pencil-toolbar.cpp:156 +#: ../src/widgets/pencil-toolbar.cpp:161 msgid "Triangle in" msgstr "" -#: ../src/widgets/pencil-toolbar.cpp:157 +#: ../src/widgets/pencil-toolbar.cpp:162 msgid "Triangle out" msgstr "" -#: ../src/widgets/pencil-toolbar.cpp:159 +#: ../src/widgets/pencil-toolbar.cpp:164 msgid "From clipboard" msgstr "" -#: ../src/widgets/pencil-toolbar.cpp:184 ../src/widgets/pencil-toolbar.cpp:185 +#: ../src/widgets/pencil-toolbar.cpp:165 +msgid "Last applied" +msgstr "" + +#: ../src/widgets/pencil-toolbar.cpp:190 ../src/widgets/pencil-toolbar.cpp:191 msgid "Shape:" msgstr "" -#: ../src/widgets/pencil-toolbar.cpp:184 +#: ../src/widgets/pencil-toolbar.cpp:190 msgid "Shape of new paths drawn by this tool" msgstr "" -#: ../src/widgets/pencil-toolbar.cpp:269 +#: ../src/widgets/pencil-toolbar.cpp:275 msgid "(many nodes, rough)" msgstr "" -#: ../src/widgets/pencil-toolbar.cpp:269 +#: ../src/widgets/pencil-toolbar.cpp:275 msgid "(few nodes, smooth)" msgstr "" -#: ../src/widgets/pencil-toolbar.cpp:272 +#: ../src/widgets/pencil-toolbar.cpp:278 msgid "Smoothing:" msgstr "" -#: ../src/widgets/pencil-toolbar.cpp:272 +#: ../src/widgets/pencil-toolbar.cpp:278 msgid "Smoothing: " msgstr "" -#: ../src/widgets/pencil-toolbar.cpp:273 +#: ../src/widgets/pencil-toolbar.cpp:279 msgid "How much smoothing (simplifying) is applied to the line" msgstr "" -#: ../src/widgets/pencil-toolbar.cpp:294 +#: ../src/widgets/pencil-toolbar.cpp:300 msgid "" "Reset pencil parameters to defaults (use Inkscape Preferences > Tools to " "change defaults)" msgstr "" -#: ../src/widgets/rect-toolbar.cpp:122 +#: ../src/widgets/rect-toolbar.cpp:124 msgid "Change rectangle" msgstr "" -#: ../src/widgets/rect-toolbar.cpp:314 +#: ../src/widgets/rect-toolbar.cpp:318 msgid "W:" msgstr "" -#: ../src/widgets/rect-toolbar.cpp:314 +#: ../src/widgets/rect-toolbar.cpp:318 msgid "Width of rectangle" msgstr "" -#: ../src/widgets/rect-toolbar.cpp:331 +#: ../src/widgets/rect-toolbar.cpp:335 msgid "H:" msgstr "" -#: ../src/widgets/rect-toolbar.cpp:331 +#: ../src/widgets/rect-toolbar.cpp:335 msgid "Height of rectangle" msgstr "" -#: ../src/widgets/rect-toolbar.cpp:345 ../src/widgets/rect-toolbar.cpp:360 +#: ../src/widgets/rect-toolbar.cpp:349 ../src/widgets/rect-toolbar.cpp:364 msgid "not rounded" msgstr "" -#: ../src/widgets/rect-toolbar.cpp:348 +#: ../src/widgets/rect-toolbar.cpp:352 msgid "Horizontal radius" msgstr "" -#: ../src/widgets/rect-toolbar.cpp:348 +#: ../src/widgets/rect-toolbar.cpp:352 msgid "Rx:" msgstr "" -#: ../src/widgets/rect-toolbar.cpp:348 +#: ../src/widgets/rect-toolbar.cpp:352 msgid "Horizontal radius of rounded corners" msgstr "" -#: ../src/widgets/rect-toolbar.cpp:363 +#: ../src/widgets/rect-toolbar.cpp:367 msgid "Vertical radius" msgstr "" -#: ../src/widgets/rect-toolbar.cpp:363 +#: ../src/widgets/rect-toolbar.cpp:367 msgid "Ry:" msgstr "" -#: ../src/widgets/rect-toolbar.cpp:363 +#: ../src/widgets/rect-toolbar.cpp:367 msgid "Vertical radius of rounded corners" msgstr "" -#: ../src/widgets/rect-toolbar.cpp:382 +#: ../src/widgets/rect-toolbar.cpp:386 msgid "Not rounded" msgstr "" -#: ../src/widgets/rect-toolbar.cpp:383 +#: ../src/widgets/rect-toolbar.cpp:387 msgid "Make corners sharp" msgstr "" @@ -26706,128 +27513,128 @@ msgstr "" msgid "Maximum size of the ruler" msgstr "" -#: ../src/widgets/select-toolbar.cpp:260 +#: ../src/widgets/select-toolbar.cpp:262 msgid "Transform by toolbar" msgstr "" -#: ../src/widgets/select-toolbar.cpp:339 +#: ../src/widgets/select-toolbar.cpp:341 msgid "Now <b>stroke width</b> is <b>scaled</b> when objects are scaled." msgstr "" -#: ../src/widgets/select-toolbar.cpp:341 +#: ../src/widgets/select-toolbar.cpp:343 msgid "Now <b>stroke width</b> is <b>not scaled</b> when objects are scaled." msgstr "" -#: ../src/widgets/select-toolbar.cpp:352 +#: ../src/widgets/select-toolbar.cpp:354 msgid "" "Now <b>rounded rectangle corners</b> are <b>scaled</b> when rectangles are " "scaled." msgstr "" -#: ../src/widgets/select-toolbar.cpp:354 +#: ../src/widgets/select-toolbar.cpp:356 msgid "" "Now <b>rounded rectangle corners</b> are <b>not scaled</b> when rectangles " "are scaled." msgstr "" -#: ../src/widgets/select-toolbar.cpp:365 +#: ../src/widgets/select-toolbar.cpp:367 msgid "" "Now <b>gradients</b> are <b>transformed</b> along with their objects when " "those are transformed (moved, scaled, rotated, or skewed)." msgstr "" -#: ../src/widgets/select-toolbar.cpp:367 +#: ../src/widgets/select-toolbar.cpp:369 msgid "" "Now <b>gradients</b> remain <b>fixed</b> when objects are transformed " "(moved, scaled, rotated, or skewed)." msgstr "" -#: ../src/widgets/select-toolbar.cpp:378 +#: ../src/widgets/select-toolbar.cpp:380 msgid "" "Now <b>patterns</b> are <b>transformed</b> along with their objects when " "those are transformed (moved, scaled, rotated, or skewed)." msgstr "" -#: ../src/widgets/select-toolbar.cpp:380 +#: ../src/widgets/select-toolbar.cpp:382 msgid "" "Now <b>patterns</b> remain <b>fixed</b> when objects are transformed (moved, " "scaled, rotated, or skewed)." msgstr "" #. four spinbuttons -#: ../src/widgets/select-toolbar.cpp:498 +#: ../src/widgets/select-toolbar.cpp:500 msgctxt "Select toolbar" msgid "X position" msgstr "" -#: ../src/widgets/select-toolbar.cpp:498 +#: ../src/widgets/select-toolbar.cpp:500 msgctxt "Select toolbar" msgid "X:" msgstr "" -#: ../src/widgets/select-toolbar.cpp:500 +#: ../src/widgets/select-toolbar.cpp:502 msgid "Horizontal coordinate of selection" msgstr "" -#: ../src/widgets/select-toolbar.cpp:504 +#: ../src/widgets/select-toolbar.cpp:506 msgctxt "Select toolbar" msgid "Y position" msgstr "" -#: ../src/widgets/select-toolbar.cpp:504 +#: ../src/widgets/select-toolbar.cpp:506 msgctxt "Select toolbar" msgid "Y:" msgstr "" -#: ../src/widgets/select-toolbar.cpp:506 +#: ../src/widgets/select-toolbar.cpp:508 msgid "Vertical coordinate of selection" msgstr "" -#: ../src/widgets/select-toolbar.cpp:510 +#: ../src/widgets/select-toolbar.cpp:512 msgctxt "Select toolbar" msgid "Width" msgstr "" -#: ../src/widgets/select-toolbar.cpp:510 +#: ../src/widgets/select-toolbar.cpp:512 msgctxt "Select toolbar" msgid "W:" msgstr "" -#: ../src/widgets/select-toolbar.cpp:512 +#: ../src/widgets/select-toolbar.cpp:514 msgid "Width of selection" msgstr "" -#: ../src/widgets/select-toolbar.cpp:519 +#: ../src/widgets/select-toolbar.cpp:521 msgid "Lock width and height" msgstr "" -#: ../src/widgets/select-toolbar.cpp:520 +#: ../src/widgets/select-toolbar.cpp:522 msgid "When locked, change both width and height by the same proportion" msgstr "" -#: ../src/widgets/select-toolbar.cpp:529 +#: ../src/widgets/select-toolbar.cpp:531 msgctxt "Select toolbar" msgid "Height" msgstr "" -#: ../src/widgets/select-toolbar.cpp:529 +#: ../src/widgets/select-toolbar.cpp:531 msgctxt "Select toolbar" msgid "H:" msgstr "" -#: ../src/widgets/select-toolbar.cpp:531 +#: ../src/widgets/select-toolbar.cpp:533 msgid "Height of selection" msgstr "" -#: ../src/widgets/select-toolbar.cpp:581 +#: ../src/widgets/select-toolbar.cpp:583 msgid "Scale rounded corners" msgstr "" -#: ../src/widgets/select-toolbar.cpp:592 +#: ../src/widgets/select-toolbar.cpp:594 msgid "Move gradients" msgstr "" -#: ../src/widgets/select-toolbar.cpp:603 +#: ../src/widgets/select-toolbar.cpp:605 msgid "Move patterns" msgstr "" @@ -26835,147 +27642,147 @@ msgstr "" msgid "Set attribute" msgstr "" -#: ../src/widgets/sp-color-icc-selector.cpp:257 +#: ../src/widgets/sp-color-icc-selector.cpp:234 msgid "CMS" msgstr "" -#: ../src/widgets/sp-color-icc-selector.cpp:355 -#: ../src/widgets/sp-color-scales.cpp:428 +#: ../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:356 -#: ../src/widgets/sp-color-scales.cpp:431 +#: ../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:357 -#: ../src/widgets/sp-color-scales.cpp:434 +#: ../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:359 +#: ../src/widgets/sp-color-icc-selector.cpp:334 msgid "Gray" msgstr "" #. TYPE_GRAY_16 -#: ../src/widgets/sp-color-icc-selector.cpp:361 -#: ../src/widgets/sp-color-icc-selector.cpp:365 -#: ../src/widgets/sp-color-scales.cpp:454 +#: ../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:362 -#: ../src/widgets/sp-color-icc-selector.cpp:367 -#: ../src/widgets/sp-color-scales.cpp:457 +#: ../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:366 -#: ../src/widgets/sp-color-scales.cpp:460 +#: ../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:369 -#: ../src/widgets/sp-color-icc-selector.cpp:374 -#: ../src/widgets/sp-color-scales.cpp:482 +#: ../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:370 -#: ../src/widgets/sp-color-icc-selector.cpp:375 -#: ../src/widgets/sp-color-scales.cpp:485 +#: ../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:371 -#: ../src/widgets/sp-color-icc-selector.cpp:376 -#: ../src/widgets/sp-color-scales.cpp:488 +#: ../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:372 -#: ../src/widgets/sp-color-scales.cpp:491 +#: ../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:455 +#: ../src/widgets/sp-color-icc-selector.cpp:430 msgid "Fix" msgstr "" -#: ../src/widgets/sp-color-icc-selector.cpp:458 +#: ../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:561 -#: ../src/widgets/sp-color-scales.cpp:437 -#: ../src/widgets/sp-color-scales.cpp:463 -#: ../src/widgets/sp-color-scales.cpp:494 -#: ../src/widgets/sp-color-wheel-selector.cpp:140 +#: ../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:572 -#: ../src/widgets/sp-color-icc-selector.cpp:585 -#: ../src/widgets/sp-color-scales.cpp:438 -#: ../src/widgets/sp-color-scales.cpp:439 -#: ../src/widgets/sp-color-scales.cpp:464 -#: ../src/widgets/sp-color-scales.cpp:465 -#: ../src/widgets/sp-color-scales.cpp:495 -#: ../src/widgets/sp-color-scales.cpp:496 -#: ../src/widgets/sp-color-wheel-selector.cpp:161 -#: ../src/widgets/sp-color-wheel-selector.cpp:185 +#: ../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:385 +#: ../src/widgets/sp-color-notebook.cpp:370 msgid "Color Managed" msgstr "" -#: ../src/widgets/sp-color-notebook.cpp:392 +#: ../src/widgets/sp-color-notebook.cpp:377 msgid "Out of gamut!" msgstr "" -#: ../src/widgets/sp-color-notebook.cpp:399 +#: ../src/widgets/sp-color-notebook.cpp:384 msgid "Too much ink!" msgstr "" #. Create RGBA entry and color preview -#: ../src/widgets/sp-color-notebook.cpp:416 +#: ../src/widgets/sp-color-notebook.cpp:401 msgid "RGBA_:" msgstr "" -#: ../src/widgets/sp-color-notebook.cpp:424 +#: ../src/widgets/sp-color-notebook.cpp:409 msgid "Hexadecimal RGBA value of the color" msgstr "" -#: ../src/widgets/sp-color-scales.cpp:80 +#: ../src/widgets/sp-color-scales.cpp:53 msgid "RGB" msgstr "" -#: ../src/widgets/sp-color-scales.cpp:80 +#: ../src/widgets/sp-color-scales.cpp:53 msgid "HSL" msgstr "" -#: ../src/widgets/sp-color-scales.cpp:80 +#: ../src/widgets/sp-color-scales.cpp:53 msgid "CMYK" msgstr "" -#: ../src/widgets/sp-color-selector.cpp:64 +#: ../src/widgets/sp-color-selector.cpp:42 msgid "Unnamed" msgstr "" -#: ../src/widgets/sp-xmlview-attr-list.cpp:64 +#: ../src/widgets/sp-xmlview-attr-list.cpp:59 msgid "Value" msgstr "" -#: ../src/widgets/sp-xmlview-content.cpp:179 +#: ../src/widgets/sp-xmlview-content.cpp:151 msgid "Type text in a text node" msgstr "" @@ -27063,7 +27870,7 @@ msgstr "" msgid "Radius of the innermost revolution (relative to the spiral size)" msgstr "" -#: ../src/widgets/spiral-toolbar.cpp:290 ../src/widgets/star-toolbar.cpp:565 +#: ../src/widgets/spiral-toolbar.cpp:290 ../src/widgets/star-toolbar.cpp:567 msgid "" "Reset shape parameters to defaults (use Inkscape Preferences > Tools to " "change defaults)" @@ -27203,173 +28010,173 @@ msgid "" "the original object" msgstr "" -#: ../src/widgets/star-toolbar.cpp:102 +#: ../src/widgets/star-toolbar.cpp:103 msgid "Star: Change number of corners" msgstr "" -#: ../src/widgets/star-toolbar.cpp:155 +#: ../src/widgets/star-toolbar.cpp:156 msgid "Star: Change spoke ratio" msgstr "" -#: ../src/widgets/star-toolbar.cpp:200 +#: ../src/widgets/star-toolbar.cpp:201 msgid "Make polygon" msgstr "" -#: ../src/widgets/star-toolbar.cpp:200 +#: ../src/widgets/star-toolbar.cpp:201 msgid "Make star" msgstr "" -#: ../src/widgets/star-toolbar.cpp:239 +#: ../src/widgets/star-toolbar.cpp:240 msgid "Star: Change rounding" msgstr "" -#: ../src/widgets/star-toolbar.cpp:279 +#: ../src/widgets/star-toolbar.cpp:280 msgid "Star: Change randomization" msgstr "" -#: ../src/widgets/star-toolbar.cpp:463 +#: ../src/widgets/star-toolbar.cpp:465 msgid "Regular polygon (with one handle) instead of a star" msgstr "" -#: ../src/widgets/star-toolbar.cpp:470 +#: ../src/widgets/star-toolbar.cpp:472 msgid "Star instead of a regular polygon (with one handle)" msgstr "" -#: ../src/widgets/star-toolbar.cpp:491 +#: ../src/widgets/star-toolbar.cpp:493 msgid "triangle/tri-star" msgstr "" -#: ../src/widgets/star-toolbar.cpp:491 +#: ../src/widgets/star-toolbar.cpp:493 msgid "square/quad-star" msgstr "" -#: ../src/widgets/star-toolbar.cpp:491 +#: ../src/widgets/star-toolbar.cpp:493 msgid "pentagon/five-pointed star" msgstr "" -#: ../src/widgets/star-toolbar.cpp:491 +#: ../src/widgets/star-toolbar.cpp:493 msgid "hexagon/six-pointed star" msgstr "" -#: ../src/widgets/star-toolbar.cpp:494 +#: ../src/widgets/star-toolbar.cpp:496 msgid "Corners" msgstr "" -#: ../src/widgets/star-toolbar.cpp:494 +#: ../src/widgets/star-toolbar.cpp:496 msgid "Corners:" msgstr "" -#: ../src/widgets/star-toolbar.cpp:494 +#: ../src/widgets/star-toolbar.cpp:496 msgid "Number of corners of a polygon or star" msgstr "" -#: ../src/widgets/star-toolbar.cpp:507 +#: ../src/widgets/star-toolbar.cpp:509 msgid "thin-ray star" msgstr "" -#: ../src/widgets/star-toolbar.cpp:507 +#: ../src/widgets/star-toolbar.cpp:509 msgid "pentagram" msgstr "" -#: ../src/widgets/star-toolbar.cpp:507 +#: ../src/widgets/star-toolbar.cpp:509 msgid "hexagram" msgstr "" -#: ../src/widgets/star-toolbar.cpp:507 +#: ../src/widgets/star-toolbar.cpp:509 msgid "heptagram" msgstr "" -#: ../src/widgets/star-toolbar.cpp:507 +#: ../src/widgets/star-toolbar.cpp:509 msgid "octagram" msgstr "" -#: ../src/widgets/star-toolbar.cpp:507 +#: ../src/widgets/star-toolbar.cpp:509 msgid "regular polygon" msgstr "" -#: ../src/widgets/star-toolbar.cpp:510 +#: ../src/widgets/star-toolbar.cpp:512 msgid "Spoke ratio" msgstr "" -#: ../src/widgets/star-toolbar.cpp:510 +#: ../src/widgets/star-toolbar.cpp:512 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:513 +#: ../src/widgets/star-toolbar.cpp:515 msgid "Base radius to tip radius ratio" msgstr "" -#: ../src/widgets/star-toolbar.cpp:531 +#: ../src/widgets/star-toolbar.cpp:533 msgid "stretched" msgstr "" -#: ../src/widgets/star-toolbar.cpp:531 +#: ../src/widgets/star-toolbar.cpp:533 msgid "twisted" msgstr "" -#: ../src/widgets/star-toolbar.cpp:531 +#: ../src/widgets/star-toolbar.cpp:533 msgid "slightly pinched" msgstr "" -#: ../src/widgets/star-toolbar.cpp:531 +#: ../src/widgets/star-toolbar.cpp:533 msgid "NOT rounded" msgstr "" -#: ../src/widgets/star-toolbar.cpp:531 +#: ../src/widgets/star-toolbar.cpp:533 msgid "slightly rounded" msgstr "" -#: ../src/widgets/star-toolbar.cpp:531 +#: ../src/widgets/star-toolbar.cpp:533 msgid "visibly rounded" msgstr "" -#: ../src/widgets/star-toolbar.cpp:531 +#: ../src/widgets/star-toolbar.cpp:533 msgid "well rounded" msgstr "" -#: ../src/widgets/star-toolbar.cpp:531 +#: ../src/widgets/star-toolbar.cpp:533 msgid "amply rounded" msgstr "" -#: ../src/widgets/star-toolbar.cpp:531 ../src/widgets/star-toolbar.cpp:546 +#: ../src/widgets/star-toolbar.cpp:533 ../src/widgets/star-toolbar.cpp:548 msgid "blown up" msgstr "" -#: ../src/widgets/star-toolbar.cpp:534 +#: ../src/widgets/star-toolbar.cpp:536 msgid "Rounded:" msgstr "" -#: ../src/widgets/star-toolbar.cpp:534 +#: ../src/widgets/star-toolbar.cpp:536 msgid "How much rounded are the corners (0 for sharp)" msgstr "" -#: ../src/widgets/star-toolbar.cpp:546 +#: ../src/widgets/star-toolbar.cpp:548 msgid "NOT randomized" msgstr "" -#: ../src/widgets/star-toolbar.cpp:546 +#: ../src/widgets/star-toolbar.cpp:548 msgid "slightly irregular" msgstr "" -#: ../src/widgets/star-toolbar.cpp:546 +#: ../src/widgets/star-toolbar.cpp:548 msgid "visibly randomized" msgstr "" -#: ../src/widgets/star-toolbar.cpp:546 +#: ../src/widgets/star-toolbar.cpp:548 msgid "strongly randomized" msgstr "" -#: ../src/widgets/star-toolbar.cpp:549 +#: ../src/widgets/star-toolbar.cpp:551 msgid "Randomized" msgstr "" -#: ../src/widgets/star-toolbar.cpp:549 +#: ../src/widgets/star-toolbar.cpp:551 msgid "Randomized:" msgstr "" -#: ../src/widgets/star-toolbar.cpp:549 +#: ../src/widgets/star-toolbar.cpp:551 msgid "Scatter randomly the corners and angles" msgstr "" @@ -27378,10 +28185,6 @@ msgctxt "Marker" msgid "None" msgstr "" -#: ../src/widgets/stroke-style.cpp:192 -msgid "Stroke width" -msgstr "" - #: ../src/widgets/stroke-style.cpp:194 msgctxt "Stroke width" msgid "_Width:" @@ -27467,11 +28270,11 @@ msgstr "" msgid "Set markers" msgstr "" -#: ../src/widgets/stroke-style.cpp:1030 ../src/widgets/stroke-style.cpp:1115 +#: ../src/widgets/stroke-style.cpp:1032 ../src/widgets/stroke-style.cpp:1117 msgid "Set stroke style" msgstr "" -#: ../src/widgets/stroke-style.cpp:1203 +#: ../src/widgets/stroke-style.cpp:1205 msgid "Set marker color" msgstr "" @@ -28967,10 +29770,6 @@ msgstr "" msgid "By max. segment length" msgstr "" -#: ../share/extensions/addnodes.inx.h:4 -msgid "By number of segments" -msgstr "" - #: ../share/extensions/addnodes.inx.h:5 msgid "Maximum segment length (px):" msgstr "" @@ -29308,7 +30107,7 @@ msgid "Y Offset:" msgstr "" #: ../share/extensions/dimension.inx.h:4 -msgid "Bounding box type :" +msgid "Bounding box type:" msgstr "" #: ../share/extensions/dimension.inx.h:5 @@ -29558,7 +30357,7 @@ msgstr "" msgid "" "- AutoCAD Release 13 and newer.\n" "- assume dxf drawing is in mm.\n" -"- assume svg drawing is in pixels, at 90 dpi.\n" +"- assume svg drawing is in pixels, at 96 dpi.\n" "- scale factor and origin apply only to manual scaling.\n" "- layers are preserved only on File->Open, not Import.\n" "- limited support for BLOCKS, use AutoCAD Explode Blocks instead, if needed." @@ -29681,7 +30480,7 @@ msgstr "" msgid "" "- AutoCAD Release 14 DXF format.\n" "- The base unit parameter specifies in what unit the coordinates are output " -"(90 px = 1 in).\n" +"(96 px = 1 in).\n" "- Supported element types\n" " - paths (lines and splines)\n" " - rectangles\n" @@ -29759,8 +30558,70 @@ msgstr "" msgid "Embed Selected Images" msgstr "" -#: ../share/extensions/empty_page.inx.h:1 -msgid "Empty Page" +#: ../share/extensions/empty_business_card.inx.h:1 +msgid "Business Card" +msgstr "" + +#: ../share/extensions/empty_business_card.inx.h:2 +msgid "Business card size:" +msgstr "" + +#: ../share/extensions/empty_desktop.inx.h:1 +msgid "Desktop" +msgstr "" + +#: ../share/extensions/empty_desktop.inx.h:2 +msgid "Desktop size:" +msgstr "" + +#. Maximum size is '16k' +#: ../share/extensions/empty_desktop.inx.h:4 +#: ../share/extensions/empty_generic.inx.h:2 +#: ../share/extensions/empty_video.inx.h:4 +msgid "Custom Width:" +msgstr "" + +#: ../share/extensions/empty_desktop.inx.h:5 +#: ../share/extensions/empty_generic.inx.h:3 +#: ../share/extensions/empty_video.inx.h:5 +msgid "Custom Height:" +msgstr "" + +#: ../share/extensions/empty_dvd_cover.inx.h:1 +msgid "DVD Cover" +msgstr "" + +#: ../share/extensions/empty_dvd_cover.inx.h:2 +msgid "DVD spine width:" +msgstr "" + +#: ../share/extensions/empty_dvd_cover.inx.h:3 +msgid "DVD cover bleed (mm):" +msgstr "" + +#: ../share/extensions/empty_generic.inx.h:1 +msgid "Generic Canvas" +msgstr "" + +#: ../share/extensions/empty_generic.inx.h:4 +msgid "SVG Unit:" +msgstr "" + +#: ../share/extensions/empty_generic.inx.h:5 +msgid "Canvas background:" +msgstr "" + +#: ../share/extensions/empty_generic.inx.h:6 +#: ../share/extensions/empty_page.inx.h:5 +msgid "Hide border" +msgstr "" + +#: ../share/extensions/empty_icon.inx.h:1 +msgid "Icon" +msgstr "" + +#: ../share/extensions/empty_icon.inx.h:2 +msgid "Icon size:" msgstr "" #: ../share/extensions/empty_page.inx.h:2 @@ -29771,6 +30632,18 @@ msgstr "" msgid "Page orientation:" msgstr "" +#: ../share/extensions/empty_page.inx.h:4 +msgid "Page background:" +msgstr "" + +#: ../share/extensions/empty_video.inx.h:1 +msgid "Video Screen" +msgstr "" + +#: ../share/extensions/empty_video.inx.h:2 +msgid "Video size:" +msgstr "" + #: ../share/extensions/eps_input.inx.h:1 msgid "EPS Input" msgstr "" @@ -31565,10 +32438,6 @@ msgstr "" msgid "Float Number" msgstr "" -#: ../share/extensions/interp_att_g.inx.h:22 -msgid "Tag" -msgstr "" - #: ../share/extensions/interp_att_g.inx.h:23 #: ../share/extensions/polyhedron_3d.inx.h:33 msgid "Style" @@ -32642,10 +33511,6 @@ msgstr "" msgid "Note: Bond Weight # calculations are a best-guess estimate." msgstr "" -#: ../share/extensions/perspective.inx.h:1 -msgid "Perspective" -msgstr "" - #: ../share/extensions/pixelsnap.inx.h:1 msgid "PixelSnap" msgstr "" @@ -33064,14 +33929,6 @@ msgstr "" msgid "Maximum displacement in Y (px):" msgstr "" -#: ../share/extensions/radiusrand.inx.h:5 -msgid "Shift nodes" -msgstr "" - -#: ../share/extensions/radiusrand.inx.h:6 -msgid "Shift node handles" -msgstr "" - #: ../share/extensions/radiusrand.inx.h:7 msgid "Use normal distribution" msgstr "" @@ -33129,10 +33986,6 @@ msgstr "" msgid "See http://www.denso-wave.com/qrcode/index-e.html for details" msgstr "" -#: ../share/extensions/render_barcode_qrcode.inx.h:5 -msgid "Auto" -msgstr "" - #: ../share/extensions/render_barcode_qrcode.inx.h:6 msgid "" "With \"Auto\", the size of the barcode depends on the length of the text and " @@ -33501,6 +34354,28 @@ msgstr "" msgid "Scalable Vector Graphics" msgstr "" +#: ../share/extensions/seamless_pattern.inx.h:1 +msgid "Seamless Pattern" +msgstr "" + +#: ../share/extensions/seamless_pattern.inx.h:2 +#: ../share/extensions/seamless_pattern_procedural.inx.h:2 +msgid "Custom Width (px.):" +msgstr "" + +#: ../share/extensions/seamless_pattern.inx.h:3 +#: ../share/extensions/seamless_pattern_procedural.inx.h:3 +msgid "Custom Height (px.):" +msgstr "" + +#: ../share/extensions/seamless_pattern.inx.h:4 +msgid "This extension overwrite current document" +msgstr "" + +#: ../share/extensions/seamless_pattern_procedural.inx.h:1 +msgid "Seamless Pattern Procedural" +msgstr "" + #: ../share/extensions/setup_typography_canvas.inx.h:1 msgid "1 - Setup Typography Canvas" msgstr "" diff --git a/po/sk.po b/po/sk.po index 1522d8974..0646af233 100644..100755 --- a/po/sk.po +++ b/po/sk.po @@ -11,14 +11,15 @@ msgstr "" "Project-Id-Version: inkscape\n" "Report-Msgid-Bugs-To: inkscape-devel@lists.sourceforge.net\n" "POT-Creation-Date: 2014-08-14 23:05-0700\n" -"PO-Revision-Date: 2014-03-20 22:47+0200\n" +"PO-Revision-Date: 2014-11-03 14:33+0200\n" "Last-Translator: Ivan Masár <helix84@centrum.sk>\n" -"Language-Team: Slovak <sk-i18n@lists.linux.sk>\n" +"Language-Team: x\n" "Language: sk\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" +"X-Generator: Virtaal 0.7.1\n" #: ../inkscape.desktop.in.h:1 msgid "Inkscape" @@ -1170,10 +1171,9 @@ msgstr "Šarlátovočervená 3" #. Palette: ./Tango-Palette.gpl #: ../share/palettes/palettes.h:188 -#, fuzzy msgctxt "Palette" msgid "Snowy White" -msgstr "Biela" +msgstr "Snehovo biela" #. Palette: ./Tango-Palette.gpl #: ../share/palettes/palettes.h:189 @@ -1213,134 +1213,129 @@ msgstr "Hliník 6" #. Palette: ./Tango-Palette.gpl #: ../share/palettes/palettes.h:195 -#, fuzzy msgctxt "Palette" msgid "Jet Black" -msgstr "Čierna" +msgstr "Tryskovo čierna" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:2 msgctxt "Symbol" msgid "AIGA Symbol Signs" -msgstr "" +msgstr "Symboly AIGA" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:3 ../share/symbols/symbols.h:4 msgctxt "Symbol" msgid "Telephone" -msgstr "" +msgstr "Telefón" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:5 ../share/symbols/symbols.h:6 msgctxt "Symbol" msgid "Mail" -msgstr "" +msgstr "Pošta" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:7 ../share/symbols/symbols.h:8 -#, fuzzy msgctxt "Symbol" msgid "Currency Exchange" -msgstr "Aktuálna vrstva" +msgstr "Zmenáreň" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:9 ../share/symbols/symbols.h:10 msgctxt "Symbol" msgid "Currency Exchange - Euro" -msgstr "" +msgstr "Zmenáreň - Euro" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:11 ../share/symbols/symbols.h:12 msgctxt "Symbol" msgid "Cashier" -msgstr "" +msgstr "Pokladňa" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:13 ../share/symbols/symbols.h:14 -#, fuzzy msgctxt "Symbol" msgid "First Aid" -msgstr "Prvá snímka:" +msgstr "Prvá pomoc" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:15 ../share/symbols/symbols.h:16 -#, fuzzy msgctxt "Symbol" msgid "Lost and Found" -msgstr "Nezaoblený" +msgstr "Straty a nálezy" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:17 ../share/symbols/symbols.h:18 msgctxt "Symbol" msgid "Coat Check" -msgstr "" +msgstr "Úschovňa kabátov" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:19 ../share/symbols/symbols.h:20 msgctxt "Symbol" msgid "Baggage Lockers" -msgstr "" +msgstr "Úschovňa batožiny" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:21 ../share/symbols/symbols.h:22 msgctxt "Symbol" msgid "Escalator" -msgstr "" +msgstr "Eskalátor" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:23 ../share/symbols/symbols.h:24 msgctxt "Symbol" msgid "Escalator Down" -msgstr "" +msgstr "Eskalátor - dolu" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:25 ../share/symbols/symbols.h:26 msgctxt "Symbol" msgid "Escalator Up" -msgstr "" +msgstr "Eskalátor - hore" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:27 ../share/symbols/symbols.h:28 msgctxt "Symbol" msgid "Stairs" -msgstr "" +msgstr "Schody" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:29 ../share/symbols/symbols.h:30 msgctxt "Symbol" msgid "Stairs Down" -msgstr "" +msgstr "Schody - dolu" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:31 ../share/symbols/symbols.h:32 msgctxt "Symbol" msgid "Stairs Up" -msgstr "" +msgstr "Schody - hore" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:33 ../share/symbols/symbols.h:34 -#, fuzzy msgctxt "Symbol" msgid "Elevator" -msgstr "Vyvýšenie" +msgstr "Výťah" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:35 ../share/symbols/symbols.h:36 msgctxt "Symbol" msgid "Toilets - Men" -msgstr "" +msgstr "Toalety - muži" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:37 ../share/symbols/symbols.h:38 msgctxt "Symbol" msgid "Toilets - Women" -msgstr "" +msgstr "Toalety - ženy" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:39 ../share/symbols/symbols.h:40 msgctxt "Symbol" msgid "Toilets" -msgstr "" +msgstr "Toalety" #. Symbols: ./AigaSymbols.svg #. Symbols: ./MapSymbols.svg @@ -1348,43 +1343,39 @@ msgstr "" #: ../share/symbols/symbols.h:227 msgctxt "Symbol" msgid "Nursery" -msgstr "" +msgstr "Škôlka" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:43 ../share/symbols/symbols.h:44 msgctxt "Symbol" msgid "Drinking Fountain" -msgstr "" +msgstr "Fontánka s pitnou vodou" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:45 ../share/symbols/symbols.h:46 -#, fuzzy msgctxt "Symbol" msgid "Waiting Room" -msgstr "zapisovaní" +msgstr "Čakáreň" #. Symbols: ./AigaSymbols.svg #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:47 ../share/symbols/symbols.h:48 #: ../share/symbols/symbols.h:308 -#, fuzzy msgctxt "Symbol" msgid "Information" msgstr "Informácie" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:49 ../share/symbols/symbols.h:50 -#, fuzzy msgctxt "Symbol" msgid "Hotel Information" -msgstr "Informácie o stránke" +msgstr "Hotelové informácie" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:51 ../share/symbols/symbols.h:52 -#, fuzzy msgctxt "Symbol" msgid "Air Transportation" -msgstr "Transformácia" +msgstr "Letecká doprava" #. Symbols: ./AigaSymbols.svg #. Symbols: ./MapSymbols.svg @@ -1392,7 +1383,7 @@ msgstr "Transformácia" #: ../share/symbols/symbols.h:318 msgctxt "Symbol" msgid "Heliport" -msgstr "" +msgstr "Heliport" #. Symbols: ./AigaSymbols.svg #. Symbols: ./MapSymbols.svg @@ -1400,35 +1391,31 @@ msgstr "" #: ../share/symbols/symbols.h:314 msgctxt "Symbol" msgid "Taxi" -msgstr "" +msgstr "Taxi" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:57 ../share/symbols/symbols.h:58 -#, fuzzy msgctxt "Symbol" msgid "Bus" -msgstr "Rozostrenia" +msgstr "Autobus" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:59 ../share/symbols/symbols.h:60 -#, fuzzy msgctxt "Symbol" msgid "Ground Transportation" -msgstr "Transformácia" +msgstr "Pozemná doprava" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:61 ../share/symbols/symbols.h:62 -#, fuzzy msgctxt "Symbol" msgid "Rail Transportation" -msgstr "Transformácia" +msgstr "Železničná doprava" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:63 ../share/symbols/symbols.h:64 -#, fuzzy msgctxt "Symbol" msgid "Water Transportation" -msgstr "Transformácia" +msgstr "Lodná doprava" #. Symbols: ./AigaSymbols.svg #. Symbols: ./MapSymbols.svg @@ -1436,7 +1423,7 @@ msgstr "Transformácia" #: ../share/symbols/symbols.h:316 msgctxt "Symbol" msgid "Car Rental" -msgstr "" +msgstr "Požičovňa áut" #. Symbols: ./AigaSymbols.svg #. Symbols: ./MapSymbols.svg @@ -1444,102 +1431,97 @@ msgstr "" #: ../share/symbols/symbols.h:228 msgctxt "Symbol" msgid "Restaurant" -msgstr "" +msgstr "Reštaurácia" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:69 ../share/symbols/symbols.h:70 msgctxt "Symbol" msgid "Coffeeshop" -msgstr "" +msgstr "Kaviareň" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:71 ../share/symbols/symbols.h:72 -#, fuzzy msgctxt "Symbol" msgid "Bar" -msgstr "Kôra" +msgstr "Bar" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:73 ../share/symbols/symbols.h:74 msgctxt "Symbol" msgid "Shops" -msgstr "" +msgstr "Obchody" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:75 ../share/symbols/symbols.h:76 msgctxt "Symbol" msgid "Barber Shop - Beauty Salon" -msgstr "" +msgstr "Kaderníctvo - kozmetika" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:77 ../share/symbols/symbols.h:78 msgctxt "Symbol" msgid "Barber Shop" -msgstr "" +msgstr "Kaderníctvo" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:79 ../share/symbols/symbols.h:80 msgctxt "Symbol" msgid "Beauty Salon" -msgstr "" +msgstr "Kozmetický salón" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:81 ../share/symbols/symbols.h:82 msgctxt "Symbol" msgid "Ticket Purchase" -msgstr "" +msgstr "Predaj lístkov" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:83 ../share/symbols/symbols.h:84 msgctxt "Symbol" msgid "Baggage Check In" -msgstr "" +msgstr "Príjem batožiny" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:85 ../share/symbols/symbols.h:86 msgctxt "Symbol" msgid "Baggage Claim" -msgstr "" +msgstr "Výdaj batožiny" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:87 ../share/symbols/symbols.h:88 -#, fuzzy msgctxt "Symbol" msgid "Customs" -msgstr "Vlastná" +msgstr "Clo" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:89 ../share/symbols/symbols.h:90 -#, fuzzy msgctxt "Symbol" msgid "Immigration" -msgstr "Nastavenie" +msgstr "Imigrácia" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:91 ../share/symbols/symbols.h:92 -#, fuzzy msgctxt "Symbol" msgid "Departing Flights" -msgstr "Výška cieľa" +msgstr "Odlety" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:93 ../share/symbols/symbols.h:94 -#, fuzzy msgctxt "Symbol" msgid "Arriving Flights" -msgstr "Jas:" +msgstr "Prílety" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:95 ../share/symbols/symbols.h:96 msgctxt "Symbol" msgid "Smoking" -msgstr "" +msgstr "Fajčenie" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:97 ../share/symbols/symbols.h:98 msgctxt "Symbol" msgid "No Smoking" -msgstr "" +msgstr "Zákaz fajčenia" #. Symbols: ./AigaSymbols.svg #. Symbols: ./MapSymbols.svg @@ -1547,25 +1529,25 @@ msgstr "" #: ../share/symbols/symbols.h:325 msgctxt "Symbol" msgid "Parking" -msgstr "" +msgstr "Parkovanie" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:101 ../share/symbols/symbols.h:102 msgctxt "Symbol" msgid "No Parking" -msgstr "" +msgstr "Zákaz parkovania" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:103 ../share/symbols/symbols.h:104 msgctxt "Symbol" msgid "No Dogs" -msgstr "" +msgstr "Zákaz vstupu psov" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:105 ../share/symbols/symbols.h:106 msgctxt "Symbol" msgid "No Entry" -msgstr "" +msgstr "Zákaz vstupu" #. Symbols: ./AigaSymbols.svg #. Symbols: ./MapSymbols.svg @@ -1573,598 +1555,568 @@ msgstr "" #: ../share/symbols/symbols.h:218 msgctxt "Symbol" msgid "Exit" -msgstr "" +msgstr "Východ" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:109 ../share/symbols/symbols.h:110 msgctxt "Symbol" msgid "Fire Extinguisher" -msgstr "" +msgstr "Hasiaci prístroj" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:111 ../share/symbols/symbols.h:112 -#, fuzzy msgctxt "Symbol" msgid "Right Arrow" -msgstr "Pravá" +msgstr "Šípka vpravo" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:113 ../share/symbols/symbols.h:114 msgctxt "Symbol" msgid "Forward and Right Arrow" -msgstr "" +msgstr "Šípka vpred a vpravo" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:115 ../share/symbols/symbols.h:116 msgctxt "Symbol" msgid "Up Arrow" -msgstr "" +msgstr "Šípka nahor" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:117 ../share/symbols/symbols.h:118 msgctxt "Symbol" msgid "Forward and Left Arrow" -msgstr "" +msgstr "Šípka vpred a vľavo" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:119 ../share/symbols/symbols.h:120 msgctxt "Symbol" msgid "Left Arrow" -msgstr "" +msgstr "Šípka vľavo" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:121 ../share/symbols/symbols.h:122 msgctxt "Symbol" msgid "Left and Down Arrow" -msgstr "" +msgstr "Šípka vľavo a nadol" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:123 ../share/symbols/symbols.h:124 -#, fuzzy msgctxt "Symbol" msgid "Down Arrow" -msgstr "neznáma chyba" +msgstr "Šípka nadol" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:125 ../share/symbols/symbols.h:126 msgctxt "Symbol" msgid "Right and Down Arrow" -msgstr "" +msgstr "Šípka vpravo a nadol" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:127 ../share/symbols/symbols.h:128 msgctxt "Symbol" msgid "NPS Wheelchair Accessible - 1996" -msgstr "" +msgstr "Bezbariérový prístup NPS - 1996" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:129 ../share/symbols/symbols.h:130 msgctxt "Symbol" msgid "NPS Wheelchair Accessible" -msgstr "" +msgstr "Bezbariérový prístup NPS" #. Symbols: ./AigaSymbols.svg #: ../share/symbols/symbols.h:131 ../share/symbols/symbols.h:132 msgctxt "Symbol" msgid "New Wheelchair Accessible" -msgstr "" +msgstr "Nový bezbariérový prístup" #. Symbols: ./BalloonSymbols.svg #: ../share/symbols/symbols.h:133 msgctxt "Symbol" msgid "Word Balloons" -msgstr "" +msgstr "Slovné bubliny" #. Symbols: ./BalloonSymbols.svg #: ../share/symbols/symbols.h:134 msgctxt "Symbol" msgid "Thought Balloon" -msgstr "" +msgstr "Myšlienkové bubliny" #. Symbols: ./BalloonSymbols.svg #: ../share/symbols/symbols.h:135 msgctxt "Symbol" msgid "Dream Speaking" -msgstr "" +msgstr "Hovorenie zo sna" #. Symbols: ./BalloonSymbols.svg #: ../share/symbols/symbols.h:136 -#, fuzzy msgctxt "Symbol" msgid "Rounded Balloon" -msgstr "Oblý spoj" +msgstr "Zaoblená bublina" #. Symbols: ./BalloonSymbols.svg #: ../share/symbols/symbols.h:137 -#, fuzzy msgctxt "Symbol" msgid "Squared Balloon" -msgstr "Štvorcové zakončenie" +msgstr "Obdĺžniková bublina" #. Symbols: ./BalloonSymbols.svg #: ../share/symbols/symbols.h:138 msgctxt "Symbol" msgid "Over the Phone" -msgstr "" +msgstr "Telefonicky" #. Symbols: ./BalloonSymbols.svg #: ../share/symbols/symbols.h:139 msgctxt "Symbol" msgid "Hip Balloon" -msgstr "" +msgstr "Hip bublina" #. Symbols: ./BalloonSymbols.svg #: ../share/symbols/symbols.h:140 -#, fuzzy msgctxt "Symbol" msgid "Circle Balloon" -msgstr "Kruh" +msgstr "Kružnicová bublina" #. Symbols: ./BalloonSymbols.svg #: ../share/symbols/symbols.h:141 msgctxt "Symbol" msgid "Exclaim Balloon" -msgstr "" +msgstr "Bublina zvolania" #. Symbols: ./FlowSymbols.svg #: ../share/symbols/symbols.h:142 msgctxt "Symbol" msgid "Flow Chart Shapes" -msgstr "" +msgstr "Zložky vývojových diagramov" #. Symbols: ./FlowSymbols.svg #: ../share/symbols/symbols.h:143 -#, fuzzy msgctxt "Symbol" msgid "Process" -msgstr "Post-procesor:" +msgstr "Proces" #. Symbols: ./FlowSymbols.svg #: ../share/symbols/symbols.h:144 -#, fuzzy msgctxt "Symbol" msgid "Input/Output" -msgstr "Výstup" +msgstr "Vstup/výstup" #. Symbols: ./FlowSymbols.svg #: ../share/symbols/symbols.h:145 -#, fuzzy msgctxt "Symbol" msgid "Document" msgstr "Dokument" #. Symbols: ./FlowSymbols.svg #: ../share/symbols/symbols.h:146 -#, fuzzy msgctxt "Symbol" msgid "Manual Operation" -msgstr "Sýtosť" +msgstr "Ručná operácia" #. Symbols: ./FlowSymbols.svg #: ../share/symbols/symbols.h:147 -#, fuzzy msgctxt "Symbol" msgid "Preparation" -msgstr "Sýtosť:" +msgstr "Príprava" #. Symbols: ./FlowSymbols.svg #: ../share/symbols/symbols.h:148 -#, fuzzy msgctxt "Symbol" msgid "Merge" -msgstr "Zlúčiť" +msgstr "Zlúčenie" #. Symbols: ./FlowSymbols.svg #: ../share/symbols/symbols.h:149 -#, fuzzy msgctxt "Symbol" msgid "Decision" -msgstr "Presnosť:" +msgstr "Rozhodnutie" #. Symbols: ./FlowSymbols.svg #: ../share/symbols/symbols.h:150 msgctxt "Symbol" msgid "Magnetic Tape" -msgstr "" +msgstr "Magnetická páska" #. Symbols: ./FlowSymbols.svg #: ../share/symbols/symbols.h:151 -#, fuzzy msgctxt "Symbol" msgid "Display" -msgstr "_Zobrazovací režim" +msgstr "Zobrazenie" #. Symbols: ./FlowSymbols.svg #: ../share/symbols/symbols.h:152 msgctxt "Symbol" msgid "Auxiliary Operation" -msgstr "" +msgstr "Pomocná operácia" #. Symbols: ./FlowSymbols.svg #: ../share/symbols/symbols.h:153 -#, fuzzy msgctxt "Symbol" msgid "Manual Input" -msgstr "Vstup EMF" +msgstr "Ručný vstup" #. Symbols: ./FlowSymbols.svg #: ../share/symbols/symbols.h:154 -#, fuzzy msgctxt "Symbol" msgid "Extract" -msgstr "Extrahovať obrázok" +msgstr "Extrakcia" #. Symbols: ./FlowSymbols.svg #: ../share/symbols/symbols.h:155 msgctxt "Symbol" msgid "Terminal/Interrupt" -msgstr "" +msgstr "Terminál/prerušenie" #. Symbols: ./FlowSymbols.svg #: ../share/symbols/symbols.h:156 msgctxt "Symbol" msgid "Punched Card" -msgstr "" +msgstr "Dierny štítok" #. Symbols: ./FlowSymbols.svg #: ../share/symbols/symbols.h:157 -#, fuzzy msgctxt "Symbol" msgid "Punch Tape" -msgstr "Vyrazená diera" +msgstr "Dierna páska" #. Symbols: ./FlowSymbols.svg #: ../share/symbols/symbols.h:158 msgctxt "Symbol" msgid "Online Storage" -msgstr "" +msgstr "Online úložisko" #. Symbols: ./FlowSymbols.svg #: ../share/symbols/symbols.h:159 msgctxt "Symbol" msgid "Keying" -msgstr "" +msgstr "Kľúčovanie" #. Symbols: ./FlowSymbols.svg #: ../share/symbols/symbols.h:160 msgctxt "Symbol" msgid "Sort" -msgstr "" +msgstr "Zoradenie" #. Symbols: ./FlowSymbols.svg #: ../share/symbols/symbols.h:161 -#, fuzzy msgctxt "Symbol" msgid "Connector" msgstr "Konektor" #. Symbols: ./FlowSymbols.svg #: ../share/symbols/symbols.h:162 -#, fuzzy msgctxt "Symbol" msgid "Off-Page Connector" -msgstr "Konektor" +msgstr "Spojenie mimo strany" #. Symbols: ./FlowSymbols.svg #: ../share/symbols/symbols.h:163 msgctxt "Symbol" msgid "Transmittal Tape" -msgstr "" +msgstr "Prenosová páska" #. Symbols: ./FlowSymbols.svg #: ../share/symbols/symbols.h:164 msgctxt "Symbol" msgid "Communication Link" -msgstr "" +msgstr "Komunikačné spojenie" #. Symbols: ./FlowSymbols.svg #: ../share/symbols/symbols.h:165 -#, fuzzy msgctxt "Symbol" msgid "Collate" -msgstr "Modulovať" +msgstr "Usporiadať" #. Symbols: ./FlowSymbols.svg #: ../share/symbols/symbols.h:166 msgctxt "Symbol" msgid "Comment/Annotation" -msgstr "" +msgstr "Komentár/anotácia" #. Symbols: ./FlowSymbols.svg #: ../share/symbols/symbols.h:167 msgctxt "Symbol" msgid "Core" -msgstr "" +msgstr "Jadro" #. Symbols: ./FlowSymbols.svg #: ../share/symbols/symbols.h:168 msgctxt "Symbol" msgid "Predefined Process" -msgstr "" +msgstr "Preddefinovaný proces" #. Symbols: ./FlowSymbols.svg #: ../share/symbols/symbols.h:169 msgctxt "Symbol" msgid "Magnetic Disk (Database)" -msgstr "" +msgstr "Magnetický disk (databáza)" #. Symbols: ./FlowSymbols.svg #: ../share/symbols/symbols.h:170 msgctxt "Symbol" msgid "Magnetic Drum (Direct Access)" -msgstr "" +msgstr "Magnetický bubon (priamy prístup)" #. Symbols: ./FlowSymbols.svg #: ../share/symbols/symbols.h:171 msgctxt "Symbol" msgid "Offline Storage" -msgstr "" +msgstr "Offline úložisko" #. Symbols: ./FlowSymbols.svg #: ../share/symbols/symbols.h:172 msgctxt "Symbol" msgid "Logical Or" -msgstr "" +msgstr "Logické alebo" #. Symbols: ./FlowSymbols.svg #: ../share/symbols/symbols.h:173 msgctxt "Symbol" msgid "Logical And" -msgstr "" +msgstr "Logické a" #. Symbols: ./FlowSymbols.svg #: ../share/symbols/symbols.h:174 msgctxt "Symbol" msgid "Delay" -msgstr "" +msgstr "Oneskorenie" #. Symbols: ./FlowSymbols.svg #: ../share/symbols/symbols.h:175 msgctxt "Symbol" msgid "Loop Limit Begin" -msgstr "" +msgstr "Začiatok cyklu" #. Symbols: ./FlowSymbols.svg #: ../share/symbols/symbols.h:176 msgctxt "Symbol" msgid "Loop Limit End" -msgstr "" +msgstr "Koniec cyklu" #. Symbols: ./LogicSymbols.svg #: ../share/symbols/symbols.h:177 msgctxt "Symbol" msgid "Logic Symbols" -msgstr "" +msgstr "Logické symboly" #. Symbols: ./LogicSymbols.svg #: ../share/symbols/symbols.h:178 msgctxt "Symbol" msgid "Xnor Gate" -msgstr "" +msgstr "Hradlo XNOR" #. Symbols: ./LogicSymbols.svg #: ../share/symbols/symbols.h:179 msgctxt "Symbol" msgid "Xor Gate" -msgstr "" +msgstr "Hradlo XOR" #. Symbols: ./LogicSymbols.svg #: ../share/symbols/symbols.h:180 msgctxt "Symbol" msgid "Nor Gate" -msgstr "" +msgstr "Hradlo NOR" #. Symbols: ./LogicSymbols.svg #: ../share/symbols/symbols.h:181 msgctxt "Symbol" msgid "Or Gate" -msgstr "" +msgstr "Hradlo OR" #. Symbols: ./LogicSymbols.svg #: ../share/symbols/symbols.h:182 msgctxt "Symbol" msgid "Nand Gate" -msgstr "" +msgstr "Hradlo NAND" #. Symbols: ./LogicSymbols.svg #: ../share/symbols/symbols.h:183 msgctxt "Symbol" msgid "And Gate" -msgstr "" +msgstr "Hradlo AND" #. Symbols: ./LogicSymbols.svg #: ../share/symbols/symbols.h:184 msgctxt "Symbol" msgid "Buffer" -msgstr "" +msgstr "Buffer" #. Symbols: ./LogicSymbols.svg #: ../share/symbols/symbols.h:185 msgctxt "Symbol" msgid "Not Gate" -msgstr "" +msgstr "Hradlo NOT" #. Symbols: ./LogicSymbols.svg #: ../share/symbols/symbols.h:186 msgctxt "Symbol" msgid "Buffer Small" -msgstr "" +msgstr "Malý buffer" #. Symbols: ./LogicSymbols.svg #: ../share/symbols/symbols.h:187 msgctxt "Symbol" msgid "Not Gate Small" -msgstr "" +msgstr "Malé hradlo NOT" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:188 msgctxt "Symbol" msgid "Map Symbols" -msgstr "" +msgstr "Symboly na mape" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:189 -#, fuzzy msgctxt "Symbol" msgid "Bed and Breakfast" -msgstr "žeriav pridaná zelená" +msgstr "Bed and Breakfast" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:190 msgctxt "Symbol" msgid "Youth Hostel" -msgstr "" +msgstr "Hostel pre mládež" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:191 -#, fuzzy msgctxt "Symbol" msgid "Shelter" -msgstr "filter" +msgstr "Prístrešie" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:192 msgctxt "Symbol" msgid "Motel" -msgstr "" +msgstr "Motel" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:193 msgctxt "Symbol" msgid "Hotel" -msgstr "" +msgstr "Hotel" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:194 -#, fuzzy msgctxt "Symbol" msgid "Hostel" -msgstr "Hostiteľ" +msgstr "Hostel" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:195 -#, fuzzy msgctxt "Symbol" msgid "Chalet" -msgstr "Paleta" +msgstr "Chata alpského typu" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:196 msgctxt "Symbol" msgid "Caravan Park" -msgstr "" +msgstr "Parkovanie karavanov" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:197 -#, fuzzy msgctxt "Symbol" msgid "Camping" -msgstr "Lapovanie" +msgstr "Kemping" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:198 msgctxt "Symbol" msgid "Alpine Hut" -msgstr "" +msgstr "Horská chata" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:199 msgctxt "Symbol" msgid "Bench or Park" -msgstr "" +msgstr "Lavička alebo park" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:200 -#, fuzzy msgctxt "Symbol" msgid "Playground" -msgstr "Pozadie" +msgstr "Detské ihrisko" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:201 msgctxt "Symbol" msgid "Fountain" -msgstr "" +msgstr "Fontána" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:202 -#, fuzzy msgctxt "Symbol" msgid "Library" -msgstr "Knižnica nástrojov" +msgstr "Knižnica" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:203 msgctxt "Symbol" msgid "Town Hall" -msgstr "" +msgstr "Radnica" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:204 msgctxt "Symbol" msgid "Court" -msgstr "" +msgstr "Súd" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:205 msgctxt "Symbol" msgid "Fire Station / House" -msgstr "" +msgstr "Požiarna stanica" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:206 -#, fuzzy msgctxt "Symbol" msgid "Police Station" -msgstr "Viac sýtosti" +msgstr "Policajná stanica" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:207 msgctxt "Symbol" msgid "Prison" -msgstr "" +msgstr "Väznica" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:208 msgctxt "Symbol" msgid "Post Office" -msgstr "" +msgstr "Pošta" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:209 -#, fuzzy msgctxt "Symbol" msgid "Public Building" -msgstr "Voľné dielo" +msgstr "Verejná budova" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:210 msgctxt "Symbol" msgid "Recycling" -msgstr "" +msgstr "Recyklovanie" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:211 -#, fuzzy msgctxt "Symbol" msgid "Survey Point" -msgstr "Gergonov bod" +msgstr "Výhľad" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:212 msgctxt "Symbol" msgid "Toll Booth" -msgstr "" +msgstr "Mýtna búdka" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:213 msgctxt "Symbol" msgid "Lift Gate" -msgstr "" +msgstr "Zdvíhacie vráta" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:214 -#, fuzzy msgctxt "Symbol" msgid "Steps" msgstr "Kroky" @@ -2173,776 +2125,739 @@ msgstr "Kroky" #: ../share/symbols/symbols.h:215 msgctxt "Symbol" msgid "Stile" -msgstr "" +msgstr "Turniket" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:216 -#, fuzzy msgctxt "Symbol" msgid "Kissing Gate" -msgstr "Chýbajúca graféma:" +msgstr "Bozkávacia brána" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:217 msgctxt "Symbol" msgid "Gate" -msgstr "" +msgstr "Brána" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:219 -#, fuzzy msgctxt "Symbol" msgid "Entrance" -msgstr "Rozšíriť" +msgstr "Vchod" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:220 msgctxt "Symbol" msgid "Cycle Barrier" -msgstr "" +msgstr "Bariéra proti cyklistom" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:221 -#, fuzzy msgctxt "Symbol" msgid "Cattle Grid" -msgstr "Karteziánska mriežka" +msgstr "Mriežka proti pohybu dobytka" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:222 msgctxt "Symbol" msgid "Bollard" -msgstr "" +msgstr "Piloty" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:223 -#, fuzzy msgctxt "Symbol" msgid "University" -msgstr "Intenzita:" +msgstr "Univerzita" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:224 msgctxt "Symbol" msgid "High/Secondary School" -msgstr "" +msgstr "Stredná škola" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:225 msgctxt "Symbol" msgid "School" -msgstr "" +msgstr "Škola" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:226 msgctxt "Symbol" msgid "Kindergarten" -msgstr "" +msgstr "Materská škola" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:229 msgctxt "Symbol" msgid "Pub" -msgstr "" +msgstr "Krčma" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:230 msgctxt "Symbol" msgid "Desserts/Cakes Shop" -msgstr "" +msgstr "Cukrovinky" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:231 msgctxt "Symbol" msgid "Fast Food" -msgstr "" +msgstr "Fast food" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:232 msgctxt "Symbol" msgid "Public Tap/Water" -msgstr "" +msgstr "Verejná studňa/kohútik" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:233 msgctxt "Symbol" msgid "Cafe" -msgstr "" +msgstr "Kaviareň" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:234 msgctxt "Symbol" msgid "Beer Garden" -msgstr "" +msgstr "Pivná záhradka" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:235 msgctxt "Symbol" msgid "Wine Bar" -msgstr "" +msgstr "Vináreň" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:236 msgctxt "Symbol" msgid "Opticians/Eye Doctors" -msgstr "" +msgstr "Optika/očný lekár" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:237 -#, fuzzy msgctxt "Symbol" msgid "Dentist" -msgstr "Identita" +msgstr "Zubár" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:238 msgctxt "Symbol" msgid "Veterinarian" -msgstr "" +msgstr "Veterinárny lekár" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:239 msgctxt "Symbol" msgid "Drugs Dispensary" -msgstr "" +msgstr "Výdaj liekov" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:240 msgctxt "Symbol" msgid "Pharmacy" -msgstr "" +msgstr "Lekáreň" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:241 -#, fuzzy msgctxt "Symbol" msgid "Accident & Emergency" -msgstr "Výrazná zelená" +msgstr "Úrazy a pohotovosť" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:242 msgctxt "Symbol" msgid "Hospital" -msgstr "" +msgstr "Nemocnica" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:243 -#, fuzzy msgctxt "Symbol" msgid "Doctors" -msgstr "Konektor" +msgstr "Lekári" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:244 msgctxt "Symbol" msgid "Scrub Land" -msgstr "" +msgstr "Scrub" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:245 msgctxt "Symbol" msgid "Swamp" -msgstr "" +msgstr "Močiar" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:246 msgctxt "Symbol" msgid "Hills" -msgstr "" +msgstr "Kopce" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:247 msgctxt "Symbol" msgid "Grass Land" -msgstr "" +msgstr "Trávnatá krajina" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:248 msgctxt "Symbol" msgid "Deciduous Forest" -msgstr "" +msgstr "Listnatý les" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:249 msgctxt "Symbol" msgid "Mixed Forest" -msgstr "" +msgstr "Zmiešaný les" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:250 msgctxt "Symbol" msgid "Coniferous Forest" -msgstr "" +msgstr "Ihličnatý les" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:251 msgctxt "Symbol" msgid "Church or Place of Worship" -msgstr "" +msgstr "Kostol alebo miesto uctievania" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:252 msgctxt "Symbol" msgid "Bank" -msgstr "" +msgstr "Banka" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:253 -#, fuzzy msgctxt "Symbol" msgid "Power Lines" -msgstr "Čiara s uzlami" +msgstr "Elektrické vedenie" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:254 msgctxt "Symbol" msgid "Watch Tower" -msgstr "" +msgstr "Rozhľadňa" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:255 -#, fuzzy msgctxt "Symbol" msgid "Transmitter" -msgstr "Transformácia vzoriek" +msgstr "Vysielač" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:256 msgctxt "Symbol" msgid "Village" -msgstr "" +msgstr "Dedina" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:257 msgctxt "Symbol" msgid "Town" -msgstr "" +msgstr "Mesto" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:258 msgctxt "Symbol" msgid "Hamlet" -msgstr "" +msgstr "Samota" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:259 msgctxt "Symbol" msgid "City" -msgstr "" +msgstr "Mesto" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:260 msgctxt "Symbol" msgid "Peak" -msgstr "" +msgstr "Vrchol" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:261 -#, fuzzy msgctxt "Symbol" msgid "Mountain Pass" -msgstr "Vitráž" +msgstr "Horské sedlo" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:262 msgctxt "Symbol" msgid "Mine" -msgstr "" +msgstr "Baňa" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:263 msgctxt "Symbol" msgid "Military Complex" -msgstr "" +msgstr "Vojenská základňa" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:264 msgctxt "Symbol" msgid "Embassy" -msgstr "" +msgstr "Veľvyslanectvo" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:265 msgctxt "Symbol" msgid "Toy Shop" -msgstr "" +msgstr "Hračkárstvo" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:266 -#, fuzzy msgctxt "Symbol" msgid "Supermarket" -msgstr "Nastaviť zakončenia čiar" +msgstr "Supermarket" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:267 msgctxt "Symbol" msgid "Jewlers" -msgstr "" +msgstr "Klenotníctvo" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:268 msgctxt "Symbol" msgid "Hairdressers" -msgstr "" +msgstr "Kaderníctvo" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:269 -#, fuzzy msgctxt "Symbol" msgid "Greengrocer" -msgstr "Zelená" +msgstr "Zelenina" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:270 msgctxt "Symbol" msgid "Gift Shop" -msgstr "" +msgstr "Suveníry" # TODO: check #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:271 -#, fuzzy msgctxt "Symbol" msgid "Garden Center" -msgstr "Stred a centrovať" +msgstr "Záhradkárske potreby" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:272 msgctxt "Symbol" msgid "Florist" -msgstr "" +msgstr "Kvetinárstvo" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:273 msgctxt "Symbol" msgid "Fish Monger" -msgstr "" +msgstr "Predajňa rýb" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:274 msgctxt "Symbol" msgid "Real Estate" -msgstr "" +msgstr "Realitná kancelária" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:275 -#, fuzzy msgctxt "Symbol" msgid "Hardware / DIY" -msgstr "Hardvér" +msgstr "Železiarstvo" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:276 msgctxt "Symbol" msgid "Shop" -msgstr "" +msgstr "Obchod" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:277 -#, fuzzy msgctxt "Symbol" msgid "Confectioner" -msgstr "Konektory" +msgstr "Cukráreň" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:278 msgctxt "Symbol" msgid "Computer Shop" -msgstr "" +msgstr "Obchod s výpočtovou technikou" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:279 -#, fuzzy msgctxt "Symbol" msgid "Clothing" -msgstr "Vyhladzovanie:" +msgstr "Oblečenie" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:280 msgctxt "Symbol" msgid "Mechanic" -msgstr "" +msgstr "Mechanik" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:281 msgctxt "Symbol" msgid "Car Dealer" -msgstr "" +msgstr "Predajňa áut" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:282 msgctxt "Symbol" msgid "Butcher" -msgstr "" +msgstr "Mäsiar" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:283 msgctxt "Symbol" msgid "Meat Shop" -msgstr "" +msgstr "Mäsiarstvo" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:284 msgctxt "Symbol" msgid "Bicycle Shop" -msgstr "" +msgstr "Predajňa bicyklov" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:285 msgctxt "Symbol" msgid "Baker" -msgstr "" +msgstr "Pekáreň" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:286 msgctxt "Symbol" msgid "Off License / Liquor Store" -msgstr "" +msgstr "Obchod s liehovinami" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:287 msgctxt "Symbol" msgid "Wind Surfing" -msgstr "" +msgstr "Windsurfing" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:288 msgctxt "Symbol" msgid "Tennis" -msgstr "" +msgstr "Tenis" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:289 msgctxt "Symbol" msgid "Outdoor Pool" -msgstr "" +msgstr "Vonkajší bazén" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:290 msgctxt "Symbol" msgid "Indoor Pool" -msgstr "" +msgstr "Krytý bazén" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:291 msgctxt "Symbol" msgid "Skiing" -msgstr "" +msgstr "Lyžovanie" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:292 -#, fuzzy msgctxt "Symbol" msgid "Sailing" -msgstr "Posúvanie" +msgstr "Plachtenie" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:293 -#, fuzzy msgctxt "Symbol" msgid "Leisure Center" -msgstr "Znovunastaviť stred" +msgstr "Centrum voľného času" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:294 msgctxt "Symbol" msgid "Ice Skating" -msgstr "" +msgstr "Korčuľovanie" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:295 msgctxt "Symbol" msgid "Equine Sports" -msgstr "" +msgstr "Konské športy" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:296 msgctxt "Symbol" msgid "Rock Climbing" -msgstr "" +msgstr "Horolezectvo" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:297 msgctxt "Symbol" msgid "Gym" -msgstr "" +msgstr "Telocvičňa" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:298 msgctxt "Symbol" msgid "Golf" -msgstr "" +msgstr "Golf" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:299 -#, fuzzy msgctxt "Symbol" msgid "Diving" -msgstr "Rozdelenie" +msgstr "Potápanie" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:300 msgctxt "Symbol" msgid "Archery" -msgstr "" +msgstr "Lukostreľba" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:301 -#, fuzzy msgctxt "Symbol" msgid "Zoo" -msgstr "Lupa" +msgstr "Zoo" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:302 msgctxt "Symbol" msgid "Wreck" -msgstr "" +msgstr "Vrak" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:303 #, fuzzy msgctxt "Symbol" msgid "Water Wheel" -msgstr "Koleso" +msgstr "Vodné koleso" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:304 -#, fuzzy msgctxt "Symbol" msgid "Point of Interest" -msgstr "Vlastnosti tlače" +msgstr "Bod záujmu" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:305 -#, fuzzy msgctxt "Symbol" msgid "Theater" -msgstr "Vytvoriť" +msgstr "Divadlo" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:306 msgctxt "Symbol" msgid "Park / Picnic Area" -msgstr "" +msgstr "Park / Oblasť na piknik" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:307 -#, fuzzy msgctxt "Symbol" msgid "Monument" -msgstr "Dokument" +msgstr "Pamätihodnosť" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:309 msgctxt "Symbol" msgid "Beach" -msgstr "" +msgstr "Pláž" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:310 -#, fuzzy msgctxt "Symbol" msgid "Battle Location" -msgstr "Umiestnenie" +msgstr "Miesto konania bitky" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:311 msgctxt "Symbol" msgid "Archaeology / Ruins" -msgstr "" +msgstr "Archeológia / zrúcaniny" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:312 msgctxt "Symbol" msgid "Walking" -msgstr "" +msgstr "Chôdza" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:313 -#, fuzzy msgctxt "Symbol" msgid "Train" -msgstr "Režim zrna" +msgstr "Vlak" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:315 msgctxt "Symbol" msgid "Underground Rail" -msgstr "" +msgstr "Podzemná železnica" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:317 msgctxt "Symbol" msgid "Bike Rental" -msgstr "" +msgstr "Požičovňa bicyklov" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:319 msgctxt "Symbol" msgid "Carpool" -msgstr "" +msgstr "Spolujazda" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:320 -#, fuzzy msgctxt "Symbol" msgid "Flood Gate" -msgstr "Vyplnenie" +msgstr "Stavidlo" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:321 -#, fuzzy msgctxt "Symbol" msgid "Shipping" -msgstr "Kvapkanie" +msgstr "Preprava" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:322 -#, fuzzy msgctxt "Symbol" msgid "Disabled Parking" -msgstr "Vypnuté" +msgstr "Parkovanie pre hendikepovaných" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:323 msgctxt "Symbol" msgid "Paid Parking" -msgstr "" +msgstr "Platené parkovanie" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:324 msgctxt "Symbol" msgid "Bike Parking" -msgstr "" +msgstr "Parkovanie bicyklov" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:326 msgctxt "Symbol" msgid "Marina" -msgstr "" +msgstr "Prístav" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:327 -#, fuzzy msgctxt "Symbol" msgid "Fuel Station" -msgstr "Vzťah" +msgstr "Čerpacia stanica" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:328 -#, fuzzy msgctxt "Symbol" msgid "Bus Stop" -msgstr "Za_staviť" +msgstr "Autobusová zastávka" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:329 -#, fuzzy msgctxt "Symbol" msgid "Bus Station" -msgstr "Menej sýtosti" +msgstr "Autobusová stanica" #. Symbols: ./MapSymbols.svg #: ../share/symbols/symbols.h:330 -#, fuzzy msgctxt "Symbol" msgid "Airport" -msgstr "Importovať" +msgstr "Letisko" #: ../share/templates/templates.h:1 -#, fuzzy msgid "A4 Landscape Page" -msgstr "_Krajinka" +msgstr "Stránka A4 na šírku" #: ../share/templates/templates.h:1 msgid "Empty A4 landscape sheet" -msgstr "" +msgstr "Prázdny list A4 na šírku" #: ../share/templates/templates.h:1 msgid "A4 paper sheet empty landscape" -msgstr "" +msgstr "Prázdny list papiera A4 na šírku" #: ../share/templates/templates.h:1 -#, fuzzy msgid "A4 Page" -msgstr "Stránka" +msgstr "Stránka A4" #: ../share/templates/templates.h:1 -#, fuzzy msgid "Empty A4 sheet" -msgstr "Prázdny výber" +msgstr "Prázdny list A4" #: ../share/templates/templates.h:1 msgid "A4 paper sheet empty" -msgstr "" +msgstr "Prázdny list papiera A4" #: ../share/templates/templates.h:1 -#, fuzzy msgid "Black Opaque" -msgstr "Čierny kanál" +msgstr "Čierny matný" #: ../share/templates/templates.h:1 msgid "Empty black page" -msgstr "" +msgstr "Prázdna čierna stránka" #: ../share/templates/templates.h:1 msgid "black opaque empty" -msgstr "" +msgstr "čierna matná prázdna" #: ../share/templates/templates.h:1 msgid "White Opaque" -msgstr "" +msgstr "Biela matná" #: ../share/templates/templates.h:1 -#, fuzzy msgid "Empty white page" -msgstr "Exportovať kresbu, nie stránku" +msgstr "prázdna biela matná stránka" #: ../share/templates/templates.h:1 msgid "white opaque empty" -msgstr "" +msgstr "prázdna biela matná" #: ../share/templates/templates.h:1 msgid "Business Card 85x54mm" -msgstr "" +msgstr "Vizitka 85x54 mm" #: ../share/templates/templates.h:1 msgid "Empty business card template." -msgstr "" +msgstr "Prázdna šablóna vizitky." #: ../share/templates/templates.h:1 msgid "business card empty 85x54" -msgstr "" +msgstr "prázdna vizitka 85x54" #: ../share/templates/templates.h:1 msgid "Business Card 90x50mm" -msgstr "" +msgstr "Vizitka 90x50 mm" #: ../share/templates/templates.h:1 msgid "business card empty 90x50" -msgstr "" +msgstr "prázdna vizitka 90x50" #: ../share/templates/templates.h:1 msgid "CD Cover 300dpi" -msgstr "" +msgstr "Obal na CD 300 dpi" #: ../share/templates/templates.h:1 msgid "Empty CD box cover." -msgstr "" +msgstr "Prázdny obal CD." #: ../share/templates/templates.h:1 msgid "CD cover disc disk 300dpi box" -msgstr "" +msgstr "obal disku CD 300 dpi" #: ../share/templates/templates.h:1 msgid "CD Label 120x120 " -msgstr "" +msgstr "Obal CD 120x120" #: ../share/templates/templates.h:1 msgid "Simple CD Label template with disc's pattern." -msgstr "" +msgstr "Šablóna jednoduchého obalu CD so vzorom disku." #: ../share/templates/templates.h:1 msgid "CD label 120x120 disc disk" diff --git a/share/extensions/dimension.inx b/share/extensions/dimension.inx index 343ad27bf..d89e5afa4 100644 --- a/share/extensions/dimension.inx +++ b/share/extensions/dimension.inx @@ -7,7 +7,7 @@ <dependency type="executable" location="extensions">pathmodifier.py</dependency> <param name="xoffset" type="float" min="0" max="1000" _gui-text="X Offset:">50</param> <param name="yoffset" type="float" min="0" max="1000" _gui-text="Y Offset:">50</param> - <param name="type" type="enum" _gui-text="Bounding box type :"> + <param name="type" type="enum" _gui-text="Bounding box type:"> <_item value="geometric">Geometric</_item> <_item value="visual">Visual</_item> </param> diff --git a/share/extensions/dpiswitcher.inx b/share/extensions/dpiswitcher.inx new file mode 100644 index 000000000..145fd9357 --- /dev/null +++ b/share/extensions/dpiswitcher.inx @@ -0,0 +1,21 @@ +<?xml version="1.0" encoding="utf-8"?> + <inkscape-extension xmlns= + "http://www.inkscape.org/namespace/inkscape/extension"> + <_name>DPI Switcher</_name> + <id>org.inkscape.dpiswitcher</id> + <dependency type="executable" location="extensions">dpiswitcher.py</dependency> + <dependency type="executable" location="extensions">inkex.py</dependency> + <param name="switcher" type="enum" _gui-text="Type of convert:"> + <_item value="0">DPI Switch from 90 to 96</_item> + <_item value="1">DPI Switch from 96 to 90</_item> + </param> + <effect needs-live-preview="false" needs-document="no"> + <object-type>all</object-type> + <effects-menu> + <submenu _name="Document"/> + </effects-menu> + </effect> + <script> + <command reldir="extensions" interpreter="python">dpiswitcher.py</command> + </script> +</inkscape-extension> diff --git a/share/extensions/dpiswitcher.py b/share/extensions/dpiswitcher.py new file mode 100644 index 000000000..b4630ae4c --- /dev/null +++ b/share/extensions/dpiswitcher.py @@ -0,0 +1,148 @@ +#!/usr/bin/env python +''' +This extension scale or reduce a document to fit diferent SVG DPI -90/96- + +Copyright (C) 2012 Jabiertxo Arraiza, jabier.arraiza@marker.es + +Version 0.4 - DPI Switcher + +TODO: +Comment Better!!! + +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 +''' + +import inkex, sys, re, string +from lxml import etree + +class DPISwitcher(inkex.Effect): + + def __init__(self): + inkex.Effect.__init__(self) + self.OptionParser.add_option("--switcher", action="store", + type="string", dest="switcher", default="0", + help="Select the DPI switch you want") + self.factor = 90.0/96.0 + self.unit = "px" + + def scaleRoot(self, svg): + widthNumber = re.sub("[a-zA-Z]", "", svg.get('width')) + heightNumber = re.sub("[a-zA-Z]", "", svg.get('height')) + if svg.get('viewBox'): + widthNumber = svg.get('viewBox').split(" ")[2] + heightNumber = svg.get('viewBox').split(" ")[3] + widthDoc = str(float(widthNumber) * self.factor) + heightDoc = str(float(heightNumber) * self.factor) + if svg.get('height'): + svg.set('height', heightDoc) + if svg.get('width'): + svg.set('width', widthDoc) + svg.set('viewBox',"0 0 " + widthDoc + " " + heightDoc) + xpathStr = '//svg:rect | //svg:image | //svg:path | //svg:circle | //svg:ellipse | //svg:text' + elements = svg.xpath(xpathStr, namespaces=inkex.NSS) + for element in elements: + box3DSide = element.get(inkex.addNS('box3dsidetype', 'inkscape')) + if box3DSide: + continue + if element.get('transform'): + if "matrix" in str(element.get('transform')): + result = re.sub(r".*?((matrix).*?\))", self.scaleMatrixElement, str(element.get('transform'))) + element.set('transform', result) + if "scale" in str(element.get('transform')): + result = re.sub(r".*?((scale).*?\))", self.scaleElement, str(element.get('transform'))) + element.set('transform', result) + if "scale" not in str(element.get('transform')) and "matrix" not in str(element.get('transform')): + element.set('transform', str(element.get('transform')) + "scale(" + str(self.factor) + ", " + str(self.factor) + ")") + else: + element.set('transform', "scale(" + str(self.factor) + ", " + str(self.factor) + ")") + xpathStr = '//svg:g' + elements = svg.xpath(xpathStr, namespaces=inkex.NSS) + for element in elements: + if element.get('transform'): + if "matrix" in str(element.get('transform')): + result = re.sub(r".*?((matrix).*?\))", self.translateMatrixElement, str(element.get('transform'))) + element.set('transform', result) + if "translate" in str(element.get('transform')): + result = re.sub(r".*?((translate).*?\))", self.translateElement, str(element.get('transform'))) + element.set('transform', result) + self.scaleGuides(svg) + self.scaleGrid(svg) + + def scaleGrid(self, svg): + xpathStr = '//inkscape:grid' + grids = svg.xpath(xpathStr, namespaces=inkex.NSS) + for grid in grids: + empspacingNumber = float(grid.get("empspacing")) * self.factor + spacingxNumber = float(grid.get("spacingx").replace("px", "")) * self.factor + spacingyNumber = float(grid.get("spacingy").replace("px", "")) * self.factor + originxNumber = float(grid.get("originx").replace("px", "")) * self.factor + originyNumber = float(grid.get("originy").replace("px", "")) * self.factor + grid.set("empspacing", str(empspacingNumber)) + grid.set("spacingx", str(spacingxNumber) + "px") + grid.set("spacingy", str(spacingyNumber) + "px") + grid.set("originx", str(originxNumber) + "px") + grid.set("originy", str(originyNumber) + "px") + + def scaleGuides(self, svg): + xpathStr = '//sodipodi:guide' + guides = svg.xpath(xpathStr, namespaces=inkex.NSS) + for guide in guides: + point = string.split(guide.get("position"), ",") + guide.set("position", str(float(point[0].strip()) * self.factor) + "," + str(float(point[1].strip()) * self.factor)) + + #a dictionary of unit to user unit conversion factors + __uuconv = {'in':96.0, 'pt':1.33333333333, 'px':1.0, 'mm':3.77952755913, 'cm':37.7952755913, + 'm':3779.52755913, 'km':3779527.55913, 'pc':16.0, 'yd':3456.0 , 'ft':1152.0} + + __uuconvLegazy = {'in':90.0, 'pt':1.25, 'px':1, 'mm':3.5433070866, 'cm':35.433070866, 'm':3543.3070866, + 'km':3543307.0866, 'pc':15.0, 'yd':3240 , 'ft':1080} + + def scaleElement(self, m): + scaleVal = m.group(1).replace("scale","").replace(" ","").replace("(","").replace(")","").split(",") + return "scale(" + str(float(scaleVal[0]) * self.factor) + "," + str(float(scaleVal[1]) * self.factor) + ")" + + def scaleMatrixElement(self, m): + scaleMatrixVal = m.group(1).replace("matrix","").replace(" ","").replace("(","").replace(")","").split(",") + return "matrix(" + str(float(scaleMatrixVal[0]) * self.factor) + "," + scaleMatrixVal[1] + "," + scaleMatrixVal[2] + "," + str(float(scaleMatrixVal[3]) * self.factor) + "," + scaleMatrixVal[4] + "," + scaleMatrixVal[5] + ")" + + def translateElement(self, m): + translateVal = m.group(1).replace("translate","").replace(" ","").replace("(","").replace(")","").split(",") + return "translate(" + str(float(translateVal[0]) * self.factor) + "," + str(float(translateVal[1]) * self.factor) + ")" + + def translateMatrixElement(self, m): + translateMatrixVal = m.group(1).replace("matrix","").replace(" ","").replace("(","").replace(")","").split(",") + return "matrix(" + translateMatrixVal[0] + "," + translateMatrixVal[1] + "," + translateMatrixVal[2] + "," + translateMatrixVal[3] + "," + str(float(translateMatrixVal[4]) * self.factor) + "," + str(float(translateMatrixVal[5]) * self.factor) + ")" + + def effect(self): + if self.options.switcher == "0": + self.factor = 96.0/90.0 + saveout = sys.stdout + sys.stdout = sys.stderr + svg = self.document.getroot() + namedview = svg.find(inkex.addNS('namedview', 'sodipodi')) + self.unit = namedview.get(inkex.addNS('document-units', 'inkscape')) + if self.unit and self.unit <> "px": + unitExponent = 0.0 + if self.options.switcher == "0": + unitExponent = 1.0/(self.factor/self.__uuconv[self.unit]) + else: + unitExponent = 1.0/(self.factor/self.__uuconvLegazy[self.unit]) + namedview.set(inkex.addNS('document-units', 'inkscape'), "px") + self.factor = self.factor * unitExponent + self.scaleRoot(svg); + sys.stdout = saveout + +effect = DPISwitcher() +effect.affect() diff --git a/share/extensions/dxf_input.inx b/share/extensions/dxf_input.inx index 0ba38252a..d51a07c39 100644 --- a/share/extensions/dxf_input.inx +++ b/share/extensions/dxf_input.inx @@ -23,7 +23,7 @@ <page name="help" _gui-text="Help"> <_param name="inputhelp" type="description" xml:space="preserve">- AutoCAD Release 13 and newer. - assume dxf drawing is in mm. -- assume svg drawing is in pixels, at 90 dpi. +- assume svg drawing is in pixels, at 96 dpi. - scale factor and origin apply only to manual scaling. - layers are preserved only on File->Open, not Import. - limited support for BLOCKS, use AutoCAD Explode Blocks instead, if needed.</_param> diff --git a/share/extensions/dxf_input.py b/share/extensions/dxf_input.py index 7ca176c92..972895cb8 100755 --- a/share/extensions/dxf_input.py +++ b/share/extensions/dxf_input.py @@ -354,7 +354,7 @@ parser.add_option("--font", action="store", type="string", dest="font", default= parser.add_option("--tab", action="store", type="string", dest="tab", default="Options") parser.add_option("--inputhelp", action="store", type="string", dest="inputhelp", default="") (options, args) = parser.parse_args(inkex.sys.argv[1:]) -doc = inkex.etree.parse(StringIO('<svg xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" width="%s" height="%s"></svg>' % (210*90/25.4, 297*90/25.4))) +doc = inkex.etree.parse(StringIO('<svg xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" width="%s" height="%s"></svg>' % (210*96/25.4, 297*96/25.4))) desc = inkex.etree.SubElement(doc.getroot(), 'desc', {}) defs = inkex.etree.SubElement(doc.getroot(), 'defs', {}) marker = inkex.etree.SubElement(defs, 'marker', {'id': 'DistanceX', 'orient': 'auto', 'refX': '0.0', 'refY': '0.0', 'style': 'overflow:visible'}) @@ -365,7 +365,7 @@ inkex.etree.SubElement(pattern, 'path', {'d': 'M6 2 l-4,4', 'stroke': '#000000', inkex.etree.SubElement(pattern, 'path', {'d': 'M4 0 l-4,4', 'stroke': '#000000', 'stroke-width': '0.25', 'linecap': 'square'}) stream = open(args[0], 'r') xmax = xmin = ymin = 0.0 -height = 297.0*90.0/25.4 # default A4 height in pixels +height = 297.0*96.0/25.4 # default A4 height in pixels line = get_line() polylines = 0 flag = 0 # (0, 1, 2, 3) = (none, LAYER, LTYPE, DIMTXT) @@ -415,7 +415,7 @@ else: xmin = float(options.xmin) ymin = float(options.ymin) desc.text = '%s - scale = %f, origin = (%f, %f), auto = %s' % (unicode(args[0], options.input_encode), scale, xmin, ymin, options.auto) -scale *= 90.0/25.4 # convert from mm to pixels +scale *= 96.0/25.4 # convert from mm to pixels if not layer_nodes.has_key('0'): attribs = {inkex.addNS('groupmode','inkscape'): 'layer', inkex.addNS('label','inkscape'): '0'} @@ -487,7 +487,7 @@ while line[0] and (line[1] != 'ENDSEC' or not inENTITIES): w = 0.5 # default lineweight for POINT if vals[groups['370']]: # Common Lineweight if vals[groups['370']][0] > 0: - w = 90.0/25.4*vals[groups['370']][0]/100.0 + w = 96.0/25.4*vals[groups['370']][0]/100.0 if w < 0.5: w = 0.5 style = simplestyle.formatStyle({'stroke': '%s' % color, 'fill': 'none', 'stroke-width': '%.1f' % w}) diff --git a/share/extensions/dxf_outlines.inx b/share/extensions/dxf_outlines.inx index ad3aef17f..c6f71d269 100644 --- a/share/extensions/dxf_outlines.inx +++ b/share/extensions/dxf_outlines.inx @@ -10,14 +10,14 @@ <param name="ROBO" type="boolean" _gui-text="use ROBO-Master type of spline output">false</param> <param name="POLY" type="boolean" _gui-text="use LWPOLYLINE type of line output">true</param> <param name="units" type="enum" _gui-text="Base unit"> - <_item value="72./90">pt</_item> - <_item value="1./15">pc</_item> + <_item value="72./96">pt</_item> + <_item value="1./16">pc</_item> <_item value="1.">px</_item> - <_item value="25.4/90">mm</_item> - <_item value="2.54/90">cm</_item> - <_item value=".0254/90">m</_item> - <_item value="1./90">in</_item> - <_item value="1./1080">ft</_item> + <_item value="25.4/96">mm</_item> + <_item value="2.54/96">cm</_item> + <_item value=".0254/96">m</_item> + <_item value="1./96">in</_item> + <_item value="1./1152">ft</_item> </param> <param name="encoding" type="enum" _gui-text="Character Encoding"> <_item value="latin_1">Latin 1</_item> @@ -34,7 +34,7 @@ </page> <page name="help" _gui-text="Help"> <_param name="inputhelp" type="description" xml:space="preserve">- AutoCAD Release 14 DXF format. -- The base unit parameter specifies in what unit the coordinates are output (90 px = 1 in). +- The base unit parameter specifies in what unit the coordinates are output (96 px = 1 in). - Supported element types - paths (lines and splines) - rectangles diff --git a/share/extensions/dxf_outlines.py b/share/extensions/dxf_outlines.py index f5cf37aff..f7e57c32e 100755 --- a/share/extensions/dxf_outlines.py +++ b/share/extensions/dxf_outlines.py @@ -76,7 +76,7 @@ class MyEffect(inkex.Effect): default=True) self.OptionParser.add_option("--units", action="store", type="string", dest="units", - default="72./90") # Points + default="72./96") # Points self.OptionParser.add_option("--encoding", action="store", type="string", dest="char_encode", default="latin_1") @@ -324,7 +324,7 @@ class MyEffect(inkex.Effect): scale = eval(self.options.units) if not scale: - scale = 25.4/90 # if no scale is specified, assume inch as baseunit + scale = 25.4/96 # if no scale is specified, assume inch as baseunit h = self.unittouu(self.document.getroot().xpath('@height', namespaces=inkex.NSS)[0]) self.groupmat = [[[scale, 0.0, 0.0], [0.0, -scale, h*scale]]] doc = self.document.getroot() diff --git a/share/extensions/gimp_xcf.inx b/share/extensions/gimp_xcf.inx index 10bcef627..30406b62d 100644 --- a/share/extensions/gimp_xcf.inx +++ b/share/extensions/gimp_xcf.inx @@ -11,7 +11,7 @@ <param name="guides" type="boolean" _gui-text="Save Guides">false</param> <param name="grid" type="boolean" _gui-text="Save Grid">false</param> <param name="background" type="boolean" _gui-text="Save Background">false</param> - <param name="dpi" type="int" min="1" max="3000" _gui-text="File Resolution:">90</param> + <param name="dpi" type="int" min="1" max="3000" _gui-text="File Resolution:">96</param> </page> <page name="Help" _gui-text="Help"> <_param name="instructions" type="description" xml:space="preserve">This extension exports the document to Gimp XCF format according to the following options: diff --git a/share/extensions/gimp_xcf.py b/share/extensions/gimp_xcf.py index c2a8cb274..11c9d041f 100755 --- a/share/extensions/gimp_xcf.py +++ b/share/extensions/gimp_xcf.py @@ -63,7 +63,7 @@ class MyEffect(inkex.Effect): help="Add background color to each layer") self.OptionParser.add_option("-i", "--dpi", action="store", type="string", - dest="resolution", default="90", + dest="resolution", default="96", help="File resolution") def output(self): diff --git a/share/extensions/layout_nup.inx b/share/extensions/layout_nup.inx index bdf650722..2b7734fc3 100644 --- a/share/extensions/layout_nup.inx +++ b/share/extensions/layout_nup.inx @@ -15,8 +15,8 @@ <item value="cm">cm</item> <item value="mm">mm</item> </param> - <param name="pgSizeX" type="float" min="0.0" max="9999.0" _gui-text="Size X:">765</param> - <param name="pgSizeY" type="float" min="0.0" max="9999.0" _gui-text="Size Y:">990</param> + <param name="pgSizeX" type="float" min="0.0" max="9999.0" _gui-text="Size X:">816</param> + <param name="pgSizeY" type="float" min="0.0" max="9999.0" _gui-text="Size Y:">1056</param> <_param name="pgMargin" type="description" appearance="header">Page margins</_param> <param name="pgMarginTop" type="float" indent="1" min="0.0" max="9999.0" _gui-text="Top:">0</param> <param name="pgMarginBottom" type="float" indent="1" min="0.0" max="9999.0" _gui-text="Bottom:">0</param> diff --git a/share/extensions/layout_nup_pageframe.py b/share/extensions/layout_nup_pageframe.py index 59da1f4bb..471a75dd3 100755 --- a/share/extensions/layout_nup_pageframe.py +++ b/share/extensions/layout_nup_pageframe.py @@ -38,7 +38,7 @@ def expandTuple(unit, x, length = 4): #@-node:tbrown.20070622103716.1:expandTuple #@+node:tbrown.20070622103716.2:GenerateNup def GenerateNup(unit="px", - pgSize=("8.5*90","11*90"), + pgSize=("8.5*96","11*96"), pgMargin=(0,0), pgPadding=(0,0), num=(2,2), diff --git a/share/extensions/perfectboundcover.py b/share/extensions/perfectboundcover.py index 6cdab7eab..9f81dbb36 100755 --- a/share/extensions/perfectboundcover.py +++ b/share/extensions/perfectboundcover.py @@ -135,7 +135,7 @@ class PerfectBoundCover(inkex.Effect): for guide in guides: newguide = inkex.etree.Element(inkex.addNS('guide','sodipodi')) newguide.set("orientation", guide[0]) - newguide.set("position", "%f" % (guide[1] * 90)) + newguide.set("position", "%f" % (guide[1] * 96)) namedview[0].append(newguide) ''' diff --git a/share/extensions/print_win32_vector.py b/share/extensions/print_win32_vector.py index ca166d25a..37c2021ac 100644 --- a/share/extensions/print_win32_vector.py +++ b/share/extensions/print_win32_vector.py @@ -199,7 +199,7 @@ class MyEffect(inkex.Effect): if mygdi.StartDocA(self.hDC, byref(docInfo)) < 0: exit() # user clicked Cancel - self.scale = (ord(pDevMode[58]) + 256.0*ord(pDevMode[59]))/90 # use PrintQuality from DEVMODE + self.scale = (ord(pDevMode[58]) + 256.0*ord(pDevMode[59]))/96 # use PrintQuality from DEVMODE self.groupmat = [[[self.scale, 0.0, 0.0], [0.0, self.scale, 0.0]]] doc = self.document.getroot() self.process_group(doc) diff --git a/share/extensions/svg2fxg.xsl b/share/extensions/svg2fxg.xsl index db9f61f22..3853b4d7b 100755 --- a/share/extensions/svg2fxg.xsl +++ b/share/extensions/svg2fxg.xsl @@ -832,22 +832,22 @@ extension-element-prefixes="math"> <xsl:value-of select="round(translate($convert_value, 'px', ''))" /> </xsl:when> <xsl:when test="contains($convert_value, 'pt')"> - <xsl:value-of select="round(translate($convert_value, 'pt', '') * 1.25)" /> + <xsl:value-of select="round(translate($convert_value, 'pt', '') * 1.333333)" /> </xsl:when> <xsl:when test="contains($convert_value, 'pc')"> - <xsl:value-of select="round(translate($convert_value, 'pc', '') * 15)" /> + <xsl:value-of select="round(translate($convert_value, 'pc', '') * 16)" /> </xsl:when> <xsl:when test="contains($convert_value, 'mm')"> - <xsl:value-of select="round(translate($convert_value, 'mm', '') * 3.543307)" /> + <xsl:value-of select="round(translate($convert_value, 'mm', '') * 3.779527)" /> </xsl:when> <xsl:when test="contains($convert_value, 'cm')"> - <xsl:value-of select="round(translate($convert_value, 'cm', '') * 35.43307)" /> + <xsl:value-of select="round(translate($convert_value, 'cm', '') * 37.79527)" /> </xsl:when> <xsl:when test="contains($convert_value, 'in')"> - <xsl:value-of select="round(translate($convert_value, 'in', '') * 90)" /> + <xsl:value-of select="round(translate($convert_value, 'in', '') * 96)" /> </xsl:when> <xsl:when test="contains($convert_value, 'ft')"> - <xsl:value-of select="round(translate($convert_value, 'ft', '') * 1080)" /> + <xsl:value-of select="round(translate($convert_value, 'ft', '') * 1152)" /> </xsl:when> <xsl:when test="not(string(number($convert_value))='NaN')"> <xsl:value-of select="round($convert_value)" /> diff --git a/share/extensions/svg2xaml.xsl b/share/extensions/svg2xaml.xsl index 040e6bcb2..fa785fa4f 100755 --- a/share/extensions/svg2xaml.xsl +++ b/share/extensions/svg2xaml.xsl @@ -854,22 +854,22 @@ exclude-result-prefixes="rdf xlink xs exsl libxslt"> <xsl:value-of select="translate($convert_value, 'px', '')" /> </xsl:when> <xsl:when test="contains($convert_value, 'pt')"> - <xsl:value-of select="translate($convert_value, 'pt', '') * 1.25" /> + <xsl:value-of select="translate($convert_value, 'pt', '') * 1.333333" /> </xsl:when> <xsl:when test="contains($convert_value, 'pc')"> - <xsl:value-of select="translate($convert_value, 'pc', '') * 15" /> + <xsl:value-of select="translate($convert_value, 'pc', '') * 16" /> </xsl:when> <xsl:when test="contains($convert_value, 'mm')"> - <xsl:value-of select="translate($convert_value, 'mm', '') * 3.543307" /> + <xsl:value-of select="translate($convert_value, 'mm', '') * 3.779527" /> </xsl:when> <xsl:when test="contains($convert_value, 'cm')"> - <xsl:value-of select="translate($convert_value, 'cm', '') * 35.43307" /> + <xsl:value-of select="translate($convert_value, 'cm', '') * 37.79527" /> </xsl:when> <xsl:when test="contains($convert_value, 'in')"> - <xsl:value-of select="translate($convert_value, 'in', '') * 90" /> + <xsl:value-of select="translate($convert_value, 'in', '') * 96" /> </xsl:when> <xsl:when test="contains($convert_value, 'ft')"> - <xsl:value-of select="translate($convert_value, 'ft', '') * 1080" /> + <xsl:value-of select="translate($convert_value, 'ft', '') * 1152" /> </xsl:when> <xsl:otherwise> <xsl:value-of select="$convert_value" /> diff --git a/share/extensions/synfig_prepare.py b/share/extensions/synfig_prepare.py index e06efde9b..c6ad48c97 100755 --- a/share/extensions/synfig_prepare.py +++ b/share/extensions/synfig_prepare.py @@ -457,17 +457,17 @@ def get_dimension(s="1024"): elif s[-2:] == "px": return float(s[:-2]) elif s[-2:] == "pt": - return float(s[:-2])*1.25 + return float(s[:-2])*1.333 elif s[-2:] == "em": return float(s[:-2])*16 elif s[-2:] == "mm": - return float(s[:-2])*3.54 + return float(s[:-2])*3.779 elif s[-2:] == "pc": - return float(s[:-2])*15 + return float(s[:-2])*16 elif s[-2:] == "cm": - return float(s[:-2])*35.43 + return float(s[:-2])*37.79 elif s[-2:] == "in": - return float(s[:-2])*90 + return float(s[:-2])*96 else: return 1024 diff --git a/share/extensions/test/svg/default-inkscape-SVG.svg b/share/extensions/test/svg/default-inkscape-SVG.svg index a6a610fdb..259e13c0d 100644 --- a/share/extensions/test/svg/default-inkscape-SVG.svg +++ b/share/extensions/test/svg/default-inkscape-SVG.svg @@ -8,8 +8,8 @@ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:cc="http://web.resource.org/cc/" xmlns:dc="http://purl.org/dc/elements/1.1/" - width="744.09448819" - height="1052.3622047"> + width="793.7007874" + height="1122.519685"> <defs /> <sodipodi:namedview id="base" diff --git a/share/extensions/test/svg/default-plain-SVG.svg b/share/extensions/test/svg/default-plain-SVG.svg index 544273366..9c0884789 100644 --- a/share/extensions/test/svg/default-plain-SVG.svg +++ b/share/extensions/test/svg/default-plain-SVG.svg @@ -8,8 +8,8 @@ xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" version="1.1" - width="744.09448819" - height="1052.3622047"> + width="793.7007874" + height="1122.519685"> <defs id="defs4" /> <metadata diff --git a/share/extensions/test/svg/empty-SVG.svg b/share/extensions/test/svg/empty-SVG.svg index 475cc856b..d6c680b67 100644 --- a/share/extensions/test/svg/empty-SVG.svg +++ b/share/extensions/test/svg/empty-SVG.svg @@ -8,6 +8,6 @@ xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" version="1.1" - width="744.09448819" - height="1052.3622047"> + width="793.7007874" + height="1122.519685"> </svg> diff --git a/share/extensions/webslicer_create_rect.inx b/share/extensions/webslicer_create_rect.inx index 5b3b447e9..85578e24e 100644 --- a/share/extensions/webslicer_create_rect.inx +++ b/share/extensions/webslicer_create_rect.inx @@ -11,7 +11,7 @@ <item value="jpg">JPG</item> <item value="gif">GIF</item> </param> - <param name="dpi" type="float" min="1" max="9999" _gui-text="DPI:">90</param> + <param name="dpi" type="float" min="1" max="9999" _gui-text="DPI:">96</param> <param name="dimension" type="string" _gui-text="Force Dimension:"></param> <!-- i18n. Description duplicated in a fake value attribute in order to make it translatable --> <param name="help-dimension1" type="description" _value="Force Dimension must be set as <width>x<height>">Force Dimension must be set as <width>x<height></param> diff --git a/share/symbols/MapSymbolsNPS.svg b/share/symbols/MapSymbolsNPS.svg index 4a8a4bdba..81b24adde 100644 --- a/share/symbols/MapSymbolsNPS.svg +++ b/share/symbols/MapSymbolsNPS.svg @@ -309,7 +309,7 @@ </symbol> <symbol id="FourWheelDriveRoad"> - <title>Four Wheel Drive Road"</title> + <title>Four Wheel Drive Road</title> <path d="m 64.5,37.75 0,-7.25 c 0,-2 -1.5,-2.5 -2.5,-2.5 l -14.25,0 -5.25,-8.75 -3,0 5.25,8.75 -4,6.75 -9.25,0 c -3,-6.25 -9.5,-6 -9.5,-6 l -17,0 0,15.25 2.5,0 a 10.6,10.6 0 0 1 21,0 l 15,0 a 10.6,10.6 0 0 1 21,0 l 1,0 c 1,0 1.75,-0.75 1.75,-1.75 l 0,-4.5 z" style="stroke:none"/> <g style="fill:none;stroke-width:4"> <circle cx="18" cy="45.375" r="5"/> @@ -318,7 +318,7 @@ </symbol> <symbol id="FourWheelDriveRoad_Inv"> - <title>Four Wheel Drive Road"</title> + <title>Four Wheel Drive Road</title> <rect x="0.5" y="0.5" width="71" height="71" ry="6" style="stroke:white"/> <path d="m 64.5,37.75 0,-7.25 c 0,-2 -1.5,-2.5 -2.5,-2.5 l -14.25,0 -5.25,-8.75 -3,0 5.25,8.75 -4,6.75 -9.25,0 c -3,-6.25 -9.5,-6 -9.5,-6 l -17,0 0,15.25 2.5,0 a 10.6,10.6 0 0 1 21,0 l 15,0 a 10.6,10.6 0 0 1 21,0 l 1,0 c 1,0 1.75,-0.75 1.75,-1.75 l 0,-4.5 z" style="fill:white;stroke:none"/> <g style="fill:none;stroke:white;stroke-width:4"> diff --git a/share/templates/default_pt.svg b/share/templates/default_pt.svg index 25cce1917..79cb11dbf 100644 --- a/share/templates/default_pt.svg +++ b/share/templates/default_pt.svg @@ -10,7 +10,7 @@ xmlns:dc="http://purl.org/dc/elements/1.1/" width="210mm" height="297mm" - viewBox="0 0 595.27558 841.88974"> + viewBox="0 0 595.275591 841.889764"> <defs /> <sodipodi:namedview id="base" diff --git a/share/templates/default_px.svg b/share/templates/default_px.svg index eb1cad0ca..26a1ba4fd 100644 --- a/share/templates/default_px.svg +++ b/share/templates/default_px.svg @@ -8,8 +8,9 @@ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:cc="http://web.resource.org/cc/" xmlns:dc="http://purl.org/dc/elements/1.1/" - width="793.7007874" - height="1122.519688"> + width="210mm" + height="297mm" + viewBox="0 0 793.7007874 1122.519685"> <defs /> <sodipodi:namedview id="base" diff --git a/src/display/drawing-pattern.cpp b/src/display/drawing-pattern.cpp index cf6358278..d0bf5de58 100644 --- a/src/display/drawing-pattern.cpp +++ b/src/display/drawing-pattern.cpp @@ -149,8 +149,8 @@ DrawingPattern::renderPattern(float opacity) { return cp; } -unsigned -DrawingPattern::_updateItem(Geom::IntRect const &area, UpdateContext const &ctx, unsigned flags, unsigned reset) +// TODO investigate if area should be used. +unsigned DrawingPattern::_updateItem(Geom::IntRect const &area, UpdateContext const &ctx, unsigned flags, unsigned reset) { UpdateContext pattern_ctx; diff --git a/src/extension/internal/cairo-ps-out.cpp b/src/extension/internal/cairo-ps-out.cpp index 4defc2ab9..d1511ba84 100644 --- a/src/extension/internal/cairo-ps-out.cpp +++ b/src/extension/internal/cairo-ps-out.cpp @@ -333,7 +333,7 @@ CairoPsOutput::init (void) "<param name=\"textToPath\" gui-text=\"" N_("Convert texts to paths") "\" type=\"boolean\">false</param>\n" "<param name=\"textToLaTeX\" gui-text=\"" N_("PS+LaTeX: Omit text in PS, and create LaTeX file") "\" type=\"boolean\">false</param>\n" "<param name=\"blurToBitmap\" gui-text=\"" N_("Rasterize filter effects") "\" type=\"boolean\">true</param>\n" - "<param name=\"resolution\" gui-text=\"" N_("Resolution for rasterization (dpi):") "\" type=\"int\" min=\"1\" max=\"10000\">90</param>\n" + "<param name=\"resolution\" gui-text=\"" N_("Resolution for rasterization (dpi):") "\" type=\"int\" min=\"1\" max=\"10000\">96</param>\n" "<param name=\"area\" gui-text=\"" N_("Output page size") "\" type=\"optiongroup\" >\n" "<_option value=\"page\">" N_("Use document's page size") "</_option>" "<_option value=\"drawing\">" N_("Use exported object's size") "</_option>" @@ -372,7 +372,7 @@ CairoEpsOutput::init (void) "<param name=\"textToPath\" gui-text=\"" N_("Convert texts to paths") "\" type=\"boolean\">false</param>\n" "<param name=\"textToLaTeX\" gui-text=\"" N_("EPS+LaTeX: Omit text in EPS, and create LaTeX file") "\" type=\"boolean\">false</param>\n" "<param name=\"blurToBitmap\" gui-text=\"" N_("Rasterize filter effects") "\" type=\"boolean\">true</param>\n" - "<param name=\"resolution\" gui-text=\"" N_("Resolution for rasterization (dpi):") "\" type=\"int\" min=\"1\" max=\"10000\">90</param>\n" + "<param name=\"resolution\" gui-text=\"" N_("Resolution for rasterization (dpi):") "\" type=\"int\" min=\"1\" max=\"10000\">96</param>\n" "<param name=\"area\" gui-text=\"" N_("Output page size") "\" type=\"optiongroup\" >\n" "<_option value=\"page\">" N_("Use document's page size") "</_option>" "<_option value=\"drawing\">" N_("Use exported object's size") "</_option>" diff --git a/src/extension/internal/cairo-render-context.cpp b/src/extension/internal/cairo-render-context.cpp index cb414b3b2..d76c187a2 100644 --- a/src/extension/internal/cairo-render-context.cpp +++ b/src/extension/internal/cairo-render-context.cpp @@ -658,12 +658,12 @@ CairoRenderContext::popLayer(void) CairoRenderContext *mask_ctx = _renderer->createContext(); // Fix Me: This is a kludge. PDF and PS output is set to 72 dpi but the - // Cairo surface is expecting the mask to be 90 dpi. + // Cairo surface is expecting the mask to be 96 dpi. float surface_width = _width; float surface_height = _height; if( _vector_based_target ) { - surface_width *= 1.25; - surface_height *= 1.25; + surface_width *= 4.0/3.0; + surface_height *= 4.0/3.0; } if (!mask_ctx->setupSurface( surface_width, surface_height )) { TRACE(("mask: setupSurface failed\n")); diff --git a/src/extension/internal/cairo-renderer-pdf-out.cpp b/src/extension/internal/cairo-renderer-pdf-out.cpp index 0c314a576..0c4ad4f0a 100644 --- a/src/extension/internal/cairo-renderer-pdf-out.cpp +++ b/src/extension/internal/cairo-renderer-pdf-out.cpp @@ -250,7 +250,7 @@ CairoRendererPdfOutput::init (void) "<param name=\"textToPath\" gui-text=\"" N_("Convert texts to paths") "\" type=\"boolean\">false</param>\n" "<param name=\"textToLaTeX\" gui-text=\"" N_("PDF+LaTeX: Omit text in PDF, and create LaTeX file") "\" type=\"boolean\">false</param>\n" "<param name=\"blurToBitmap\" gui-text=\"" N_("Rasterize filter effects") "\" type=\"boolean\">true</param>\n" - "<param name=\"resolution\" gui-text=\"" N_("Resolution for rasterization (dpi):") "\" type=\"int\" min=\"1\" max=\"10000\">90</param>\n" + "<param name=\"resolution\" gui-text=\"" N_("Resolution for rasterization (dpi):") "\" type=\"int\" min=\"1\" max=\"10000\">96</param>\n" "<param name=\"area\" gui-text=\"" N_("Output page size:") "\" type=\"optiongroup\" >\n" "<_option value=\"page\">" N_("Use document's page size") "</_option>" "<_option value=\"drawing\">" N_("Use exported object's size") "</_option>" diff --git a/src/extension/internal/cairo-renderer.cpp b/src/extension/internal/cairo-renderer.cpp index a725685d4..1d9bb09d0 100644 --- a/src/extension/internal/cairo-renderer.cpp +++ b/src/extension/internal/cairo-renderer.cpp @@ -479,7 +479,7 @@ static void sp_asbitmap_render(SPItem *item, CairoRenderContext *ctx) double shift_x = bbox->min()[Geom::X]; double shift_y = bbox->max()[Geom::Y]; - // For default 90 dpi, snap bitmap to pixel grid + // For default 96 dpi, snap bitmap to pixel grid if (res == Inkscape::Util::Quantity::convert(1, "in", "px")) { shift_x = round (shift_x); shift_y = -round (-shift_y); // Correct rounding despite coordinate inversion. diff --git a/src/extension/param/radiobutton.cpp b/src/extension/param/radiobutton.cpp index 75d5a40e3..f9515197c 100644 --- a/src/extension/param/radiobutton.cpp +++ b/src/extension/param/radiobutton.cpp @@ -122,7 +122,7 @@ ParamRadioButton::ParamRadioButton (const gchar * name, defaultval = (static_cast<optionentry*> (choices->data))->value->c_str(); } - const char * indent = xml->attribute("indent"); + const char *indent = xml ? xml->attribute("indent") : NULL; if (indent != NULL) { _indent = atoi(indent) * 12; } diff --git a/src/live_effects/effect.cpp b/src/live_effects/effect.cpp index b002eaf7f..349caafd9 100644 --- a/src/live_effects/effect.cpp +++ b/src/live_effects/effect.cpp @@ -75,8 +75,6 @@ #include <glibmm/i18n.h> #include "ui/tools/pen-tool.h" #include "ui/tools-switch.h" -#include "message-stack.h" -#include "desktop.h" #include "knotholder.h" #include "sp-lpe-item.h" #include "live_effects/lpeobject.h" @@ -370,6 +368,7 @@ Effect::Effect(LivePathEffectObject *lpeobject) { registerParameter( dynamic_cast<Parameter *>(&is_visible) ); is_visible.widget_is_visible = false; + current_zoom = 0.0; } Effect::~Effect() @@ -398,6 +397,36 @@ Effect::doOnApply (SPLPEItem const*/*lpeitem*/) { } +void +Effect::setSelectedNodePoints(std::vector<Geom::Point> sNP) +{ + selectedNodesPoints = sNP; +} + +void +Effect::setCurrentZoom(double cZ) +{ + current_zoom = cZ; +} + +bool +Effect::isNodePointSelected(Geom::Point const &nodePoint) const +{ + if (selectedNodesPoints.size() > 0) { + for (std::vector<Geom::Point>::const_iterator i = selectedNodesPoints.begin(); + i != selectedNodesPoints.end(); ++i) { + Geom::Point p = *i; + std::cout << p << "p\n"; + p[Geom::X] = Inkscape::Util::Quantity::convert(p[Geom::X], "px", *defaultUnit); + p[Geom::Y] = Inkscape::Util::Quantity::convert(p[Geom::Y], "px", *defaultUnit); + if (Geom::are_near(p, nodePoint, 0.01)) { + return true; + } + } + } + return false; +} + /** * Is performed each time before the effect is updated. */ @@ -419,6 +448,7 @@ 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->getDefaultUnit()->abbr; /*sp_curve = SP_SHAPE(sp_lpe_item)->getCurve(); pathvector_before_effect = sp_curve->get_pathvector();*/ doOnApply(lpeitem); @@ -427,6 +457,7 @@ 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->getDefaultUnit()->abbr; //printf("(SPLPEITEM*) %p\n", sp_lpe_item); sp_curve = SP_SHAPE(sp_lpe_item)->getCurve(); pathvector_before_effect = sp_curve->get_pathvector(); diff --git a/src/live_effects/effect.h b/src/live_effects/effect.h index a486e8491..7da76b267 100644 --- a/src/live_effects/effect.h +++ b/src/live_effects/effect.h @@ -13,6 +13,7 @@ #include "parameter/bool.h" #include "effect-enum.h" + #define LPE_CONVERSION_TOLERANCE 0.01 // FIXME: find good solution for this. class SPDocument; @@ -57,7 +58,9 @@ public: //of indirection is needed. We first call these methods, then the below. void doOnApply_impl(SPLPEItem const* lpeitem); void doBeforeEffect_impl(SPLPEItem const* lpeitem); - + void setCurrentZoom(double cZ); + void setSelectedNodePoints(std::vector<Geom::Point> sNP); + bool isNodePointSelected(Geom::Point const &nodePoint) const; virtual void doOnApply (SPLPEItem const* lpeitem); virtual void doBeforeEffect (SPLPEItem const* lpeitem); @@ -156,6 +159,9 @@ 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 const * 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; std::vector<Geom::Path> pathvector_before_effect; private: diff --git a/src/live_effects/lpe-bspline.cpp b/src/live_effects/lpe-bspline.cpp index 7703b8221..fdaeaf897 100644 --- a/src/live_effects/lpe-bspline.cpp +++ b/src/live_effects/lpe-bspline.cpp @@ -24,11 +24,6 @@ #include "live_effects/lpeobject.h" #include "live_effects/parameter/parameter.h" #include "ui/widget/scalar.h" -#include "ui/tool/node.h" -#include "ui/tools/node-tool.h" -#include "ui/tool/control-point-selection.h" -#include "ui/tool/selectable-control-point.h" -#include "selection.h" #include "xml/repr.h" #include "svg/svg.h" #include "sp-path.h" @@ -36,7 +31,6 @@ #include "document-private.h" #include "document.h" #include "document-undo.h" -#include "desktop-handles.h" #include "verbs.h" #include "sp-lpe-item.h" #include "sp-namedview.h" @@ -47,7 +41,6 @@ // For handling un-continuous paths: #include "message-stack.h" #include "inkscape.h" -#include "desktop.h" using Inkscape::DocumentUndo; @@ -64,7 +57,7 @@ LPEBSpline::LPEBSpline(LivePathEffectObject *lpeobject) // initialise your parameters here: //testpointA(_("Test Point A"), _("Test A"), "ptA", &wr, this, //Geom::Point(100,100)), - steps(_("Steps whith CTRL:"), _("Change number of steps whith CTRL pressed"), "steps", &wr, this, 2), + steps(_("Steps with CTRL:"), _("Change number of steps with CTRL pressed"), "steps", &wr, this, 2), ignoreCusp(_("Ignore cusp nodes"), _("Change ignoring cusp nodes"), "ignoreCusp", &wr, this, true), onlySelected(_("Change only selected nodes"), _("Change only selected nodes"), "onlySelected", &wr, this, false), showHelper(_("Show helper paths"), _("Show helper paths"), "showHelper", &wr, this, false), @@ -87,7 +80,7 @@ LPEBSpline::LPEBSpline(LivePathEffectObject *lpeobject) LPEBSpline::~LPEBSpline() {} -void LPEBSpline::doBeforeEffect (SPLPEItem const* lpeitem) +void LPEBSpline::doBeforeEffect (SPLPEItem const* /*lpeitem*/) { if(!hp.empty()){ hp.clear(); @@ -127,12 +120,8 @@ void LPEBSpline::doEffect(SPCurve *curve) Geom::PathVector const original_pathv = curve->get_pathvector(); curve->reset(); double radiusHelperNodes = 6.0; - SPDesktop *desktop = SP_ACTIVE_DESKTOP; - if (desktop){ - radiusHelperNodes /= SP_ACTIVE_DESKTOP->current_zoom(); - SPNamedView *nv = sp_desktop_namedview(desktop); - radiusHelperNodes = Inkscape::Util::Quantity::convert(radiusHelperNodes, "px", nv->doc_units->abbr); - } + radiusHelperNodes /= current_zoom; + radiusHelperNodes = Inkscape::Util::Quantity::convert(radiusHelperNodes, "px", *defaultUnit); for (Geom::PathVector::const_iterator path_it = original_pathv.begin(); path_it != original_pathv.end(); ++path_it) { if (path_it->empty()) @@ -165,16 +154,8 @@ void LPEBSpline::doEffect(SPCurve *curve) curve_endit = path_it->end_open(); } } - //Si la curva está cerrada calculamos el punto donde - //deveria estar el nodo BSpline de cierre/inicio de la curva - //en posible caso de que se cierre con una linea recta creando un nodo - //BSPline nCurve->moveto(curve_it1->initialPoint()); - //Recorremos todos los segmentos menos el último while (curve_it1 != curve_endit) { - //previousPointAt3 = pointAt3; - //Calculamos los puntos que dividirían en tres segmentos iguales el path - //recto de entrada y de salida SPCurve *in = new SPCurve(); in->moveto(curve_it1->initialPoint()); in->lineto(curve_it1->finalPoint()); @@ -260,10 +241,7 @@ void LPEBSpline::doEffect(SPCurve *curve) SBasisHelper = lineHelper->first_segment()->toSBasis(); lineHelper->reset(); delete lineHelper; - //almacenamos el punto del anterior bucle -o el de cierre- que nos hara de - //principio de curva previousNode = node; - //Y este hará de final de curva node = SBasisHelper.valueAt(0.5); Geom::CubicBezier const *cubic2 = dynamic_cast<Geom::CubicBezier const *>(&*curve_it1); if((cubic && are_near((*cubic)[0],(*cubic)[1])) || (cubic2 && are_near((*cubic2)[2],(*cubic2)[3]))) { @@ -274,12 +252,6 @@ void LPEBSpline::doEffect(SPCurve *curve) if(!are_near(node,curve_it1->finalPoint()) && showHelper){ drawHandle(node, radiusHelperNodes); } - //La curva BSpline se forma calculando el centro del segmanto de unión - //de el punto situado en las 2/3 partes de el segmento de entrada - //con el punto situado en la posición 1/3 del segmento de salida - //Estos dos puntos ademas estan posicionados en el lugas correspondiente - //de los manejadores de la curva - //aumentamos los valores para el siguiente paso en el bucle ++curve_it1; ++curve_it2; } @@ -293,7 +265,7 @@ void LPEBSpline::doEffect(SPCurve *curve) } if(showHelper){ Geom::PathVector const pathv = curve->get_pathvector(); - hp.push_back(pathv[0]); + hp.push_back(pathv[0]); } } @@ -314,7 +286,6 @@ LPEBSpline::addCanvasIndicators(SPLPEItem const */*lpeitem*/, std::vector<Geom:: { hp_vec.push_back(hp); } - Gtk::Widget *LPEBSpline::newWidget() { // use manage here, because after deletion of Effect object, others might @@ -332,12 +303,12 @@ Gtk::Widget *LPEBSpline::newWidget() Gtk::Button *defaultWeight = Gtk::manage(new Gtk::Button(Glib::ustring(_("Default weight")))); defaultWeight->signal_clicked() - .connect(sigc::bind<Gtk::Widget *>(sigc::mem_fun(*this, &LPEBSpline::toDefaultWeight), widg)); + .connect(sigc::mem_fun(*this, &LPEBSpline::toDefaultWeight)); buttons->pack_start(*defaultWeight, true, true, 2); Gtk::Button *makeCusp = Gtk::manage(new Gtk::Button(Glib::ustring(_("Make cusp")))); makeCusp->signal_clicked() - .connect(sigc::bind<Gtk::Widget *>(sigc::mem_fun(*this, &LPEBSpline::toMakeCusp), widg)); + .connect(sigc::mem_fun(*this, &LPEBSpline::toMakeCusp)); buttons->pack_start(*makeCusp, true, true, 2); vbox->pack_start(*buttons, true, true, 2); } @@ -381,24 +352,14 @@ Gtk::Widget *LPEBSpline::newWidget() return dynamic_cast<Gtk::Widget *>(vbox); } -void LPEBSpline::toDefaultWeight(Gtk::Widget *widgWeight) +void LPEBSpline::toDefaultWeight() { - weight.param_set_value(defaultStartPower); changeWeight(defaultStartPower); - Gtk::HBox * scalarParameter = dynamic_cast<Gtk::HBox *>(widgWeight); - std::vector< Gtk::Widget* > childList = scalarParameter->get_children(); - Gtk::Entry* entryWidg = dynamic_cast<Gtk::Entry *>(childList[1]); - entryWidg->set_text("defaultStartPower"); } -void LPEBSpline::toMakeCusp(Gtk::Widget *widgWeight) +void LPEBSpline::toMakeCusp() { - weight.param_set_value(noPower); changeWeight(noPower); - Gtk::HBox * scalarParameter = dynamic_cast<Gtk::HBox *>(widgWeight); - std::vector< Gtk::Widget* > childList = scalarParameter->get_children(); - Gtk::Entry* entryWidg = dynamic_cast<Gtk::Entry *>(childList[1]); - entryWidg->set_text("noPower"); } void LPEBSpline::toWeight() @@ -408,91 +369,34 @@ void LPEBSpline::toWeight() void LPEBSpline::changeWeight(double weightValue) { - SPDesktop *desktop = SP_ACTIVE_DESKTOP; - Inkscape::Selection *selection = sp_desktop_selection(desktop); - GSList *items = (GSList *)selection->itemList(); - SPItem *item = (SPItem *)g_slist_nth(items, 0)->data; - SPPath *path = SP_PATH(item); + SPPath *path = SP_PATH(sp_lpe_item); SPCurve *curve = path->get_curve_for_edit(); LPEBSpline::doBSplineFromWidget(curve, weightValue); gchar *str = sp_svg_write_path(curve->get_pathvector()); path->getRepr()->setAttribute("inkscape:original-d", str); - if (INK_IS_NODE_TOOL(desktop->event_context)) { - Inkscape::UI::Tools::NodeTool *nt = INK_NODE_TOOL(desktop->event_context); - nt->desktop->updateNow(); - } - g_free(str); - curve->unref(); - desktop->clearWaitingCursor(); - DocumentUndo::done(sp_desktop_document(desktop), SP_VERB_CONTEXT_LPE, - _("Modified the weight of the BSpline")); -} - -bool LPEBSpline::nodeIsSelected(Geom::Point nodePoint) -{ - using Geom::X; - using Geom::Y; - - if (points.size() > 0) { - for (std::vector<Geom::Point>::iterator i = points.begin(); - i != points.end(); ++i) { - Geom::Point p = *i; - if (Geom::are_near(p, nodePoint, handleCubicGap)) { - return true; - } else { - } - } - } - return false; } void LPEBSpline::doBSplineFromWidget(SPCurve *curve, double weightValue) { using Geom::X; using Geom::Y; - SPDesktop *desktop = SP_ACTIVE_DESKTOP; - if (INK_IS_NODE_TOOL(desktop->event_context)) { - Inkscape::UI::Tools::NodeTool *nt = INK_NODE_TOOL(desktop->event_context); - Inkscape::UI::ControlPointSelection::Set &selection = - nt->_selected_nodes->allPoints(); - points.clear(); - std::vector<Geom::Point>::iterator pbegin; - for (Inkscape::UI::ControlPointSelection::Set::iterator i = - selection.begin(); - i != selection.end(); ++i) { - if ((*i)->selected()) { - Inkscape::UI::Node *n = dynamic_cast<Inkscape::UI::Node *>(*i); - pbegin = points.begin(); - points.insert(pbegin, desktop->doc2dt(n->position())); - } - } - } - //bool hasNodesSelected = LPEBspline::hasNodesSelected(); + if (curve->get_segment_count() < 1) return; // Make copy of old path as it is changed during processing Geom::PathVector const original_pathv = curve->get_pathvector(); curve->reset(); - //Recorremos todos los paths a los que queremos aplicar el efecto, hasta el - //penúltimo for (Geom::PathVector::const_iterator path_it = original_pathv.begin(); path_it != original_pathv.end(); ++path_it) { - //Si está vacío... - if (path_it->empty()) + + if (path_it->empty()){ continue; - //Itreadores - - Geom::Path::const_iterator curve_it1 = path_it->begin(); // incoming curve - Geom::Path::const_iterator curve_it2 = - ++(path_it->begin()); // outgoing curve - Geom::Path::const_iterator curve_endit = - path_it->end_default(); // this determines when the loop has to stop - //Creamos las lineas rectas que unen todos los puntos del trazado y donde se - //calcularán - //los puntos clave para los manejadores. - //Esto hace que la curva BSpline no pierda su condición aunque se trasladen - //dichos manejadores + } + Geom::Path::const_iterator curve_it1 = path_it->begin(); + Geom::Path::const_iterator curve_it2 = ++(path_it->begin()); + Geom::Path::const_iterator curve_endit = path_it->end_default(); + SPCurve *nCurve = new SPCurve(); Geom::Point pointAt0(0, 0); Geom::Point pointAt1(0, 0); @@ -515,16 +419,8 @@ void LPEBSpline::doBSplineFromWidget(SPCurve *curve, double weightValue) curve_endit = path_it->end_open(); } } - //Si la curva está cerrada calculamos el punto donde - //deveria estar el nodo BSpline de cierre/inicio de la curva - //en posible caso de que se cierre con una linea recta creando un nodo - //BSPline nCurve->moveto(curve_it1->initialPoint()); - //Recorremos todos los segmentos menos el último while (curve_it1 != curve_endit) { - //previousPointAt3 = pointAt3; - //Calculamos los puntos que dividirían en tres segmentos iguales el path - //recto de entrada y de salida SPCurve *in = new SPCurve(); in->moveto(curve_it1->initialPoint()); in->lineto(curve_it1->finalPoint()); @@ -572,7 +468,7 @@ void LPEBSpline::doBSplineFromWidget(SPCurve *curve, double weightValue) } else { if (cubic) { if (!ignoreCusp || !Geom::are_near((*cubic)[1], pointAt0)) { - if (nodeIsSelected(pointAt0)) { + if (isNodePointSelected(pointAt0)) { pointAt1 = SBasisIn.valueAt(weightValue); if (weightValue != noPower) { pointAt1 = @@ -585,7 +481,7 @@ void LPEBSpline::doBSplineFromWidget(SPCurve *curve, double weightValue) pointAt1 = in->first_segment()->initialPoint(); } if (!ignoreCusp || !Geom::are_near((*cubic)[2], pointAt3)) { - if (nodeIsSelected(pointAt3)) { + if (isNodePointSelected(pointAt3)) { pointAt2 = SBasisIn.valueAt(1 - weightValue); if (weightValue != noPower) { pointAt2 = @@ -599,14 +495,14 @@ void LPEBSpline::doBSplineFromWidget(SPCurve *curve, double weightValue) } } else { if (!ignoreCusp && weightValue != noPower) { - if (nodeIsSelected(pointAt0)) { + if (isNodePointSelected(pointAt0)) { pointAt1 = SBasisIn.valueAt(weightValue); pointAt1 = Geom::Point(pointAt1[X] + handleCubicGap, pointAt1[Y] + handleCubicGap); } else { pointAt1 = in->first_segment()->initialPoint(); } - if (nodeIsSelected(pointAt3)) { + if (isNodePointSelected(pointAt3)) { pointAt2 = SBasisIn.valueAt(weightValue); pointAt2 = Geom::Point(pointAt2[X] + handleCubicGap, pointAt2[Y] + handleCubicGap); @@ -621,14 +517,7 @@ void LPEBSpline::doBSplineFromWidget(SPCurve *curve, double weightValue) } in->reset(); delete in; - //La curva BSpline se forma calculando el centro del segmanto de unión - //de el punto situado en las 2/3 partes de el segmento de entrada - //con el punto situado en la posición 1/3 del segmento de salida - //Estos dos puntos ademas estan posicionados en el lugas correspondiente - //de - //los manejadores de la curva nCurve->curveto(pointAt1, pointAt2, pointAt3); - //aumentamos los valores para el siguiente paso en el bucle ++curve_it1; ++curve_it2; } @@ -638,7 +527,6 @@ void LPEBSpline::doBSplineFromWidget(SPCurve *curve, double weightValue) } else { nCurve->move_endpoints(path_it->begin()->initialPoint(), pointAt3); } - //y cerramos la curva if (path_it->closed()) { nCurve->closepath_current(); } diff --git a/src/live_effects/lpe-bspline.h b/src/live_effects/lpe-bspline.h index 169658b94..8751a5720 100644 --- a/src/live_effects/lpe-bspline.h +++ b/src/live_effects/lpe-bspline.h @@ -26,20 +26,18 @@ public: virtual void doEffect(SPCurve *curve); virtual void doBeforeEffect (SPLPEItem const* lpeitem); void drawHandle(Geom::Point p, double radiusHelperNodes); - void addCanvasIndicators(SPLPEItem const */*lpeitem*/, std::vector<Geom::PathVector> &hp_vec); virtual void doBSplineFromWidget(SPCurve *curve, double value); - virtual bool nodeIsSelected(Geom::Point nodePoint); + void addCanvasIndicators(SPLPEItem const */*lpeitem*/, std::vector<Geom::PathVector> &hp_vec); virtual Gtk::Widget *newWidget(); virtual void changeWeight(double weightValue); - virtual void toDefaultWeight(Gtk::Widget *widgWeight); - virtual void toMakeCusp(Gtk::Widget *widgWeight); + virtual void toDefaultWeight(); + virtual void toMakeCusp(); virtual void toWeight(); // TODO make this private ScalarParam steps; private: - std::vector<Geom::Point> points; BoolParam ignoreCusp; BoolParam onlySelected; BoolParam showHelper; diff --git a/src/live_effects/lpe-fillet-chamfer.cpp b/src/live_effects/lpe-fillet-chamfer.cpp index a3964f553..c491ea858 100644 --- a/src/live_effects/lpe-fillet-chamfer.cpp +++ b/src/live_effects/lpe-fillet-chamfer.cpp @@ -28,12 +28,7 @@ #include "live_effects/parameter/filletchamferpointarray.h" // for programmatically updating knots -#include "selection.h" #include "ui/tools-switch.h" -#include "ui/tool/control-point-selection.h" -#include "ui/tool/selectable-control-point.h" -#include "ui/tool/node.h" -#include "ui/tools/node-tool.h" #include <util/units.h> // TODO due to internal breakage in glibmm headers, this must be last: @@ -65,12 +60,15 @@ LPEFilletChamfer::LPEFilletChamfer(LivePathEffectObject *lpeobject) : 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), + 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); registerParameter(&helper_size); registerParameter(&flexible); registerParameter(&use_knot_distance); @@ -81,9 +79,13 @@ LPEFilletChamfer::LPEFilletChamfer(LivePathEffectObject *lpeobject) : radius.param_set_range(0., infinity()); radius.param_set_increments(1, 1); radius.param_set_digits(4); + chamfer_steps.param_set_range(0, infinity()); + chamfer_steps.param_set_increments(1, 1); + chamfer_steps.param_set_digits(0); helper_size.param_set_range(0, infinity()); helper_size.param_set_increments(5, 5); helper_size.param_set_digits(0); + fillet_chamfer_values.set_chamfer_steps(3); } LPEFilletChamfer::~LPEFilletChamfer() {} @@ -112,6 +114,16 @@ Gtk::Widget *LPEFilletChamfer::newWidget() Gtk::Entry *entryWidg = dynamic_cast<Gtk::Entry *>(childList[1]); entryWidg->set_width_chars(6); } + } else if (param->param_key == "chamfer_steps") { + Inkscape::UI::Widget::Scalar *widgRegistered = Gtk::manage(dynamic_cast<Inkscape::UI::Widget::Scalar *>(widg)); + widgRegistered->signal_value_changed().connect(sigc::mem_fun(*this, &LPEFilletChamfer::chamfer)); + widg = widgRegistered; + if (widg) { + Gtk::HBox *scalarParameter = dynamic_cast<Gtk::HBox *>(widg); + std::vector<Gtk::Widget *> childList = scalarParameter->get_children(); + Gtk::Entry *entryWidg = dynamic_cast<Gtk::Entry *>(childList[1]); + entryWidg->set_width_chars(3); + } } else if (param->param_key == "flexible") { Gtk::CheckButton *widgRegistered = Gtk::manage(dynamic_cast<Gtk::CheckButton *>(widg)); widgRegistered->signal_clicked().connect(sigc::mem_fun(*this, &LPEFilletChamfer::toggleFlexFixed)); @@ -142,26 +154,20 @@ Gtk::Widget *LPEFilletChamfer::newWidget() ++it; } - Gtk::HBox *filletButtonsContainer = Gtk::manage(new Gtk::HBox(true, 0)); + Gtk::VBox *buttonsContainer = Gtk::manage(new Gtk::VBox(true, 0)); Gtk::Button *fillet = Gtk::manage(new Gtk::Button(Glib::ustring(_("Fillet")))); fillet->signal_clicked().connect(sigc::mem_fun(*this, &LPEFilletChamfer::fillet)); - filletButtonsContainer->pack_start(*fillet, true, true, 2); + buttonsContainer->pack_start(*fillet, true, true, 2); Gtk::Button *inverse = Gtk::manage(new Gtk::Button(Glib::ustring(_("Inverse fillet")))); inverse->signal_clicked().connect(sigc::mem_fun(*this, &LPEFilletChamfer::inverse)); - filletButtonsContainer->pack_start(*inverse, true, true, 2); + buttonsContainer->pack_start(*inverse, true, true, 2); - Gtk::HBox *chamferButtonsContainer = Gtk::manage(new Gtk::HBox(true, 0)); Gtk::Button *chamfer = Gtk::manage(new Gtk::Button(Glib::ustring(_("Chamfer")))); chamfer->signal_clicked().connect(sigc::mem_fun(*this, &LPEFilletChamfer::chamfer)); + buttonsContainer->pack_start(*chamfer, true, true, 2); - chamferButtonsContainer->pack_start(*chamfer, true, true, 2); - Gtk::Button *doubleChamfer = Gtk::manage(new Gtk::Button(Glib::ustring(_("Double chamfer")))); - doubleChamfer->signal_clicked().connect(sigc::mem_fun(*this, &LPEFilletChamfer::doubleChamfer)); - chamferButtonsContainer->pack_start(*doubleChamfer, true, true, 2); - - vbox->pack_start(*filletButtonsContainer, true, true, 2); - vbox->pack_start(*chamferButtonsContainer, true, true, 2); + vbox->pack_start(*buttonsContainer, true, true, 2); return vbox; } @@ -212,8 +218,7 @@ void LPEFilletChamfer::updateFillet() { double power = 0; if (!flexible) { - Inkscape::Util::Unit const *doc_units = SP_ACTIVE_DESKTOP->namedview->doc_units; - power = Inkscape::Util::Quantity::convert(radius, unit.get_abbreviation(), doc_units->abbr) * -1; + power = Inkscape::Util::Quantity::convert(radius, unit.get_abbreviation(), *defaultUnit) * -1; } else { power = radius; } @@ -235,14 +240,9 @@ void LPEFilletChamfer::inverse() void LPEFilletChamfer::chamfer() { + fillet_chamfer_values.set_chamfer_steps(chamfer_steps + 3); Piecewise<D2<SBasis> > const &pwd2 = fillet_chamfer_values.get_pwd2(); - doChangeType(path_from_piecewise(pwd2, tolerance), 3); -} - -void LPEFilletChamfer::doubleChamfer() -{ - Piecewise<D2<SBasis> > const &pwd2 = fillet_chamfer_values.get_pwd2(); - doChangeType(path_from_piecewise(pwd2, tolerance), 4); + doChangeType(path_from_piecewise(pwd2, tolerance), chamfer_steps + 3); } void LPEFilletChamfer::refreshKnots() @@ -256,35 +256,8 @@ void LPEFilletChamfer::refreshKnots() } } -bool LPEFilletChamfer::nodeIsSelected(Geom::Point nodePoint, std::vector<Geom::Point> point) -{ - if (point.size() > 0) { - for (std::vector<Geom::Point>::iterator i = point.begin(); i != point.end(); - ++i) { - Geom::Point p = *i; - if (Geom::are_near(p, nodePoint, 2)) { - return true; - } - } - } - return false; -} void LPEFilletChamfer::doUpdateFillet(std::vector<Geom::Path> const& original_pathv, double power) { - std::vector<Geom::Point> point; - SPDesktop *desktop = SP_ACTIVE_DESKTOP; - if (INK_IS_NODE_TOOL(desktop->event_context)) { - Inkscape::UI::Tools::NodeTool *nodeTool = INK_NODE_TOOL(desktop->event_context); - Inkscape::UI::ControlPointSelection::Set &selection = nodeTool->_selected_nodes->allPoints(); - std::vector<Geom::Point>::iterator pBegin; - for (Inkscape::UI::ControlPointSelection::Set::iterator i = selection.begin(); i != selection.end(); ++i) { - if ((*i)->selected()) { - Inkscape::UI::Node *n = dynamic_cast<Inkscape::UI::Node *>(*i); - pBegin = point.begin(); - point.insert(pBegin, desktop->doc2dt(n->position())); - } - } - } std::vector<Point> filletChamferData = fillet_chamfer_values.data(); std::vector<Geom::Point> result; std::vector<Geom::Path> original_pathv_processed = pathv_to_linear_and_cubic_beziers(original_pathv); @@ -319,7 +292,7 @@ void LPEFilletChamfer::doUpdateFillet(std::vector<Geom::Path> const& original_pa if (filletChamferData[counter][Y] == 0) { powerend = filletChamferData[counter][X]; } - if (only_selected && !nodeIsSelected(curve_it1->initialPoint(), point)) { + if (only_selected && !isNodePointSelected(curve_it1->initialPoint())) { powerend = filletChamferData[counter][X]; } result.push_back(Point(powerend, filletChamferData[counter][Y])); @@ -333,24 +306,6 @@ void LPEFilletChamfer::doUpdateFillet(std::vector<Geom::Path> const& original_pa void LPEFilletChamfer::doChangeType(std::vector<Geom::Path> const& original_pathv, int type) { - std::vector<Geom::Point> point; - SPDesktop *desktop = SP_ACTIVE_DESKTOP; - if (INK_IS_NODE_TOOL(desktop->event_context)) { - Inkscape::UI::Tools::NodeTool *nodeTool = - INK_NODE_TOOL(desktop->event_context); - Inkscape::UI::ControlPointSelection::Set &selection = - nodeTool->_selected_nodes->allPoints(); - std::vector<Geom::Point>::iterator pBegin; - for (Inkscape::UI::ControlPointSelection::Set::iterator i = - selection.begin(); - i != selection.end(); ++i) { - if ((*i)->selected()) { - Inkscape::UI::Node *n = dynamic_cast<Inkscape::UI::Node *>(*i); - pBegin = point.begin(); - point.insert(pBegin, desktop->doc2dt(n->position())); - } - } - } std::vector<Point> filletChamferData = fillet_chamfer_values.data(); std::vector<Geom::Point> result; std::vector<Geom::Path> original_pathv_processed = pathv_to_linear_and_cubic_beziers(original_pathv); @@ -373,9 +328,8 @@ void LPEFilletChamfer::doChangeType(std::vector<Geom::Path> const& original_path bool toggle = true; if (filletChamferData[counter][Y] == 0 || (ignore_radius_0 && (filletChamferData[counter][X] == 0 || - filletChamferData[counter][X] == counter)) || - (only_selected && - !nodeIsSelected(curve_it1->initialPoint(), point))) { + filletChamferData[counter][X] == counter)) || + (only_selected && !isNodePointSelected(curve_it1->initialPoint()))) { toggle = false; } if (toggle) { @@ -597,11 +551,19 @@ LPEFilletChamfer::doEffect_path(std::vector<Geom::Path> const &path_in) } else { type = std::abs(filletChamferData[counter + 1][Y]); } - if (type == 3 || type == 4) { - if (type == 4) { - Geom::Point central = middle_point(startArcPoint, endArcPoint); - LineSegment chamferCenter(central, curve_it1->finalPoint()); - path_out.appendNew<Geom::LineSegment>(chamferCenter.pointAt(0.5)); + if (type >= 3) { + unsigned int chamferSubs = type-2; + Geom::Path path_chamfer; + path_chamfer.start(path_out.finalPoint()); + if((is_straight_curve(*curve_it1) && is_straight_curve(*curve_it2Fixed) && method != FM_BEZIER )|| method == FM_ARC){ + path_chamfer.appendNew<SVGEllipticalArc>(rx, ry, angleArc, 0, ccwToggle, endArcPoint); + } else { + path_chamfer.appendNew<Geom::CubicBezier>(handle1, handle2, endArcPoint); + } + double chamfer_stepsTime = 1.0/chamferSubs; + for(unsigned int i = 1; i < chamferSubs; i++){ + Geom::Point chamferStep = path_chamfer.pointAt(chamfer_stepsTime * i); + path_out.appendNew<Geom::LineSegment>(chamferStep); } path_out.appendNew<Geom::LineSegment>(endArcPoint); } else if (type == 2) { diff --git a/src/live_effects/lpe-fillet-chamfer.h b/src/live_effects/lpe-fillet-chamfer.h index 873684101..e3589197c 100644 --- a/src/live_effects/lpe-fillet-chamfer.h +++ b/src/live_effects/lpe-fillet-chamfer.h @@ -57,12 +57,10 @@ public: void toggleFlexFixed(); void chamfer(); void fillet(); - void doubleChamfer(); void inverse(); void updateFillet(); void doUpdateFillet(std::vector<Geom::Path> const& original_pathv, double power); void doChangeType(std::vector<Geom::Path> const& original_pathv, int type); - bool nodeIsSelected(Geom::Point nodePoint, std::vector<Geom::Point> points); void refreshKnots(); FilletChamferPointArrayParam fillet_chamfer_values; @@ -77,6 +75,7 @@ private: UnitParam unit; EnumParam<FilletMethod> method; ScalarParam radius; + ScalarParam chamfer_steps; ScalarParam helper_size; LPEFilletChamfer(const LPEFilletChamfer &); diff --git a/src/live_effects/lpe-lattice2.cpp b/src/live_effects/lpe-lattice2.cpp index 7036b0cfa..e1cd91340 100644 --- a/src/live_effects/lpe-lattice2.cpp +++ b/src/live_effects/lpe-lattice2.cpp @@ -394,7 +394,7 @@ LPELattice2::resetGrid() grid_point32x33x34x35.param_set_and_write_default(); //todo:this hack is only to reposition the knots on reser grid button //Better update path effect in LPEITEM - SPDesktop * desktop = INKSCAPE.active_desktop(); + SPDesktop * desktop = SP_ACTIVE_DESKTOP; tools_switch(desktop, TOOLS_SELECT); tools_switch(desktop, TOOLS_NODES); } diff --git a/src/live_effects/lpe-perspective-envelope.cpp b/src/live_effects/lpe-perspective-envelope.cpp index c070cf17b..b5ef26e2f 100644 --- a/src/live_effects/lpe-perspective-envelope.cpp +++ b/src/live_effects/lpe-perspective-envelope.cpp @@ -193,8 +193,8 @@ LPEPerspectiveEnvelope::project_point(Geom::Point p){ double height = boundingbox_Y.extent(); double delta_x = boundingbox_X.min() - p[X]; double delta_y = boundingbox_Y.max() - p[Y]; - Geom::Coord xratio = (delta_x * sgn(delta_x)) / width; - Geom::Coord yratio = (delta_y * sgn(delta_y)) / height; + Geom::Coord xratio = (delta_x * -1) / width; + Geom::Coord yratio = delta_y / height; Geom::Line* horiz = new Geom::Line(); Geom::Line* vert = new Geom::Line(); vert->setPoints (pointAtRatio(yratio,Down_Left_Point,Up_Left_Point),pointAtRatio(yratio,Down_Right_Point,Up_Right_Point)); @@ -337,7 +337,7 @@ LPEPerspectiveEnvelope::resetGrid() Down_Left_Point.param_set_and_write_default(); //todo:this hack is only to reposition the knots on reser grid button //Better update path effect in LPEITEM - SPDesktop * desktop = INKSCAPE.active_desktop(); + SPDesktop * desktop = SP_ACTIVE_DESKTOP; tools_switch(desktop, TOOLS_SELECT); tools_switch(desktop, TOOLS_NODES); } diff --git a/src/live_effects/lpe-powerstroke.cpp b/src/live_effects/lpe-powerstroke.cpp index 03a10807a..f7fe9592d 100644 --- a/src/live_effects/lpe-powerstroke.cpp +++ b/src/live_effects/lpe-powerstroke.cpp @@ -277,7 +277,7 @@ LPEPowerStroke::doOnApply(SPLPEItem const* lpeitem) double width = (lpeitem && lpeitem->style) ? lpeitem->style->stroke_width.computed / 2 : 1.; SPCSSAttr *css = sp_repr_css_attr_new (); - if (true) { + if (lpeitem->style) { if (lpeitem->style->stroke.isPaintserver()) { SPPaintServer * server = lpeitem->style->getStrokePaintServer(); if (server) { diff --git a/src/live_effects/lpe-roughen.cpp b/src/live_effects/lpe-roughen.cpp index ffd5433bf..07d9e63e8 100644 --- a/src/live_effects/lpe-roughen.cpp +++ b/src/live_effects/lpe-roughen.cpp @@ -14,12 +14,13 @@ */ #include <gtkmm.h> - +#include "desktop.h" #include "live_effects/lpe-roughen.h" #include "display/curve.h" #include "live_effects/parameter/parameter.h" #include "helper/geom.h" #include <glibmm/i18n.h> +#include <util/units.h> #include <cmath> namespace Inkscape { @@ -46,6 +47,8 @@ LPERoughen::LPERoughen(LivePathEffectObject *lpeobject) "displaceX", &wr, this, 10.), displaceY(_("Max. displacement in Y"), _("Max. displacement in Y"), "displaceY", &wr, this, 10.), + globalRandomize(_("Global randomize"), _("Global randomize"), + "globalRandomize", &wr, this, 1.), shiftNodes(_("Shift nodes"), _("Shift nodes"), "shiftNodes", &wr, this, true), shiftNodeHandles(_("Shift node handles"), _("Shift node handles"), @@ -57,10 +60,12 @@ LPERoughen::LPERoughen(LivePathEffectObject *lpeobject) registerParameter(&segments); registerParameter(&displaceX); registerParameter(&displaceY); + registerParameter(&globalRandomize); registerParameter(&shiftNodes); registerParameter(&shiftNodeHandles); displaceX.param_set_range(0., Geom::infinity()); displaceY.param_set_range(0., Geom::infinity()); + globalRandomize.param_set_range(0., Geom::infinity()); maxSegmentSize.param_set_range(0., Geom::infinity()); maxSegmentSize.param_set_increments(1, 1); maxSegmentSize.param_set_digits(1); @@ -75,6 +80,7 @@ void LPERoughen::doBeforeEffect(SPLPEItem const *lpeitem) { displaceX.resetRandomizer(); displaceY.resetRandomizer(); + globalRandomize.resetRandomizer(); srand(1); SPLPEItem * item = const_cast<SPLPEItem*>(lpeitem); item->apply_to_clippath(item); @@ -118,6 +124,15 @@ Gtk::Widget *LPERoughen::newWidget() vbox->pack_start(*Gtk::manage(new Gtk::HSeparator()), Gtk::PACK_EXPAND_WIDGET); } + if (param->param_key == "globalRandomize") { + Gtk::Label *displaceXLabel = Gtk::manage(new Gtk::Label( + Glib::ustring(_("<b>Extra roughen</b> Add a extra layer of rough")), + Gtk::ALIGN_START)); + displaceXLabel->set_use_markup(true); + vbox->pack_start(*displaceXLabel, false, false, 2); + vbox->pack_start(*Gtk::manage(new Gtk::HSeparator()), + Gtk::PACK_EXPAND_WIDGET); + } Glib::ustring *tip = param->param_getTooltip(); if (widg) { vbox->pack_start(*widg, true, true, 2); @@ -145,10 +160,11 @@ double LPERoughen::sign(double randNumber) Geom::Point LPERoughen::randomize() { + Inkscape::Util::Unit const *doc_units = SP_ACTIVE_DESKTOP->namedview->doc_units; double displaceXParsed = Inkscape::Util::Quantity::convert( - displaceX, unit.get_abbreviation(), "px"); + displaceX * globalRandomize, unit.get_abbreviation(), doc_units->abbr); double displaceYParsed = Inkscape::Util::Quantity::convert( - displaceY, unit.get_abbreviation(), "px"); + displaceY * globalRandomize, unit.get_abbreviation(), doc_units->abbr); Geom::Point output = Geom::Point(sign(displaceXParsed), sign(displaceYParsed)); return output; @@ -159,6 +175,7 @@ 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 *doc_units = SP_ACTIVE_DESKTOP->namedview->doc_units; for (Geom::PathVector::const_iterator path_it = original_pathv.begin(); path_it != original_pathv.end(); ++path_it) { if (path_it->empty()) @@ -185,6 +202,7 @@ void LPERoughen::doEffect(SPCurve *curve) Geom::Point A1(0, 0); Geom::Point A2(0, 0); Geom::Point A3(0, 0); + bool first = true; while (curve_it1 != curve_endit) { Geom::CubicBezier const *cubic = NULL; A0 = curve_it1->initialPoint(); @@ -194,7 +212,7 @@ void LPERoughen::doEffect(SPCurve *curve) cubic = dynamic_cast<Geom::CubicBezier const *>(&*curve_it1); if (cubic) { A1 = (*cubic)[1]; - if (shiftNodes) { + if (shiftNodes && first) { A1 = (*cubic)[1] + initialMove; } A2 = (*cubic)[2]; @@ -203,7 +221,7 @@ void LPERoughen::doEffect(SPCurve *curve) nCurve->lineto(A3); } double length = Inkscape::Util::Quantity::convert( - curve_it1->length(0.001), "px", unit.get_abbreviation()); + curve_it1->length(0.001), doc_units->abbr, unit.get_abbreviation()); std::size_t splits = 0; if (method == DM_SEGMENTS) { splits = segments; @@ -232,6 +250,7 @@ void LPERoughen::doEffect(SPCurve *curve) if(curve_it2 != curve_endit) { ++curve_it2; } + first = false; } if (path_it->closed()) { nCurve->closepath_current(); diff --git a/src/live_effects/lpe-roughen.h b/src/live_effects/lpe-roughen.h index d5ec726bd..74331f1ef 100644 --- a/src/live_effects/lpe-roughen.h +++ b/src/live_effects/lpe-roughen.h @@ -51,8 +51,10 @@ private: ScalarParam segments; RandomParam displaceX; RandomParam displaceY; + RandomParam globalRandomize; BoolParam shiftNodes; BoolParam shiftNodeHandles; + LPERoughen(const LPERoughen &); LPERoughen &operator=(const LPERoughen &); diff --git a/src/live_effects/lpe-simplify.cpp b/src/live_effects/lpe-simplify.cpp index c191fbbe6..2b2efb1a9 100644 --- a/src/live_effects/lpe-simplify.cpp +++ b/src/live_effects/lpe-simplify.cpp @@ -157,8 +157,8 @@ LPESimplify::doEffect(SPCurve *curve) { Geom::PathVector outres = Geom::parse_svg_path(pathliv->svg_dump_path()); generateHelperPath(outres); curve->set_pathvector(outres); - if(SP_ACTIVE_DESKTOP && INK_IS_NODE_TOOL(SP_ACTIVE_DESKTOP->event_context)){ - SPDesktop* desktop = SP_ACTIVE_DESKTOP; + SPDesktop* desktop = SP_ACTIVE_DESKTOP; + if(desktop && INK_IS_NODE_TOOL(desktop->event_context)){ Inkscape::UI::Tools::NodeTool *nt = static_cast<Inkscape::UI::Tools::NodeTool*>(desktop->event_context); nt->update_helperpath(); } diff --git a/src/live_effects/parameter/filletchamferpointarray.cpp b/src/live_effects/parameter/filletchamferpointarray.cpp index db24a9735..31d996ad0 100644 --- a/src/live_effects/parameter/filletchamferpointarray.cpp +++ b/src/live_effects/parameter/filletchamferpointarray.cpp @@ -359,6 +359,11 @@ void FilletChamferPointArrayParam::set_helper_size(int hs) helper_size = hs; } +void FilletChamferPointArrayParam::set_chamfer_steps(int value_chamfer_steps) +{ + chamfer_steps = value_chamfer_steps; +} + void FilletChamferPointArrayParam::set_use_distance(bool use_knot_distance ) { use_distance = use_knot_distance; @@ -712,8 +717,8 @@ FilletChamferPointArrayParamKnotHolderEntity( : _pparam(p), _index(index) {} void FilletChamferPointArrayParamKnotHolderEntity::knot_set(Point const &p, - Point const &origin, - guint state) + Point const &/*origin*/, + guint /*state*/) { using namespace Geom; @@ -766,15 +771,24 @@ void FilletChamferPointArrayParamKnotHolderEntity::knot_click(guint state) sp_lpe_item_update_patheffect(SP_LPE_ITEM(item), false, false); }else{ using namespace Geom; - double type = _pparam->_vector.at(_index)[Y] + 1; - if (type > 4) { - type = 1; + int type = (int)_pparam->_vector.at(_index)[Y]; + + switch(type){ + case 1: + type = 2; + break; + case 2: + type = _pparam->chamfer_steps; + break; + default: + type = 1; + break; } - _pparam->_vector.at(_index) = Point(_pparam->_vector.at(_index)[X], type); + _pparam->_vector.at(_index) = Point(_pparam->_vector.at(_index)[X], (double)type); _pparam->param_set_and_write_new_value(_pparam->_vector); sp_lpe_item_update_patheffect(SP_LPE_ITEM(item), false, false); const gchar *tip; - if (type == 3) { + if (type >= 3) { tip = _("<b>Chamfer</b>: <b>Ctrl+Click</b> toogle type, " "<b>Shift+Click</b> open dialog, " "<b>Ctrl+Alt+Click</b> reset"); @@ -782,12 +796,8 @@ void FilletChamferPointArrayParamKnotHolderEntity::knot_click(guint state) tip = _("<b>Inverse Fillet</b>: <b>Ctrl+Click</b> toogle type, " "<b>Shift+Click</b> open dialog, " "<b>Ctrl+Alt+Click</b> reset"); - } else if (type == 1) { - tip = _("<b>Fillet</b>: <b>Ctrl+Click</b> toogle type, " - "<b>Shift+Click</b> open dialog, " - "<b>Ctrl+Alt+Click</b> reset"); } else { - tip = _("<b>Double Chamfer</b>: <b>Ctrl+Click</b> toogle type, " + tip = _("<b>Fillet</b>: <b>Ctrl+Click</b> toogle type, " "<b>Shift+Click</b> open dialog, " "<b>Ctrl+Alt+Click</b> reset"); } @@ -835,7 +845,7 @@ void FilletChamferPointArrayParam::addKnotHolderEntities(KnotHolder *knotholder, continue; } const gchar *tip; - if (_vector[i][Y] == 3) { + if (_vector[i][Y] >= 3) { tip = _("<b>Chamfer</b>: <b>Ctrl+Click</b> toogle type, " "<b>Shift+Click</b> open dialog, " "<b>Ctrl+Alt+Click</b> reset"); @@ -843,12 +853,8 @@ void FilletChamferPointArrayParam::addKnotHolderEntities(KnotHolder *knotholder, tip = _("<b>Inverse Fillet</b>: <b>Ctrl+Click</b> toogle type, " "<b>Shift+Click</b> open dialog, " "<b>Ctrl+Alt+Click</b> reset"); - } else if (_vector[i][Y] == 1) { - tip = _("<b>Fillet</b>: <b>Ctrl+Click</b> toogle type, " - "<b>Shift+Click</b> open dialog, " - "<b>Ctrl+Alt+Click</b> reset"); } else { - tip = _("<b>Double Chamfer</b>: <b>Ctrl+Click</b> toogle type, " + tip = _("<b>Fillet</b>: <b>Ctrl+Click</b> toogle type, " "<b>Shift+Click</b> open dialog, " "<b>Ctrl+Alt+Click</b> reset"); } diff --git a/src/live_effects/parameter/filletchamferpointarray.h b/src/live_effects/parameter/filletchamferpointarray.h index a1fa698ae..1dd31d6d4 100644 --- a/src/live_effects/parameter/filletchamferpointarray.h +++ b/src/live_effects/parameter/filletchamferpointarray.h @@ -52,6 +52,7 @@ public: std::vector<double> get_times(int index, std::vector<Geom::Path> subpaths, bool last); 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_unit(const gchar *abbr); virtual void addCanvasIndicators(SPLPEItem const *lpeitem, std::vector<Geom::PathVector> &hp_vec); @@ -85,6 +86,7 @@ private: SPKnotModeType knot_mode; guint32 knot_color; int helper_size; + int chamfer_steps; bool use_distance; const gchar *unit; Geom::PathVector hp; diff --git a/src/live_effects/parameter/parameter.cpp b/src/live_effects/parameter/parameter.cpp index 7a2fd9769..beb750404 100644 --- a/src/live_effects/parameter/parameter.cpp +++ b/src/live_effects/parameter/parameter.cpp @@ -47,7 +47,7 @@ Parameter::param_write_to_repr(const char * svgd) // in gtk3, it is an issue: it allocates widget size for the maxmium // value you pass to it, leading to some insane lengths. // If you need this to be more, please be conservative about it. -const double SCALARPARAM_G_MAXDOUBLE = 10000000000; +const double SCALARPARAM_G_MAXDOUBLE = 10000000000.0; // TODO fixme: using an arbitrary large number as a magic value seems fragile. void Parameter::write_to_SVG(void) { diff --git a/src/main.cpp b/src/main.cpp index a60ed1f25..06c0d4873 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -322,7 +322,7 @@ struct poptOption options[] = { {"export-dpi", 'd', POPT_ARG_STRING, &sp_export_dpi, SP_ARG_EXPORT_DPI, - N_("Resolution for exporting to bitmap and for rasterization of filters in PS/EPS/PDF (default 90)"), + N_("Resolution for exporting to bitmap and for rasterization of filters in PS/EPS/PDF (default 96)"), N_("DPI")}, {"export-area", 'a', @@ -1738,12 +1738,12 @@ static int do_export_ps_pdf(SPDocument* doc, gchar const* uri, char const* mime) } else { (*i)->set_param_bool("blurToBitmap", TRUE); - gdouble dpi = 90.0; + gdouble dpi = 96.0; if (sp_export_dpi) { dpi = atof(sp_export_dpi); if ((dpi < 1) || (dpi > 10000.0)) { - g_warning("DPI value %s out of range [1 - 10000]. Using 90 dpi instead.", sp_export_dpi); - dpi = 90; + g_warning("DPI value %s out of range [1 - 10000]. Using 96 dpi instead.", sp_export_dpi); + dpi = 96; } } diff --git a/src/selection-chemistry.cpp b/src/selection-chemistry.cpp index c81646d6c..b4f7ebdd7 100644 --- a/src/selection-chemistry.cpp +++ b/src/selection-chemistry.cpp @@ -1198,6 +1198,9 @@ take_style_from_item(SPObject *object) } } + // Remove black-listed properties (those that should not be used in a default style) + css = sp_css_attr_unset_blacklist(css); + if (!(dynamic_cast<SPText *>(object) || dynamic_cast<SPTSpan *>(object) || dynamic_cast<SPTRef *>(object) || dynamic_cast<SPString *>(object))) { // do not copy text properties from non-text objects, it's confusing css = sp_css_attr_unset_text(css); @@ -3661,7 +3664,7 @@ void sp_selection_create_bitmap_copy(SPDesktop *desktop) if (hint_xdpi != 0) { res = hint_xdpi; } else { - // if all else fails, take the default 90 dpi + // if all else fails, take the default 96 dpi res = Inkscape::Util::Quantity::convert(1, "in", "px"); } } @@ -3709,7 +3712,7 @@ void sp_selection_create_bitmap_copy(SPDesktop *desktop) double shift_x = bbox->min()[Geom::X]; double shift_y = bbox->max()[Geom::Y]; - if (res == Inkscape::Util::Quantity::convert(1, "in", "px")) { // for default 90 dpi, snap it to pixel grid + if (res == Inkscape::Util::Quantity::convert(1, "in", "px")) { // for default 96 dpi, snap it to pixel grid shift_x = round(shift_x); shift_y = -round(-shift_y); // this gets correct rounding despite coordinate inversion, remove the negations when the inversion is gone } @@ -3744,7 +3747,7 @@ void sp_selection_create_bitmap_copy(SPDesktop *desktop) // TODO: avoid unnecessary roundtrip between data URI and decoded pixbuf Inkscape::XML::Node * repr = xml_doc->createElement("svg:image"); sp_embed_image(repr, pb); - if (res == Inkscape::Util::Quantity::convert(1, "in", "px")) { // for default 90 dpi, snap it to pixel grid + if (res == Inkscape::Util::Quantity::convert(1, "in", "px")) { // for default 96 dpi, snap it to pixel grid sp_repr_set_svg_double(repr, "width", width); sp_repr_set_svg_double(repr, "height", height); } else { diff --git a/src/sp-filter.cpp b/src/sp-filter.cpp index 9a184952c..9cb33a6f3 100644 --- a/src/sp-filter.cpp +++ b/src/sp-filter.cpp @@ -465,6 +465,10 @@ int sp_filter_set_image_name(SPFilter *filter, gchar const *name) { pair<gchar*,int> new_pair(name_copy, value); pair<map<gchar*,int,ltstr>::iterator,bool> ret = filter->_image_name->insert(new_pair); if (ret.second == false) { + // The element is not inserted (because an element with the same key was already in the map) + // Therefore, free the memory allocated for the new entry: + free(name_copy); + return (*ret.first).second; } return value; diff --git a/src/sp-item.cpp b/src/sp-item.cpp index 94ab1b181..2fa36f834 100644 --- a/src/sp-item.cpp +++ b/src/sp-item.cpp @@ -1,6 +1,3 @@ -/** \file - * Base class for visual SVG elements - */ /* * Authors: * Lauris Kaplinski <lauris@kaplinski.com> @@ -15,12 +12,6 @@ * Released under GNU GPL, read the file 'COPYING' for more information */ -/** \class SPItem - * - * SPItem is an abstract base class for all graphic (visible) SVG nodes. It - * is a subclass of SPObject, with great deal of specific functionality. - */ - #ifdef HAVE_CONFIG_H # include "config.h" #endif @@ -232,20 +223,12 @@ bool SPItem::isEvaluated() const { return _is_evaluated; } -/** - * Returns something suitable for the `Hide' checkbox in the Object Properties dialog box. - * Corresponds to setExplicitlyHidden. - */ bool SPItem::isExplicitlyHidden() const { return (style->display.set && style->display.value == SP_CSS_DISPLAY_NONE); } -/** - * Sets the display CSS property to `hidden' if \a val is true, - * otherwise makes it unset - */ void SPItem::setExplicitlyHidden(bool val) { style->display.set = val; style->display.value = ( val ? SP_CSS_DISPLAY_NONE : SP_CSS_DISPLAY_INLINE ); @@ -253,9 +236,6 @@ void SPItem::setExplicitlyHidden(bool val) { updateRepr(); } -/** - * Sets the transform_center_x and transform_center_y properties to retain the rotation center -*/ void SPItem::setCenter(Geom::Point const &object_centre) { document->ensureUpToDate(); @@ -389,11 +369,6 @@ void SPItem::lowerToBottom() { } } -/* - * Move this SPItem into or after another SPItem in the doc - * \param target - the SPItem to move into or after - * \param intoafter - move to after the target (false), move inside (sublayer) of the target (true) - */ void SPItem::moveTo(SPItem *target, bool intoafter) { Inkscape::XML::Node *target_ref = ( target ? target->getRepr() : NULL ); @@ -826,11 +801,7 @@ Geom::OptRect SPItem::bbox(Geom::Affine const & /*transform*/, SPItem::BBoxType //throw; return Geom::OptRect(); } -/** - * Get item's geometric bounding box in this item's coordinate system. - * - * The geometric bounding box includes only the path, disregarding all style attributes. - */ + Geom::OptRect SPItem::geometricBounds(Geom::Affine const &transform) const { Geom::OptRect bbox; @@ -843,11 +814,6 @@ Geom::OptRect SPItem::geometricBounds(Geom::Affine const &transform) const return bbox; } -/** - * Get item's visual bounding box in this item's coordinate system. - * - * The visual bounding box includes the stroke and the filter region. - */ Geom::OptRect SPItem::visualBounds(Geom::Affine const &transform) const { using Geom::X; @@ -924,14 +890,11 @@ Geom::OptRect SPItem::bounds(BBoxType type, Geom::Affine const &transform) const } } -/** Get item's geometric bbox in document coordinate system. - * Document coordinates are the default coordinates of the root element: - * the origin is at the top left, X grows to the right and Y grows downwards. */ Geom::OptRect SPItem::documentGeometricBounds() const { return geometricBounds(i2doc_affine()); } -/// Get item's visual bbox in document coordinate system. + Geom::OptRect SPItem::documentVisualBounds() const { if (!bbox_valid) { @@ -948,14 +911,12 @@ Geom::OptRect SPItem::documentBounds(BBoxType type) const return documentVisualBounds(); } } -/** Get item's geometric bbox in desktop coordinate system. - * Desktop coordinates should be user defined. Currently they are hardcoded: - * origin is at bottom left, X grows to the right and Y grows upwards. */ + Geom::OptRect SPItem::desktopGeometricBounds() const { return geometricBounds(i2dt_affine()); } -/// Get item's visual bbox in desktop coordinate system. + Geom::OptRect SPItem::desktopVisualBounds() const { /// @fixme hardcoded desktop transform @@ -1079,11 +1040,6 @@ gchar* SPItem::description() const { return g_strdup(""); } -/** - * Returns a string suitable for status bar, formatted in pango markup language. - * - * Must be freed by caller. - */ gchar *SPItem::detailedDescription() const { gchar* s = g_strdup_printf("<b>%s</b> %s", this->displayName(), this->description()); @@ -1117,20 +1073,10 @@ gchar *SPItem::detailedDescription() const { return s; } -/** - * Returns true if the item is filtered, false otherwise. Used with groups/lists to determine how many, or if any, are filtered - * - */ bool SPItem::isFiltered() const { return (style && style->filter.href && style->filter.href->getObject()); } -/** - * Allocates unique integer keys. - * \param numkeys Number of keys required. - * \return First allocated key; hence if the returned key is n - * you can use n, n + 1, ..., n + (numkeys - 1) - */ unsigned SPItem::display_key_new(unsigned numkeys) { static unsigned dkey = 0; @@ -1367,9 +1313,6 @@ static Geom::Affine sp_item_transform_repr (SPItem *item) } -/** - * Recursively scale stroke width in \a item and its children by \a expansion. - */ void SPItem::adjust_stroke_width_recursive(double expansion) { adjust_stroke (expansion); @@ -1414,9 +1357,6 @@ sp_item_adjust_rects_recursive(SPItem *item, Geom::Affine advertized_transform) } } -/** - * Recursively compensate pattern or gradient transform. - */ void SPItem::adjust_paint_recursive (Geom::Affine advertized_transform, Geom::Affine t_ancestors, bool is_pattern) { // _Before_ full pattern/gradient transform: t_paint * t_item * t_ancestors @@ -1478,14 +1418,6 @@ Geom::Affine SPItem::set_transform(Geom::Affine const &transform) { return transform; } -/** - * Set a new transform on an object. - * - * Compensate for stroke scaling and gradient/pattern fill transform, if - * necessary. Call the object's set_transform method if transforms are - * stored optimized. Send _transformed_signal. Invoke _write method so that - * the repr is updated with the new transform. - */ void SPItem::doWriteTransform(Inkscape::XML::Node *repr, Geom::Affine const &transform, Geom::Affine const *adv, bool compensate) { g_return_if_fail(repr != NULL); @@ -1597,10 +1529,6 @@ gint SPItem::emitEvent(SPEvent &event) return this->event(&event); } -/** - * Sets item private transform (not propagated to repr), without compensating stroke widths, - * gradients, patterns as sp_item_write_transform does. - */ void SPItem::set_item_transform(Geom::Affine const &transform_matrix) { if (!Geom::are_near(transform_matrix, transform, 1e-18)) { @@ -1618,12 +1546,7 @@ void SPItem::set_item_transform(Geom::Affine const &transform_matrix) //} -/** - * \pre \a ancestor really is an ancestor (\>=) of \a object, or NULL. - * ("Ancestor (\>=)" here includes as far as \a object itself.) - */ -Geom::Affine -i2anc_affine(SPObject const *object, SPObject const *const ancestor) { +Geom::Affine i2anc_affine(SPObject const *object, SPObject const *const ancestor) { Geom::Affine ret(Geom::identity()); g_return_val_if_fail(object != NULL, ret); @@ -1650,18 +1573,11 @@ Geom::Affine SPItem::getRelativeTransform(SPObject const *dest) const { return i2i_affine(this, dest); } -/** - * Returns the accumulated transformation of the item and all its ancestors, including root's viewport. - * \pre (item != NULL) and SP_IS_ITEM(item). - */ Geom::Affine SPItem::i2doc_affine() const { return i2anc_affine(this, NULL); } -/** - * Returns the transformation from item to desktop coords - */ Geom::Affine SPItem::i2dt_affine() const { Geom::Affine ret; @@ -1692,9 +1608,6 @@ void SPItem::set_i2d_affine(Geom::Affine const &i2dt) } -/** - * should rather be named "sp_item_d2i_affine" to match "sp_item_i2d_affine" (or vice versa) - */ Geom::Affine SPItem::dt2i_affine() const { /* fixme: Implement the right way (Lauris) */ @@ -1738,10 +1651,6 @@ sp_item_view_list_remove(SPItemView *list, SPItemView *view) return ret; } -/** - * Return the arenaitem corresponding to the given item in the display - * with the given key - */ Inkscape::DrawingItem *SPItem::get_arenaitem(unsigned key) { for ( SPItemView *iv = display ; iv ; iv = iv->next ) { diff --git a/src/sp-item.h b/src/sp-item.h index 1656a0c2b..b9d71c551 100644 --- a/src/sp-item.h +++ b/src/sp-item.h @@ -1,7 +1,8 @@ #ifndef SEEN_SP_ITEM_H #define SEEN_SP_ITEM_H -/** \file +/** + * @file * Some things pertinent to all visible shapes: SPItem, SPItemView, SPItemCtx, SPItemClass, SPEvent. */ @@ -65,7 +66,7 @@ enum PatternTransform { /** * Event structure. * - * \todo This is just placeholder. Plan: + * @todo This is just placeholder. Plan: * We do extensible event structure, that hold applicable (ui, non-ui) * data pointers. So it is up to given object/arena implementation * to process correct ones in meaningful way. @@ -78,7 +79,6 @@ public: void* data; }; -/// SPItemView class SPItemView { public: SPItemView *next; @@ -95,17 +95,21 @@ public: /** * Flag for referenced views (i.e. markers, clippaths, masks and patterns); - currently unused, does the same as DISPLAY + * currently unused, does the same as DISPLAY */ #define SP_ITEM_REFERENCE_FLAGS (1 << 1) -/// Contains transformations to document/viewport and the viewport size. +/** + * Contains transformations to document/viewport and the viewport size. + */ class SPItemCtx : public SPCtx { public: /** Item to document transformation */ Geom::Affine i2doc; + /** Viewport size */ Geom::Rect viewport; + /** Item to viewport transformation */ Geom::Affine i2vp; }; @@ -113,7 +117,11 @@ public: #define SP_ITEM(obj) (dynamic_cast<SPItem*>((SPObject*)obj)) #define SP_IS_ITEM(obj) (dynamic_cast<const SPItem*>((SPObject*)obj) != NULL) -/** Abstract base class for all visible shapes. */ +/** + * Base class for visual SVG elements. + * SPItem is an abstract base class for all graphic (visible) SVG nodes. It + * is a subclass of SPObject, with great deal of specific functionality. + */ class SPItem : public SPObject { public: enum BBoxType { @@ -156,7 +164,7 @@ public: bool isHidden() const; void setHidden(bool hidden); - /* Objects dialogue */ + // Objects dialogue bool isSensitive() const { return sensitive; }; @@ -167,7 +175,7 @@ public: void setHighlightColor(guint32 color); void unsetHighlightColor(); - /********************/ + //==================== bool isEvaluated() const; void setEvaluated(bool visible); @@ -175,11 +183,23 @@ public: bool isHidden(unsigned display_key) const; + /** + * Returns something suitable for the `Hide' checkbox in the Object Properties dialog box. + * Corresponds to setExplicitlyHidden. + */ bool isExplicitlyHidden() const; + /** + * Sets the display CSS property to `hidden' if \a val is true, + * otherwise makes it unset. + */ void setExplicitlyHidden(bool val); + /** + * Sets the transform_center_x and transform_center_y properties to retain the rotation center + */ void setCenter(Geom::Point const &object_centre); + void unsetCenter(); bool isCenterSet() const; Geom::Point getCenter() const; @@ -195,52 +215,155 @@ public: void lowerOne(); void raiseToTop(); void lowerToBottom(); + + /** + * Move this SPItem into or after another SPItem in the doc. + * + * @param target the SPItem to move into or after. + * @param intoafter move to after the target (false), move inside (sublayer) of the target (true). + */ void moveTo(SPItem *target, bool intoafter); sigc::connection connectTransformed(sigc::slot<void, Geom::Affine const *, SPItem *> slot) { return _transformed_signal.connect(slot); } + /** + * Get item's geometric bounding box in this item's coordinate system. + * + * The geometric bounding box includes only the path, disregarding all style attributes. + */ Geom::OptRect geometricBounds(Geom::Affine const &transform = Geom::identity()) const; + + /** + * Get item's visual bounding box in this item's coordinate system. + * + * The visual bounding box includes the stroke and the filter region. + */ Geom::OptRect visualBounds(Geom::Affine const &transform = Geom::identity()) const; + Geom::OptRect bounds(BBoxType type, Geom::Affine const &transform = Geom::identity()) const; + + /** + * Get item's geometric bbox in document coordinate system. + * Document coordinates are the default coordinates of the root element: + * the origin is at the top left, X grows to the right and Y grows downwards. + */ Geom::OptRect documentGeometricBounds() const; + + /** + * Get item's visual bbox in document coordinate system. + */ Geom::OptRect documentVisualBounds() const; + Geom::OptRect documentBounds(BBoxType type) const; + + /** + * Get item's geometric bbox in desktop coordinate system. + * Desktop coordinates should be user defined. Currently they are hardcoded: + * origin is at bottom left, X grows to the right and Y grows upwards. + */ Geom::OptRect desktopGeometricBounds() const; + + /** + * Get item's visual bbox in desktop coordinate system. + */ Geom::OptRect desktopVisualBounds() const; + Geom::OptRect desktopPreferredBounds() const; Geom::OptRect desktopBounds(BBoxType type) const; unsigned int pos_in_parent() const; + /** + * Returns a string suitable for status bar, formatted in pango markup language. + * + * Must be freed by caller. + */ char *detailedDescription() const; + /** + * Returns true if the item is filtered, false otherwise. + * Used with groups/lists to determine how many, or if any, are filtered. + */ bool isFiltered() const; void invoke_print(SPPrintContext *ctx); + + /** + * Allocates unique integer keys. + * + * @param numkeys Number of keys required. + * @return First allocated key; hence if the returned key is n + * you can use n, n + 1, ..., n + (numkeys - 1) + */ static unsigned int display_key_new(unsigned int numkeys); + Inkscape::DrawingItem *invoke_show(Inkscape::Drawing &drawing, unsigned int key, unsigned int flags); void invoke_hide(unsigned int key); void getSnappoints(std::vector<Inkscape::SnapCandidatePoint> &p, Inkscape::SnapPreferences const *snapprefs=0) const; void adjust_pattern(/* Geom::Affine const &premul, */ Geom::Affine const &postmul, bool set = false, PatternTransform = TRANSFORM_BOTH); void adjust_gradient(/* Geom::Affine const &premul, */ Geom::Affine const &postmul, bool set = false); void adjust_stroke(double ex); + + /** + * Recursively scale stroke width in \a item and its children by \a expansion. + */ void adjust_stroke_width_recursive(double ex); + void freeze_stroke_width_recursive(bool freeze); + + /** + * Recursively compensate pattern or gradient transform. + */ void adjust_paint_recursive(Geom::Affine advertized_transform, Geom::Affine t_ancestors, bool is_pattern); + void adjust_livepatheffect(Geom::Affine const &postmul, bool set = false); + + /** + * Set a new transform on an object. + * + * Compensate for stroke scaling and gradient/pattern fill transform, if + * necessary. Call the object's set_transform method if transforms are + * stored optimized. Send _transformed_signal. Invoke _write method so that + * the repr is updated with the new transform. + */ void doWriteTransform(Inkscape::XML::Node *repr, Geom::Affine const &transform, Geom::Affine const *adv = NULL, bool compensate = true); + + /** + * Sets item private transform (not propagated to repr), without compensating stroke widths, + * gradients, patterns as sp_item_write_transform does. + */ void set_item_transform(Geom::Affine const &transform_matrix); + int emitEvent (SPEvent &event); + + /** + * Return the arenaitem corresponding to the given item in the display + * with the given key + */ Inkscape::DrawingItem *get_arenaitem(unsigned int key); + /** + * Returns the accumulated transformation of the item and all its ancestors, including root's viewport. + * @pre (item != NULL) and SP_IS_ITEM(item). + */ Geom::Affine i2doc_affine() const; + + /** + * Returns the transformation from item to desktop coords + */ Geom::Affine i2dt_affine() const; + void set_i2d_affine(Geom::Affine const &transform); + + /** + * should rather be named "sp_item_d2i_affine" to match "sp_item_i2d_affine" (or vice versa). + */ Geom::Affine dt2i_affine() const; char *_highlightColor; + private: enum EvaluatedStatus { @@ -281,17 +404,16 @@ public: // Utility +/** + * @pre \a ancestor really is an ancestor (\>=) of \a object, or NULL. + * ("Ancestor (\>=)" here includes as far as \a object itself.) + */ Geom::Affine i2anc_affine(SPObject const *item, SPObject const *ancestor); + Geom::Affine i2i_affine(SPObject const *src, SPObject const *dest); /* fixme: - these are evil, but OK */ -/* Fill *TRANSFORM with the item-to-desktop transform. See doc/coordinates.txt - * for a description of `Desktop coordinates'; though see also mental's comment - * at the top of that file. - * - * \return TRANSFORM. - */ int sp_item_repr_compare_position(SPItem const *first, SPItem const *second); SPItem *sp_item_first_item_child (SPObject *obj); SPItem const *sp_item_first_item_child (SPObject const *obj); diff --git a/src/style-test.h b/src/style-test.h index 2fe270336..e14ed4db7 100644 --- a/src/style-test.h +++ b/src/style-test.h @@ -104,30 +104,30 @@ public: TestCase("font:bold 12px Arial", "font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:12px;line-height:normal;font-family:Arial"), TestCase("font:bold 12px/24px 'Times New Roman'", - "font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:12px;line-height:24px;font-family:\'\"Times New Roman\"\'"), + "font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:12px;line-height:24px;font-family:\'Times New Roman\'"), // From CSS 3 Fonts (examples): - TestCase("font: 12pt/14pt sans-serif", - "font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:15px;line-height:14pt;font-family:sans-serif"), + 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"), 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.00000238%;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\'"), + "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"), TestCase("font: condensed oblique 12pt 'Helvetica Neue', serif;", - "font-style:oblique;font-variant:normal;font-weight:normal;font-stretch:condensed;font-size:15px;line-height:normal;font-family:\'\"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"), TestCase("font-family:sans-serif"), // SPIString, text_private TestCase("font-family:Arial"), - TestCase("font-variant:normal;font-stretch:normal;-inkscape-font-specification:Nimbus Roman No9 L Bold Italic"), + // TestCase("font-variant:normal;font-stretch:normal;-inkscape-font-specification:Nimbus Roman No9 L Bold Italic"), // Needs to be fixed (quotes should be around each font-family): - TestCase("font-family:Georgia, 'Minion Web'","font-family:'Georgia, \"Minion Web\"'"), + TestCase("font-family:Georgia, 'Minion Web'","font-family:Georgia, \'Minion Web\'"), TestCase("font-size:12", "font-size:12px"), // SPIFontSize TestCase("font-size:12px"), - TestCase("font-size:12pt", "font-size:15px"), + TestCase("font-size:12pt", "font-size:16px"), TestCase("font-size:medium"), TestCase("font-size:smaller"), TestCase("font-style:italic"), // SPIEnum @@ -145,10 +145,10 @@ public: // The default value for 'text-decoration-color' is 'currentColor', but // we cannot set the default to that value yet. (We need to switch // SPIPaint to SPIColor and then add the ability to set default.) - TestCase("text-decoration: underline", - "text-decoration: underline;text-decoration-line: underline;text-decoration-color:currentColor"), - TestCase("text-decoration: overline underline", - "text-decoration: underline overline;text-decoration-line: underline overline;text-decoration-color:currentColor"), + // TestCase("text-decoration: underline", + // "text-decoration: underline;text-decoration-line: underline;text-decoration-color:currentColor"), + // TestCase("text-decoration: overline underline", + // "text-decoration: underline overline;text-decoration-line: underline overline;text-decoration-color:currentColor"), TestCase("text-decoration: underline wavy #0000ff", "text-decoration: underline;text-decoration-line: underline;text-decoration-style:wavy;text-decoration-color:#0000ff"), @@ -358,7 +358,7 @@ public: TestCase("text-decoration:underline", "text-decoration:overline", false), TestCase("text-decoration:underline overline","text-decoration:underline overline",true ), TestCase("text-decoration:overline underline","text-decoration:underline overline",true ), - TestCase("text-decoration:none", "text-decoration-color:currentColor", true ), // Default + // TestCase("text-decoration:none", "text-decoration-color:currentColor", true ), // Default // Terminate diff --git a/src/style.cpp b/src/style.cpp index e0c8536fc..a7e50b17a 100644 --- a/src/style.cpp +++ b/src/style.cpp @@ -1720,7 +1720,6 @@ sp_css_attr_unset_text(SPCSSAttr *css) sp_repr_css_set_property(css, "font-family", NULL); sp_repr_css_set_property(css, "text-indent", NULL); sp_repr_css_set_property(css, "text-align", NULL); - sp_repr_css_set_property(css, "text-decoration", NULL); sp_repr_css_set_property(css, "line-height", NULL); sp_repr_css_set_property(css, "letter-spacing", NULL); sp_repr_css_set_property(css, "word-spacing", NULL); @@ -1729,12 +1728,48 @@ sp_css_attr_unset_text(SPCSSAttr *css) sp_repr_css_set_property(css, "block-progression", NULL); sp_repr_css_set_property(css, "writing-mode", NULL); sp_repr_css_set_property(css, "text-anchor", NULL); - sp_repr_css_set_property(css, "white_space", NULL); + sp_repr_css_set_property(css, "white-space", NULL); sp_repr_css_set_property(css, "kerning", NULL); // not implemented yet sp_repr_css_set_property(css, "dominant-baseline", NULL); // not implemented yet sp_repr_css_set_property(css, "alignment-baseline", NULL); // not implemented yet sp_repr_css_set_property(css, "baseline-shift", NULL); + sp_repr_css_set_property(css, "text-decoration", NULL); + sp_repr_css_set_property(css, "text-decoration-line", NULL); + sp_repr_css_set_property(css, "text-decoration-color", NULL); + sp_repr_css_set_property(css, "text-decoration-style", NULL); + + return css; +} + +// ui/dialog/inkscape-preferences.cpp +/** + * Unset properties that should not be set for default tool style. + * This list needs to be reviewed. + */ +SPCSSAttr * +sp_css_attr_unset_blacklist(SPCSSAttr *css) +{ + sp_repr_css_set_property(css, "color", NULL); + sp_repr_css_set_property(css, "clip-rule", NULL); + sp_repr_css_set_property(css, "display", NULL); + sp_repr_css_set_property(css, "overflow", NULL); + sp_repr_css_set_property(css, "visibility", NULL); + sp_repr_css_set_property(css, "isolation", NULL); + sp_repr_css_set_property(css, "mix-blend-mode", NULL); + sp_repr_css_set_property(css, "color-interpolation", NULL); + sp_repr_css_set_property(css, "color-interpolation-filters", NULL); + sp_repr_css_set_property(css, "solid-color", NULL); + sp_repr_css_set_property(css, "solid-opacity", NULL); + sp_repr_css_set_property(css, "fill-rule", NULL); + sp_repr_css_set_property(css, "filter-blend-mode", NULL); + sp_repr_css_set_property(css, "filter-gaussianBlur-deviation", NULL); + sp_repr_css_set_property(css, "color-rendering", NULL); + sp_repr_css_set_property(css, "image-rendering", NULL); + sp_repr_css_set_property(css, "shape-rendering", NULL); + sp_repr_css_set_property(css, "text-rendering", NULL); + sp_repr_css_set_property(css, "enable-background", NULL); + return css; } diff --git a/src/style.h b/src/style.h index a4c2b3043..1b1596458 100644 --- a/src/style.h +++ b/src/style.h @@ -314,6 +314,7 @@ double sp_style_css_size_units_to_px(double size, int unit); // No change? SPCSSAttr *sp_css_attr_from_style (SPStyle const *const style, unsigned int flags); SPCSSAttr *sp_css_attr_from_object(SPObject *object, unsigned int flags = SP_STYLE_FLAG_IFSET); SPCSSAttr *sp_css_attr_unset_text(SPCSSAttr *css); +SPCSSAttr *sp_css_attr_unset_blacklist(SPCSSAttr *css); SPCSSAttr *sp_css_attr_unset_uris(SPCSSAttr *css); SPCSSAttr *sp_css_attr_scale(SPCSSAttr *css, double ex); diff --git a/src/svg/svg-affine-test.h b/src/svg/svg-affine-test.h index 11b9012a8..6d8387328 100644 --- a/src/svg/svg-affine-test.h +++ b/src/svg/svg-affine-test.h @@ -34,7 +34,7 @@ private: static char const * const read_fail_tests[25]; static test_t const write_matrix_tests[2]; static test_t const write_translate_tests[3]; - static test_t const write_scale_tests[2]; + static test_t const write_scale_tests[3]; static test_t const write_rotate_tests[2]; static test_t const write_skew_tests[3]; public: @@ -238,8 +238,9 @@ SvgAffineTest::test_t const SvgAffineTest::write_translate_tests[3] = { {"translate(1,1)",Geom::Affine(1,0,0,1,1,1)}, {"translate(1)",Geom::Affine(1,0,0,1,1,0)}, {"translate(-1345,0.123)",Geom::Affine(1,0,0,1,-1.345e3,.123)}}; -SvgAffineTest::test_t const SvgAffineTest::write_scale_tests[2] = { +SvgAffineTest::test_t const SvgAffineTest::write_scale_tests[3] = { {"scale(0)",Geom::Affine(0,0,0,0,0,0)}, + {"scale(7)",Geom::Affine(7,0,0,7,0,0)}, {"scale(2,3)",Geom::Affine(2,0,0,3,0,0)}}; SvgAffineTest::test_t const SvgAffineTest::write_rotate_tests[2] = { {"rotate(13)",Geom::Affine(cos(13.*DEGREE),sin(13.*DEGREE),-sin(13.*DEGREE),cos(13.*DEGREE),0,0)}, @@ -247,7 +248,7 @@ SvgAffineTest::test_t const SvgAffineTest::write_rotate_tests[2] = { SvgAffineTest::test_t const SvgAffineTest::write_skew_tests[3] = { {"skewX(30)",Geom::Affine(1,0,tan(30.*DEGREE),1,0,0)}, {"skewX(-30)",Geom::Affine(1,0,tan(-30.*DEGREE),1,0,0)}, - {"skewY(390)",Geom::Affine(1,tan(30.*DEGREE),0,1,0,0)}}; + {"skewY(30)",Geom::Affine(1,tan(30.*DEGREE),0,1,0,0)}}; /* Local Variables: diff --git a/src/svg/svg-affine.cpp b/src/svg/svg-affine.cpp index 44567a2bd..af58c4544 100644 --- a/src/svg/svg-affine.cpp +++ b/src/svg/svg-affine.cpp @@ -162,65 +162,105 @@ sp_svg_transform_write(Geom::Affine const &transform) int prec = prefs->getInt("/options/svgoutput/numericprecision", 8); int min_exp = prefs->getInt("/options/svgoutput/minimumexponent", -8); - /* fixme: We could use t1 * t1 + t2 * t2 here instead */ - if ( Geom::are_near(transform[1], 0.0, e) && Geom::are_near (transform[2], 0.0, e)) { - if (Geom::are_near (transform[4], 0.0, e) && Geom::are_near (transform[5], 0.0, e)) { - if (Geom::are_near (transform[0], 1.0, e) && Geom::are_near (transform[3], 1.0, e)) { - /* We are more or less identity */ - return NULL; - } else { - /* We are more or less scale */ - gchar c[256]; - unsigned p = 0; - strcpy (c + p, "scale("); - p += 6; - p += sp_svg_number_write_de( c + p, sizeof(c) - p, transform[0], prec, min_exp ); - c[p++] = ','; - p += sp_svg_number_write_de( c + p, sizeof(c) - p, transform[3], prec, min_exp ); - c[p++] = ')'; - c[p] = '\000'; - g_assert( p <= sizeof(c) ); - return g_strdup(c); - } + // Special case: when all fields of the affine are zero, + // the optimized transformation is scale(0) + if (transform[0] == 0 && transform[1] == 0 && transform[2] == 0 && + transform[3] == 0 && transform[4] == 0 && transform[5] == 0) + { + return g_strdup("scale(0)"); + } + + // FIXME legacy C code! + // the function sp_svg_number_write_de is stopping me from using a proper C++ string + + gchar c[256]; // string buffer + unsigned p = 0; // position in the buffer + + if (transform.isIdentity()) { + // We are more or less identity, so no transform attribute needed: + return NULL; + } else if (transform.isScale()) { + // We are more or less a uniform scale + strcpy (c + p, "scale("); + p += 6; + p += sp_svg_number_write_de( c + p, sizeof(c) - p, transform[0], prec, min_exp ); + if (Geom::are_near(transform[0], transform[3], e)) { + c[p++] = ')'; + c[p] = '\000'; } else { - if (Geom::are_near (transform[0], 1.0, e) && Geom::are_near (transform[3], 1.0, e)) { - /* We are more or less translate */ - gchar c[256]; - unsigned p = 0; - strcpy (c + p, "translate("); - p += 10; - p += sp_svg_number_write_de( c + p, sizeof(c) - p, transform[4], prec, min_exp ); - c[p++] = ','; - p += sp_svg_number_write_de( c + p, sizeof(c) - p, transform[5], prec, min_exp ); - c[p++] = ')'; - c[p] = '\000'; - g_assert( p <= sizeof(c) ); - return g_strdup(c); - } else { - gchar c[256]; - unsigned p = 0; - strcpy (c + p, "matrix("); - p += 7; - p += sp_svg_number_write_de( c + p, sizeof(c) - p, transform[0], prec, min_exp ); - c[p++] = ','; - p += sp_svg_number_write_de( c + p, sizeof(c) - p, transform[1], prec, min_exp ); - c[p++] = ','; - p += sp_svg_number_write_de( c + p, sizeof(c) - p, transform[2], prec, min_exp ); - c[p++] = ','; - p += sp_svg_number_write_de( c + p, sizeof(c) - p, transform[3], prec, min_exp ); - c[p++] = ','; - p += sp_svg_number_write_de( c + p, sizeof(c) - p, transform[4], prec, min_exp ); - c[p++] = ','; - p += sp_svg_number_write_de( c + p, sizeof(c) - p, transform[5], prec, min_exp ); - c[p++] = ')'; - c[p] = '\000'; - g_assert( p <= sizeof(c) ); - return g_strdup(c); - } + c[p++] = ','; + p += sp_svg_number_write_de( c + p, sizeof(c) - p, transform[3], prec, min_exp ); + c[p++] = ')'; + c[p] = '\000'; } + } else if (transform.isTranslation()) { + // We are more or less a pure translation + strcpy (c + p, "translate("); + p += 10; + p += sp_svg_number_write_de( c + p, sizeof(c) - p, transform[4], prec, min_exp ); + if (Geom::are_near(transform[5], 0.0, e)) { + c[p++] = ')'; + c[p] = '\000'; + } else { + c[p++] = ','; + p += sp_svg_number_write_de( c + p, sizeof(c) - p, transform[5], prec, min_exp ); + c[p++] = ')'; + c[p] = '\000'; + } + } else if (transform.isRotation()) { + // We are more or less a pure rotation + strcpy(c + p, "rotate("); + p += 7; + + double angle = std::atan2(transform[1], transform[0]) * (180 / M_PI); + p += sp_svg_number_write_de(c + p, sizeof(c) - p, angle, prec, min_exp); + + c[p++] = ')'; + c[p] = '\000'; + /* } else if (transform.withoutTranslation().isRotation()) { + // FIXME someone please figure out if this can actually be done + // The rotation angle is correct, the points are not + // Refer to the matrix in svg-affine-test.h + + // We are a rotation about a special axis + strcpy(c + p, "rotate("); + p += 7; + + Geom::Affine const sans_translate = transform.withoutTranslation(); + double angle = std::atan2(sans_translate[1], sans_translate[0]) * (180 / M_PI); + p += sp_svg_number_write_de(c + p, sizeof(c) - p, angle, prec, min_exp); + c[p++] = ','; + + Geom::Point pt = transform.translation(); + p += sp_svg_number_write_de(c + p, sizeof(c) - p, pt[Geom::X], prec, min_exp); + + c[p++] = ','; + + p += sp_svg_number_write_de(c + p, sizeof(c) - p, pt[Geom::Y], prec, min_exp); + + c[p++] = ')'; + c[p] = '\000';*/ + } else if (transform.isHShear()) { + // We are more or less a pure skewX + strcpy(c + p, "skewX("); + p += 6; + + double angle = atan(transform[2]) * (180 / M_PI); + p += sp_svg_number_write_de(c + p, sizeof(c) - p, angle, prec, min_exp); + + c[p++] = ')'; + c[p] = '\000'; + } else if (transform.isVShear()) { + // We are more or less a pure skewY + strcpy(c + p, "skewY("); + p += 6; + + double angle = atan(transform[1]) * (180 / M_PI); + p += sp_svg_number_write_de(c + p, sizeof(c) - p, angle, prec, min_exp); + + c[p++] = ')'; + c[p] = '\000'; } else { - gchar c[256]; - unsigned p = 0; strcpy (c + p, "matrix("); p += 7; p += sp_svg_number_write_de( c + p, sizeof(c) - p, transform[0], prec, min_exp ); @@ -236,9 +276,10 @@ sp_svg_transform_write(Geom::Affine const &transform) p += sp_svg_number_write_de( c + p, sizeof(c) - p, transform[5], prec, min_exp ); c[p++] = ')'; c[p] = '\000'; - g_assert( p <= sizeof(c) ); - return g_strdup(c); } + + assert(p <= sizeof(c)); + return g_strdup(c); } diff --git a/src/svg/svg-angle.cpp b/src/svg/svg-angle.cpp index 63152368e..ed5ccd45e 100644 --- a/src/svg/svg-angle.cpp +++ b/src/svg/svg-angle.cpp @@ -104,15 +104,19 @@ static bool sp_svg_angle_read_lff(gchar const *str, SVGAngle::Unit &unit, float } else { if (strncmp(e, "deg", 3) == 0) { unit = SVGAngle::DEG; + val = v; computed = v; } else if (strncmp(e, "grad", 4) == 0) { unit = SVGAngle::GRAD; + val = v; computed = Inkscape::Util::Quantity::convert(v, "grad", "°"); } else if (strncmp(e, "rad", 3) == 0) { unit = SVGAngle::RAD; + val = v; computed = Inkscape::Util::Quantity::convert(v, "rad", "°"); } else if (strncmp(e, "turn", 4) == 0) { unit = SVGAngle::TURN; + val = v; computed = Inkscape::Util::Quantity::convert(v, "turn", "°"); } else { return false; diff --git a/src/svg/svg-length-test.h b/src/svg/svg-length-test.h index 81a28c9e7..fbdb7588d 100644 --- a/src/svg/svg-length-test.h +++ b/src/svg/svg-length-test.h @@ -164,13 +164,13 @@ SvgLengthTest::test_t const SvgLengthTest::absolute_tests[12] = { {"1.00001", SVGLength::NONE, 1.00001 , 1.00001}, {"1px", SVGLength::PX , 1 , 1}, {".1px", SVGLength::PX , 0.1 , 0.1}, - {"100pt", SVGLength::PT , 100 , 125}, - {"1e2pt", SVGLength::PT , 100 , 125}, - {"3pc", SVGLength::PC , 3 , 45}, - {"-3.5pc", SVGLength::PC , -3.5 , -3.5*15.}, - {"1.2345678mm", SVGLength::MM , 1.2345678, 1.2345678*3.543307}, // TODO: More precise constants? (a 7 digit constant when the default precision is 8 digits?) - {"123.45678cm", SVGLength::CM , 123.45678 , 123.45678*35.43307}, - {"73.162987in", SVGLength::INCH, 73.162987 , 73.162987*90}}; + {"100pt", SVGLength::PT , 100 , 400.0/3.0}, + {"1e2pt", SVGLength::PT , 100 , 400.0/3.0}, + {"3pc", SVGLength::PC , 3 , 48}, + {"-3.5pc", SVGLength::PC , -3.5 , -3.5*16.0}, + {"1.2345678mm", SVGLength::MM , 1.2345678, 1.2345678*96.0/25.4}, // TODO: More precise constants? (a 7 digit constant when the default precision is 8 digits?) + {"123.45678cm", SVGLength::CM , 123.45678 , 123.45678*96.0/2.54}, + {"73.162987in", SVGLength::INCH, 73.162987 , 73.162987*96}}; SvgLengthTest::test_t const SvgLengthTest::relative_tests[3] = { {"123em", SVGLength::EM, 123, 123. * 7.}, {"123ex", SVGLength::EX, 123, 123. * 13.}, diff --git a/src/ui/dialog/Makefile_insert b/src/ui/dialog/Makefile_insert index 26a59ce2c..cbdae1cb0 100644 --- a/src/ui/dialog/Makefile_insert +++ b/src/ui/dialog/Makefile_insert @@ -101,7 +101,7 @@ ink_common_sources += \ ui/dialog/template-widget.cpp \ ui/dialog/template-widget.h \ ui/dialog/tags.cpp \ - ui/dialpg/tags.h \ + ui/dialog/tags.h \ ui/dialog/text-edit.cpp \ ui/dialog/text-edit.h \ ui/dialog/tile.cpp \ diff --git a/src/ui/dialog/export.cpp b/src/ui/dialog/export.cpp index 6d5d894ef..ba30c8e6b 100644 --- a/src/ui/dialog/export.cpp +++ b/src/ui/dialog/export.cpp @@ -537,7 +537,7 @@ Gtk::Adjustment * Export::createSpinbutton( gchar const * /*key*/, float val, fl sb->set_sensitive (sensitive); pos++; - if (!ll.empty()) { + if (l) { l->set_mnemonic_widget(*sb); } diff --git a/src/ui/dialog/inkscape-preferences.cpp b/src/ui/dialog/inkscape-preferences.cpp index e113b325f..87b698673 100644 --- a/src/ui/dialog/inkscape-preferences.cpp +++ b/src/ui/dialog/inkscape-preferences.cpp @@ -234,6 +234,9 @@ static void StyleFromSelectionToTool(Glib::ustring const &prefs_path, StyleSwatc if (!css) return; + // remove black-listed properties + css = sp_css_attr_unset_blacklist (css); + // only store text style for the text tool if (prefs_path != "/tools/text") { css = sp_css_attr_unset_text (css); @@ -838,7 +841,7 @@ void InkscapePreferences::initPageIO() _save_use_current_dir.init( _("Use current directory for \"Save As ...\""), "/dialogs/save_as/use_current_dir", true); _page_io.add_line( false, "", _save_use_current_dir, "", - _("When this option is on, the \"Save as...\" and \"Save a Copy\" dialogs will always open in the directory where the currently open document is; when it's off, each will open in the directory where you last saved a file using it"), true); + _("When this option is on, the \"Save as...\" and \"Save a Copy...\" dialogs will always open in the directory where the currently open document is; when it's off, each will open in the directory where you last saved a file using it"), true); _misc_comment.init( _("Add label comments to printing output"), "/printing/debug/show-label-comments", false); _page_io.add_line( false, "", _misc_comment, "", diff --git a/src/ui/dialog/lpe-fillet-chamfer-properties.cpp b/src/ui/dialog/lpe-fillet-chamfer-properties.cpp index ad8b66b8c..fa909924d 100644 --- a/src/ui/dialog/lpe-fillet-chamfer-properties.cpp +++ b/src/ui/dialog/lpe-fillet-chamfer-properties.cpp @@ -46,7 +46,7 @@ FilletChamferPropertiesDialog::FilletChamferPropertiesDialog() Gtk::Box *mainVBox = get_vbox(); mainVBox->set_homogeneous(false); _layout_table.set_spacings(4); - _layout_table.resize(2, 2); + _layout_table.resize(3, 3); // Layer name widgets _fillet_chamfer_position_numeric.set_digits(4); @@ -61,20 +61,30 @@ FilletChamferPropertiesDialog::FilletChamferPropertiesDialog() Gtk::FILL); _layout_table.attach(_fillet_chamfer_position_numeric, 1, 2, 0, 1, Gtk::FILL | Gtk::EXPAND, Gtk::FILL); + _fillet_chamfer_chamfer_subdivisions.set_digits(0); + _fillet_chamfer_chamfer_subdivisions.set_increments(1,1); + //todo: get tha max aloable infinity freeze the widget + _fillet_chamfer_chamfer_subdivisions.set_range(0, 999999999999999999); + + _fillet_chamfer_chamfer_subdivisions_label.set_label(_("Chamfer subdivisions:")); + _fillet_chamfer_chamfer_subdivisions_label.set_alignment(1.0, 0.5); + + _layout_table.attach(_fillet_chamfer_chamfer_subdivisions_label, 0, 1, 1, 2, Gtk::FILL, + Gtk::FILL); + _layout_table.attach(_fillet_chamfer_chamfer_subdivisions, 1, 2, 1, 2, + Gtk::FILL | Gtk::EXPAND, Gtk::FILL); _fillet_chamfer_type_fillet.set_label(_("Fillet")); _fillet_chamfer_type_fillet.set_group(_fillet_chamfer_type_group); _fillet_chamfer_type_inverse_fillet.set_label(_("Inverse fillet")); _fillet_chamfer_type_inverse_fillet.set_group(_fillet_chamfer_type_group); _fillet_chamfer_type_chamfer.set_label(_("Chamfer")); _fillet_chamfer_type_chamfer.set_group(_fillet_chamfer_type_group); - _fillet_chamfer_type_double_chamfer.set_label(_("Double chamfer")); - _fillet_chamfer_type_double_chamfer.set_group(_fillet_chamfer_type_group); + mainVBox->pack_start(_layout_table, true, true, 4); mainVBox->pack_start(_fillet_chamfer_type_fillet, true, true, 4); mainVBox->pack_start(_fillet_chamfer_type_inverse_fillet, true, true, 4); mainVBox->pack_start(_fillet_chamfer_type_chamfer, true, true, 4); - mainVBox->pack_start(_fillet_chamfer_type_double_chamfer, true, true, 4); // Buttons _close_button.set_use_stock(true); @@ -146,10 +156,8 @@ void FilletChamferPropertiesDialog::_apply() d_width = 1; } else if (_fillet_chamfer_type_inverse_fillet.get_active() == true) { d_width = 2; - } else if (_fillet_chamfer_type_chamfer.get_active() == true) { - d_width = 3; } else { - d_width = 4; + d_width = _fillet_chamfer_chamfer_subdivisions.get_value() + 3; } if (_flexible) { if (d_pos > 99.99999 || d_pos < 0) { @@ -177,7 +185,7 @@ void FilletChamferPropertiesDialog::_close() ); } -bool FilletChamferPropertiesDialog::_handleKeyEvent(GdkEventKey *event) +bool FilletChamferPropertiesDialog::_handleKeyEvent(GdkEventKey * /*event*/) { return false; } @@ -194,7 +202,7 @@ void FilletChamferPropertiesDialog::_setKnotPoint(Geom::Point knotpoint) double position; std::string distance_or_radius = std::string(_("Radius ")); if(aprox){ - distance_or_radius = std::string(_("Radius aproximated ")); + distance_or_radius = std::string(_("Radius approximated ")); } if(use_distance){ distance_or_radius = std::string(_("Knot distance ")); @@ -218,10 +226,8 @@ void FilletChamferPropertiesDialog::_setKnotPoint(Geom::Point knotpoint) _fillet_chamfer_type_fillet.set_active(true); } else if (knotpoint.y() == 2) { _fillet_chamfer_type_inverse_fillet.set_active(true); - } else if (knotpoint.y() == 3) { - _fillet_chamfer_type_chamfer.set_active(true); - } else if (knotpoint.y() == 1) { - _fillet_chamfer_type_double_chamfer.set_active(true); + } else if (knotpoint.y() >= 3) { + _fillet_chamfer_chamfer_subdivisions.set_value(knotpoint.y() - 3); } } diff --git a/src/ui/dialog/lpe-fillet-chamfer-properties.h b/src/ui/dialog/lpe-fillet-chamfer-properties.h index 47ff97b00..deae0cee0 100644 --- a/src/ui/dialog/lpe-fillet-chamfer-properties.h +++ b/src/ui/dialog/lpe-fillet-chamfer-properties.h @@ -46,7 +46,8 @@ protected: Gtk::RadioButton _fillet_chamfer_type_fillet; Gtk::RadioButton _fillet_chamfer_type_inverse_fillet; Gtk::RadioButton _fillet_chamfer_type_chamfer; - Gtk::RadioButton _fillet_chamfer_type_double_chamfer; + Gtk::Label _fillet_chamfer_chamfer_subdivisions_label; + Gtk::SpinButton _fillet_chamfer_chamfer_subdivisions; Gtk::Table _layout_table; bool _position_visible; diff --git a/src/ui/dialog/lpe-powerstroke-properties.cpp b/src/ui/dialog/lpe-powerstroke-properties.cpp index c34351511..55f938a48 100644 --- a/src/ui/dialog/lpe-powerstroke-properties.cpp +++ b/src/ui/dialog/lpe-powerstroke-properties.cpp @@ -152,7 +152,7 @@ PowerstrokePropertiesDialog::_close() ); } -bool PowerstrokePropertiesDialog::_handleKeyEvent(GdkEventKey *event) +bool PowerstrokePropertiesDialog::_handleKeyEvent(GdkEventKey * /*event*/) { /*switch (get_group0_keyval(event)) { diff --git a/src/ui/dialog/objects.cpp b/src/ui/dialog/objects.cpp index 93d5dfbd5..c95529a56 100644 --- a/src/ui/dialog/objects.cpp +++ b/src/ui/dialog/objects.cpp @@ -988,7 +988,7 @@ void ObjectsPanel::_storeHighlightTarget(const Gtk::TreeModel::iterator& iter) /* * Drap and drop within the tree */ -bool ObjectsPanel::_handleDragDrop(const Glib::RefPtr<Gdk::DragContext>& context, int x, int y, guint time) +bool ObjectsPanel::_handleDragDrop(const Glib::RefPtr<Gdk::DragContext>& /*context*/, int x, int y, guint /*time*/) { int cell_x = 0, cell_y = 0; Gtk::TreeModel::Path target_path; diff --git a/src/ui/dialog/tags.cpp b/src/ui/dialog/tags.cpp index 127e4d95e..8a104d137 100644 --- a/src/ui/dialog/tags.cpp +++ b/src/ui/dialog/tags.cpp @@ -380,7 +380,7 @@ void TagsPanel::_objectsSelected( Selection *sel ) { _checkTreeSelection(); } -bool TagsPanel::_checkForSelected(const Gtk::TreePath &path, const Gtk::TreeIter& iter, SPObject* obj) +bool TagsPanel::_checkForSelected(const Gtk::TreePath &/*path*/, const Gtk::TreeIter& iter, SPObject* obj) { Gtk::TreeModel::Row row = *iter; SPObject * it = row[_model->_colObject]; @@ -393,6 +393,7 @@ bool TagsPanel::_checkForSelected(const Gtk::TreePath &path, const Gtk::TreeIter return false; } +// TODO does not look good that we're ignoring the passed in root. Investigate. void TagsPanel::_objectsChanged(SPObject* root) { while (!_objectWatchers.empty()) @@ -754,7 +755,7 @@ void TagsPanel::_storeDragSource(const Gtk::TreeModel::iterator& iter) * Drap and drop within the tree * Save the drag source and drop target SPObjects and if its a drag between layers or into (sublayer) a layer */ -bool TagsPanel::_handleDragDrop(const Glib::RefPtr<Gdk::DragContext>& context, int x, int y, guint time) +bool TagsPanel::_handleDragDrop(const Glib::RefPtr<Gdk::DragContext>& /*context*/, int x, int y, guint /*time*/) { int cell_x = 0, cell_y = 0; Gtk::TreeModel::Path target_path; @@ -885,7 +886,7 @@ void TagsPanel::_renameObject(Gtk::TreeModel::Row row, const Glib::ustring& name } } -bool TagsPanel::_noSelection( Glib::RefPtr<Gtk::TreeModel> const & /*model*/, Gtk::TreeModel::Path const & /*path*/, bool currentlySelected ) +bool TagsPanel::_noSelection( Glib::RefPtr<Gtk::TreeModel> const & /*model*/, Gtk::TreeModel::Path const & /*path*/, bool /*currentlySelected*/ ) { return false; } diff --git a/src/ui/tool/path-manipulator.cpp b/src/ui/tool/path-manipulator.cpp index 52ff5d42c..8b99c33b8 100644 --- a/src/ui/tool/path-manipulator.cpp +++ b/src/ui/tool/path-manipulator.cpp @@ -59,7 +59,7 @@ enum PathChange { const double handleCubicGap = 0.01; const double noPower = 0.0; const double defaultStartPower = 0.3334; -const double defaultEndPower = 0.6667; + /** * Notifies the path manipulator when something changes the path being edited @@ -1000,7 +1000,6 @@ NodeList::iterator PathManipulator::subdivideSegment(NodeList::iterator first, d n->front()->setPosition(seg2[1]); n->setType(NODE_SMOOTH, false); } else { - const double handleCubicGap = 0.01; Geom::D2< Geom::SBasis > SBasisInsideNodes; SPCurve *lineInsideNodes = new SPCurve(); if(second->back()->isDegenerate()){ @@ -1251,7 +1250,6 @@ double PathManipulator::BSplineHandlePosition(Handle *h, Handle *h2){ h = h2; } double pos = noPower; - const double handleCubicGap = 0.01; Node *n = h->parent(); Node * nextNode = NULL; nextNode = n->nodeToward(h); @@ -1279,7 +1277,6 @@ Geom::Point PathManipulator::BSplineHandleReposition(Handle *h, Handle *h2){ Geom::Point PathManipulator::BSplineHandleReposition(Handle *h,double pos){ using Geom::X; using Geom::Y; - const double handleCubicGap = 0.01; Geom::Point ret = h->position(); Node *n = h->parent(); Geom::D2< Geom::SBasis > SBasisInsideNodes; diff --git a/src/ui/tools/node-tool.cpp b/src/ui/tools/node-tool.cpp index e2bb85d11..99d60e2b7 100644 --- a/src/ui/tools/node-tool.cpp +++ b/src/ui/tools/node-tool.cpp @@ -305,6 +305,16 @@ void NodeTool::update_helperpath () { if (SP_IS_LPE_ITEM(selection->singleItem())) { Inkscape::LivePathEffect::Effect *lpe = SP_LPE_ITEM(selection->singleItem())->getCurrentLPE(); if (lpe && lpe->isVisible()/* && lpe->showOrigPath()*/) { + Inkscape::UI::ControlPointSelection::Set &selectionNodes = _selected_nodes->allPoints(); + std::vector<Geom::Point> selectedNodesPositions; + for (Inkscape::UI::ControlPointSelection::Set::iterator i = selectionNodes.begin(); i != selectionNodes.end(); ++i) { + if ((*i)->selected()) { + Inkscape::UI::Node *n = dynamic_cast<Inkscape::UI::Node *>(*i); + selectedNodesPositions.push_back(desktop->doc2dt(n->position())); + } + } + lpe->setSelectedNodePoints(selectedNodesPositions); + lpe->setCurrentZoom(this->desktop->current_zoom()); SPCurve *c = new SPCurve(); SPCurve *cc = new SPCurve(); std::vector<Geom::PathVector> cs = lpe->getCanvasIndicators(SP_LPE_ITEM(selection->singleItem())); diff --git a/src/ui/tools/select-tool.cpp b/src/ui/tools/select-tool.cpp index 21459e5d0..a8267ea1d 100644 --- a/src/ui/tools/select-tool.cpp +++ b/src/ui/tools/select-tool.cpp @@ -1153,7 +1153,7 @@ bool SelectTool::root_handler(GdkEvent* event) { if (selection->singleItem()) { SPItem *clicked_item = selection->singleItem(); SPGroup *clickedGroup = dynamic_cast<SPGroup *>(clicked_item); - if ( (clickedGroup && (clickedGroup->layerMode() == SPGroup::LAYER)) || dynamic_cast<SPBox3D *>(clicked_item)) { // enter group or a 3D box + if ( (clickedGroup && (clickedGroup->layerMode() != SPGroup::LAYER)) || dynamic_cast<SPBox3D *>(clicked_item)) { // enter group or a 3D box desktop->setCurrentLayer(clicked_item); sp_desktop_selection(desktop)->clear(); } else { diff --git a/src/ui/widget/addtoicon.cpp b/src/ui/widget/addtoicon.cpp index ce665295b..0798d1c98 100644 --- a/src/ui/widget/addtoicon.cpp +++ b/src/ui/widget/addtoicon.cpp @@ -127,13 +127,12 @@ void AddToIcon::render_vfunc( const Glib::RefPtr<Gdk::Drawable>& window, #endif } -bool -AddToIcon::activate_vfunc(GdkEvent* event, - Gtk::Widget& /*widget*/, - const Glib::ustring& path, - const Gdk::Rectangle& /*background_area*/, - const Gdk::Rectangle& /*cell_area*/, - Gtk::CellRendererState /*flags*/) +bool AddToIcon::activate_vfunc(GdkEvent* /*event*/, + Gtk::Widget& /*widget*/, + const Glib::ustring& /*path*/, + const Gdk::Rectangle& /*background_area*/, + const Gdk::Rectangle& /*cell_area*/, + Gtk::CellRendererState /*flags*/) { return false; } diff --git a/src/ui/widget/clipmaskicon.cpp b/src/ui/widget/clipmaskicon.cpp index 6331d70d8..943b1bebc 100644 --- a/src/ui/widget/clipmaskicon.cpp +++ b/src/ui/widget/clipmaskicon.cpp @@ -154,13 +154,12 @@ void ClipMaskIcon::render_vfunc( const Glib::RefPtr<Gdk::Drawable>& window, #endif } -bool -ClipMaskIcon::activate_vfunc(GdkEvent* event, - Gtk::Widget& /*widget*/, - const Glib::ustring& path, - const Gdk::Rectangle& /*background_area*/, - const Gdk::Rectangle& /*cell_area*/, - Gtk::CellRendererState /*flags*/) +bool ClipMaskIcon::activate_vfunc(GdkEvent* /*event*/, + Gtk::Widget& /*widget*/, + const Glib::ustring& /*path*/, + const Gdk::Rectangle& /*background_area*/, + const Gdk::Rectangle& /*cell_area*/, + Gtk::CellRendererState /*flags*/) { return false; } diff --git a/src/ui/widget/highlight-picker.cpp b/src/ui/widget/highlight-picker.cpp index 8593f0bdf..09999b52d 100644 --- a/src/ui/widget/highlight-picker.cpp +++ b/src/ui/widget/highlight-picker.cpp @@ -147,13 +147,12 @@ void HighlightPicker::render_vfunc( const Glib::RefPtr<Gdk::Drawable>& window, #endif } -bool -HighlightPicker::activate_vfunc(GdkEvent* event, - Gtk::Widget& /*widget*/, - const Glib::ustring& path, - const Gdk::Rectangle& /*background_area*/, - const Gdk::Rectangle& /*cell_area*/, - Gtk::CellRendererState /*flags*/) +bool HighlightPicker::activate_vfunc(GdkEvent* /*event*/, + Gtk::Widget& /*widget*/, + const Glib::ustring& /*path*/, + const Gdk::Rectangle& /*background_area*/, + const Gdk::Rectangle& /*cell_area*/, + Gtk::CellRendererState /*flags*/) { return false; } diff --git a/src/ui/widget/insertordericon.cpp b/src/ui/widget/insertordericon.cpp index a28b0f834..9aec7d135 100644 --- a/src/ui/widget/insertordericon.cpp +++ b/src/ui/widget/insertordericon.cpp @@ -135,13 +135,12 @@ void InsertOrderIcon::render_vfunc( const Glib::RefPtr<Gdk::Drawable>& window, #endif } -bool -InsertOrderIcon::activate_vfunc(GdkEvent* event, - Gtk::Widget& /*widget*/, - const Glib::ustring& path, - const Gdk::Rectangle& /*background_area*/, - const Gdk::Rectangle& /*cell_area*/, - Gtk::CellRendererState /*flags*/) +bool InsertOrderIcon::activate_vfunc(GdkEvent* /*event*/, + Gtk::Widget& /*widget*/, + const Glib::ustring& /*path*/, + const Gdk::Rectangle& /*background_area*/, + const Gdk::Rectangle& /*cell_area*/, + Gtk::CellRendererState /*flags*/) { return false; } diff --git a/src/ui/widget/registered-widget.cpp b/src/ui/widget/registered-widget.cpp index 44d8dcbf3..e97285de4 100644 --- a/src/ui/widget/registered-widget.cpp +++ b/src/ui/widget/registered-widget.cpp @@ -108,7 +108,7 @@ RegisteredToggleButton::~RegisteredToggleButton() _toggled_connection.disconnect(); } -RegisteredToggleButton::RegisteredToggleButton (const Glib::ustring& label, const Glib::ustring& tip, const Glib::ustring& key, Registry& wr, bool right, Inkscape::XML::Node* repr_in, SPDocument *doc_in, char const *active_str, char const *inactive_str) +RegisteredToggleButton::RegisteredToggleButton (const Glib::ustring& /*label*/, const Glib::ustring& tip, const Glib::ustring& key, Registry& wr, bool right, Inkscape::XML::Node* repr_in, SPDocument *doc_in, char const *active_str, char const *inactive_str) : RegisteredWidget<Gtk::ToggleButton>() , _active_str(active_str) , _inactive_str(inactive_str) |
