diff options
| author | Jabier Arraiza Cenoz <jabier.arraiza@marker.es> | 2013-11-13 00:00:04 +0000 |
|---|---|---|
| committer | Jabiertxof <jtx@jtx.marker.es> | 2013-11-13 00:00:04 +0000 |
| commit | 152a0caf7e216e7ceafeed20822500c385e3e2df (patch) | |
| tree | a3b5d60e08f3bd8221ba2e50eea80b087e5d541a | |
| parent | Update to trunk (diff) | |
| parent | fix C++11 compilation. There A LOT of const_casts in this file... :-( (diff) | |
| download | inkscape-152a0caf7e216e7ceafeed20822500c385e3e2df.tar.gz inkscape-152a0caf7e216e7ceafeed20822500c385e3e2df.zip | |
Update to trunk
(bzr r12588.1.26)
179 files changed, 13760 insertions, 9623 deletions
diff --git a/po/POTFILES.in b/po/POTFILES.in index e0d732d23..3a1bfbfbb 100644 --- a/po/POTFILES.in +++ b/po/POTFILES.in @@ -1,16 +1,13 @@ # List of source files containing translatable strings. # Please keep this file sorted alphabetically. -# Generated by ./generate_POTFILES.sh at nie, 1 wrz 2013, 17:32:54 CEST +# Generated by ./generate_POTFILES.sh at Mo 11. Nov 22:57:25 CET 2013 [encoding: UTF-8] inkscape.desktop.in share/filters/filters.svg.h share/palettes/palettes.h share/patterns/patterns.svg.h -src/arc-context.cpp -src/box3d-context.cpp src/box3d.cpp src/color-profile.cpp -src/connector-context.cpp src/context-fns.cpp src/desktop.cpp src/desktop-events.cpp @@ -18,11 +15,6 @@ src/display/canvas-axonomgrid.cpp src/display/canvas-grid.cpp src/display/snap-indicator.cpp src/document.cpp -src/draw-context.cpp -src/dropper-context.cpp -src/dyna-draw-context.cpp -src/eraser-context.cpp -src/event-context.cpp src/event-log.cpp src/extension/dependency.cpp src/extension/effect.cpp @@ -115,9 +107,7 @@ src/extension/prefdialog.cpp src/extension/system.cpp src/file.cpp src/filter-enums.cpp -src/flood-context.cpp src/gradient-chemistry.cpp -src/gradient-context.cpp src/gradient-drag.cpp src/inkscape.cpp src/interface.cpp @@ -182,22 +172,16 @@ src/live_effects/parameter/random.cpp src/live_effects/parameter/text.cpp src/live_effects/parameter/unit.cpp src/live_effects/parameter/vector.cpp -src/lpe-tool-context.cpp src/main-cmdlineact.cpp src/main.cpp src/menus-skeleton.h -src/mesh-context.cpp src/object-edit.cpp src/path-chemistry.cpp -src/pencil-context.cpp -src/pen-context.cpp src/persp3d.cpp src/preferences.cpp src/preferences-skeleton.h src/rdf.cpp -src/rect-context.cpp src/resource-manager.cpp -src/select-context.cpp src/selection-chemistry.cpp src/selection-describer.cpp src/seltrans.cpp @@ -209,7 +193,6 @@ src/sp-flowregion.cpp src/sp-flowtext.cpp src/sp-guide.cpp src/sp-image.cpp -src/spiral-context.cpp src/sp-item.cpp src/sp-item-group.cpp src/sp-line.cpp @@ -220,7 +203,6 @@ src/sp-offset.cpp src/sp-path.cpp src/sp-polygon.cpp src/sp-polyline.cpp -src/spray-context.cpp src/sp-rect.cpp src/sp-spiral.cpp src/sp-star.cpp @@ -229,14 +211,11 @@ src/sp-text.cpp src/sp-tref.cpp src/sp-tspan.cpp src/sp-use.cpp -src/star-context.cpp src/text-chemistry.cpp -src/text-context.cpp src/text-editing.cpp src/tools-switch.cpp src/trace/potrace/inkscape-potrace.cpp src/trace/trace.cpp -src/tweak-context.cpp src/ui/clipboard.cpp src/ui/dialog/aboutbox.cpp src/ui/dialog/align-and-distribute.cpp @@ -286,8 +265,29 @@ src/ui/dialog/xml-tree.cpp src/ui/tool/curve-drag-point.cpp src/ui/tool/multi-path-manipulator.cpp src/ui/tool/node.cpp -src/ui/tool/node-tool.cpp src/ui/tool/path-manipulator.cpp +src/ui/tools/arc-tool.cpp +src/ui/tools/box3d-tool.cpp +src/ui/tools/calligraphic-tool.cpp +src/ui/tools/connector-tool.cpp +src/ui/tools/dropper-tool.cpp +src/ui/tools/eraser-tool.cpp +src/ui/tools/flood-tool.cpp +src/ui/tools/freehand-base.cpp +src/ui/tools/gradient-tool.cpp +src/ui/tools/lpe-tool.cpp +src/ui/tools/mesh-tool.cpp +src/ui/tools/node-tool.cpp +src/ui/tools/pencil-tool.cpp +src/ui/tools/pen-tool.cpp +src/ui/tools/rect-tool.cpp +src/ui/tools/select-tool.cpp +src/ui/tools/spiral-tool.cpp +src/ui/tools/spray-tool.cpp +src/ui/tools/star-tool.cpp +src/ui/tools/text-tool.cpp +src/ui/tools/tool-base.cpp +src/ui/tools/tweak-tool.cpp src/ui/tool/transform-handle-set.cpp src/ui/widget/combo-enums.h src/ui/widget/entity-entry.cpp @@ -364,7 +364,9 @@ share/extensions/generate_voronoi.py share/extensions/gimp_xcf.py share/extensions/guides_creator.py share/extensions/guillotine.py +share/extensions/hpgl_decoder.py share/extensions/hpgl_input.py +share/extensions/hpgl_output.py share/extensions/inkex.py share/extensions/interp_att_g.py share/extensions/jessyInk_autoTexts.py @@ -383,6 +385,7 @@ share/extensions/pathalongpath.py share/extensions/pathmodifier.py share/extensions/pathscatter.py share/extensions/perspective.py +share/extensions/plotter.py share/extensions/polyhedron_3d.py share/extensions/print_win32_vector.py share/extensions/render_barcode_datamatrix.py @@ -439,6 +442,7 @@ share/extensions/wireframe_sphere.py [type: gettext/xml] share/extensions/edge3d.inx [type: gettext/xml] share/extensions/embedimage.inx [type: gettext/xml] share/extensions/embedselectedimages.inx +[type: gettext/xml] share/extensions/empty_page.inx [type: gettext/xml] share/extensions/eps_input.inx [type: gettext/xml] share/extensions/eqtexsvg.inx [type: gettext/xml] share/extensions/export_gimp_palette.inx @@ -504,13 +508,13 @@ share/extensions/wireframe_sphere.py [type: gettext/xml] share/extensions/motion.inx [type: gettext/xml] share/extensions/new_glyph_layer.inx [type: gettext/xml] share/extensions/next_glyph_layer.inx -[type: gettext/xml] share/extensions/outline2svg.inx [type: gettext/xml] share/extensions/param_curves.inx [type: gettext/xml] share/extensions/pathalongpath.inx [type: gettext/xml] share/extensions/pathscatter.inx [type: gettext/xml] share/extensions/perfectboundcover.inx [type: gettext/xml] share/extensions/perspective.inx [type: gettext/xml] share/extensions/pixelsnap.inx +[type: gettext/xml] share/extensions/plotter.inx [type: gettext/xml] share/extensions/plt_input.inx [type: gettext/xml] share/extensions/plt_output.inx [type: gettext/xml] share/extensions/polyhedron_3d.inx @@ -554,7 +558,6 @@ share/extensions/wireframe_sphere.py [type: gettext/xml] share/extensions/text_titlecase.inx [type: gettext/xml] share/extensions/text_uppercase.inx [type: gettext/xml] share/extensions/triangle.inx -[type: gettext/xml] share/extensions/txt2svg.inx [type: gettext/xml] share/extensions/voronoi2svg.inx [type: gettext/xml] share/extensions/web-set-att.inx [type: gettext/xml] share/extensions/webslicer_create_group.inx @@ -13,11 +13,12 @@ # Florent Becker <florent.becker@ens-lyon.org> # Sophie Gousset <contact@sophieweb.com> # Nicolas Dufour <nicoduf@yahoo.fr>, 2008-2012. +#: ../share/filters/filters.svg.h:1 msgid "" msgstr "" "Project-Id-Version: inkscape\n" "Report-Msgid-Bugs-To: inkscape-devel@lists.sourceforge.net\n" -"POT-Creation-Date: 2013-06-27 21:15+0200\n" +"POT-Creation-Date: 2013-11-07 15:09+0100\n" "PO-Revision-Date: 2013-06-27 21:38+0100\n" "Last-Translator: Nicolas Dufour <nicoduf@yahoo.fr>\n" "Language-Team: <fr@li.org>\n" @@ -203,7 +204,8 @@ msgstr "Zèbre" #: ../share/filters/filters.svg.h:1 msgid "Irregular vertical dark stripes (loses object's own color)" -msgstr "Bandes verticales sombres et irrégulières (l'objet perd sa propre couleur)" +msgstr "" +"Bandes verticales sombres et irrégulières (l'objet perd sa propre couleur)" #: ../share/filters/filters.svg.h:1 msgid "Clouds" @@ -456,8 +458,7 @@ msgstr "Texture de métal luisant" msgid "Leaves" msgstr "Feuilles" -#: ../share/filters/filters.svg.h:1 -#: ../share/extensions/pathscatter.inx.h:1 +#: ../share/filters/filters.svg.h:1 ../share/extensions/pathscatter.inx.h:1 msgid "Scatter" msgstr "Éparpiller" @@ -480,7 +481,9 @@ msgstr "Cire d'abeille irisée" #: ../share/filters/filters.svg.h:1 msgid "Waxy texture which keeps its iridescence through color fill change" -msgstr "Texture cireuse conservant ses reflets irisés au travers de variations de couleur de remplissage" +msgstr "" +"Texture cireuse conservant ses reflets irisés au travers de variations de " +"couleur de remplissage" #: ../share/filters/filters.svg.h:1 msgid "Eroded Metal" @@ -488,7 +491,8 @@ msgstr "Métal érodé" #: ../share/filters/filters.svg.h:1 msgid "Eroded metal texture with ridges, grooves, holes and bumps" -msgstr "Texture de métal érodé, avec des arêtes, des sillons, des trous et des bosses" +msgstr "" +"Texture de métal érodé, avec des arêtes, des sillons, des trous et des bosses" #: ../share/filters/filters.svg.h:1 msgid "Cracked Lava" @@ -520,7 +524,8 @@ msgstr "Mur de pierres" #: ../share/filters/filters.svg.h:1 msgid "Stone wall texture to use with not too saturated colors" -msgstr "Texture en mur de pierre à utiliser avec des couleurs pas trop saturées" +msgstr "" +"Texture en mur de pierre à utiliser avec des couleurs pas trop saturées" #: ../share/filters/filters.svg.h:1 msgid "Silk Carpet" @@ -551,8 +556,10 @@ msgid "Metallized Paint" msgstr "Peinture métallisée" #: ../share/filters/filters.svg.h:1 -msgid "Metallized effect with a soft lighting, slightly translucent at the edges" -msgstr "Effet métallisé avec une lumière douce, légèrement translucide sur les bords" +msgid "" +"Metallized effect with a soft lighting, slightly translucent at the edges" +msgstr "" +"Effet métallisé avec une lumière douce, légèrement translucide sur les bords" #: ../share/filters/filters.svg.h:1 msgid "Dragee" @@ -607,7 +614,9 @@ msgstr "Cubes" #: ../share/filters/filters.svg.h:1 msgid "Scattered cubes; adjust the Morphology primitive to vary size" -msgstr "Cubes éparpillés ; pour changer la taille des cubes, ajuster la primitive Morphologie" +msgstr "" +"Cubes éparpillés ; pour changer la taille des cubes, ajuster la primitive " +"Morphologie" #: ../share/filters/filters.svg.h:1 msgid "Peel Off" @@ -655,15 +664,20 @@ msgstr "Papier à grain" #: ../share/filters/filters.svg.h:1 msgid "Aquarelle paper effect which can be used for pictures as for objects" -msgstr "Effet de papier à aquarelle, utilisable autant pour les images que pour les objets" +msgstr "" +"Effet de papier à aquarelle, utilisable autant pour les images que pour les " +"objets" #: ../share/filters/filters.svg.h:1 msgid "Rough and Glossy" msgstr "Plastique chiffonné" #: ../share/filters/filters.svg.h:1 -msgid "Crumpled glossy paper effect which can be used for pictures as for objects" -msgstr "Effet de papier brillant froissé, utilisable autant pour les images que pour les objets" +msgid "" +"Crumpled glossy paper effect which can be used for pictures as for objects" +msgstr "" +"Effet de papier brillant froissé, utilisable autant pour les images que pour " +"les objets" #: ../share/filters/filters.svg.h:1 msgid "In and Out" @@ -702,8 +716,11 @@ msgid "Electronic Microscopy" msgstr "Microscope électronique" #: ../share/filters/filters.svg.h:1 -msgid "Bevel, crude light, discoloration and glow like in electronic microscopy" -msgstr "Un biseau, lumière brute, décoloration et lueur comme avec un microscope électronique" +msgid "" +"Bevel, crude light, discoloration and glow like in electronic microscopy" +msgstr "" +"Un biseau, lumière brute, décoloration et lueur comme avec un microscope " +"électronique" #: ../share/filters/filters.svg.h:1 msgid "Tartan" @@ -719,7 +736,9 @@ msgstr "Liquide agité" #: ../share/filters/filters.svg.h:1 msgid "Colorizable filling with flow inside like transparency" -msgstr "Remplissage qu'il est possible de colorer, avec une transparence s'écoulant à l'intérieur" +msgstr "" +"Remplissage qu'il est possible de colorer, avec une transparence s'écoulant " +"à l'intérieur" #: ../share/filters/filters.svg.h:1 msgid "Soft Focus Lens" @@ -766,7 +785,8 @@ msgid "Torn Edges" msgstr "Pourtour déchiré" #: ../share/filters/filters.svg.h:1 -msgid "Displace the outside of shapes and pictures without altering their content" +msgid "" +"Displace the outside of shapes and pictures without altering their content" msgstr "Déplace l'extérieur des formes et images sans en altérer le contenu" #: ../share/filters/filters.svg.h:1 @@ -782,8 +802,12 @@ msgid "Evanescent" msgstr "Évanescence" #: ../share/filters/filters.svg.h:1 -msgid "Blur the contents of objects, preserving the outline and adding progressive transparency at edges" -msgstr "Rend flou le contenu des objets, mais préserve le contour et ajoute une transparence progressive aux bords" +msgid "" +"Blur the contents of objects, preserving the outline and adding progressive " +"transparency at edges" +msgstr "" +"Rend flou le contenu des objets, mais préserve le contour et ajoute une " +"transparence progressive aux bords" #: ../share/filters/filters.svg.h:1 msgid "Chalk and Sponge" @@ -791,7 +815,9 @@ msgstr "Éponge et craie" #: ../share/filters/filters.svg.h:1 msgid "Low turbulence gives sponge look and high turbulence chalk" -msgstr "Une agitation légère donne l'aspect d'une éponge et une agitation forte de la craie" +msgstr "" +"Une agitation légère donne l'aspect d'une éponge et une agitation forte de " +"la craie" #: ../share/filters/filters.svg.h:1 msgid "People" @@ -814,8 +840,11 @@ msgid "Garden of Delights" msgstr "Jardin des délices" #: ../share/filters/filters.svg.h:1 -msgid "Phantasmagorical turbulent wisps, like Hieronymus Bosch's Garden of Delights" -msgstr "Volutes agitées et fantasmagoriques, comme <i>Le Jardin des délices</i> de Jérôme Bosch" +msgid "" +"Phantasmagorical turbulent wisps, like Hieronymus Bosch's Garden of Delights" +msgstr "" +"Volutes agitées et fantasmagoriques, comme <i>Le Jardin des délices</i> de " +"Jérôme Bosch" #: ../share/filters/filters.svg.h:1 msgid "Cutout Glow" @@ -823,7 +852,9 @@ msgstr "Découpe et flou" #: ../share/filters/filters.svg.h:1 msgid "In and out glow with a possible offset and colorizable flood" -msgstr "Lueur intérieure et extérieure avec possibilité de décaler et colorer le remplissage" +msgstr "" +"Lueur intérieure et extérieure avec possibilité de décaler et colorer le " +"remplissage" #: ../share/filters/filters.svg.h:1 msgid "Dark Emboss" @@ -831,7 +862,8 @@ msgstr "Bosselage sombre" #: ../share/filters/filters.svg.h:1 msgid "Emboss effect : 3D relief where white is replaced by black" -msgstr "Effet d'embossage : relief 3D avec lequel le blanc est remplacé par du noir" +msgstr "" +"Effet d'embossage : relief 3D avec lequel le blanc est remplacé par du noir" #: ../share/filters/filters.svg.h:1 msgid "Bubbly Bumps Matte" @@ -839,7 +871,9 @@ msgstr "Bosselage bulleux mat" #: ../share/filters/filters.svg.h:1 msgid "Same as Bubbly Bumps but with a diffuse light instead of a specular one" -msgstr "Identique à Bosselage bulleux, mais avec une lumière diffuse et non pas spéculaire" +msgstr "" +"Identique à Bosselage bulleux, mais avec une lumière diffuse et non pas " +"spéculaire" #: ../share/filters/filters.svg.h:1 msgid "Blotting Paper" @@ -870,8 +904,11 @@ msgid "Felt" msgstr "Feutre" #: ../share/filters/filters.svg.h:1 -msgid "Felt like texture with color turbulence and slightly darker at the edges" -msgstr "Texture de feutre avec de la turbulence de couleur et légèrement plus sombre sur les bords" +msgid "" +"Felt like texture with color turbulence and slightly darker at the edges" +msgstr "" +"Texture de feutre avec de la turbulence de couleur et légèrement plus sombre " +"sur les bords" #: ../share/filters/filters.svg.h:1 msgid "Ink Paint" @@ -887,7 +924,9 @@ msgstr "Arc-en-ciel teinté" #: ../share/filters/filters.svg.h:1 msgid "Smooth rainbow colors melted along the edges and colorizable" -msgstr "Couleurs arc-en-ciel douces, fondues le long des bords, et qu'il est possible de colorer" +msgstr "" +"Couleurs arc-en-ciel douces, fondues le long des bords, et qu'il est " +"possible de colorer" #: ../share/filters/filters.svg.h:1 msgid "Melted Rainbow" @@ -903,7 +942,8 @@ msgstr "Métal souple" #: ../share/filters/filters.svg.h:1 msgid "Bright, polished uneven metal casting, colorizable" -msgstr "Moulage de métal irrégulier, poli et brillant, qu'il est possible de colorer" +msgstr "" +"Moulage de métal irrégulier, poli et brillant, qu'il est possible de colorer" #: ../share/filters/filters.svg.h:1 msgid "Wavy Tartan" @@ -911,7 +951,8 @@ msgstr "Écossais ondoyant" #: ../share/filters/filters.svg.h:1 msgid "Tartan pattern with a wavy displacement and bevel around the edges" -msgstr "Motif écossais avec des déplacements ondulés et un biseau autour des bords" +msgstr "" +"Motif écossais avec des déplacements ondulés et un biseau autour des bords" #: ../share/filters/filters.svg.h:1 msgid "3D Marble" @@ -950,8 +991,6 @@ msgid "Black Light" msgstr "Lumière noire" #: ../share/filters/filters.svg.h:1 -#: ../src/ui/dialog/clonetiler.cpp:831 -#: ../src/ui/dialog/clonetiler.cpp:982 #: ../src/extension/internal/bitmap/colorize.cpp:52 #: ../src/extension/internal/filter/bumps.h:101 #: ../src/extension/internal/filter/bumps.h:321 @@ -983,7 +1022,8 @@ msgstr "Lumière noire" #: ../src/extension/internal/filter/paint.h:717 #: ../src/extension/internal/filter/shadows.h:73 #: ../src/extension/internal/filter/transparency.h:345 -#: ../src/ui/dialog/document-properties.cpp:150 +#: ../src/ui/dialog/clonetiler.cpp:832 ../src/ui/dialog/clonetiler.cpp:983 +#: ../src/ui/dialog/document-properties.cpp:153 #: ../share/extensions/color_blackandwhite.inx.h:2 #: ../share/extensions/color_brighter.inx.h:2 #: ../share/extensions/color_custom.inx.h:15 @@ -1046,15 +1086,20 @@ msgstr "Ombrages 3D non réalistes" #: ../share/filters/filters.svg.h:1 msgid "Comics shader with creamy waves transparency" -msgstr "Ombrage de bande dessinée avec une transparence en ondulations crémeuses" +msgstr "" +"Ombrage de bande dessinée avec une transparence en ondulations crémeuses" #: ../share/filters/filters.svg.h:1 msgid "Chewing Gum" msgstr "Chewing-gum" #: ../share/filters/filters.svg.h:1 -msgid "Creates colorizable blotches which smoothly flow over the edges of the lines at their crossings" -msgstr "Crée des taches qu'il est possible de colorer, avec un écoulement homogène sur les croisements des lignes" +msgid "" +"Creates colorizable blotches which smoothly flow over the edges of the lines " +"at their crossings" +msgstr "" +"Crée des taches qu'il est possible de colorer, avec un écoulement homogène " +"sur les croisements des lignes" #: ../share/filters/filters.svg.h:1 msgid "Dark And Glow" @@ -1062,7 +1107,8 @@ msgstr "Ombre et lumière" #: ../share/filters/filters.svg.h:1 msgid "Darkens the edge with an inner blur and adds a flexible glow" -msgstr "Assombrit les bords avec un flou intérieur et ajoute une lueur flexible" +msgstr "" +"Assombrit les bords avec un flou intérieur et ajoute une lueur flexible" #: ../share/filters/filters.svg.h:1 msgid "Warped Rainbow" @@ -1070,7 +1116,9 @@ msgstr "Arc-en-ciel déformé" #: ../share/filters/filters.svg.h:1 msgid "Smooth rainbow colors warped along the edges and colorizable" -msgstr "Couleurs arc-en-ciel douces déformées le long des bords et qu'il est possible de colorer" +msgstr "" +"Couleurs arc-en-ciel douces déformées le long des bords et qu'il est " +"possible de colorer" #: ../share/filters/filters.svg.h:1 msgid "Rough and Dilate" @@ -1086,7 +1134,9 @@ msgstr "Vieille carte postale" #: ../share/filters/filters.svg.h:1 msgid "Slightly posterize and draw edges like on old printed postcards" -msgstr "Légère postérisation et contours dessinés, comme sur une vieille carte postale imprimée" +msgstr "" +"Légère postérisation et contours dessinés, comme sur une vieille carte " +"postale imprimée" #: ../share/filters/filters.svg.h:1 msgid "Dots Transparency" @@ -1109,8 +1159,11 @@ msgid "Smear Transparency" msgstr "Transparence barbouillée" #: ../share/filters/filters.svg.h:1 -msgid "Paint objects with a transparent turbulence which turns around color edges" -msgstr "Peint des objets avec une turbulence transparente tournant autour des bords colorés" +msgid "" +"Paint objects with a transparent turbulence which turns around color edges" +msgstr "" +"Peint des objets avec une turbulence transparente tournant autour des bords " +"colorés" #: ../share/filters/filters.svg.h:1 msgid "Thick Paint" @@ -1133,8 +1186,12 @@ msgid "Embossed Leather" msgstr "Cuir repoussé" #: ../share/filters/filters.svg.h:1 -msgid "Combine a HSL edges detection bump with a leathery or woody and colorizable texture" -msgstr "Combine un bosselage de type détection de contours TSL avec une texture de cuir ou de bois qu'il est possible de colorer" +msgid "" +"Combine a HSL edges detection bump with a leathery or woody and colorizable " +"texture" +msgstr "" +"Combine un bosselage de type détection de contours TSL avec une texture de " +"cuir ou de bois qu'il est possible de colorer" #: ../share/filters/filters.svg.h:1 msgid "Carnaval" @@ -1149,16 +1206,23 @@ msgid "Plastify" msgstr "Plastifier" #: ../share/filters/filters.svg.h:1 -msgid "HSL edges detection bump with a wavy reflective surface effect and variable crumple" -msgstr "Combine un bosselage de type détection de contours TSL avec un effet de surface ondulant et réflectif et un froissement variable" +msgid "" +"HSL edges detection bump with a wavy reflective surface effect and variable " +"crumple" +msgstr "" +"Combine un bosselage de type détection de contours TSL avec un effet de " +"surface ondulant et réflectif et un froissement variable" #: ../share/filters/filters.svg.h:1 msgid "Plaster" msgstr "Plâtre" #: ../share/filters/filters.svg.h:1 -msgid "Combine a HSL edges detection bump with a matte and crumpled surface effect" -msgstr "Combine un bosselage de type détection de contours TSL avec un effet de surface mat et froissé" +msgid "" +"Combine a HSL edges detection bump with a matte and crumpled surface effect" +msgstr "" +"Combine un bosselage de type détection de contours TSL avec un effet de " +"surface mat et froissé" #: ../share/filters/filters.svg.h:1 msgid "Rough Transparency" @@ -1166,7 +1230,8 @@ msgstr "Transparence agitée" #: ../share/filters/filters.svg.h:1 msgid "Adds a turbulent transparency which displaces pixels at the same time" -msgstr "Ajoute une transparence agitée qui déplace plusieurs pixels en même temps" +msgstr "" +"Ajoute une transparence agitée qui déplace plusieurs pixels en même temps" #: ../share/filters/filters.svg.h:1 msgid "Gouache" @@ -1182,7 +1247,8 @@ msgstr "Gravure transparente" #: ../share/filters/filters.svg.h:1 msgid "Gives a transparent engraving effect with rough line and filling" -msgstr "Donne un effet de gravure transparente avec un trait agité et un remplissage" +msgstr "" +"Donne un effet de gravure transparente avec un trait agité et un remplissage" #: ../share/filters/filters.svg.h:1 msgid "Alpha Draw Liquid" @@ -1190,7 +1256,9 @@ msgstr "Dessin transparent liquide" #: ../share/filters/filters.svg.h:1 msgid "Gives a transparent fluid drawing effect with rough line and filling" -msgstr "Donne un effet de dessin liquide et transparent avec un trait agité et un remplissage" +msgstr "" +"Donne un effet de dessin liquide et transparent avec un trait agité et un " +"remplissage" #: ../share/filters/filters.svg.h:1 msgid "Liquid Drawing" @@ -1214,15 +1282,18 @@ msgstr "Acrylique épaisse" #: ../share/filters/filters.svg.h:1 msgid "Thick acrylic paint texture with high texture depth" -msgstr "Texture de peinture acrylique épaisse avec beaucoup de profondeur de texture" +msgstr "" +"Texture de peinture acrylique épaisse avec beaucoup de profondeur de texture" #: ../share/filters/filters.svg.h:1 msgid "Alpha Engraving B" msgstr "Gravure transparente B" #: ../share/filters/filters.svg.h:1 -msgid "Gives a controllable roughness engraving effect to bitmaps and materials" -msgstr "Donne un effet de gravure agitée contrôlable aux bitmaps et aux matières" +msgid "" +"Gives a controllable roughness engraving effect to bitmaps and materials" +msgstr "" +"Donne un effet de gravure agitée contrôlable aux bitmaps et aux matières" #: ../share/filters/filters.svg.h:1 msgid "Lapping" @@ -1247,15 +1318,21 @@ msgstr "Remplissage et transparence" #: ../share/filters/filters.svg.h:1 msgid "Convert to a colorizable transparent positive or negative" -msgstr "Convertit en un positif ou un négatif transparent qu'il est possible de colorer" +msgstr "" +"Convertit en un positif ou un négatif transparent qu'il est possible de " +"colorer" #: ../share/filters/filters.svg.h:1 msgid "Saturation Map" msgstr "Carte de saturation" #: ../share/filters/filters.svg.h:1 -msgid "Creates an approximative semi-transparent and colorizable image of the saturation levels" -msgstr "Crée une image approximative, semi-transparente et à colorer, des niveaux de saturation" +msgid "" +"Creates an approximative semi-transparent and colorizable image of the " +"saturation levels" +msgstr "" +"Crée une image approximative, semi-transparente et à colorer, des niveaux de " +"saturation" #: ../share/filters/filters.svg.h:1 msgid "Riddled" @@ -1271,7 +1348,9 @@ msgstr "Vernis ridé" #: ../share/filters/filters.svg.h:1 msgid "Thick glossy and translucent paint texture with high depth" -msgstr "Texture de peinture épaisse, brillante et translucide, avec beaucoup de profondeur" +msgstr "" +"Texture de peinture épaisse, brillante et translucide, avec beaucoup de " +"profondeur" #: ../share/filters/filters.svg.h:1 msgid "Canvas Bumps" @@ -1287,7 +1366,9 @@ msgstr "Bosselage toilé mat" #: ../share/filters/filters.svg.h:1 msgid "Same as Canvas Bumps but with a diffuse light instead of a specular one" -msgstr "Identique à Bosselage toilé, mais avec une lumière diffuse et non pas spéculaire" +msgstr "" +"Identique à Bosselage toilé, mais avec une lumière diffuse et non pas " +"spéculaire" #: ../share/filters/filters.svg.h:1 msgid "Canvas Bumps Alpha" @@ -1344,7 +1425,9 @@ msgstr "Papier aluminium" #: ../share/filters/filters.svg.h:1 msgid "Metallic foil effect combining two lighting types and variable crumple" -msgstr "Effet de papier d'aluminium combinant deux types de lumières et un froissement variable" +msgstr "" +"Effet de papier d'aluminium combinant deux types de lumières et un " +"froissement variable" #: ../share/filters/filters.svg.h:1 msgid "Soft Colors" @@ -1352,7 +1435,9 @@ msgstr "Couleurs douces" #: ../share/filters/filters.svg.h:1 msgid "Adds a colorizable edges glow inside objects and pictures" -msgstr "Ajoute une lueur pouvant être colorée sur le bord intérieur des objets et images" +msgstr "" +"Ajoute une lueur pouvant être colorée sur le bord intérieur des objets et " +"images" #: ../share/filters/filters.svg.h:1 msgid "Relief Print" @@ -1360,7 +1445,8 @@ msgstr "Impression en relief" #: ../share/filters/filters.svg.h:1 msgid "Bumps effect with a bevel, color flood and complex lighting" -msgstr "Biseau avec des bosselages, du remplissage de couleur et une lumière complexe" +msgstr "" +"Biseau avec des bosselages, du remplissage de couleur et une lumière complexe" #: ../share/filters/filters.svg.h:1 msgid "Growing Cells" @@ -1368,7 +1454,9 @@ msgstr "Cellules vivantes" #: ../share/filters/filters.svg.h:1 msgid "Random rounded living cells like fill" -msgstr "Remplissage avec des formes rondes et aléatoires ressemblant à des cellules vivantes" +msgstr "" +"Remplissage avec des formes rondes et aléatoires ressemblant à des cellules " +"vivantes" #: ../share/filters/filters.svg.h:1 msgid "Fluorescence" @@ -1481,8 +1569,11 @@ msgid "Swirl" msgstr "Tourbillon" #: ../share/filters/filters.svg.h:1 -msgid "Paint objects with a transparent turbulence which wraps around color edges" -msgstr "Peint des objets avec une turbulence transparente tournant autour des bords colorés" +msgid "" +"Paint objects with a transparent turbulence which wraps around color edges" +msgstr "" +"Peint des objets avec une turbulence transparente tournant autour des bords " +"colorés" #: ../share/filters/filters.svg.h:1 msgid "Pointillism" @@ -1530,8 +1621,12 @@ msgid "Blur Double" msgstr "Flou double" #: ../share/filters/filters.svg.h:1 -msgid "Overlays two copies with different blur amounts and modifiable blend and composite" -msgstr "Superpose deux copies avec un nouveau de flou différent et des primitives fondu et composite modifiables" +msgid "" +"Overlays two copies with different blur amounts and modifiable blend and " +"composite" +msgstr "" +"Superpose deux copies avec un nouveau de flou différent et des primitives " +"fondu et composite modifiables" #: ../share/filters/filters.svg.h:1 msgid "Image Drawing Basic" @@ -1585,7 +1680,8 @@ msgstr "Monochrome transparent craquelé" #: ../share/filters/filters.svg.h:1 msgid "Basic noise fill texture; adjust color in Flood" -msgstr "Texture de remplissage agité de base ; ajuster la couleur avec Remplissage" +msgstr "" +"Texture de remplissage agité de base ; ajuster la couleur avec Remplissage" #: ../share/filters/filters.svg.h:1 msgid "Alpha Turbulent" @@ -1865,7 +1961,8 @@ msgstr "Simuler CMJ" #: ../share/filters/filters.svg.h:1 msgid "Render Cyan, Magenta and Yellow channels with a colorizable background" -msgstr "Rendu des canaux cyan, magenta et jaune avec un fond que l'on peut colorer" +msgstr "" +"Rendu des canaux cyan, magenta et jaune avec un fond que l'on peut colorer" #: ../share/filters/filters.svg.h:1 #, fuzzy @@ -3231,1536 +3328,332 @@ msgstr "Textile (bitmap)" msgid "Old paint (bitmap)" msgstr "Peinture vieillie (bitmap)" -#: ../src/live_effects/lpe-extrude.cpp:30 -msgid "Direction" -msgstr "Direction" - -#: ../src/live_effects/lpe-extrude.cpp:30 -msgid "Defines the direction and magnitude of the extrusion" -msgstr "Définit la direction et l'amplitude de l'extrusion" - -#: ../src/sp-flowtext.cpp:339 -#: ../src/sp-text.cpp:400 -#: ../src/text-context.cpp:1630 -msgid " [truncated]" -msgstr " [tronqué]" - -#: ../src/sp-flowtext.cpp:342 -#, c-format -msgid "<b>Flowed text</b> (%d character%s)" -msgid_plural "<b>Flowed text</b> (%d characters%s)" -msgstr[0] "<b>Texte encadré</b> (%d caractère%s)" -msgstr[1] "<b>Texte encadré</b> (%d caractères%s)" - -#: ../src/sp-flowtext.cpp:344 -#, c-format -msgid "<b>Linked flowed text</b> (%d character%s)" -msgid_plural "<b>Linked flowed text</b> (%d characters%s)" -msgstr[0] "<b>Texte encadré lié</b> (%d caractère%s)" -msgstr[1] "<b>Texte encadré lié</b> (%d caractères%s)" - -#: ../src/arc-context.cpp:307 -msgid "<b>Ctrl</b>: make circle or integer-ratio ellipse, snap arc/segment angle" -msgstr "<b>Ctrl</b> : dessiner des cercles ou des ellipses de ratio entier, forcer la modification des angles des arcs/camemberts par incréments" +#: ../src/arc-context.cpp:265 +msgid "" +"<b>Ctrl</b>: make circle or integer-ratio ellipse, snap arc/segment angle" +msgstr "" +"<b>Ctrl</b> : dessiner des cercles ou des ellipses de ratio entier, forcer " +"la modification des angles des arcs/camemberts par incréments" -#: ../src/arc-context.cpp:308 -#: ../src/rect-context.cpp:353 +#: ../src/arc-context.cpp:266 ../src/rect-context.cpp:293 msgid "<b>Shift</b>: draw around the starting point" msgstr "<b>Maj</b> : dessiner autour du point de départ" -#: ../src/arc-context.cpp:464 +#: ../src/arc-context.cpp:435 #, c-format -msgid "<b>Ellipse</b>: %s × %s (constrained to ratio %d:%d); with <b>Shift</b> to draw around the starting point" -msgstr "<b>Ellipse</b> : %s × %s; (contrainte de ratio %d:%d); <b>Maj</b> pour dessiner autour du point de départ" +msgid "" +"<b>Ellipse</b>: %s × %s (constrained to ratio %d:%d); with <b>Shift</b> " +"to draw around the starting point" +msgstr "" +"<b>Ellipse</b> : %s × %s; (contrainte de ratio %d:%d); <b>Maj</b> pour " +"dessiner autour du point de départ" -#: ../src/arc-context.cpp:466 +#: ../src/arc-context.cpp:437 #, c-format -msgid "<b>Ellipse</b>: %s × %s; with <b>Ctrl</b> to make square or integer-ratio ellipse; with <b>Shift</b> to draw around the starting point" -msgstr "<b>Ellipse</b> : %s × %s; <b>Ctrl</b> pour dessiner des cercles ou des ellipses de ratio entier, <b>Maj</b> pour dessiner autour du point de départ" +msgid "" +"<b>Ellipse</b>: %s × %s; with <b>Ctrl</b> to make square or integer-" +"ratio ellipse; with <b>Shift</b> to draw around the starting point" +msgstr "" +"<b>Ellipse</b> : %s × %s; <b>Ctrl</b> pour dessiner des cercles ou des " +"ellipses de ratio entier, <b>Maj</b> pour dessiner autour du point de départ" -#: ../src/arc-context.cpp:492 +#: ../src/arc-context.cpp:460 msgid "Create ellipse" msgstr "Créer une ellipse" -#: ../src/box3d-context.cpp:421 -#: ../src/box3d-context.cpp:428 -#: ../src/box3d-context.cpp:435 -#: ../src/box3d-context.cpp:442 -#: ../src/box3d-context.cpp:449 -#: ../src/box3d-context.cpp:456 +#: ../src/box3d-context.cpp:375 ../src/box3d-context.cpp:382 +#: ../src/box3d-context.cpp:389 ../src/box3d-context.cpp:396 +#: ../src/box3d-context.cpp:403 ../src/box3d-context.cpp:410 msgid "Change perspective (angle of PLs)" msgstr "Changer la perspective (angle des LP)" #. status text -#: ../src/box3d-context.cpp:640 +#: ../src/box3d-context.cpp:588 msgid "<b>3D Box</b>; with <b>Shift</b> to extrude along the Z axis" msgstr "<b>Boîte 3D</b>. Utiliser <b>Maj</b> pour extruder suivant Z" -#: ../src/box3d-context.cpp:668 +#: ../src/box3d-context.cpp:614 msgid "Create 3D box" msgstr "Créer une boîte 3D" -#: ../src/box3d.cpp:292 -msgid "<b>3D Box</b>" -msgstr "<b>Boîte 3D</b>" +#. 3D box +#: ../src/box3d.cpp:259 ../src/box3d.cpp:1329 +#: ../src/ui/dialog/inkscape-preferences.cpp:398 +msgid "3D Box" +msgstr "Boîte 3D" -#: ../src/color-profile.cpp:895 +#: ../src/color-profile.cpp:850 #, fuzzy, c-format msgid "Color profiles directory (%s) is unavailable." msgstr "Le dossier des palettes (%s) est indisponible." -#: ../src/color-profile.cpp:954 -#: ../src/color-profile.cpp:971 +#: ../src/color-profile.cpp:909 ../src/color-profile.cpp:926 msgid "(invalid UTF-8 string)" msgstr "(chaîne UTF-8 invalide)" -#: ../src/color-profile.cpp:956 -#: ../src/filter-enums.cpp:94 +#: ../src/color-profile.cpp:911 ../src/filter-enums.cpp:94 #: ../src/live_effects/lpe-ruler.cpp:32 #: ../src/ui/dialog/filter-effects-dialog.cpp:518 #: ../src/ui/dialog/inkscape-preferences.cpp:332 #: ../src/ui/dialog/inkscape-preferences.cpp:641 -#: ../src/ui/dialog/inkscape-preferences.cpp:1255 -#: ../src/ui/dialog/inkscape-preferences.cpp:1419 -#: ../src/ui/dialog/inkscape-preferences.cpp:1817 -#: ../src/ui/dialog/input.cpp:742 -#: ../src/ui/dialog/input.cpp:743 -#: ../src/ui/dialog/input.cpp:1571 -#: ../src/ui/dialog/input.cpp:1625 -#: ../src/verbs.cpp:2293 -#: ../src/widgets/gradient-toolbar.cpp:1128 -#: ../src/widgets/pencil-toolbar.cpp:189 +#: ../src/ui/dialog/inkscape-preferences.cpp:1259 +#: ../src/ui/dialog/inkscape-preferences.cpp:1423 +#: ../src/ui/dialog/inkscape-preferences.cpp:1821 +#: ../src/ui/dialog/input.cpp:742 ../src/ui/dialog/input.cpp:743 +#: ../src/ui/dialog/input.cpp:1571 ../src/ui/dialog/input.cpp:1625 +#: ../src/verbs.cpp:2352 ../src/widgets/gradient-toolbar.cpp:1129 +#: ../src/widgets/pencil-toolbar.cpp:184 +#: ../src/widgets/stroke-marker-selector.cpp:388 #: ../share/extensions/gcodetools_area.inx.h:48 #: ../share/extensions/gcodetools_dxf_points.inx.h:20 #: ../share/extensions/gcodetools_engraving.inx.h:26 #: ../share/extensions/gcodetools_graffiti.inx.h:37 #: ../share/extensions/gcodetools_lathe.inx.h:41 #: ../share/extensions/gcodetools_path_to_gcode.inx.h:30 -#: ../share/extensions/grid_polar.inx.h:4 -#: ../share/extensions/guides_creator.inx.h:7 -#: ../share/extensions/scour.inx.h:18 +#: ../share/extensions/grid_polar.inx.h:4 ../share/extensions/scour.inx.h:18 msgid "None" msgstr "Aucun" -#: ../src/connector-context.cpp:585 +#: ../src/connector-context.cpp:544 msgid "Creating new connector" msgstr "Création d'un nouveau connecteur" -#: ../src/connector-context.cpp:840 +#: ../src/connector-context.cpp:799 msgid "Connector endpoint drag cancelled." msgstr "Déplacement de fin de connecteur annulé." -#: ../src/connector-context.cpp:887 +#: ../src/connector-context.cpp:846 msgid "Reroute connector" msgstr "Rerouter un connecteur" -#: ../src/connector-context.cpp:1052 +#: ../src/connector-context.cpp:1013 msgid "Create connector" msgstr "Créer un connecteur" -#: ../src/connector-context.cpp:1075 +#: ../src/connector-context.cpp:1036 msgid "Finishing connector" msgstr "Tracé du connecteur terminé" -#: ../src/connector-context.cpp:1311 +#: ../src/connector-context.cpp:1272 msgid "<b>Connector endpoint</b>: drag to reroute or connect to new shapes" -msgstr "<b>Fin de connecteur</b> : déplacer pour rerouter ou connecter à de nouvelles formes" +msgstr "" +"<b>Fin de connecteur</b> : déplacer pour rerouter ou connecter à de " +"nouvelles formes" -#: ../src/connector-context.cpp:1451 +#: ../src/connector-context.cpp:1412 msgid "Select <b>at least one non-connector object</b>." msgstr "Sélectionner <b>au moins un objet non connecteur</b>." -#: ../src/connector-context.cpp:1456 -#: ../src/widgets/connector-toolbar.cpp:330 +#: ../src/connector-context.cpp:1417 ../src/widgets/connector-toolbar.cpp:326 msgid "Make connectors avoid selected objects" msgstr "Faire que les connecteurs évitent les objets sélectionnés" -#: ../src/connector-context.cpp:1457 -#: ../src/widgets/connector-toolbar.cpp:340 +#: ../src/connector-context.cpp:1418 ../src/widgets/connector-toolbar.cpp:336 msgid "Make connectors ignore selected objects" msgstr "Faire que les connecteurs ignorent les objets sélectionnés" -#: ../src/context-fns.cpp:36 -#: ../src/context-fns.cpp:65 +#: ../src/context-fns.cpp:36 ../src/context-fns.cpp:65 msgid "<b>Current layer is hidden</b>. Unhide it to be able to draw on it." -msgstr "<b>Le calque courant est caché</b>. Le rendre visible pour pouvoir y dessiner." +msgstr "" +"<b>Le calque courant est caché</b>. Le rendre visible pour pouvoir y " +"dessiner." -#: ../src/context-fns.cpp:42 -#: ../src/context-fns.cpp:71 +#: ../src/context-fns.cpp:42 ../src/context-fns.cpp:71 msgid "<b>Current layer is locked</b>. Unlock it to be able to draw on it." -msgstr "<b>Le calque courant est verrouillé</b>. Le déverrouiller pour pouvoir y dessiner." +msgstr "" +"<b>Le calque courant est verrouillé</b>. Le déverrouiller pour pouvoir y " +"dessiner." -#: ../src/desktop-events.cpp:228 +#: ../src/desktop.cpp:925 +msgid "No previous zoom." +msgstr "Plus de zoom précédent." + +#: ../src/desktop.cpp:946 +msgid "No next zoom." +msgstr "Plus de zoom suivant." + +#: ../src/desktop-events.cpp:225 msgid "Create guide" msgstr "Créer un guide" -#: ../src/desktop-events.cpp:473 +#: ../src/desktop-events.cpp:470 msgid "Move guide" msgstr "Déplacer le guide" -#: ../src/desktop-events.cpp:480 -#: ../src/desktop-events.cpp:538 +#: ../src/desktop-events.cpp:477 ../src/desktop-events.cpp:535 #: ../src/ui/dialog/guides.cpp:144 msgid "Delete guide" msgstr "Supprimer le guide" -#: ../src/desktop-events.cpp:518 +#: ../src/desktop-events.cpp:515 #, c-format msgid "<b>Guideline</b>: %s" msgstr "<b>Ligne de guide</b> : %s" -#: ../src/desktop.cpp:911 -msgid "No previous zoom." -msgstr "Plus de zoom précédent." - -#: ../src/desktop.cpp:932 -msgid "No next zoom." -msgstr "Plus de zoom suivant." - -#: ../src/ui/dialog/clonetiler.cpp:111 -msgid "_Symmetry" -msgstr "_Symétrie" - -#. TRANSLATORS: "translation" means "shift" / "displacement" here. -#: ../src/ui/dialog/clonetiler.cpp:123 -msgid "<b>P1</b>: simple translation" -msgstr "<b>P1</b> : translation" - -#: ../src/ui/dialog/clonetiler.cpp:124 -msgid "<b>P2</b>: 180° rotation" -msgstr "<b>P2</b> : rotation de 180°" - -#: ../src/ui/dialog/clonetiler.cpp:125 -msgid "<b>PM</b>: reflection" -msgstr "<b>PM</b> : réflexion" - -#. TRANSLATORS: "glide reflection" is a reflection and a translation combined. -#. For more info, see http://mathforum.org/sum95/suzanne/symsusan.html -#: ../src/ui/dialog/clonetiler.cpp:128 -msgid "<b>PG</b>: glide reflection" -msgstr "<b>PG</b> : réflexion glissée" - -#: ../src/ui/dialog/clonetiler.cpp:129 -msgid "<b>CM</b>: reflection + glide reflection" -msgstr "<b>CM</b> : réflexion + réflexion glissée" - -#: ../src/ui/dialog/clonetiler.cpp:130 -msgid "<b>PMM</b>: reflection + reflection" -msgstr "<b>PMM</b> : réflexion + réflexion" - -#: ../src/ui/dialog/clonetiler.cpp:131 -msgid "<b>PMG</b>: reflection + 180° rotation" -msgstr "<b>PMG</b> : réflexion + rotation de 180°" - -#: ../src/ui/dialog/clonetiler.cpp:132 -msgid "<b>PGG</b>: glide reflection + 180° rotation" -msgstr "<b>PGG</b> : réflexion glissée + rotation de 180°" - -#: ../src/ui/dialog/clonetiler.cpp:133 -msgid "<b>CMM</b>: reflection + reflection + 180° rotation" -msgstr "<b>CMM</b> : réflexion + réflexion + rotation de 180°" - -#: ../src/ui/dialog/clonetiler.cpp:134 -msgid "<b>P4</b>: 90° rotation" -msgstr "<b>P4</b> : rotation de 90°" - -#: ../src/ui/dialog/clonetiler.cpp:135 -msgid "<b>P4M</b>: 90° rotation + 45° reflection" -msgstr "<b>P4M</b> : rotation de 90° + réflexion à 45°" - -#: ../src/ui/dialog/clonetiler.cpp:136 -msgid "<b>P4G</b>: 90° rotation + 90° reflection" -msgstr "<b>P4G</b> : rotation de 90° + réflexion à 90°" - -#: ../src/ui/dialog/clonetiler.cpp:137 -msgid "<b>P3</b>: 120° rotation" -msgstr "<b>P3</b> : rotation de 120°" - -#: ../src/ui/dialog/clonetiler.cpp:138 -msgid "<b>P31M</b>: reflection + 120° rotation, dense" -msgstr "<b>P31M</b> : réflexion + rotation de 120°, dense" - -#: ../src/ui/dialog/clonetiler.cpp:139 -msgid "<b>P3M1</b>: reflection + 120° rotation, sparse" -msgstr "<b>P3M1</b> : réflexion + rotation de 120°, clairsemé" - -#: ../src/ui/dialog/clonetiler.cpp:140 -msgid "<b>P6</b>: 60° rotation" -msgstr "<b>P6</b> : rotation de 60°" - -#: ../src/ui/dialog/clonetiler.cpp:141 -msgid "<b>P6M</b>: reflection + 60° rotation" -msgstr "<b>P6M</b> : réflexion + rotation de 60°" - -# See: -# http://www.bib.ulb.ac.be/coursmath/doc/17.htm (visual examples) -# http://membres.lycos.fr/villemingerard/Geometri/Sym1D.htm (French vocabulary) -# http://www.clarku.edu/~djoyce/wallpaper/seventeen.html (English vocabulary) -#: ../src/ui/dialog/clonetiler.cpp:161 -msgid "Select one of the 17 symmetry groups for the tiling" -msgstr "Sélectionner l'un de ces 17 groupes de symétrie pour le pavage" - -#: ../src/ui/dialog/clonetiler.cpp:179 -msgid "S_hift" -msgstr "_Translation" - -#. TRANSLATORS: "shift" means: the tiles will be shifted (offset) horizontally by this amount -#: ../src/ui/dialog/clonetiler.cpp:189 -#, no-c-format -msgid "<b>Shift X:</b>" -msgstr "<b>Translation X :</b>" - -#: ../src/ui/dialog/clonetiler.cpp:197 -#, no-c-format -msgid "Horizontal shift per row (in % of tile width)" -msgstr "Translation horizontale à chaque ligne (en % de la largeur du pavé de base)" - -#: ../src/ui/dialog/clonetiler.cpp:205 -#, no-c-format -msgid "Horizontal shift per column (in % of tile width)" -msgstr "Translation horizontale à chaque colonne (en % de la largeur du pavé de base)" - -#: ../src/ui/dialog/clonetiler.cpp:211 -msgid "Randomize the horizontal shift by this percentage" -msgstr "Introduire ce pourcentage de hasard dans la translation horizontale" - -#. TRANSLATORS: "shift" means: the tiles will be shifted (offset) vertically by this amount -#: ../src/ui/dialog/clonetiler.cpp:221 -#, no-c-format -msgid "<b>Shift Y:</b>" -msgstr "<b>Translation Y :</b>" - -#: ../src/ui/dialog/clonetiler.cpp:229 -#, no-c-format -msgid "Vertical shift per row (in % of tile height)" -msgstr "Translation verticale à chaque ligne (en % de la hauteur du pavé de base)" - -#: ../src/ui/dialog/clonetiler.cpp:237 -#, no-c-format -msgid "Vertical shift per column (in % of tile height)" -msgstr "Translation verticale à chaque colonne (en % de la hauteur du pavé de base)" - -#: ../src/ui/dialog/clonetiler.cpp:244 -msgid "Randomize the vertical shift by this percentage" -msgstr "Introduire ce pourcentage de hasard dans la translation verticale" - -#: ../src/ui/dialog/clonetiler.cpp:252 -#: ../src/ui/dialog/clonetiler.cpp:398 -msgid "<b>Exponent:</b>" -msgstr "<b>Exposant :</b>" - -#: ../src/ui/dialog/clonetiler.cpp:259 -msgid "Whether rows are spaced evenly (1), converge (<1) or diverge (>1)" -msgstr "Selon la valeur, l'inter ligne reste constant (1), converge (<1) ou diverge (>1) " - -#: ../src/ui/dialog/clonetiler.cpp:266 -msgid "Whether columns are spaced evenly (1), converge (<1) or diverge (>1)" -msgstr "Selon la valeur, l'inter colonne reste constant (1), converge (<1) ou diverge (>1) " - -#. TRANSLATORS: "Alternate" is a verb here -#: ../src/ui/dialog/clonetiler.cpp:274 -#: ../src/ui/dialog/clonetiler.cpp:438 -#: ../src/ui/dialog/clonetiler.cpp:514 -#: ../src/ui/dialog/clonetiler.cpp:587 -#: ../src/ui/dialog/clonetiler.cpp:633 -#: ../src/ui/dialog/clonetiler.cpp:760 -msgid "<small>Alternate:</small>" -msgstr "<small>Alterner :</small>" - -#: ../src/ui/dialog/clonetiler.cpp:280 -msgid "Alternate the sign of shifts for each row" -msgstr "Alterner le signe de la translation à chaque ligne" - -#: ../src/ui/dialog/clonetiler.cpp:285 -msgid "Alternate the sign of shifts for each column" -msgstr "Alterner le signe de la translation à chaque colonne" - -#. TRANSLATORS: "Cumulate" is a verb here -#: ../src/ui/dialog/clonetiler.cpp:292 -#: ../src/ui/dialog/clonetiler.cpp:456 -#: ../src/ui/dialog/clonetiler.cpp:532 -msgid "<small>Cumulate:</small>" -msgstr "<small>Cumulatif :</small>" - -#: ../src/ui/dialog/clonetiler.cpp:298 -msgid "Cumulate the shifts for each row" -msgstr "Décalage cumulatif des lignes" - -#: ../src/ui/dialog/clonetiler.cpp:303 -msgid "Cumulate the shifts for each column" -msgstr "Décalage cumulatif des colonnes" - -#. TRANSLATORS: "Cumulate" is a verb here -#: ../src/ui/dialog/clonetiler.cpp:310 -msgid "<small>Exclude tile:</small>" -msgstr "<small>Exclure la taille du pavé :</small>" - -#: ../src/ui/dialog/clonetiler.cpp:316 -msgid "Exclude tile height in shift" -msgstr "Ne pas ajouter la hauteur du pavé au décalage" - -#: ../src/ui/dialog/clonetiler.cpp:321 -msgid "Exclude tile width in shift" -msgstr "Ne pas ajouter la largeur du pavé au décalage" - -#: ../src/ui/dialog/clonetiler.cpp:330 -msgid "Sc_ale" -msgstr "_Dimensions" - -#: ../src/ui/dialog/clonetiler.cpp:338 -msgid "<b>Scale X:</b>" -msgstr "<b>Échelle X :</b>" - -#: ../src/ui/dialog/clonetiler.cpp:346 -#, no-c-format -msgid "Horizontal scale per row (in % of tile width)" -msgstr "Redimensionnement horizontal à chaque ligne (en % de la largeur du pavé de base)" - -#: ../src/ui/dialog/clonetiler.cpp:354 -#, no-c-format -msgid "Horizontal scale per column (in % of tile width)" -msgstr "Redimensionnement horizontal à chaque colonne (en % de la largeur du pavé de base)" - -#: ../src/ui/dialog/clonetiler.cpp:360 -msgid "Randomize the horizontal scale by this percentage" -msgstr "Introduire ce pourcentage de hasard dans le redimensionnement horizontal" - -#: ../src/ui/dialog/clonetiler.cpp:368 -msgid "<b>Scale Y:</b>" -msgstr "<b>Échelle Y :</b>" - -#: ../src/ui/dialog/clonetiler.cpp:376 -#, no-c-format -msgid "Vertical scale per row (in % of tile height)" -msgstr "Redimensionnement vertical à chaque ligne (en % de la hauteur du pavé de base)" - -#: ../src/ui/dialog/clonetiler.cpp:384 -#, no-c-format -msgid "Vertical scale per column (in % of tile height)" -msgstr "Redimensionnement vertical à chaque colonne (en % de la largeur du pavé de base)" - -#: ../src/ui/dialog/clonetiler.cpp:390 -msgid "Randomize the vertical scale by this percentage" -msgstr "Introduire ce pourcentage de hasard dans le redimensionnement vertical" - -#: ../src/ui/dialog/clonetiler.cpp:404 -msgid "Whether row scaling is uniform (1), converge (<1) or diverge (>1)" -msgstr "Selon la valeur, le redimensionnement des lignes est uniforme (1), converge (<1) ou diverge (>1) " - -#: ../src/ui/dialog/clonetiler.cpp:410 -msgid "Whether column scaling is uniform (1), converge (<1) or diverge (>1)" -msgstr "Selon la valeur, le redimensionnement des colonnes est uniforme (1), converge (<1) ou diverge (>1) " - -#: ../src/ui/dialog/clonetiler.cpp:418 -msgid "<b>Base:</b>" -msgstr "<b>Base :</b>" - -#: ../src/ui/dialog/clonetiler.cpp:424 -#: ../src/ui/dialog/clonetiler.cpp:430 -msgid "Base for a logarithmic spiral: not used (0), converge (<1), or diverge (>1)" -msgstr "Base pour une spirale logarithmique : inutilisée (0), converge (<1), ou diverge (>1)" - -#: ../src/ui/dialog/clonetiler.cpp:444 -msgid "Alternate the sign of scales for each row" -msgstr "Alterner le signe du redimensionnement à chaque ligne" - -#: ../src/ui/dialog/clonetiler.cpp:449 -msgid "Alternate the sign of scales for each column" -msgstr "Alterner le signe du redimensionnement à chaque colonne" - -#: ../src/ui/dialog/clonetiler.cpp:462 -msgid "Cumulate the scales for each row" -msgstr "Cumuler le redimensionnement à chaque ligne" - -#: ../src/ui/dialog/clonetiler.cpp:467 -msgid "Cumulate the scales for each column" -msgstr "Cumuler le redimensionnement à chaque colonne" - -#: ../src/ui/dialog/clonetiler.cpp:476 -msgid "_Rotation" -msgstr "_Rotation" - -#: ../src/ui/dialog/clonetiler.cpp:484 -msgid "<b>Angle:</b>" -msgstr "<b>Angle :</b>" - -#: ../src/ui/dialog/clonetiler.cpp:492 -#, no-c-format -msgid "Rotate tiles by this angle for each row" -msgstr "Faire tourner les pavés de cet angle à chaque ligne" - -#: ../src/ui/dialog/clonetiler.cpp:500 -#, no-c-format -msgid "Rotate tiles by this angle for each column" -msgstr "Faire tourner les pavés de cet angle à chaque colonne" - -#: ../src/ui/dialog/clonetiler.cpp:506 -msgid "Randomize the rotation angle by this percentage" -msgstr "Introduire ce pourcentage de hasard dans l'angle de rotation" - -#: ../src/ui/dialog/clonetiler.cpp:520 -msgid "Alternate the rotation direction for each row" -msgstr "Alterner le sens de la rotation à chaque ligne" - -#: ../src/ui/dialog/clonetiler.cpp:525 -msgid "Alternate the rotation direction for each column" -msgstr "Alterner le sens de la rotation à chaque colonne" - -#: ../src/ui/dialog/clonetiler.cpp:538 -msgid "Cumulate the rotation for each row" -msgstr "Cumuler l'angle de rotation à chaque ligne" - -#: ../src/ui/dialog/clonetiler.cpp:543 -msgid "Cumulate the rotation for each column" -msgstr "Cumuler l'angle de rotation à chaque colonne" - -#: ../src/ui/dialog/clonetiler.cpp:552 -msgid "_Blur & opacity" -msgstr "_Flou & opacité" - -#: ../src/ui/dialog/clonetiler.cpp:561 -msgid "<b>Blur:</b>" -msgstr "<b>Flou :</b>" - -#: ../src/ui/dialog/clonetiler.cpp:567 -msgid "Blur tiles by this percentage for each row" -msgstr "Rendre les pavés flous de ce pourcentage à chaque ligne" - -#: ../src/ui/dialog/clonetiler.cpp:573 -msgid "Blur tiles by this percentage for each column" -msgstr "Rendre les pavés flous de ce pourcentage à chaque colonne" - -#: ../src/ui/dialog/clonetiler.cpp:579 -msgid "Randomize the tile blur by this percentage" -msgstr "Introduire ce pourcentage de hasard dans le flou" - -#: ../src/ui/dialog/clonetiler.cpp:593 -msgid "Alternate the sign of blur change for each row" -msgstr "Alterner le signe de la modification de flou à chaque ligne" - -#: ../src/ui/dialog/clonetiler.cpp:598 -msgid "Alternate the sign of blur change for each column" -msgstr "Alterner le signe de la modification de flou à chaque colonne" - -#: ../src/ui/dialog/clonetiler.cpp:607 -msgid "<b>Opacity:</b>" -msgstr "<b>Opacité :</b>" - -#: ../src/ui/dialog/clonetiler.cpp:613 -msgid "Decrease tile opacity by this percentage for each row" -msgstr "Diminuer l'opacité des pavés de ce pourcentage à chaque ligne" - -#: ../src/ui/dialog/clonetiler.cpp:619 -msgid "Decrease tile opacity by this percentage for each column" -msgstr "Diminuer l'opacité des pavés de ce pourcentage à chaque colonne" - -#: ../src/ui/dialog/clonetiler.cpp:625 -msgid "Randomize the tile opacity by this percentage" -msgstr "Introduire ce pourcentage de hasard dans l'opacité" - -#: ../src/ui/dialog/clonetiler.cpp:639 -msgid "Alternate the sign of opacity change for each row" -msgstr "Alterner le signe de la modification d'opacité à chaque ligne" - -#: ../src/ui/dialog/clonetiler.cpp:644 -msgid "Alternate the sign of opacity change for each column" -msgstr "Alterner le signe de la modification d'opacité à chaque colonne" - -#: ../src/ui/dialog/clonetiler.cpp:652 -msgid "Co_lor" -msgstr "Cou_leur" - -#: ../src/ui/dialog/clonetiler.cpp:662 -msgid "Initial color: " -msgstr "Couleur initiale :" - -#: ../src/ui/dialog/clonetiler.cpp:666 -msgid "Initial color of tiled clones" -msgstr "Couleur initiale des clones de pavage" - -#: ../src/ui/dialog/clonetiler.cpp:666 -msgid "Initial color for clones (works only if the original has unset fill or stroke)" -msgstr "Couleur initiale pour les clones (ne fonctionne que si l'original a un remplissage ou un contour indéfini)" - -#: ../src/ui/dialog/clonetiler.cpp:681 -msgid "<b>H:</b>" -msgstr "<b>T :</b>" - -#: ../src/ui/dialog/clonetiler.cpp:687 -msgid "Change the tile hue by this percentage for each row" -msgstr "Modifier la teinte des pavés de ce pourcentage à chaque ligne" - -#: ../src/ui/dialog/clonetiler.cpp:693 -msgid "Change the tile hue by this percentage for each column" -msgstr "Modifier la teinte des pavés de ce pourcentage à chaque colonne" - -#: ../src/ui/dialog/clonetiler.cpp:699 -msgid "Randomize the tile hue by this percentage" -msgstr "Introduire ce pourcentage de hasard dans la modification de teinte" - -#: ../src/ui/dialog/clonetiler.cpp:708 -msgid "<b>S:</b>" -msgstr "<b>S :</b>" - -#: ../src/ui/dialog/clonetiler.cpp:714 -msgid "Change the color saturation by this percentage for each row" -msgstr "Modifier la saturation des pavés de ce pourcentage à chaque ligne" - -#: ../src/ui/dialog/clonetiler.cpp:720 -msgid "Change the color saturation by this percentage for each column" -msgstr "Modifier la saturation des pavés de ce pourcentage à chaque colonne" - -#: ../src/ui/dialog/clonetiler.cpp:726 -msgid "Randomize the color saturation by this percentage" -msgstr "Introduire ce pourcentage de hasard dans la modification de saturation" - -#: ../src/ui/dialog/clonetiler.cpp:734 -msgid "<b>L:</b>" -msgstr "<b>L :</b>" - -#: ../src/ui/dialog/clonetiler.cpp:740 -msgid "Change the color lightness by this percentage for each row" -msgstr "Modifier la luminosité des pavés de ce pourcentage à chaque ligne" - -#: ../src/ui/dialog/clonetiler.cpp:746 -msgid "Change the color lightness by this percentage for each column" -msgstr "Modifier la luminosité des pavés de ce pourcentage à chaque colonne" - -#: ../src/ui/dialog/clonetiler.cpp:752 -msgid "Randomize the color lightness by this percentage" -msgstr "Introduire ce pourcentage de hasard dans la modification de luminosité" - -#: ../src/ui/dialog/clonetiler.cpp:766 -msgid "Alternate the sign of color changes for each row" -msgstr "Alterner le signe de la modification de couleur à chaque ligne" - -#: ../src/ui/dialog/clonetiler.cpp:771 -msgid "Alternate the sign of color changes for each column" -msgstr "Alterner le signe de la modification de couleur à chaque colonne" - -#: ../src/ui/dialog/clonetiler.cpp:779 -msgid "_Trace" -msgstr "_Calquer" - -#: ../src/ui/dialog/clonetiler.cpp:791 -msgid "Trace the drawing under the tiles" -msgstr "Calquer depuis le dessin sous les pavés" - -#: ../src/ui/dialog/clonetiler.cpp:795 -msgid "For each clone, pick a value from the drawing in that clone's location and apply it to the clone" -msgstr "Pour chaque clone, capturer une valeur du dessin à l'emplacement du clone et l'appliquer au clone" - -#: ../src/ui/dialog/clonetiler.cpp:814 -msgid "1. Pick from the drawing:" -msgstr "1. Capturer depuis le dessin :" - -#: ../src/ui/dialog/clonetiler.cpp:832 -msgid "Pick the visible color and opacity" -msgstr "Capturer la couleur et l'opacité visibles" - -#: ../src/ui/dialog/clonetiler.cpp:839 -#: ../src/ui/dialog/clonetiler.cpp:992 -#: ../src/extension/internal/bitmap/opacity.cpp:38 -#: ../src/extension/internal/filter/blurs.h:333 -#: ../src/extension/internal/filter/transparency.h:279 -#: ../src/widgets/tweak-toolbar.cpp:352 -#: ../share/extensions/interp_att_g.inx.h:16 -msgid "Opacity" -msgstr "Opacité" - -#: ../src/ui/dialog/clonetiler.cpp:840 -msgid "Pick the total accumulated opacity" -msgstr "Capturer l'opacité cumulée" - -# Red (in RGB) -#: ../src/ui/dialog/clonetiler.cpp:847 -msgid "R" -msgstr "R" - -#: ../src/ui/dialog/clonetiler.cpp:848 -msgid "Pick the Red component of the color" -msgstr "Capturer la composante Rouge de la couleur" - -# Green (in RGB) -#: ../src/ui/dialog/clonetiler.cpp:855 -msgid "G" -msgstr "V" - -#: ../src/ui/dialog/clonetiler.cpp:856 -msgid "Pick the Green component of the color" -msgstr "Capturer la composante Verte de la couleur" - -# Blue (in RGB) -#: ../src/ui/dialog/clonetiler.cpp:863 -msgid "B" -msgstr "B" - -#: ../src/ui/dialog/clonetiler.cpp:864 -msgid "Pick the Blue component of the color" -msgstr "Capturer la composante Bleue de la couleur" - -#: ../src/ui/dialog/clonetiler.cpp:871 -msgctxt "Clonetiler color hue" -msgid "H" -msgstr "T" - -#: ../src/ui/dialog/clonetiler.cpp:872 -msgid "Pick the hue of the color" -msgstr "Capturer la teinte de la couleur" - -# Saturation (in HSL) -#: ../src/ui/dialog/clonetiler.cpp:879 -msgctxt "Clonetiler color saturation" -msgid "S" -msgstr "S" - -#: ../src/ui/dialog/clonetiler.cpp:880 -msgid "Pick the saturation of the color" -msgstr "Capturer la saturation de la couleur" - -# Luminosity (in HSL) -#: ../src/ui/dialog/clonetiler.cpp:887 -msgctxt "Clonetiler color lightness" -msgid "L" -msgstr "L" - -#: ../src/ui/dialog/clonetiler.cpp:888 -msgid "Pick the lightness of the color" -msgstr "Capturer la luminosité de la couleur" - -#: ../src/ui/dialog/clonetiler.cpp:898 -msgid "2. Tweak the picked value:" -msgstr "2. Modifier la valeur capturée" - -#: ../src/ui/dialog/clonetiler.cpp:915 -msgid "Gamma-correct:" -msgstr "Corriger le Gamma" - -#: ../src/ui/dialog/clonetiler.cpp:919 -msgid "Shift the mid-range of the picked value upwards (>0) or downwards (<0)" -msgstr "Décaler le milieu de la valeur capturée vers le haut (>0) ou vers le bas (<0)" - -#: ../src/ui/dialog/clonetiler.cpp:926 -msgid "Randomize:" -msgstr "Hasard :" - -#: ../src/ui/dialog/clonetiler.cpp:930 -msgid "Randomize the picked value by this percentage" -msgstr "Introduire ce pourcentage de hasard dans la capture de la valeur" - -#: ../src/ui/dialog/clonetiler.cpp:937 -msgid "Invert:" -msgstr "Inverser :" - -#: ../src/ui/dialog/clonetiler.cpp:941 -msgid "Invert the picked value" -msgstr "Inverser la valeur capturée" - -#: ../src/ui/dialog/clonetiler.cpp:947 -msgid "3. Apply the value to the clones':" -msgstr "3. Appliquer la valeur aux clones :" - -#: ../src/ui/dialog/clonetiler.cpp:962 -msgid "Presence" -msgstr "Présence" - -#: ../src/ui/dialog/clonetiler.cpp:965 -msgid "Each clone is created with the probability determined by the picked value in that point" -msgstr "Chaque clone est créé selon une probabilité déterminée par la valeur capturée en ce point" - -#: ../src/ui/dialog/clonetiler.cpp:972 -msgid "Size" -msgstr "Dimensions" - -#: ../src/ui/dialog/clonetiler.cpp:975 -msgid "Each clone's size is determined by the picked value in that point" -msgstr "Les dimensions de chaque clone sont déterminées selon la valeur capturée en ce point " - -#: ../src/ui/dialog/clonetiler.cpp:985 -msgid "Each clone is painted by the picked color (the original must have unset fill or stroke)" -msgstr "Chaque clone est peint selon la couleur capturée (l'original doit avoir un remplissage ou un contour indéfini)" - -#: ../src/ui/dialog/clonetiler.cpp:995 -msgid "Each clone's opacity is determined by the picked value in that point" -msgstr "L'opacité de chaque clone est déterminée par la valeur capturée en ce point" - -#: ../src/ui/dialog/clonetiler.cpp:1043 -msgid "How many rows in the tiling" -msgstr "Nombre de lignes du pavage" - -#: ../src/ui/dialog/clonetiler.cpp:1073 -msgid "How many columns in the tiling" -msgstr "Nombre de colonnes du pavage" - -#: ../src/ui/dialog/clonetiler.cpp:1117 -msgid "Width of the rectangle to be filled" -msgstr "Largeur du rectangle à remplir" - -#: ../src/ui/dialog/clonetiler.cpp:1151 -msgid "Height of the rectangle to be filled" -msgstr "Hauteur du rectangle à remplir" - -#: ../src/ui/dialog/clonetiler.cpp:1168 -msgid "Rows, columns: " -msgstr "Lignes, colonnes :" - -#: ../src/ui/dialog/clonetiler.cpp:1169 -msgid "Create the specified number of rows and columns" -msgstr "Créer le nombre spécifié de lignes et de colonnes" - -#: ../src/ui/dialog/clonetiler.cpp:1178 -msgid "Width, height: " -msgstr "Largeur, hauteur :" - -#: ../src/ui/dialog/clonetiler.cpp:1179 -msgid "Fill the specified width and height with the tiling" -msgstr "Remplir avec le pavage selon la hauteur et la largeur spécifiées" - -#: ../src/ui/dialog/clonetiler.cpp:1200 -msgid "Use saved size and position of the tile" -msgstr "Utiliser les dimensions et position enregistrées du pavage" - -#: ../src/ui/dialog/clonetiler.cpp:1203 -msgid "Pretend that the size and position of the tile are the same as the last time you tiled it (if any), instead of using the current size" -msgstr "Utiliser les mêmes dimensions et position de pavés que lors du pavage précédent (si possible), au lieu d'utiliser les paramètres courants" - -#: ../src/ui/dialog/clonetiler.cpp:1237 -msgid " <b>_Create</b> " -msgstr " <b>_Créer</b> " - -#: ../src/ui/dialog/clonetiler.cpp:1239 -msgid "Create and tile the clones of the selection" -msgstr "Créer des clones et paver la sélection avec" - -#. TRANSLATORS: if a group of objects are "clumped" together, then they -#. are unevenly spread in the given amount of space - as shown in the -#. diagrams on the left in the following screenshot: -#. http://www.inkscape.org/screenshots/gallery/inkscape-0.42-CVS-tiles-unclump.png -#. So unclumping is the process of spreading a number of objects out more evenly. -#: ../src/ui/dialog/clonetiler.cpp:1259 -msgid " _Unclump " -msgstr "É_parpiller" - -#: ../src/ui/dialog/clonetiler.cpp:1260 -msgid "Spread out clones to reduce clumping; can be applied repeatedly" -msgstr "Disperser les clones de façon à reduire le rassemblement; peut être appliqué plusieurs fois" - -#: ../src/ui/dialog/clonetiler.cpp:1266 -msgid " Re_move " -msgstr "_Supprimer" - -#: ../src/ui/dialog/clonetiler.cpp:1267 -msgid "Remove existing tiled clones of the selected object (siblings only)" -msgstr "Retirer les clones de pavage de l'objet sélectionné (seulement les « enfants de mêmes parents »)" - -#: ../src/ui/dialog/clonetiler.cpp:1283 -msgid " R_eset " -msgstr " R-à -_z" - -#. TRANSLATORS: "change" is a noun here -#: ../src/ui/dialog/clonetiler.cpp:1285 -msgid "Reset all shifts, scales, rotates, opacity and color changes in the dialog to zero" -msgstr "Remise à zéro de tous les décalages, redimensionnements, rotation et opacités dans la boîte de dialogue" - -#: ../src/ui/dialog/clonetiler.cpp:1358 -msgid "<small>Nothing selected.</small>" -msgstr "<small>Aucune sélection.</small>" - -#: ../src/ui/dialog/clonetiler.cpp:1364 -msgid "<small>More than one object selected.</small>" -msgstr "<small>Plus d'un objet est sélectionné.</small>" - -#: ../src/ui/dialog/clonetiler.cpp:1371 -#, c-format -msgid "<small>Object has <b>%d</b> tiled clones.</small>" -msgstr "<small>L'objet possède <b>%d</b> clones de pavage.</small>" - -#: ../src/ui/dialog/clonetiler.cpp:1376 -msgid "<small>Object has no tiled clones.</small>" -msgstr "<small>L'objet ne possède aucun clone de pavage.</small>" - -#: ../src/ui/dialog/clonetiler.cpp:2096 -msgid "Select <b>one object</b> whose tiled clones to unclump." -msgstr "Sélectionner <b>un objet</b> pour en éparpiller les clones de pavage." - -#: ../src/ui/dialog/clonetiler.cpp:2118 -msgid "Unclump tiled clones" -msgstr "Éparpiller les clones de pavage" - -#: ../src/ui/dialog/clonetiler.cpp:2147 -msgid "Select <b>one object</b> whose tiled clones to remove." -msgstr "Sélectionner <b>un objet</b> pour en retirer les clones de pavage." - -#: ../src/ui/dialog/clonetiler.cpp:2170 -msgid "Delete tiled clones" -msgstr "Supprimer les clones de pavage" - -#: ../src/ui/dialog/clonetiler.cpp:2217 -#: ../src/selection-chemistry.cpp:2501 -msgid "Select an <b>object</b> to clone." -msgstr "Sélectionner un <b>objet</b> à cloner." - -#: ../src/ui/dialog/clonetiler.cpp:2223 -msgid "If you want to clone several objects, <b>group</b> them and <b>clone the group</b>." -msgstr "Si vous voulez cloner plusieurs objets, <b>groupez</b>-les puis <b>clonez le groupe</b>." - -#: ../src/ui/dialog/clonetiler.cpp:2232 -msgid "<small>Creating tiled clones...</small>" -msgstr "<small>Création d'un pavage de clones...</small>" - -#: ../src/ui/dialog/clonetiler.cpp:2637 -msgid "Create tiled clones" -msgstr "Créer un pavage avec des clones" - -#: ../src/ui/dialog/clonetiler.cpp:2870 -msgid "<small>Per row:</small>" -msgstr "<small>Par ligne :</small>" - -#: ../src/ui/dialog/clonetiler.cpp:2888 -msgid "<small>Per column:</small>" -msgstr "<small>Par colonne :</small>" - -#: ../src/ui/dialog/clonetiler.cpp:2896 -msgid "<small>Randomize:</small>" -msgstr "<small>Hasard :</small>" - -#: ../src/ui/dialog/export.cpp:150 -#: ../src/verbs.cpp:2737 -msgid "_Page" -msgstr "_Page" - -#: ../src/ui/dialog/export.cpp:150 -#: ../src/verbs.cpp:2741 -msgid "_Drawing" -msgstr "_Dessin" - -#: ../src/ui/dialog/export.cpp:150 -#: ../src/verbs.cpp:2743 -msgid "_Selection" -msgstr "_Sélection" - -#: ../src/ui/dialog/export.cpp:150 -msgid "_Custom" -msgstr "P_ersonnalisée" - -#: ../src/ui/dialog/export.cpp:166 -#: ../src/widgets/measure-toolbar.cpp:115 -#: ../src/widgets/measure-toolbar.cpp:123 -#: ../share/extensions/render_gears.inx.h:6 -msgid "Units:" -msgstr "Unités :" - -#: ../src/ui/dialog/export.cpp:168 -msgid "_Export As..." -msgstr "E_xporter sous..." - -#: ../src/ui/dialog/export.cpp:171 -msgid "B_atch export all selected objects" -msgstr "Exporter les _objets sélectionnés en un lot" - -#: ../src/ui/dialog/export.cpp:171 -msgid "Export each selected object into its own PNG file, using export hints if any (caution, overwrites without asking!)" -msgstr "Exporter chaque objet de la sélection dans son fichier PNG, en tenant compte des indications d'export (attention, écrase les fichiers sans demander de confirmation !)" - -#: ../src/ui/dialog/export.cpp:173 -msgid "Hide a_ll except selected" -msgstr "_Cacher tout sauf la sélection" - -#: ../src/ui/dialog/export.cpp:173 -msgid "In the exported image, hide all objects except those that are selected" -msgstr "Dans l'image exportée, cacher tous les objets qui ne sont pas sélectionnés" - -#: ../src/ui/dialog/export.cpp:174 -msgid "Close when complete" -msgstr "Fermer cette boîte de dialogue" - -#: ../src/ui/dialog/export.cpp:174 -msgid "Once the export completes, close this dialog" -msgstr "Fermer cette boîte de dialogue une fois l'exportation terminée" - -#: ../src/ui/dialog/export.cpp:176 -msgid "_Export" -msgstr "_Exporter" - -#: ../src/ui/dialog/export.cpp:194 -msgid "<b>Export area</b>" -msgstr "<b>Zone à exporter</b>" - -#: ../src/ui/dialog/export.cpp:230 -msgid "_x0:" -msgstr "_x0 :" - -#: ../src/ui/dialog/export.cpp:234 -msgid "x_1:" -msgstr "x_1 :" - -#: ../src/ui/dialog/export.cpp:238 -msgid "Wid_th:" -msgstr "La_rgeur :" - -#: ../src/ui/dialog/export.cpp:242 -msgid "_y0:" -msgstr "_y0 :" - -#: ../src/ui/dialog/export.cpp:246 -msgid "y_1:" -msgstr "y_1 :" - -#: ../src/ui/dialog/export.cpp:250 -msgid "Hei_ght:" -msgstr "Hau_teur :" - -#: ../src/ui/dialog/export.cpp:265 -msgid "<b>Image size</b>" -msgstr "<b>Taille de l'image</b>" - -#: ../src/ui/dialog/export.cpp:283 -#: ../src/live_effects/lpe-bendpath.cpp:54 -#: ../src/live_effects/lpe-patternalongpath.cpp:62 -#: ../src/ui/dialog/transformation.cpp:79 -#: ../src/ui/widget/page-sizer.cpp:238 -msgid "_Width:" -msgstr "_Largeur :" - -#: ../src/ui/dialog/export.cpp:283 -#: ../src/ui/dialog/export.cpp:294 -msgid "pixels at" -msgstr "pixels à " - -#: ../src/ui/dialog/export.cpp:289 -msgid "dp_i" -msgstr "_ppp" - -#: ../src/ui/dialog/export.cpp:294 -#: ../src/ui/dialog/transformation.cpp:81 -#: ../src/ui/widget/page-sizer.cpp:239 -msgid "_Height:" -msgstr "_Hauteur :" - -#: ../src/ui/dialog/export.cpp:302 -#: ../src/ui/dialog/inkscape-preferences.cpp:1432 -#: ../src/ui/dialog/inkscape-preferences.cpp:1435 -#: ../src/ui/dialog/inkscape-preferences.cpp:1447 -msgid "dpi" -msgstr "ppp" - -#: ../src/ui/dialog/export.cpp:310 -msgid "<b>_Filename</b>" -msgstr "<b>Nom de _fichier</b>" - -#: ../src/ui/dialog/export.cpp:352 -msgid "Export the bitmap file with these settings" -msgstr "Exporter le fichier bitmap avec ces réglages" - -#: ../src/ui/dialog/export.cpp:606 -#, c-format -msgid "B_atch export %d selected object" -msgid_plural "B_atch export %d selected objects" -msgstr[0] "Exporter %d _objet sélectionné en lot" -msgstr[1] "Exporter les %d _objets sélectionnés en lot" - -#: ../src/ui/dialog/export.cpp:922 -msgid "Export in progress" -msgstr "Export en cours" - -#: ../src/ui/dialog/export.cpp:1006 -msgid "No items selected." -msgstr "Aucun élément sélectionné." - -#: ../src/ui/dialog/export.cpp:1010 -#: ../src/ui/dialog/export.cpp:1012 -msgid "Exporting %1 files" -msgstr "Exportation de %1 fichiers" - -#: ../src/ui/dialog/export.cpp:1052 -#: ../src/ui/dialog/export.cpp:1054 -#, c-format -msgid "Exporting file <b>%s</b>..." -msgstr "Exportation du fichier <b>%s</b> en cours" - -#: ../src/ui/dialog/export.cpp:1063 -#: ../src/ui/dialog/export.cpp:1154 -#, c-format -msgid "Could not export to filename %s.\n" -msgstr "Impossible d'exporter dans le fichier %s.\n" - -#: ../src/ui/dialog/export.cpp:1066 -#, c-format -msgid "Could not export to filename <b>%s</b>." -msgstr "Impossible d'exporter dans le fichier <b>%s</b>." - -#: ../src/ui/dialog/export.cpp:1081 -#, c-format -msgid "Successfully exported <b>%d</b> files from <b>%d</b> selected items." -msgstr "<b>%d</b> fichiers ont été exportés à partir des <b>%d</b> objets sélectionnés." - -#: ../src/ui/dialog/export.cpp:1092 -msgid "You have to enter a filename." -msgstr "Vous devez entrer un nom de fichier." - -#: ../src/ui/dialog/export.cpp:1093 -msgid "You have to enter a filename" -msgstr "Vous devez entrer un nom de fichier" - -#: ../src/ui/dialog/export.cpp:1107 -msgid "The chosen area to be exported is invalid." -msgstr "La zone à exporter choisie n'est pas valide." - -#: ../src/ui/dialog/export.cpp:1108 -msgid "The chosen area to be exported is invalid" -msgstr "La zone à exporter choisie n'est pas valide" - -#: ../src/ui/dialog/export.cpp:1123 -#, c-format -msgid "Directory %s does not exist or is not a directory.\n" -msgstr "Le dossier %s n'existe pas ou n'est pas un dossier.\n" - -#. TRANSLATORS: %1 will be the filename, %2 the width, and %3 the height of the image -#: ../src/ui/dialog/export.cpp:1137 -#: ../src/ui/dialog/export.cpp:1139 -msgid "Exporting %1 (%2 x %3)" -msgstr "Exportation %s1(%2 x %3) en cours" - -#: ../src/ui/dialog/export.cpp:1165 -#, c-format -msgid "Drawing exported to <b>%s</b>." -msgstr "Dessin exporté vers <b>%s</b>." - -#: ../src/ui/dialog/export.cpp:1169 -msgid "Export aborted." -msgstr "Exportation annulée." - -#: ../src/ui/dialog/export.cpp:1287 -#: ../src/ui/dialog/export.cpp:1321 -#: ../src/shortcuts.cpp:336 -msgid "Select a filename for exporting" -msgstr "Sélectionner un nom de fichier pour exporter" - -#: ../src/ui/dialog/spellcheck.cpp:73 -msgid "_Accept" -msgstr "_Accepter" - -#: ../src/ui/dialog/spellcheck.cpp:74 -msgid "_Ignore once" -msgstr "_Ignorer cette fois" - -#: ../src/ui/dialog/spellcheck.cpp:75 -msgid "_Ignore" -msgstr "_Ignorer" - -#: ../src/ui/dialog/spellcheck.cpp:76 -msgid "A_dd" -msgstr "A_jouter" - -#: ../src/ui/dialog/spellcheck.cpp:78 -msgid "_Stop" -msgstr "_Arrêter" - -#: ../src/ui/dialog/spellcheck.cpp:79 -msgid "_Start" -msgstr "_Démarrer" - -#: ../src/ui/dialog/spellcheck.cpp:109 -msgid "Suggestions:" -msgstr "Proposition :" - -#: ../src/ui/dialog/spellcheck.cpp:124 -msgid "Accept the chosen suggestion" -msgstr "Accepter la proposition choisie" - -#: ../src/ui/dialog/spellcheck.cpp:125 -msgid "Ignore this word only once" -msgstr "Ignorer le mot uniquement cette fois-ci" - -#: ../src/ui/dialog/spellcheck.cpp:126 -msgid "Ignore this word in this session" -msgstr "Ignorer le mot dans cette session" - -#: ../src/ui/dialog/spellcheck.cpp:127 -msgid "Add this word to the chosen dictionary" -msgstr "Ajouter ce mot dans le dictionnaire de votre choix" - -#: ../src/ui/dialog/spellcheck.cpp:141 -msgid "Stop the check" -msgstr "Arrêter la vérification" - -#: ../src/ui/dialog/spellcheck.cpp:142 -msgid "Start the check" -msgstr "Démarrer la vérification" - -#: ../src/ui/dialog/spellcheck.cpp:460 -#, c-format -msgid "<b>Finished</b>, <b>%d</b> words added to dictionary" -msgstr "<b>Terminé</b> ; <b>%d</b> mots ont été ajoutés au dictionnaire" - -#: ../src/ui/dialog/spellcheck.cpp:462 -#, c-format -msgid "<b>Finished</b>, nothing suspicious found" -msgstr "<b>Terminé</b> ; aucune faute n'a été détectée" - -#: ../src/ui/dialog/spellcheck.cpp:578 -#, c-format -msgid "Not in dictionary (%s): <b>%s</b>" -msgstr "Le dictionnaire %s ne contient pas le mot <b>%s</b>" - -#: ../src/ui/dialog/spellcheck.cpp:725 -msgid "<i>Checking...</i>" -msgstr "<i>Vérification...</i>" - -#: ../src/ui/dialog/spellcheck.cpp:794 -msgid "Fix spelling" -msgstr "Corriger l'orthographe" - -#: ../src/ui/dialog/text-edit.cpp:70 -#: ../src/ui/dialog/svg-fonts-dialog.cpp:908 -msgid "_Font" -msgstr "_Police" - -#: ../src/ui/dialog/text-edit.cpp:72 -#: ../src/menus-skeleton.h:249 -#: ../src/ui/dialog/find.cpp:77 -msgid "_Text" -msgstr "_Texte" - -#: ../src/ui/dialog/text-edit.cpp:73 -msgid "Set as _default" -msgstr "Définir comme valeur par _défaut" - -# Do not try to translate. This is a test string used in text and font dialog, when no text has been typed in order to get a preview of the font. -# Simply copying it. -#: ../src/ui/dialog/text-edit.cpp:87 -msgid "AaBbCcIiPpQq12369$€¢?.;/()" -msgstr "AaBbCcIiPpQq12369$€¢?.;/()" - -#. Align buttons -#: ../src/ui/dialog/text-edit.cpp:97 -#: ../src/widgets/text-toolbar.cpp:1358 -#: ../src/widgets/text-toolbar.cpp:1359 -msgid "Align left" -msgstr "Aligner à gauche" - -#: ../src/ui/dialog/text-edit.cpp:98 -#: ../src/widgets/text-toolbar.cpp:1366 -#: ../src/widgets/text-toolbar.cpp:1367 -msgid "Align center" -msgstr "Centrer" - -#: ../src/ui/dialog/text-edit.cpp:99 -#: ../src/widgets/text-toolbar.cpp:1374 -#: ../src/widgets/text-toolbar.cpp:1375 -msgid "Align right" -msgstr "Aligner à droite" - -#: ../src/ui/dialog/text-edit.cpp:100 -#: ../src/widgets/text-toolbar.cpp:1383 -msgid "Justify (only flowed text)" -msgstr "Justifier (texte encadré seulement)" - -#. Direction buttons -#: ../src/ui/dialog/text-edit.cpp:109 -#: ../src/widgets/text-toolbar.cpp:1418 -msgid "Horizontal text" -msgstr "Texte horizontal" - -#: ../src/ui/dialog/text-edit.cpp:110 -#: ../src/widgets/text-toolbar.cpp:1425 -msgid "Vertical text" -msgstr "Texte vertical" - -#: ../src/ui/dialog/text-edit.cpp:130 -#: ../src/ui/dialog/text-edit.cpp:131 -msgid "Spacing between lines (percent of font size)" -msgstr "Espacement entre les lignes (pourcentage de la taille de la police)" - -#: ../src/ui/dialog/text-edit.cpp:147 -#, fuzzy -msgid "Text path offset" -msgstr "Décalage magenta" - -#: ../src/ui/dialog/text-edit.cpp:588 -#: ../src/ui/dialog/text-edit.cpp:662 -#: ../src/text-context.cpp:1518 -msgid "Set text style" -msgstr "Appliquer un style à un texte" - -#: ../src/ui/dialog/xml-tree.cpp:70 -#: ../src/ui/dialog/xml-tree.cpp:123 -msgid "New element node" -msgstr "Nouveau nÅ“ud élément" - -#: ../src/ui/dialog/xml-tree.cpp:71 -#: ../src/ui/dialog/xml-tree.cpp:129 -msgid "New text node" -msgstr "Nouveau nÅ“ud texte" - -#: ../src/ui/dialog/xml-tree.cpp:72 -#: ../src/ui/dialog/xml-tree.cpp:143 -msgid "nodeAsInXMLdialogTooltip|Delete node" -msgstr "Supprimer le nÅ“ud" - -#: ../src/ui/dialog/xml-tree.cpp:73 -#: ../src/ui/dialog/xml-tree.cpp:135 -#: ../src/ui/dialog/xml-tree.cpp:974 -msgid "Duplicate node" -msgstr "Dupliquer le nÅ“ud" - -#: ../src/ui/dialog/xml-tree.cpp:79 -#: ../src/ui/dialog/xml-tree.cpp:188 -#: ../src/ui/dialog/xml-tree.cpp:1010 -msgid "Delete attribute" -msgstr "Supprimer l'attribut" - -#: ../src/ui/dialog/xml-tree.cpp:87 -msgid "Set" -msgstr "Définir" - -#: ../src/ui/dialog/xml-tree.cpp:118 -msgid "Drag to reorder nodes" -msgstr "Cliquer-déplacer pour réorganiser les nÅ“uds" - -#: ../src/ui/dialog/xml-tree.cpp:149 -#: ../src/ui/dialog/xml-tree.cpp:150 -#: ../src/ui/dialog/xml-tree.cpp:1131 -msgid "Unindent node" -msgstr "Désindenter le nÅ“ud" - -#: ../src/ui/dialog/xml-tree.cpp:154 -#: ../src/ui/dialog/xml-tree.cpp:155 -#: ../src/ui/dialog/xml-tree.cpp:1109 -msgid "Indent node" -msgstr "Indenter le nÅ“ud" - -#: ../src/ui/dialog/xml-tree.cpp:159 -#: ../src/ui/dialog/xml-tree.cpp:160 -#: ../src/ui/dialog/xml-tree.cpp:1060 -msgid "Raise node" -msgstr "Monter le nÅ“ud" - -#: ../src/ui/dialog/xml-tree.cpp:164 -#: ../src/ui/dialog/xml-tree.cpp:165 -#: ../src/ui/dialog/xml-tree.cpp:1078 -msgid "Lower node" -msgstr "Descendre le nÅ“ud" - -#: ../src/ui/dialog/xml-tree.cpp:205 -msgid "Attribute name" -msgstr "Nom de l'attribut" - -#: ../src/ui/dialog/xml-tree.cpp:220 -msgid "Attribute value" -msgstr "Valeur de l'attribut" - -#: ../src/ui/dialog/xml-tree.cpp:308 -msgid "<b>Click</b> to select nodes, <b>drag</b> to rearrange." -msgstr "<b>Cliquer</b> pour sélectionner des nÅ“uds, <b>cliquer-déplacer</b> pour les déplacer." - -#: ../src/ui/dialog/xml-tree.cpp:319 -msgid "<b>Click</b> attribute to edit." -msgstr "<b>Cliquer</b> sur les attributs pour pouvoir les éditer." - -#: ../src/ui/dialog/xml-tree.cpp:323 -#, c-format -msgid "Attribute <b>%s</b> selected. Press <b>Ctrl+Enter</b> when done editing to commit changes." -msgstr "Attribut <b>%s</b> sélectionné. Appuyer sur <b>Ctrl+Enter</b> après édition pour valider." - -#: ../src/ui/dialog/xml-tree.cpp:563 -msgid "Drag XML subtree" -msgstr "Déplacer la sous-arborescence XML" - -#: ../src/ui/dialog/xml-tree.cpp:865 -msgid "New element node..." -msgstr "Nouveau nÅ“ud élément..." - -#: ../src/ui/dialog/xml-tree.cpp:903 -msgid "Cancel" -msgstr "Annuler" - -#: ../src/ui/dialog/xml-tree.cpp:909 -msgid "Create" -msgstr "Créer" - -#: ../src/ui/dialog/xml-tree.cpp:940 -msgid "Create new element node" -msgstr "Créer un nouveau nÅ“ud élément" - -#: ../src/ui/dialog/xml-tree.cpp:956 -msgid "Create new text node" -msgstr "Créer un nouveau nÅ“ud texte" - -#: ../src/ui/dialog/xml-tree.cpp:991 -msgid "nodeAsInXMLinHistoryDialog|Delete node" -msgstr "Supprimer le nÅ“ud" - -#: ../src/ui/dialog/xml-tree.cpp:1034 -msgid "Change attribute" -msgstr "Modifier l'attribut" - -#: ../src/display/canvas-axonomgrid.cpp:369 -#: ../src/display/canvas-grid.cpp:746 +#: ../src/display/canvas-axonomgrid.cpp:317 ../src/display/canvas-grid.cpp:693 msgid "Grid _units:" msgstr "_Unités de la grille :" -#: ../src/display/canvas-axonomgrid.cpp:371 -#: ../src/display/canvas-grid.cpp:748 +#: ../src/display/canvas-axonomgrid.cpp:319 ../src/display/canvas-grid.cpp:695 msgid "_Origin X:" msgstr "_Origine X :" -#: ../src/display/canvas-axonomgrid.cpp:371 -#: ../src/display/canvas-grid.cpp:748 +#: ../src/display/canvas-axonomgrid.cpp:319 ../src/display/canvas-grid.cpp:695 #: ../src/ui/dialog/inkscape-preferences.cpp:735 #: ../src/ui/dialog/inkscape-preferences.cpp:760 msgid "X coordinate of grid origin" msgstr "Coordonnée X de l'origine de la grille" -#: ../src/display/canvas-axonomgrid.cpp:373 -#: ../src/display/canvas-grid.cpp:750 +#: ../src/display/canvas-axonomgrid.cpp:321 ../src/display/canvas-grid.cpp:697 msgid "O_rigin Y:" msgstr "O_rigine Y :" -#: ../src/display/canvas-axonomgrid.cpp:373 -#: ../src/display/canvas-grid.cpp:750 +#: ../src/display/canvas-axonomgrid.cpp:321 ../src/display/canvas-grid.cpp:697 #: ../src/ui/dialog/inkscape-preferences.cpp:736 #: ../src/ui/dialog/inkscape-preferences.cpp:761 msgid "Y coordinate of grid origin" msgstr "Coordonnée Y de l'origine de la grille" -#: ../src/display/canvas-axonomgrid.cpp:375 -#: ../src/display/canvas-grid.cpp:754 +#: ../src/display/canvas-axonomgrid.cpp:323 ../src/display/canvas-grid.cpp:701 msgid "Spacing _Y:" msgstr "Espacement _Y :" -#: ../src/display/canvas-axonomgrid.cpp:375 +#: ../src/display/canvas-axonomgrid.cpp:323 #: ../src/ui/dialog/inkscape-preferences.cpp:764 msgid "Base length of z-axis" msgstr "Longueur de base de l'axe z" -#: ../src/display/canvas-axonomgrid.cpp:377 +#: ../src/display/canvas-axonomgrid.cpp:325 #: ../src/ui/dialog/inkscape-preferences.cpp:767 -#: ../src/widgets/box3d-toolbar.cpp:320 +#: ../src/widgets/box3d-toolbar.cpp:315 msgid "Angle X:" msgstr "Angle X :" -#: ../src/display/canvas-axonomgrid.cpp:377 +#: ../src/display/canvas-axonomgrid.cpp:325 #: ../src/ui/dialog/inkscape-preferences.cpp:767 msgid "Angle of x-axis" msgstr "Angle de l'axe x" -#: ../src/display/canvas-axonomgrid.cpp:379 +#: ../src/display/canvas-axonomgrid.cpp:327 #: ../src/ui/dialog/inkscape-preferences.cpp:768 -#: ../src/widgets/box3d-toolbar.cpp:399 +#: ../src/widgets/box3d-toolbar.cpp:394 msgid "Angle Z:" msgstr "Angle Z :" -#: ../src/display/canvas-axonomgrid.cpp:379 +#: ../src/display/canvas-axonomgrid.cpp:327 #: ../src/ui/dialog/inkscape-preferences.cpp:768 msgid "Angle of z-axis" msgstr "Angle de l'axe z" -#: ../src/display/canvas-axonomgrid.cpp:383 -#: ../src/display/canvas-grid.cpp:758 +#: ../src/display/canvas-axonomgrid.cpp:331 ../src/display/canvas-grid.cpp:705 msgid "Minor grid line _color:" msgstr "_Couleur de la grille principale :" -#: ../src/display/canvas-axonomgrid.cpp:383 -#: ../src/display/canvas-grid.cpp:758 +#: ../src/display/canvas-axonomgrid.cpp:331 ../src/display/canvas-grid.cpp:705 #: ../src/ui/dialog/inkscape-preferences.cpp:719 msgid "Minor grid line color" msgstr "Couleur de la grille secondaire" -#: ../src/display/canvas-axonomgrid.cpp:383 -#: ../src/display/canvas-grid.cpp:758 +#: ../src/display/canvas-axonomgrid.cpp:331 ../src/display/canvas-grid.cpp:705 msgid "Color of the minor grid lines" msgstr "Couleur des lignes de la grille secondaire" -#: ../src/display/canvas-axonomgrid.cpp:388 -#: ../src/display/canvas-grid.cpp:763 +#: ../src/display/canvas-axonomgrid.cpp:336 ../src/display/canvas-grid.cpp:710 msgid "Ma_jor grid line color:" msgstr "Couleur de la grille _principale :" -#: ../src/display/canvas-axonomgrid.cpp:388 -#: ../src/display/canvas-grid.cpp:763 +#: ../src/display/canvas-axonomgrid.cpp:336 ../src/display/canvas-grid.cpp:710 #: ../src/ui/dialog/inkscape-preferences.cpp:721 msgid "Major grid line color" msgstr "Couleur de la grille principale" -#: ../src/display/canvas-axonomgrid.cpp:389 -#: ../src/display/canvas-grid.cpp:764 +#: ../src/display/canvas-axonomgrid.cpp:337 ../src/display/canvas-grid.cpp:711 msgid "Color of the major (highlighted) grid lines" msgstr "Couleur des lignes de la grille principale (mise en valeur)" -#: ../src/display/canvas-axonomgrid.cpp:393 -#: ../src/display/canvas-grid.cpp:768 +#: ../src/display/canvas-axonomgrid.cpp:341 ../src/display/canvas-grid.cpp:715 msgid "_Major grid line every:" msgstr "_Grille principale toutes les :" -#: ../src/display/canvas-axonomgrid.cpp:393 -#: ../src/display/canvas-grid.cpp:768 +#: ../src/display/canvas-axonomgrid.cpp:341 ../src/display/canvas-grid.cpp:715 msgid "lines" msgstr "lignes" -#: ../src/display/canvas-grid.cpp:62 +#: ../src/display/canvas-grid.cpp:63 msgid "Rectangular grid" msgstr "Grille rectangulaire" -#: ../src/display/canvas-grid.cpp:63 +#: ../src/display/canvas-grid.cpp:64 msgid "Axonometric grid" msgstr "Grille axonométrique (3D)" -#: ../src/display/canvas-grid.cpp:274 +#: ../src/display/canvas-grid.cpp:275 msgid "Create new grid" msgstr "Créer une nouvelle grille" -#: ../src/display/canvas-grid.cpp:340 +#: ../src/display/canvas-grid.cpp:341 msgid "_Enabled" msgstr "_Activé" -#: ../src/display/canvas-grid.cpp:341 -msgid "Determines whether to snap to this grid or not. Can be 'on' for invisible grids." -msgstr "Cocher pour activer le magnétisme de la grille. Fonctionne aussi avec une grille invisible." +#: ../src/display/canvas-grid.cpp:342 +msgid "" +"Determines whether to snap to this grid or not. Can be 'on' for invisible " +"grids." +msgstr "" +"Cocher pour activer le magnétisme de la grille. Fonctionne aussi avec une " +"grille invisible." -#: ../src/display/canvas-grid.cpp:345 +#: ../src/display/canvas-grid.cpp:346 msgid "Snap to visible _grid lines only" msgstr "Aimanter seulement aux lignes visibles de la _grille" -#: ../src/display/canvas-grid.cpp:346 -msgid "When zoomed out, not all grid lines will be displayed. Only the visible ones will be snapped to" -msgstr "Lorsque le niveau de zoom est diminué, les lignes des grilles ne sont pas toutes affichées. Seules celles qui sont visibles seront aimantées." +#: ../src/display/canvas-grid.cpp:347 +msgid "" +"When zoomed out, not all grid lines will be displayed. Only the visible ones " +"will be snapped to" +msgstr "" +"Lorsque le niveau de zoom est diminué, les lignes des grilles ne sont pas " +"toutes affichées. Seules celles qui sont visibles seront aimantées." -#: ../src/display/canvas-grid.cpp:350 +#: ../src/display/canvas-grid.cpp:351 msgid "_Visible" msgstr "_Visible" -#: ../src/display/canvas-grid.cpp:351 -msgid "Determines whether the grid is displayed or not. Objects are still snapped to invisible grids." -msgstr "Détermine si la grille est affichée ou pas. Le magnétisme fonctionne même avec une grille invisible." +#: ../src/display/canvas-grid.cpp:352 +msgid "" +"Determines whether the grid is displayed or not. Objects are still snapped " +"to invisible grids." +msgstr "" +"Détermine si la grille est affichée ou pas. Le magnétisme fonctionne même " +"avec une grille invisible." -#: ../src/display/canvas-grid.cpp:752 +#: ../src/display/canvas-grid.cpp:699 msgid "Spacing _X:" msgstr "Espacement _X :" -#: ../src/display/canvas-grid.cpp:752 +#: ../src/display/canvas-grid.cpp:699 #: ../src/ui/dialog/inkscape-preferences.cpp:741 msgid "Distance between vertical grid lines" msgstr "Distance entre les lignes verticales de la grille" -#: ../src/display/canvas-grid.cpp:754 +#: ../src/display/canvas-grid.cpp:701 #: ../src/ui/dialog/inkscape-preferences.cpp:742 msgid "Distance between horizontal grid lines" msgstr "Distance entre les lignes horizontales de la grille" -#: ../src/display/canvas-grid.cpp:785 +#: ../src/display/canvas-grid.cpp:732 msgid "_Show dots instead of lines" msgstr "Afficher des point_s plutôt que des lignes" -#: ../src/display/canvas-grid.cpp:786 +#: ../src/display/canvas-grid.cpp:733 msgid "If set, displays dots at gridpoints instead of gridlines" -msgstr "Cocher pour afficher des points sur les points entiers de la grille au lieu de lignes" +msgstr "" +"Cocher pour afficher des points sur les points entiers de la grille au lieu " +"de lignes" #. TRANSLATORS: undefined target for snapping -#: ../src/display/snap-indicator.cpp:72 -#: ../src/display/snap-indicator.cpp:75 -#: ../src/display/snap-indicator.cpp:179 -#: ../src/display/snap-indicator.cpp:182 +#: ../src/display/snap-indicator.cpp:72 ../src/display/snap-indicator.cpp:75 +#: ../src/display/snap-indicator.cpp:179 ../src/display/snap-indicator.cpp:182 msgid "UNDEFINED" msgstr "INDÉFINI" @@ -4904,13 +3797,11 @@ msgstr "Centre de boîte englobante" msgid "Bounding box side midpoint" msgstr "Milieu de bord de boîte englobante" -#: ../src/display/snap-indicator.cpp:194 -#: ../src/ui/tool/node.cpp:1310 +#: ../src/display/snap-indicator.cpp:194 ../src/ui/tool/node.cpp:1315 msgid "Smooth node" msgstr "NÅ“uds doux" -#: ../src/display/snap-indicator.cpp:197 -#: ../src/ui/tool/node.cpp:1309 +#: ../src/display/snap-indicator.cpp:197 ../src/ui/tool/node.cpp:1314 msgid "Cusp node" msgstr "Point de rebroussement" @@ -4966,107 +3857,121 @@ msgstr "Multiple d'espacement de grille" msgid " to " msgstr " à " -#: ../src/document.cpp:491 +#: ../src/document.cpp:507 #, c-format msgid "New document %d" msgstr "Nouveau document %d" -#: ../src/document.cpp:517 +#: ../src/document.cpp:512 +#, fuzzy, c-format +msgid "Memory document %d" +msgstr "Document d'information %1" + +#: ../src/document.cpp:541 msgid "Memory document %1" msgstr "Document d'information %1" -#: ../src/document.cpp:707 +#: ../src/document.cpp:752 #, c-format msgid "Unnamed document %d" msgstr "Document sans nom %d" #. We hit green anchor, closing Green-Blue-Red -#: ../src/draw-context.cpp:537 +#: ../src/draw-context.cpp:490 msgid "Path is closed." msgstr "Le chemin est fermé." #. We hit bot start and end of single curve, closing paths -#: ../src/draw-context.cpp:552 +#: ../src/draw-context.cpp:505 msgid "Closing path." msgstr "Fermeture de chemin." -#: ../src/draw-context.cpp:653 +#: ../src/draw-context.cpp:607 msgid "Draw path" msgstr "Dessiner un chemin" -#: ../src/draw-context.cpp:810 +#: ../src/draw-context.cpp:764 msgid "Creating single dot" msgstr "Création d'un point isolé" -#: ../src/draw-context.cpp:811 +#: ../src/draw-context.cpp:765 msgid "Create single dot" msgstr "Créer un point isolé" #. alpha of color under cursor, to show in the statusbar #. locale-sensitive printf is OK, since this goes to the UI, not into SVG -#: ../src/dropper-context.cpp:324 +#: ../src/dropper-context.cpp:279 #, c-format msgid " alpha %.3g" msgstr " alpha %.3g" #. where the color is picked, to show in the statusbar -#: ../src/dropper-context.cpp:326 +#: ../src/dropper-context.cpp:281 #, c-format msgid ", averaged with radius %d" msgstr ", valeur moyenne dans un rayon de %d" -#: ../src/dropper-context.cpp:326 -#, c-format +#: ../src/dropper-context.cpp:281 msgid " under cursor" msgstr " sous le curseur" #. message, to show in the statusbar -#: ../src/dropper-context.cpp:328 +#: ../src/dropper-context.cpp:283 msgid "<b>Release mouse</b> to set color." msgstr "<b>Relâcher la souris</b> pour appliquer la couleur." -#: ../src/dropper-context.cpp:328 -#: ../src/tools-switch.cpp:231 -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 "<b>Cliquer</b> pour appliquer au remplissage, <b>Maj+clic</b> pour appliquer au contour; <b>cliquer-déplacer</b> pour capturer la couleur moyenne sur une zone; à combiner avec <b>Alt</b> pour capturer la couleur inverse; <b>Ctrl+C</b> pour copier la couleur sous le curseur de la souris vers le presse-papiers " +#: ../src/dropper-context.cpp:283 ../src/tools-switch.cpp:108 +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 "" +"<b>Cliquer</b> pour appliquer au remplissage, <b>Maj+clic</b> pour appliquer " +"au contour; <b>cliquer-déplacer</b> pour capturer la couleur moyenne sur une " +"zone; à combiner avec <b>Alt</b> pour capturer la couleur inverse; <b>Ctrl" +"+C</b> pour copier la couleur sous le curseur de la souris vers le presse-" +"papiers " -#: ../src/dropper-context.cpp:376 +#: ../src/dropper-context.cpp:331 msgid "Set picked color" msgstr "Appliquer la couleur capturée" -#: ../src/dyna-draw-context.cpp:591 -msgid "<b>Guide path selected</b>; start drawing along the guide with <b>Ctrl</b>" -msgstr "<b>Guide sélectionné</b>; commencer à dessiner le long du guide avec <b>Ctrl</b>" +#: ../src/dyna-draw-context.cpp:539 +msgid "" +"<b>Guide path selected</b>; start drawing along the guide with <b>Ctrl</b>" +msgstr "" +"<b>Guide sélectionné</b>; commencer à dessiner le long du guide avec " +"<b>Ctrl</b>" -#: ../src/dyna-draw-context.cpp:593 +#: ../src/dyna-draw-context.cpp:541 msgid "<b>Select a guide path</b> to track with <b>Ctrl</b>" msgstr "Choisir un chemin comme guide avec <b>Ctrl</b>" -#: ../src/dyna-draw-context.cpp:728 +#: ../src/dyna-draw-context.cpp:676 msgid "Tracking: <b>connection to guide path lost!</b>" msgstr "Suivi : <b>Connexion avec le guide perdue !</b>" -#: ../src/dyna-draw-context.cpp:728 +#: ../src/dyna-draw-context.cpp:676 msgid "<b>Tracking</b> a guide path" msgstr "<b>Suivi</b> d'un chemin guide" -#: ../src/dyna-draw-context.cpp:731 +#: ../src/dyna-draw-context.cpp:679 msgid "<b>Drawing</b> a calligraphic stroke" msgstr "<b>Tracé calligraphique</b> en cours" -#: ../src/dyna-draw-context.cpp:1020 +#: ../src/dyna-draw-context.cpp:980 msgid "Draw calligraphic stroke" msgstr "Créer un tracé calligraphique" -#: ../src/eraser-context.cpp:504 +#: ../src/eraser-context.cpp:433 msgid "<b>Drawing</b> an eraser stroke" msgstr "<b>Coup de gomme</b> en cours" -#: ../src/eraser-context.cpp:810 +#: ../src/eraser-context.cpp:766 msgid "Draw eraser stroke" msgstr "Donner un coup de gomme" -#: ../src/event-context.cpp:668 +#: ../src/event-context.cpp:708 #, fuzzy msgid "<b>Space+mouse move</b> to pan canvas" msgstr "<b>Espace+déplacer avec la souris</b> pour bouger la zone de travail" @@ -5076,15 +3981,11 @@ msgid "[Unchanged]" msgstr "[Inchangé]" #. Edit -#: ../src/event-log.cpp:275 -#: ../src/event-log.cpp:278 -#: ../src/verbs.cpp:2329 +#: ../src/event-log.cpp:275 ../src/event-log.cpp:278 ../src/verbs.cpp:2390 msgid "_Undo" msgstr "Ann_uler" -#: ../src/event-log.cpp:285 -#: ../src/event-log.cpp:289 -#: ../src/verbs.cpp:2331 +#: ../src/event-log.cpp:285 ../src/event-log.cpp:289 ../src/verbs.cpp:2392 msgid "_Redo" msgstr "Réta_blir" @@ -5112,21 +4013,27 @@ msgstr " description : " msgid " (No preferences)" msgstr " (Pas de préférences)" -#: ../src/extension/effect.h:70 -#: ../src/verbs.cpp:2102 +#: ../src/extension/effect.h:70 ../src/verbs.cpp:2163 msgid "Extensions" msgstr "Extensions" #. This is some filler text, needs to change before relase #: ../src/extension/error-file.cpp:52 msgid "" -"<span weight=\"bold\" size=\"larger\">One or more extensions failed to load</span>\n" +"<span weight=\"bold\" size=\"larger\">One or more extensions failed to load</" +"span>\n" "\n" -"The failed extensions have been skipped. Inkscape will continue to run normally but those extensions will be unavailable. For details to troubleshoot this problem, please refer to the error log located at: " +"The failed extensions have been skipped. Inkscape will continue to run " +"normally but those extensions will be unavailable. For details to " +"troubleshoot this problem, please refer to the error log located at: " msgstr "" -"<span weight=\"bold\" size=\"larger\">Le chargement d'une ou plusieurs extensions a échoué</span>\n" +"<span weight=\"bold\" size=\"larger\">Le chargement d'une ou plusieurs " +"extensions a échoué</span>\n" "\n" -"Les extensions défectueuses ont été ignorées. Inkscape va continuer à fonctionner normalement, mais ces extensions seront indisponibles. Pour plus de détails concernant ce problème, référez-vous à l'historique (log) des messages d'erreur : " +"Les extensions défectueuses ont été ignorées. Inkscape va continuer à " +"fonctionner normalement, mais ces extensions seront indisponibles. Pour plus " +"de détails concernant ce problème, référez-vous à l'historique (log) des " +"messages d'erreur : " #: ../src/extension/error-file.cpp:66 msgid "Show dialog on startup" @@ -5140,8 +4047,12 @@ msgstr "'%s' en cours..." #. static int i = 0; #. std::cout << "Checking module[" << i++ << "]: " << name << std::endl; #: ../src/extension/extension.cpp:263 -msgid " This is caused by an improper .inx file for this extension. An improper .inx file could have been caused by a faulty installation of Inkscape." -msgstr " C'est le résultat d'un fichier .inx incorrect pour cette extension. Un fichier .inx incorrect peut être du à un problème d'installation d'Inkscape." +msgid "" +" This is caused by an improper .inx file for this extension. An improper ." +"inx file could have been caused by a faulty installation of Inkscape." +msgstr "" +" C'est le résultat d'un fichier .inx incorrect pour cette extension. Un " +"fichier .inx incorrect peut être du à un problème d'installation d'Inkscape." #: ../src/extension/extension.cpp:266 msgid "an ID was not defined for it." @@ -5203,22 +4114,40 @@ msgid "Deactivated" msgstr "Désactivée" #: ../src/extension/extension.cpp:804 -msgid "Currently there is no help available for this Extension. Please look on the Inkscape website or ask on the mailing lists if you have questions regarding this extension." -msgstr "Aucune aide n'est actuellement disponible pour cette extension. Veuillez vous référer au site internet d'Inkscape ou aux listes de diffusion pour toute question relative à celle-ci." +msgid "" +"Currently there is no help available for this Extension. Please look on the " +"Inkscape website or ask on the mailing lists if you have questions regarding " +"this extension." +msgstr "" +"Aucune aide n'est actuellement disponible pour cette extension. Veuillez " +"vous référer au site internet d'Inkscape ou aux listes de diffusion pour " +"toute question relative à celle-ci." #: ../src/extension/implementation/script.cpp:1037 -msgid "Inkscape has received additional data from the script executed. The script did not return an error, but this may indicate the results will not be as expected." -msgstr "Inkscape a reçu des données additionnelles du script exécuté. Le script n'a pas retourné d'erreur, mais ceci peut indiquer que les résultats ne sont pas ceux attendus." +msgid "" +"Inkscape has received additional data from the script executed. The script " +"did not return an error, but this may indicate the results will not be as " +"expected." +msgstr "" +"Inkscape a reçu des données additionnelles du script exécuté. Le script n'a " +"pas retourné d'erreur, mais ceci peut indiquer que les résultats ne sont pas " +"ceux attendus." -#: ../src/extension/init.cpp:298 +#: ../src/extension/init.cpp:296 msgid "Null external module directory name. Modules will not be loaded." -msgstr "Le nom de dossier des modules externes est vide. Les modules ne seront pas chargés." +msgstr "" +"Le nom de dossier des modules externes est vide. Les modules ne seront pas " +"chargés." -#: ../src/extension/init.cpp:312 +#: ../src/extension/init.cpp:310 #: ../src/extension/internal/filter/filter-file.cpp:59 #, c-format -msgid "Modules directory (%s) is unavailable. External modules in that directory will not be loaded." -msgstr "Le dossier des modules (%s) est indisponible. Les modules externes de ce dossier ne seront pas chargés." +msgid "" +"Modules directory (%s) is unavailable. External modules in that directory " +"will not be loaded." +msgstr "" +"Le dossier des modules (%s) est indisponible. Les modules externes de ce " +"dossier ne seront pas chargés." #: ../src/extension/internal/bitmap/adaptiveThreshold.cpp:39 msgid "Adaptive Threshold" @@ -5227,13 +4156,12 @@ msgstr "Seuil adaptatif" #: ../src/extension/internal/bitmap/adaptiveThreshold.cpp:41 #: ../src/extension/internal/bitmap/raise.cpp:42 #: ../src/extension/internal/bitmap/sample.cpp:41 -#: ../src/extension/internal/bluredge.cpp:137 +#: ../src/extension/internal/bluredge.cpp:138 #: ../src/ui/dialog/object-attributes.cpp:68 #: ../src/ui/dialog/object-attributes.cpp:76 -#: ../src/widgets/calligraphy-toolbar.cpp:451 -#: ../src/widgets/erasor-toolbar.cpp:149 -#: ../src/widgets/spray-toolbar.cpp:132 -#: ../src/widgets/tweak-toolbar.cpp:146 +#: ../src/widgets/calligraphy-toolbar.cpp:447 +#: ../src/widgets/eraser-toolbar.cpp:145 ../src/widgets/spray-toolbar.cpp:128 +#: ../src/widgets/tweak-toolbar.cpp:142 #: ../share/extensions/foldablebox.inx.h:2 msgid "Width:" msgstr "Épaisseur :" @@ -5249,7 +4177,7 @@ msgstr "Hauteur :" #. Label #: ../src/extension/internal/bitmap/adaptiveThreshold.cpp:43 -#: ../src/widgets/gradient-toolbar.cpp:1172 +#: ../src/widgets/gradient-toolbar.cpp:1173 #: ../src/widgets/gradient-vector.cpp:926 #: ../share/extensions/printing_marks.inx.h:12 msgid "Offset:" @@ -5271,8 +4199,8 @@ msgstr "Décalage :" #: ../src/extension/internal/bitmap/equalize.cpp:40 #: ../src/extension/internal/bitmap/gaussianBlur.cpp:45 #: ../src/extension/internal/bitmap/implode.cpp:43 -#: ../src/extension/internal/bitmap/level.cpp:49 #: ../src/extension/internal/bitmap/levelChannel.cpp:71 +#: ../src/extension/internal/bitmap/level.cpp:49 #: ../src/extension/internal/bitmap/medianFilter.cpp:43 #: ../src/extension/internal/bitmap/modulate.cpp:48 #: ../src/extension/internal/bitmap/negate.cpp:41 @@ -5307,10 +4235,9 @@ msgstr "Ajouter du bruit" #: ../src/extension/internal/filter/color.h:1497 #: ../src/extension/internal/filter/color.h:1585 #: ../src/extension/internal/filter/distort.h:69 -#: ../src/extension/internal/filter/morphology.h:60 -#: ../src/rdf.cpp:241 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2613 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2692 +#: ../src/extension/internal/filter/morphology.h:60 ../src/rdf.cpp:244 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2627 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2706 #: ../src/ui/dialog/object-attributes.cpp:49 #: ../share/extensions/jessyInk_effects.inx.h:5 #: ../share/extensions/jessyInk_export.inx.h:3 @@ -5362,7 +4289,7 @@ msgstr "Flou" #: ../src/extension/internal/bitmap/oilPaint.cpp:39 #: ../src/extension/internal/bitmap/sharpen.cpp:40 #: ../src/extension/internal/bitmap/unsharpmask.cpp:43 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2670 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2684 msgid "Radius:" msgstr "Rayon :" @@ -5451,7 +4378,8 @@ msgstr "Colorer" #: ../src/extension/internal/bitmap/colorize.cpp:58 msgid "Colorize selected bitmap(s) with specified color, using given opacity" -msgstr "Colorer les bitmaps sélectionnés avec la couleur et l'opacité spécifiées" +msgstr "" +"Colorer les bitmaps sélectionnés avec la couleur et l'opacité spécifiées" #: ../src/extension/internal/bitmap/contrast.cpp:40 #: ../src/extension/internal/filter/color.h:1114 @@ -5499,7 +4427,7 @@ msgstr "Cycle des couleurs" #: ../src/extension/internal/bitmap/cycleColormap.cpp:39 #: ../src/extension/internal/bitmap/spread.cpp:39 #: ../src/extension/internal/bitmap/unsharpmask.cpp:45 -#: ../src/widgets/spray-toolbar.cpp:224 +#: ../src/widgets/spray-toolbar.cpp:220 msgid "Amount:" msgstr "Quantité :" @@ -5529,7 +4457,8 @@ msgstr "Embosser" #: ../src/extension/internal/bitmap/emboss.cpp:47 msgid "Emboss selected bitmap(s); highlight edges with 3D effect" -msgstr "Gaufrer les bitmaps sélectionnés ; surligne les contours avec un effet 3D" +msgstr "" +"Gaufrer les bitmaps sélectionnés ; surligne les contours avec un effet 3D" #: ../src/extension/internal/bitmap/enhance.cpp:35 msgid "Enhance" @@ -5570,53 +4499,66 @@ msgstr "Imploser" msgid "Implode selected bitmap(s)" msgstr "Imploser les bitmaps sélectionnés" -#: ../src/extension/internal/bitmap/level.cpp:41 -#: ../src/extension/internal/filter/color.h:742 -#: ../src/extension/internal/filter/image.h:56 -#: ../src/extension/internal/filter/morphology.h:66 -#: ../src/extension/internal/filter/paint.h:345 -msgid "Level" -msgstr "Niveau" +#: ../src/extension/internal/bitmap/levelChannel.cpp:52 +msgid "Level (with Channel)" +msgstr "Niveau (par composante)" + +#: ../src/extension/internal/bitmap/levelChannel.cpp:54 +#: ../src/extension/internal/filter/color.h:636 +msgid "Channel:" +msgstr "Composante :" -#: ../src/extension/internal/bitmap/level.cpp:43 #: ../src/extension/internal/bitmap/levelChannel.cpp:65 +#: ../src/extension/internal/bitmap/level.cpp:43 msgid "Black Point:" msgstr "Point noir :" -#: ../src/extension/internal/bitmap/level.cpp:44 #: ../src/extension/internal/bitmap/levelChannel.cpp:66 +#: ../src/extension/internal/bitmap/level.cpp:44 msgid "White Point:" msgstr "Point blanc :" -#: ../src/extension/internal/bitmap/level.cpp:45 #: ../src/extension/internal/bitmap/levelChannel.cpp:67 +#: ../src/extension/internal/bitmap/level.cpp:45 msgid "Gamma Correction:" msgstr "Correction gamma :" -#: ../src/extension/internal/bitmap/level.cpp:51 -msgid "Level selected bitmap(s) by scaling values falling between the given ranges to the full color range" -msgstr "Niveler les bitmaps sélectionnés en mettant à l'échelle les valeurs se situant dans l'intervalle donné pour les élargir à la gamme complète de couleur" - -#: ../src/extension/internal/bitmap/levelChannel.cpp:52 -msgid "Level (with Channel)" -msgstr "Niveau (par composante)" +#: ../src/extension/internal/bitmap/levelChannel.cpp:73 +msgid "" +"Level the specified channel of selected bitmap(s) by scaling values falling " +"between the given ranges to the full color range" +msgstr "" +"Niveler la composante spécifiée des bitmaps sélectionnés en mettant à " +"l'échelle les valeurs se situant dans l'intervalle donné pour les élargir à " +"la gamme complète de couleur" -#: ../src/extension/internal/bitmap/levelChannel.cpp:54 -#: ../src/extension/internal/filter/color.h:636 -msgid "Channel:" -msgstr "Composante :" +#: ../src/extension/internal/bitmap/level.cpp:41 +#: ../src/extension/internal/filter/color.h:742 +#: ../src/extension/internal/filter/image.h:56 +#: ../src/extension/internal/filter/morphology.h:66 +#: ../src/extension/internal/filter/paint.h:345 +msgid "Level" +msgstr "Niveau" -#: ../src/extension/internal/bitmap/levelChannel.cpp:73 -msgid "Level the specified channel of selected bitmap(s) by scaling values falling between the given ranges to the full color range" -msgstr "Niveler la composante spécifiée des bitmaps sélectionnés en mettant à l'échelle les valeurs se situant dans l'intervalle donné pour les élargir à la gamme complète de couleur" +#: ../src/extension/internal/bitmap/level.cpp:51 +msgid "" +"Level selected bitmap(s) by scaling values falling between the given ranges " +"to the full color range" +msgstr "" +"Niveler les bitmaps sélectionnés en mettant à l'échelle les valeurs se " +"situant dans l'intervalle donné pour les élargir à la gamme complète de " +"couleur" #: ../src/extension/internal/bitmap/medianFilter.cpp:37 msgid "Median" msgstr "Médiane" #: ../src/extension/internal/bitmap/medianFilter.cpp:45 -msgid "Replace each pixel component with the median color in a circular neighborhood" -msgstr "Remplace chaque composante des pixels de l'image par la couleur médiane dans un voisinage circulaire" +msgid "" +"Replace each pixel component with the median color in a circular neighborhood" +msgstr "" +"Remplace chaque composante des pixels de l'image par la couleur médiane dans " +"un voisinage circulaire" #: ../src/extension/internal/bitmap/modulate.cpp:40 msgid "HSB Adjust" @@ -5635,8 +4577,10 @@ msgid "Brightness:" msgstr "Brillance :" #: ../src/extension/internal/bitmap/modulate.cpp:50 -msgid "Adjust the amount of hue, saturation, and brightness in selected bitmap(s)" -msgstr "Moduler la teinte, la saturation et la luminosité des bitmaps sélectionnés." +msgid "" +"Adjust the amount of hue, saturation, and brightness in selected bitmap(s)" +msgstr "" +"Moduler la teinte, la saturation et la luminosité des bitmaps sélectionnés." #: ../src/extension/internal/bitmap/negate.cpp:36 msgid "Negate" @@ -5651,8 +4595,12 @@ msgid "Normalize" msgstr "Normaliser" #: ../src/extension/internal/bitmap/normalize.cpp:43 -msgid "Normalize selected bitmap(s), expanding color range to the full possible range of color" -msgstr "Normaliser les bitmaps sélectionnés, étend la gamme des couleurs présente à la gamme complète de couleur" +msgid "" +"Normalize selected bitmap(s), expanding color range to the full possible " +"range of color" +msgstr "" +"Normaliser les bitmaps sélectionnés, étend la gamme des couleurs présente à " +"la gamme complète de couleur" #: ../src/extension/internal/bitmap/oilPaint.cpp:37 msgid "Oil Paint" @@ -5660,11 +4608,22 @@ msgstr "Peinture à l'huile" #: ../src/extension/internal/bitmap/oilPaint.cpp:45 msgid "Stylize selected bitmap(s) so that they appear to be painted with oils" -msgstr "Styliser les bitmaps sélectionnés en leur donnant l'apparence d'une peinture à l'huile" +msgstr "" +"Styliser les bitmaps sélectionnés en leur donnant l'apparence d'une peinture " +"à l'huile" + +#: ../src/extension/internal/bitmap/opacity.cpp:38 +#: ../src/extension/internal/filter/blurs.h:333 +#: ../src/extension/internal/filter/transparency.h:279 +#: ../src/ui/dialog/clonetiler.cpp:840 ../src/ui/dialog/clonetiler.cpp:993 +#: ../src/widgets/tweak-toolbar.cpp:348 +#: ../share/extensions/interp_att_g.inx.h:16 +msgid "Opacity" +msgstr "Opacité" #: ../src/extension/internal/bitmap/opacity.cpp:40 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2660 -#: ../src/widgets/dropper-toolbar.cpp:111 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2674 +#: ../src/widgets/dropper-toolbar.cpp:107 msgid "Opacity:" msgstr "Opacité :" @@ -5681,8 +4640,11 @@ msgid "Raised" msgstr "En relief" #: ../src/extension/internal/bitmap/raise.cpp:50 -msgid "Alter lightness the edges of selected bitmap(s) to create a raised appearance" -msgstr "Changer la luminosité des bitmaps sélectionnés pour les faire apparaître « en relief »" +msgid "" +"Alter lightness the edges of selected bitmap(s) to create a raised appearance" +msgstr "" +"Changer la luminosité des bitmaps sélectionnés pour les faire apparaître " +"« en relief »" #: ../src/extension/internal/bitmap/reduceNoise.cpp:40 msgid "Reduce Noise" @@ -5696,16 +4658,21 @@ msgid "Order:" msgstr "Ordre :" #: ../src/extension/internal/bitmap/reduceNoise.cpp:48 -msgid "Reduce noise in selected bitmap(s) using a noise peak elimination filter" -msgstr "Réduire le bruit dans les bitmaps sélectionnés en éliminant les pics de bruit" +msgid "" +"Reduce noise in selected bitmap(s) using a noise peak elimination filter" +msgstr "" +"Réduire le bruit dans les bitmaps sélectionnés en éliminant les pics de bruit" #: ../src/extension/internal/bitmap/sample.cpp:39 msgid "Resample" msgstr "Ré-échantillonnage" #: ../src/extension/internal/bitmap/sample.cpp:48 -msgid "Alter the resolution of selected image by resizing it to the given pixel size" -msgstr "Changer la résolution de l'image en la redimensionnant avec la taille de pixel donnée." +msgid "" +"Alter the resolution of selected image by resizing it to the given pixel size" +msgstr "" +"Changer la résolution de l'image en la redimensionnant avec la taille de " +"pixel donnée." #: ../src/extension/internal/bitmap/shade.cpp:40 msgid "Shade" @@ -5739,15 +4706,20 @@ msgstr "Solariser" #: ../src/extension/internal/bitmap/solarize.cpp:47 msgid "Solarize selected bitmap(s), like overexposing photographic film" -msgstr "Solariser les bitmaps sélectionnés, donne un effet de pellicule surexposée" +msgstr "" +"Solariser les bitmaps sélectionnés, donne un effet de pellicule surexposée" #: ../src/extension/internal/bitmap/spread.cpp:37 msgid "Dither" msgstr "Dispersion" #: ../src/extension/internal/bitmap/spread.cpp:45 -msgid "Randomly scatter pixels in selected bitmap(s), within the given radius of the original position" -msgstr "Disperser au hasard les pixels des bitmaps sélectionnés, dans le rayon donné de la position originale" +msgid "" +"Randomly scatter pixels in selected bitmap(s), within the given radius of " +"the original position" +msgstr "" +"Disperser au hasard les pixels des bitmaps sélectionnés, dans le rayon donné " +"de la position originale" #: ../src/extension/internal/bitmap/swirl.cpp:39 msgid "Degrees:" @@ -5764,7 +4736,7 @@ msgstr "Seuil" #: ../src/extension/internal/bitmap/threshold.cpp:40 #: ../src/extension/internal/bitmap/unsharpmask.cpp:46 -#: ../src/widgets/paintbucket-toolbar.cpp:166 +#: ../src/widgets/paintbucket-toolbar.cpp:167 msgid "Threshold:" msgstr "Seuil :" @@ -5778,7 +4750,9 @@ msgstr "Masque de netteté" #: ../src/extension/internal/bitmap/unsharpmask.cpp:52 msgid "Sharpen selected bitmap(s) using unsharp mask algorithms" -msgstr "Rendre plus nets les bitmaps sélectionnés en utilisant des algorithmes de netteté de type « unsharp mask »" +msgstr "" +"Rendre plus nets les bitmaps sélectionnés en utilisant des algorithmes de " +"netteté de type « unsharp mask »" #: ../src/extension/internal/bitmap/wave.cpp:38 msgid "Wave" @@ -5796,27 +4770,26 @@ msgstr "Longueur d'onde :" msgid "Alter selected bitmap(s) along sine wave" msgstr "Altérer les bitmaps sélectionnés suivant une onde sinusoïdale" -#: ../src/extension/internal/bluredge.cpp:135 +#: ../src/extension/internal/bluredge.cpp:136 msgid "Inset/Outset Halo" msgstr "Halo intérieur-extérieur" -#: ../src/extension/internal/bluredge.cpp:137 +#: ../src/extension/internal/bluredge.cpp:138 msgid "Width in px of the halo" msgstr "Largeur du halo en pixels" -#: ../src/extension/internal/bluredge.cpp:138 +#: ../src/extension/internal/bluredge.cpp:139 msgid "Number of steps:" msgstr "Nombre de passes :" -#: ../src/extension/internal/bluredge.cpp:138 +#: ../src/extension/internal/bluredge.cpp:139 msgid "Number of inset/outset copies of the object to make" msgstr "Nombre de copies contractées/dilatées de l'objet à créer" -#: ../src/extension/internal/bluredge.cpp:142 +#: ../src/extension/internal/bluredge.cpp:143 #: ../share/extensions/extrude.inx.h:5 #: ../share/extensions/generate_voronoi.inx.h:9 -#: ../share/extensions/interp.inx.h:7 -#: ../share/extensions/motion.inx.h:4 +#: ../share/extensions/interp.inx.h:7 ../share/extensions/motion.inx.h:4 #: ../share/extensions/pathalongpath.inx.h:18 #: ../share/extensions/pathscatter.inx.h:20 #: ../share/extensions/voronoi2svg.inx.h:13 @@ -5846,7 +4819,8 @@ msgstr "PostScript niveau 2" #: ../src/extension/internal/cairo-ps-out.cpp:335 #: ../src/extension/internal/cairo-ps-out.cpp:376 #: ../src/extension/internal/cairo-renderer-pdf-out.cpp:250 -#: ../src/extension/internal/emf-win32-inout.cpp:2553 +#: ../src/extension/internal/emf-inout.cpp:3551 +#: ../src/extension/internal/wmf-inout.cpp:3236 msgid "Convert texts to paths" msgstr "Convertir les textes en chemins" @@ -5884,9 +4858,9 @@ msgid "Use exported object's size" msgstr "Utiliser la taille de l'objet exporté" #: ../src/extension/internal/cairo-ps-out.cpp:343 -#: ../src/extension/internal/cairo-ps-out.cpp:384 -msgid "Bleed/margin (mm)" -msgstr "Fond perdu/marge (mm)" +#: ../src/extension/internal/cairo-renderer-pdf-out.cpp:258 +msgid "Bleed/margin (mm):" +msgstr "Fond perdu/marge (mm) :" #: ../src/extension/internal/cairo-ps-out.cpp:344 #: ../src/extension/internal/cairo-ps-out.cpp:385 @@ -5912,6 +4886,10 @@ msgstr "PostScript encapsulé" msgid "EPS+LaTeX: Omit text in EPS, and create LaTeX file" msgstr "EPS+LaTeX : exclure le texte du fichier EPS, et créer un fichier LaTeX" +#: ../src/extension/internal/cairo-ps-out.cpp:384 +msgid "Bleed/margin (mm)" +msgstr "Fond perdu/marge (mm)" + #: ../src/extension/internal/cairo-ps-out.cpp:389 #: ../share/extensions/eps_input.inx.h:2 msgid "Encapsulated PostScript (*.eps)" @@ -5942,113 +4920,142 @@ msgstr "PDF+LaTeX : exclure le texte du fichier PDF, et créer un fichier LaTeX msgid "Output page size:" msgstr "Dimensions de la page" -#: ../src/extension/internal/cairo-renderer-pdf-out.cpp:258 -msgid "Bleed/margin (mm):" -msgstr "Fond perdu/marge (mm) :" - -#: ../src/extension/internal/cdr-input.cpp:100 -#: ../src/extension/internal/pdf-input-cairo.cpp:70 -#: ../src/extension/internal/pdfinput/pdf-input.cpp:86 -#: ../src/extension/internal/vsd-input.cpp:100 +#: ../src/extension/internal/cdr-input.cpp:102 +#: ../src/extension/internal/pdf-input-cairo.cpp:74 +#: ../src/extension/internal/pdfinput/pdf-input.cpp:87 +#: ../src/extension/internal/vsd-input.cpp:101 msgid "Select page:" msgstr "Sélectionner une page :" #. Display total number of pages -#: ../src/extension/internal/cdr-input.cpp:112 -#: ../src/extension/internal/pdf-input-cairo.cpp:88 -#: ../src/extension/internal/pdfinput/pdf-input.cpp:105 -#: ../src/extension/internal/vsd-input.cpp:112 +#: ../src/extension/internal/cdr-input.cpp:114 +#: ../src/extension/internal/pdf-input-cairo.cpp:92 +#: ../src/extension/internal/pdfinput/pdf-input.cpp:106 +#: ../src/extension/internal/vsd-input.cpp:113 #, c-format msgid "out of %i" msgstr "sur %i" -#: ../src/extension/internal/cdr-input.cpp:143 -#: ../src/extension/internal/vsd-input.cpp:143 +#: ../src/extension/internal/cdr-input.cpp:145 +#: ../src/extension/internal/vsd-input.cpp:144 #, fuzzy msgid "Page Selector" msgstr "Sélecteur" -#: ../src/extension/internal/cdr-input.cpp:267 +#: ../src/extension/internal/cdr-input.cpp:274 msgid "Corel DRAW Input" msgstr "Entrée Corel DRAW" -#: ../src/extension/internal/cdr-input.cpp:272 +#: ../src/extension/internal/cdr-input.cpp:279 msgid "Corel DRAW 7-X4 files (*.cdr)" msgstr "Fichiers Corel DRAW 7-X4 (*.cdr)" -#: ../src/extension/internal/cdr-input.cpp:273 +#: ../src/extension/internal/cdr-input.cpp:280 msgid "Open files saved in Corel DRAW 7-X4" msgstr "Ouvrir des fichiers créés avec Corel DRAW 7-X4" -#: ../src/extension/internal/cdr-input.cpp:280 +#: ../src/extension/internal/cdr-input.cpp:287 msgid "Corel DRAW templates input" msgstr "Entrée modèle Corel DRAW" -#: ../src/extension/internal/cdr-input.cpp:285 +#: ../src/extension/internal/cdr-input.cpp:292 msgid "Corel DRAW 7-13 template files (*.cdt)" msgstr "Modèles Corel DRAW 7-13 (.cdt)" -#: ../src/extension/internal/cdr-input.cpp:286 +#: ../src/extension/internal/cdr-input.cpp:293 msgid "Open files saved in Corel DRAW 7-13" msgstr "Ouvrir des fichiers créés avec Corel DRAW 7-13" -#: ../src/extension/internal/cdr-input.cpp:293 +#: ../src/extension/internal/cdr-input.cpp:300 msgid "Corel DRAW Compressed Exchange files input" msgstr "Fichier d'entrée Corel DRAW Compressed Exchange" -#: ../src/extension/internal/cdr-input.cpp:298 +#: ../src/extension/internal/cdr-input.cpp:305 msgid "Corel DRAW Compressed Exchange files (*.ccx)" msgstr "Fichiers Corel DRAW Compressed Exchange (.ccx)" -#: ../src/extension/internal/cdr-input.cpp:299 +#: ../src/extension/internal/cdr-input.cpp:306 msgid "Open compressed exchange files saved in Corel DRAW" msgstr "Fichiers Open compressed exchange enregistrés avec Corel DRAW" -#: ../src/extension/internal/cdr-input.cpp:306 +#: ../src/extension/internal/cdr-input.cpp:313 msgid "Corel DRAW Presentation Exchange files input" msgstr "Fichier d'entrée Corel DRAW Presentation Exchange" -#: ../src/extension/internal/cdr-input.cpp:311 +#: ../src/extension/internal/cdr-input.cpp:318 msgid "Corel DRAW Presentation Exchange files (*.cmx)" msgstr "Fichiers Corel DRAW Presentation Exchange (.cmx)" -#: ../src/extension/internal/cdr-input.cpp:312 +#: ../src/extension/internal/cdr-input.cpp:319 msgid "Open presentation exchange files saved in Corel DRAW" msgstr "Fichiers Open presentation exchange enregistrés avec Corel DRAW" -#: ../src/extension/internal/emf-win32-inout.cpp:2523 +#: ../src/extension/internal/emf-inout.cpp:3535 msgid "EMF Input" msgstr "Entrée EMF" -#: ../src/extension/internal/emf-win32-inout.cpp:2528 +#: ../src/extension/internal/emf-inout.cpp:3540 msgid "Enhanced Metafiles (*.emf)" msgstr "Métafichier amélioré (*.emf)" -#: ../src/extension/internal/emf-win32-inout.cpp:2529 +#: ../src/extension/internal/emf-inout.cpp:3541 msgid "Enhanced Metafiles" msgstr "Métafichier amélioré" -#: ../src/extension/internal/emf-win32-inout.cpp:2537 -msgid "WMF Input" -msgstr "Entrée WMF" +#: ../src/extension/internal/emf-inout.cpp:3549 +msgid "EMF Output" +msgstr "Sortie EMF" -#: ../src/extension/internal/emf-win32-inout.cpp:2542 -msgid "Windows Metafiles (*.wmf)" -msgstr "Métafichier Windows (*.wmf)" +#: ../src/extension/internal/emf-inout.cpp:3552 +#: ../src/extension/internal/wmf-inout.cpp:3237 +msgid "Map Unicode to Symbol font" +msgstr "" -#: ../src/extension/internal/emf-win32-inout.cpp:2543 -msgid "Windows Metafiles" -msgstr "Métafichier Windows" +#: ../src/extension/internal/emf-inout.cpp:3553 +#: ../src/extension/internal/wmf-inout.cpp:3238 +msgid "Map Unicode to Wingdings" +msgstr "" -#: ../src/extension/internal/emf-win32-inout.cpp:2551 -msgid "EMF Output" -msgstr "Sortie EMF" +#: ../src/extension/internal/emf-inout.cpp:3554 +#: ../src/extension/internal/wmf-inout.cpp:3239 +msgid "Map Unicode to Zapf Dingbats" +msgstr "" + +#: ../src/extension/internal/emf-inout.cpp:3555 +#: ../src/extension/internal/wmf-inout.cpp:3240 +msgid "Use MS Unicode PUA (0xF020-0xF0FF) for converted characters" +msgstr "" + +#: ../src/extension/internal/emf-inout.cpp:3556 +#: ../src/extension/internal/wmf-inout.cpp:3241 +msgid "Compensate for PPT font bug" +msgstr "" + +#: ../src/extension/internal/emf-inout.cpp:3557 +#: ../src/extension/internal/wmf-inout.cpp:3242 +msgid "Convert dashed/dotted lines to single lines" +msgstr "" -#: ../src/extension/internal/emf-win32-inout.cpp:2557 +#: ../src/extension/internal/emf-inout.cpp:3558 +#: ../src/extension/internal/wmf-inout.cpp:3243 +#, fuzzy +msgid "Convert gradients to colored polygon series" +msgstr "Inverser les couleurs du dégradé" + +#: ../src/extension/internal/emf-inout.cpp:3559 +msgid "Map all fill patterns to standard EMF hatches" +msgstr "" + +#: ../src/extension/internal/emf-inout.cpp:3560 +#, fuzzy +msgid "Ignore image rotations" +msgstr "Information" + +#: ../src/extension/internal/emf-inout.cpp:3564 msgid "Enhanced Metafile (*.emf)" msgstr "Métafichier amélioré (*.emf)" -#: ../src/extension/internal/emf-win32-inout.cpp:2558 +#: ../src/extension/internal/emf-inout.cpp:3565 msgid "Enhanced Metafile" msgstr "Métafichier amélioré" @@ -6111,8 +5118,8 @@ msgstr "Couleur d'éclairage :" #: ../src/extension/internal/filter/color.h:1615 #: ../src/extension/internal/filter/distort.h:95 #: ../src/extension/internal/filter/distort.h:204 -#: ../src/extension/internal/filter/filter-file.cpp:151 #: ../src/extension/internal/filter/filter.cpp:214 +#: ../src/extension/internal/filter/filter-file.cpp:151 #: ../src/extension/internal/filter/image.h:61 #: ../src/extension/internal/filter/morphology.h:75 #: ../src/extension/internal/filter/morphology.h:202 @@ -6194,8 +5201,12 @@ msgid "Strength" msgstr "Force" #: ../src/extension/internal/filter/blurs.h:135 -msgid "Removes or decreases glows and jaggeries around objects edges after applying some filters" -msgstr "Supprime ou diminue l'éclat et l'agitation qui apparaissent autour des bords lors de l'application de certains effets" +msgid "" +"Removes or decreases glows and jaggeries around objects edges after applying " +"some filters" +msgstr "" +"Supprime ou diminue l'éclat et l'agitation qui apparaissent autour des bords " +"lors de l'application de certains effets" #: ../src/extension/internal/filter/blurs.h:185 msgid "Cross Blur" @@ -6239,8 +5250,7 @@ msgstr "Obscurcir" #: ../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:53 ../src/ui/dialog/input.cpp:382 msgid "Screen" msgstr "Superposition" @@ -6317,7 +5327,7 @@ msgstr "Érosion" #: ../src/extension/internal/filter/blurs.h:336 #: ../src/extension/internal/filter/color.h:1205 #: ../src/extension/internal/filter/color.h:1317 -#: ../src/ui/dialog/document-properties.cpp:108 +#: ../src/ui/dialog/document-properties.cpp:111 msgid "Background color" msgstr "Couleur de fond" @@ -6341,8 +5351,7 @@ msgstr "Type de fondu :" #: ../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:642 +#: ../src/filter-enums.cpp:51 ../src/ui/dialog/inkscape-preferences.cpp:642 msgid "Normal" msgstr "Normal" @@ -6379,8 +5388,7 @@ msgstr "Source du bosselage" #: ../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:100 -#: ../src/flood-context.cpp:228 +#: ../src/filter-enums.cpp:100 ../src/flood-context.cpp:194 #: ../src/widgets/sp-color-icc-selector.cpp:355 #: ../src/widgets/sp-color-scales.cpp:429 #: ../src/widgets/sp-color-scales.cpp:430 @@ -6393,8 +5401,7 @@ msgstr "Rouge" #: ../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:101 -#: ../src/flood-context.cpp:229 +#: ../src/filter-enums.cpp:101 ../src/flood-context.cpp:195 #: ../src/widgets/sp-color-icc-selector.cpp:356 #: ../src/widgets/sp-color-scales.cpp:432 #: ../src/widgets/sp-color-scales.cpp:433 @@ -6407,8 +5414,7 @@ msgstr "Vert" #: ../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:102 -#: ../src/flood-context.cpp:230 +#: ../src/filter-enums.cpp:102 ../src/flood-context.cpp:196 #: ../src/widgets/sp-color-icc-selector.cpp:357 #: ../src/widgets/sp-color-scales.cpp:435 #: ../src/widgets/sp-color-scales.cpp:436 @@ -6432,10 +5438,9 @@ msgid "Diffuse" msgstr "Diffus" #: ../src/extension/internal/filter/bumps.h:98 -#: ../src/extension/internal/filter/bumps.h:329 +#: ../src/extension/internal/filter/bumps.h:329 ../src/libgdl/gdl-dock.c:199 #: ../src/libgdl/gdl-dock-placeholder.c:175 -#: ../src/libgdl/gdl-dock.c:199 -#: ../src/widgets/rect-toolbar.cpp:332 +#: ../src/widgets/rect-toolbar.cpp:338 #: ../share/extensions/interp_att_g.inx.h:11 msgid "Height" msgstr "Hauteur" @@ -6447,12 +5452,10 @@ msgstr "Hauteur" #: ../src/extension/internal/filter/color.h:1113 #: ../src/extension/internal/filter/paint.h:86 #: ../src/extension/internal/filter/paint.h:592 -#: ../src/extension/internal/filter/paint.h:707 -#: ../src/flood-context.cpp:233 +#: ../src/extension/internal/filter/paint.h:707 ../src/flood-context.cpp:199 #: ../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:336 +#: ../src/widgets/sp-color-scales.cpp:462 ../src/widgets/tweak-toolbar.cpp:332 #: ../share/extensions/color_randomize.inx.h:5 msgid "Lightness" msgstr "Luminosité" @@ -6475,7 +5478,6 @@ msgid "Distant" msgstr "Distante" #: ../src/extension/internal/filter/bumps.h:106 -#: ../src/helper/units.cpp:38 #: ../src/ui/dialog/inkscape-preferences.cpp:451 msgid "Point" msgstr "Point" @@ -6565,8 +5567,7 @@ msgstr "Fond :" #: ../src/extension/internal/filter/bumps.h:322 #: ../src/extension/internal/filter/transparency.h:57 -#: ../src/filter-enums.cpp:29 -#: ../src/selection-describer.cpp:56 +#: ../src/filter-enums.cpp:29 ../src/sp-image.cpp:616 msgid "Image" msgstr "Image" @@ -6649,22 +5650,19 @@ msgstr "Peinture par canal" #: ../src/extension/internal/filter/color.h:156 #: ../src/extension/internal/filter/color.h:257 -#: ../src/extension/internal/filter/paint.h:87 -#: ../src/flood-context.cpp:232 -#: ../src/ui/dialog/inkscape-preferences.cpp:937 +#: ../src/extension/internal/filter/paint.h:87 ../src/flood-context.cpp:198 +#: ../src/ui/dialog/inkscape-preferences.cpp:941 #: ../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:320 +#: ../src/widgets/sp-color-scales.cpp:459 ../src/widgets/tweak-toolbar.cpp:316 #: ../share/extensions/color_randomize.inx.h:4 msgid "Saturation" msgstr "Saturation" #: ../src/extension/internal/filter/color.h:160 #: ../src/extension/internal/filter/transparency.h:135 -#: ../src/filter-enums.cpp:103 -#: ../src/flood-context.cpp:234 +#: ../src/filter-enums.cpp:103 ../src/flood-context.cpp:200 msgid "Alpha" msgstr "Opacité" @@ -6710,36 +5708,30 @@ msgstr "Fondu 2 :" msgid "Blend image or object with a flood color" msgstr "Mélange un image ou un objet avec une couleur de remplissage" -#: ../src/extension/internal/filter/color.h:424 -#: ../src/filter-enums.cpp:22 +#: ../src/extension/internal/filter/color.h:424 ../src/filter-enums.cpp:22 msgid "Component Transfer" msgstr "Transfert de composantes" -#: ../src/extension/internal/filter/color.h:427 -#: ../src/filter-enums.cpp:82 +#: ../src/extension/internal/filter/color.h:427 ../src/filter-enums.cpp:82 msgid "Identity" msgstr "Identité" #: ../src/extension/internal/filter/color.h:428 -#: ../src/extension/internal/filter/paint.h:498 -#: ../src/filter-enums.cpp:83 +#: ../src/extension/internal/filter/paint.h:498 ../src/filter-enums.cpp:83 msgid "Table" msgstr "Table" #: ../src/extension/internal/filter/color.h:429 -#: ../src/extension/internal/filter/paint.h:499 -#: ../src/filter-enums.cpp:84 +#: ../src/extension/internal/filter/paint.h:499 ../src/filter-enums.cpp:84 msgid "Discrete" msgstr "Discret" -#: ../src/extension/internal/filter/color.h:430 -#: ../src/filter-enums.cpp:85 +#: ../src/extension/internal/filter/color.h:430 ../src/filter-enums.cpp:85 #: ../src/live_effects/lpe-powerstroke.cpp:188 msgid "Linear" msgstr "Linéaire" -#: ../src/extension/internal/filter/color.h:431 -#: ../src/filter-enums.cpp:86 +#: ../src/extension/internal/filter/color.h:431 ../src/filter-enums.cpp:86 msgid "Gamma" msgstr "Gamma" @@ -6836,7 +5828,7 @@ msgid "Fade to:" msgstr "Décolorer en :" #: ../src/extension/internal/filter/color.h:744 -#: ../src/ui/widget/selected-style.cpp:254 +#: ../src/ui/widget/selected-style.cpp:257 #: ../src/widgets/sp-color-icc-selector.cpp:372 #: ../src/widgets/sp-color-scales.cpp:492 #: ../src/widgets/sp-color-scales.cpp:493 @@ -6844,7 +5836,7 @@ msgid "Black" msgstr "Noir" #: ../src/extension/internal/filter/color.h:745 -#: ../src/ui/widget/selected-style.cpp:250 +#: ../src/ui/widget/selected-style.cpp:253 msgid "White" msgstr "Blanc" @@ -6867,7 +5859,7 @@ msgid "Customize greyscale components" msgstr "Ajuste les composantes de niveau de gris" #: ../src/extension/internal/filter/color.h:905 -#: ../src/ui/widget/selected-style.cpp:246 +#: ../src/ui/widget/selected-style.cpp:249 msgid "Invert" msgstr "Inverser" @@ -6919,12 +5911,12 @@ msgstr "Lumières" msgid "Shadows" msgstr "Ombres" +#. initialise your parameters here: #: ../src/extension/internal/filter/color.h:1044 -#: ../src/extension/internal/filter/paint.h:356 -#: ../src/filter-enums.cpp:32 -#: ../src/live_effects/effect.cpp:97 -#: ../src/live_effects/lpe-offset.cpp:31 -#: ../src/widgets/gradient-toolbar.cpp:1172 +#: ../src/extension/internal/filter/paint.h:356 ../src/filter-enums.cpp:32 +#: ../src/live_effects/effect.cpp:97 ../src/live_effects/lpe-offset.cpp:31 +#: ../src/live_effects/lpe-parallel.cpp:50 +#: ../src/widgets/gradient-toolbar.cpp:1173 msgid "Offset" msgstr "Offset" @@ -6954,8 +5946,7 @@ msgstr "Décalage rouge" #: ../src/extension/internal/filter/color.h:1307 #: ../src/extension/internal/filter/color.h:1310 #: ../src/extension/internal/filter/color.h:1313 -#: ../src/ui/dialog/input.cpp:1616 -#: ../src/ui/dialog/layers.cpp:915 +#: ../src/ui/dialog/input.cpp:1616 ../src/ui/dialog/layers.cpp:917 msgid "X" msgstr "X" @@ -6978,8 +5969,12 @@ msgid "Blue offset" msgstr "Décalage bleu" #: ../src/extension/internal/filter/color.h:1215 -msgid "Nudge RGB channels separately and blend them to different types of backgrounds" -msgstr "Décale les canaux RVB séparément en les fondant dans différents types d'arrière-plans" +msgid "" +"Nudge RGB channels separately and blend them to different types of " +"backgrounds" +msgstr "" +"Décale les canaux RVB séparément en les fondant dans différents types " +"d'arrière-plans" #: ../src/extension/internal/filter/color.h:1302 msgid "Nudge CMY" @@ -6998,8 +5993,12 @@ msgid "Yellow offset" msgstr "Décalage jaune" #: ../src/extension/internal/filter/color.h:1327 -msgid "Nudge CMY channels separately and blend them to different types of backgrounds" -msgstr "Décale les canaux CMY séparément en les fondant dans différents types d'arrière-plans" +msgid "" +"Nudge CMY channels separately and blend them to different types of " +"backgrounds" +msgstr "" +"Décale les canaux CMY séparément en les fondant dans différents types " +"d'arrière-plans" #: ../src/extension/internal/filter/color.h:1408 msgid "Quadritone fantasy" @@ -7075,8 +6074,12 @@ msgid "Hue distribution (°):" msgstr "Distribution de la teinte (°) :" #: ../src/extension/internal/filter/color.h:1619 -msgid "Create a custom tritone palette with additional glow, blend modes and hue moving" -msgstr "Crée une palette à trois tons paramétrable avec lueur, modes de fondu et déplacement de teinte" +msgid "" +"Create a custom tritone palette with additional glow, blend modes and hue " +"moving" +msgstr "" +"Crée une palette à trois tons paramétrable avec lueur, modes de fondu et " +"déplacement de teinte" #: ../src/extension/internal/filter/distort.h:67 msgid "Felt Feather" @@ -7090,8 +6093,8 @@ msgstr "Out" #: ../src/extension/internal/filter/distort.h:77 #: ../src/extension/internal/filter/textures.h:75 -#: ../src/ui/widget/selected-style.cpp:128 -#: ../src/ui/widget/style-swatch.cpp:127 +#: ../src/ui/widget/selected-style.cpp:131 +#: ../src/ui/widget/style-swatch.cpp:128 msgid "Stroke:" msgstr "Contour :" @@ -7123,8 +6126,7 @@ msgstr "Bruit fractal" #: ../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/extension/internal/filter/paint.h:693 ../src/filter-enums.cpp:35 #: ../src/filter-enums.cpp:117 msgid "Turbulence" msgstr "Turbulence" @@ -7191,7 +6193,9 @@ msgstr "Personnel" #: ../src/extension/internal/filter/filter-file.cpp:47 msgid "Null external module directory name. Filters will not be loaded." -msgstr "Le nom de dossier des modules externes est vide. Les filtres ne seront pas chargés." +msgstr "" +"Le nom de dossier des modules externes est vide. Les filtres ne seront pas " +"chargés." #: ../src/extension/internal/filter/image.h:49 msgid "Edge Detect" @@ -7202,6 +6206,8 @@ msgid "Detect:" msgstr "Détecter :" #: ../src/extension/internal/filter/image.h:52 +#: ../src/ui/dialog/template-load-tab.cpp:100 +#: ../src/ui/dialog/template-load-tab.cpp:135 msgid "All" msgstr "Tout" @@ -7240,11 +6246,9 @@ msgid "Open" msgstr "Overt" #: ../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:315 -#: ../src/widgets/spray-toolbar.cpp:132 -#: ../src/widgets/tweak-toolbar.cpp:146 +#: ../src/libgdl/gdl-dock.c:191 ../src/libgdl/gdl-dock-placeholder.c:167 +#: ../src/widgets/rect-toolbar.cpp:321 ../src/widgets/spray-toolbar.cpp:128 +#: ../src/widgets/tweak-toolbar.cpp:142 #: ../share/extensions/interp_att_g.inx.h:10 msgid "Width" msgstr "Largeur" @@ -7351,14 +6355,12 @@ msgstr "Remplissage turbulent" #: ../src/extension/internal/filter/overlays.h:59 #: ../src/extension/internal/filter/paint.h:690 -#: ../src/extension/internal/filter/shadows.h:60 -#: ../src/ui/dialog/find.cpp:87 +#: ../src/extension/internal/filter/shadows.h:60 ../src/ui/dialog/find.cpp:87 #: ../src/ui/dialog/tracedialog.cpp:747 #: ../share/extensions/color_custom.inx.h:2 #: ../share/extensions/color_HSL_adjust.inx.h:2 #: ../share/extensions/color_randomize.inx.h:2 -#: ../share/extensions/dots.inx.h:2 -#: ../share/extensions/dxf_input.inx.h:2 +#: ../share/extensions/dots.inx.h:2 ../share/extensions/dxf_input.inx.h:2 #: ../share/extensions/dxf_outlines.inx.h:2 #: ../share/extensions/gcodetools_area.inx.h:29 #: ../share/extensions/gcodetools_engraving.inx.h:7 @@ -7372,13 +6374,11 @@ msgstr "Remplissage turbulent" #: ../share/extensions/lorem_ipsum.inx.h:2 #: ../share/extensions/pathalongpath.inx.h:2 #: ../share/extensions/pathscatter.inx.h:2 -#: ../share/extensions/radiusrand.inx.h:2 -#: ../share/extensions/scour.inx.h:2 -#: ../share/extensions/split.inx.h:2 -#: ../share/extensions/voronoi2svg.inx.h:2 +#: ../share/extensions/radiusrand.inx.h:2 ../share/extensions/scour.inx.h:2 +#: ../share/extensions/split.inx.h:2 ../share/extensions/voronoi2svg.inx.h:2 +#: ../share/extensions/web-set-att.inx.h:2 #: ../share/extensions/webslicer_create_group.inx.h:2 #: ../share/extensions/webslicer_export.inx.h:2 -#: ../share/extensions/web-set-att.inx.h:2 #: ../share/extensions/web-transmit-att.inx.h:2 msgid "Options" msgstr "Options" @@ -7477,19 +6477,20 @@ msgstr "Longueur" #: ../src/extension/internal/filter/paint.h:247 msgid "Convert image to an engraving made of vertical and horizontal lines" -msgstr "Convertit l'image en une gravure composée de lignes verticales et horizontales" +msgstr "" +"Convertit l'image en une gravure composée de lignes verticales et " +"horizontales" #: ../src/extension/internal/filter/paint.h:331 -#: ../src/ui/dialog/align-and-distribute.cpp:1048 -#: ../src/widgets/desktop-widget.cpp:2000 +#: ../src/ui/dialog/align-and-distribute.cpp:1004 +#: ../src/widgets/desktop-widget.cpp:2007 msgid "Drawing" msgstr "Dessin" #: ../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:1988 +#: ../src/extension/internal/filter/paint.h:976 ../src/splivarot.cpp:2224 msgid "Simplify" msgstr "Simplifier" @@ -7760,8 +6761,7 @@ msgstr "Tache d'encre sur du tissu ou du papier à grain" msgid "Blend" msgstr "Fondre" -#: ../src/extension/internal/filter/transparency.h:55 -#: ../src/rdf.cpp:258 +#: ../src/extension/internal/filter/transparency.h:55 ../src/rdf.cpp:261 msgid "Source:" msgstr "Source :" @@ -7771,13 +6771,10 @@ msgid "Background" msgstr "Fond" #: ../src/extension/internal/filter/transparency.h:59 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2610 -#: ../src/ui/dialog/input.cpp:1088 -#: ../src/widgets/erasor-toolbar.cpp:127 -#: ../src/widgets/pencil-toolbar.cpp:161 -#: ../src/widgets/spray-toolbar.cpp:202 -#: ../src/widgets/tweak-toolbar.cpp:272 -#: ../share/extensions/extrude.inx.h:2 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2624 +#: ../src/ui/dialog/input.cpp:1088 ../src/widgets/eraser-toolbar.cpp:123 +#: ../src/widgets/pencil-toolbar.cpp:156 ../src/widgets/spray-toolbar.cpp:198 +#: ../src/widgets/tweak-toolbar.cpp:268 ../share/extensions/extrude.inx.h:2 #: ../share/extensions/triangle.inx.h:8 msgid "Mode:" msgstr "Mode :" @@ -7805,7 +6802,8 @@ msgstr "Opacité globale" #: ../src/extension/internal/filter/transparency.h:218 msgid "Make the lightest parts of the object progressively transparent" -msgstr "Rend les parties les plus claires de l'objet progressivement transparentes" +msgstr "" +"Rend les parties les plus claires de l'objet progressivement transparentes" #: ../src/extension/internal/filter/transparency.h:291 msgid "Set opacity and strength of opacity boundaries" @@ -7823,32 +6821,39 @@ msgstr "Découpe" msgid "Repaint anything visible monochrome" msgstr "Recouvre l'objet d'une couleur monochrome" -#: ../src/extension/internal/gdkpixbuf-input.cpp:189 +#: ../src/extension/internal/gdkpixbuf-input.cpp:152 #, c-format msgid "%s bitmap image import" msgstr "Import d'une image matricielle %s" -#: ../src/extension/internal/gdkpixbuf-input.cpp:195 +#: ../src/extension/internal/gdkpixbuf-input.cpp:158 msgid "Link or embed image:" msgstr "Lier ou incorporer l'image :" -#: ../src/extension/internal/gdkpixbuf-input.cpp:196 +#: ../src/extension/internal/gdkpixbuf-input.cpp:159 msgid "Embed" msgstr "Incorporer" -#: ../src/extension/internal/gdkpixbuf-input.cpp:197 +#: ../src/extension/internal/gdkpixbuf-input.cpp:160 ../src/sp-anchor.cpp:119 msgid "Link" msgstr "Lier" -#: ../src/extension/internal/gdkpixbuf-input.cpp:199 -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 "Incorporer génère un fichier SVG unique, mais plus volumineux. Lier crée une référence vers un fichier externe au document SVG qui doit être déplacé avec le fichier SVG." +#: ../src/extension/internal/gdkpixbuf-input.cpp:162 +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 "" +"Incorporer génère un fichier SVG unique, mais plus volumineux. Lier crée une " +"référence vers un fichier externe au document SVG qui doit être déplacé avec " +"le fichier SVG." -#: ../src/extension/internal/gdkpixbuf-input.cpp:200 +#: ../src/extension/internal/gdkpixbuf-input.cpp:163 msgid "Hide the dialog next time and always apply the same action." -msgstr "Masquer cette boîte de dialogue la prochaine fois et toujours appliquer la même action." +msgstr "" +"Masquer cette boîte de dialogue la prochaine fois et toujours appliquer la " +"même action." -#: ../src/extension/internal/gdkpixbuf-input.cpp:200 +#: ../src/extension/internal/gdkpixbuf-input.cpp:163 msgid "Don't ask again" msgstr "Ne plus demander" @@ -7864,32 +6869,31 @@ msgstr "Dégradé GIMP (*.ggr)" msgid "Gradients used in GIMP" msgstr "Dégradés utilisés dans GIMP" -#: ../src/extension/internal/grid.cpp:209 -#: ../src/ui/widget/panel.cpp:117 +#: ../src/extension/internal/grid.cpp:210 ../src/ui/widget/panel.cpp:117 msgid "Grid" msgstr "Grille" -#: ../src/extension/internal/grid.cpp:211 +#: ../src/extension/internal/grid.cpp:212 msgid "Line Width:" msgstr "Largeur de ligne :" -#: ../src/extension/internal/grid.cpp:212 +#: ../src/extension/internal/grid.cpp:213 msgid "Horizontal Spacing:" msgstr "Espacement horizontal :" -#: ../src/extension/internal/grid.cpp:213 +#: ../src/extension/internal/grid.cpp:214 msgid "Vertical Spacing:" msgstr "Espacement vertical :" -#: ../src/extension/internal/grid.cpp:214 +#: ../src/extension/internal/grid.cpp:215 msgid "Horizontal Offset:" msgstr "Décalage horizontal :" -#: ../src/extension/internal/grid.cpp:215 +#: ../src/extension/internal/grid.cpp:216 msgid "Vertical Offset:" msgstr "Décalage vertical :" -#: ../src/extension/internal/grid.cpp:219 +#: ../src/extension/internal/grid.cpp:220 #: ../share/extensions/draw_from_triangle.inx.h:58 #: ../share/extensions/eqtexsvg.inx.h:4 #: ../share/extensions/foldablebox.inx.h:9 @@ -7897,7 +6901,8 @@ msgstr "Décalage vertical :" #: ../share/extensions/grid_cartesian.inx.h:23 #: ../share/extensions/grid_isometric.inx.h:11 #: ../share/extensions/grid_polar.inx.h:22 -#: ../share/extensions/guides_creator.inx.h:20 +#: ../share/extensions/guides_creator.inx.h:19 +#: ../share/extensions/hershey.inx.h:52 #: ../share/extensions/layout_nup.inx.h:35 #: ../share/extensions/lindenmayer.inx.h:34 #: ../share/extensions/param_curves.inx.h:30 @@ -7905,12 +6910,11 @@ msgstr "Décalage vertical :" #: ../share/extensions/polyhedron_3d.inx.h:56 #: ../share/extensions/printing_marks.inx.h:20 #: ../share/extensions/render_alphabetsoup.inx.h:5 -#: ../share/extensions/render_barcode.inx.h:5 #: ../share/extensions/render_barcode_datamatrix.inx.h:5 +#: ../share/extensions/render_barcode.inx.h:5 #: ../share/extensions/render_barcode_qrcode.inx.h:18 -#: ../share/extensions/render_gears.inx.h:11 #: ../share/extensions/render_gear_rack.inx.h:5 -#: ../share/extensions/rtree.inx.h:4 +#: ../share/extensions/render_gears.inx.h:11 ../share/extensions/rtree.inx.h:4 #: ../share/extensions/spirograph.inx.h:10 #: ../share/extensions/svgcalendar.inx.h:38 #: ../share/extensions/triangle.inx.h:14 @@ -7918,14 +6922,14 @@ msgstr "Décalage vertical :" msgid "Render" msgstr "Rendu" -#: ../src/extension/internal/grid.cpp:220 -#: ../src/ui/dialog/document-properties.cpp:148 +#: ../src/extension/internal/grid.cpp:221 +#: ../src/ui/dialog/document-properties.cpp:151 #: ../src/ui/dialog/inkscape-preferences.cpp:776 -#: ../src/widgets/toolbox.cpp:1826 +#: ../src/widgets/toolbox.cpp:1824 msgid "Grids" msgstr "Grilles" -#: ../src/extension/internal/grid.cpp:223 +#: ../src/extension/internal/grid.cpp:224 msgid "Draw a path which is a grid" msgstr "Tracer un chemin en forme de grille" @@ -7941,6 +6945,10 @@ msgstr "JavaFX (*.fx)" msgid "JavaFX Raytracer File" msgstr "Fichier JavaFX Raytracer" +#: ../src/extension/internal/latex-pstricks.cpp:334 +msgid "LaTeX Print" +msgstr "Impression LaTeX" + #: ../src/extension/internal/latex-pstricks-out.cpp:95 msgid "LaTeX Output" msgstr "Sortie Latex" @@ -7953,164 +6961,168 @@ msgstr "LaTeX avec des macros PSTricks (*.tex)" msgid "LaTeX PSTricks File" msgstr "Fichier LaTeX PSTricks" -#: ../src/extension/internal/latex-pstricks.cpp:334 -msgid "LaTeX Print" -msgstr "Impression LaTeX" - -#: ../src/extension/internal/odf.cpp:2148 +#: ../src/extension/internal/odf.cpp:2149 msgid "OpenDocument Drawing Output" msgstr "Sortie Dessin OpenDocument" -#: ../src/extension/internal/odf.cpp:2153 +#: ../src/extension/internal/odf.cpp:2154 msgid "OpenDocument drawing (*.odg)" msgstr "Dessin OpenDocument (*.odg)" -#: ../src/extension/internal/odf.cpp:2154 +#: ../src/extension/internal/odf.cpp:2155 msgid "OpenDocument drawing file" msgstr "Fichier dessin OpenDocument" #. TRANSLATORS: The following are document crop settings for PDF import #. more info: http://www.acrobatusers.com/tech_corners/javascript_corner/tips/2006/page_bounds/ -#: ../src/extension/internal/pdf-input-cairo.cpp:52 -#: ../src/extension/internal/pdfinput/pdf-input.cpp:70 +#: ../src/extension/internal/pdf-input-cairo.cpp:56 +#: ../src/extension/internal/pdfinput/pdf-input.cpp:71 msgid "media box" msgstr "media box" -#: ../src/extension/internal/pdf-input-cairo.cpp:53 -#: ../src/extension/internal/pdfinput/pdf-input.cpp:71 +#: ../src/extension/internal/pdf-input-cairo.cpp:57 +#: ../src/extension/internal/pdfinput/pdf-input.cpp:72 msgid "crop box" msgstr "crop box" -#: ../src/extension/internal/pdf-input-cairo.cpp:54 -#: ../src/extension/internal/pdfinput/pdf-input.cpp:72 +#: ../src/extension/internal/pdf-input-cairo.cpp:58 +#: ../src/extension/internal/pdfinput/pdf-input.cpp:73 msgid "trim box" msgstr "trim box" -#: ../src/extension/internal/pdf-input-cairo.cpp:55 -#: ../src/extension/internal/pdfinput/pdf-input.cpp:73 +#: ../src/extension/internal/pdf-input-cairo.cpp:59 +#: ../src/extension/internal/pdfinput/pdf-input.cpp:74 msgid "bleed box" msgstr "bleed box" -#: ../src/extension/internal/pdf-input-cairo.cpp:56 -#: ../src/extension/internal/pdfinput/pdf-input.cpp:74 +#: ../src/extension/internal/pdf-input-cairo.cpp:60 +#: ../src/extension/internal/pdfinput/pdf-input.cpp:75 msgid "art box" msgstr "art box" #. Crop settings -#: ../src/extension/internal/pdf-input-cairo.cpp:94 -#: ../src/extension/internal/pdfinput/pdf-input.cpp:111 +#: ../src/extension/internal/pdf-input-cairo.cpp:98 +#: ../src/extension/internal/pdfinput/pdf-input.cpp:112 msgid "Clip to:" msgstr "Couper à  :" -#: ../src/extension/internal/pdf-input-cairo.cpp:105 -#: ../src/extension/internal/pdfinput/pdf-input.cpp:122 +#: ../src/extension/internal/pdf-input-cairo.cpp:109 +#: ../src/extension/internal/pdfinput/pdf-input.cpp:123 msgid "Page settings" msgstr "Propriétés de la page" -#: ../src/extension/internal/pdf-input-cairo.cpp:106 -#: ../src/extension/internal/pdfinput/pdf-input.cpp:123 +#: ../src/extension/internal/pdf-input-cairo.cpp:110 +#: ../src/extension/internal/pdfinput/pdf-input.cpp:124 msgid "Precision of approximating gradient meshes:" msgstr "Précision de l'approximation sur les mailles de dégradés :" -#: ../src/extension/internal/pdf-input-cairo.cpp:107 -#: ../src/extension/internal/pdfinput/pdf-input.cpp:124 -msgid "<b>Note</b>: setting the precision too high may result in a large SVG file and slow performance." -msgstr "<b>Note</b> : avec une précision trop haute, vous risquez d'obtenir des fichiers SVG très gros et de ralentir le programme." +#: ../src/extension/internal/pdf-input-cairo.cpp:111 +#: ../src/extension/internal/pdfinput/pdf-input.cpp:125 +msgid "" +"<b>Note</b>: setting the precision too high may result in a large SVG file " +"and slow performance." +msgstr "" +"<b>Note</b> : avec une précision trop haute, vous risquez d'obtenir des " +"fichiers SVG très gros et de ralentir le programme." -#: ../src/extension/internal/pdf-input-cairo.cpp:117 -#: ../src/extension/internal/pdfinput/pdf-input.cpp:134 +#: ../src/extension/internal/pdf-input-cairo.cpp:121 +#: ../src/extension/internal/pdfinput/pdf-input.cpp:135 msgid "rough" msgstr "grossier" #. Text options -#: ../src/extension/internal/pdf-input-cairo.cpp:121 -#: ../src/extension/internal/pdfinput/pdf-input.cpp:138 +#: ../src/extension/internal/pdf-input-cairo.cpp:125 +#: ../src/extension/internal/pdfinput/pdf-input.cpp:139 msgid "Text handling:" msgstr "Gestion du texte :" -#: ../src/extension/internal/pdf-input-cairo.cpp:123 -#: ../src/extension/internal/pdf-input-cairo.cpp:124 -#: ../src/extension/internal/pdfinput/pdf-input.cpp:140 +#: ../src/extension/internal/pdf-input-cairo.cpp:127 +#: ../src/extension/internal/pdf-input-cairo.cpp:128 #: ../src/extension/internal/pdfinput/pdf-input.cpp:141 +#: ../src/extension/internal/pdfinput/pdf-input.cpp:142 msgid "Import text as text" msgstr "Importer le texte en tant que texte" -#: ../src/extension/internal/pdf-input-cairo.cpp:125 -#: ../src/extension/internal/pdfinput/pdf-input.cpp:142 +#: ../src/extension/internal/pdf-input-cairo.cpp:129 +#: ../src/extension/internal/pdfinput/pdf-input.cpp:143 msgid "Replace PDF fonts by closest-named installed fonts" -msgstr "Remplace les polices du PDF par les polices installées dont le nom est le plus proche" +msgstr "" +"Remplace les polices du PDF par les polices installées dont le nom est le " +"plus proche" -#: ../src/extension/internal/pdf-input-cairo.cpp:128 -#: ../src/extension/internal/pdfinput/pdf-input.cpp:145 +#: ../src/extension/internal/pdf-input-cairo.cpp:132 +#: ../src/extension/internal/pdfinput/pdf-input.cpp:146 msgid "Embed images" msgstr "Incorporer les images" -#: ../src/extension/internal/pdf-input-cairo.cpp:130 -#: ../src/extension/internal/pdfinput/pdf-input.cpp:147 +#: ../src/extension/internal/pdf-input-cairo.cpp:134 +#: ../src/extension/internal/pdfinput/pdf-input.cpp:148 msgid "Import settings" msgstr "Préférences pour l'importation" -#: ../src/extension/internal/pdf-input-cairo.cpp:238 -#: ../src/extension/internal/pdfinput/pdf-input.cpp:255 +#: ../src/extension/internal/pdf-input-cairo.cpp:242 +#: ../src/extension/internal/pdfinput/pdf-input.cpp:256 msgid "PDF Import Settings" msgstr "Préférences pour l'importation de fichiers PDF" -#: ../src/extension/internal/pdf-input-cairo.cpp:370 -#: ../src/extension/internal/pdfinput/pdf-input.cpp:400 +#: ../src/extension/internal/pdf-input-cairo.cpp:374 +#: ../src/extension/internal/pdfinput/pdf-input.cpp:401 msgctxt "PDF input precision" msgid "rough" msgstr "grossier" -#: ../src/extension/internal/pdf-input-cairo.cpp:371 -#: ../src/extension/internal/pdfinput/pdf-input.cpp:401 +#: ../src/extension/internal/pdf-input-cairo.cpp:375 +#: ../src/extension/internal/pdfinput/pdf-input.cpp:402 msgctxt "PDF input precision" msgid "medium" msgstr "moyen" -#: ../src/extension/internal/pdf-input-cairo.cpp:372 -#: ../src/extension/internal/pdfinput/pdf-input.cpp:402 +#: ../src/extension/internal/pdf-input-cairo.cpp:376 +#: ../src/extension/internal/pdfinput/pdf-input.cpp:403 msgctxt "PDF input precision" msgid "fine" msgstr "fin" -#: ../src/extension/internal/pdf-input-cairo.cpp:373 -#: ../src/extension/internal/pdfinput/pdf-input.cpp:403 +#: ../src/extension/internal/pdf-input-cairo.cpp:377 +#: ../src/extension/internal/pdfinput/pdf-input.cpp:404 msgctxt "PDF input precision" msgid "very fine" msgstr "très fin" -#: ../src/extension/internal/pdf-input-cairo.cpp:646 -#: ../src/extension/internal/pdfinput/pdf-input.cpp:762 +#: ../src/extension/internal/pdf-input-cairo.cpp:655 +#: ../src/extension/internal/pdfinput/pdf-input.cpp:768 msgid "PDF Input" msgstr "Entrée PDF" -#: ../src/extension/internal/pdf-input-cairo.cpp:651 +#: ../src/extension/internal/pdf-input-cairo.cpp:660 msgid "Adobe PDF via poppler-cairo (*.pdf)" msgstr "Adobe PDF via poppler-cairo (*.pdf)" -#: ../src/extension/internal/pdf-input-cairo.cpp:652 +#: ../src/extension/internal/pdf-input-cairo.cpp:661 msgid "PDF Document" msgstr "Document PDF" -#: ../src/extension/internal/pdfinput/pdf-input.cpp:767 +#: ../src/extension/internal/pdfinput/pdf-input.cpp:773 msgid "Adobe PDF (*.pdf)" msgstr "Adobe PDF (*.pdf)" -#: ../src/extension/internal/pdfinput/pdf-input.cpp:768 +#: ../src/extension/internal/pdfinput/pdf-input.cpp:774 msgid "Adobe Portable Document Format" msgstr "Adobe Portable Document Format" -#: ../src/extension/internal/pdfinput/pdf-input.cpp:775 +#: ../src/extension/internal/pdfinput/pdf-input.cpp:781 msgid "AI Input" msgstr "Entrée AI" -#: ../src/extension/internal/pdfinput/pdf-input.cpp:780 +#: ../src/extension/internal/pdfinput/pdf-input.cpp:786 msgid "Adobe Illustrator 9.0 and above (*.ai)" msgstr "Adobe Illustrator 9.0 et supérieur (*.ai)" -#: ../src/extension/internal/pdfinput/pdf-input.cpp:781 +#: ../src/extension/internal/pdfinput/pdf-input.cpp:787 msgid "Open files saved in Adobe Illustrator 9.0 and newer versions" -msgstr "Ouvrir des fichiers créés avec Adobe Illustrator version 9.0 et les versions plus récentes" +msgstr "" +"Ouvrir des fichiers créés avec Adobe Illustrator version 9.0 et les versions " +"plus récentes" #: ../src/extension/internal/pov-out.cpp:715 msgid "PovRay Output" @@ -8164,8 +7176,7 @@ msgstr "Format Scalable Vector Graphic défini par le W3C" msgid "SVGZ Input" msgstr "Entrée SVGZ" -#: ../src/extension/internal/svgz.cpp:52 -#: ../src/extension/internal/svgz.cpp:66 +#: ../src/extension/internal/svgz.cpp:52 ../src/extension/internal/svgz.cpp:66 msgid "Compressed Inkscape SVG (*.svgz)" msgstr "SVG Inkscape compressé (*.svgz)" @@ -8173,8 +7184,7 @@ msgstr "SVG Inkscape compressé (*.svgz)" msgid "SVG file format compressed with GZip" msgstr "Format de fichier SVG compressé avec Gzip" -#: ../src/extension/internal/svgz.cpp:61 -#: ../src/extension/internal/svgz.cpp:75 +#: ../src/extension/internal/svgz.cpp:61 ../src/extension/internal/svgz.cpp:75 msgid "SVGZ Output" msgstr "Sortie SVGZ" @@ -8190,60 +7200,92 @@ msgstr "SVG simple compressé (*.svgz)" msgid "Scalable Vector Graphics format compressed with GZip" msgstr "Format Scalable Vector Graphics compressé avec Gzip" -#: ../src/extension/internal/vsd-input.cpp:267 +#: ../src/extension/internal/vsd-input.cpp:274 msgid "VSD Input" msgstr "Entrée VSD" -#: ../src/extension/internal/vsd-input.cpp:272 +#: ../src/extension/internal/vsd-input.cpp:279 msgid "Microsoft Visio Diagram (*.vsd)" msgstr "Diagramme Microsoft Visio (*.vsd)" -#: ../src/extension/internal/vsd-input.cpp:273 +#: ../src/extension/internal/vsd-input.cpp:280 msgid "File format used by Microsoft Visio 6 and later" msgstr "" -#: ../src/extension/internal/vsd-input.cpp:280 +#: ../src/extension/internal/vsd-input.cpp:287 msgid "VDX Input" msgstr "Entrée VDX" -#: ../src/extension/internal/vsd-input.cpp:285 +#: ../src/extension/internal/vsd-input.cpp:292 msgid "Microsoft Visio XML Diagram (*.vdx)" msgstr "Diagramme Microsoft Visio XML (*.vdx)" -#: ../src/extension/internal/vsd-input.cpp:286 +#: ../src/extension/internal/vsd-input.cpp:293 msgid "File format used by Microsoft Visio 2010 and later" msgstr "" -#: ../src/extension/internal/vsd-input.cpp:293 +#: ../src/extension/internal/vsd-input.cpp:300 msgid "VSDM Input" msgstr "Entrée VSDM" -#: ../src/extension/internal/vsd-input.cpp:298 +#: ../src/extension/internal/vsd-input.cpp:305 msgid "Microsoft Visio 2013 drawing (*.vsdm)" msgstr "" -#: ../src/extension/internal/vsd-input.cpp:299 -#: ../src/extension/internal/vsd-input.cpp:312 +#: ../src/extension/internal/vsd-input.cpp:306 +#: ../src/extension/internal/vsd-input.cpp:319 msgid "File format used by Microsoft Visio 2013 and later" msgstr "" -#: ../src/extension/internal/vsd-input.cpp:306 +#: ../src/extension/internal/vsd-input.cpp:313 msgid "VSDX Input" msgstr "Entrée VSDX" -#: ../src/extension/internal/vsd-input.cpp:311 +#: ../src/extension/internal/vsd-input.cpp:318 msgid "Microsoft Visio 2013 drawing (*.vsdx)" msgstr "" -#: ../src/extension/internal/wpg-input.cpp:121 +#: ../src/extension/internal/wmf-inout.cpp:3220 +msgid "WMF Input" +msgstr "Entrée WMF" + +#: ../src/extension/internal/wmf-inout.cpp:3225 +msgid "Windows Metafiles (*.wmf)" +msgstr "Métafichier Windows (*.wmf)" + +#: ../src/extension/internal/wmf-inout.cpp:3226 +msgid "Windows Metafiles" +msgstr "Métafichier Windows" + +#: ../src/extension/internal/wmf-inout.cpp:3234 +#, fuzzy +msgid "WMF Output" +msgstr "Sortie EMF" + +#: ../src/extension/internal/wmf-inout.cpp:3244 +msgid "Map all fill patterns to standard WMF hatches" +msgstr "" + +#: ../src/extension/internal/wmf-inout.cpp:3248 +#: ../share/extensions/wmf_input.inx.h:2 +#: ../share/extensions/wmf_output.inx.h:2 +msgid "Windows Metafile (*.wmf)" +msgstr "Métafichier Windows (*.wmf)" + +#: ../src/extension/internal/wmf-inout.cpp:3249 +#, fuzzy +msgid "Windows Metafile" +msgstr "Métafichier Windows" + +#: ../src/extension/internal/wpg-input.cpp:129 msgid "WPG Input" msgstr "Entrée WPG" -#: ../src/extension/internal/wpg-input.cpp:126 +#: ../src/extension/internal/wpg-input.cpp:134 msgid "WordPerfect Graphics (*.wpg)" msgstr "WordPerfect Graphics (*.wpg)" -#: ../src/extension/internal/wpg-input.cpp:127 +#: ../src/extension/internal/wpg-input.cpp:135 msgid "Vector graphics format used by Corel WordPerfect" msgstr "Format graphique vectoriel utilisé par Corel WordPerfect" @@ -8255,137 +7297,142 @@ msgstr "Aperçu en direct" msgid "Is the effect previewed live on canvas?" msgstr "Prévisualiser l'effet en direct sur la zone de travail ?" -#: ../src/extension/system.cpp:125 -#: ../src/extension/system.cpp:127 +#: ../src/extension/system.cpp:125 ../src/extension/system.cpp:127 msgid "Format autodetect failed. The file is being opened as SVG." -msgstr "Échec de la détection automatique du format. Le fichier est ouvert en tant que SVG." +msgstr "" +"Échec de la détection automatique du format. Le fichier est ouvert en tant " +"que SVG." -#: ../src/file.cpp:153 +#: ../src/file.cpp:181 msgid "default.svg" msgstr "default.fr.svg" -#: ../src/file.cpp:284 +#: ../src/file.cpp:320 msgid "Broken links have been changed to point to existing files." -msgstr "Les liens brisés ont été modifiés pour pointer vers des fichiers existant." +msgstr "" +"Les liens brisés ont été modifiés pour pointer vers des fichiers existant." -#: ../src/file.cpp:295 -#: ../src/file.cpp:1218 +#: ../src/file.cpp:331 ../src/file.cpp:1259 #, c-format msgid "Failed to load the requested file %s" msgstr "Échec du chargement du fichier %s" -#: ../src/file.cpp:321 +#: ../src/file.cpp:357 msgid "Document not saved yet. Cannot revert." msgstr "Document non enregistré. Impossible de le recharger." -#: ../src/file.cpp:327 +#: ../src/file.cpp:363 #, c-format msgid "Changes will be lost! Are you sure you want to reload document %s?" -msgstr "Les changements seront perdus ! Êtes-vous sûr de vouloir recharger le document %s ?" +msgstr "" +"Les changements seront perdus ! Êtes-vous sûr de vouloir recharger le " +"document %s ?" -#: ../src/file.cpp:356 +#: ../src/file.cpp:392 msgid "Document reverted." msgstr "Document rechargé." -#: ../src/file.cpp:358 +#: ../src/file.cpp:394 msgid "Document not reverted." msgstr "Document non rechargé." -#: ../src/file.cpp:508 +#: ../src/file.cpp:544 msgid "Select file to open" msgstr "Sélectionner un fichier à ouvrir" -#: ../src/file.cpp:592 +#: ../src/file.cpp:626 msgid "Clean up document" msgstr "Nettoyer le document" -#: ../src/file.cpp:597 +#: ../src/file.cpp:633 #, c-format msgid "Removed <b>%i</b> unused definition in <defs>." msgid_plural "Removed <b>%i</b> unused definitions in <defs>." -msgstr[0] "Suppression de <b>%i</b> définition inutilisée dans les <defs>." -msgstr[1] "Suppression de <b>%i</b> définitions inutilisées dans les <defs>." +msgstr[0] "" +"Suppression de <b>%i</b> définition inutilisée dans les <defs>." +msgstr[1] "" +"Suppression de <b>%i</b> définitions inutilisées dans les <defs>." -#: ../src/file.cpp:602 +#: ../src/file.cpp:638 msgid "No unused definitions in <defs>." msgstr "Aucune définition inutilisée dans les <defs>." -#: ../src/file.cpp:633 +#: ../src/file.cpp:670 #, c-format -msgid "No Inkscape extension found to save document (%s). This may have been caused by an unknown filename extension." -msgstr "Aucune extension Inkscape pour enregistrer le document (%s) n'a été trouvée. Cela peut venir d'une extension de fichier inconnue." - -#: ../src/file.cpp:634 -#: ../src/file.cpp:642 -#: ../src/file.cpp:650 -#: ../src/file.cpp:656 -#: ../src/file.cpp:661 +msgid "" +"No Inkscape extension found to save document (%s). This may have been " +"caused by an unknown filename extension." +msgstr "" +"Aucune extension Inkscape pour enregistrer le document (%s) n'a été trouvée. " +"Cela peut venir d'une extension de fichier inconnue." + +#: ../src/file.cpp:671 ../src/file.cpp:679 ../src/file.cpp:687 +#: ../src/file.cpp:693 ../src/file.cpp:698 msgid "Document not saved." msgstr "Document non enregistré." -#: ../src/file.cpp:641 +#: ../src/file.cpp:678 #, c-format -msgid "File %s is write protected. Please remove write protection and try again." -msgstr "Le fichier %s est protégé en écriture. Veuillez supprimer cette protection et recommencer." +msgid "" +"File %s is write protected. Please remove write protection and try again." +msgstr "" +"Le fichier %s est protégé en écriture. Veuillez supprimer cette protection " +"et recommencer." -#: ../src/file.cpp:649 +#: ../src/file.cpp:686 #, c-format msgid "File %s could not be saved." msgstr "Le fichier %s n'a pas pu être enregistré." -#: ../src/file.cpp:679 -#: ../src/file.cpp:681 +#: ../src/file.cpp:716 ../src/file.cpp:718 msgid "Document saved." msgstr "Document enregistré." #. We are saving for the first time; create a unique default filename -#: ../src/file.cpp:829 -#: ../src/file.cpp:1381 +#: ../src/file.cpp:866 ../src/file.cpp:1422 #, c-format msgid "drawing%s" msgstr "dessin%s" -#: ../src/file.cpp:835 +#: ../src/file.cpp:872 #, c-format msgid "drawing-%d%s" msgstr "dessin-%d%s" -#: ../src/file.cpp:839 +#: ../src/file.cpp:876 #, c-format msgid "%s" msgstr "%s" -#: ../src/file.cpp:854 +#: ../src/file.cpp:891 msgid "Select file to save a copy to" msgstr "Sélectionner le fichier dans lequel enregistrer une copie" -#: ../src/file.cpp:856 +#: ../src/file.cpp:893 msgid "Select file to save to" msgstr "Sélectionner le fichier dans lequel enregistrer" -#: ../src/file.cpp:962 -#: ../src/file.cpp:964 +#: ../src/file.cpp:999 ../src/file.cpp:1001 msgid "No changes need to be saved." msgstr "Aucun changement à enregistrer." -#: ../src/file.cpp:983 +#: ../src/file.cpp:1020 msgid "Saving document..." msgstr "Enregistrement du document..." -#: ../src/file.cpp:1215 -#: ../src/ui/dialog/ocaldialogs.cpp:1244 +#: ../src/file.cpp:1256 ../src/ui/dialog/ocaldialogs.cpp:1244 msgid "Import" msgstr "Importer" -#: ../src/file.cpp:1265 +#: ../src/file.cpp:1306 msgid "Select file to import" msgstr "Sélectionner un fichier à importer" -#: ../src/file.cpp:1403 +#: ../src/file.cpp:1444 msgid "Select file to export to" msgstr "Sélectionner un fichier vers lequel exporter" -#: ../src/file.cpp:1656 +#: ../src/file.cpp:1697 msgid "Import Clip Art" msgstr "Importer un Clip Art" @@ -8413,7 +7460,7 @@ msgstr "Carte de déplacement" msgid "Flood" msgstr "Remplissage" -#: ../src/filter-enums.cpp:30 +#: ../src/filter-enums.cpp:30 ../share/extensions/text_merge.inx.h:1 msgid "Merge" msgstr "Fusionner" @@ -8466,8 +7513,7 @@ msgid "Luminance to Alpha" msgstr "Luminance vers opacité" #. File -#: ../src/filter-enums.cpp:70 -#: ../src/verbs.cpp:2296 +#: ../src/filter-enums.cpp:70 ../src/verbs.cpp:2355 #: ../share/extensions/jessyInk_mouseHandler.inx.h:3 #: ../share/extensions/jessyInk_transitions.inx.h:7 msgid "Default" @@ -8477,8 +7523,7 @@ msgstr "Défaut" msgid "Arithmetic" msgstr "Arithmetic" -#: ../src/filter-enums.cpp:92 -#: ../src/selection-chemistry.cpp:516 +#: ../src/filter-enums.cpp:92 ../src/selection-chemistry.cpp:532 msgid "Duplicate" msgstr "Dupliquer" @@ -8510,79 +7555,85 @@ msgstr "Lumière ponctuelle (rayons omnidirectionnels)" msgid "Spot Light" msgstr "Lumière spot (cône de lumière)" -#: ../src/flood-context.cpp:227 +#: ../src/flood-context.cpp:193 msgid "Visible Colors" msgstr "Couleurs visibles" -#: ../src/flood-context.cpp:231 -#: ../src/widgets/sp-color-icc-selector.cpp:361 +#: ../src/flood-context.cpp:197 ../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:304 +#: ../src/widgets/sp-color-scales.cpp:456 ../src/widgets/tweak-toolbar.cpp:300 #: ../share/extensions/color_randomize.inx.h:3 msgid "Hue" msgstr "Teinte" -#: ../src/flood-context.cpp:245 +#: ../src/flood-context.cpp:211 msgctxt "Flood autogap" msgid "None" msgstr "Aucun" -#: ../src/flood-context.cpp:246 +#: ../src/flood-context.cpp:212 msgctxt "Flood autogap" msgid "Small" msgstr "Petit" -#: ../src/flood-context.cpp:247 +#: ../src/flood-context.cpp:213 msgctxt "Flood autogap" msgid "Medium" msgstr "Moyen" -#: ../src/flood-context.cpp:248 +#: ../src/flood-context.cpp:214 msgctxt "Flood autogap" msgid "Large" msgstr "Grand" -#: ../src/flood-context.cpp:470 +#: ../src/flood-context.cpp:436 msgid "<b>Too much inset</b>, the result is empty." msgstr "<b>Trop de contraction</b>, le résultat est vide." -#: ../src/flood-context.cpp:511 +#: ../src/flood-context.cpp:477 #, c-format -msgid "Area filled, path with <b>%d</b> node created and unioned with selection." -msgid_plural "Area filled, path with <b>%d</b> nodes created and unioned with selection." -msgstr[0] "Zone remplie, création d'un chemin de <b>%d</b> nÅ“ud, ajouté à la sélection." -msgstr[1] "Zone remplie, création d'un chemin de <b>%d</b> nÅ“uds, ajouté à la sélection." - -#: ../src/flood-context.cpp:517 +msgid "" +"Area filled, path with <b>%d</b> node created and unioned with selection." +msgid_plural "" +"Area filled, path with <b>%d</b> nodes created and unioned with selection." +msgstr[0] "" +"Zone remplie, création d'un chemin de <b>%d</b> nÅ“ud, ajouté à la sélection." +msgstr[1] "" +"Zone remplie, création d'un chemin de <b>%d</b> nÅ“uds, ajouté à la sélection." + +#: ../src/flood-context.cpp:483 #, c-format msgid "Area filled, path with <b>%d</b> node created." msgid_plural "Area filled, path with <b>%d</b> nodes created." msgstr[0] "Zone remplie, création d'un chemin avec <b>%d</b> nÅ“ud." msgstr[1] "Zone remplie, création d'un chemin avec <b>%d</b> nÅ“uds." -#: ../src/flood-context.cpp:785 -#: ../src/flood-context.cpp:1095 +#: ../src/flood-context.cpp:751 ../src/flood-context.cpp:1061 msgid "<b>Area is not bounded</b>, cannot fill." msgstr "<b>Zone non bornée</b>, impossible de remplir." -#: ../src/flood-context.cpp:1100 -msgid "<b>Only the visible part of the bounded area was filled.</b> If you want to fill all of the area, undo, zoom out, and fill again." -msgstr "<b>Seule la partie visible de la zone a été remplie.</b> Pour remplir toute la zone, annulez, dézoomez et remplissez à nouveau." +#: ../src/flood-context.cpp:1066 +msgid "" +"<b>Only the visible part of the bounded area was filled.</b> If you want to " +"fill all of the area, undo, zoom out, and fill again." +msgstr "" +"<b>Seule la partie visible de la zone a été remplie.</b> Pour remplir toute " +"la zone, annulez, dézoomez et remplissez à nouveau." -#: ../src/flood-context.cpp:1118 -#: ../src/flood-context.cpp:1277 +#: ../src/flood-context.cpp:1084 ../src/flood-context.cpp:1235 msgid "Fill bounded area" msgstr "Remplissage d'une zone bornée" -#: ../src/flood-context.cpp:1137 +#: ../src/flood-context.cpp:1100 msgid "Set style on object" msgstr "Appliquer un style à l'objet" -#: ../src/flood-context.cpp:1196 +#: ../src/flood-context.cpp:1160 msgid "<b>Draw over</b> areas to add to fill, hold <b>Alt</b> for touch fill" -msgstr "<b>Dessiner au-dessus</b> d'une zone pour la remplir, avec <b>Alt</b> pour remplir au toucher" +msgstr "" +"<b>Dessiner au-dessus</b> d'une zone pour la remplir, avec <b>Alt</b> pour " +"remplir au toucher" #: ../src/gradient-chemistry.cpp:1568 msgid "Invert gradient colors" @@ -8592,62 +7643,50 @@ msgstr "Inverser les couleurs du dégradé" msgid "Reverse gradient" msgstr "Inverser le dégradé" -#: ../src/gradient-chemistry.cpp:1608 -#: ../src/widgets/gradient-selector.cpp:227 +#: ../src/gradient-chemistry.cpp:1608 ../src/widgets/gradient-selector.cpp:228 msgid "Delete swatch" msgstr "Supprimer l'échantillon" -#: ../src/gradient-context.cpp:110 -#: ../src/gradient-drag.cpp:96 +#: ../src/gradient-context.cpp:101 ../src/gradient-drag.cpp:96 msgid "Linear gradient <b>start</b>" msgstr "<b>Début</b> de dégradé linéaire" #. POINT_LG_BEGIN -#: ../src/gradient-context.cpp:111 -#: ../src/gradient-drag.cpp:97 +#: ../src/gradient-context.cpp:102 ../src/gradient-drag.cpp:97 msgid "Linear gradient <b>end</b>" msgstr "<b>Fin</b> de dégradé linéaire" -#: ../src/gradient-context.cpp:112 -#: ../src/gradient-drag.cpp:98 +#: ../src/gradient-context.cpp:103 ../src/gradient-drag.cpp:98 msgid "Linear gradient <b>mid stop</b>" msgstr "<b>Stop médian</b> de dégradé linéaire" -#: ../src/gradient-context.cpp:113 -#: ../src/gradient-drag.cpp:99 +#: ../src/gradient-context.cpp:104 ../src/gradient-drag.cpp:99 msgid "Radial gradient <b>center</b>" msgstr "<b>Centre</b> de dégradé radial" -#: ../src/gradient-context.cpp:114 -#: ../src/gradient-context.cpp:115 -#: ../src/gradient-drag.cpp:100 -#: ../src/gradient-drag.cpp:101 +#: ../src/gradient-context.cpp:105 ../src/gradient-context.cpp:106 +#: ../src/gradient-drag.cpp:100 ../src/gradient-drag.cpp:101 msgid "Radial gradient <b>radius</b>" msgstr "<b>Rayon</b> de dégradé radial" -#: ../src/gradient-context.cpp:116 -#: ../src/gradient-drag.cpp:102 +#: ../src/gradient-context.cpp:107 ../src/gradient-drag.cpp:102 msgid "Radial gradient <b>focus</b>" msgstr "<b>Foyer</b> de dégradé radial" #. POINT_RG_FOCUS -#: ../src/gradient-context.cpp:117 -#: ../src/gradient-context.cpp:118 -#: ../src/gradient-drag.cpp:103 -#: ../src/gradient-drag.cpp:104 +#: ../src/gradient-context.cpp:108 ../src/gradient-context.cpp:109 +#: ../src/gradient-drag.cpp:103 ../src/gradient-drag.cpp:104 msgid "Radial gradient <b>mid stop</b>" msgstr "<b>Stop médian</b> de dégradé radial" #. TRANSLATORS: %s will be substituted with the point name (see previous messages); This is part of a compound message -#: ../src/gradient-context.cpp:143 -#: ../src/mesh-context.cpp:139 +#: ../src/gradient-context.cpp:132 ../src/mesh-context.cpp:129 #, c-format msgid "%s selected" msgstr "%s sélectionné" #. TRANSLATORS: Mind the space in front. This is part of a compound message -#: ../src/gradient-context.cpp:145 -#: ../src/gradient-context.cpp:154 +#: ../src/gradient-context.cpp:134 ../src/gradient-context.cpp:143 #, c-format msgid " out of %d gradient handle" msgid_plural " out of %d gradient handles" @@ -8655,12 +7694,9 @@ msgstr[0] " sur %d poignée de dégradé" msgstr[1] " sur %d poignées de dégradé" #. TRANSLATORS: Mind the space in front. (Refers to gradient handles selected). This is part of a compound message -#: ../src/gradient-context.cpp:146 -#: ../src/gradient-context.cpp:155 -#: ../src/gradient-context.cpp:162 -#: ../src/mesh-context.cpp:142 -#: ../src/mesh-context.cpp:153 -#: ../src/mesh-context.cpp:161 +#: ../src/gradient-context.cpp:135 ../src/gradient-context.cpp:144 +#: ../src/gradient-context.cpp:151 ../src/mesh-context.cpp:132 +#: ../src/mesh-context.cpp:143 ../src/mesh-context.cpp:151 #, c-format msgid " on %d selected object" msgid_plural " on %d selected objects" @@ -8668,16 +7704,21 @@ msgstr[0] " dans %d objet sélectionné" msgstr[1] " dans %d objets sélectionnés" #. TRANSLATORS: This is a part of a compound message (out of two more indicating: grandint handle count & object count) -#: ../src/gradient-context.cpp:152 -#: ../src/mesh-context.cpp:149 +#: ../src/gradient-context.cpp:141 ../src/mesh-context.cpp:139 #, c-format -msgid "One handle merging %d stop (drag with <b>Shift</b> to separate) selected" -msgid_plural "One handle merging %d stops (drag with <b>Shift</b> to separate) selected" -msgstr[0] "Une poignée de dégradé rassemblant %d stops (cliquer-glissser avec <b>Maj</b> pour les séparer) sélectionnée" -msgstr[1] "Une poignée de dégradé rassemblant %d stops (cliquer-glissser avec <b>Maj</b> pour les séparer) sélectionnée" +msgid "" +"One handle merging %d stop (drag with <b>Shift</b> to separate) selected" +msgid_plural "" +"One handle merging %d stops (drag with <b>Shift</b> to separate) selected" +msgstr[0] "" +"Une poignée de dégradé rassemblant %d stops (cliquer-glissser avec <b>Maj</" +"b> pour les séparer) sélectionnée" +msgstr[1] "" +"Une poignée de dégradé rassemblant %d stops (cliquer-glissser avec <b>Maj</" +"b> pour les séparer) sélectionnée" #. TRANSLATORS: The plural refers to number of selected gradient handles. This is part of a compound message (part two indicates selected object count) -#: ../src/gradient-context.cpp:160 +#: ../src/gradient-context.cpp:149 #, c-format msgid "<b>%d</b> gradient handle selected out of %d" msgid_plural "<b>%d</b> gradient handles selected out of %d" @@ -8685,66 +7726,66 @@ msgstr[0] "<b>%d</b> poignée de dégradé sélectionnée sur %d" msgstr[1] "<b>%d</b> poignées de dégradé sélectionnées sur %d" #. TRANSLATORS: The plural refers to number of selected objects -#: ../src/gradient-context.cpp:167 +#: ../src/gradient-context.cpp:156 #, c-format msgid "<b>No</b> gradient handles selected out of %d on %d selected object" -msgid_plural "<b>No</b> gradient handles selected out of %d on %d selected objects" +msgid_plural "" +"<b>No</b> gradient handles selected out of %d on %d selected objects" msgstr[0] "<b>Aucune</b> poignée sélectionnée sur %d dans %d objet sélectionné" -msgstr[1] "<b>Aucune</b> poignée sélectionnée sur %d dans %d objets sélectionnés" +msgstr[1] "" +"<b>Aucune</b> poignée sélectionnée sur %d dans %d objets sélectionnés" -#: ../src/gradient-context.cpp:381 -#: ../src/gradient-context.cpp:479 -#: ../src/ui/dialog/swatches.cpp:203 -#: ../src/widgets/gradient-vector.cpp:814 +#: ../src/gradient-context.cpp:366 ../src/gradient-context.cpp:464 +#: ../src/ui/dialog/swatches.cpp:203 ../src/widgets/gradient-vector.cpp:814 msgid "Add gradient stop" msgstr "Ajouter un stop au dégradé" -#: ../src/gradient-context.cpp:454 +#: ../src/gradient-context.cpp:439 msgid "Simplify gradient" msgstr "Simplifier le dégradé" -#: ../src/gradient-context.cpp:533 +#: ../src/gradient-context.cpp:515 msgid "Create default gradient" msgstr "Créer un dégradé par défaut" -#: ../src/gradient-context.cpp:590 -#: ../src/mesh-context.cpp:597 +#: ../src/gradient-context.cpp:574 ../src/mesh-context.cpp:569 msgid "<b>Draw around</b> handles to select them" msgstr "<b>Dessiner autour</b> des poignées pour les sélectionner" -#: ../src/gradient-context.cpp:706 +#: ../src/gradient-context.cpp:697 msgid "<b>Ctrl</b>: snap gradient angle" -msgstr "<b>Ctrl</b> : pour forcer la modification de l'inclinaison du dégradé par incréments" +msgstr "" +"<b>Ctrl</b> : pour forcer la modification de l'inclinaison du dégradé par " +"incréments" -#: ../src/gradient-context.cpp:707 +#: ../src/gradient-context.cpp:698 msgid "<b>Shift</b>: draw gradient around the starting point" msgstr "<b>Maj</b> : pour dessiner le dégradé autour du point de départ" -#: ../src/gradient-context.cpp:930 -#: ../src/mesh-context.cpp:997 +#: ../src/gradient-context.cpp:952 ../src/mesh-context.cpp:992 #, 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] "<b>Dégradé</b> appliqué à %d objet; déplacer avec <b>Ctrl</b> pour forcer la modification de l'inclinaison par incréments" -msgstr[1] "<b>Dégradé</b> appliqué à %d objets; déplacer avec <b>Ctrl</b> pour forcer la modification de l'inclinaison par incréments" - -#: ../src/gradient-context.cpp:934 -#: ../src/mesh-context.cpp:1001 +msgstr[0] "" +"<b>Dégradé</b> appliqué à %d objet; déplacer avec <b>Ctrl</b> pour forcer la " +"modification de l'inclinaison par incréments" +msgstr[1] "" +"<b>Dégradé</b> appliqué à %d objets; déplacer avec <b>Ctrl</b> pour forcer " +"la modification de l'inclinaison par incréments" + +#: ../src/gradient-context.cpp:956 ../src/mesh-context.cpp:996 msgid "Select <b>objects</b> on which to create gradient." msgstr "Sélectionner des <b>objets</b> auxquels appliquer un dégradé." -#: ../src/gradient-drag.cpp:105 -#: ../src/mesh-context.cpp:112 +#: ../src/gradient-drag.cpp:105 ../src/mesh-context.cpp:102 msgid "Mesh gradient <b>corner</b>" msgstr "<b>coin</b> de filet de dégradé" -#: ../src/gradient-drag.cpp:106 -#: ../src/mesh-context.cpp:113 +#: ../src/gradient-drag.cpp:106 ../src/mesh-context.cpp:103 msgid "Mesh gradient <b>handle</b>" msgstr "<b>poignée</b> de filet de dégradé" -#: ../src/gradient-drag.cpp:107 -#: ../src/mesh-context.cpp:114 +#: ../src/gradient-drag.cpp:107 ../src/mesh-context.cpp:104 msgid "Mesh gradient <b>tensor</b>" msgstr "<b>tenseur</b> de filet de dégradé" @@ -8752,362 +7793,194 @@ msgstr "<b>tenseur</b> de filet de dégradé" msgid "Added patch row or column" msgstr "" -#: ../src/gradient-drag.cpp:792 +#: ../src/gradient-drag.cpp:794 msgid "Merge gradient handles" msgstr "Fusionner les poignées de dégradé" -#: ../src/gradient-drag.cpp:1101 +#: ../src/gradient-drag.cpp:1103 msgid "Move gradient handle" msgstr "Déplacer la poignée de dégradé" -#: ../src/gradient-drag.cpp:1160 -#: ../src/widgets/gradient-vector.cpp:847 +#: ../src/gradient-drag.cpp:1162 ../src/widgets/gradient-vector.cpp:847 msgid "Delete gradient stop" msgstr "Supprimer un stop de dégradé" -#: ../src/gradient-drag.cpp:1423 +#: ../src/gradient-drag.cpp:1425 #, c-format -msgid "%s %d for: %s%s; drag with <b>Ctrl</b> to snap offset; click with <b>Ctrl+Alt</b> to delete stop" -msgstr "%s %d pour %s%s; déplacer avec <b>Ctrl</b> pour faire varier le décalage par incréments; cliquer avec <b>Ctrl+Alt</b> pour supprimer le stop" +msgid "" +"%s %d for: %s%s; drag with <b>Ctrl</b> to snap offset; click with <b>Ctrl" +"+Alt</b> to delete stop" +msgstr "" +"%s %d pour %s%s; déplacer avec <b>Ctrl</b> pour faire varier le décalage par " +"incréments; cliquer avec <b>Ctrl+Alt</b> pour supprimer le stop" -#: ../src/gradient-drag.cpp:1427 -#: ../src/gradient-drag.cpp:1434 +#: ../src/gradient-drag.cpp:1429 ../src/gradient-drag.cpp:1436 msgid " (stroke)" msgstr " (contour)" -#: ../src/gradient-drag.cpp:1431 +#: ../src/gradient-drag.cpp:1433 #, c-format -msgid "%s for: %s%s; drag with <b>Ctrl</b> to snap angle, with <b>Ctrl+Alt</b> to preserve angle, with <b>Ctrl+Shift</b> to scale around center" -msgstr "%s pour %s%s; cliquer-déplacer avec <b>Ctrl</b> pour faire varier l'angle par incréments; <b>Ctrl+Alt</b> pour préserver l'angle, avec <b>Ctrl+Maj</b> pour redimensionner autour du centre" +msgid "" +"%s for: %s%s; drag with <b>Ctrl</b> to snap angle, with <b>Ctrl+Alt</b> to " +"preserve angle, with <b>Ctrl+Shift</b> to scale around center" +msgstr "" +"%s pour %s%s; cliquer-déplacer avec <b>Ctrl</b> pour faire varier l'angle " +"par incréments; <b>Ctrl+Alt</b> pour préserver l'angle, avec <b>Ctrl+Maj</b> " +"pour redimensionner autour du centre" -#: ../src/gradient-drag.cpp:1439 -#, c-format -msgid "Radial gradient <b>center</b> and <b>focus</b>; drag with <b>Shift</b> to separate focus" -msgstr "Dégradé radial, <b>centre</b> et <b>foyer</b>; déplacer avec <b>Maj</b> pour séparer le foyer" +#: ../src/gradient-drag.cpp:1441 +msgid "" +"Radial gradient <b>center</b> and <b>focus</b>; drag with <b>Shift</b> to " +"separate focus" +msgstr "" +"Dégradé radial, <b>centre</b> et <b>foyer</b>; déplacer avec <b>Maj</b> pour " +"séparer le foyer" -#: ../src/gradient-drag.cpp:1442 +#: ../src/gradient-drag.cpp:1444 #, c-format -msgid "Gradient point shared by <b>%d</b> gradient; drag with <b>Shift</b> to separate" -msgid_plural "Gradient point shared by <b>%d</b> gradients; drag with <b>Shift</b> to separate" -msgstr[0] "Point de dégradé partagé entre <b>%d</b> dégradé; déplacer avec <b>Maj</b> pour séparer " -msgstr[1] "Point de dégradé partagé entre <b>%d</b> dégradés; déplacer avec <b>Maj</b> pour séparer " - -#: ../src/gradient-drag.cpp:2370 +msgid "" +"Gradient point shared by <b>%d</b> gradient; drag with <b>Shift</b> to " +"separate" +msgid_plural "" +"Gradient point shared by <b>%d</b> gradients; drag with <b>Shift</b> to " +"separate" +msgstr[0] "" +"Point de dégradé partagé entre <b>%d</b> dégradé; déplacer avec <b>Maj</b> " +"pour séparer " +msgstr[1] "" +"Point de dégradé partagé entre <b>%d</b> dégradés; déplacer avec <b>Maj</b> " +"pour séparer " + +#: ../src/gradient-drag.cpp:2372 msgid "Move gradient handle(s)" msgstr "Déplacer la poignée de dégradé" -#: ../src/gradient-drag.cpp:2406 +#: ../src/gradient-drag.cpp:2408 msgid "Move gradient mid stop(s)" msgstr "Déplacer le stop médian de dégradé" -#: ../src/gradient-drag.cpp:2695 +#: ../src/gradient-drag.cpp:2697 msgid "Delete gradient stop(s)" msgstr "Supprimer un stop de dégradé" -#: ../src/helper/units.cpp:37 -#: ../src/live_effects/lpe-ruler.cpp:42 -msgid "Unit" -msgstr "Unité" - -#. Add the units menu. -#: ../src/helper/units.cpp:37 -#: ../src/widgets/lpe-toolbar.cpp:400 -#: ../src/widgets/node-toolbar.cpp:622 -#: ../src/widgets/paintbucket-toolbar.cpp:185 -#: ../src/widgets/rect-toolbar.cpp:376 -#: ../src/widgets/select-toolbar.cpp:538 -msgid "Units" -msgstr "Unités" - -#: ../src/helper/units.cpp:38 -#: ../share/extensions/dxf_outlines.inx.h:9 -msgid "pt" -msgstr "pt" - -#: ../src/helper/units.cpp:38 -#: ../share/extensions/perfectboundcover.inx.h:11 -msgid "Points" -msgstr "Points" - -#: ../src/helper/units.cpp:38 -msgid "Pt" -msgstr "Pt" - -#: ../src/helper/units.cpp:39 -#: ../src/ui/dialog/inkscape-preferences.cpp:451 -msgid "Pica" -msgstr "Pica" - -#: ../src/helper/units.cpp:39 -#: ../share/extensions/dxf_outlines.inx.h:10 -msgid "pc" -msgstr "pc" - -#: ../src/helper/units.cpp:39 -msgid "Picas" -msgstr "Picas" - -#: ../src/helper/units.cpp:39 -msgid "Pc" -msgstr "Pc" - -#: ../src/helper/units.cpp:40 -#: ../src/ui/dialog/inkscape-preferences.cpp:451 -msgid "Pixel" -msgstr "Pixel" - -#: ../src/helper/units.cpp:40 -#: ../share/extensions/dxf_outlines.inx.h:11 -#: ../share/extensions/render_gears.inx.h:7 -msgid "px" -msgstr "px" - -#: ../src/helper/units.cpp:40 -msgid "Pixels" -msgstr "Pixels" - -#: ../src/helper/units.cpp:40 -msgid "Px" -msgstr "Px" - -#. You can add new elements from this point forward -#: ../src/helper/units.cpp:42 -msgid "Percent" -msgstr "Pourcent" - -#: ../src/helper/units.cpp:42 -#: ../src/ui/dialog/inkscape-preferences.cpp:1265 -msgid "%" -msgstr "%" - -#: ../src/helper/units.cpp:42 -msgid "Percents" -msgstr "Pourcents" - -#: ../src/helper/units.cpp:43 -#: ../src/ui/dialog/inkscape-preferences.cpp:451 -msgid "Millimeter" -msgstr "Millimètre" - -#: ../src/helper/units.cpp:43 -#: ../share/extensions/dxf_outlines.inx.h:12 -#: ../share/extensions/gcodetools_area.inx.h:46 -#: ../share/extensions/gcodetools_dxf_points.inx.h:18 -#: ../share/extensions/gcodetools_engraving.inx.h:24 -#: ../share/extensions/gcodetools_graffiti.inx.h:18 -#: ../share/extensions/gcodetools_lathe.inx.h:39 -#: ../share/extensions/gcodetools_orientation_points.inx.h:11 -#: ../share/extensions/gcodetools_path_to_gcode.inx.h:28 -#: ../share/extensions/render_gears.inx.h:9 -msgid "mm" -msgstr "mm" - -#: ../src/helper/units.cpp:43 -msgid "Millimeters" -msgstr "Millimètres" - -#: ../src/helper/units.cpp:44 -#: ../src/ui/dialog/inkscape-preferences.cpp:451 -msgid "Centimeter" -msgstr "Centimètre" - -#: ../src/helper/units.cpp:44 -#: ../share/extensions/dxf_outlines.inx.h:13 -msgid "cm" -msgstr "cm" - -#: ../src/helper/units.cpp:44 -msgid "Centimeters" -msgstr "Centimètres" - -#: ../src/helper/units.cpp:45 -msgid "Meter" -msgstr "Mètre" - -#: ../src/helper/units.cpp:45 -#: ../share/extensions/dxf_outlines.inx.h:14 -msgid "m" -msgstr "m" - -#: ../src/helper/units.cpp:45 -msgid "Meters" -msgstr "Mètres" - -#. no svg_unit -#: ../src/helper/units.cpp:46 -#: ../src/ui/dialog/inkscape-preferences.cpp:451 -msgid "Inch" -msgstr "Pouce" - -#: ../src/helper/units.cpp:46 -#: ../share/extensions/dxf_outlines.inx.h:15 -#: ../share/extensions/gcodetools_area.inx.h:47 -#: ../share/extensions/gcodetools_dxf_points.inx.h:19 -#: ../share/extensions/gcodetools_engraving.inx.h:25 -#: ../share/extensions/gcodetools_graffiti.inx.h:19 -#: ../share/extensions/gcodetools_lathe.inx.h:40 -#: ../share/extensions/gcodetools_orientation_points.inx.h:12 -#: ../share/extensions/gcodetools_path_to_gcode.inx.h:29 -#: ../share/extensions/render_gears.inx.h:8 -msgid "in" -msgstr "in" - -#: ../src/helper/units.cpp:46 -msgid "Inches" -msgstr "Pouces" - -#: ../src/helper/units.cpp:47 -msgid "Foot" -msgstr "Pied" - -#: ../src/helper/units.cpp:47 -#: ../share/extensions/dxf_outlines.inx.h:16 -msgid "ft" -msgstr "ft" - -#: ../src/helper/units.cpp:47 -msgid "Feet" -msgstr "Pieds" - -#. Volatiles do not have default, so there are none here -#. TRANSLATORS: for info, see http://www.w3.org/TR/REC-CSS2/syndata.html#length-units -#: ../src/helper/units.cpp:50 -#: ../src/ui/dialog/inkscape-preferences.cpp:451 -msgid "Em square" -msgstr "Em carré" - -#: ../src/helper/units.cpp:50 -msgid "em" -msgstr "em" - -#: ../src/helper/units.cpp:50 -msgid "Em squares" -msgstr "Em carrés" - -#. TRANSLATORS: for info, see http://www.w3.org/TR/REC-CSS2/syndata.html#length-units -#: ../src/helper/units.cpp:52 -msgid "Ex square" -msgstr "Ex carré" - -#: ../src/helper/units.cpp:52 -msgid "ex" -msgstr "ex" - -#: ../src/helper/units.cpp:52 -msgid "Ex squares" -msgstr "Ex carrés" - -#: ../src/inkscape.cpp:322 +#: ../src/inkscape.cpp:341 msgid "Autosave failed! Cannot create directory %1." -msgstr "Échec de l'enregistrement automatique. Création du dossier %1 impossible." +msgstr "" +"Échec de l'enregistrement automatique. Création du dossier %1 impossible." -#: ../src/inkscape.cpp:331 +#: ../src/inkscape.cpp:350 msgid "Autosave failed! Cannot open directory %1." -msgstr "Échec de l'enregistrement automatique. Ouverture du dossier %1 impossible." +msgstr "" +"Échec de l'enregistrement automatique. Ouverture du dossier %1 impossible." -#: ../src/inkscape.cpp:347 +#: ../src/inkscape.cpp:366 msgid "Autosaving documents..." msgstr "Enregistrement automatique du document..." -#: ../src/inkscape.cpp:420 +#: ../src/inkscape.cpp:439 msgid "Autosave failed! Could not find inkscape extension to save document." -msgstr "Échec de l'enregistrement automatique ! Impossible de trouver l'extension Inkscape pour enregistrer le document." +msgstr "" +"Échec de l'enregistrement automatique ! Impossible de trouver l'extension " +"Inkscape pour enregistrer le document." -#: ../src/inkscape.cpp:423 -#: ../src/inkscape.cpp:430 +#: ../src/inkscape.cpp:442 ../src/inkscape.cpp:449 #, c-format msgid "Autosave failed! File %s could not be saved." -msgstr "Échec de l'enregistrement automatique ! Le fichier %s n'a pas pu être enregistré." +msgstr "" +"Échec de l'enregistrement automatique ! Le fichier %s n'a pas pu être " +"enregistré." -#: ../src/inkscape.cpp:445 +#: ../src/inkscape.cpp:464 msgid "Autosave complete." msgstr "Enregistrement automatique terminé." -#: ../src/inkscape.cpp:691 +#: ../src/inkscape.cpp:712 msgid "Untitled document" msgstr "Document sans titre" #. Show nice dialog box -#: ../src/inkscape.cpp:723 +#: ../src/inkscape.cpp:744 msgid "Inkscape encountered an internal error and will close now.\n" msgstr "Inkscape a subi une erreur interne et va se fermer maintenant.\n" -#: ../src/inkscape.cpp:724 -msgid "Automatic backups of unsaved documents were done to the following locations:\n" -msgstr "Les enregistrements automatiques des documents non enregistrés ont été effectués à cet emplacement :\n" +#: ../src/inkscape.cpp:745 +msgid "" +"Automatic backups of unsaved documents were done to the following " +"locations:\n" +msgstr "" +"Les enregistrements automatiques des documents non enregistrés ont été " +"effectués à cet emplacement :\n" -#: ../src/inkscape.cpp:725 +#: ../src/inkscape.cpp:746 msgid "Automatic backup of the following documents failed:\n" msgstr "Les enregistrements automatiques des documents suivants ont échoué :\n" -#: ../src/interface.cpp:865 +#: ../src/interface.cpp:751 msgctxt "Interface setup" msgid "Default" msgstr "Défaut" -#: ../src/interface.cpp:865 +#: ../src/interface.cpp:751 msgid "Default interface setup" msgstr "Paramètres par défaut de l'interface" -#: ../src/interface.cpp:866 +#: ../src/interface.cpp:752 msgctxt "Interface setup" msgid "Custom" msgstr "Personnalisé" -#: ../src/interface.cpp:866 +#: ../src/interface.cpp:752 msgid "Setup for custom task" msgstr "Paramétrage personnalisée" -#: ../src/interface.cpp:867 +#: ../src/interface.cpp:753 msgctxt "Interface setup" msgid "Wide" msgstr "Large" -#: ../src/interface.cpp:867 +#: ../src/interface.cpp:753 msgid "Setup for widescreen work" msgstr "Paramétrage pour écran large" -#: ../src/interface.cpp:979 +#: ../src/interface.cpp:865 #, c-format msgid "Verb \"%s\" Unknown" msgstr "Verbe « %s » inconnu" -#: ../src/interface.cpp:1021 +#: ../src/interface.cpp:904 msgid "Open _Recent" msgstr "Documents _récents" -#: ../src/interface.cpp:1129 -#: ../src/interface.cpp:1215 -#: ../src/interface.cpp:1318 -#: ../src/ui/widget/selected-style.cpp:523 +#: ../src/interface.cpp:1012 ../src/interface.cpp:1098 +#: ../src/interface.cpp:1201 ../src/ui/widget/selected-style.cpp:528 msgid "Drop color" msgstr "Déposer la couleur" -#: ../src/interface.cpp:1168 -#: ../src/interface.cpp:1278 +#: ../src/interface.cpp:1051 ../src/interface.cpp:1161 msgid "Drop color on gradient" msgstr "Déposer la couleur dans le dégradé" -#: ../src/interface.cpp:1331 +#: ../src/interface.cpp:1214 msgid "Could not parse SVG data" msgstr "Impossible de parcourir les données SVG" -#: ../src/interface.cpp:1370 +#: ../src/interface.cpp:1253 msgid "Drop SVG" msgstr "Déposer un SVG" -#: ../src/interface.cpp:1383 +#: ../src/interface.cpp:1266 msgid "Drop Symbol" msgstr "Déposer le symbole" -#: ../src/interface.cpp:1414 +#: ../src/interface.cpp:1297 msgid "Drop bitmap image" msgstr "Déposer une image bitmap" -#: ../src/interface.cpp:1506 +#: ../src/interface.cpp:1389 #, c-format msgid "" -"<span weight=\"bold\" size=\"larger\">A file named \"%s\" already exists. Do you want to replace it?</span>\n" +"<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 "" @@ -9116,169 +7989,165 @@ msgstr "" "\n" "Le fichier existe déjà dans « %s ». Le remplacer écrase son contenu." -#: ../src/interface.cpp:1513 -#: ../share/extensions/web-set-att.inx.h:21 +#: ../src/interface.cpp:1396 ../share/extensions/web-set-att.inx.h:21 #: ../share/extensions/web-transmit-att.inx.h:19 msgid "Replace" msgstr "Remplacer" -#: ../src/interface.cpp:1584 +#: ../src/interface.cpp:1467 msgid "Go to parent" msgstr "Sélectionner le parent" #. TRANSLATORS: #%1 is the id of the group e.g. <g id="#g7">, not a number. -#: ../src/interface.cpp:1625 +#: ../src/interface.cpp:1508 msgid "Enter group #%1" msgstr "Entrer dans le groupe #%1" #. Item dialog -#: ../src/interface.cpp:1737 -#: ../src/verbs.cpp:2790 +#: ../src/interface.cpp:1644 ../src/verbs.cpp:2851 msgid "_Object Properties..." msgstr "Propriétés de l'_objet..." -#: ../src/interface.cpp:1746 +#: ../src/interface.cpp:1653 msgid "_Select This" msgstr "_Sélectionner ceci" -#: ../src/interface.cpp:1757 +#: ../src/interface.cpp:1664 msgid "Select Same" msgstr "Sélectionner même" #. Select same fill and stroke -#: ../src/interface.cpp:1767 +#: ../src/interface.cpp:1674 msgid "Fill and Stroke" msgstr "Remplissage et contour" #. Select same fill color -#: ../src/interface.cpp:1774 +#: ../src/interface.cpp:1681 msgid "Fill Color" msgstr "Couleur de remplissage" #. Select same stroke color -#: ../src/interface.cpp:1781 +#: ../src/interface.cpp:1688 msgid "Stroke Color" msgstr "Couleur de contour" #. Select same stroke style -#: ../src/interface.cpp:1788 +#: ../src/interface.cpp:1695 msgid "Stroke Style" msgstr "Style de contour" #. Select same stroke style -#: ../src/interface.cpp:1795 +#: ../src/interface.cpp:1702 msgid "Object type" msgstr "Types d'objet" #. Move to layer -#: ../src/interface.cpp:1802 +#: ../src/interface.cpp:1709 msgid "_Move to layer ..." msgstr "_Déplacer vers le calque..." #. Create link -#: ../src/interface.cpp:1812 +#: ../src/interface.cpp:1719 msgid "Create _Link" msgstr "Créer un _lien" #. Set mask -#: ../src/interface.cpp:1835 +#: ../src/interface.cpp:1742 msgid "Set Mask" msgstr "Définir un masque" #. Release mask -#: ../src/interface.cpp:1846 +#: ../src/interface.cpp:1753 msgid "Release Mask" msgstr "Retirer le masque" #. Set Clip -#: ../src/interface.cpp:1857 +#: ../src/interface.cpp:1764 msgid "Set Cl_ip" msgstr "Définir une dé_coupe" #. Release Clip -#: ../src/interface.cpp:1868 +#: ../src/interface.cpp:1775 msgid "Release C_lip" msgstr "Retirer _la découpe" #. Group -#: ../src/interface.cpp:1879 -#: ../src/verbs.cpp:2429 +#: ../src/interface.cpp:1786 ../src/verbs.cpp:2490 msgid "_Group" msgstr "_Grouper" -#: ../src/interface.cpp:1950 +#: ../src/interface.cpp:1857 msgid "Create link" msgstr "Créer un lien" #. Ungroup -#: ../src/interface.cpp:1981 -#: ../src/verbs.cpp:2431 +#: ../src/interface.cpp:1888 ../src/verbs.cpp:2492 msgid "_Ungroup" msgstr "_Dégrouper" #. Link dialog -#: ../src/interface.cpp:2006 +#: ../src/interface.cpp:1913 msgid "Link _Properties..." msgstr "_Propriétés du lien..." #. Select item -#: ../src/interface.cpp:2012 +#: ../src/interface.cpp:1919 msgid "_Follow Link" msgstr "_Suivre le lien" #. Reset transformations -#: ../src/interface.cpp:2018 +#: ../src/interface.cpp:1925 msgid "_Remove Link" msgstr "_Retirer le lien" -#: ../src/interface.cpp:2049 +#: ../src/interface.cpp:1956 msgid "Remove link" msgstr "Retirer le lien" #. Image properties -#: ../src/interface.cpp:2060 +#: ../src/interface.cpp:1967 msgid "Image _Properties..." msgstr "_Propriétés de l'image..." #. Edit externally -#: ../src/interface.cpp:2066 +#: ../src/interface.cpp:1973 msgid "Edit Externally..." msgstr "Éditer avec un logiciel externe..." #. Trace Bitmap #. TRANSLATORS: "to trace" means "to convert a bitmap to vector graphics" (to vectorize) -#: ../src/interface.cpp:2075 -#: ../src/verbs.cpp:2492 +#: ../src/interface.cpp:1982 ../src/verbs.cpp:2553 msgid "_Trace Bitmap..." msgstr "Vec_toriser le bitmap..." -#: ../src/interface.cpp:2085 +#. Trace Pixel Art +#: ../src/interface.cpp:1991 +msgid "Trace Pixel Art" +msgstr "" + +#: ../src/interface.cpp:2001 msgctxt "Context menu" msgid "Embed Image" msgstr "Incorporer l'image" -#: ../src/interface.cpp:2096 +#: ../src/interface.cpp:2012 msgctxt "Context menu" msgid "Extract Image..." msgstr "Extraire une image..." #. Item dialog #. Fill and Stroke dialog -#: ../src/interface.cpp:2235 -#: ../src/interface.cpp:2255 -#: ../src/verbs.cpp:2753 +#: ../src/interface.cpp:2157 ../src/interface.cpp:2177 ../src/verbs.cpp:2816 msgid "_Fill and Stroke..." msgstr "_Remplissage et contour..." #. Edit Text dialog -#: ../src/interface.cpp:2261 -#: ../src/verbs.cpp:2770 +#: ../src/interface.cpp:2183 ../src/verbs.cpp:2833 msgid "_Text and Font..." msgstr "_Texte et police..." #. Spellcheck dialog -#: ../src/interface.cpp:2267 -#: ../src/verbs.cpp:2778 +#: ../src/interface.cpp:2189 ../src/verbs.cpp:2841 msgid "Check Spellin_g..." msgstr "Vérification ortho_graphique..." @@ -9286,26 +8155,30 @@ msgstr "Vérification ortho_graphique..." msgid "Node or handle drag canceled." msgstr "Déplacement de nÅ“ud ou de poignée annulé." -#: ../src/knotholder.cpp:157 +#: ../src/knotholder.cpp:160 msgid "Change handle" msgstr "Modifier la poignée de nÅ“ud" -#: ../src/knotholder.cpp:236 +#: ../src/knotholder.cpp:239 msgid "Move handle" msgstr "Déplacer la poignée de nÅ“ud" #. TRANSLATORS: This refers to the pattern that's inside the object -#: ../src/knotholder.cpp:257 +#: ../src/knotholder.cpp:260 msgid "<b>Move</b> the pattern fill inside the object" msgstr "<b>Déplacer</b> le motif de remplissage à l'intérieur de l'objet" -#: ../src/knotholder.cpp:261 +#: ../src/knotholder.cpp:264 msgid "<b>Scale</b> the pattern fill; uniformly if with <b>Ctrl</b>" -msgstr "<b>Redimensionner</b> le motif de remplissage ; uniformiser en maintenant la touche <b>Ctrl</b>" +msgstr "" +"<b>Redimensionner</b> le motif de remplissage ; uniformiser en maintenant la " +"touche <b>Ctrl</b>" -#: ../src/knotholder.cpp:265 +#: ../src/knotholder.cpp:268 msgid "<b>Rotate</b> the pattern fill; with <b>Ctrl</b> to snap angle" -msgstr "<b>Tourner</b> le motif de remplissage ; <b>Ctrl</b> pour tourner par incréments" +msgstr "" +"<b>Tourner</b> le motif de remplissage ; <b>Ctrl</b> pour tourner par " +"incréments" #: ../src/libgdl/gdl-dock-bar.c:105 msgid "Master" @@ -9323,26 +8196,55 @@ msgstr "Style de barre détachable" msgid "Dockbar style to show items on it" msgstr "Style de barre d'attache pour l'affichage de ses éléments" -#: ../src/libgdl/gdl-dock-item-grip.c:399 -msgid "Iconify this dock" -msgstr "Iconifier ce point d'attache" +#: ../src/libgdl/gdl-dock.c:176 ../src/ui/dialog/inkscape-preferences.cpp:631 +#: ../src/ui/dialog/inkscape-preferences.cpp:674 +msgid "Floating" +msgstr "Flottant" -#: ../src/libgdl/gdl-dock-item-grip.c:401 -msgid "Close this dock" -msgstr "Fermer ce point d'attache" +#: ../src/libgdl/gdl-dock.c:177 +msgid "Whether the dock is floating in its own window" +msgstr "Détermine si le point d'attache flotte dans sa propre fenêtre" -#: ../src/libgdl/gdl-dock-item-grip.c:721 -#: ../src/libgdl/gdl-dock-tablabel.c:125 -msgid "Controlling dock item" -msgstr "Élément détachable de contrôle" +#: ../src/libgdl/gdl-dock.c:184 ../src/libgdl/gdl-dock-master.c:141 +msgid "Default title" +msgstr "Titre par défaut" -#: ../src/libgdl/gdl-dock-item-grip.c:722 -msgid "Dockitem which 'owns' this grip" -msgstr "Élément d'attache qui « possède » cette prise" +#: ../src/libgdl/gdl-dock.c:185 +msgid "Default title for the newly created floating docks" +msgstr "Titre par défaut pour les nouveaux point d'attache flottants" + +#: ../src/libgdl/gdl-dock.c:192 +msgid "Width for the dock when it's of floating type" +msgstr "Largeur du point d'attache quand il est de type flottant" + +#: ../src/libgdl/gdl-dock.c:200 +msgid "Height for the dock when it's of floating type" +msgstr "Hauteur du point d'attache quand il est de type flottant" + +#: ../src/libgdl/gdl-dock.c:207 +msgid "Float X" +msgstr "X flottant" + +#: ../src/libgdl/gdl-dock.c:208 +msgid "X coordinate for a floating dock" +msgstr "Coordonnée X pour un point d'attache flottant" + +#: ../src/libgdl/gdl-dock.c:215 +msgid "Float Y" +msgstr "Y flottant" + +#: ../src/libgdl/gdl-dock.c:216 +msgid "Y coordinate for a floating dock" +msgstr "Coordonnée Y pour un point d'attache flottant" + +#: ../src/libgdl/gdl-dock.c:478 +#, c-format +msgid "Dock #%d" +msgstr "Point d'attache #%d" #. Name -#: ../src/libgdl/gdl-dock-item.c:298 -#: ../src/widgets/text-toolbar.cpp:1430 +#: ../src/libgdl/gdl-dock-item.c:298 ../src/widgets/ruler.cpp:191 +#: ../src/widgets/text-toolbar.cpp:1421 #: ../share/extensions/gcodetools_graffiti.inx.h:9 #: ../share/extensions/gcodetools_orientation_points.inx.h:2 msgid "Orientation" @@ -9358,24 +8260,32 @@ msgstr "Redimensionnable" #: ../src/libgdl/gdl-dock-item.c:315 msgid "If set, the dock item can be resized when docked in a GtkPanel widget" -msgstr "Si coché, l'élément détachable peut être redimensionné quand il est attaché à un widget GtkPanel" +msgstr "" +"Si coché, l'élément détachable peut être redimensionné quand il est attaché " +"à un widget GtkPanel" #: ../src/libgdl/gdl-dock-item.c:322 msgid "Item behavior" msgstr "Comportement de l'élément" #: ../src/libgdl/gdl-dock-item.c:323 -msgid "General behavior for the dock item (i.e. whether it can float, if it's locked, etc.)" -msgstr "Comportement général de l'élément détachable (par ex, s'il peut flotter, s'il est verouillé, etc...)" +msgid "" +"General behavior for the dock item (i.e. whether it can float, if it's " +"locked, etc.)" +msgstr "" +"Comportement général de l'élément détachable (par ex, s'il peut flotter, " +"s'il est verouillé, etc...)" -#: ../src/libgdl/gdl-dock-item.c:331 -#: ../src/libgdl/gdl-dock-master.c:148 +#: ../src/libgdl/gdl-dock-item.c:331 ../src/libgdl/gdl-dock-master.c:148 msgid "Locked" msgstr "Verrouillé" #: ../src/libgdl/gdl-dock-item.c:332 -msgid "If set, the dock item cannot be dragged around and it doesn't show a grip" -msgstr "Si coché, l'élément détachable ne peut pas être déplacé et il n'affiche pas de poignée" +msgid "" +"If set, the dock item cannot be dragged around and it doesn't show a grip" +msgstr "" +"Si coché, l'élément détachable ne peut pas être déplacé et il n'affiche pas " +"de poignée" #: ../src/libgdl/gdl-dock-item.c:340 msgid "Preferred width" @@ -9395,19 +8305,28 @@ msgstr "Hauteur préférée pour l'élément détachable" #: ../src/libgdl/gdl-dock-item.c:716 #, c-format -msgid "You can't add a dock object (%p of type %s) inside a %s. Use a GdlDock or some other compound dock object." -msgstr "Vous ne pouvez pas ajouter d'objet d'attache (%p de type %s) dans un %s. Utilisez un GdlDock ou un autre objet d'attache composite." +msgid "" +"You can't add a dock object (%p of type %s) inside a %s. Use a GdlDock or " +"some other compound dock object." +msgstr "" +"Vous ne pouvez pas ajouter d'objet d'attache (%p de type %s) dans un %s. " +"Utilisez un GdlDock ou un autre objet d'attache composite." #: ../src/libgdl/gdl-dock-item.c:723 #, c-format -msgid "Attempting to add a widget with type %s to a %s, but it can only contain one widget at a time; it already contains a widget of type %s" -msgstr "Tentative d'ajout d'un gadget de %s à un %s, mais il ne peut contenir qu'un gadget à la fois ; il contient déjà un gadget detype %s" +msgid "" +"Attempting to add a widget with type %s to a %s, but it can only contain one " +"widget at a time; it already contains a widget of type %s" +msgstr "" +"Tentative d'ajout d'un gadget de %s à un %s, mais il ne peut contenir qu'un " +"gadget à la fois ; il contient déjà un gadget detype %s" -#: ../src/libgdl/gdl-dock-item.c:1471 -#: ../src/libgdl/gdl-dock-item.c:1521 +#: ../src/libgdl/gdl-dock-item.c:1471 ../src/libgdl/gdl-dock-item.c:1521 #, c-format msgid "Unsupported docking strategy %s in dock object of type %s" -msgstr "La stratégie d'attache %s n'est pas supportée pour l'objet d'attache de type %s" +msgstr "" +"La stratégie d'attache %s n'est pas supportée pour l'objet d'attache de type " +"%s" #. UnLock menuitem #: ../src/libgdl/gdl-dock-item.c:1629 @@ -9429,44 +8348,67 @@ msgstr "Verrouiller" msgid "Attempt to bind an unbound item %p" msgstr "Tentative de lier un élément délié %p" -#: ../src/libgdl/gdl-dock-master.c:141 -#: ../src/libgdl/gdl-dock.c:184 -msgid "Default title" -msgstr "Titre par défaut" +#: ../src/libgdl/gdl-dock-item-grip.c:399 +msgid "Iconify this dock" +msgstr "Iconifier ce point d'attache" + +#: ../src/libgdl/gdl-dock-item-grip.c:401 +msgid "Close this dock" +msgstr "Fermer ce point d'attache" + +#: ../src/libgdl/gdl-dock-item-grip.c:721 +#: ../src/libgdl/gdl-dock-tablabel.c:125 +msgid "Controlling dock item" +msgstr "Élément détachable de contrôle" + +#: ../src/libgdl/gdl-dock-item-grip.c:722 +msgid "Dockitem which 'owns' this grip" +msgstr "Élément d'attache qui « possède » cette prise" #: ../src/libgdl/gdl-dock-master.c:142 msgid "Default title for newly created floating docks" msgstr "Titre par défaut pour les nouveaux points d'attache flottants" #: ../src/libgdl/gdl-dock-master.c:149 -msgid "If is set to 1, all the dock items bound to the master are locked; if it's 0, all are unlocked; -1 indicates inconsistency among the items" -msgstr "Si la valeur est 1, tous les éléments détachables liés au maître sont verrouillés ; si la valeur est 0, tous sont déverrouillés, -1 indique des états hétérogènes pour les éléments" +msgid "" +"If is set to 1, all the dock items bound to the master are locked; if it's " +"0, all are unlocked; -1 indicates inconsistency among the items" +msgstr "" +"Si la valeur est 1, tous les éléments détachables liés au maître sont " +"verrouillés ; si la valeur est 0, tous sont déverrouillés, -1 indique des " +"états hétérogènes pour les éléments" -#: ../src/libgdl/gdl-dock-master.c:157 -#: ../src/libgdl/gdl-switcher.c:732 +#: ../src/libgdl/gdl-dock-master.c:157 ../src/libgdl/gdl-switcher.c:737 msgid "Switcher Style" msgstr "Style de commutation" -#: ../src/libgdl/gdl-dock-master.c:158 -#: ../src/libgdl/gdl-switcher.c:733 +#: ../src/libgdl/gdl-dock-master.c:158 ../src/libgdl/gdl-switcher.c:738 msgid "Switcher buttons style" msgstr "Style des boutons de commutation" #: ../src/libgdl/gdl-dock-master.c:783 #, c-format -msgid "master %p: unable to add object %p[%s] to the hash. There already is an item with that name (%p)." -msgstr "maître %p: impossible d'ajouter l'objet %p[%s] dans la table. Il y a déjà un élément avec ce nom (%p)." +msgid "" +"master %p: unable to add object %p[%s] to the hash. There already is an " +"item with that name (%p)." +msgstr "" +"maître %p: impossible d'ajouter l'objet %p[%s] dans la table. Il y a déjà un " +"élément avec ce nom (%p)." #: ../src/libgdl/gdl-dock-master.c:955 #, c-format -msgid "The new dock controller %p is automatic. Only manual dock objects should be named controller." -msgstr "Le nouveau contrôleur d'attache %p est automatique. Seuls les ojbets d'attache manuels peuvent être nommés contrôleurs." +msgid "" +"The new dock controller %p is automatic. Only manual dock objects should be " +"named controller." +msgstr "" +"Le nouveau contrôleur d'attache %p est automatique. Seuls les ojbets " +"d'attache manuels peuvent être nommés contrôleurs." #: ../src/libgdl/gdl-dock-notebook.c:132 -#: ../src/ui/dialog/align-and-distribute.cpp:1047 -#: ../src/ui/dialog/document-properties.cpp:146 +#: ../src/ui/dialog/align-and-distribute.cpp:1003 +#: ../src/ui/dialog/document-properties.cpp:149 #: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1551 -#: ../src/widgets/desktop-widget.cpp:1996 +#: ../src/widgets/desktop-widget.cpp:2003 #: ../share/extensions/voronoi2svg.inx.h:9 msgid "Page" msgstr "Page" @@ -9476,9 +8418,9 @@ msgid "The index of the current page" msgstr "L'index de la page courante" #: ../src/libgdl/gdl-dock-object.c:125 -#: ../src/ui/dialog/inkscape-preferences.cpp:1482 -#: ../src/ui/widget/page-sizer.cpp:260 -#: ../src/widgets/gradient-selector.cpp:156 +#: ../src/ui/dialog/inkscape-preferences.cpp:1486 +#: ../src/ui/widget/page-sizer.cpp:258 +#: ../src/widgets/gradient-selector.cpp:157 #: ../src/widgets/sp-xmlview-attr-list.cpp:54 msgid "Name" msgstr "Nom" @@ -9521,25 +8463,37 @@ msgstr "Maître d'attache auquel cet objet d'attache est lié" #: ../src/libgdl/gdl-dock-object.c:463 #, c-format -msgid "Call to gdl_dock_object_dock in a dock object %p (object type is %s) which hasn't implemented this method" -msgstr "Appel à gdl_dock_object_dock dans un objet d'attache %p (le type d'objet est %s) qui n'a pas implémenté cette méthode" +msgid "" +"Call to gdl_dock_object_dock in a dock object %p (object type is %s) which " +"hasn't implemented this method" +msgstr "" +"Appel à gdl_dock_object_dock dans un objet d'attache %p (le type d'objet est " +"%s) qui n'a pas implémenté cette méthode" #: ../src/libgdl/gdl-dock-object.c:602 #, c-format -msgid "Dock operation requested in a non-bound object %p. The application might crash" -msgstr "Opération d'attache demandée sur un ojbet %p non-lié. L'application pourrait planter" +msgid "" +"Dock operation requested in a non-bound object %p. The application might " +"crash" +msgstr "" +"Opération d'attache demandée sur un ojbet %p non-lié. L'application pourrait " +"planter" #: ../src/libgdl/gdl-dock-object.c:609 #, c-format msgid "Cannot dock %p to %p because they belong to different masters" -msgstr "Impossible d'attacher %p à %p car ils appartiennent à des maîtres différents" +msgstr "" +"Impossible d'attacher %p à %p car ils appartiennent à des maîtres différents" #: ../src/libgdl/gdl-dock-object.c:651 #, c-format -msgid "Attempt to bind to %p an already bound dock object %p (current master: %p)" -msgstr "Tentative d'attacher à %p un objet d'attache %p déjà lié par ailleurs (maître actuel: %p)" +msgid "" +"Attempt to bind to %p an already bound dock object %p (current master: %p)" +msgstr "" +"Tentative d'attacher à %p un objet d'attache %p déjà lié par ailleurs " +"(maître actuel: %p)" -#: ../src/libgdl/gdl-dock-paned.c:130 +#: ../src/libgdl/gdl-dock-paned.c:130 ../src/widgets/ruler.cpp:229 msgid "Position" msgstr "Position" @@ -9552,8 +8506,12 @@ msgid "Sticky" msgstr "Collé" #: ../src/libgdl/gdl-dock-placeholder.c:142 -msgid "Whether the placeholder will stick to its host or move up the hierarchy when the host is redocked" -msgstr "Détermine si l'élément substituable restera attaché à son hôte ou remontera dans la hiérarchie quand l'hôte est réattaché" +msgid "" +"Whether the placeholder will stick to its host or move up the hierarchy when " +"the host is redocked" +msgstr "" +"Détermine si l'élément substituable restera attaché à son hôte ou remontera " +"dans la hiérarchie quand l'hôte est réattaché" #: ../src/libgdl/gdl-dock-placeholder.c:149 msgid "Host" @@ -9568,8 +8526,12 @@ msgid "Next placement" msgstr "Placement suivant" #: ../src/libgdl/gdl-dock-placeholder.c:158 -msgid "The position an item will be docked to our host if a request is made to dock to us" -msgstr "La position où un élément sera attaché à l'hôte si une demande d'attachement est faite" +msgid "" +"The position an item will be docked to our host if a request is made to dock " +"to us" +msgstr "" +"La position où un élément sera attaché à l'hôte si une demande d'attachement " +"est faite" #: ../src/libgdl/gdl-dock-placeholder.c:168 msgid "Width for the widget when it's attached to the placeholder" @@ -9585,7 +8547,9 @@ msgstr "Niveau supérieur flottant" #: ../src/libgdl/gdl-dock-placeholder.c:183 msgid "Whether the placeholder is standing in for a floating toplevel dock" -msgstr "Détermine si l'élément substituable réserve la place pour un point d'attache flottant de niveau supérieur" +msgstr "" +"Détermine si l'élément substituable réserve la place pour un point d'attache " +"flottant de niveau supérieur" #: ../src/libgdl/gdl-dock-placeholder.c:189 msgid "X Coordinate" @@ -9605,7 +8569,9 @@ msgstr "Coordonnée Y du point d'attache quand il est flottant" #: ../src/libgdl/gdl-dock-placeholder.c:499 msgid "Attempt to dock a dock object to an unbound placeholder" -msgstr "Tentative d'attachement d'un objet d'attache sur un élément substituable non lié" +msgstr "" +"Tentative d'attachement d'un objet d'attache sur un élément substituable non " +"lié" #: ../src/libgdl/gdl-dock-placeholder.c:611 #, c-format @@ -9614,57 +8580,18 @@ msgstr "Signal de détachement reçu d'un objet (%p) qui n'est pas notre hôte % #: ../src/libgdl/gdl-dock-placeholder.c:636 #, c-format -msgid "Something weird happened while getting the child placement for %p from parent %p" -msgstr "Quelque chose de bizarre est arrivé en essayant d'obtenir le placement du fils %p auprès du parent %p" +msgid "" +"Something weird happened while getting the child placement for %p from " +"parent %p" +msgstr "" +"Quelque chose de bizarre est arrivé en essayant d'obtenir le placement du " +"fils %p auprès du parent %p" #: ../src/libgdl/gdl-dock-tablabel.c:126 msgid "Dockitem which 'owns' this tablabel" msgstr "Élément d'attache qui « possède » ce tablabel" -#: ../src/libgdl/gdl-dock.c:176 -#: ../src/ui/dialog/inkscape-preferences.cpp:631 -#: ../src/ui/dialog/inkscape-preferences.cpp:674 -msgid "Floating" -msgstr "Flottant" - -#: ../src/libgdl/gdl-dock.c:177 -msgid "Whether the dock is floating in its own window" -msgstr "Détermine si le point d'attache flotte dans sa propre fenêtre" - -#: ../src/libgdl/gdl-dock.c:185 -msgid "Default title for the newly created floating docks" -msgstr "Titre par défaut pour les nouveaux point d'attache flottants" - -#: ../src/libgdl/gdl-dock.c:192 -msgid "Width for the dock when it's of floating type" -msgstr "Largeur du point d'attache quand il est de type flottant" - -#: ../src/libgdl/gdl-dock.c:200 -msgid "Height for the dock when it's of floating type" -msgstr "Hauteur du point d'attache quand il est de type flottant" - -#: ../src/libgdl/gdl-dock.c:207 -msgid "Float X" -msgstr "X flottant" - -#: ../src/libgdl/gdl-dock.c:208 -msgid "X coordinate for a floating dock" -msgstr "Coordonnée X pour un point d'attache flottant" - -#: ../src/libgdl/gdl-dock.c:215 -msgid "Float Y" -msgstr "Y flottant" - -#: ../src/libgdl/gdl-dock.c:216 -msgid "Y coordinate for a floating dock" -msgstr "Coordonnée Y pour un point d'attache flottant" - -#: ../src/libgdl/gdl-dock.c:478 -#, c-format -msgid "Dock #%d" -msgstr "Point d'attache #%d" - -#: ../src/libnrtype/FontFactory.cpp:965 +#: ../src/libnrtype/FontFactory.cpp:964 msgid "Ignoring font without family that will crash Pango" msgstr "Ignorer les polices sans famille qui font planter Pango" @@ -9693,8 +8620,7 @@ msgstr "Cercle par trois points" msgid "Dynamic stroke" msgstr "Contour dynamique" -#: ../src/live_effects/effect.cpp:93 -#: ../share/extensions/extrude.inx.h:1 +#: ../src/live_effects/effect.cpp:93 ../share/extensions/extrude.inx.h:1 msgid "Extrude" msgstr "Extrusion" @@ -9802,8 +8728,7 @@ msgstr "Règle" msgid "Power stroke" msgstr "Contour dynamique" -#: ../src/live_effects/effect.cpp:124 -#: ../src/selection-chemistry.cpp:2792 +#: ../src/live_effects/effect.cpp:124 ../src/selection-chemistry.cpp:2789 msgid "Clone original path" msgstr "Cloner le chemin original" @@ -9812,8 +8737,12 @@ msgid "Is visible?" msgstr "Visible ?" #: ../src/live_effects/effect.cpp:286 -msgid "If unchecked, the effect remains applied to the object but is temporarily disabled on canvas" -msgstr "Si décochée, l'effet est appliqué à l'objet mais est temporairement désactivé sur la zone de travail" +msgid "" +"If unchecked, the effect remains applied to the object but is temporarily " +"disabled on canvas" +msgstr "" +"Si décochée, l'effet est appliqué à l'objet mais est temporairement " +"désactivé sur la zone de travail" #: ../src/live_effects/effect.cpp:307 msgid "No effect" @@ -9822,7 +8751,9 @@ msgstr "Pas d'effet" #: ../src/live_effects/effect.cpp:354 #, c-format msgid "Please specify a parameter path for the LPE '%s' with %d mouse clicks" -msgstr "Veuillez spécifier un chemin paramètre pour l'effet de chemin '%s' avec %d clics de souris" +msgstr "" +"Veuillez spécifier un chemin paramètre pour l'effet de chemin '%s' avec %d " +"clics de souris" #: ../src/live_effects/effect.cpp:632 #, c-format @@ -9831,7 +8762,46 @@ msgstr "Édition du paramètre <b>%s</b>." #: ../src/live_effects/effect.cpp:637 msgid "None of the applied path effect's parameters can be edited on-canvas." -msgstr "Aucun des paramètres d'effet de chemin ne peuvent être modifiés sur la zone de travail." +msgstr "" +"Aucun des paramètres d'effet de chemin ne peuvent être modifiés sur la zone " +"de travail." + +#: ../src/live_effects/lpe-angle_bisector.cpp:45 +#: ../src/live_effects/lpe-parallel.cpp:51 +#: ../src/live_effects/lpe-perp_bisector.cpp:97 +#: ../src/live_effects/lpe-tangent_to_curve.cpp:63 +#, fuzzy +msgid "Length left:" +msgstr "Unité de longueur :" + +#: ../src/live_effects/lpe-angle_bisector.cpp:45 +#: ../src/live_effects/lpe-perp_bisector.cpp:97 +#, fuzzy +msgid "Specifies the left end of the bisector" +msgstr "Définit la forme des coins du chemin" + +#: ../src/live_effects/lpe-angle_bisector.cpp:46 +#: ../src/live_effects/lpe-parallel.cpp:52 +#: ../src/live_effects/lpe-perp_bisector.cpp:98 +#: ../src/live_effects/lpe-tangent_to_curve.cpp:64 +#, fuzzy +msgid "Length right:" +msgstr "Unité de longueur :" + +#: ../src/live_effects/lpe-angle_bisector.cpp:46 +#: ../src/live_effects/lpe-perp_bisector.cpp:98 +#, fuzzy +msgid "Specifies the right end of the bisector" +msgstr "Définit la forme des coins du chemin" + +#: ../src/live_effects/lpe-angle_bisector.cpp:86 +msgid "Adjust the \"left\" end of the bisector" +msgstr "" + +#: ../src/live_effects/lpe-angle_bisector.cpp:92 +#, fuzzy +msgid "Adjust the \"right\" of the bisector" +msgstr "Capturer la luminosité de la couleur" #: ../src/live_effects/lpe-bendpath.cpp:53 msgid "Bend path:" @@ -9842,6 +8812,13 @@ msgid "Path along which to bend the original path" msgstr "Chemin le long duquel le chemin original sera courbé" #: ../src/live_effects/lpe-bendpath.cpp:54 +#: ../src/live_effects/lpe-patternalongpath.cpp:62 +#: ../src/ui/dialog/export.cpp:288 ../src/ui/dialog/transformation.cpp:80 +#: ../src/ui/widget/page-sizer.cpp:236 +msgid "_Width:" +msgstr "_Largeur :" + +#: ../src/live_effects/lpe-bendpath.cpp:54 msgid "Width of the path" msgstr "Largeur du chemin" @@ -9861,6 +8838,61 @@ msgstr "Le chemin _original est vertical" msgid "Rotates the original 90 degrees, before bending it along the bend path" msgstr "Tourne l'original de 90 degrés avant de le déformer le long du chemin" +#: ../src/live_effects/lpe-boolops.cpp:22 +msgid "Null" +msgstr "" + +#: ../src/live_effects/lpe-boolops.cpp:23 +#, fuzzy +msgid "Intersect" +msgstr "Intersection" + +#: ../src/live_effects/lpe-boolops.cpp:24 +msgid "Subtract A-B" +msgstr "" + +#: ../src/live_effects/lpe-boolops.cpp:25 +#, fuzzy +msgid "Identity A" +msgstr "Identité" + +#: ../src/live_effects/lpe-boolops.cpp:26 +msgid "Subtract B-A" +msgstr "" + +#: ../src/live_effects/lpe-boolops.cpp:27 +#, fuzzy +msgid "Identity B" +msgstr "Identité" + +#: ../src/live_effects/lpe-boolops.cpp:28 ../src/splivarot.cpp:100 +msgid "Exclusion" +msgstr "Exclusion" + +#: ../src/live_effects/lpe-boolops.cpp:29 ../src/splivarot.cpp:70 +#: ../src/splivarot.cpp:76 +msgid "Union" +msgstr "Union" + +#: ../src/live_effects/lpe-boolops.cpp:35 +#, fuzzy +msgid "2nd path:" +msgstr "Chemin de courbure :" + +#: ../src/live_effects/lpe-boolops.cpp:35 +#, fuzzy +msgid "Path to which the original path will be boolop'ed." +msgstr "Chemin à partir duquel le chemin original sera cloné" + +#: ../src/live_effects/lpe-boolops.cpp:36 +#, fuzzy +msgid "Boolop type:" +msgstr "Type d'outils : " + +#: ../src/live_effects/lpe-boolops.cpp:36 +msgid "Determines which kind of boolop will be performed." +msgstr "" + #: ../src/live_effects/lpe-clone-original.cpp:18 msgid "Linked path:" msgstr "Chemin lié :" @@ -9885,6 +8917,55 @@ msgstr "Dimension _Y :" msgid "The size of the grid in Y direction." msgstr "La dimension de la grille dans la direction Y." +#: ../src/live_effects/lpe-copy_rotate.cpp:51 +#, fuzzy +msgid "Starting:" +msgstr "Début :" + +#: ../src/live_effects/lpe-copy_rotate.cpp:51 +msgid "Angle of the first copy" +msgstr "" + +#: ../src/live_effects/lpe-copy_rotate.cpp:52 +#, fuzzy +msgid "Rotation angle:" +msgstr "Rotation :" + +#: ../src/live_effects/lpe-copy_rotate.cpp:52 +#, fuzzy +msgid "Angle between two successive copies" +msgstr "Distance entre deux graduations successives" + +#: ../src/live_effects/lpe-copy_rotate.cpp:53 +#, fuzzy +msgid "Number of copies:" +msgstr "Nombre d'échantillons :" + +#: ../src/live_effects/lpe-copy_rotate.cpp:53 +#, fuzzy +msgid "Number of copies of the original path" +msgstr "Nombre de sommets du polygone ou de l'étoile" + +#: ../src/live_effects/lpe-copy_rotate.cpp:54 +#, fuzzy +msgid "Origin" +msgstr "Origine X :" + +#: ../src/live_effects/lpe-copy_rotate.cpp:54 +#, fuzzy +msgid "Origin of the rotation" +msgstr "Orientation" + +#: ../src/live_effects/lpe-copy_rotate.cpp:135 +#, fuzzy +msgid "Adjust the starting angle" +msgstr "Ajuster le crénage" + +#: ../src/live_effects/lpe-copy_rotate.cpp:141 +#, fuzzy +msgid "Adjust the rotation angle" +msgstr "Ajuster la saturation" + #: ../src/live_effects/lpe-curvestitch.cpp:41 msgid "Stitch path:" msgstr "Chemin de liaison :" @@ -9906,32 +8987,48 @@ msgid "Sta_rt edge variance:" msgstr "Va_riance du bord de départ :" #: ../src/live_effects/lpe-curvestitch.cpp:43 -msgid "The amount of random jitter to move the start points of the stitches inside & outside the guide path" -msgstr "La quantité de perturbation aléatoire dans la position des points de départ des liaisons, à l'intérieur et à l'extérieur du guide" +msgid "" +"The amount of random jitter to move the start points of the stitches inside " +"& outside the guide path" +msgstr "" +"La quantité de perturbation aléatoire dans la position des points de départ " +"des liaisons, à l'intérieur et à l'extérieur du guide" #: ../src/live_effects/lpe-curvestitch.cpp:44 msgid "Sta_rt spacing variance:" msgstr "Va_riance de l'espacement de départ :" #: ../src/live_effects/lpe-curvestitch.cpp:44 -msgid "The amount of random shifting to move the start points of the stitches back & forth along the guide path" -msgstr "La quantité de perturbation aléatoire dans la position des extrémités de chaque point de départ des liaisons, le long du guide" +msgid "" +"The amount of random shifting to move the start points of the stitches back " +"& forth along the guide path" +msgstr "" +"La quantité de perturbation aléatoire dans la position des extrémités de " +"chaque point de départ des liaisons, le long du guide" #: ../src/live_effects/lpe-curvestitch.cpp:45 msgid "End ed_ge variance:" msgstr "Variance du bord de _fin :" #: ../src/live_effects/lpe-curvestitch.cpp:45 -msgid "The amount of randomness that moves the end points of the stitches inside & outside the guide path" -msgstr "La quantité de perturbation aléatoire dans la position des extrémités de chaque point de fin des liaisons, à l'intérieur et à l'extérieur du guide" +msgid "" +"The amount of randomness that moves the end points of the stitches inside & " +"outside the guide path" +msgstr "" +"La quantité de perturbation aléatoire dans la position des extrémités de " +"chaque point de fin des liaisons, à l'intérieur et à l'extérieur du guide" #: ../src/live_effects/lpe-curvestitch.cpp:46 msgid "End spa_cing variance:" msgstr "Variance de l'espa_cement de fin :" #: ../src/live_effects/lpe-curvestitch.cpp:46 -msgid "The amount of random shifting to move the end points of the stitches back & forth along the guide path" -msgstr "La quantité de perturbation aléatoire dans la position des extrémités de chaque point de fin des liaisons, le long du guide" +msgid "" +"The amount of random shifting to move the end points of the stitches back & " +"forth along the guide path" +msgstr "" +"La quantité de perturbation aléatoire dans la position des extrémités de " +"chaque point de fin des liaisons, le long du guide" #: ../src/live_effects/lpe-curvestitch.cpp:47 msgid "Scale _width:" @@ -9947,7 +9044,132 @@ msgstr "R_edimensionner l'épaisseur en fonction de la longueur" #: ../src/live_effects/lpe-curvestitch.cpp:48 msgid "Scale the width of the stitch path relative to its length" -msgstr "Redimensionner l'épaisseur du chemin de liaison proportionnellement à sa longueur" +msgstr "" +"Redimensionner l'épaisseur du chemin de liaison proportionnellement à sa " +"longueur" + +#: ../src/live_effects/lpe-dynastroke.cpp:35 +#, fuzzy +msgid "Elliptic Pen" +msgstr "Ellipse" + +#: ../src/live_effects/lpe-dynastroke.cpp:36 +msgid "Thick-Thin strokes (fast)" +msgstr "" + +#: ../src/live_effects/lpe-dynastroke.cpp:37 +msgid "Thick-Thin strokes (slow)" +msgstr "" + +#: ../src/live_effects/lpe-dynastroke.cpp:42 +#, fuzzy +msgid "Sharp" +msgstr "Netteté" + +#: ../src/live_effects/lpe-dynastroke.cpp:43 +#: ../src/live_effects/lpe-powerstroke.cpp:205 +#: ../share/extensions/gcodetools_prepare_path_for_plasma.inx.h:13 +msgid "Round" +msgstr "Arrondie" + +#. initialise your parameters here: +#: ../src/live_effects/lpe-dynastroke.cpp:50 +msgid "Method:" +msgstr "" + +#: ../src/live_effects/lpe-dynastroke.cpp:50 +#, fuzzy +msgid "Choose pen type" +msgstr "Sélectionner un type de segment" + +#: ../src/live_effects/lpe-dynastroke.cpp:51 +#, fuzzy +msgid "Pen width:" +msgstr "Largeur du stylo" + +#: ../src/live_effects/lpe-dynastroke.cpp:51 +#, fuzzy +msgid "Maximal stroke width" +msgstr "Redimensionner l'épaisseur du contour" + +#: ../src/live_effects/lpe-dynastroke.cpp:52 +#, fuzzy +msgid "Pen roundness:" +msgstr "Caractère aléatoire du placement :" + +#: ../src/live_effects/lpe-dynastroke.cpp:52 +msgid "Min/Max width ratio" +msgstr "" + +#: ../src/live_effects/lpe-dynastroke.cpp:53 +#: ../src/live_effects/lpe-tangent_to_curve.cpp:61 +#: ../src/widgets/calligraphy-toolbar.cpp:480 +#: ../share/extensions/motion.inx.h:3 ../share/extensions/restack.inx.h:10 +msgid "Angle:" +msgstr "Angle :" + +#: ../src/live_effects/lpe-dynastroke.cpp:53 +msgid "direction of thickest strokes (opposite = thinest)" +msgstr "" + +#. modulo_pi(_("modulo pi"), _("Give forward and backward moves in one direction the same thickness "), "modulo_pi", &wr, this, false), +#: ../src/live_effects/lpe-dynastroke.cpp:55 +#: ../src/widgets/arc-toolbar.cpp:336 +msgid "Start:" +msgstr "Début :" + +#: ../src/live_effects/lpe-dynastroke.cpp:55 +#, fuzzy +msgid "Choose start capping type" +msgstr "Sélectionner un type de segment" + +#: ../src/live_effects/lpe-dynastroke.cpp:56 +#: ../src/widgets/arc-toolbar.cpp:349 +msgid "End:" +msgstr "Fin :" + +#: ../src/live_effects/lpe-dynastroke.cpp:56 +#, fuzzy +msgid "Choose end capping type" +msgstr "Sélectionner un type de segment" + +#: ../src/live_effects/lpe-dynastroke.cpp:57 +#, fuzzy +msgid "Grow for:" +msgstr "Croissance :" + +#: ../src/live_effects/lpe-dynastroke.cpp:57 +msgid "Make the stroke thiner near it's start" +msgstr "" + +#: ../src/live_effects/lpe-dynastroke.cpp:58 +#, fuzzy +msgid "Fade for:" +msgstr "Décolorer en :" + +#: ../src/live_effects/lpe-dynastroke.cpp:58 +msgid "Make the stroke thiner near it's end" +msgstr "" + +#: ../src/live_effects/lpe-dynastroke.cpp:59 +#, fuzzy +msgid "Round ends" +msgstr "Arrondi" + +#: ../src/live_effects/lpe-dynastroke.cpp:59 +#, fuzzy +msgid "Strokes end with a round end" +msgstr "Métal embouti au bord arrondi" + +#: ../src/live_effects/lpe-dynastroke.cpp:60 +#, fuzzy +msgid "Capping:" +msgstr "Clapotis" + +#: ../src/live_effects/lpe-dynastroke.cpp:60 +#, fuzzy +msgid "left capping" +msgstr "Activer le magnétisme" #: ../src/live_effects/lpe-envelope.cpp:31 msgid "Top bend path:" @@ -9955,7 +9177,8 @@ msgstr "Chemin supérieur de l'enveloppe :" #: ../src/live_effects/lpe-envelope.cpp:31 msgid "Top path along which to bend the original path" -msgstr "Chemin supérieur de l'enveloppe le long duquel le chemin original sera courbé" +msgstr "" +"Chemin supérieur de l'enveloppe le long duquel le chemin original sera courbé" #: ../src/live_effects/lpe-envelope.cpp:32 msgid "Right bend path:" @@ -9963,7 +9186,8 @@ msgstr "Chemin droit de l'enveloppe :" #: ../src/live_effects/lpe-envelope.cpp:32 msgid "Right path along which to bend the original path" -msgstr "Chemin droit de l'enveloppe le long duquel le chemin original sera courbé" +msgstr "" +"Chemin droit de l'enveloppe le long duquel le chemin original sera courbé" #: ../src/live_effects/lpe-envelope.cpp:33 msgid "Bottom bend path:" @@ -9971,7 +9195,8 @@ msgstr "Chemin inférieur de l'enveloppe :" #: ../src/live_effects/lpe-envelope.cpp:33 msgid "Bottom path along which to bend the original path" -msgstr "Chemin inférieur de l'enveloppe le long duquel le chemin original sera courbé" +msgstr "" +"Chemin inférieur de l'enveloppe le long duquel le chemin original sera courbé" #: ../src/live_effects/lpe-envelope.cpp:34 msgid "Left bend path:" @@ -9979,7 +9204,8 @@ msgstr "Chemin gauche de l'enveloppe :" #: ../src/live_effects/lpe-envelope.cpp:34 msgid "Left path along which to bend the original path" -msgstr "Chemin gauche de l'enveloppe le long duquel le chemin original sera courbé" +msgstr "" +"Chemin gauche de l'enveloppe le long duquel le chemin original sera courbé" #: ../src/live_effects/lpe-envelope.cpp:35 msgid "E_nable left & right paths" @@ -9997,6 +9223,14 @@ msgstr "Utiliser les ch_emins supérieur et inférieur" msgid "Enable the top and bottom deformation paths" msgstr "Utiliser les chemins supérieur et inférieur de l'enveloppe" +#: ../src/live_effects/lpe-extrude.cpp:30 +msgid "Direction" +msgstr "Direction" + +#: ../src/live_effects/lpe-extrude.cpp:30 +msgid "Defines the direction and magnitude of the extrusion" +msgstr "Définit la direction et l'amplitude de l'extrusion" + #: ../src/live_effects/lpe-gears.cpp:214 msgid "_Teeth:" msgstr "_Dents :" @@ -10010,8 +9244,12 @@ msgid "_Phi:" msgstr "_Phi :" #: ../src/live_effects/lpe-gears.cpp:215 -msgid "Tooth pressure angle (typically 20-25 deg). The ratio of teeth not in contact." -msgstr "Angle de contact des dents (en général de 20 à 25 degrés). Représente la fraction des dents qui ne sont pas en contact." +msgid "" +"Tooth pressure angle (typically 20-25 deg). The ratio of teeth not in " +"contact." +msgstr "" +"Angle de contact des dents (en général de 20 à 25 degrés). Représente la " +"fraction des dents qui ne sont pas en contact." #: ../src/live_effects/lpe-interpolate.cpp:31 msgid "Trajectory:" @@ -10027,15 +9265,22 @@ msgstr "I_ncrément :" #: ../src/live_effects/lpe-interpolate.cpp:32 msgid "Determines the number of steps from start to end path." -msgstr "Définit le nombre d'étapes entre le chemin de début et le chemin de fin." +msgstr "" +"Définit le nombre d'étapes entre le chemin de début et le chemin de fin." #: ../src/live_effects/lpe-interpolate.cpp:33 msgid "E_quidistant spacing" msgstr "Espacement é_quidistant" #: ../src/live_effects/lpe-interpolate.cpp:33 -msgid "If true, the spacing between intermediates is constant along the length of the path. If false, the distance depends on the location of the nodes of the trajectory path." -msgstr "Si vrai, l'espacement entre les intermédiaires est constant tout au long de la longueur du chemin. Si faux, la distance dépend du positionnement des nÅ“uds de la trajectoire." +msgid "" +"If true, the spacing between intermediates is constant along the length of " +"the path. If false, the distance depends on the location of the nodes of the " +"trajectory path." +msgstr "" +"Si vrai, l'espacement entre les intermédiaires est constant tout au long de " +"la longueur du chemin. Si faux, la distance dépend du positionnement des " +"nÅ“uds de la trajectoire." #. initialise your parameters here: #: ../src/live_effects/lpe-knot.cpp:347 @@ -10052,7 +9297,9 @@ msgstr "Proport_ionnellement à la largeur du trait" #: ../src/live_effects/lpe-knot.cpp:348 msgid "Consider 'Interruption width' as a ratio of stroke width" -msgstr "La largeur de l'interruption est exprimée en proportion de l'épaisseur du trait" +msgstr "" +"La largeur de l'interruption est exprimée en proportion de l'épaisseur du " +"trait" #: ../src/live_effects/lpe-knot.cpp:349 msgid "St_roke width" @@ -10076,7 +9323,9 @@ msgstr "Taille du sé_lecteur :" #: ../src/live_effects/lpe-knot.cpp:351 msgid "Orientation indicator/switcher size" -msgstr "Le sélecteur précise l'orientation des croisements et permet de la changer (clic). Changer la sélection par cliquer-déplacer" +msgstr "" +"Le sélecteur précise l'orientation des croisements et permet de la changer " +"(clic). Changer la sélection par cliquer-déplacer" #: ../src/live_effects/lpe-knot.cpp:352 msgid "Crossing Signs" @@ -10095,10 +9344,277 @@ msgstr "Glisser pour sélectionner un croisement, cliquer pour le basculer" msgid "Change knot crossing" msgstr "Modifier le croisement de l'entrelacs" +#. initialise your parameters here: +#: ../src/live_effects/lpe-lattice.cpp:45 +#, fuzzy +msgid "Control handle 0:" +msgstr "Taille des icônes de la barre de contrôle des outils :" + +#: ../src/live_effects/lpe-lattice.cpp:45 +#, fuzzy +msgid "Control handle 0" +msgstr "Poignée de point de rebroussement" + +#: ../src/live_effects/lpe-lattice.cpp:46 +#, fuzzy +msgid "Control handle 1:" +msgstr "Taille des icônes de la barre de contrôle des outils :" + +#: ../src/live_effects/lpe-lattice.cpp:46 +#, fuzzy +msgid "Control handle 1" +msgstr "Poignée de point de rebroussement" + +#: ../src/live_effects/lpe-lattice.cpp:47 +#, fuzzy +msgid "Control handle 2:" +msgstr "Taille des icônes de la barre de contrôle des outils :" + +#: ../src/live_effects/lpe-lattice.cpp:47 +#, fuzzy +msgid "Control handle 2" +msgstr "Poignée de point de rebroussement" + +#: ../src/live_effects/lpe-lattice.cpp:48 +#, fuzzy +msgid "Control handle 3:" +msgstr "Taille des icônes de la barre de contrôle des outils :" + +#: ../src/live_effects/lpe-lattice.cpp:48 +#, fuzzy +msgid "Control handle 3" +msgstr "Poignée de point de rebroussement" + +#: ../src/live_effects/lpe-lattice.cpp:49 +#, fuzzy +msgid "Control handle 4:" +msgstr "Taille des icônes de la barre de contrôle des outils :" + +#: ../src/live_effects/lpe-lattice.cpp:49 +#, fuzzy +msgid "Control handle 4" +msgstr "Poignée de point de rebroussement" + +#: ../src/live_effects/lpe-lattice.cpp:50 +#, fuzzy +msgid "Control handle 5:" +msgstr "Taille des icônes de la barre de contrôle des outils :" + +#: ../src/live_effects/lpe-lattice.cpp:50 +#, fuzzy +msgid "Control handle 5" +msgstr "Poignée de point de rebroussement" + +#: ../src/live_effects/lpe-lattice.cpp:51 +#, fuzzy +msgid "Control handle 6:" +msgstr "Taille des icônes de la barre de contrôle des outils :" + +#: ../src/live_effects/lpe-lattice.cpp:51 +#, fuzzy +msgid "Control handle 6" +msgstr "Poignée de point de rebroussement" + +#: ../src/live_effects/lpe-lattice.cpp:52 +#, fuzzy +msgid "Control handle 7:" +msgstr "Taille des icônes de la barre de contrôle des outils :" + +#: ../src/live_effects/lpe-lattice.cpp:52 +#, fuzzy +msgid "Control handle 7" +msgstr "Poignée de point de rebroussement" + +#: ../src/live_effects/lpe-lattice.cpp:53 +#, fuzzy +msgid "Control handle 8:" +msgstr "Taille des icônes de la barre de contrôle des outils :" + +#: ../src/live_effects/lpe-lattice.cpp:53 +#, fuzzy +msgid "Control handle 8" +msgstr "Poignée de point de rebroussement" + +#: ../src/live_effects/lpe-lattice.cpp:54 +#, fuzzy +msgid "Control handle 9:" +msgstr "Taille des icônes de la barre de contrôle des outils :" + +#: ../src/live_effects/lpe-lattice.cpp:54 +#, fuzzy +msgid "Control handle 9" +msgstr "Poignée de point de rebroussement" + +#: ../src/live_effects/lpe-lattice.cpp:55 +#, fuzzy +msgid "Control handle 10:" +msgstr "Taille des icônes de la barre de contrôle des outils :" + +#: ../src/live_effects/lpe-lattice.cpp:55 +#, fuzzy +msgid "Control handle 10" +msgstr "Poignée de point de rebroussement" + +#: ../src/live_effects/lpe-lattice.cpp:56 +#, fuzzy +msgid "Control handle 11:" +msgstr "Taille des icônes de la barre de contrôle des outils :" + +#: ../src/live_effects/lpe-lattice.cpp:56 +#, fuzzy +msgid "Control handle 11" +msgstr "Poignée de point de rebroussement" + +#: ../src/live_effects/lpe-lattice.cpp:57 +#, fuzzy +msgid "Control handle 12:" +msgstr "Taille des icônes de la barre de contrôle des outils :" + +#: ../src/live_effects/lpe-lattice.cpp:57 +#, fuzzy +msgid "Control handle 12" +msgstr "Poignée de point de rebroussement" + +#: ../src/live_effects/lpe-lattice.cpp:58 +#, fuzzy +msgid "Control handle 13:" +msgstr "Taille des icônes de la barre de contrôle des outils :" + +#: ../src/live_effects/lpe-lattice.cpp:58 +#, fuzzy +msgid "Control handle 13" +msgstr "Poignée de point de rebroussement" + +#: ../src/live_effects/lpe-lattice.cpp:59 +#, fuzzy +msgid "Control handle 14:" +msgstr "Taille des icônes de la barre de contrôle des outils :" + +#: ../src/live_effects/lpe-lattice.cpp:59 +#, fuzzy +msgid "Control handle 14" +msgstr "Poignée de point de rebroussement" + +#: ../src/live_effects/lpe-lattice.cpp:60 +#, fuzzy +msgid "Control handle 15:" +msgstr "Taille des icônes de la barre de contrôle des outils :" + +#: ../src/live_effects/lpe-lattice.cpp:60 +#, fuzzy +msgid "Control handle 15" +msgstr "Poignée de point de rebroussement" + +#: ../src/live_effects/lpe-line_segment.cpp:25 +#: ../src/widgets/lpe-toolbar.cpp:252 +msgid "Closed" +msgstr "Fermé" + +#: ../src/live_effects/lpe-line_segment.cpp:26 +#: ../src/widgets/lpe-toolbar.cpp:254 +msgid "Open start" +msgstr "Début ouvert" + +#: ../src/live_effects/lpe-line_segment.cpp:27 +#: ../src/widgets/lpe-toolbar.cpp:256 +msgid "Open end" +msgstr "Fin ouverte" + +#: ../src/live_effects/lpe-line_segment.cpp:28 +#: ../src/widgets/lpe-toolbar.cpp:258 +msgid "Open both" +msgstr "Les deux ouverts" + +#: ../src/live_effects/lpe-line_segment.cpp:34 +#, fuzzy +msgid "End type:" +msgstr "Type de fondu :" + +#: ../src/live_effects/lpe-line_segment.cpp:34 +msgid "Determines on which side the line or line segment is infinite." +msgstr "" + +#: ../src/live_effects/lpe-mirror_symmetry.cpp:32 +#, fuzzy +msgid "Discard original path?" +msgstr "Remplacer le chemin original" + +#: ../src/live_effects/lpe-mirror_symmetry.cpp:32 +msgid "Check this to only keep the mirrored part of the path" +msgstr "" + +#: ../src/live_effects/lpe-mirror_symmetry.cpp:33 +#, fuzzy +msgid "Reflection line:" +msgstr "Sélection" + +#: ../src/live_effects/lpe-mirror_symmetry.cpp:33 +msgid "Line which serves as 'mirror' for the reflection" +msgstr "" + #: ../src/live_effects/lpe-offset.cpp:31 msgid "Handle to control the distance of the offset from the curve" msgstr "" +#: ../src/live_effects/lpe-parallel.cpp:50 +#, fuzzy +msgid "Adjust the offset" +msgstr "Ajuster <b>la distance d'offset</b>" + +#: ../src/live_effects/lpe-parallel.cpp:51 +#, fuzzy +msgid "Specifies the left end of the parallel" +msgstr "Définit la forme des coins du chemin" + +#: ../src/live_effects/lpe-parallel.cpp:52 +#, fuzzy +msgid "Specifies the right end of the parallel" +msgstr "Définit la forme des coins du chemin" + +#: ../src/live_effects/lpe-parallel.cpp:102 +msgid "Adjust the \"left\" end of the parallel" +msgstr "" + +#: ../src/live_effects/lpe-parallel.cpp:108 +msgid "Adjust the \"right\" end of the parallel" +msgstr "" + +#: ../src/live_effects/lpe-path_length.cpp:26 +#: ../src/live_effects/lpe-sketch.cpp:58 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2668 +#: ../share/extensions/render_alphabetsoup.inx.h:3 +msgid "Scale:" +msgstr "Longueur/Courbure :" + +#: ../src/live_effects/lpe-path_length.cpp:26 +#, fuzzy +msgid "Scaling factor" +msgstr "Facteur d'échelle :" + +#: ../src/live_effects/lpe-path_length.cpp:28 +#: ../src/live_effects/lpe-ruler.cpp:42 +#: ../share/extensions/foldablebox.inx.h:7 +#: ../share/extensions/interp_att_g.inx.h:9 +#: ../share/extensions/layout_nup.inx.h:3 +#: ../share/extensions/printing_marks.inx.h:11 +msgid "Unit:" +msgstr "Unité :" + +#: ../src/live_effects/lpe-path_length.cpp:28 +#: ../src/live_effects/lpe-ruler.cpp:42 ../src/widgets/ruler.cpp:201 +msgid "Unit" +msgstr "Unité" + +#: ../src/live_effects/lpe-path_length.cpp:29 +#, fuzzy +msgid "Display unit" +msgstr "Ajustement de l'affichage" + +#: ../src/live_effects/lpe-path_length.cpp:29 +#, fuzzy +msgid "Print unit after path length" +msgstr "Longueur du chemin" + #: ../src/live_effects/lpe-patternalongpath.cpp:50 #: ../share/extensions/pathalongpath.inx.h:10 msgid "Single" @@ -10153,8 +9669,12 @@ msgstr "Espa_cement :" #: ../src/live_effects/lpe-patternalongpath.cpp:68 #, no-c-format -msgid "Space between copies of the pattern. Negative values allowed, but are limited to -90% of pattern width." -msgstr "Espace entre les exemplaires du motif. Les valeurs négatives sont autorisées, mais limitées à -90 % de la largeur du motif." +msgid "" +"Space between copies of the pattern. Negative values allowed, but are " +"limited to -90% of pattern width." +msgstr "" +"Espace entre les exemplaires du motif. Les valeurs négatives sont " +"autorisées, mais limitées à -90 % de la largeur du motif." #: ../src/live_effects/lpe-patternalongpath.cpp:70 msgid "No_rmal offset:" @@ -10169,8 +9689,12 @@ msgid "Offsets in _unit of pattern size" msgstr "Décalages en _unité de taille de motif" #: ../src/live_effects/lpe-patternalongpath.cpp:73 -msgid "Spacing, tangential and normal offset are expressed as a ratio of width/height" -msgstr "L'espacement et le décalage tangentiel sont exprimés en proportion de la longueur du motif, le décalage normal en proportion de sa largeur" +msgid "" +"Spacing, tangential and normal offset are expressed as a ratio of width/" +"height" +msgstr "" +"L'espacement et le décalage tangentiel sont exprimés en proportion de la " +"longueur du motif, le décalage normal en proportion de sa largeur" #: ../src/live_effects/lpe-patternalongpath.cpp:75 msgid "Pattern is _vertical" @@ -10186,7 +9710,73 @@ msgstr "_Fusionner les extrémités proches :" #: ../src/live_effects/lpe-patternalongpath.cpp:77 msgid "Fuse ends closer than this number. 0 means don't fuse." -msgstr "Fusionne les extrémités plus proches que ce nombre. 0 indique de ne pas fusionner." +msgstr "" +"Fusionne les extrémités plus proches que ce nombre. 0 indique de ne pas " +"fusionner." + +#: ../src/live_effects/lpe-perp_bisector.cpp:159 +msgid "Adjust the bisector's \"left\" end" +msgstr "" + +#: ../src/live_effects/lpe-perp_bisector.cpp:165 +msgid "Adjust the bisector's \"right\" end" +msgstr "" + +#. initialise your parameters here: +#: ../src/live_effects/lpe-perspective_path.cpp:47 +#, fuzzy +msgid "Scale x" +msgstr "Échelle" + +#: ../src/live_effects/lpe-perspective_path.cpp:47 +#, fuzzy +msgid "Scale factor in x direction" +msgstr "État du point de fuite dans la direction X" + +#: ../src/live_effects/lpe-perspective_path.cpp:48 +#, fuzzy +msgid "Scale y" +msgstr "Échelle" + +#: ../src/live_effects/lpe-perspective_path.cpp:48 +#, fuzzy +msgid "Scale factor in y direction" +msgstr "État du point de fuite dans la direction X" + +#: ../src/live_effects/lpe-perspective_path.cpp:49 +#, fuzzy +msgid "Offset x" +msgstr "Offset" + +#: ../src/live_effects/lpe-perspective_path.cpp:49 +#, fuzzy +msgid "Offset in x direction" +msgstr "Angle dans la direction X" + +#: ../src/live_effects/lpe-perspective_path.cpp:50 +#, fuzzy +msgid "Offset y" +msgstr "Offset" + +#: ../src/live_effects/lpe-perspective_path.cpp:50 +#, fuzzy +msgid "Offset in y direction" +msgstr "Angle dans la direction X" + +#: ../src/live_effects/lpe-perspective_path.cpp:51 +msgid "Uses XY plane?" +msgstr "" + +#: ../src/live_effects/lpe-perspective_path.cpp:51 +msgid "" +"If true, put the path on the left side of an imaginary box, otherwise on the " +"right side" +msgstr "" + +#: ../src/live_effects/lpe-perspective_path.cpp:145 +#, fuzzy +msgid "Adjust the origin" +msgstr "Ajuster la teinte" #: ../src/live_effects/lpe-powerstroke.cpp:189 #, fuzzy @@ -10211,11 +9801,6 @@ msgstr "Sur le nÅ“ud" msgid "Square" msgstr "Carrée" -#: ../src/live_effects/lpe-powerstroke.cpp:205 -#: ../share/extensions/gcodetools_prepare_path_for_plasma.inx.h:13 -msgid "Round" -msgstr "Arrondie" - #: ../src/live_effects/lpe-powerstroke.cpp:206 msgid "Peak" msgstr "En arête" @@ -10229,7 +9814,7 @@ msgid "Beveled" msgstr "Biseauté" #: ../src/live_effects/lpe-powerstroke.cpp:221 -#: ../src/widgets/star-toolbar.cpp:546 +#: ../src/widgets/star-toolbar.cpp:542 msgid "Rounded" msgstr "Arrondi" @@ -10242,7 +9827,7 @@ msgid "Miter" msgstr "Raccordé" #: ../src/live_effects/lpe-powerstroke.cpp:224 -#: ../src/widgets/pencil-toolbar.cpp:137 +#: ../src/widgets/pencil-toolbar.cpp:132 msgid "Spiro" msgstr "Spiro" @@ -10267,7 +9852,9 @@ msgid "Interpolator type:" msgstr "Type d'interpolateur :" #: ../src/live_effects/lpe-powerstroke.cpp:235 -msgid "Determines which kind of interpolator will be used to interpolate between stroke width along the path" +msgid "" +"Determines which kind of interpolator will be used to interpolate between " +"stroke width along the path" msgstr "" #: ../src/live_effects/lpe-powerstroke.cpp:236 @@ -10276,7 +9863,9 @@ msgid "Smoothness:" msgstr "Lissage :" #: ../src/live_effects/lpe-powerstroke.cpp:236 -msgid "Sets the smoothness for the CubicBezierJohan interpolator; 0 = linear interpolation, 1 = smooth" +msgid "" +"Sets the smoothness for the CubicBezierJohan interpolator; 0 = linear " +"interpolation, 1 = smooth" msgstr "" #: ../src/live_effects/lpe-powerstroke.cpp:237 @@ -10291,7 +9880,7 @@ msgstr "Définit la forme de début du chemin" #. 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:238 -#: ../src/widgets/stroke-style.cpp:220 +#: ../src/widgets/stroke-style.cpp:226 msgid "Join:" msgstr "Raccord :" @@ -10305,7 +9894,7 @@ msgid "Miter limit:" msgstr "Limite du raccord :" #: ../src/live_effects/lpe-powerstroke.cpp:239 -#: ../src/widgets/stroke-style.cpp:271 +#: ../src/widgets/stroke-style.cpp:277 msgid "Maximum length of the miter (in units of stroke width)" msgstr "Longueur maximum du raccord (en unités de l'épaisseur du contour)" @@ -10317,6 +9906,15 @@ msgstr "Terminaison finale :" msgid "Determines the shape of the path's end" msgstr "Définit la forme de la fin du chemin" +#: ../src/live_effects/lpe-recursiveskeleton.cpp:30 +#, fuzzy +msgid "Iterations:" +msgstr "Saturation :" + +#: ../src/live_effects/lpe-recursiveskeleton.cpp:30 +msgid "recursivity" +msgstr "" + #: ../src/live_effects/lpe-rough-hatches.cpp:225 msgid "Frequency randomness:" msgstr "Caractère aléatoire de la fréquence :" @@ -10339,32 +9937,48 @@ msgid "Half-turns smoothness: 1st side, in:" msgstr "Lissage des demi-tours : 1er côté, arrivée :" #: ../src/live_effects/lpe-rough-hatches.cpp:228 -msgid "Set smoothness/sharpness of path when reaching a 'bottom' half-turn. 0=sharp, 1=default" -msgstr "Définit le lissage du chemin lorsqu'il atteint un demi-tour inférieur. 0=net, 1=défaut" +msgid "" +"Set smoothness/sharpness of path when reaching a 'bottom' half-turn. " +"0=sharp, 1=default" +msgstr "" +"Définit le lissage du chemin lorsqu'il atteint un demi-tour inférieur. " +"0=net, 1=défaut" #: ../src/live_effects/lpe-rough-hatches.cpp:229 msgid "1st side, out:" msgstr "1er côté, départ :" #: ../src/live_effects/lpe-rough-hatches.cpp:229 -msgid "Set smoothness/sharpness of path when leaving a 'bottom' half-turn. 0=sharp, 1=default" -msgstr "Définit le lissage du chemin lorsqu'il quitte un demi-tour inférieur. 0=net, 1=défaut" +msgid "" +"Set smoothness/sharpness of path when leaving a 'bottom' half-turn. 0=sharp, " +"1=default" +msgstr "" +"Définit le lissage du chemin lorsqu'il quitte un demi-tour inférieur. 0=net, " +"1=défaut" #: ../src/live_effects/lpe-rough-hatches.cpp:230 msgid "2nd side, in:" msgstr "2e côté, arrivée :" #: ../src/live_effects/lpe-rough-hatches.cpp:230 -msgid "Set smoothness/sharpness of path when reaching a 'top' half-turn. 0=sharp, 1=default" -msgstr "Définit le lissage du chemin lorsqu'il atteint un demi-tour supérieur. 0=net, 1=défaut" +msgid "" +"Set smoothness/sharpness of path when reaching a 'top' half-turn. 0=sharp, " +"1=default" +msgstr "" +"Définit le lissage du chemin lorsqu'il atteint un demi-tour supérieur. " +"0=net, 1=défaut" #: ../src/live_effects/lpe-rough-hatches.cpp:231 msgid "2nd side, out:" msgstr "2e côté, départ :" #: ../src/live_effects/lpe-rough-hatches.cpp:231 -msgid "Set smoothness/sharpness of path when leaving a 'top' half-turn. 0=sharp, 1=default" -msgstr "Définit le lissage du chemin lorsqu'il quitte un demi-tour supérieur. 0=net, 1=défaut" +msgid "" +"Set smoothness/sharpness of path when leaving a 'top' half-turn. 0=sharp, " +"1=default" +msgstr "" +"Définit le lissage du chemin lorsqu'il quitte un demi-tour supérieur. 0=net, " +"1=défaut" #: ../src/live_effects/lpe-rough-hatches.cpp:232 msgid "Magnitude jitter: 1st side:" @@ -10372,7 +9986,9 @@ msgstr "Aléa d'amplitude : 1er côté :" #: ../src/live_effects/lpe-rough-hatches.cpp:232 msgid "Randomly moves 'bottom' half-turns to produce magnitude variations." -msgstr "Déplace aléatoirement les demi-tours inférieurs pour produire des variations d'amplitude." +msgstr "" +"Déplace aléatoirement les demi-tours inférieurs pour produire des variations " +"d'amplitude." #: ../src/live_effects/lpe-rough-hatches.cpp:233 #: ../src/live_effects/lpe-rough-hatches.cpp:235 @@ -10382,19 +9998,29 @@ msgstr "2e côté :" #: ../src/live_effects/lpe-rough-hatches.cpp:233 msgid "Randomly moves 'top' half-turns to produce magnitude variations." -msgstr "Déplace aléatoirement les demi-tours supérieurs pour produire des variations d'amplitude." +msgstr "" +"Déplace aléatoirement les demi-tours supérieurs pour produire des variations " +"d'amplitude." #: ../src/live_effects/lpe-rough-hatches.cpp:234 msgid "Parallelism jitter: 1st side:" msgstr "Aléa de parallélisme : 1er côté :" #: ../src/live_effects/lpe-rough-hatches.cpp:234 -msgid "Add direction randomness by moving 'bottom' half-turns tangentially to the boundary." -msgstr "Ajoute un caractère aléatoire à la direction en déplaçant les demi-tours inférieurs tangentiellement par rapport à la bordure." +msgid "" +"Add direction randomness by moving 'bottom' half-turns tangentially to the " +"boundary." +msgstr "" +"Ajoute un caractère aléatoire à la direction en déplaçant les demi-tours " +"inférieurs tangentiellement par rapport à la bordure." #: ../src/live_effects/lpe-rough-hatches.cpp:235 -msgid "Add direction randomness by randomly moving 'top' half-turns tangentially to the boundary." -msgstr "Ajoute un caractère aléatoire à la direction en déplaçant les demi-tours supérieurs tangentiellement par rapport à la bordure." +msgid "" +"Add direction randomness by randomly moving 'top' half-turns tangentially to " +"the boundary." +msgstr "" +"Ajoute un caractère aléatoire à la direction en déplaçant les demi-tours " +"supérieurs tangentiellement par rapport à la bordure." #: ../src/live_effects/lpe-rough-hatches.cpp:236 msgid "Variance: 1st side:" @@ -10434,7 +10060,8 @@ msgid "Width at 'bottom' half-turns" msgstr "Épaisseur des demi-tours inférieurs" #: ../src/live_effects/lpe-rough-hatches.cpp:242 -msgid "at 2nd side:" +#, fuzzy +msgid "At 2nd side:" msgstr "au 2e côté :" #: ../src/live_effects/lpe-rough-hatches.cpp:242 @@ -10443,7 +10070,8 @@ msgstr "Épaisseur des demi-tours supérieurs" #. #: ../src/live_effects/lpe-rough-hatches.cpp:244 -msgid "from 2nd to 1st side:" +#, fuzzy +msgid "From 2nd to 1st side:" msgstr "du 2e au 1er côté :" #: ../src/live_effects/lpe-rough-hatches.cpp:244 @@ -10451,7 +10079,8 @@ msgid "Width from 'top' to 'bottom'" msgstr "Épaisseur en allant du 'haut' en 'bas'" #: ../src/live_effects/lpe-rough-hatches.cpp:245 -msgid "from 1st to 2nd side:" +#, fuzzy +msgid "From 1st to 2nd side:" msgstr "du 1er au 2e côté :" #: ../src/live_effects/lpe-rough-hatches.cpp:245 @@ -10472,33 +10101,34 @@ msgid "Global bending" msgstr "Flexion globale" #: ../src/live_effects/lpe-rough-hatches.cpp:249 -msgid "Relative position to a reference point defines global bending direction and amount" -msgstr "La position relative à un point de référence définit globalement la direction de la flexion et sa quantité" +msgid "" +"Relative position to a reference point defines global bending direction and " +"amount" +msgstr "" +"La position relative à un point de référence définit globalement la " +"direction de la flexion et sa quantité" -#: ../src/live_effects/lpe-ruler.cpp:25 -#: ../share/extensions/restack.inx.h:12 +#: ../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 msgid "Left" msgstr "Gauche" -#: ../src/live_effects/lpe-ruler.cpp:26 -#: ../share/extensions/restack.inx.h:14 +#: ../src/live_effects/lpe-ruler.cpp:26 ../share/extensions/restack.inx.h:14 #: ../share/extensions/text_extract.inx.h:10 +#: ../share/extensions/text_merge.inx.h:10 msgid "Right" msgstr "Droite" -#: ../src/live_effects/lpe-ruler.cpp:27 -#: ../src/live_effects/lpe-ruler.cpp:35 +#: ../src/live_effects/lpe-ruler.cpp:27 ../src/live_effects/lpe-ruler.cpp:35 msgid "Both" msgstr "Les deux" -#: ../src/live_effects/lpe-ruler.cpp:33 -#: ../src/widgets/arc-toolbar.cpp:341 +#: ../src/live_effects/lpe-ruler.cpp:33 ../src/widgets/arc-toolbar.cpp:336 msgid "Start" msgstr "Début" -#: ../src/live_effects/lpe-ruler.cpp:34 -#: ../src/widgets/arc-toolbar.cpp:354 +#: ../src/live_effects/lpe-ruler.cpp:34 ../src/widgets/arc-toolbar.cpp:349 msgid "End" msgstr "Fin" @@ -10510,14 +10140,6 @@ msgstr "Distance entre _graduations :" msgid "Distance between successive ruler marks" msgstr "Distance entre deux graduations successives" -#: ../src/live_effects/lpe-ruler.cpp:42 -#: ../share/extensions/foldablebox.inx.h:7 -#: ../share/extensions/interp_att_g.inx.h:9 -#: ../share/extensions/layout_nup.inx.h:3 -#: ../share/extensions/printing_marks.inx.h:11 -msgid "Unit:" -msgstr "Unité :" - #: ../src/live_effects/lpe-ruler.cpp:43 msgid "Ma_jor length:" msgstr "Longueur _principale :" @@ -10540,7 +10162,8 @@ msgstr "Graduations _principales :" #: ../src/live_effects/lpe-ruler.cpp:45 msgid "Draw a major mark every ... steps" -msgstr "Dessine une graduation principale en fonction de ce nombre de graduations" +msgstr "" +"Dessine une graduation principale en fonction de ce nombre de graduations" #: ../src/live_effects/lpe-ruler.cpp:46 msgid "Shift marks _by:" @@ -10556,7 +10179,9 @@ msgstr "Positionnement de la règle :" #: ../src/live_effects/lpe-ruler.cpp:47 msgid "Direction of marks (when viewing along the path from start to end)" -msgstr "Positionnement de la règle, en regardant le long du chemin du début vers la fin" +msgstr "" +"Positionnement de la règle, en regardant le long du chemin du début vers la " +"fin" #: ../src/live_effects/lpe-ruler.cpp:48 msgid "_Offset:" @@ -10572,7 +10197,19 @@ msgstr "Graduation à l'extrémité :" #: ../src/live_effects/lpe-ruler.cpp:49 msgid "Choose whether to draw marks at the beginning and end of the path" -msgstr "Choisir si les graduations doivent être dessinées au début ou à la fin du chemin" +msgstr "" +"Choisir si les graduations doivent être dessinées au début ou à la fin du " +"chemin" + +#. initialise your parameters here: +#: ../src/live_effects/lpe-skeleton.cpp:37 +#, fuzzy +msgid "Float parameter" +msgstr "Paramètres de l'effet" + +#: ../src/live_effects/lpe-skeleton.cpp:37 +msgid "just a real number like 1.4!" +msgstr "" #. initialise your parameters here: #. testpointA(_("Test Point A"), _("Test A"), "ptA", &wr, this, Geom::Point(100,100)), @@ -10598,7 +10235,9 @@ msgstr "Variation de longueur des traits :" #: ../src/live_effects/lpe-sketch.cpp:42 msgid "Random variation of stroke length (relative to maximum length)" -msgstr "Variation aléatoire de la longueur des traits (relative à la longueur maximale)" +msgstr "" +"Variation aléatoire de la longueur des traits (relative à la longueur " +"maximale)" #: ../src/live_effects/lpe-sketch.cpp:43 msgid "Max. overlap:" @@ -10614,15 +10253,20 @@ msgstr "Variation de chevauchement :" #: ../src/live_effects/lpe-sketch.cpp:46 msgid "Random variation of overlap (relative to maximum overlap)" -msgstr "Variation aléatoire de chevauchement (relatif au chevauchement maximum)" +msgstr "" +"Variation aléatoire de chevauchement (relatif au chevauchement maximum)" #: ../src/live_effects/lpe-sketch.cpp:47 msgid "Max. end tolerance:" msgstr "Tolérance maximale de fin :" #: ../src/live_effects/lpe-sketch.cpp:48 -msgid "Maximum distance between ends of original and approximating paths (relative to maximum length)" -msgstr "Distance maximale entre la fin de l'original et les chemins approximatifs (relatif à la longueur maximale)" +msgid "" +"Maximum distance between ends of original and approximating paths (relative " +"to maximum length)" +msgstr "" +"Distance maximale entre la fin de l'original et les chemins approximatifs " +"(relatif à la longueur maximale)" #: ../src/live_effects/lpe-sketch.cpp:49 msgid "Average offset:" @@ -10656,15 +10300,13 @@ msgstr "Lignes de construction :" msgid "How many construction lines (tangents) to draw" msgstr "Nombre de lignes de construction (tangentes) à dessiner" -#: ../src/live_effects/lpe-sketch.cpp:58 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2654 -#: ../share/extensions/render_alphabetsoup.inx.h:3 -msgid "Scale:" -msgstr "Longueur/Courbure :" - #: ../src/live_effects/lpe-sketch.cpp:59 -msgid "Scale factor relating curvature and length of construction lines (try 5*offset)" -msgstr "Coefficient de proportionnalité entre longueur des lignes de construction et rayon de courbure du chemin (essayer 5 fois la valeur de décalage)" +msgid "" +"Scale factor relating curvature and length of construction lines (try " +"5*offset)" +msgstr "" +"Coefficient de proportionnalité entre longueur des lignes de construction et " +"rayon de courbure du chemin (essayer 5 fois la valeur de décalage)" #: ../src/live_effects/lpe-sketch.cpp:60 msgid "Max. length:" @@ -10688,7 +10330,9 @@ msgstr "Caractère aléatoire du placement :" #: ../src/live_effects/lpe-sketch.cpp:62 msgid "0: evenly distributed construction lines, 1: purely random placement" -msgstr "0 : lignes de construction régulièrement distribuées, 1 : placement purement aléatoire" +msgstr "" +"0 : lignes de construction régulièrement distribuées, 1 : placement purement " +"aléatoire" #: ../src/live_effects/lpe-sketch.cpp:64 msgid "k_min:" @@ -10706,6 +10350,66 @@ msgstr "k_max :" msgid "max curvature" msgstr "courbure max." +#: ../src/live_effects/lpe-tangent_to_curve.cpp:61 +msgid "Additional angle between tangent and curve" +msgstr "" + +#: ../src/live_effects/lpe-tangent_to_curve.cpp:62 +#, fuzzy +msgid "Location along curve:" +msgstr "Emplacement du cache utilisateur" + +#: ../src/live_effects/lpe-tangent_to_curve.cpp:62 +msgid "" +"Location of the point of attachment along the curve (between 0.0 and number-" +"of-segments)" +msgstr "" + +#: ../src/live_effects/lpe-tangent_to_curve.cpp:63 +#, fuzzy +msgid "Specifies the left end of the tangent" +msgstr "Définit la forme des coins du chemin" + +#: ../src/live_effects/lpe-tangent_to_curve.cpp:64 +#, fuzzy +msgid "Specifies the right end of the tangent" +msgstr "Définit la forme des coins du chemin" + +#: ../src/live_effects/lpe-tangent_to_curve.cpp:105 +msgid "Adjust the point of attachment of the tangent" +msgstr "" + +#: ../src/live_effects/lpe-tangent_to_curve.cpp:111 +msgid "Adjust the \"left\" end of the tangent" +msgstr "" + +#: ../src/live_effects/lpe-tangent_to_curve.cpp:117 +msgid "Adjust the \"right\" end of the tangent" +msgstr "" + +#: ../src/live_effects/lpe-test-doEffect-stack.cpp:22 +#, fuzzy +msgid "Stack step:" +msgstr "Incrément :" + +#: ../src/live_effects/lpe-test-doEffect-stack.cpp:23 +#, fuzzy +msgid "Point param:" +msgstr "Pointe vers :" + +#: ../src/live_effects/lpe-test-doEffect-stack.cpp:24 +#, fuzzy +msgid "Path param:" +msgstr "Données de chemin" + +#: ../src/live_effects/lpe-text_label.cpp:23 +msgid "Label:" +msgstr "Étiquette :" + +#: ../src/live_effects/lpe-text_label.cpp:23 +msgid "Text label attached to the path" +msgstr "" + #: ../src/live_effects/lpe-vonkoch.cpp:47 msgid "N_r of generations:" msgstr "Nomb_re d'itérations :" @@ -10720,15 +10424,23 @@ msgstr "Chemin générateur :" #: ../src/live_effects/lpe-vonkoch.cpp:48 msgid "Path whose segments define the iterated transforms" -msgstr "La fractale est obtenue en itérant les transformations qui envoient le chemin de référence sur chaque segment de celui-ci (un segment isolé définit une transformation préservant les proportions, deux segments attachés définissent une transformation générale)" +msgstr "" +"La fractale est obtenue en itérant les transformations qui envoient le " +"chemin de référence sur chaque segment de celui-ci (un segment isolé définit " +"une transformation préservant les proportions, deux segments attachés " +"définissent une transformation générale)" #: ../src/live_effects/lpe-vonkoch.cpp:49 msgid "_Use uniform transforms only" msgstr "_Utiliser uniquement les transformations uniformes" #: ../src/live_effects/lpe-vonkoch.cpp:49 -msgid "2 consecutive segments are used to reverse/preserve orientation only (otherwise, they define a general transform)." -msgstr "N'utiliser que des transformations qui préservent les proportions (rotations, symétries, redimensionnements)." +msgid "" +"2 consecutive segments are used to reverse/preserve orientation only " +"(otherwise, they define a general transform)." +msgstr "" +"N'utiliser que des transformations qui préservent les proportions " +"(rotations, symétries, redimensionnements)." #: ../src/live_effects/lpe-vonkoch.cpp:50 msgid "Dra_w all generations" @@ -10745,7 +10457,9 @@ msgstr "Segment de référence :" #: ../src/live_effects/lpe-vonkoch.cpp:52 msgid "The reference segment. Defaults to the horizontal midline of the bbox." -msgstr "Segment de référence. Par défaut centré horizontalement sur la boîte englobante." +msgstr "" +"Segment de référence. Par défaut centré horizontalement sur la boîte " +"englobante." #. refA(_("Ref Start"), _("Left side middle of the reference box"), "refA", &wr, this), #. refB(_("Ref End"), _("Right side middle of the reference box"), "refB", &wr, this), @@ -10806,7 +10520,9 @@ msgstr "Modifier le paramètre de point" #: ../src/live_effects/parameter/powerstrokepointarray.cpp:226 #: ../src/live_effects/parameter/powerstrokepointarray.cpp:238 -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." +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." msgstr "" #: ../src/live_effects/parameter/random.cpp:134 @@ -10817,7 +10533,7 @@ msgstr "Modifier le paramètre aléatoire" msgid "Change text parameter" msgstr "Modifier le paramètre de texte" -#: ../src/live_effects/parameter/unit.cpp:78 +#: ../src/live_effects/parameter/unit.cpp:80 msgid "Change unit parameter" msgstr "Modifier le paramètre d'unité" @@ -10825,7 +10541,12 @@ msgstr "Modifier le paramètre d'unité" msgid "Change vector parameter" msgstr "Modifier le paramètre de vecteur" -#: ../src/main-cmdlineact.cpp:49 +#: ../src/lpe-tool-context.cpp:204 +#, fuzzy +msgid "Choose a construction tool from the toolbar." +msgstr "Sélectionner un outil secondaire dans la barre d'outils" + +#: ../src/main-cmdlineact.cpp:50 #, c-format msgid "Unable to find verb ID '%s' specified on the command line.\n" msgstr "Verbe '%s' spécifié sur la ligne de commande introuvable.\n" @@ -10835,239 +10556,298 @@ msgstr "Verbe '%s' spécifié sur la ligne de commande introuvable.\n" msgid "Unable to find node ID: '%s'\n" msgstr "Impossible de trouver le nÅ“ud '%s'\n" -#: ../src/main.cpp:280 +#: ../src/main.cpp:297 msgid "Print the Inkscape version number" msgstr "Afficher la version d'Inkscape" -#: ../src/main.cpp:285 +#: ../src/main.cpp:302 msgid "Do not use X server (only process files from console)" -msgstr "Ne pas utiliser le serveur X (traiter les fichiers seulement depuis la console)" +msgstr "" +"Ne pas utiliser le serveur X (traiter les fichiers seulement depuis la " +"console)" -#: ../src/main.cpp:290 +#: ../src/main.cpp:307 msgid "Try to use X server (even if $DISPLAY is not set)" msgstr "Essayer d'utiliser le serveur X (même si $DISPLAY n'est pas défini)" -#: ../src/main.cpp:295 +#: ../src/main.cpp:312 msgid "Open specified document(s) (option string may be excluded)" msgstr "Ouvrir les document(s) spécifiés (la chaîne d'option peut être exclue)" -#: ../src/main.cpp:296 -#: ../src/main.cpp:301 -#: ../src/main.cpp:306 -#: ../src/main.cpp:378 -#: ../src/main.cpp:383 -#: ../src/main.cpp:388 -#: ../src/main.cpp:399 -#: ../src/main.cpp:416 +#: ../src/main.cpp:313 ../src/main.cpp:318 ../src/main.cpp:323 +#: ../src/main.cpp:395 ../src/main.cpp:400 ../src/main.cpp:405 +#: ../src/main.cpp:416 ../src/main.cpp:433 msgid "FILENAME" msgstr "NOMDEFICHIER" -#: ../src/main.cpp:300 +#: ../src/main.cpp:317 msgid "Print document(s) to specified output file (use '| program' for pipe)" -msgstr "Imprimer les document(s) dans le fichier de sortie spécifié (utilisez '| programme ' pour envoyer la sortie à un programme)" +msgstr "" +"Imprimer les document(s) dans le fichier de sortie spécifié (utilisez '| " +"programme ' pour envoyer la sortie à un programme)" -#: ../src/main.cpp:305 +#: ../src/main.cpp:322 msgid "Export document to a PNG file" msgstr "Exporter le document vers un fichier PNG" -#: ../src/main.cpp:310 -msgid "Resolution for exporting to bitmap and for rasterization of filters in PS/EPS/PDF (default 90)" -msgstr "Résolution pour l'exportation de bitmap et la rastérisation des filtres en PS/EPS/PDS (90 par défaut)" +#: ../src/main.cpp:327 +msgid "" +"Resolution for exporting to bitmap and for rasterization of filters in PS/" +"EPS/PDF (default 90)" +msgstr "" +"Résolution pour l'exportation de bitmap et la rastérisation des filtres en " +"PS/EPS/PDS (90 par défaut)" -#: ../src/main.cpp:311 -#: ../src/ui/widget/rendering-options.cpp:34 +#: ../src/main.cpp:328 ../src/ui/widget/rendering-options.cpp:34 msgid "DPI" msgstr "PPP" -#: ../src/main.cpp:315 -msgid "Exported area in SVG user units (default is the page; 0,0 is lower-left corner)" -msgstr "Zone à exporter, en unités utilisateur SVG (par défaut, la zone de travail entière ; 0,0 est le coin inférieur gauche)" +#: ../src/main.cpp:332 +msgid "" +"Exported area in SVG user units (default is the page; 0,0 is lower-left " +"corner)" +msgstr "" +"Zone à exporter, en unités utilisateur SVG (par défaut, la zone de travail " +"entière ; 0,0 est le coin inférieur gauche)" -#: ../src/main.cpp:316 +#: ../src/main.cpp:333 msgid "x0:y0:x1:y1" msgstr "x0:y0:x1:y1" -#: ../src/main.cpp:320 +#: ../src/main.cpp:337 msgid "Exported area is the entire drawing (not page)" msgstr "La zone à exporter est le dessin entier (pas la zone de travail)" -#: ../src/main.cpp:325 +#: ../src/main.cpp:342 msgid "Exported area is the entire page" msgstr "La zone à exporter est la zone de travail entière" -#: ../src/main.cpp:330 +#: ../src/main.cpp:347 msgid "Only for PS/EPS/PDF, sets margin in mm around exported area (default 0)" msgstr "" -#: ../src/main.cpp:331 -#: ../src/main.cpp:373 +#: ../src/main.cpp:348 ../src/main.cpp:390 msgid "VALUE" msgstr "VALEUR" -#: ../src/main.cpp:335 -msgid "Snap the bitmap export area outwards to the nearest integer values (in SVG user units)" -msgstr "Ajuster la zone à exporter en bitmap aux valeurs entières supérieures les plus proches (en unités utilisateur SVG)" +#: ../src/main.cpp:352 +msgid "" +"Snap the bitmap export area outwards to the nearest integer values (in SVG " +"user units)" +msgstr "" +"Ajuster la zone à exporter en bitmap aux valeurs entières supérieures les " +"plus proches (en unités utilisateur SVG)" -#: ../src/main.cpp:340 +#: ../src/main.cpp:357 msgid "The width of exported bitmap in pixels (overrides export-dpi)" msgstr "La largeur en pixels du bitmap exporté (préempte export-dpi)" -#: ../src/main.cpp:341 +#: ../src/main.cpp:358 msgid "WIDTH" msgstr "LARGEUR" -#: ../src/main.cpp:345 +#: ../src/main.cpp:362 msgid "The height of exported bitmap in pixels (overrides export-dpi)" msgstr "La hauteur en pixels du bitmap exporté (préempte export-dpi)" -#: ../src/main.cpp:346 +#: ../src/main.cpp:363 msgid "HEIGHT" msgstr "HAUTEUR" -#: ../src/main.cpp:350 +#: ../src/main.cpp:367 msgid "The ID of the object to export" msgstr "L'Id de l'objet à exporter" -#: ../src/main.cpp:351 -#: ../src/main.cpp:461 -#: ../src/ui/dialog/inkscape-preferences.cpp:1485 +#: ../src/main.cpp:368 ../src/main.cpp:478 +#: ../src/ui/dialog/inkscape-preferences.cpp:1489 msgid "ID" msgstr "Id" #. TRANSLATORS: this means: "Only export the object whose id is given in --export-id". #. See "man inkscape" for details. -#: ../src/main.cpp:357 -msgid "Export just the object with export-id, hide all others (only with export-id)" -msgstr "N'exporter que l'objet avec export-id, cacher tous les autres (seulement avec export-id)" +#: ../src/main.cpp:374 +msgid "" +"Export just the object with export-id, hide all others (only with export-id)" +msgstr "" +"N'exporter que l'objet avec export-id, cacher tous les autres (seulement " +"avec export-id)" -#: ../src/main.cpp:362 +#: ../src/main.cpp:379 msgid "Use stored filename and DPI hints when exporting (only with export-id)" -msgstr "Utiliser le nom de fichier et la résolution enregistrés lors de l'exportation (seulement avec export-id)" +msgstr "" +"Utiliser le nom de fichier et la résolution enregistrés lors de " +"l'exportation (seulement avec export-id)" -#: ../src/main.cpp:367 +#: ../src/main.cpp:384 msgid "Background color of exported bitmap (any SVG-supported color string)" -msgstr "Couleur de fond du bitmap exporté (n'importe quelle code de couleur permise par SVG)" +msgstr "" +"Couleur de fond du bitmap exporté (n'importe quelle code de couleur permise " +"par SVG)" -#: ../src/main.cpp:368 +#: ../src/main.cpp:385 msgid "COLOR" msgstr "COULEUR" -#: ../src/main.cpp:372 +#: ../src/main.cpp:389 msgid "Background opacity of exported bitmap (either 0.0 to 1.0, or 1 to 255)" msgstr "Opacité du fond du bitmap exporté (entre 0,0 et 1,0 ou 1 et 255))" -#: ../src/main.cpp:377 +#: ../src/main.cpp:394 msgid "Export document to plain SVG file (no sodipodi or inkscape namespaces)" -msgstr "Exporter le document en SVG simple (sans espace de nom de Sodipodi ou d'Inkscape)" +msgstr "" +"Exporter le document en SVG simple (sans espace de nom de Sodipodi ou " +"d'Inkscape)" -#: ../src/main.cpp:382 +#: ../src/main.cpp:399 msgid "Export document to a PS file" msgstr "Exporter le document en fichier PS" -#: ../src/main.cpp:387 +#: ../src/main.cpp:404 msgid "Export document to an EPS file" msgstr "Exporter le document en fichier EPS" -#: ../src/main.cpp:392 -msgid "Choose the PostScript Level used to export. Possible choices are 2 (the default) and 3" +#: ../src/main.cpp:409 +msgid "" +"Choose the PostScript Level used to export. Possible choices are 2 (the " +"default) and 3" msgstr "" -#: ../src/main.cpp:394 +#: ../src/main.cpp:411 msgid "PS Level" msgstr "Niveau PostScript" -#: ../src/main.cpp:398 +#: ../src/main.cpp:415 msgid "Export document to a PDF file" msgstr "Exporter le document en fichier PDF" #. TRANSLATORS: "--export-pdf-version" is an Inkscape command line option; see "inkscape --help" -#: ../src/main.cpp:404 -msgid "Export PDF to given version. (hint: make sure to input the exact string found in the PDF export dialog, e.g. \"PDF 1.4\" which is PDF-a conformant)" +#: ../src/main.cpp:421 +msgid "" +"Export PDF to given version. (hint: make sure to input the exact string " +"found in the PDF export dialog, e.g. \"PDF 1.4\" which is PDF-a conformant)" msgstr "" -#: ../src/main.cpp:405 +#: ../src/main.cpp:422 msgid "PDF_VERSION" msgstr "" -#: ../src/main.cpp:409 -msgid "Export PDF/PS/EPS without text. Besides the PDF/PS/EPS, a LaTeX file is exported, putting the text on top of the PDF/PS/EPS file. Include the result in LaTeX like: \\input{latexfile.tex}" -msgstr "Exporte en PDF, PS ou EPS sans texte, celui-ci étant exporté dans un LaTex séparé. Le résultat peut être intégré dans LaTeX avec : \\input{latexfile.tex}" +#: ../src/main.cpp:426 +msgid "" +"Export PDF/PS/EPS without text. Besides the PDF/PS/EPS, a LaTeX file is " +"exported, putting the text on top of the PDF/PS/EPS file. Include the result " +"in LaTeX like: \\input{latexfile.tex}" +msgstr "" +"Exporte en PDF, PS ou EPS sans texte, celui-ci étant exporté dans un LaTex " +"séparé. Le résultat peut être intégré dans LaTeX avec : \\input{latexfile." +"tex}" -#: ../src/main.cpp:415 +#: ../src/main.cpp:432 msgid "Export document to an Enhanced Metafile (EMF) File" msgstr "Exporter le document en fichier EMF (Métafichier amélioré)" -#: ../src/main.cpp:421 +#: ../src/main.cpp:438 msgid "Convert text object to paths on export (PS, EPS, PDF, SVG)" -msgstr "Convertir les objets texte en chemins lors de l'export (PS, EPS, PDF, SVG)" +msgstr "" +"Convertir les objets texte en chemins lors de l'export (PS, EPS, PDF, SVG)" -#: ../src/main.cpp:426 -msgid "Render filtered objects without filters, instead of rasterizing (PS, EPS, PDF)" -msgstr "Les objets filtrés sont rendus sans filtres, plutôt que rastérisés (PS, EPS, PDF)" +#: ../src/main.cpp:443 +msgid "" +"Render filtered objects without filters, instead of rasterizing (PS, EPS, " +"PDF)" +msgstr "" +"Les objets filtrés sont rendus sans filtres, plutôt que rastérisés (PS, EPS, " +"PDF)" #. TRANSLATORS: "--query-id" is an Inkscape command line option; see "inkscape --help" -#: ../src/main.cpp:432 -msgid "Query the X coordinate of the drawing or, if specified, of the object with --query-id" -msgstr "Demander l'abscisse (coordonnée X) du dessin ou, si spécifié avec --query-id, de l'objet" +#: ../src/main.cpp:449 +msgid "" +"Query the X coordinate of the drawing or, if specified, of the object with --" +"query-id" +msgstr "" +"Demander l'abscisse (coordonnée X) du dessin ou, si spécifié avec --query-" +"id, de l'objet" #. TRANSLATORS: "--query-id" is an Inkscape command line option; see "inkscape --help" -#: ../src/main.cpp:438 -msgid "Query the Y coordinate of the drawing or, if specified, of the object with --query-id" -msgstr "Demander l'ordonnée (coordonnée Y) du dessin ou, si spécifié avec --query-id, de l'objet" +#: ../src/main.cpp:455 +msgid "" +"Query the Y coordinate of the drawing or, if specified, of the object with --" +"query-id" +msgstr "" +"Demander l'ordonnée (coordonnée Y) du dessin ou, si spécifié avec --query-" +"id, de l'objet" #. TRANSLATORS: "--query-id" is an Inkscape command line option; see "inkscape --help" -#: ../src/main.cpp:444 -msgid "Query the width of the drawing or, if specified, of the object with --query-id" -msgstr "Demander la largeur du dessin ou, si spécifié avec --query-id, de l'objet" +#: ../src/main.cpp:461 +msgid "" +"Query the width of the drawing or, if specified, of the object with --query-" +"id" +msgstr "" +"Demander la largeur du dessin ou, si spécifié avec --query-id, de l'objet" #. TRANSLATORS: "--query-id" is an Inkscape command line option; see "inkscape --help" -#: ../src/main.cpp:450 -msgid "Query the height of the drawing or, if specified, of the object with --query-id" -msgstr "Demander la hauteur du dessin ou, si spécifié avec --query-id, de l'objet" +#: ../src/main.cpp:467 +msgid "" +"Query the height of the drawing or, if specified, of the object with --query-" +"id" +msgstr "" +"Demander la hauteur du dessin ou, si spécifié avec --query-id, de l'objet" -#: ../src/main.cpp:455 +#: ../src/main.cpp:472 msgid "List id,x,y,w,h for all objects" msgstr "Afficher id,x,y,w,h pour tous les objets" -#: ../src/main.cpp:460 +#: ../src/main.cpp:477 msgid "The ID of the object whose dimensions are queried" msgstr "L'Id de l'objet dont les dimensions sont demandées" #. TRANSLATORS: this option makes Inkscape print the name (path) of the extension directory -#: ../src/main.cpp:466 +#: ../src/main.cpp:483 msgid "Print out the extension directory and exit" msgstr "Lister le dossier d'extensions, puis sortir" -#: ../src/main.cpp:471 +#: ../src/main.cpp:488 msgid "Remove unused definitions from the defs section(s) of the document" msgstr "Supprimer les éléments inutiles des section(s) defs du document" -#: ../src/main.cpp:476 +#: ../src/main.cpp:494 +msgid "Enter a listening loop for D-Bus messages in console mode" +msgstr "" + +#: ../src/main.cpp:499 +msgid "" +"Specify the D-Bus bus name to listen for messages on (default is org." +"inkscape)" +msgstr "" + +#: ../src/main.cpp:500 +msgid "BUS-NAME" +msgstr "" + +#: ../src/main.cpp:505 msgid "List the IDs of all the verbs in Inkscape" msgstr "Afficher les Ids de tous les verbes d'Inkscape" -#: ../src/main.cpp:481 +#: ../src/main.cpp:510 msgid "Verb to call when Inkscape opens." msgstr "Verbe sélectionné au démarrage d'Inkscape." -#: ../src/main.cpp:482 +#: ../src/main.cpp:511 msgid "VERB-ID" msgstr "VERB-ID" -#: ../src/main.cpp:486 +#: ../src/main.cpp:515 msgid "Object ID to select when Inkscape opens." msgstr "Id de l'objet à sélectionner au démarrage d'Inkscape." -#: ../src/main.cpp:487 +#: ../src/main.cpp:516 msgid "OBJECT-ID" msgstr "OBJECT-ID" -#: ../src/main.cpp:491 +#: ../src/main.cpp:520 msgid "Start Inkscape in interactive shell mode." msgstr "Démarrer Inkscape en mode de commande interactif." -#: ../src/main.cpp:835 -#: ../src/main.cpp:1192 +#: ../src/main.cpp:867 ../src/main.cpp:1255 msgid "" "[OPTIONS...] [FILE...]\n" "\n" @@ -11078,8 +10858,7 @@ msgstr "" "Options disponibles :" #. ## Add a menu for clear() -#: ../src/menus-skeleton.h:16 -#: ../src/ui/dialog/debug.cpp:83 +#: ../src/menus-skeleton.h:16 ../src/ui/dialog/debug.cpp:83 msgid "_File" msgstr "_Fichier" @@ -11089,14 +10868,11 @@ msgstr "_Nouveau" #. " <verb verb-id=\"FileExportToOCAL\" />\n" #. " <verb verb-id=\"DialogMetadata\" />\n" -#: ../src/menus-skeleton.h:43 -#: ../src/verbs.cpp:2575 -#: ../src/verbs.cpp:2581 +#: ../src/menus-skeleton.h:43 ../src/verbs.cpp:2638 ../src/verbs.cpp:2644 msgid "_Edit" msgstr "_Édition" -#: ../src/menus-skeleton.h:53 -#: ../src/verbs.cpp:2341 +#: ../src/menus-skeleton.h:53 ../src/verbs.cpp:2402 msgid "Paste Si_ze" msgstr "Coller les d_imensions" @@ -11134,33 +10910,37 @@ msgstr "Mode d'_affichage des couleurs" msgid "Sh_ow/Hide" msgstr "_Afficher/cacher" -#. " <verb verb-id=\"DialogScript\" />\n" #. Not quite ready to be in the menus. #. " <verb verb-id=\"FocusToggle\" />\n" -#: ../src/menus-skeleton.h:158 +#: ../src/menus-skeleton.h:157 msgid "_Layer" msgstr "Ca_lque" -#: ../src/menus-skeleton.h:182 +#: ../src/menus-skeleton.h:181 msgid "_Object" msgstr "_Objet" -#: ../src/menus-skeleton.h:190 +#: ../src/menus-skeleton.h:189 msgid "Cli_p" msgstr "D_écoupe" -#: ../src/menus-skeleton.h:194 +#: ../src/menus-skeleton.h:193 msgid "Mas_k" msgstr "Mas_que" -#: ../src/menus-skeleton.h:198 +#: ../src/menus-skeleton.h:197 msgid "Patter_n" msgstr "Moti_f" -#: ../src/menus-skeleton.h:222 +#: ../src/menus-skeleton.h:221 msgid "_Path" msgstr "_Chemin" +#: ../src/menus-skeleton.h:249 ../src/ui/dialog/find.cpp:77 +#: ../src/ui/dialog/text-edit.cpp:72 +msgid "_Text" +msgstr "_Texte" + #: ../src/menus-skeleton.h:267 msgid "Filter_s" msgstr "Filtre_s" @@ -11178,15 +10958,14 @@ msgid "Tutorials" msgstr "Didacticiels" #. TRANSLATORS: Mind the space in front. This is part of a compound message -#: ../src/mesh-context.cpp:141 -#: ../src/mesh-context.cpp:152 +#: ../src/mesh-context.cpp:131 ../src/mesh-context.cpp:142 #, fuzzy, c-format msgid " out of %d mesh handle" msgid_plural " out of %d mesh handles" msgstr[0] " sur %d poignée de dégradé" msgstr[1] " sur %d poignées de dégradé" -#: ../src/mesh-context.cpp:159 +#: ../src/mesh-context.cpp:149 #, fuzzy, c-format msgid "<b>%d</b> mesh handle selected out of %d" msgid_plural "<b>%d</b> mesh handles selected out of %d" @@ -11194,123 +10973,174 @@ msgstr[0] "<b>%d</b> poignée de dégradé sélectionnée sur %d" msgstr[1] "<b>%d</b> poignées de dégradé sélectionnées sur %d" #. TRANSLATORS: The plural refers to number of selected objects -#: ../src/mesh-context.cpp:166 +#: ../src/mesh-context.cpp:156 #, fuzzy, c-format msgid "<b>No</b> mesh handles selected out of %d on %d selected object" msgid_plural "<b>No</b> mesh handles selected out of %d on %d selected objects" msgstr[0] "<b>Aucune</b> poignée sélectionnée sur %d dans %d objet sélectionné" -msgstr[1] "<b>Aucune</b> poignée sélectionnée sur %d dans %d objets sélectionnés" +msgstr[1] "" +"<b>Aucune</b> poignée sélectionnée sur %d dans %d objets sélectionnés" -#: ../src/mesh-context.cpp:336 +#: ../src/mesh-context.cpp:320 msgid "Split mesh row/column" msgstr "" -#: ../src/mesh-context.cpp:422 +#: ../src/mesh-context.cpp:406 msgid "Toggled mesh path type." msgstr "" -#: ../src/mesh-context.cpp:426 +#: ../src/mesh-context.cpp:410 msgid "Approximated arc for mesh side." msgstr "" -#: ../src/mesh-context.cpp:430 +#: ../src/mesh-context.cpp:414 msgid "Toggled mesh tensors." msgstr "" -#: ../src/mesh-context.cpp:434 +#: ../src/mesh-context.cpp:418 #, fuzzy msgid "Smoothed mesh corner color." msgstr "_Adoucir les coins" -#: ../src/mesh-context.cpp:438 +#: ../src/mesh-context.cpp:422 #, fuzzy msgid "Picked mesh corner color." msgstr "Capturer la teinte de la couleur" -#: ../src/mesh-context.cpp:523 +#: ../src/mesh-context.cpp:497 #, fuzzy msgid "Create default mesh" msgstr "Créer un dégradé par défaut" -#: ../src/mesh-context.cpp:743 +#: ../src/mesh-context.cpp:717 #, fuzzy msgid "FIXME<b>Ctrl</b>: snap mesh angle" msgstr "<b>Ctrl</b> : pour tourner par incréments" -#: ../src/mesh-context.cpp:744 +#: ../src/mesh-context.cpp:718 #, fuzzy msgid "FIXME<b>Shift</b>: draw mesh around the starting point" msgstr "<b>Maj</b> : dessiner autour du point de départ" #: ../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 "Ajuster le rayon <b>d'arrondi horizontal</b>; <b>Ctrl</b> que le rayon vertical soit identique" +msgid "" +"Adjust the <b>horizontal rounding</b> radius; with <b>Ctrl</b> to make the " +"vertical radius the same" +msgstr "" +"Ajuster le rayon <b>d'arrondi horizontal</b>; <b>Ctrl</b> que le rayon " +"vertical soit identique" #: ../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 "Ajuster le rayon <b>d'arrondi vertical</b>; <b>Ctrl</b> pour que le rayon horizontal soit identique" - -#: ../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 "Ajuster la <b>hauteur</b> et la <b>largeur</b> du rectangle ; <b>Ctrl</b> pour verrouiller le rapport des dimensions ou incliner dans une seule dimension" - -#: ../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 "Redimensionner la boîte suivant les axes X/Y. Avec <b>Shift</b>, suivant l'axe Z; avec <b>Ctrl</b> pour préserver les directions des arêtes ou des diagonales." - -#: ../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 "Redimensionner la boîte suivant l'axe Z. Avec <b>Shift</b>, suivant les axes X/Y; avec <b>Ctrl</b> pour préserver les directions des arêtes ou des diagonales." +msgid "" +"Adjust the <b>vertical rounding</b> radius; with <b>Ctrl</b> to make the " +"horizontal radius the same" +msgstr "" +"Ajuster le rayon <b>d'arrondi vertical</b>; <b>Ctrl</b> pour que le rayon " +"horizontal soit identique" + +#: ../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 "" +"Ajuster la <b>hauteur</b> et la <b>largeur</b> du rectangle ; <b>Ctrl</b> " +"pour verrouiller le rapport des dimensions ou incliner dans une seule " +"dimension" + +#: ../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 "" +"Redimensionner la boîte suivant les axes X/Y. Avec <b>Shift</b>, suivant " +"l'axe Z; avec <b>Ctrl</b> pour préserver les directions des arêtes ou des " +"diagonales." + +#: ../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 "" +"Redimensionner la boîte suivant l'axe Z. Avec <b>Shift</b>, suivant les axes " +"X/Y; avec <b>Ctrl</b> pour préserver les directions des arêtes ou des " +"diagonales." #: ../src/object-edit.cpp:721 msgid "Move the box in perspective" msgstr "Déplacer la boîte en perspective." -#: ../src/object-edit.cpp:952 +#: ../src/object-edit.cpp:948 msgid "Adjust ellipse <b>width</b>, with <b>Ctrl</b> to make circle" -msgstr "Ajuster la <b>largeur</b> de l'ellipse; <b>Ctrl</b> pour en faire un cercle" +msgstr "" +"Ajuster la <b>largeur</b> de l'ellipse; <b>Ctrl</b> pour en faire un cercle" -#: ../src/object-edit.cpp:956 +#: ../src/object-edit.cpp:952 msgid "Adjust ellipse <b>height</b>, with <b>Ctrl</b> to make circle" -msgstr "Ajuster la <b>hauteur</b> de l'ellipse; <b>Ctrl</b> pour en faire un cercle" +msgstr "" +"Ajuster la <b>hauteur</b> de l'ellipse; <b>Ctrl</b> pour en faire un cercle" + +#: ../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 "" +"Positionner le <b>point de départ</b> de l'arc ou du camembert ; <b>Ctrl</b> " +"pour tourner par incréments ; déplacer <b>vers l'intérieur</b> de l'ellipse " +"pour un arc, <b>vers l'extérieur</b> pour un camembert" -#: ../src/object-edit.cpp:960 -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 "Positionner le <b>point de départ</b> de l'arc ou du camembert ; <b>Ctrl</b> pour tourner par incréments ; déplacer <b>vers l'intérieur</b> de l'ellipse pour un arc, <b>vers l'extérieur</b> pour un camembert" +#: ../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 "" +"Positionner le <b>point final</b> de l'arc ou du camembert; <b>Ctrl</b> pour " +"tourner par incréments; déplacer <b>vers l'intérieur</b> de l'ellipse pour " +"un arc, <b>vers l'extérieur</b> pour un camembert" -#: ../src/object-edit.cpp:965 -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 "Positionner le <b>point final</b> de l'arc ou du camembert; <b>Ctrl</b> pour tourner par incréments; déplacer <b>vers l'intérieur</b> de l'ellipse pour un arc, <b>vers l'extérieur</b> pour un camembert" +#: ../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 "" +"Ajuster le <b>rayon des sommets</b> de l'étoile ou du polygone; <b>Maj</b> " +"pour arrondir; <b>Alt</b> pour rendre aléatoire" -#: ../src/object-edit.cpp:1105 -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 "Ajuster le <b>rayon des sommets</b> de l'étoile ou du polygone; <b>Maj</b> pour arrondir; <b>Alt</b> pour rendre aléatoire" +#: ../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 "" +"Ajuster le <b>rayon de base</b> de l'étoile; <b>Ctrl</b> pour garder " +"l'étoile parfaitement radiale (pas d'inclinaison); <b>Maj</b> pour arrondir; " +"<b>Alt</b> pour rendre aléatoire" -#: ../src/object-edit.cpp:1113 -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 "Ajuster le <b>rayon de base</b> de l'étoile; <b>Ctrl</b> pour garder l'étoile parfaitement radiale (pas d'inclinaison); <b>Maj</b> pour arrondir; <b>Alt</b> pour rendre aléatoire" +#: ../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 "" +"Enrouler/dérouler la spirale depuis <b>l'intérieur</b>; <b>Ctrl</b> pour " +"tourner par incréments; <b>Alt</b> pour la faire converger/diverger" #: ../src/object-edit.cpp:1303 -msgid "Roll/unroll the spiral from <b>inside</b>; with <b>Ctrl</b> to snap angle; with <b>Alt</b> to converge/diverge" -msgstr "Enrouler/dérouler la spirale depuis <b>l'intérieur</b>; <b>Ctrl</b> pour tourner par incréments; <b>Alt</b> pour la faire converger/diverger" - -#: ../src/object-edit.cpp:1307 #, fuzzy -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 "Enrouler/dérouler la spirale depuis <b>l'extérieur</b>; <b>Ctrl</b> pour tourner par incréments; <b>Maj</b> pour redimensionner/ tourner" +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 "" +"Enrouler/dérouler la spirale depuis <b>l'extérieur</b>; <b>Ctrl</b> pour " +"tourner par incréments; <b>Maj</b> pour redimensionner/ tourner" -#: ../src/object-edit.cpp:1352 +#: ../src/object-edit.cpp:1348 msgid "Adjust the <b>offset distance</b>" msgstr "Ajuster <b>la distance d'offset</b>" -#: ../src/object-edit.cpp:1388 +#: ../src/object-edit.cpp:1384 msgid "Drag to resize the <b>flowed text frame</b>" msgstr "Cliquer-déplacer pour redimensionner le <b>cadre du texte</b>" @@ -11346,154 +11176,157 @@ msgstr "Séparer" msgid "<b>No path(s)</b> to break apart in the selection." msgstr "<b>Aucun chemin</b> à séparer dans la sélection." -#: ../src/path-chemistry.cpp:303 +#: ../src/path-chemistry.cpp:301 msgid "Select <b>object(s)</b> to convert to path." msgstr "Sélectionner les <b>objet(s)</b> à convertir en chemin." -#: ../src/path-chemistry.cpp:309 +#: ../src/path-chemistry.cpp:307 msgid "Converting objects to paths..." msgstr "Conversion des objets en chemins..." -#: ../src/path-chemistry.cpp:331 +#: ../src/path-chemistry.cpp:329 msgid "Object to path" msgstr "Objet en chemin" -#: ../src/path-chemistry.cpp:333 +#: ../src/path-chemistry.cpp:331 msgid "<b>No objects</b> to convert to path in the selection." msgstr "<b>Aucun objet</b> à convertir en chemin dans la sélection." -#: ../src/path-chemistry.cpp:610 +#: ../src/path-chemistry.cpp:608 msgid "Select <b>path(s)</b> to reverse." msgstr "Sélectionner les <b>chemin(s)</b> à inverser." -#: ../src/path-chemistry.cpp:619 +#: ../src/path-chemistry.cpp:617 msgid "Reversing paths..." msgstr "Inversion des chemins..." -#: ../src/path-chemistry.cpp:654 +#: ../src/path-chemistry.cpp:652 msgid "Reverse path" msgstr "Inverser le chemin" -#: ../src/path-chemistry.cpp:656 +#: ../src/path-chemistry.cpp:654 msgid "<b>No paths</b> to reverse in the selection." msgstr "<b>Aucun chemin</b> à inverser dans la sélection." -#: ../src/pen-context.cpp:222 -#: ../src/pencil-context.cpp:534 -msgid "Drawing cancelled" -msgstr "Tracé annulé" - -#: ../src/pen-context.cpp:460 -#: ../src/pencil-context.cpp:259 +#: ../src/pencil-context.cpp:226 ../src/pen-context.cpp:411 msgid "Continuing selected path" msgstr "Prolongation du chemin sélectionné" -#: ../src/pen-context.cpp:470 -#: ../src/pencil-context.cpp:267 +#: ../src/pencil-context.cpp:234 ../src/pen-context.cpp:421 msgid "Creating new path" msgstr "Création d'un nouveau chemin" -#: ../src/pen-context.cpp:472 -#: ../src/pencil-context.cpp:270 +#: ../src/pencil-context.cpp:237 ../src/pen-context.cpp:423 msgid "Appending to selected path" msgstr "Ajout au chemin sélectionné" -#: ../src/pen-context.cpp:632 -msgid "<b>Click</b> or <b>click and drag</b> to close and finish the path." -msgstr "<b>Cliquer</b> ou <b>cliquer-déplacer</b> pour fermer et terminer le chemin." - -#: ../src/pen-context.cpp:642 -msgid "<b>Click</b> or <b>click and drag</b> to continue the path from this point." -msgstr "<b>Cliquer</b> ou <b>cliquer-déplacer</b> pour prolonger le chemin à partir de ce point." - -#: ../src/pen-context.cpp:1237 -#, 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 "<b>Segment de courbe</b> : angle %3.2f°, distance %s ; <b>Ctrl</b> pour tourner par incréments ; <b>Entrée</b> pour terminer le chemin" - -#: ../src/pen-context.cpp:1238 -#, 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 "<b>Segment de droite</b> : angle %3.2f°, distance %s ; <b>Ctrl</b> pour tourner par incréments ; <b>Entrée</b> pour terminer le chemin" - -#: ../src/pen-context.cpp:1255 -#, c-format -msgid "<b>Curve handle</b>: angle %3.2f°, length %s; with <b>Ctrl</b> to snap angle" -msgstr "<b>Poignée de contrôle</b>: angle %3.2f°, longueur %s; <b>Ctrl</b> pour tourner par incréments" - -#: ../src/pen-context.cpp:1277 -#, 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 "<b>Poignée de la courbe, symétrique</b> : angle %3.2f°, longueur %s ; avec <b>Ctrl</b> pour tourner par incréments ; <b>Maj</b> pour ne déplacer que cette poignée" - -#: ../src/pen-context.cpp:1278 -#, 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 "<b>Poignée de la courbe</b> : angle %3.2f°, longueur %s ; avec <b>Ctrl</b> pour tourner par incréments ; <b>Maj</b> pour ne déplacer que cette poignée" - -#: ../src/pen-context.cpp:1324 -msgid "Drawing finished" -msgstr "Tracé terminé" - -#: ../src/pencil-context.cpp:375 +#: ../src/pencil-context.cpp:342 msgid "<b>Release</b> here to close and finish the path." msgstr "<b>Relâcher</b> ici pour fermer et terminer le chemin." -#: ../src/pencil-context.cpp:381 +#: ../src/pencil-context.cpp:348 msgid "Drawing a freehand path" msgstr "Dessin d'une ligne à main levée" -#: ../src/pencil-context.cpp:386 +#: ../src/pencil-context.cpp:353 msgid "<b>Drag</b> to continue the path from this point." msgstr "<b>Déplacer</b> pour continuer le chemin à partir de ce point." #. Write curves to object -#: ../src/pencil-context.cpp:478 +#: ../src/pencil-context.cpp:445 msgid "Finishing freehand" msgstr "Dessin à main levée terminé" -#: ../src/pencil-context.cpp:584 -msgid "<b>Sketch mode</b>: holding <b>Alt</b> interpolates between sketched paths. Release <b>Alt</b> to finalize." -msgstr "<b>Mode croquis</b> : maintenir <b>Alt</b> pour réaliser une interpolation entre les chemins croqués. Relacher <b>Alt</b> pour finaliser." +#: ../src/pencil-context.cpp:501 ../src/pen-context.cpp:191 +msgid "Drawing cancelled" +msgstr "Tracé annulé" -#: ../src/pencil-context.cpp:612 +#: ../src/pencil-context.cpp:551 +msgid "" +"<b>Sketch mode</b>: holding <b>Alt</b> interpolates between sketched paths. " +"Release <b>Alt</b> to finalize." +msgstr "" +"<b>Mode croquis</b> : maintenir <b>Alt</b> pour réaliser une interpolation " +"entre les chemins croqués. Relacher <b>Alt</b> pour finaliser." + +#: ../src/pencil-context.cpp:579 msgid "Finishing freehand sketch" msgstr "Croquis à main levée terminé" -#: ../src/persp3d.cpp:318 -msgid "Toggle vanishing point" -msgstr "Alterner les points de fuite" +#: ../src/pen-context.cpp:583 +msgid "<b>Click</b> or <b>click and drag</b> to close and finish the path." +msgstr "" +"<b>Cliquer</b> ou <b>cliquer-déplacer</b> pour fermer et terminer le chemin." -#: ../src/persp3d.cpp:329 -msgid "Toggle multiple vanishing points" -msgstr "Alterner entre des points de fuite multiples" +#: ../src/pen-context.cpp:593 +msgid "" +"<b>Click</b> or <b>click and drag</b> to continue the path from this point." +msgstr "" +"<b>Cliquer</b> ou <b>cliquer-déplacer</b> pour prolonger le chemin à partir " +"de ce point." -#: ../src/preferences-skeleton.h:101 -msgid "Dip pen" -msgstr "Calame" +#: ../src/pen-context.cpp:1193 +#, 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 "" +"<b>Segment de courbe</b> : angle %3.2f°, distance %s ; <b>Ctrl</b> pour " +"tourner par incréments ; <b>Entrée</b> pour terminer le chemin" -#: ../src/preferences-skeleton.h:102 -msgid "Marker" -msgstr "Marqueur" +#: ../src/pen-context.cpp:1194 +#, 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 "" +"<b>Segment de droite</b> : angle %3.2f°, distance %s ; <b>Ctrl</b> pour " +"tourner par incréments ; <b>Entrée</b> pour terminer le chemin" -#: ../src/preferences-skeleton.h:103 -msgid "Brush" -msgstr "Brosse" +#: ../src/pen-context.cpp:1211 +#, c-format +msgid "" +"<b>Curve handle</b>: angle %3.2f°, length %s; with <b>Ctrl</b> to snap " +"angle" +msgstr "" +"<b>Poignée de contrôle</b>: angle %3.2f°, longueur %s; <b>Ctrl</b> pour " +"tourner par incréments" -#: ../src/preferences-skeleton.h:104 -msgid "Wiggly" -msgstr "Pinceau fou" +#: ../src/pen-context.cpp:1233 +#, 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 "" +"<b>Poignée de la courbe, symétrique</b> : angle %3.2f°, longueur %s ; " +"avec <b>Ctrl</b> pour tourner par incréments ; <b>Maj</b> pour ne déplacer " +"que cette poignée" -#: ../src/preferences-skeleton.h:105 -msgid "Splotchy" -msgstr "Plume" +#: ../src/pen-context.cpp:1234 +#, 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 "" +"<b>Poignée de la courbe</b> : angle %3.2f°, longueur %s ; avec <b>Ctrl</" +"b> pour tourner par incréments ; <b>Maj</b> pour ne déplacer que cette " +"poignée" -#: ../src/preferences-skeleton.h:106 -msgid "Tracing" -msgstr "Gravure" +#: ../src/pen-context.cpp:1280 +msgid "Drawing finished" +msgstr "Tracé terminé" -#: ../src/preferences.cpp:132 -msgid "Inkscape will run with default settings, and new settings will not be saved. " +#: ../src/persp3d.cpp:293 +msgid "Toggle vanishing point" +msgstr "Alterner les points de fuite" + +#: ../src/persp3d.cpp:304 +msgid "Toggle multiple vanishing points" +msgstr "Alterner entre des points de fuite multiples" + +#: ../src/preferences.cpp:134 +msgid "" +"Inkscape will run with default settings, and new settings will not be saved. " msgstr "" "Inkscape va démarrer avec les préférences par défaut.\n" "Les nouvelles préférences ne seront pas enregistrées." @@ -11501,7 +11334,7 @@ msgstr "" #. the creation failed #. _reportError(Glib::ustring::compose(_("Cannot create profile directory %1."), #. Glib::filename_to_utf8(_prefs_dir)), not_saved); -#: ../src/preferences.cpp:147 +#: ../src/preferences.cpp:149 #, c-format msgid "Cannot create profile directory %s." msgstr "Impossible de créer le dossier de profil %s." @@ -11509,7 +11342,7 @@ msgstr "Impossible de créer le dossier de profil %s." #. The profile dir is not actually a directory #. _reportError(Glib::ustring::compose(_("%1 is not a valid directory."), #. Glib::filename_to_utf8(_prefs_dir)), not_saved); -#: ../src/preferences.cpp:165 +#: ../src/preferences.cpp:167 #, c-format msgid "%s is not a valid directory." msgstr "%s n'est pas un dossier valide." @@ -11517,31 +11350,55 @@ msgstr "%s n'est pas un dossier valide." #. The write failed. #. _reportError(Glib::ustring::compose(_("Failed to create the preferences file %1."), #. Glib::filename_to_utf8(_prefs_filename)), not_saved); -#: ../src/preferences.cpp:176 +#: ../src/preferences.cpp:178 #, c-format msgid "Failed to create the preferences file %s." msgstr "Échec lors de la création du fichier du fichier de préférences %s." -#: ../src/preferences.cpp:212 +#: ../src/preferences.cpp:214 #, c-format msgid "The preferences file %s is not a regular file." msgstr "%s n'est pas un fichier de préférences normal." -#: ../src/preferences.cpp:222 +#: ../src/preferences.cpp:224 #, c-format msgid "The preferences file %s could not be read." msgstr "Le fichier de préférences %s n'a pas pu être lu." -#: ../src/preferences.cpp:233 +#: ../src/preferences.cpp:235 #, c-format msgid "The preferences file %s is not a valid XML document." msgstr "Le fichier de préférences %s n'est pas un document XML valide." -#: ../src/preferences.cpp:242 +#: ../src/preferences.cpp:244 #, c-format msgid "The file %s is not a valid Inkscape preferences file." msgstr "%s n'est pas un fichier de préférences valide." +#: ../src/preferences-skeleton.h:101 +msgid "Dip pen" +msgstr "Calame" + +#: ../src/preferences-skeleton.h:102 +msgid "Marker" +msgstr "Marqueur" + +#: ../src/preferences-skeleton.h:103 +msgid "Brush" +msgstr "Brosse" + +#: ../src/preferences-skeleton.h:104 +msgid "Wiggly" +msgstr "Pinceau fou" + +#: ../src/preferences-skeleton.h:105 +msgid "Splotchy" +msgstr "Plume" + +#: ../src/preferences-skeleton.h:106 +msgid "Tracing" +msgstr "Gravure" + #: ../src/rdf.cpp:175 msgid "CC Attribution" msgstr "CC Paternité" @@ -11560,7 +11417,9 @@ msgstr "CC Paternité - Pas d'utilisation commerciale" #: ../src/rdf.cpp:195 msgid "CC Attribution-NonCommercial-ShareAlike" -msgstr "CC Paternité - Pas d'utilisation commerciale - Partage des conditions initiales à l'identique" +msgstr "" +"CC Paternité - Pas d'utilisation commerciale - Partage des conditions " +"initiales à l'identique" #: ../src/rdf.cpp:200 msgid "CC Attribution-NonCommercial-NoDerivs" @@ -11580,168 +11439,197 @@ msgid "Open Font License" msgstr "Open Font Licence (Licence de police libre)" #. TRANSLATORS: for info, see http://www.w3.org/TR/2000/CR-SVG-20000802/linking.html#AElementXLinkTitleAttribute -#: ../src/rdf.cpp:232 -#: ../src/ui/dialog/object-attributes.cpp:57 +#: ../src/rdf.cpp:235 ../src/ui/dialog/object-attributes.cpp:57 msgid "Title:" msgstr "Titre :" -#: ../src/rdf.cpp:233 -msgid "Name by which this document is formally known" -msgstr "Nom sous lequel le document est formellement connu" +#: ../src/rdf.cpp:236 +msgid "A name given to the resource" +msgstr "" -#: ../src/rdf.cpp:235 +#: ../src/rdf.cpp:238 msgid "Date:" msgstr "Date :" -#: ../src/rdf.cpp:236 -msgid "Date associated with the creation of this document (YYYY-MM-DD)" -msgstr "Date associée à la création du document (AAAA-MM-JJ)" +#: ../src/rdf.cpp:239 +msgid "" +"A point or period of time associated with an event in the lifecycle of the " +"resource" +msgstr "" -#: ../src/rdf.cpp:238 -#: ../share/extensions/webslicer_create_rect.inx.h:3 +#: ../src/rdf.cpp:241 ../share/extensions/webslicer_create_rect.inx.h:3 msgid "Format:" msgstr "Format :" -#: ../src/rdf.cpp:239 -msgid "The physical or digital manifestation of this document (MIME type)" -msgstr "La manifestation physique ou numérique de ce document (type MIME)" - #: ../src/rdf.cpp:242 -msgid "Type of document (DCMI Type)" -msgstr "Type du document (type DCMI)" +msgid "The file format, physical medium, or dimensions of the resource" +msgstr "" #: ../src/rdf.cpp:245 +#, fuzzy +msgid "The nature or genre of the resource" +msgstr "Unité à utiliser pour les mesures" + +#: ../src/rdf.cpp:248 msgid "Creator:" msgstr "Créateur :" -#: ../src/rdf.cpp:246 -msgid "Name of entity primarily responsible for making the content of this document" -msgstr "Entité principalement responsable de la création du contenu de ce document" +#: ../src/rdf.cpp:249 +#, fuzzy +msgid "An entity primarily responsible for making the resource" +msgstr "" +"Entité principalement responsable de la création du contenu de ce document" -#: ../src/rdf.cpp:248 +#: ../src/rdf.cpp:251 msgid "Rights:" msgstr "Droits :" -#: ../src/rdf.cpp:249 -msgid "Name of entity with rights to the Intellectual Property of this document" -msgstr "Nom de l'entité possédant les droits de Propriété Intellectuelle sur ce document" +#: ../src/rdf.cpp:252 +msgid "Information about rights held in and over the resource" +msgstr "" -#: ../src/rdf.cpp:251 +#: ../src/rdf.cpp:254 msgid "Publisher:" msgstr "Éditeur :" -#: ../src/rdf.cpp:252 -msgid "Name of entity responsible for making this document available" +#: ../src/rdf.cpp:255 +#, fuzzy +msgid "An entity responsible for making the resource available" msgstr "Nom de l'entité responsable de la distribution de ce document" -#: ../src/rdf.cpp:255 +#: ../src/rdf.cpp:258 msgid "Identifier:" msgstr "Identifiant :" -#: ../src/rdf.cpp:256 -msgid "Unique URI to reference this document" -msgstr "URI unique pour référencer ce document" - #: ../src/rdf.cpp:259 -msgid "Unique URI to reference the source of this document" -msgstr "URI unique pour référencer la ressource dont le document actuel est dérivé" +msgid "An unambiguous reference to the resource within a given context" +msgstr "" + +#: ../src/rdf.cpp:262 +msgid "A related resource from which the described resource is derived" +msgstr "" -#: ../src/rdf.cpp:261 +#: ../src/rdf.cpp:264 msgid "Relation:" msgstr "Relation :" -#: ../src/rdf.cpp:262 -msgid "Unique URI to a related document" -msgstr "URI unique vers un document apparenté" +#: ../src/rdf.cpp:265 +#, fuzzy +msgid "A related resource" +msgstr "Source de fondu :" -#: ../src/rdf.cpp:264 -#: ../src/ui/dialog/inkscape-preferences.cpp:1837 +#: ../src/rdf.cpp:267 ../src/ui/dialog/inkscape-preferences.cpp:1841 msgid "Language:" msgstr "Langue principale :" -#: ../src/rdf.cpp:265 -msgid "Two-letter language tag with optional subtags for the language of this document (e.g. 'en-GB')" -msgstr "Balise de deux lettres spécifiant la langue de ce document, avec une sous-balise optionnelle de spécification régionale (ex. « fr-FR » )" +#: ../src/rdf.cpp:268 +msgid "A language of the resource" +msgstr "" -#: ../src/rdf.cpp:267 +#: ../src/rdf.cpp:270 msgid "Keywords:" msgstr "Mots clés :" -#: ../src/rdf.cpp:268 -msgid "The topic of this document as comma-separated key words, phrases, or classifications" -msgstr "Le sujet de ce document sous forme de mots clés, phrases ou éléments de classification, séparés par des virgules" +#: ../src/rdf.cpp:271 +#, fuzzy +msgid "The topic of the resource" +msgstr "Bord supérieur de la source" #. TRANSLATORS: "Coverage": the spatial or temporal characteristics of the content. #. For info, see Appendix D of http://www.w3.org/TR/1998/WD-rdf-schema-19980409/ -#: ../src/rdf.cpp:272 +#: ../src/rdf.cpp:275 msgid "Coverage:" msgstr "Portée :" -#: ../src/rdf.cpp:273 -msgid "Extent or scope of this document" -msgstr "Étendue ou portée de ce document" - #: ../src/rdf.cpp:276 +msgid "" +"The spatial or temporal topic of the resource, the spatial applicability of " +"the resource, or the jurisdiction under which the resource is relevant" +msgstr "" + +#: ../src/rdf.cpp:279 msgid "Description:" msgstr "Description :" -#: ../src/rdf.cpp:277 -msgid "A short account of the content of this document" +#: ../src/rdf.cpp:280 +#, fuzzy +msgid "An account of the resource" msgstr "Une courte explication du contenu de ce document" #. FIXME: need to handle 1 agent per line of input -#: ../src/rdf.cpp:281 +#: ../src/rdf.cpp:284 msgid "Contributors:" msgstr "Collaborateurs :" -#: ../src/rdf.cpp:282 -msgid "Names of entities responsible for making contributions to the content of this document" +#: ../src/rdf.cpp:285 +#, fuzzy +msgid "An entity responsible for making contributions to the resource" msgstr "Nom des entités ayant contribué au contenu de ce document" #. TRANSLATORS: URL to a page that defines the license for the document -#: ../src/rdf.cpp:286 +#: ../src/rdf.cpp:289 msgid "URI:" msgstr "URI :" #. TRANSLATORS: this is where you put a URL to a page that defines the license -#: ../src/rdf.cpp:288 +#: ../src/rdf.cpp:291 msgid "URI to this document's license's namespace definition" msgstr "URI de la définition de l'espace de nom de la licence de ce document" #. TRANSLATORS: fragment of XML representing the license of the document -#: ../src/rdf.cpp:292 +#: ../src/rdf.cpp:295 msgid "Fragment:" msgstr "Fragment :" -#: ../src/rdf.cpp:293 +#: ../src/rdf.cpp:296 msgid "XML fragment for the RDF 'License' section" msgstr "Fragment XML pour la section « Licence » (RDF)" -#: ../src/rect-context.cpp:352 -msgid "<b>Ctrl</b>: make square or integer-ratio rect, lock a rounded corner circular" -msgstr "<b>Ctrl</b> : forcer un rectangle carré ou de ratio entier, préserver le rayon d'arrondi d'un coin" +#: ../src/rect-context.cpp:292 +msgid "" +"<b>Ctrl</b>: make square or integer-ratio rect, lock a rounded corner " +"circular" +msgstr "" +"<b>Ctrl</b> : forcer un rectangle carré ou de ratio entier, préserver le " +"rayon d'arrondi d'un coin" -#: ../src/rect-context.cpp:505 +#: ../src/rect-context.cpp:453 #, c-format -msgid "<b>Rectangle</b>: %s × %s (constrained to ratio %d:%d); with <b>Shift</b> to draw around the starting point" -msgstr "<b>Rectangle</b> : %s × %s; (contraint de ratio %d:%d) ; <b>Maj</b> pour dessiner autour du point de départ" +msgid "" +"<b>Rectangle</b>: %s × %s (constrained to ratio %d:%d); with <b>Shift</" +"b> to draw around the starting point" +msgstr "" +"<b>Rectangle</b> : %s × %s; (contraint de ratio %d:%d) ; <b>Maj</b> " +"pour dessiner autour du point de départ" -#: ../src/rect-context.cpp:508 +#: ../src/rect-context.cpp:456 #, c-format -msgid "<b>Rectangle</b>: %s × %s (constrained to golden ratio 1.618 : 1); with <b>Shift</b> to draw around the starting point" -msgstr "<b>Rectangle</b> : %s × %s; (contraint au ratio du Nombre d'Or 1.618 : 1) ; <b>Maj</b> dessiner autour du point de départ" +msgid "" +"<b>Rectangle</b>: %s × %s (constrained to golden ratio 1.618 : 1); with " +"<b>Shift</b> to draw around the starting point" +msgstr "" +"<b>Rectangle</b> : %s × %s; (contraint au ratio du Nombre d'Or 1.618 : " +"1) ; <b>Maj</b> dessiner autour du point de départ" -#: ../src/rect-context.cpp:510 +#: ../src/rect-context.cpp:458 #, c-format -msgid "<b>Rectangle</b>: %s × %s (constrained to golden ratio 1 : 1.618); with <b>Shift</b> to draw around the starting point" -msgstr "<b>Rectangle</b> : %s × %s; (contraint au ratio du Nombre d'Or 1 : 1.618) ; <b>Maj</b> pour dessiner autour du point de départ" +msgid "" +"<b>Rectangle</b>: %s × %s (constrained to golden ratio 1 : 1.618); with " +"<b>Shift</b> to draw around the starting point" +msgstr "" +"<b>Rectangle</b> : %s × %s; (contraint au ratio du Nombre d'Or 1 : " +"1.618) ; <b>Maj</b> pour dessiner autour du point de départ" -#: ../src/rect-context.cpp:514 +#: ../src/rect-context.cpp:462 #, c-format -msgid "<b>Rectangle</b>: %s × %s; with <b>Ctrl</b> to make square or integer-ratio rectangle; with <b>Shift</b> to draw around the starting point" -msgstr "<b>Rectangle</b> : %s × %s; <b>Ctrl</b> forcer un rectangle carré ou de ratio entier; <b>Maj</b> dessiner autour du point de départ" +msgid "" +"<b>Rectangle</b>: %s × %s; with <b>Ctrl</b> to make square or integer-" +"ratio rectangle; with <b>Shift</b> to draw around the starting point" +msgstr "" +"<b>Rectangle</b> : %s × %s; <b>Ctrl</b> forcer un rectangle carré ou de " +"ratio entier; <b>Maj</b> dessiner autour du point de départ" -#: ../src/rect-context.cpp:539 +#: ../src/rect-context.cpp:485 msgid "Create rectangle" msgstr "Créer un rectangle" @@ -11749,93 +11637,112 @@ msgstr "Créer un rectangle" msgid "Fixup broken links" msgstr "" -#: ../src/select-context.cpp:181 +#: ../src/select-context.cpp:165 msgid "Click selection to toggle scale/rotation handles" -msgstr "Cliquer sur la sélection pour alterner entre poignées de redimensionnement et de rotation" +msgstr "" +"Cliquer sur la sélection pour alterner entre poignées de redimensionnement " +"et de rotation" -#: ../src/select-context.cpp:182 -msgid "No objects selected. Click, Shift+click, Alt+scroll mouse on top of objects, or drag around objects to select." -msgstr "Aucun objet sélectionné. Sélectionnez des objets par Clic, Maj+Clic ou Alt+molette, ou cliquez-déplacez autour des objets à sélectionner." +#: ../src/select-context.cpp:166 +msgid "" +"No objects selected. Click, Shift+click, Alt+scroll mouse on top of objects, " +"or drag around objects to select." +msgstr "" +"Aucun objet sélectionné. Sélectionnez des objets par Clic, Maj+Clic ou Alt" +"+molette, ou cliquez-déplacez autour des objets à sélectionner." -#: ../src/select-context.cpp:241 +#: ../src/select-context.cpp:219 msgid "Move canceled." msgstr "Déplacement annulé." -#: ../src/select-context.cpp:249 +#: ../src/select-context.cpp:227 msgid "Selection canceled." msgstr "Sélection annulée." -#: ../src/select-context.cpp:626 -msgid "<b>Draw over</b> objects to select them; release <b>Alt</b> to switch to rubberband selection" -msgstr "<b>Tracer</b> un trait passant par des objets pour les sélectionner. Lâcher la touche <b>Alt</b> pour repasser en mode sélection rectangle" +#: ../src/select-context.cpp:644 +msgid "" +"<b>Draw over</b> objects to select them; release <b>Alt</b> to switch to " +"rubberband selection" +msgstr "" +"<b>Tracer</b> un trait passant par des objets pour les sélectionner. Lâcher " +"la touche <b>Alt</b> pour repasser en mode sélection rectangle" -#: ../src/select-context.cpp:628 -msgid "<b>Drag around</b> objects to select them; press <b>Alt</b> to switch to touch selection" -msgstr "<b>Entourer</b> les objets pour les sélectionner; appuyer sur <b>Alt</b> pour passer en « toucher pour sélectionner »" +#: ../src/select-context.cpp:646 +msgid "" +"<b>Drag around</b> objects to select them; press <b>Alt</b> to switch to " +"touch selection" +msgstr "" +"<b>Entourer</b> les objets pour les sélectionner; appuyer sur <b>Alt</b> " +"pour passer en « toucher pour sélectionner »" -#: ../src/select-context.cpp:900 +#: ../src/select-context.cpp:936 msgid "<b>Ctrl</b>: click to select in groups; drag to move hor/vert" -msgstr "<b>Ctrl</b> : Cliquer pour sélectionner dans les groupes; cliquer-déplacer pour déplacer horizontalement/verticalment" +msgstr "" +"<b>Ctrl</b> : Cliquer pour sélectionner dans les groupes; cliquer-déplacer " +"pour déplacer horizontalement/verticalment" -#: ../src/select-context.cpp:901 +#: ../src/select-context.cpp:937 msgid "<b>Shift</b>: click to toggle select; drag for rubberband selection" -msgstr "<b>Maj</b> : cliquer pour inverser l'état de sélection, cliquer-déplacer pour activer la sélection rectangle" +msgstr "" +"<b>Maj</b> : cliquer pour inverser l'état de sélection, cliquer-déplacer " +"pour activer la sélection rectangle" -#: ../src/select-context.cpp:902 -msgid "<b>Alt</b>: click to select under; scroll mouse-wheel to cycle-select; drag to move selected or select by touch" -msgstr "<b>Alt</b> : cliquer pour sélectionner sous, utiliser la molette pour sélectionner cycliquement, cliquer-déplacer pour déplacer ou passer en « toucher pour sélectionner »" +#: ../src/select-context.cpp:938 +msgid "" +"<b>Alt</b>: click to select under; scroll mouse-wheel to cycle-select; drag " +"to move selected or select by touch" +msgstr "" +"<b>Alt</b> : cliquer pour sélectionner sous, utiliser la molette pour " +"sélectionner cycliquement, cliquer-déplacer pour déplacer ou passer en " +"« toucher pour sélectionner »" -#: ../src/select-context.cpp:1073 +#: ../src/select-context.cpp:1146 msgid "Selected object is not a group. Cannot enter." msgstr "L'objet sélectionné n'est pas un groupe. Impossible d'y entrer." -#: ../src/selection-chemistry.cpp:377 +#: ../src/selection-chemistry.cpp:393 msgid "Delete text" msgstr "Supprimer le texte" -#: ../src/selection-chemistry.cpp:385 +#: ../src/selection-chemistry.cpp:401 msgid "<b>Nothing</b> was deleted." msgstr "<b>Rien</b> n'a été supprimé." -#: ../src/selection-chemistry.cpp:404 -#: ../src/text-context.cpp:1030 +#: ../src/selection-chemistry.cpp:420 ../src/text-context.cpp:992 #: ../src/ui/dialog/calligraphic-profile-rename.cpp:75 -#: ../src/ui/dialog/swatches.cpp:278 -#: ../src/widgets/erasor-toolbar.cpp:114 -#: ../src/widgets/gradient-toolbar.cpp:1193 -#: ../src/widgets/gradient-toolbar.cpp:1207 -#: ../src/widgets/gradient-toolbar.cpp:1221 -#: ../src/widgets/node-toolbar.cpp:410 +#: ../src/ui/dialog/swatches.cpp:278 ../src/widgets/eraser-toolbar.cpp:110 +#: ../src/widgets/gradient-toolbar.cpp:1195 +#: ../src/widgets/gradient-toolbar.cpp:1209 +#: ../src/widgets/gradient-toolbar.cpp:1223 +#: ../src/widgets/node-toolbar.cpp:413 msgid "Delete" msgstr "Supprimer" -#: ../src/selection-chemistry.cpp:432 +#: ../src/selection-chemistry.cpp:448 msgid "Select <b>object(s)</b> to duplicate." msgstr "Sélectionner un ou des <b>objet(s)</b> à dupliquer." -#: ../src/selection-chemistry.cpp:541 +#: ../src/selection-chemistry.cpp:557 msgid "Delete all" msgstr "Supprimer tout" -#: ../src/selection-chemistry.cpp:737 +#: ../src/selection-chemistry.cpp:747 msgid "Select <b>some objects</b> to group." msgstr "Sélectionner <b>des objets</b> à grouper." -#: ../src/selection-chemistry.cpp:752 -#: ../src/selection-describer.cpp:54 +#: ../src/selection-chemistry.cpp:762 ../src/sp-item-group.cpp:331 msgid "Group" msgstr "Groupe" -#: ../src/selection-chemistry.cpp:766 +#: ../src/selection-chemistry.cpp:771 msgid "Select a <b>group</b> to ungroup." msgstr "Sélectionner un <b>groupe</b> à dégrouper." -#: ../src/selection-chemistry.cpp:809 +#: ../src/selection-chemistry.cpp:814 msgid "<b>No groups</b> to ungroup in the selection." msgstr "<b>Aucun groupe</b> à dégrouper dans la sélection." -#: ../src/selection-chemistry.cpp:815 -#: ../src/sp-item-group.cpp:479 +#: ../src/selection-chemistry.cpp:820 ../src/sp-item-group.cpp:564 msgid "Ungroup" msgstr "Dégrouper" @@ -11843,12 +11750,13 @@ msgstr "Dégrouper" msgid "Select <b>object(s)</b> to raise." msgstr "Sélectionner un ou des <b>objet(s)</b> à monter." -#: ../src/selection-chemistry.cpp:907 -#: ../src/selection-chemistry.cpp:967 -#: ../src/selection-chemistry.cpp:1000 -#: ../src/selection-chemistry.cpp:1064 -msgid "You cannot raise/lower objects from <b>different groups</b> or <b>layers</b>." -msgstr "Vous ne pouvez pas monter/descendre des objets de <b>différents groupes</b> ou <b>calques</b>." +#: ../src/selection-chemistry.cpp:907 ../src/selection-chemistry.cpp:963 +#: ../src/selection-chemistry.cpp:991 ../src/selection-chemistry.cpp:1052 +msgid "" +"You cannot raise/lower objects from <b>different groups</b> or <b>layers</b>." +msgstr "" +"Vous ne pouvez pas monter/descendre des objets de <b>différents groupes</b> " +"ou <b>calques</b>." #. TRANSLATORS: "Raise" means "to raise an object" in the undo history #: ../src/selection-chemistry.cpp:947 @@ -11856,1281 +11764,1368 @@ msgctxt "Undo action" msgid "Raise" msgstr "Monter" -#: ../src/selection-chemistry.cpp:959 +#: ../src/selection-chemistry.cpp:955 msgid "Select <b>object(s)</b> to raise to top." msgstr "Sélectionner des <b>objets</b> à monter au premier plan." -#: ../src/selection-chemistry.cpp:982 +#: ../src/selection-chemistry.cpp:978 msgid "Raise to top" msgstr "Monter au premier plan" -#: ../src/selection-chemistry.cpp:994 +#: ../src/selection-chemistry.cpp:985 msgid "Select <b>object(s)</b> to lower." msgstr "Sélectionner un ou des <b>objet(s)</b> à descendre." -#: ../src/selection-chemistry.cpp:1044 +#. TRANSLATORS: "Lower" means "to lower an object" in the undo history +#: ../src/selection-chemistry.cpp:1036 +#, fuzzy +msgctxt "Undo action" msgid "Lower" msgstr "Descendre" -#: ../src/selection-chemistry.cpp:1056 +#: ../src/selection-chemistry.cpp:1044 msgid "Select <b>object(s)</b> to lower to bottom." msgstr "Sélectionner un ou des <b>objet(s)</b> à descendre à l'arrière-plan." -#: ../src/selection-chemistry.cpp:1091 +#: ../src/selection-chemistry.cpp:1079 msgid "Lower to bottom" msgstr "Descendre à l'arrière-plan" -#: ../src/selection-chemistry.cpp:1098 +#: ../src/selection-chemistry.cpp:1086 msgid "Nothing to undo." msgstr "Rien à défaire." -#: ../src/selection-chemistry.cpp:1106 +#: ../src/selection-chemistry.cpp:1094 msgid "Nothing to redo." msgstr "Rien à refaire." -#: ../src/selection-chemistry.cpp:1167 +#: ../src/selection-chemistry.cpp:1161 msgid "Paste" msgstr "Coller" -#: ../src/selection-chemistry.cpp:1175 +#: ../src/selection-chemistry.cpp:1169 msgid "Paste style" msgstr "Coller le style" -#: ../src/selection-chemistry.cpp:1185 +#: ../src/selection-chemistry.cpp:1179 msgid "Paste live path effect" msgstr "Coller l'effet de chemin en direct" -#: ../src/selection-chemistry.cpp:1206 +#: ../src/selection-chemistry.cpp:1201 msgid "Select <b>object(s)</b> to remove live path effects from." -msgstr "Sélectionner un ou des <b>objet(s)</b> sur lesquels supprimer des effets de chemin." +msgstr "" +"Sélectionner un ou des <b>objet(s)</b> sur lesquels supprimer des effets de " +"chemin." -#: ../src/selection-chemistry.cpp:1218 +#: ../src/selection-chemistry.cpp:1213 msgid "Remove live path effect" msgstr "Supprimer l'effet de chemin en direct" -#: ../src/selection-chemistry.cpp:1229 +#: ../src/selection-chemistry.cpp:1224 msgid "Select <b>object(s)</b> to remove filters from." msgstr "Sélectionner les <b>objets</b> pour en retirer les filtres." -#: ../src/selection-chemistry.cpp:1239 -#: ../src/ui/dialog/filter-effects-dialog.cpp:1448 +#: ../src/selection-chemistry.cpp:1234 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1462 msgid "Remove filter" msgstr "Supprimer le filtre" -#: ../src/selection-chemistry.cpp:1248 +#: ../src/selection-chemistry.cpp:1243 msgid "Paste size" msgstr "Coller les dimensions" -#: ../src/selection-chemistry.cpp:1257 +#: ../src/selection-chemistry.cpp:1252 msgid "Paste size separately" msgstr "Coller les dimensions séparément" -#: ../src/selection-chemistry.cpp:1267 +#: ../src/selection-chemistry.cpp:1262 msgid "Select <b>object(s)</b> to move to the layer above." msgstr "Sélectionner un ou des <b>objet(s)</b> à déplacer au calque du dessus." -#: ../src/selection-chemistry.cpp:1293 +#: ../src/selection-chemistry.cpp:1288 msgid "Raise to next layer" msgstr "Monter au calque suivant" -#: ../src/selection-chemistry.cpp:1300 +#: ../src/selection-chemistry.cpp:1295 msgid "No more layers above." msgstr "Plus de calque au-dessus." -#: ../src/selection-chemistry.cpp:1312 +#: ../src/selection-chemistry.cpp:1307 msgid "Select <b>object(s)</b> to move to the layer below." -msgstr "Sélectionner un ou des <b>objet(s)</b> à déplacer au calque du dessous." +msgstr "" +"Sélectionner un ou des <b>objet(s)</b> à déplacer au calque du dessous." -#: ../src/selection-chemistry.cpp:1338 +#: ../src/selection-chemistry.cpp:1333 msgid "Lower to previous layer" msgstr "Descendre au calque précédent." -#: ../src/selection-chemistry.cpp:1345 +#: ../src/selection-chemistry.cpp:1340 msgid "No more layers below." msgstr "Plus de calque en-dessous." -#: ../src/selection-chemistry.cpp:1357 +#: ../src/selection-chemistry.cpp:1352 msgid "Select <b>object(s)</b> to move." msgstr "Sélectionner un ou des <b>objet(s)</b> à déplacer." -#: ../src/selection-chemistry.cpp:1374 -#: ../src/verbs.cpp:2518 +#: ../src/selection-chemistry.cpp:1369 ../src/verbs.cpp:2581 msgid "Move selection to layer" msgstr "Déplacer la sélection au calque" -#: ../src/selection-chemistry.cpp:1598 +#: ../src/selection-chemistry.cpp:1593 msgid "Remove transform" msgstr "Retirer les transformations" -#: ../src/selection-chemistry.cpp:1701 +#: ../src/selection-chemistry.cpp:1696 msgid "Rotate 90° CCW" msgstr "Tourner de 90° dans le sens anti-horaire" -#: ../src/selection-chemistry.cpp:1701 +#: ../src/selection-chemistry.cpp:1696 msgid "Rotate 90° CW" msgstr "Tourner de 90° dans le sens horaire" -#: ../src/selection-chemistry.cpp:1722 -#: ../src/seltrans.cpp:485 -#: ../src/ui/dialog/transformation.cpp:892 +#: ../src/selection-chemistry.cpp:1717 ../src/seltrans.cpp:468 +#: ../src/ui/dialog/transformation.cpp:893 msgid "Rotate" msgstr "Tourner" -#: ../src/selection-chemistry.cpp:2101 +#: ../src/selection-chemistry.cpp:2096 msgid "Rotate by pixels" msgstr "Tourner par pixels" -#: ../src/selection-chemistry.cpp:2131 -#: ../src/seltrans.cpp:482 -#: ../src/ui/dialog/transformation.cpp:867 +#: ../src/selection-chemistry.cpp:2126 ../src/seltrans.cpp:465 +#: ../src/ui/dialog/transformation.cpp:868 #: ../share/extensions/interp_att_g.inx.h:12 msgid "Scale" msgstr "Échelle" -#: ../src/selection-chemistry.cpp:2156 +#: ../src/selection-chemistry.cpp:2151 msgid "Scale by whole factor" msgstr "Redimensionner d'un facteur entier" -#: ../src/selection-chemistry.cpp:2171 +#: ../src/selection-chemistry.cpp:2166 msgid "Move vertically" msgstr "Déplacer verticalement" -#: ../src/selection-chemistry.cpp:2174 +#: ../src/selection-chemistry.cpp:2169 msgid "Move horizontally" msgstr "Déplacer horizontalement" -#: ../src/selection-chemistry.cpp:2177 -#: ../src/selection-chemistry.cpp:2203 -#: ../src/seltrans.cpp:479 -#: ../src/ui/dialog/transformation.cpp:806 +#: ../src/selection-chemistry.cpp:2172 ../src/selection-chemistry.cpp:2198 +#: ../src/seltrans.cpp:462 ../src/ui/dialog/transformation.cpp:807 msgid "Move" msgstr "Déplacer" -#: ../src/selection-chemistry.cpp:2197 +#: ../src/selection-chemistry.cpp:2192 msgid "Move vertically by pixels" msgstr "Déplacer verticalement par pixels" -#: ../src/selection-chemistry.cpp:2200 +#: ../src/selection-chemistry.cpp:2195 msgid "Move horizontally by pixels" msgstr "Déplacer horizontalement par pixels" -#: ../src/selection-chemistry.cpp:2332 +#: ../src/selection-chemistry.cpp:2327 msgid "The selection has no applied path effect." msgstr "Il n'y a pas d'effet de chemin appliqué sur cette sélection." -#: ../src/selection-chemistry.cpp:2535 +#: ../src/selection-chemistry.cpp:2496 ../src/ui/dialog/clonetiler.cpp:2218 +msgid "Select an <b>object</b> to clone." +msgstr "Sélectionner un <b>objet</b> à cloner." + +#: ../src/selection-chemistry.cpp:2532 msgctxt "Action" msgid "Clone" msgstr "Cloner" -#: ../src/selection-chemistry.cpp:2551 +#: ../src/selection-chemistry.cpp:2548 msgid "Select <b>clones</b> to relink." msgstr "Sélectionner les <b>clones</b> à relier." -#: ../src/selection-chemistry.cpp:2558 +#: ../src/selection-chemistry.cpp:2555 msgid "Copy an <b>object</b> to clipboard to relink clones to." msgstr "Copier un <b>objet</b> dans le presse-papier pour y relier les clones." -#: ../src/selection-chemistry.cpp:2582 +#: ../src/selection-chemistry.cpp:2579 msgid "<b>No clones to relink</b> in the selection." msgstr "<b>Aucun clone à relier</b> dans la sélection." -#: ../src/selection-chemistry.cpp:2585 +#: ../src/selection-chemistry.cpp:2582 msgid "Relink clone" msgstr "Relier le clone" -#: ../src/selection-chemistry.cpp:2599 +#: ../src/selection-chemistry.cpp:2596 msgid "Select <b>clones</b> to unlink." msgstr "Sélectionner les <b>clones</b> à délier." -#: ../src/selection-chemistry.cpp:2653 +#: ../src/selection-chemistry.cpp:2650 msgid "<b>No clones to unlink</b> in the selection." msgstr "<b>Aucun clone à délier</b> dans la sélection." -#: ../src/selection-chemistry.cpp:2657 +#: ../src/selection-chemistry.cpp:2654 msgid "Unlink clone" msgstr "Délier le clone" -#: ../src/selection-chemistry.cpp:2670 -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 "Sélectionner un <b>clone</b> pour sélectionner son original. Sélectionner un <b>offset lié</b> pour sélectionner sa source. Sélectionner un <b>texte suivant un chemin</b> pour sélectionner son chemin. Sélectionner un <b>texte encadré</b> pour sélectionner son cadre." +#: ../src/selection-chemistry.cpp:2667 +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 "" +"Sélectionner un <b>clone</b> pour sélectionner son original. Sélectionner un " +"<b>offset lié</b> pour sélectionner sa source. Sélectionner un <b>texte " +"suivant un chemin</b> pour sélectionner son chemin. Sélectionner un <b>texte " +"encadré</b> pour sélectionner son cadre." -#: ../src/selection-chemistry.cpp:2703 -msgid "<b>Cannot find</b> the object to select (orphaned clone, offset, textpath, flowed text?)" -msgstr "<b>Impossible de trouver</b> l'objet à sélectionner (clone orphelin, offset, chemin de texte, texte encadré ?)" +#: ../src/selection-chemistry.cpp:2700 +msgid "" +"<b>Cannot find</b> the object to select (orphaned clone, offset, textpath, " +"flowed text?)" +msgstr "" +"<b>Impossible de trouver</b> l'objet à sélectionner (clone orphelin, offset, " +"chemin de texte, texte encadré ?)" -#: ../src/selection-chemistry.cpp:2709 -msgid "The object you're trying to select is <b>not visible</b> (it is in <defs>)" -msgstr "L'objet que vous essayez de sélectionner n'est <b>pas visible</b> (il est dans <defs>)" +#: ../src/selection-chemistry.cpp:2706 +msgid "" +"The object you're trying to select is <b>not visible</b> (it is in <" +"defs>)" +msgstr "" +"L'objet que vous essayez de sélectionner n'est <b>pas visible</b> (il est " +"dans <defs>)" -#: ../src/selection-chemistry.cpp:2754 +#: ../src/selection-chemistry.cpp:2751 msgid "Select <b>one</b> path to clone." msgstr "Sélectionner <b>un</b> chemin à cloner." -#: ../src/selection-chemistry.cpp:2758 +#: ../src/selection-chemistry.cpp:2755 msgid "Select one <b>path</b> to clone." msgstr "Sélectionner un <b>chemin</b> à cloner." -#: ../src/selection-chemistry.cpp:2813 +#: ../src/selection-chemistry.cpp:2810 msgid "Select <b>object(s)</b> to convert to marker." msgstr "Sélectionner un ou des <b>objet(s)</b> à convertir en marqueur." -#: ../src/selection-chemistry.cpp:2881 +#: ../src/selection-chemistry.cpp:2878 msgid "Objects to marker" msgstr "Objets en marqueur" -#: ../src/selection-chemistry.cpp:2909 +#: ../src/selection-chemistry.cpp:2906 msgid "Select <b>object(s)</b> to convert to guides." msgstr "Sélectionner un ou des <b>objet(s)</b> à convertir en guides." -#: ../src/selection-chemistry.cpp:2921 +#: ../src/selection-chemistry.cpp:2918 msgid "Objects to guides" msgstr "Objets en guides" -#: ../src/selection-chemistry.cpp:2940 +#: ../src/selection-chemistry.cpp:2937 #, fuzzy msgid "Select <b>groups</b> to convert to symbols." msgstr "Sélectionner un <b>groupe</b> à convertir en symbole." -#: ../src/selection-chemistry.cpp:2960 +#: ../src/selection-chemistry.cpp:2957 #, fuzzy msgid "No <b>groups</b> converted to symbols." msgstr "Sélectionner un <b>groupe</b> à convertir en symbole." #. Group just disappears, nothing to select. -#: ../src/selection-chemistry.cpp:2967 +#: ../src/selection-chemistry.cpp:2964 msgid "Group to symbol" msgstr "Groupe en symbole" -#: ../src/selection-chemistry.cpp:3031 +#: ../src/selection-chemistry.cpp:3030 msgid "Select a <b>symbol</b> to extract objects from." msgstr "Sélectionner un <b>symbole</b> pour en extraire des objets." -#: ../src/selection-chemistry.cpp:3040 +#: ../src/selection-chemistry.cpp:3039 msgid "Select only one <b>symbol</b> to convert to group." msgstr "Sélectionner un seul <b>symbole(s)</b> à convertir en groupe." -#: ../src/selection-chemistry.cpp:3081 +#: ../src/selection-chemistry.cpp:3080 msgid "Group from symbol" msgstr "Groupe à partir d'un symbole" -#: ../src/selection-chemistry.cpp:3098 +#: ../src/selection-chemistry.cpp:3097 msgid "Select <b>object(s)</b> to convert to pattern." -msgstr "Sélectionner un ou des <b>objet(s)</b> à convertir en motif de remplissage." +msgstr "" +"Sélectionner un ou des <b>objet(s)</b> à convertir en motif de remplissage." -#: ../src/selection-chemistry.cpp:3186 +#: ../src/selection-chemistry.cpp:3187 msgid "Objects to pattern" msgstr "Objets en motif" -#: ../src/selection-chemistry.cpp:3202 +#: ../src/selection-chemistry.cpp:3203 msgid "Select an <b>object with pattern fill</b> to extract objects from." -msgstr "Sélectionner un <b>objet rempli avec un motif</b> pour en extraire des objets." +msgstr "" +"Sélectionner un <b>objet rempli avec un motif</b> pour en extraire des " +"objets." -#: ../src/selection-chemistry.cpp:3255 +#: ../src/selection-chemistry.cpp:3258 msgid "<b>No pattern fills</b> in the selection." msgstr "<b>Aucun motif de remplissage</b> dans la sélection." -#: ../src/selection-chemistry.cpp:3258 +#: ../src/selection-chemistry.cpp:3261 msgid "Pattern to objects" msgstr "Motif en objets" -#: ../src/selection-chemistry.cpp:3349 +#: ../src/selection-chemistry.cpp:3352 msgid "Select <b>object(s)</b> to make a bitmap copy." msgstr "Sélectionner un ou des <b>objet(s)</b> pour en faire une copie bitmap." -#: ../src/selection-chemistry.cpp:3353 +#: ../src/selection-chemistry.cpp:3356 msgid "Rendering bitmap..." msgstr "Génération du bitmap..." -#: ../src/selection-chemistry.cpp:3530 +#: ../src/selection-chemistry.cpp:3535 msgid "Create bitmap" msgstr "Créer un bitmap" -#: ../src/selection-chemistry.cpp:3562 +#: ../src/selection-chemistry.cpp:3567 msgid "Select <b>object(s)</b> to create clippath or mask from." -msgstr "Sélectionner un ou des <b>objet(s)</b> à partir desquels un chemin de découpe ou un masque sera créé." +msgstr "" +"Sélectionner un ou des <b>objet(s)</b> à partir desquels un chemin de " +"découpe ou un masque sera créé." -#: ../src/selection-chemistry.cpp:3565 +#: ../src/selection-chemistry.cpp:3570 msgid "Select mask object and <b>object(s)</b> to apply clippath or mask to." -msgstr "Sélectionner un objet masque et un ou des <b>objet(s)</b> auxquels appliquer ce chemin de découpe ou masque." +msgstr "" +"Sélectionner un objet masque et un ou des <b>objet(s)</b> auxquels appliquer " +"ce chemin de découpe ou masque." -#: ../src/selection-chemistry.cpp:3746 +#: ../src/selection-chemistry.cpp:3753 msgid "Set clipping path" msgstr "Définir un chemin de découpe" -#: ../src/selection-chemistry.cpp:3748 +#: ../src/selection-chemistry.cpp:3755 msgid "Set mask" msgstr "Définir un masque" -#: ../src/selection-chemistry.cpp:3763 +#: ../src/selection-chemistry.cpp:3770 msgid "Select <b>object(s)</b> to remove clippath or mask from." -msgstr "Sélectionner un ou des <b>objet(s)</b> pour en retirer le chemin de découpe ou le masque." +msgstr "" +"Sélectionner un ou des <b>objet(s)</b> pour en retirer le chemin de découpe " +"ou le masque." -#: ../src/selection-chemistry.cpp:3874 +#: ../src/selection-chemistry.cpp:3881 msgid "Release clipping path" msgstr "Retirer le chemin de découpe" -#: ../src/selection-chemistry.cpp:3876 +#: ../src/selection-chemistry.cpp:3883 msgid "Release mask" msgstr "Retirer le masque" -#: ../src/selection-chemistry.cpp:3895 +#: ../src/selection-chemistry.cpp:3902 msgid "Select <b>object(s)</b> to fit canvas to." -msgstr "Sélectionner un ou des <b>objet(s)</b> pour y ajuster la taille de la zone de travail." +msgstr "" +"Sélectionner un ou des <b>objet(s)</b> pour y ajuster la taille de la zone " +"de travail." #. Fit Page -#: ../src/selection-chemistry.cpp:3915 -#: ../src/verbs.cpp:2844 +#: ../src/selection-chemistry.cpp:3922 ../src/verbs.cpp:2907 msgid "Fit Page to Selection" msgstr "Ajuster la page à la sélection" -#: ../src/selection-chemistry.cpp:3944 -#: ../src/verbs.cpp:2846 +#: ../src/selection-chemistry.cpp:3951 ../src/verbs.cpp:2909 msgid "Fit Page to Drawing" msgstr "Ajuster la page au dessin" -#: ../src/selection-chemistry.cpp:3965 -#: ../src/verbs.cpp:2848 +#: ../src/selection-chemistry.cpp:3972 ../src/verbs.cpp:2911 msgid "Fit Page to Selection or Drawing" msgstr "Ajuster la page à la sélection ou au dessin" -#. TRANSLATORS: "Link" means internet link (anchor) -#: ../src/selection-describer.cpp:46 -msgctxt "Web" -msgid "Link" -msgstr "Lien" - -#: ../src/selection-describer.cpp:48 -msgid "Circle" -msgstr "Cercle" - -#. Ellipse -#: ../src/selection-describer.cpp:50 -#: ../src/selection-describer.cpp:77 -#: ../src/ui/dialog/inkscape-preferences.cpp:403 -#: ../src/widgets/pencil-toolbar.cpp:192 -msgid "Ellipse" -msgstr "Ellipse" - -#: ../src/selection-describer.cpp:52 -msgid "Flowed text" -msgstr "Texte encadré" - -#: ../src/selection-describer.cpp:58 -msgid "Line" -msgstr "Ligne" - -#: ../src/selection-describer.cpp:60 -msgid "Path" -msgstr "Chemin" - -#: ../src/selection-describer.cpp:62 -#: ../src/widgets/star-toolbar.cpp:474 -msgid "Polygon" -msgstr "Polygone" - -#: ../src/selection-describer.cpp:64 -msgid "Polyline" -msgstr "Polyligne" - -#. Rectangle -#: ../src/selection-describer.cpp:66 -#: ../src/ui/dialog/inkscape-preferences.cpp:393 -msgid "Rectangle" -msgstr "Rectangle" - -#. 3D box -#: ../src/selection-describer.cpp:68 -#: ../src/ui/dialog/inkscape-preferences.cpp:398 -msgid "3D Box" -msgstr "Boîte 3D" - -#: ../src/selection-describer.cpp:70 -msgctxt "Object" -msgid "Text" -msgstr "Texte" - -#: ../src/selection-describer.cpp:73 -msgctxt "Object" -msgid "Symbol" -msgstr "Symbole" - -#. TRANSLATORS: "Clone" is a noun, type of object -#: ../src/selection-describer.cpp:75 -msgctxt "Object" -msgid "Clone" -msgstr "Clone" - -#: ../src/selection-describer.cpp:79 -#: ../share/extensions/gcodetools_lathe.inx.h:9 -msgid "Offset path" -msgstr "Chemin offset" - -#. Spiral -#: ../src/selection-describer.cpp:81 -#: ../src/ui/dialog/inkscape-preferences.cpp:411 -#: ../share/extensions/gcodetools_area.inx.h:11 -msgid "Spiral" -msgstr "Spirale" - -#. Star -#: ../src/selection-describer.cpp:83 -#: ../src/ui/dialog/inkscape-preferences.cpp:407 -#: ../src/widgets/star-toolbar.cpp:481 -msgid "Star" -msgstr "Étoile" - -#: ../src/selection-describer.cpp:153 +#: ../src/selection-describer.cpp:113 msgid "root" msgstr "racine" -#: ../src/selection-describer.cpp:155 -#: ../src/widgets/ege-paint-def.cpp:67 +#: ../src/selection-describer.cpp:115 ../src/widgets/ege-paint-def.cpp:67 #: ../src/widgets/ege-paint-def.cpp:91 msgid "none" msgstr "aucune" -#: ../src/selection-describer.cpp:167 +#: ../src/selection-describer.cpp:127 #, c-format msgid "layer <b>%s</b>" msgstr "calque <b>%s</b>" -#: ../src/selection-describer.cpp:169 +#: ../src/selection-describer.cpp:129 #, c-format msgid "layer <b><i>%s</i></b>" msgstr "calque <b><i>%s</i></b>" -#: ../src/selection-describer.cpp:178 +#: ../src/selection-describer.cpp:140 #, c-format msgid "<i>%s</i>" msgstr "<i>%s</i>" -#: ../src/selection-describer.cpp:187 +#: ../src/selection-describer.cpp:150 #, c-format msgid " in %s" msgstr " dans %s" -#: ../src/selection-describer.cpp:189 -#, fuzzy, c-format +#: ../src/selection-describer.cpp:152 +#, fuzzy msgid " hidden in definitions" msgstr "Interdire le partage des définitions de dégradé" -#: ../src/selection-describer.cpp:191 +#: ../src/selection-describer.cpp:154 #, c-format msgid " in group %s (%s)" msgstr " dans le groupe %s (%s)" -#: ../src/selection-describer.cpp:193 -#, c-format -msgid " in <b>%i</b> parents (%s)" +#: ../src/selection-describer.cpp:156 +#, fuzzy, c-format +msgid " in unnamed group (%s)" +msgstr " dans le groupe %s (%s)" + +#: ../src/selection-describer.cpp:158 +#, fuzzy, c-format +msgid " in <b>%i</b> parent (%s)" msgid_plural " in <b>%i</b> parents (%s)" msgstr[0] " dans <b>%i</b> parent (%s)" msgstr[1] " dans <b>%i</b> parents (%s)" -#: ../src/selection-describer.cpp:196 -#, c-format -msgid " in <b>%i</b> layers" +#: ../src/selection-describer.cpp:161 +#, fuzzy, c-format +msgid " in <b>%i</b> layer" msgid_plural " in <b>%i</b> layers" msgstr[0] "dans <b>%i</b> calque" msgstr[1] "dans <b>%i</b> calques" -#: ../src/selection-describer.cpp:206 +#: ../src/selection-describer.cpp:172 msgid "Convert symbol to group to edit" msgstr "Convertir un symbole en groupe à éditer" -#: ../src/selection-describer.cpp:210 +#: ../src/selection-describer.cpp:176 #, fuzzy msgid "Remove from symbols tray to edit symbol" msgstr "Convertir un symbole en groupe à éditer" -#: ../src/selection-describer.cpp:214 +#: ../src/selection-describer.cpp:180 msgid "Use <b>Shift+D</b> to look up original" msgstr "Utilisez <b>Maj+D</b> pour sélectionner l'original" -#: ../src/selection-describer.cpp:218 +#: ../src/selection-describer.cpp:184 msgid "Use <b>Shift+D</b> to look up path" msgstr "Utilisez <b>Maj+D</b> pour sélectionner le chemin" -#: ../src/selection-describer.cpp:222 +#: ../src/selection-describer.cpp:188 msgid "Use <b>Shift+D</b> to look up frame" msgstr "Utilisez <b>Maj+D</b> pour sélectionner le cadre" -#. this is only used with 2 or more objects -#: ../src/selection-describer.cpp:237 -#: ../src/spray-context.cpp:203 -#: ../src/tweak-context.cpp:189 -#, c-format -msgid "<b>%i</b> object selected" -msgid_plural "<b>%i</b> objects selected" -msgstr[0] "<b>%i</b> objet sélectionné" -msgstr[1] "<b>%i</b> objets sélectionnés" - -#. this is only used with 2 or more objects -#: ../src/selection-describer.cpp:242 -#, c-format -msgid "<b>%i</b> object of type <b>%s</b>" -msgid_plural "<b>%i</b> objects of type <b>%s</b>" -msgstr[0] "<b>%i</b> objet de type <b>%s</b>" -msgstr[1] "<b>%i</b> objets de type <b>%s</b>" - -#. this is only used with 2 or more objects -#: ../src/selection-describer.cpp:247 -#, c-format -msgid "<b>%i</b> object of types <b>%s</b>, <b>%s</b>" -msgid_plural "<b>%i</b> objects of types <b>%s</b>, <b>%s</b>" -msgstr[0] "<b>%i</b> objets de types <b>%s</b>, <b>%s</b>" -msgstr[1] "<b>%i</b> objets de types <b>%s</b>, <b>%s</b>" - -#. this is only used with 2 or more objects -#: ../src/selection-describer.cpp:252 -#, c-format -msgid "<b>%i</b> object of types <b>%s</b>, <b>%s</b>, <b>%s</b>" -msgid_plural "<b>%i</b> objects of types <b>%s</b>, <b>%s</b>, <b>%s</b>" -msgstr[0] "<b>%i</b> objet de types <b>%s</b>, <b>%s</b>, <b>%s</b>" -msgstr[1] "<b>%i</b> objets de types <b>%s</b>, <b>%s</b>, <b>%s</b>" - -#. this is only used with 2 or more objects -#: ../src/selection-describer.cpp:257 -#, c-format -msgid "<b>%i</b> object of <b>%i</b> types" -msgid_plural "<b>%i</b> objects of <b>%i</b> types" -msgstr[0] "<b>%i</b> objet de <b>%i</b> types" -msgstr[1] "<b>%i</b> objets de <b>%i</b> types" - -#: ../src/selection-describer.cpp:267 +#: ../src/selection-describer.cpp:207 #, c-format msgid "; <i>%d filtered object</i> " msgid_plural "; <i>%d filtered objects</i> " msgstr[0] "; <i>%d objet filtré</i>" msgstr[1] "; <i>%d objets filtrés</i>" -#: ../src/seltrans.cpp:488 -#: ../src/ui/dialog/transformation.cpp:950 +#: ../src/seltrans.cpp:471 ../src/ui/dialog/transformation.cpp:981 msgid "Skew" msgstr "Incliner" -#: ../src/seltrans.cpp:500 +#: ../src/seltrans.cpp:483 msgid "Set center" msgstr "Définir le centre" -#: ../src/seltrans.cpp:575 +#: ../src/seltrans.cpp:558 msgid "Stamp" msgstr "Tamponner" -#: ../src/seltrans.cpp:604 -msgid "<b>Squeeze or stretch</b> selection; with <b>Ctrl</b> to scale uniformly; with <b>Shift</b> to scale around rotation center" -msgstr "<b>Agrandir ou rétrécir</b> la sélection ; <b>Ctrl</b> pour redimensionner uniformément; <b>Maj</b> pour redimensionner autour du centre de rotation" - -#: ../src/seltrans.cpp:605 -msgid "<b>Scale</b> selection; with <b>Ctrl</b> to scale uniformly; with <b>Shift</b> to scale around rotation center" -msgstr "<b>Redimensionner</b> la sélection ; <b>Ctrl</b> pour redimensionner uniformément autour du centre de rotation" - -#: ../src/seltrans.cpp:609 -msgid "<b>Skew</b> selection; with <b>Ctrl</b> to snap angle; with <b>Shift</b> to skew around the opposite side" -msgstr "<b>Incliner</b> la sélection ; <b>Ctrl</b> pour incliner par incréments ; <b>Maj</b> pour incliner autour du coin opposé" - -#: ../src/seltrans.cpp:610 -msgid "<b>Rotate</b> selection; with <b>Ctrl</b> to snap angle; with <b>Shift</b> to rotate around the opposite corner" -msgstr "<b>Tourner</b> la sélection ; <b>Ctrl</b> pour tourner par incréments ; <b>Maj</b> pour tourner autour du coin opposé" - -#: ../src/seltrans.cpp:623 -msgid "<b>Center</b> of rotation and skewing: drag to reposition; scaling with Shift also uses this center" -msgstr "<b>Centre</b> de rotation/inclinaison : cliquer-déplacer pour le déplacer; redimensionner avec <b>Maj</b> utilise aussi ce centre" - -#: ../src/seltrans.cpp:773 +#: ../src/seltrans.cpp:711 msgid "Reset center" msgstr "Rétablir le centre" -#: ../src/seltrans.cpp:1017 -#: ../src/seltrans.cpp:1114 +#: ../src/seltrans.cpp:938 ../src/seltrans.cpp:1035 #, c-format msgid "<b>Scale</b>: %0.2f%% x %0.2f%%; with <b>Ctrl</b> to lock ratio" -msgstr "<b>Redimensionnement</b> : %0.2f%% x %0.2f%% ; <b>Ctrl</b> pour préserver le ratio" +msgstr "" +"<b>Redimensionnement</b> : %0.2f%% x %0.2f%% ; <b>Ctrl</b> pour préserver le " +"ratio" #. TRANSLATORS: don't modify the first ";" #. (it will NOT be displayed as ";" - only the second one will be) -#: ../src/seltrans.cpp:1228 +#: ../src/seltrans.cpp:1167 #, c-format msgid "<b>Skew</b>: %0.2f°; with <b>Ctrl</b> to snap angle" -msgstr "<b>Inclinaison</b> : %0.2f°Â ; <b>Ctrl</b> pour incliner par incréments" +msgstr "" +"<b>Inclinaison</b> : %0.2f°Â ; <b>Ctrl</b> pour incliner par incréments" #. TRANSLATORS: don't modify the first ";" #. (it will NOT be displayed as ";" - only the second one will be) -#: ../src/seltrans.cpp:1303 +#: ../src/seltrans.cpp:1242 #, c-format msgid "<b>Rotate</b>: %0.2f°; with <b>Ctrl</b> to snap angle" -msgstr "<b>Rotation</b> : %0.2f°Â ; <b>Ctrl</b> pour tourner par incréments" +msgstr "" +"<b>Rotation</b> : %0.2f°Â ; <b>Ctrl</b> pour tourner par incréments" -#: ../src/seltrans.cpp:1338 +#: ../src/seltrans.cpp:1279 #, c-format msgid "Move <b>center</b> to %s, %s" msgstr "Déplacer le <b>centre</b> en %s, %s" -#: ../src/seltrans.cpp:1514 +#: ../src/seltrans.cpp:1433 #, c-format -msgid "<b>Move</b> by %s, %s; with <b>Ctrl</b> to restrict to horizontal/vertical; with <b>Shift</b> to disable snapping" -msgstr "<b>Déplacer</b> de %s, %s ; <b>Ctrl</b> restreindre à l'horizontale/verticale; <b>Maj</b> désactiver le magnétisme" +msgid "" +"<b>Move</b> by %s, %s; with <b>Ctrl</b> to restrict to horizontal/vertical; " +"with <b>Shift</b> to disable snapping" +msgstr "" +"<b>Déplacer</b> de %s, %s ; <b>Ctrl</b> restreindre à l'horizontale/" +"verticale; <b>Maj</b> désactiver le magnétisme" + +#: ../src/seltrans-handles.cpp:9 +msgid "" +"<b>Squeeze or stretch</b> selection; with <b>Ctrl</b> to scale uniformly; " +"with <b>Shift</b> to scale around rotation center" +msgstr "" +"<b>Agrandir ou rétrécir</b> la sélection ; <b>Ctrl</b> pour redimensionner " +"uniformément; <b>Maj</b> pour redimensionner autour du centre de rotation" + +#: ../src/seltrans-handles.cpp:10 +msgid "" +"<b>Scale</b> selection; with <b>Ctrl</b> to scale uniformly; with <b>Shift</" +"b> to scale around rotation center" +msgstr "" +"<b>Redimensionner</b> la sélection ; <b>Ctrl</b> pour redimensionner " +"uniformément autour du centre de rotation" + +#: ../src/seltrans-handles.cpp:11 +msgid "" +"<b>Skew</b> selection; with <b>Ctrl</b> to snap angle; with <b>Shift</b> to " +"skew around the opposite side" +msgstr "" +"<b>Incliner</b> la sélection ; <b>Ctrl</b> pour incliner par incréments ; " +"<b>Maj</b> pour incliner autour du coin opposé" -#: ../src/shortcuts.cpp:225 +#: ../src/seltrans-handles.cpp:12 +msgid "" +"<b>Rotate</b> selection; with <b>Ctrl</b> to snap angle; with <b>Shift</b> " +"to rotate around the opposite corner" +msgstr "" +"<b>Tourner</b> la sélection ; <b>Ctrl</b> pour tourner par incréments ; " +"<b>Maj</b> pour tourner autour du coin opposé" + +#: ../src/seltrans-handles.cpp:13 +msgid "" +"<b>Center</b> of rotation and skewing: drag to reposition; scaling with " +"Shift also uses this center" +msgstr "" +"<b>Centre</b> de rotation/inclinaison : cliquer-déplacer pour le déplacer; " +"redimensionner avec <b>Maj</b> utilise aussi ce centre" + +#: ../src/shortcuts.cpp:226 #, c-format msgid "Keyboard directory (%s) is unavailable." msgstr "Le dossier des raccourcis (%s) est indisponible." -#: ../src/shortcuts.cpp:369 +#: ../src/shortcuts.cpp:337 ../src/ui/dialog/export.cpp:1295 +#: ../src/ui/dialog/export.cpp:1329 +msgid "Select a filename for exporting" +msgstr "Sélectionner un nom de fichier pour exporter" + +#: ../src/shortcuts.cpp:370 msgid "Select a file to import" msgstr "Sélectionner un fichier à importer" -#: ../src/sp-anchor.cpp:151 +#: ../src/sp-anchor.cpp:125 #, c-format -msgid "<b>Link</b> to %s" -msgstr "<b>Lien</b> vers %s" +msgid "to %s" +msgstr "" -#: ../src/sp-anchor.cpp:155 -msgid "<b>Link</b> without URI" +#: ../src/sp-anchor.cpp:129 +#, fuzzy +msgid "without URI" msgstr "<b>Lien</b> sans URI" -#: ../src/sp-ellipse.cpp:452 -#: ../src/sp-ellipse.cpp:775 -msgid "<b>Ellipse</b>" -msgstr "<b>Ellipse</b>" +#: ../src/sp-ellipse.cpp:374 +#, fuzzy +msgid "Segment" +msgstr "Segment de ligne" -#: ../src/sp-ellipse.cpp:566 -msgid "<b>Circle</b>" -msgstr "<b>Cercle</b>" +#: ../src/sp-ellipse.cpp:376 +#, fuzzy +msgid "Arc" +msgstr "Arabe" -#: ../src/sp-ellipse.cpp:770 -msgid "<b>Segment</b>" -msgstr "<b>Camembert</b>" +#. Ellipse +#: ../src/sp-ellipse.cpp:379 ../src/sp-ellipse.cpp:386 +#: ../src/ui/dialog/inkscape-preferences.cpp:403 +#: ../src/widgets/pencil-toolbar.cpp:187 +msgid "Ellipse" +msgstr "Ellipse" -#: ../src/sp-ellipse.cpp:772 -msgid "<b>Arc</b>" -msgstr "<b>Arc</b>" +#: ../src/sp-ellipse.cpp:383 +msgid "Circle" +msgstr "Cercle" #. TRANSLATORS: "Flow region" is an area where text is allowed to flow -#: ../src/sp-flowregion.cpp:232 -#, c-format -msgid "Flow region" +#: ../src/sp-flowregion.cpp:193 +#, fuzzy +msgid "Flow Region" msgstr "Région d'encadrement" #. TRANSLATORS: A region "cut out of" a flow region; text is not allowed to flow inside the #. * flow excluded region. flowRegionExclude in SVG 1.2: see #. * http://www.w3.org/TR/2004/WD-SVG12-20041027/flow.html#flowRegion-elem and #. * http://www.w3.org/TR/2004/WD-SVG12-20041027/flow.html#flowRegionExclude-elem. -#: ../src/sp-flowregion.cpp:420 -#, c-format -msgid "Flow excluded region" +#: ../src/sp-flowregion.cpp:343 +#, fuzzy +msgid "Flow Excluded Region" msgstr "Région d'encadrement exclue" -#: ../src/sp-guide.cpp:290 +#: ../src/sp-flowtext.cpp:289 +#, fuzzy +msgid "Flowed Text" +msgstr "Texte encadré" + +#: ../src/sp-flowtext.cpp:291 +#, fuzzy +msgid "Linked Flowed Text" +msgstr "Texte encadré" + +#: ../src/sp-flowtext.cpp:298 ../src/sp-text.cpp:357 +#: ../src/text-context.cpp:1597 +msgid " [truncated]" +msgstr " [tronqué]" + +#: ../src/sp-flowtext.cpp:300 +#, c-format +msgid "(%d character%s)" +msgid_plural "(%d characters%s)" +msgstr[0] "(%d caractère%s)" +msgstr[1] "(%d caractères%s)" + +#: ../src/sp-guide.cpp:301 msgid "Create Guides Around the Page" msgstr "Créer des guides autour de la page" -#: ../src/sp-guide.cpp:302 -#: ../src/verbs.cpp:2415 +#: ../src/sp-guide.cpp:313 ../src/verbs.cpp:2474 msgid "Delete All Guides" msgstr "Supprimer tous les guides" #. Guide has probably been deleted and no longer has an attached namedview. -#: ../src/sp-guide.cpp:462 -#, c-format +#: ../src/sp-guide.cpp:473 msgid "Deleted" msgstr "Supprimé" -#: ../src/sp-guide.cpp:471 -msgid "<b>Shift+drag</b> to rotate, <b>Ctrl+drag</b> to move origin, <b>Del</b> to delete" -msgstr "<b>Maj+déplacer</b> pour pivoter, <b>Ctrl+déplacer</b> pour déplacer l'origine, <b>Del</b> pour supprimer" +#: ../src/sp-guide.cpp:482 +msgid "" +"<b>Shift+drag</b> to rotate, <b>Ctrl+drag</b> to move origin, <b>Del</b> to " +"delete" +msgstr "" +"<b>Maj+déplacer</b> pour pivoter, <b>Ctrl+déplacer</b> pour déplacer " +"l'origine, <b>Del</b> pour supprimer" -#: ../src/sp-guide.cpp:475 +#: ../src/sp-guide.cpp:486 #, c-format msgid "vertical, at %s" msgstr "verticale, à %s" -#: ../src/sp-guide.cpp:478 +#: ../src/sp-guide.cpp:489 #, c-format msgid "horizontal, at %s" msgstr "horizontale, à %s" -#: ../src/sp-guide.cpp:483 +#: ../src/sp-guide.cpp:494 #, c-format msgid "at %d degrees, through (%s,%s)" msgstr "à %d degrés, passe par (%s,%s)" -#: ../src/sp-image.cpp:1068 +#: ../src/sp-image.cpp:624 msgid "embedded" msgstr "embarquée" -#: ../src/sp-image.cpp:1076 -#, c-format -msgid "<b>Image with bad reference</b>: %s" -msgstr "<b>Image avec une mauvaise référence</b> : %s" +#: ../src/sp-image.cpp:632 +#, fuzzy, c-format +msgid "[bad reference]: %s" +msgstr "Préférences des étoiles" -#: ../src/sp-image.cpp:1077 -#, c-format -msgid "<b>Image</b> %d × %d: %s" +#: ../src/sp-image.cpp:633 +#, fuzzy, c-format +msgid "%d × %d: %s" msgstr "<b>Image</b> %d × %d : %s" -#: ../src/sp-item-group.cpp:721 +#: ../src/spiral-context.cpp:263 +msgid "<b>Ctrl</b>: snap angle" +msgstr "<b>Ctrl</b> : pour tourner par incréments" + +#: ../src/spiral-context.cpp:265 +msgid "<b>Alt</b>: lock spiral radius" +msgstr "<b>Alt</b> : verrouiller le rayon de la spirale" + +#: ../src/spiral-context.cpp:404 #, c-format -msgid "<b>Group</b> of <b>%d</b> object" -msgid_plural "<b>Group</b> of <b>%d</b> objects" -msgstr[0] "<b>Groupe</b> de <b>%d</b> objet" -msgstr[1] "<b>Groupe</b> de <b>%d</b> objets" +msgid "" +"<b>Spiral</b>: radius %s, angle %5g°; with <b>Ctrl</b> to snap angle" +msgstr "" +"<b>Spirale</b> : rayon %s, angle %5g°Â ; avec <b>Ctrl</b> pour tourner " +"par incréments" + +#: ../src/spiral-context.cpp:425 +msgid "Create spiral" +msgstr "Créer une spirale" -#: ../src/sp-item.cpp:977 -#: ../src/verbs.cpp:212 +#: ../src/sp-item.cpp:940 ../src/verbs.cpp:213 msgid "Object" msgstr "Objet" -#: ../src/sp-item.cpp:990 +#: ../src/sp-item.cpp:957 #, c-format msgid "%s; <i>clipped</i>" msgstr "%s; <i>découpé</i>" -#: ../src/sp-item.cpp:995 +#: ../src/sp-item.cpp:963 #, c-format msgid "%s; <i>masked</i>" msgstr "%s; <i>masqué</i>" -#: ../src/sp-item.cpp:1003 +#: ../src/sp-item.cpp:973 #, c-format msgid "%s; <i>filtered (%s)</i>" msgstr "%s; <i>filtré (%s)</i>" -#: ../src/sp-item.cpp:1005 +#: ../src/sp-item.cpp:975 #, c-format msgid "%s; <i>filtered</i>" msgstr "%s; <i>filtré</i>" -#: ../src/sp-line.cpp:166 -msgid "<b>Line</b>" -msgstr "<b>Ligne</b>" - -#: ../src/sp-lpe-item.cpp:316 -msgid "An exception occurred during execution of the Path Effect." -msgstr "Exception pendant l'exécution de l'effet de chemin." - -#. TRANSLATORS COMMENT: %s is either "outset" or "inset" depending on sign -#: ../src/sp-offset.cpp:393 -#, c-format -msgid "<b>Linked offset</b>, %s by %f pt" -msgstr "<b>Offset lié</b>, %s de %f pt" - -#: ../src/sp-offset.cpp:394 -#: ../src/sp-offset.cpp:398 -msgid "outset" -msgstr "dilaté" - -#: ../src/sp-offset.cpp:394 -#: ../src/sp-offset.cpp:398 -msgid "inset" -msgstr "contracté" - -#. TRANSLATORS COMMENT: %s is either "outset" or "inset" depending on sign -#: ../src/sp-offset.cpp:397 -#, c-format -msgid "<b>Dynamic offset</b>, %s by %f pt" -msgstr "<b>Offset dynamique</b>, %s de %f pt" - -#: ../src/sp-path.cpp:124 -#, c-format -msgid "<b>Path</b> (%i node, path effect: %s)" -msgid_plural "<b>Path</b> (%i nodes, path effect: %s)" -msgstr[0] "<b>Chemin</b> (%i nÅ“ud, effet de chemin : %s)" -msgstr[1] "<b>Chemin</b> (%i nÅ“uds, effet de chemin : %s)" - -#: ../src/sp-path.cpp:127 -#, c-format -msgid "<b>Path</b> (%i node)" -msgid_plural "<b>Path</b> (%i nodes)" -msgstr[0] "<b>Chemin</b> (%i nÅ“ud)" -msgstr[1] "<b>Chemin</b> (%i nÅ“uds)" - -#: ../src/sp-polygon.cpp:197 -msgid "<b>Polygon</b>" -msgstr "<b>Polygone</b>" - -#: ../src/sp-polyline.cpp:140 -msgid "<b>Polyline</b>" -msgstr "<b>Polyligne</b>" - -#: ../src/sp-rect.cpp:195 -msgid "<b>Rectangle</b>" -msgstr "<b>Rectangle</b>" - -#. TRANSLATORS: since turn count isn't an integer, please adjust the -#. string as needed to deal with an localized plural forms. -#: ../src/sp-spiral.cpp:279 -#, c-format -msgid "<b>Spiral</b> with %3f turns" -msgstr "<b>Spirale</b> à %3f tours" - -#: ../src/sp-star.cpp:275 -#, c-format -msgid "<b>Star</b> with %d vertex" -msgid_plural "<b>Star</b> with %d vertices" -msgstr[0] "<b>Étoile</b> à %d branche" -msgstr[1] "<b>Étoile</b> à %d branches" - -#: ../src/sp-star.cpp:279 -#, c-format -msgid "<b>Polygon</b> with %d vertex" -msgid_plural "<b>Polygon</b> with %d vertices" -msgstr[0] "<b>Polygone</b> à %d sommet" -msgstr[1] "<b>Polygone</b> à %d sommets" - -#. TRANSLATORS: For description of font with no name. -#: ../src/sp-text.cpp:392 -msgid "<no name found>" -msgstr "<aucun nom trouvé>" - -#: ../src/sp-text.cpp:404 -#, c-format -msgid "<b>Text on path</b>%s (%s, %s)" -msgstr "<b>Texte le long d'un chemin</b>%s (%s, %s)" - -#: ../src/sp-text.cpp:405 -#, c-format -msgid "<b>Text</b>%s (%s, %s)" -msgstr "<b>Texte</b>%s (%s, %s)" - -#: ../src/sp-tref.cpp:341 -#, c-format -msgid "<b>Cloned character data</b>%s%s" -msgstr "<b>Données de caractères clonés</b>%s%s" - -#: ../src/sp-tref.cpp:342 -msgid " from " -msgstr " depuis " - -#: ../src/sp-tref.cpp:348 -msgid "<b>Orphaned cloned character data</b>" -msgstr "<b>Données de caractères clonés orphelines</b>" - -#: ../src/sp-tspan.cpp:252 -msgid "<b>Text span</b>" -msgstr "<b>Rectangle de texte</b>" - -#: ../src/sp-use.cpp:303 -#, c-format -msgid "<b>'%s' Symbol</b>" -msgstr "<b>'%s' symbole</b>" - -#. TRANSLATORS: Used for statusbar description for long <use> chains: -#. * "Clone of: Clone of: ... in Layer 1". -#: ../src/sp-use.cpp:311 -msgid "..." -msgstr "..." - -#: ../src/sp-use.cpp:319 -#, c-format -msgid "<b>Clone</b> of: %s" -msgstr "<b>Clone</b> de : %s" - -#: ../src/sp-use.cpp:323 -msgid "<b>Orphaned clone</b>" -msgstr "<b>Clone orphelin</b>" - -#: ../src/spiral-context.cpp:304 -msgid "<b>Ctrl</b>: snap angle" -msgstr "<b>Ctrl</b> : pour tourner par incréments" - -#: ../src/spiral-context.cpp:306 -msgid "<b>Alt</b>: lock spiral radius" -msgstr "<b>Alt</b> : verrouiller le rayon de la spirale" - -#: ../src/spiral-context.cpp:442 -#, c-format -msgid "<b>Spiral</b>: radius %s, angle %5g°; with <b>Ctrl</b> to snap angle" -msgstr "<b>Spirale</b> : rayon %s, angle %5g°Â ; avec <b>Ctrl</b> pour tourner par incréments" +#: ../src/sp-item-group.cpp:337 ../src/sp-switch.cpp:81 +#, fuzzy, c-format +msgid "of <b>%d</b> object" +msgstr "<b>Groupe</b> de <b>%d</b> objet" -#: ../src/spiral-context.cpp:468 -msgid "Create spiral" -msgstr "Créer une spirale" +#: ../src/sp-item-group.cpp:337 ../src/sp-switch.cpp:81 +#, fuzzy, c-format +msgid "of <b>%d</b> objects" +msgstr "<b>Groupe</b> de <b>%d</b> objet" -#: ../src/splivarot.cpp:68 -#: ../src/splivarot.cpp:74 -msgid "Union" -msgstr "Union" +#: ../src/sp-line.cpp:126 +msgid "Line" +msgstr "Ligne" -#: ../src/splivarot.cpp:80 +#: ../src/splivarot.cpp:82 msgid "Intersection" msgstr "Intersection" -#: ../src/splivarot.cpp:86 -#: ../src/splivarot.cpp:92 +#: ../src/splivarot.cpp:88 ../src/splivarot.cpp:94 msgid "Difference" msgstr "Différence" -#: ../src/splivarot.cpp:98 -msgid "Exclusion" -msgstr "Exclusion" - -#: ../src/splivarot.cpp:103 +#: ../src/splivarot.cpp:105 msgid "Division" msgstr "Division" -#: ../src/splivarot.cpp:108 +#: ../src/splivarot.cpp:110 msgid "Cut path" msgstr "Découper le chemin" -#: ../src/splivarot.cpp:123 +#: ../src/splivarot.cpp:333 msgid "Select <b>at least 2 paths</b> to perform a boolean operation." msgstr "Sélectionner <b>au moins 2 chemins</b> pour une opération booléenne." -#: ../src/splivarot.cpp:127 +#: ../src/splivarot.cpp:337 msgid "Select <b>at least 1 path</b> to perform a boolean union." -msgstr "Sélectionner <b>au moins 1 chemin</b> pour réaliser une opération booléenne." +msgstr "" +"Sélectionner <b>au moins 1 chemin</b> pour réaliser une opération booléenne." -#: ../src/splivarot.cpp:133 -msgid "Select <b>exactly 2 paths</b> to perform difference, division, or path cut." -msgstr "Sélectionner <b>exactement 2 chemins</b> pour en faire une différence, une division ou les découper." +#: ../src/splivarot.cpp:343 +msgid "" +"Select <b>exactly 2 paths</b> to perform difference, division, or path cut." +msgstr "" +"Sélectionner <b>exactement 2 chemins</b> pour en faire une différence, une " +"division ou les découper." -#: ../src/splivarot.cpp:149 -#: ../src/splivarot.cpp:164 -msgid "Unable to determine the <b>z-order</b> of the objects selected for difference, XOR, division, or path cut." -msgstr "Impossible de déterminer <b>l'ordre en z</b> des objets sélectionnés pour en faire une différence, une exclusion ou les découper." +#: ../src/splivarot.cpp:359 ../src/splivarot.cpp:374 +msgid "" +"Unable to determine the <b>z-order</b> of the objects selected for " +"difference, XOR, division, or path cut." +msgstr "" +"Impossible de déterminer <b>l'ordre en z</b> des objets sélectionnés pour en " +"faire une différence, une exclusion ou les découper." -#: ../src/splivarot.cpp:194 -msgid "One of the objects is <b>not a path</b>, cannot perform boolean operation." -msgstr "Un des objets n'est <b>pas un chemin</b>, impossible d'effectuer une opération booléenne." +#: ../src/splivarot.cpp:404 +msgid "" +"One of the objects is <b>not a path</b>, cannot perform boolean operation." +msgstr "" +"Un des objets n'est <b>pas un chemin</b>, impossible d'effectuer une " +"opération booléenne." -#: ../src/splivarot.cpp:918 +#: ../src/splivarot.cpp:1153 msgid "Select <b>stroked path(s)</b> to convert stroke to path." -msgstr "Sélectionner des <b>chemin(s) avec contour</b> pour convertir les contours en chemins." +msgstr "" +"Sélectionner des <b>chemin(s) avec contour</b> pour convertir les contours " +"en chemins." -#: ../src/splivarot.cpp:1271 +#: ../src/splivarot.cpp:1506 msgid "Convert stroke to path" msgstr "Convertir un contour en chemin" #. TRANSLATORS: "to outline" means "to convert stroke to path" -#: ../src/splivarot.cpp:1274 +#: ../src/splivarot.cpp:1509 msgid "<b>No stroked paths</b> in the selection." msgstr "<b>Aucun chemin avec contour</b> dans la sélection." -#: ../src/splivarot.cpp:1345 +#: ../src/splivarot.cpp:1580 msgid "Selected object is <b>not a path</b>, cannot inset/outset." -msgstr "L'objet sélectionné <b>n'est pas un chemin</b>, impossible de le contracter/dilater." +msgstr "" +"L'objet sélectionné <b>n'est pas un chemin</b>, impossible de le contracter/" +"dilater." -#: ../src/splivarot.cpp:1441 -#: ../src/splivarot.cpp:1506 +#: ../src/splivarot.cpp:1676 ../src/splivarot.cpp:1741 msgid "Create linked offset" msgstr "Créer un objet offset lié" -#: ../src/splivarot.cpp:1442 -#: ../src/splivarot.cpp:1507 +#: ../src/splivarot.cpp:1677 ../src/splivarot.cpp:1742 msgid "Create dynamic offset" msgstr "Créer un objet offset dynamique" -#: ../src/splivarot.cpp:1532 +#: ../src/splivarot.cpp:1767 msgid "Select <b>path(s)</b> to inset/outset." msgstr "Sélectionner des <b>chemin(s)</b> pour les contracter/dilater." -#: ../src/splivarot.cpp:1745 +#: ../src/splivarot.cpp:1980 msgid "Outset path" msgstr "Dilater le chemin" -#: ../src/splivarot.cpp:1745 +#: ../src/splivarot.cpp:1980 msgid "Inset path" msgstr "Contracter le chemin" -#: ../src/splivarot.cpp:1747 +#: ../src/splivarot.cpp:1982 msgid "<b>No paths</b> to inset/outset in the selection." msgstr "<b>Aucun chemin</b> à contracter/dilater dans la sélection." -#: ../src/splivarot.cpp:1909 +#: ../src/splivarot.cpp:2144 msgid "Simplifying paths (separately):" msgstr "Simplification individuelle des chemins" -#: ../src/splivarot.cpp:1911 +#: ../src/splivarot.cpp:2146 msgid "Simplifying paths:" msgstr "Simplification des chemins :" -#: ../src/splivarot.cpp:1948 +#: ../src/splivarot.cpp:2183 #, c-format msgid "%s <b>%d</b> of <b>%d</b> paths simplified..." msgstr "Simplification %s - <b>%d</b> chemins simplifiés sur <b>%d</b>..." -#: ../src/splivarot.cpp:1960 +#: ../src/splivarot.cpp:2196 #, c-format msgid "<b>%d</b> paths simplified." msgstr "Fait - <b>%d</b> chemins simplifiés." -#: ../src/splivarot.cpp:1974 +#: ../src/splivarot.cpp:2210 msgid "Select <b>path(s)</b> to simplify." msgstr "Sélectionner un ou des <b>chemin(s)</b> à simplifier." -#: ../src/splivarot.cpp:1990 +#: ../src/splivarot.cpp:2226 msgid "<b>No paths</b> to simplify in the selection." msgstr "<b>Aucun chemin</b> à simplifier dans la sélection." -#: ../src/spray-context.cpp:205 -#: ../src/tweak-context.cpp:191 +#: ../src/sp-lpe-item.cpp:249 +msgid "An exception occurred during execution of the Path Effect." +msgstr "Exception pendant l'exécution de l'effet de chemin." + +#: ../src/sp-offset.cpp:344 +#, fuzzy +msgid "Linked Offset" +msgstr "Offset _lié" + +#: ../src/sp-offset.cpp:346 +#, fuzzy +msgid "Dynamic Offset" +msgstr "Offset d_ynamique" + +#. TRANSLATORS COMMENT: %s is either "outset" or "inset" depending on sign +#: ../src/sp-offset.cpp:352 +#, c-format +msgid "%s by %f pt" +msgstr "" + +#: ../src/sp-offset.cpp:353 +msgid "outset" +msgstr "dilaté" + +#: ../src/sp-offset.cpp:353 +msgid "inset" +msgstr "contracté" + +#: ../src/sp-path.cpp:70 +msgid "Path" +msgstr "Chemin" + +#: ../src/sp-path.cpp:95 +#, fuzzy, c-format +msgid ", path effect: %s" +msgstr "Ajouter un effet de chemin" + +#: ../src/sp-path.cpp:98 +#, fuzzy, c-format +msgid "%i node%s" +msgstr "Joindre les nÅ“uds" + +#: ../src/sp-path.cpp:98 +#, fuzzy, c-format +msgid "%i nodes%s" +msgstr "Joindre les nÅ“uds" + +#: ../src/sp-polygon.cpp:182 +msgid "<b>Polygon</b>" +msgstr "<b>Polygone</b>" + +#: ../src/sp-polyline.cpp:131 +msgid "<b>Polyline</b>" +msgstr "<b>Polyligne</b>" + +#: ../src/spray-context.cpp:188 ../src/tweak-context.cpp:170 #, c-format +msgid "<b>%i</b> object selected" +msgid_plural "<b>%i</b> objects selected" +msgstr[0] "<b>%i</b> objet sélectionné" +msgstr[1] "<b>%i</b> objets sélectionnés" + +#: ../src/spray-context.cpp:190 ../src/tweak-context.cpp:172 msgid "<b>Nothing</b> selected" msgstr "<b>Rien</b> n'a été sélectionné." -#: ../src/spray-context.cpp:211 +#: ../src/spray-context.cpp:195 #, c-format -msgid "%s. Drag, click or click and scroll to spray <b>copies</b> of the initial selection." -msgstr "%s. Cliquer-déplacer, cliquer ou défiler pour pulvériser des <b>copies</b> de la sélection initiale." +msgid "" +"%s. Drag, click or click and scroll to spray <b>copies</b> of the initial " +"selection." +msgstr "" +"%s. Cliquer-déplacer, cliquer ou défiler pour pulvériser des <b>copies</b> " +"de la sélection initiale." -#: ../src/spray-context.cpp:214 +#: ../src/spray-context.cpp:198 #, c-format -msgid "%s. Drag, click or click and scroll to spray <b>clones</b> of the initial selection." -msgstr "%s. Cliquer-déplacer, cliquer ou défiler pour pulvériser des <b>clones</b> de la sélection initiale." +msgid "" +"%s. Drag, click or click and scroll to spray <b>clones</b> of the initial " +"selection." +msgstr "" +"%s. Cliquer-déplacer, cliquer ou défiler pour pulvériser des <b>clones</b> " +"de la sélection initiale." -#: ../src/spray-context.cpp:217 +#: ../src/spray-context.cpp:201 #, c-format -msgid "%s. Drag, click or click and scroll to spray in a <b>single path</b> of the initial selection." -msgstr "%s. Cliquer-déplacer, cliquer ou défiler pour pulvériser dans un <b>chemin unique</b> la sélection initiale." +msgid "" +"%s. Drag, click or click and scroll to spray in a <b>single path</b> of the " +"initial selection." +msgstr "" +"%s. Cliquer-déplacer, cliquer ou défiler pour pulvériser dans un <b>chemin " +"unique</b> la sélection initiale." -#: ../src/spray-context.cpp:670 +#: ../src/spray-context.cpp:641 msgid "<b>Nothing selected!</b> Select objects to spray." msgstr "<b>Sélection vide !</b> Sélectionner les objets à pulvériser." -#: ../src/spray-context.cpp:745 -#: ../src/widgets/spray-toolbar.cpp:182 +#: ../src/spray-context.cpp:716 ../src/widgets/spray-toolbar.cpp:178 msgid "Spray with copies" msgstr "Pulvérise avec des copies" -#: ../src/spray-context.cpp:749 -#: ../src/widgets/spray-toolbar.cpp:189 +#: ../src/spray-context.cpp:720 ../src/widgets/spray-toolbar.cpp:185 msgid "Spray with clones" msgstr "Pulvérise avec des clones" -#: ../src/spray-context.cpp:753 +#: ../src/spray-context.cpp:724 msgid "Spray in single path" msgstr "Pulvérisation par union des formes" -#: ../src/star-context.cpp:320 +#. Rectangle +#: ../src/sp-rect.cpp:163 ../src/ui/dialog/inkscape-preferences.cpp:393 +msgid "Rectangle" +msgstr "Rectangle" + +#. Spiral +#: ../src/sp-spiral.cpp:230 ../src/ui/dialog/inkscape-preferences.cpp:411 +#: ../share/extensions/gcodetools_area.inx.h:11 +msgid "Spiral" +msgstr "Spirale" + +#. TRANSLATORS: since turn count isn't an integer, please adjust the +#. string as needed to deal with an localized plural forms. +#: ../src/sp-spiral.cpp:236 +#, fuzzy, c-format +msgid "with %3f turns" +msgstr "<b>Spirale</b> à %3f tours" + +#. Star +#: ../src/sp-star.cpp:256 ../src/ui/dialog/inkscape-preferences.cpp:407 +#: ../src/widgets/star-toolbar.cpp:477 +msgid "Star" +msgstr "Étoile" + +#: ../src/sp-star.cpp:257 ../src/widgets/star-toolbar.cpp:470 +msgid "Polygon" +msgstr "Polygone" + +#. while there will never be less than 3 vertices, we still need to +#. make calls to ngettext because the pluralization may be different +#. for various numbers >=3. The singular form is used as the index. +#: ../src/sp-star.cpp:264 +#, fuzzy, c-format +msgid "with %d vertex" +msgstr "<b>Étoile</b> à %d branche" + +#: ../src/sp-star.cpp:264 +#, fuzzy, c-format +msgid "with %d vertices" +msgstr "<b>Étoile</b> à %d branche" + +#: ../src/sp-switch.cpp:75 +msgid "Conditional Group" +msgstr "" + +#: ../src/sp-text.cpp:330 ../src/verbs.cpp:328 +#: ../share/extensions/lorem_ipsum.inx.h:8 +#: ../share/extensions/replace_font.inx.h:11 +#: ../share/extensions/split.inx.h:10 ../share/extensions/text_braille.inx.h:2 +#: ../share/extensions/text_extract.inx.h:14 +#: ../share/extensions/text_flipcase.inx.h:2 +#: ../share/extensions/text_lowercase.inx.h:2 +#: ../share/extensions/text_merge.inx.h:16 +#: ../share/extensions/text_randomcase.inx.h:2 +#: ../share/extensions/text_sentencecase.inx.h:2 +#: ../share/extensions/text_titlecase.inx.h:2 +#: ../share/extensions/text_uppercase.inx.h:2 +msgid "Text" +msgstr "Texte" + +#. TRANSLATORS: For description of font with no name. +#: ../src/sp-text.cpp:347 +msgid "<no name found>" +msgstr "<aucun nom trouvé>" + +#: ../src/sp-text.cpp:361 +#, fuzzy, c-format +msgid "on path%s (%s, %s)" +msgstr "<b>Texte le long d'un chemin</b>%s (%s, %s)" + +#: ../src/sp-text.cpp:362 +#, fuzzy, c-format +msgid "%s (%s, %s)" +msgstr "<b>Texte</b>%s (%s, %s)" + +#: ../src/sp-tref.cpp:237 +#, fuzzy +msgid "Cloned Character Data" +msgstr "<b>Données de caractères clonés</b>%s%s" + +#: ../src/sp-tref.cpp:253 +msgid " from " +msgstr " depuis " + +#: ../src/sp-tref.cpp:259 ../src/sp-use.cpp:244 +msgid "[orphaned]" +msgstr "" + +#: ../src/sp-tspan.cpp:220 +#, fuzzy +msgid "Text Span" +msgstr "Ancre de texte" + +#: ../src/sp-use.cpp:213 +#, fuzzy +msgid "Symbol" +msgstr "Symbole" + +#: ../src/sp-use.cpp:216 +#, fuzzy +msgid "Clone" +msgstr "Cloner" + +#: ../src/sp-use.cpp:222 +#, c-format +msgid "called %s" +msgstr "" + +#. TRANSLATORS: Used for statusbar description for long <use> chains: +#. * "Clone of: Clone of: ... in Layer 1". +#: ../src/sp-use.cpp:230 +msgid "..." +msgstr "..." + +#: ../src/sp-use.cpp:239 +#, fuzzy, c-format +msgid "of: %s" +msgstr "Erreur : %s" + +#: ../src/star-context.cpp:277 msgid "<b>Ctrl</b>: snap angle; keep rays radial" -msgstr "<b>Ctrl</b> pour tourner par incréments; forcer la radialité des branches" +msgstr "" +"<b>Ctrl</b> pour tourner par incréments; forcer la radialité des branches" -#: ../src/star-context.cpp:456 +#: ../src/star-context.cpp:423 #, c-format -msgid "<b>Polygon</b>: radius %s, angle %5g°; with <b>Ctrl</b> to snap angle" -msgstr "<b>Polygone</b> : rayon %s, angle %5g°Â ; <b>Ctrl</b> pour tourner par incréments" +msgid "" +"<b>Polygon</b>: radius %s, angle %5g°; with <b>Ctrl</b> to snap angle" +msgstr "" +"<b>Polygone</b> : rayon %s, angle %5g°Â ; <b>Ctrl</b> pour tourner par " +"incréments" -#: ../src/star-context.cpp:457 +#: ../src/star-context.cpp:424 #, c-format msgid "<b>Star</b>: radius %s, angle %5g°; with <b>Ctrl</b> to snap angle" -msgstr "<b>Étoile</b> : rayon %s, angle %5g°Â ; <b>Ctrl</b> pour tourner/incliner par incréments" +msgstr "" +"<b>Étoile</b> : rayon %s, angle %5g°Â ; <b>Ctrl</b> pour tourner/" +"incliner par incréments" -#: ../src/star-context.cpp:490 +#: ../src/star-context.cpp:452 msgid "Create star" msgstr "Créer une étoile" #: ../src/text-chemistry.cpp:94 msgid "Select <b>a text and a path</b> to put text on path." -msgstr "Sélectionner <b>un texte et un chemin</b> pour placer le texte le long du chemin." +msgstr "" +"Sélectionner <b>un texte et un chemin</b> pour placer le texte le long du " +"chemin." #: ../src/text-chemistry.cpp:99 -msgid "This text object is <b>already put on a path</b>. Remove it from the path first. Use <b>Shift+D</b> to look up its path." -msgstr "Cet objet texte est <b>déjà placé le long d'un chemin</b>. Le retirer du chemin d'abord. Utiliser <b>Maj+D</b> pour trouver ce chemin." +msgid "" +"This text object is <b>already put on a path</b>. Remove it from the path " +"first. Use <b>Shift+D</b> to look up its path." +msgstr "" +"Cet objet texte est <b>déjà placé le long d'un chemin</b>. Le retirer du " +"chemin d'abord. Utiliser <b>Maj+D</b> pour trouver ce chemin." #. rect is the only SPShape which is not <path> yet, and thus SVG forbids us from putting text on it #: ../src/text-chemistry.cpp:105 -msgid "You cannot put text on a rectangle in this version. Convert rectangle to path first." -msgstr "Vous ne pouvez pas mettre du texte dans un rectangle (dans cette version). Il faut convertir le rectangle en chemin avant." +msgid "" +"You cannot put text on a rectangle in this version. Convert rectangle to " +"path first." +msgstr "" +"Vous ne pouvez pas mettre du texte dans un rectangle (dans cette version). " +"Il faut convertir le rectangle en chemin avant." #: ../src/text-chemistry.cpp:115 msgid "The flowed text(s) must be <b>visible</b> in order to be put on a path." msgstr "Le texte à mettre le long d'un chemin doit être <b>visible</b>." -#: ../src/text-chemistry.cpp:183 -#: ../src/verbs.cpp:2435 +#: ../src/text-chemistry.cpp:185 ../src/verbs.cpp:2496 msgid "Put text on path" msgstr "Mettre le texte le long d'un chemin" -#: ../src/text-chemistry.cpp:195 +#: ../src/text-chemistry.cpp:197 msgid "Select <b>a text on path</b> to remove it from path." -msgstr "Sélectionner un <b>texte le long d'un chemin</b> pour le retirer de ce chemin." +msgstr "" +"Sélectionner un <b>texte le long d'un chemin</b> pour le retirer de ce " +"chemin." -#: ../src/text-chemistry.cpp:216 +#: ../src/text-chemistry.cpp:218 msgid "<b>No texts-on-paths</b> in the selection." msgstr "<b>Aucun texte le long d'un chemin</b> dans la sélection." -#: ../src/text-chemistry.cpp:219 -#: ../src/verbs.cpp:2437 +#: ../src/text-chemistry.cpp:221 ../src/verbs.cpp:2498 msgid "Remove text from path" msgstr "Retirer le texte du chemin" -#: ../src/text-chemistry.cpp:259 -#: ../src/text-chemistry.cpp:280 +#: ../src/text-chemistry.cpp:261 ../src/text-chemistry.cpp:282 msgid "Select <b>text(s)</b> to remove kerns from." msgstr "Sélectionner des <b>texte(s)</b> pour en retirer les crénages." -#: ../src/text-chemistry.cpp:283 +#: ../src/text-chemistry.cpp:285 msgid "Remove manual kerns" msgstr "Retirer les crénages manuels" -#: ../src/text-chemistry.cpp:303 -msgid "Select <b>a text</b> and one or more <b>paths or shapes</b> to flow text into frame." -msgstr "Sélectionner <b>un texte</b> et un ou plusieurs <b>chemins ou formes</b> pour y encadrer le texte." +#: ../src/text-chemistry.cpp:305 +msgid "" +"Select <b>a text</b> and one or more <b>paths or shapes</b> to flow text " +"into frame." +msgstr "" +"Sélectionner <b>un texte</b> et un ou plusieurs <b>chemins ou formes</b> " +"pour y encadrer le texte." -#: ../src/text-chemistry.cpp:371 +#: ../src/text-chemistry.cpp:375 msgid "Flow text into shape" msgstr "Encadrer du texte dans une forme" -#: ../src/text-chemistry.cpp:393 +#: ../src/text-chemistry.cpp:397 msgid "Select <b>a flowed text</b> to unflow it." msgstr "Sélectionner un <b>texte encadré</b> pour le désencadrer." -#: ../src/text-chemistry.cpp:467 +#: ../src/text-chemistry.cpp:471 msgid "Unflow flowed text" msgstr "Désencadrer un texte encadré" -#: ../src/text-chemistry.cpp:479 +#: ../src/text-chemistry.cpp:483 msgid "Select <b>flowed text(s)</b> to convert." msgstr "Sélectionner un <b>texte encadré</b> pour le convertir." -#: ../src/text-chemistry.cpp:497 +#: ../src/text-chemistry.cpp:501 msgid "The flowed text(s) must be <b>visible</b> in order to be converted." msgstr "Le texte encadré doit être <b>visible</b> pour être converti." -#: ../src/text-chemistry.cpp:525 +#: ../src/text-chemistry.cpp:529 msgid "Convert flowed text to text" msgstr "Convertir du texte encadré en texte" -#: ../src/text-chemistry.cpp:530 +#: ../src/text-chemistry.cpp:534 msgid "<b>No flowed text(s)</b> to convert in the selection." msgstr "<b>Aucun texte encadré</b> à convertir dans la sélection." -#: ../src/text-context.cpp:426 +#: ../src/text-context.cpp:390 msgid "<b>Click</b> to edit the text, <b>drag</b> to select part of the text." -msgstr "<b>Cliquer</b> pour éditer le texte, <b>cliquer-déplacer</b> pour sélectionner une partie du texte." +msgstr "" +"<b>Cliquer</b> pour éditer le texte, <b>cliquer-déplacer</b> pour " +"sélectionner une partie du texte." -#: ../src/text-context.cpp:428 -msgid "<b>Click</b> to edit the flowed text, <b>drag</b> to select part of the text." -msgstr "<b>Cliquer</b> pour éditer le texte encadré, <b>cliquer-déplacer</b> pour sélectionner une partie du texte." +#: ../src/text-context.cpp:392 +msgid "" +"<b>Click</b> to edit the flowed text, <b>drag</b> to select part of the text." +msgstr "" +"<b>Cliquer</b> pour éditer le texte encadré, <b>cliquer-déplacer</b> pour " +"sélectionner une partie du texte." -#: ../src/text-context.cpp:482 +#: ../src/text-context.cpp:446 msgid "Create text" msgstr "Créer un texte" -#: ../src/text-context.cpp:507 +#: ../src/text-context.cpp:471 msgid "Non-printable character" msgstr "Caractère non imprimable" -#: ../src/text-context.cpp:522 +#: ../src/text-context.cpp:486 msgid "Insert Unicode character" msgstr "Insérer un caractère Unicode" -#: ../src/text-context.cpp:557 +#: ../src/text-context.cpp:521 #, c-format msgid "Unicode (<b>Enter</b> to finish): %s: %s" msgstr "Unicode (<b>Entrée</b> pour terminer) : %s: %s" -#: ../src/text-context.cpp:559 -#: ../src/text-context.cpp:868 +#: ../src/text-context.cpp:523 ../src/text-context.cpp:830 msgid "Unicode (<b>Enter</b> to finish): " msgstr "Unicode (<b>Entrée</b> pour terminer) : " -#: ../src/text-context.cpp:645 +#: ../src/text-context.cpp:606 #, c-format msgid "<b>Flowed text frame</b>: %s × %s" msgstr "<b>Cadre de texte </b>: %s × %s" -#: ../src/text-context.cpp:702 +#: ../src/text-context.cpp:664 msgid "Type text; <b>Enter</b> to start new line." msgstr "Taper le texte ; <b>Entrée</b> pour commencer une nouvelle ligne." -#: ../src/text-context.cpp:713 +#: ../src/text-context.cpp:675 msgid "Flowed text is created." msgstr "Le texte encadré est créé." -#: ../src/text-context.cpp:715 +#: ../src/text-context.cpp:677 msgid "Create flowed text" msgstr "Créer un texte encadré" -#: ../src/text-context.cpp:717 -msgid "The frame is <b>too small</b> for the current font size. Flowed text not created." -msgstr "Le cadre est <b>trop petit</b> pour la taille de police courante. Le texte encadré n'a pas été créé." +#: ../src/text-context.cpp:679 +msgid "" +"The frame is <b>too small</b> for the current font size. Flowed text not " +"created." +msgstr "" +"Le cadre est <b>trop petit</b> pour la taille de police courante. Le texte " +"encadré n'a pas été créé." -#: ../src/text-context.cpp:853 +#: ../src/text-context.cpp:815 msgid "No-break space" msgstr "Espace insécable" -#: ../src/text-context.cpp:855 +#: ../src/text-context.cpp:817 msgid "Insert no-break space" msgstr "Insérer un espace insécable" -#: ../src/text-context.cpp:892 +#: ../src/text-context.cpp:854 msgid "Make bold" msgstr "Rendre gras" -#: ../src/text-context.cpp:910 +#: ../src/text-context.cpp:872 msgid "Make italic" msgstr "Rendre italique" -#: ../src/text-context.cpp:949 +#: ../src/text-context.cpp:911 msgid "New line" msgstr "Nouvelle ligne" -#: ../src/text-context.cpp:991 +#: ../src/text-context.cpp:953 msgid "Backspace" msgstr "Retour arrière" -#: ../src/text-context.cpp:1047 +#: ../src/text-context.cpp:1009 msgid "Kern to the left" msgstr "Créner vers la gauche" -#: ../src/text-context.cpp:1072 +#: ../src/text-context.cpp:1034 msgid "Kern to the right" msgstr "Créner vers la droite" -#: ../src/text-context.cpp:1097 +#: ../src/text-context.cpp:1059 msgid "Kern up" msgstr "Créner vers le haut" -#: ../src/text-context.cpp:1122 +#: ../src/text-context.cpp:1084 msgid "Kern down" msgstr "Créner vers le bas" -#: ../src/text-context.cpp:1198 +#: ../src/text-context.cpp:1160 msgid "Rotate counterclockwise" msgstr "Tourner dans le sens anti-horaire" -#: ../src/text-context.cpp:1219 +#: ../src/text-context.cpp:1181 msgid "Rotate clockwise" msgstr "Tourner dans le sens horaire" -#: ../src/text-context.cpp:1236 +#: ../src/text-context.cpp:1198 msgid "Contract line spacing" msgstr "Diminuer l'espacement entre les lignes" -#: ../src/text-context.cpp:1243 +#: ../src/text-context.cpp:1205 msgid "Contract letter spacing" msgstr "Diminuer l'espacement des lettres" -#: ../src/text-context.cpp:1261 +#: ../src/text-context.cpp:1223 msgid "Expand line spacing" msgstr "Augmenter l'espacement entre les lignes" -#: ../src/text-context.cpp:1268 +#: ../src/text-context.cpp:1230 msgid "Expand letter spacing" msgstr "Augmenter l'espacement des lettres" -#: ../src/text-context.cpp:1396 +#: ../src/text-context.cpp:1360 msgid "Paste text" msgstr "Coller le texte" -#: ../src/text-context.cpp:1647 -#, c-format -msgid "Type or edit flowed text (%d characters%s); <b>Enter</b> to start new paragraph." -msgstr "Saisir ou modifier le texte encadré (%d caractères%s) ; <b>Entrée</b> pour commencer un nouveau paragraphe." +#: ../src/text-context.cpp:1485 ../src/ui/dialog/text-edit.cpp:588 +#: ../src/ui/dialog/text-edit.cpp:662 +msgid "Set text style" +msgstr "Appliquer un style à un texte" -#: ../src/text-context.cpp:1649 +#: ../src/text-context.cpp:1614 #, c-format -msgid "Type or edit text (%d characters%s); <b>Enter</b> to start new line." -msgstr "Saisir ou modifier le texte (%d caractères%s) ; <b>Entrée</b> pour commencer une nouvelle ligne." - -#: ../src/text-context.cpp:1657 -#: ../src/tools-switch.cpp:201 -msgid "<b>Click</b> to select or create text, <b>drag</b> to create flowed text; then type." -msgstr "<b>Cliquer</b> pour sélectionner ou créer un texte, <b>cliquer-déplacer</b> pour créer un texte encadré; puis taper le texte." +msgid "" +"Type or edit flowed text (%d character%s); <b>Enter</b> to start new " +"paragraph." +msgid_plural "" +"Type or edit flowed text (%d characters%s); <b>Enter</b> to start new " +"paragraph." +msgstr[0] "" +"Saisir ou modifier le texte encadré (%d caractère%s) ; <b>Entrée</b> pour " +"commencer un nouveau paragraphe." +msgstr[1] "" +"Saisir ou modifier le texte encadré (%d caractères%s) ; <b>Entrée</b> pour " +"commencer un nouveau paragraphe." + +#: ../src/text-context.cpp:1616 +#, c-format +msgid "Type or edit text (%d character%s); <b>Enter</b> to start new line." +msgid_plural "" +"Type or edit text (%d characters%s); <b>Enter</b> to start new line." +msgstr[0] "" +"Saisir ou modifier le texte (%d caractère%s) ; <b>Entrée</b> pour commencer " +"une nouvelle ligne." +msgstr[1] "" +"Saisir ou modifier le texte (%d caractères%s) ; <b>Entrée</b> pour commencer " +"une nouvelle ligne." + +#: ../src/text-context.cpp:1624 ../src/tools-switch.cpp:103 +msgid "" +"<b>Click</b> to select or create text, <b>drag</b> to create flowed text; " +"then type." +msgstr "" +"<b>Cliquer</b> pour sélectionner ou créer un texte, <b>cliquer-déplacer</b> " +"pour créer un texte encadré; puis taper le texte." -#: ../src/text-context.cpp:1759 +#: ../src/text-context.cpp:1726 msgid "Type text" msgstr "Taper du texte" @@ -13138,75 +13133,151 @@ msgstr "Taper du texte" msgid "You cannot edit <b>cloned character data</b>." msgstr "Vous ne pouvez pas modifier des <b>données de caractères clonés</b>." -#: ../src/tools-switch.cpp:141 +#: ../src/tools-switch.cpp:91 +#, fuzzy +msgid "" +"<b>Click</b> to Select and Transform objects, <b>Drag</b> to select many " +"objects." +msgstr "" +"<b>Cliquer</b> pour sélectionner des nÅ“uds, <b>cliquer-déplacer</b> pour les " +"déplacer." + +#: ../src/tools-switch.cpp:92 +#, fuzzy +msgid "Modify selected path points (nodes) directly." +msgstr "Simplifier les chemins sélectionnés (supprimer des nÅ“uds superflus)" + +#: ../src/tools-switch.cpp:93 msgid "To tweak a path by pushing, select it and drag over it." -msgstr "Pour perturber un chemin en le poussant, sélectionnez-le et faites glisser la souris dessus." +msgstr "" +"Pour perturber un chemin en le poussant, sélectionnez-le et faites glisser " +"la souris dessus." -#: ../src/tools-switch.cpp:147 -msgid "<b>Drag</b>, <b>click</b> or <b>click and scroll</b> to spray the selected objects." -msgstr "<b>Cliquer-déplacer</b>, <b>cliquer</b> ou <b>défiler</b> pour pulvériser les objets sélectionnés." +#: ../src/tools-switch.cpp:94 +msgid "" +"<b>Drag</b>, <b>click</b> or <b>click and scroll</b> to spray the selected " +"objects." +msgstr "" +"<b>Cliquer-déplacer</b>, <b>cliquer</b> ou <b>défiler</b> pour pulvériser " +"les objets sélectionnés." -#: ../src/tools-switch.cpp:153 -msgid "<b>Drag</b> to create a rectangle. <b>Drag controls</b> to round corners and resize. <b>Click</b> to select." -msgstr "<b>Cliquer-déplacer</b> pour créer un rectangle. <b>Déplacer les poignées</b> pour arrondir les coins. <b>Cliquer</b> pour sélectionner." +#: ../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 "" +"<b>Cliquer-déplacer</b> pour créer un rectangle. <b>Déplacer les poignées</" +"b> pour arrondir les coins. <b>Cliquer</b> pour sélectionner." -#: ../src/tools-switch.cpp:159 -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 "<b>Cliquer-déplacer</b> pour créer une boîte 3D. <b>Déplacer les poignées</b> pour redimensionner en perspective. <b>Cliquer</b> pour sélectionner (avec <b>Ctrl+Alt</b> pour sélectionner les faces)." +#: ../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 "" +"<b>Cliquer-déplacer</b> pour créer une boîte 3D. <b>Déplacer les poignées</" +"b> pour redimensionner en perspective. <b>Cliquer</b> pour sélectionner " +"(avec <b>Ctrl+Alt</b> pour sélectionner les faces)." -#: ../src/tools-switch.cpp:165 -msgid "<b>Drag</b> to create an ellipse. <b>Drag controls</b> to make an arc or segment. <b>Click</b> to select." -msgstr "<b>Cliquer-déplacer</b> pour créer une ellipse. <b>Déplacer les poignées</b> pour faire des arcs ou des camemberts. <b>Cliquer</b> pour sélectionner." +#: ../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 "" +"<b>Cliquer-déplacer</b> pour créer une ellipse. <b>Déplacer les poignées</b> " +"pour faire des arcs ou des camemberts. <b>Cliquer</b> pour sélectionner." -#: ../src/tools-switch.cpp:171 -msgid "<b>Drag</b> to create a star. <b>Drag controls</b> to edit the star shape. <b>Click</b> to select." -msgstr "<b>Cliquer-déplacer</b> pour créer une étoile. <b>Déplacer les poignées</b> pour éditer la forme de l'étoile. <b>Cliquer</b> pour sélectionner." +#: ../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 "" +"<b>Cliquer-déplacer</b> pour créer une étoile. <b>Déplacer les poignées</b> " +"pour éditer la forme de l'étoile. <b>Cliquer</b> pour sélectionner." -#: ../src/tools-switch.cpp:177 -msgid "<b>Drag</b> to create a spiral. <b>Drag controls</b> to edit the spiral shape. <b>Click</b> to select." -msgstr "<b>Cliquer-déplacer</b> pour créer une spirale. <b>Déplacer les poignées</b> pour modifier la forme de la spirale. <b>Cliquer</b> pour sélectionner." +#: ../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 "" +"<b>Cliquer-déplacer</b> pour créer une spirale. <b>Déplacer les poignées</b> " +"pour modifier la forme de la spirale. <b>Cliquer</b> pour sélectionner." -#: ../src/tools-switch.cpp:183 -msgid "<b>Drag</b> to create a freehand line. <b>Shift</b> appends to selected path, <b>Alt</b> activates sketch mode." -msgstr "<b>Cliquer-déplacer</b> pour créer une ligne à main levée. <b>Maj</b> pour l'ajouter au chemin sélectionné. <b>Alt</b> pour activer le mode croquis." +#: ../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 "" +"<b>Cliquer-déplacer</b> pour créer une ligne à main levée. <b>Maj</b> pour " +"l'ajouter au chemin sélectionné. <b>Alt</b> pour activer le mode croquis." -#: ../src/tools-switch.cpp:189 -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 "<b>Cliquer</b> ou <b>cliquer-déplacer</b> pour commencer un chemin; <b>Maj</b> pour ajouter au chemin sélectionné; <b>Ctrl+clic</b> pour créer des points isolés (avec les modes lignes droites)." +#: ../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 "" +"<b>Cliquer</b> ou <b>cliquer-déplacer</b> pour commencer un chemin; <b>Maj</" +"b> pour ajouter au chemin sélectionné; <b>Ctrl+clic</b> pour créer des " +"points isolés (avec les modes lignes droites)." -#: ../src/tools-switch.cpp:195 -msgid "<b>Drag</b> to draw a calligraphic stroke; with <b>Ctrl</b> to track a guide path. <b>Arrow keys</b> adjust width (left/right) and angle (up/down)." -msgstr "<b>Cliquer-déplacer</b> pour calligraphier; <b>Ctrl</b> pour suivre un guide. Les flèches <b>gauche</b>/<b>droite</b> ajustent la largeur de la plume, <b>haut</b>/<b>bas</b> son angle." +#: ../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 "" +"<b>Cliquer-déplacer</b> pour calligraphier; <b>Ctrl</b> pour suivre un " +"guide. Les flèches <b>gauche</b>/<b>droite</b> ajustent la largeur de la " +"plume, <b>haut</b>/<b>bas</b> son angle." -#: ../src/tools-switch.cpp:207 -msgid "<b>Drag</b> or <b>double click</b> to create a gradient on selected objects, <b>drag handles</b> to adjust gradients." -msgstr "<b>Cliquer-déplacer</b> ou <b>double-cliquer</b> pour créer un dégradé sur les objets sélectionnés, <b>déplacer les poignées</b> pour ajuster les dégradés." +#: ../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 "" +"<b>Cliquer-déplacer</b> ou <b>double-cliquer</b> pour créer un dégradé sur " +"les objets sélectionnés, <b>déplacer les poignées</b> pour ajuster les " +"dégradés." -#: ../src/tools-switch.cpp:213 -msgid "<b>Drag</b> or <b>double click</b> to create a mesh on selected objects, <b>drag handles</b> to adjust meshes." -msgstr "<b>Cliquer-déplacer</b> ou <b>double-cliquer</b> pour créer une toile sur les objets sélectionnés, <b>déplacer les poignées</b> pour ajuster les toiles." +#: ../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 "" +"<b>Cliquer-déplacer</b> ou <b>double-cliquer</b> pour créer une toile sur " +"les objets sélectionnés, <b>déplacer les poignées</b> pour ajuster les " +"toiles." -#: ../src/tools-switch.cpp:219 -msgid "<b>Click</b> or <b>drag around an area</b> to zoom in, <b>Shift+click</b> to zoom out." -msgstr "<b>Cliquer</b> ou <b>cliquer-déplacer</b> sur une zone pour zoomer, <b>Maj+clic</b> pour dézoomer." +#: ../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 "" +"<b>Cliquer</b> ou <b>cliquer-déplacer</b> sur une zone pour zoomer, <b>Maj" +"+clic</b> pour dézoomer." -#: ../src/tools-switch.cpp:225 +#: ../src/tools-switch.cpp:107 msgid "<b>Drag</b> to measure the dimensions of objects." msgstr "Cliquer-glisser pour mesurer les dimensions des objets." -#: ../src/tools-switch.cpp:237 +#: ../src/tools-switch.cpp:109 msgid "<b>Click and drag</b> between shapes to create a connector." msgstr "<b>Cliquer et déplacer</b> entre des formes pour créer un connecteur." -#: ../src/tools-switch.cpp:243 -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 "<b>Cliquer</b> pour remplir une région bornée. <b>Maj+Clic</b> pour faire une union du remplissage avec la sélection courante, <b>Ctrl+Clic</b> pour changer le trait et le remplissage de l'objet désigné" +#: ../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 "" +"<b>Cliquer</b> pour remplir une région bornée. <b>Maj+Clic</b> pour faire " +"une union du remplissage avec la sélection courante, <b>Ctrl+Clic</b> pour " +"changer le trait et le remplissage de l'objet désigné" -#: ../src/tools-switch.cpp:249 +#: ../src/tools-switch.cpp:111 msgid "<b>Drag</b> to erase." msgstr "<b>Cliquer-déplacer</b> pour effacer" -#: ../src/tools-switch.cpp:255 +#: ../src/tools-switch.cpp:112 msgid "Choose a subtool from the toolbar" msgstr "Sélectionner un outil secondaire dans la barre d'outils" @@ -13215,234 +13286,254 @@ msgstr "Sélectionner un outil secondaire dans la barre d'outils" msgid "Trace: %1. %2 nodes" msgstr "Vectoriser : %1. %2 nÅ“uds" -#: ../src/trace/trace.cpp:58 -#: ../src/trace/trace.cpp:123 -#: ../src/trace/trace.cpp:131 -#: ../src/trace/trace.cpp:224 +#: ../src/trace/trace.cpp:59 ../src/trace/trace.cpp:124 +#: ../src/trace/trace.cpp:132 ../src/trace/trace.cpp:225 +#: ../src/ui/dialog/pixelartdialog.cpp:338 +#: ../src/ui/dialog/pixelartdialog.cpp:356 msgid "Select an <b>image</b> to trace" msgstr "Sélectionner une <b>image</b> à vectoriser" -#: ../src/trace/trace.cpp:93 +#: ../src/trace/trace.cpp:94 msgid "Select only one <b>image</b> to trace" msgstr "Sélectionner une seule <b>image</b> à vectoriser" -#: ../src/trace/trace.cpp:111 +#: ../src/trace/trace.cpp:112 msgid "Select one image and one or more shapes above it" msgstr "Sélectionner une image et une ou plusieurs formes au dessus d'elle" -#: ../src/trace/trace.cpp:215 +#: ../src/trace/trace.cpp:216 msgid "Trace: No active desktop" msgstr "Vectoriser : pas de bureau actif" -#: ../src/trace/trace.cpp:312 +#: ../src/trace/trace.cpp:313 msgid "Invalid SIOX result" msgstr "Résultat de SIOX invalide" -#: ../src/trace/trace.cpp:396 +#: ../src/trace/trace.cpp:406 msgid "Trace: No active document" msgstr "Vectoriser : pas de document actif" -#: ../src/trace/trace.cpp:419 +#: ../src/trace/trace.cpp:438 msgid "Trace: Image has no bitmap data" msgstr "Vectoriser : l'image ne contient pas de données bitmap" -#: ../src/trace/trace.cpp:426 +#: ../src/trace/trace.cpp:445 msgid "Trace: Starting trace..." msgstr "Vectorisation : début de l'opération..." #. ## inform the document, so we can undo -#: ../src/trace/trace.cpp:529 +#: ../src/trace/trace.cpp:548 msgid "Trace bitmap" msgstr "Vectoriser un bitmap" -#: ../src/trace/trace.cpp:533 +#: ../src/trace/trace.cpp:552 #, c-format msgid "Trace: Done. %ld nodes created" msgstr "Vectorisation effectuée. %ld nÅ“uds créés." -#: ../src/tweak-context.cpp:196 +#: ../src/tweak-context.cpp:177 #, c-format msgid "%s. Drag to <b>move</b>." msgstr "%s. Cliquer-glisser pour <b>déplacer</b>." -#: ../src/tweak-context.cpp:200 +#: ../src/tweak-context.cpp:181 #, c-format msgid "%s. Drag or click to <b>move in</b>; with Shift to <b>move out</b>." -msgstr "%s. Cliquer-glisser ou cliquer pour <b>rapprocher</b>; avec Maj pour <b>éloigner</b>." +msgstr "" +"%s. Cliquer-glisser ou cliquer pour <b>rapprocher</b>; avec Maj pour " +"<b>éloigner</b>." -#: ../src/tweak-context.cpp:208 +#: ../src/tweak-context.cpp:189 #, c-format msgid "%s. Drag or click to <b>move randomly</b>." msgstr "%s. Glisser ou cliquer pour <b>déplacer aléatoirement</b>." -#: ../src/tweak-context.cpp:212 +#: ../src/tweak-context.cpp:193 #, c-format msgid "%s. Drag or click to <b>scale down</b>; with Shift to <b>scale up</b>." -msgstr "%s. Cliquer-glisser ou cliquer pour <b>réduire</b>; avec Maj pour <b>agrandir</b>." +msgstr "" +"%s. Cliquer-glisser ou cliquer pour <b>réduire</b>; avec Maj pour " +"<b>agrandir</b>." -#: ../src/tweak-context.cpp:220 +#: ../src/tweak-context.cpp:201 #, c-format -msgid "%s. Drag or click to <b>rotate clockwise</b>; with Shift, <b>counterclockwise</b>." -msgstr "%s. Glisser ou cliquer pour <b>pivoter dans le sens horaire</b> ; avec Maj, <b>dans le sens anti-horaire</b>." +msgid "" +"%s. Drag or click to <b>rotate clockwise</b>; with Shift, " +"<b>counterclockwise</b>." +msgstr "" +"%s. Glisser ou cliquer pour <b>pivoter dans le sens horaire</b> ; avec Maj, " +"<b>dans le sens anti-horaire</b>." -#: ../src/tweak-context.cpp:228 +#: ../src/tweak-context.cpp:209 #, c-format msgid "%s. Drag or click to <b>duplicate</b>; with Shift, <b>delete</b>." -msgstr "%s. Glisser ou cliquer pour <b>dupliquer</b> ; avec Maj, <b>supprime</b>." +msgstr "" +"%s. Glisser ou cliquer pour <b>dupliquer</b> ; avec Maj, <b>supprime</b>." -#: ../src/tweak-context.cpp:236 +#: ../src/tweak-context.cpp:217 #, c-format msgid "%s. Drag to <b>push paths</b>." msgstr "%s. Glisser pour <b>pousser les chemins</b>." -#: ../src/tweak-context.cpp:240 +#: ../src/tweak-context.cpp:221 #, c-format msgid "%s. Drag or click to <b>inset paths</b>; with Shift to <b>outset</b>." -msgstr "%s. Cliquer-glisser ou cliquer pour <b>rétrécir les chemins</b>; avec Maj pour les <b>élargir</b>." +msgstr "" +"%s. Cliquer-glisser ou cliquer pour <b>rétrécir les chemins</b>; avec Maj " +"pour les <b>élargir</b>." -#: ../src/tweak-context.cpp:248 +#: ../src/tweak-context.cpp:229 #, c-format msgid "%s. Drag or click to <b>attract paths</b>; with Shift to <b>repel</b>." -msgstr "%s. Cliquer-glisser ou cliquer pour <b>attirer les chemins</b>; avec Maj pour les <b>repousser</b>." +msgstr "" +"%s. Cliquer-glisser ou cliquer pour <b>attirer les chemins</b>; avec Maj " +"pour les <b>repousser</b>." -#: ../src/tweak-context.cpp:256 +#: ../src/tweak-context.cpp:237 #, c-format msgid "%s. Drag or click to <b>roughen paths</b>." msgstr "%s. Cliquer-glisser ou cliquer pour <b>rendre les chemins rugueux</b>." -#: ../src/tweak-context.cpp:260 +#: ../src/tweak-context.cpp:241 #, c-format msgid "%s. Drag or click to <b>paint objects</b> with color." -msgstr "%s. Cliquer-glisser ou cliquer pour <b>peindre les objets</b> avec une couleur." +msgstr "" +"%s. Cliquer-glisser ou cliquer pour <b>peindre les objets</b> avec une " +"couleur." -#: ../src/tweak-context.cpp:264 +#: ../src/tweak-context.cpp:245 #, c-format msgid "%s. Drag or click to <b>randomize colors</b>." -msgstr "%s. Cliquer-glisser ou cliquer pour <b>peindre avec une couleur aléatoire</b>." +msgstr "" +"%s. Cliquer-glisser ou cliquer pour <b>peindre avec une couleur aléatoire</" +"b>." -#: ../src/tweak-context.cpp:268 +#: ../src/tweak-context.cpp:249 #, c-format -msgid "%s. Drag or click to <b>increase blur</b>; with Shift to <b>decrease</b>." -msgstr "%s. Cliquer-glisser ou cliquer pour <b>augmenter le flou</b>; avec Maj pour le <b>diminuer</b>." +msgid "" +"%s. Drag or click to <b>increase blur</b>; with Shift to <b>decrease</b>." +msgstr "" +"%s. Cliquer-glisser ou cliquer pour <b>augmenter le flou</b>; avec Maj pour " +"le <b>diminuer</b>." -#: ../src/tweak-context.cpp:1234 +#: ../src/tweak-context.cpp:1196 msgid "<b>Nothing selected!</b> Select objects to tweak." msgstr "<b>Sélection vide !</b> Sélectionner les objets à ajuster." -#: ../src/tweak-context.cpp:1268 +#: ../src/tweak-context.cpp:1230 msgid "Move tweak" msgstr "Ajuster en déplaçant" -#: ../src/tweak-context.cpp:1272 +#: ../src/tweak-context.cpp:1234 msgid "Move in/out tweak" msgstr "Ajuster en rapprochant ou en s'éloignant du curseur" -#: ../src/tweak-context.cpp:1276 +#: ../src/tweak-context.cpp:1238 msgid "Move jitter tweak" msgstr "Ajuster en déplaçant aléatoirement" -#: ../src/tweak-context.cpp:1280 +#: ../src/tweak-context.cpp:1242 msgid "Scale tweak" msgstr "Ajuster en redimensionnant" -#: ../src/tweak-context.cpp:1284 +#: ../src/tweak-context.cpp:1246 msgid "Rotate tweak" msgstr "Ajuster en pivotant" -#: ../src/tweak-context.cpp:1288 +#: ../src/tweak-context.cpp:1250 msgid "Duplicate/delete tweak" msgstr "Ajuster en dupliquant ou supprimant" -#: ../src/tweak-context.cpp:1292 +#: ../src/tweak-context.cpp:1254 msgid "Push path tweak" msgstr "Ajuster en poussant le chemin" -#: ../src/tweak-context.cpp:1296 +#: ../src/tweak-context.cpp:1258 msgid "Shrink/grow path tweak" msgstr "Ajuster en contractant ou en dilatant le chemin" -#: ../src/tweak-context.cpp:1300 +#: ../src/tweak-context.cpp:1262 msgid "Attract/repel path tweak" msgstr "Ajuster en attirant ou en repoussant le chemin" -#: ../src/tweak-context.cpp:1304 +#: ../src/tweak-context.cpp:1266 msgid "Roughen path tweak" msgstr "Ajuster en rendant le chemin plus rugueux" -#: ../src/tweak-context.cpp:1308 +#: ../src/tweak-context.cpp:1270 msgid "Color paint tweak" msgstr "Ajuster en peignant la couleur" -#: ../src/tweak-context.cpp:1312 +#: ../src/tweak-context.cpp:1274 msgid "Color jitter tweak" msgstr "Ajuster en variant les couleurs" -#: ../src/tweak-context.cpp:1316 +#: ../src/tweak-context.cpp:1278 msgid "Blur tweak" msgstr "Ajuster le niveau de flou" #. check whether something is selected -#: ../src/ui/clipboard.cpp:262 +#: ../src/ui/clipboard.cpp:261 msgid "Nothing was copied." msgstr "Rien n'a été copié." -#: ../src/ui/clipboard.cpp:375 -#: ../src/ui/clipboard.cpp:584 -#: ../src/ui/clipboard.cpp:607 +#: ../src/ui/clipboard.cpp:374 ../src/ui/clipboard.cpp:583 +#: ../src/ui/clipboard.cpp:606 msgid "Nothing on the clipboard." msgstr "Rien dans le presse-papiers." -#: ../src/ui/clipboard.cpp:433 +#: ../src/ui/clipboard.cpp:432 msgid "Select <b>object(s)</b> to paste style to." msgstr "Sélectionner un ou des <b>objets</b> sur lesquels coller un style." -#: ../src/ui/clipboard.cpp:444 -#: ../src/ui/clipboard.cpp:461 +#: ../src/ui/clipboard.cpp:443 ../src/ui/clipboard.cpp:460 msgid "No style on the clipboard." msgstr "Pas de style dans le presse-papiers." -#: ../src/ui/clipboard.cpp:486 +#: ../src/ui/clipboard.cpp:485 msgid "Select <b>object(s)</b> to paste size to." -msgstr "Sélectionner un ou des <b>objets</b> sur lesquels coller des dimensions." +msgstr "" +"Sélectionner un ou des <b>objets</b> sur lesquels coller des dimensions." -#: ../src/ui/clipboard.cpp:493 +#: ../src/ui/clipboard.cpp:492 msgid "No size on the clipboard." msgstr "Pas de dimension dans le presse-papiers." -#: ../src/ui/clipboard.cpp:546 +#: ../src/ui/clipboard.cpp:545 msgid "Select <b>object(s)</b> to paste live path effect to." -msgstr "Sélectionner un ou des <b>objet(s)</b> sur lesquels coller un effet de chemin." +msgstr "" +"Sélectionner un ou des <b>objet(s)</b> sur lesquels coller un effet de " +"chemin." #. no_effect: -#: ../src/ui/clipboard.cpp:571 +#: ../src/ui/clipboard.cpp:570 msgid "No effect on the clipboard." msgstr "Pas d'effet dans le presse-papiers." -#: ../src/ui/clipboard.cpp:590 -#: ../src/ui/clipboard.cpp:618 +#: ../src/ui/clipboard.cpp:589 ../src/ui/clipboard.cpp:617 msgid "Clipboard does not contain a path." msgstr "Le presse-papier ne contient pas de chemin." #. * #. * Constructor #. -#: ../src/ui/dialog/aboutbox.cpp:79 +#: ../src/ui/dialog/aboutbox.cpp:80 msgid "About Inkscape" msgstr "À propos d'Inkscape" -#: ../src/ui/dialog/aboutbox.cpp:90 +#: ../src/ui/dialog/aboutbox.cpp:91 msgid "_Splash" msgstr "_Splash" -#: ../src/ui/dialog/aboutbox.cpp:94 +#: ../src/ui/dialog/aboutbox.cpp:95 msgid "_Authors" msgstr "_Auteurs" -#: ../src/ui/dialog/aboutbox.cpp:96 +#: ../src/ui/dialog/aboutbox.cpp:97 msgid "_Translators" msgstr "_Traducteurs" -#: ../src/ui/dialog/aboutbox.cpp:98 +#: ../src/ui/dialog/aboutbox.cpp:99 msgid "_License" msgstr "_Licence" @@ -13457,13 +13548,13 @@ msgstr "_Licence" #. FIXME? INKSCAPE_SCREENSDIR and "about.svg" are in UTF-8, not the #. native filename encoding... and the filename passed to sp_document_new #. should be in UTF-*8.. -#: ../src/ui/dialog/aboutbox.cpp:165 +#: ../src/ui/dialog/aboutbox.cpp:166 msgid "about.svg" msgstr "about.svg" #. TRANSLATORS: Put here your name (and other national contributors') #. one per line in the form of: name surname (email). Use \n for newline. -#: ../src/ui/dialog/aboutbox.cpp:415 +#: ../src/ui/dialog/aboutbox.cpp:416 msgid "translator-credits" msgstr "" " Christophe Merlet (redfox@redfoxcenter.org)\n" @@ -13476,261 +13567,263 @@ msgstr "" " Sophie Gousset (contact@sophieweb.com)\n" " Nicolas Dufour (nicoduf@yahoo.fr)" -#: ../src/ui/dialog/align-and-distribute.cpp:219 -#: ../src/ui/dialog/align-and-distribute.cpp:896 +#: ../src/ui/dialog/align-and-distribute.cpp:171 +#: ../src/ui/dialog/align-and-distribute.cpp:852 msgid "Align" msgstr "Aligner" -#: ../src/ui/dialog/align-and-distribute.cpp:391 -#: ../src/ui/dialog/align-and-distribute.cpp:897 +#: ../src/ui/dialog/align-and-distribute.cpp:341 +#: ../src/ui/dialog/align-and-distribute.cpp:853 msgid "Distribute" msgstr "Distribuer" -#: ../src/ui/dialog/align-and-distribute.cpp:464 +#: ../src/ui/dialog/align-and-distribute.cpp:420 msgid "Minimum horizontal gap (in px units) between bounding boxes" msgstr "Espace horizontal minimum (en px) entre les boîtes englobantes" # Hue (in HSL) #. TRANSLATORS: "H:" stands for horizontal gap -#: ../src/ui/dialog/align-and-distribute.cpp:466 +#: ../src/ui/dialog/align-and-distribute.cpp:422 #, fuzzy msgctxt "Gap" msgid "_H:" msgstr "_T :" -#: ../src/ui/dialog/align-and-distribute.cpp:474 +#: ../src/ui/dialog/align-and-distribute.cpp:430 msgid "Minimum vertical gap (in px units) between bounding boxes" msgstr "Espace vertical minimum (en px) entre les boîtes englobantes" #. TRANSLATORS: Vertical gap -#: ../src/ui/dialog/align-and-distribute.cpp:476 +#: ../src/ui/dialog/align-and-distribute.cpp:432 msgctxt "Gap" msgid "_V:" msgstr "_V :" -#: ../src/ui/dialog/align-and-distribute.cpp:512 -#: ../src/ui/dialog/align-and-distribute.cpp:899 -#: ../src/widgets/connector-toolbar.cpp:427 +#: ../src/ui/dialog/align-and-distribute.cpp:468 +#: ../src/ui/dialog/align-and-distribute.cpp:855 +#: ../src/widgets/connector-toolbar.cpp:423 msgid "Remove overlaps" msgstr "Supprimer les chevauchements" -#: ../src/ui/dialog/align-and-distribute.cpp:543 -#: ../src/widgets/connector-toolbar.cpp:256 +#: ../src/ui/dialog/align-and-distribute.cpp:499 +#: ../src/widgets/connector-toolbar.cpp:252 msgid "Arrange connector network" msgstr "Arranger le réseau de connecteurs" -#: ../src/ui/dialog/align-and-distribute.cpp:636 +#: ../src/ui/dialog/align-and-distribute.cpp:592 msgid "Exchange Positions" msgstr "Échanger les positions" -#: ../src/ui/dialog/align-and-distribute.cpp:670 +#: ../src/ui/dialog/align-and-distribute.cpp:626 msgid "Unclump" msgstr "Éparpiller" -#: ../src/ui/dialog/align-and-distribute.cpp:742 +#: ../src/ui/dialog/align-and-distribute.cpp:698 msgid "Randomize positions" msgstr "Rendre les positions aléatoires" -#: ../src/ui/dialog/align-and-distribute.cpp:845 +#: ../src/ui/dialog/align-and-distribute.cpp:801 msgid "Distribute text baselines" msgstr "Distribuer les ancres de textes" -#: ../src/ui/dialog/align-and-distribute.cpp:868 +#: ../src/ui/dialog/align-and-distribute.cpp:824 msgid "Align text baselines" msgstr "Aligner les ancres de texte" -#: ../src/ui/dialog/align-and-distribute.cpp:898 +#: ../src/ui/dialog/align-and-distribute.cpp:854 msgid "Rearrange" msgstr "Organiser" -#: ../src/ui/dialog/align-and-distribute.cpp:900 -#: ../src/widgets/toolbox.cpp:1728 +#: ../src/ui/dialog/align-and-distribute.cpp:856 +#: ../src/widgets/toolbox.cpp:1726 msgid "Nodes" msgstr "NÅ“uds" -#: ../src/ui/dialog/align-and-distribute.cpp:914 +#: ../src/ui/dialog/align-and-distribute.cpp:870 msgid "Relative to: " msgstr "Relativement à  : " -#: ../src/ui/dialog/align-and-distribute.cpp:915 +#: ../src/ui/dialog/align-and-distribute.cpp:871 msgid "_Treat selection as group: " msgstr "_Manipuler la sélection comme un groupe :" #. Align -#: ../src/ui/dialog/align-and-distribute.cpp:921 -#: ../src/verbs.cpp:2866 -#: ../src/verbs.cpp:2867 +#: ../src/ui/dialog/align-and-distribute.cpp:877 ../src/verbs.cpp:2939 +#: ../src/verbs.cpp:2940 msgid "Align right edges of objects to the left edge of the anchor" msgstr "Aligner les bords droits des objets au bord gauche de l'ancre" -#: ../src/ui/dialog/align-and-distribute.cpp:924 -#: ../src/verbs.cpp:2868 -#: ../src/verbs.cpp:2869 +#: ../src/ui/dialog/align-and-distribute.cpp:880 ../src/verbs.cpp:2941 +#: ../src/verbs.cpp:2942 msgid "Align left edges" msgstr "Aligner les bords gauches" -#: ../src/ui/dialog/align-and-distribute.cpp:927 -#: ../src/verbs.cpp:2870 -#: ../src/verbs.cpp:2871 +#: ../src/ui/dialog/align-and-distribute.cpp:883 ../src/verbs.cpp:2943 +#: ../src/verbs.cpp:2944 msgid "Center on vertical axis" msgstr "Centrer selon un axe vertical" -#: ../src/ui/dialog/align-and-distribute.cpp:930 -#: ../src/verbs.cpp:2872 -#: ../src/verbs.cpp:2873 +#: ../src/ui/dialog/align-and-distribute.cpp:886 ../src/verbs.cpp:2945 +#: ../src/verbs.cpp:2946 msgid "Align right sides" msgstr "Aligner les côtés droits" -#: ../src/ui/dialog/align-and-distribute.cpp:933 -#: ../src/verbs.cpp:2874 -#: ../src/verbs.cpp:2875 +#: ../src/ui/dialog/align-and-distribute.cpp:889 ../src/verbs.cpp:2947 +#: ../src/verbs.cpp:2948 msgid "Align left edges of objects to the right edge of the anchor" msgstr "Aligner les bords gauches des objets au bord droit de l'ancre" -#: ../src/ui/dialog/align-and-distribute.cpp:936 -#: ../src/verbs.cpp:2876 -#: ../src/verbs.cpp:2877 +#: ../src/ui/dialog/align-and-distribute.cpp:892 ../src/verbs.cpp:2949 +#: ../src/verbs.cpp:2950 msgid "Align bottom edges of objects to the top edge of the anchor" -msgstr "Aligner les bords inférieurs des objets avec le bord supérieur de l'ancre" +msgstr "" +"Aligner les bords inférieurs des objets avec le bord supérieur de l'ancre" -#: ../src/ui/dialog/align-and-distribute.cpp:939 -#: ../src/verbs.cpp:2878 -#: ../src/verbs.cpp:2879 +#: ../src/ui/dialog/align-and-distribute.cpp:895 ../src/verbs.cpp:2951 +#: ../src/verbs.cpp:2952 msgid "Align top edges" msgstr "Aligner les bords supérieurs" -#: ../src/ui/dialog/align-and-distribute.cpp:942 -#: ../src/verbs.cpp:2880 -#: ../src/verbs.cpp:2881 +#: ../src/ui/dialog/align-and-distribute.cpp:898 ../src/verbs.cpp:2953 +#: ../src/verbs.cpp:2954 msgid "Center on horizontal axis" msgstr "Centrer selon un axe horizontal" -#: ../src/ui/dialog/align-and-distribute.cpp:945 -#: ../src/verbs.cpp:2882 -#: ../src/verbs.cpp:2883 +#: ../src/ui/dialog/align-and-distribute.cpp:901 ../src/verbs.cpp:2955 +#: ../src/verbs.cpp:2956 msgid "Align bottom edges" msgstr "Aligner les bords inférieurs" -#: ../src/ui/dialog/align-and-distribute.cpp:948 -#: ../src/verbs.cpp:2884 -#: ../src/verbs.cpp:2885 +#: ../src/ui/dialog/align-and-distribute.cpp:904 ../src/verbs.cpp:2957 +#: ../src/verbs.cpp:2958 msgid "Align top edges of objects to the bottom edge of the anchor" msgstr "Aligner les bords supérieurs des objets avec le bas de l'ancre" -#: ../src/ui/dialog/align-and-distribute.cpp:953 +#: ../src/ui/dialog/align-and-distribute.cpp:909 msgid "Align baseline anchors of texts horizontally" msgstr "Aligner horizontalement les ancres des objets texte" -#: ../src/ui/dialog/align-and-distribute.cpp:956 +#: ../src/ui/dialog/align-and-distribute.cpp:912 msgid "Align baselines of texts" msgstr "Aligner la ligne de base des textes" -#: ../src/ui/dialog/align-and-distribute.cpp:961 +#: ../src/ui/dialog/align-and-distribute.cpp:917 msgid "Make horizontal gaps between objects equal" msgstr "Distribuer des distances égales horizontalement entre les objets" -#: ../src/ui/dialog/align-and-distribute.cpp:965 +#: ../src/ui/dialog/align-and-distribute.cpp:921 msgid "Distribute left edges equidistantly" msgstr "Distribuer des distances égales entre les bords gauches des objets" -#: ../src/ui/dialog/align-and-distribute.cpp:968 +#: ../src/ui/dialog/align-and-distribute.cpp:924 msgid "Distribute centers equidistantly horizontally" -msgstr "Distribuer des distances égales horizontalement entre les centres des objets" +msgstr "" +"Distribuer des distances égales horizontalement entre les centres des objets" -#: ../src/ui/dialog/align-and-distribute.cpp:971 +#: ../src/ui/dialog/align-and-distribute.cpp:927 msgid "Distribute right edges equidistantly" msgstr "Distribuer des distances égales entre les bords droits des objets" -#: ../src/ui/dialog/align-and-distribute.cpp:975 +#: ../src/ui/dialog/align-and-distribute.cpp:931 msgid "Make vertical gaps between objects equal" msgstr "Distribuer des distances égales verticalement entre les objets " -#: ../src/ui/dialog/align-and-distribute.cpp:979 +#: ../src/ui/dialog/align-and-distribute.cpp:935 msgid "Distribute top edges equidistantly" msgstr "Distribuer des distances égales entre les bords supérieurs des objets" -#: ../src/ui/dialog/align-and-distribute.cpp:982 +#: ../src/ui/dialog/align-and-distribute.cpp:938 msgid "Distribute centers equidistantly vertically" -msgstr "Distribuer des distances égales verticalement entre les centres des objets" +msgstr "" +"Distribuer des distances égales verticalement entre les centres des objets" -#: ../src/ui/dialog/align-and-distribute.cpp:985 +#: ../src/ui/dialog/align-and-distribute.cpp:941 msgid "Distribute bottom edges equidistantly" msgstr "Distribuer des distances égales entre les bords inférieurs des objets" -#: ../src/ui/dialog/align-and-distribute.cpp:990 +#: ../src/ui/dialog/align-and-distribute.cpp:946 msgid "Distribute baseline anchors of texts horizontally" -msgstr "Distribuer des distances égales horizontalement entre les ancres des objets texte" +msgstr "" +"Distribuer des distances égales horizontalement entre les ancres des objets " +"texte" -#: ../src/ui/dialog/align-and-distribute.cpp:993 +#: ../src/ui/dialog/align-and-distribute.cpp:949 msgid "Distribute baselines of texts vertically" -msgstr "Distribuer des distances égales verticalement entre lignes de base des textes" +msgstr "" +"Distribuer des distances égales verticalement entre lignes de base des textes" -#: ../src/ui/dialog/align-and-distribute.cpp:999 -#: ../src/widgets/connector-toolbar.cpp:389 +#: ../src/ui/dialog/align-and-distribute.cpp:955 +#: ../src/widgets/connector-toolbar.cpp:385 msgid "Nicely arrange selected connector network" msgstr "Dispose le réseau de connecteurs sélectionnés de façon agréable" -#: ../src/ui/dialog/align-and-distribute.cpp:1002 +#: ../src/ui/dialog/align-and-distribute.cpp:958 msgid "Exchange positions of selected objects - selection order" msgstr "Échanger les positions des objets sélectionnés par ordre de sélection" -#: ../src/ui/dialog/align-and-distribute.cpp:1005 +#: ../src/ui/dialog/align-and-distribute.cpp:961 msgid "Exchange positions of selected objects - stacking order" msgstr "Échanger les positions des objets sélectionnés par ordre d'empilement" -#: ../src/ui/dialog/align-and-distribute.cpp:1008 +#: ../src/ui/dialog/align-and-distribute.cpp:964 msgid "Exchange positions of selected objects - clockwise rotate" msgstr "Échanger les positions des objets sélectionnés par rotation horaire" -#: ../src/ui/dialog/align-and-distribute.cpp:1013 +#: ../src/ui/dialog/align-and-distribute.cpp:969 msgid "Randomize centers in both dimensions" msgstr "Eparpiller aléatoirement les centres dans toutes les directions" -#: ../src/ui/dialog/align-and-distribute.cpp:1016 +#: ../src/ui/dialog/align-and-distribute.cpp:972 msgid "Unclump objects: try to equalize edge-to-edge distances" -msgstr "Éparpiller les objets : tenter d'uniformiser les distances de bord à bord" +msgstr "" +"Éparpiller les objets : tenter d'uniformiser les distances de bord à bord" -#: ../src/ui/dialog/align-and-distribute.cpp:1021 -msgid "Move objects as little as possible so that their bounding boxes do not overlap" -msgstr "Déplacer les objets aussi peu que possible afin que leurs boîtes englobantes ne se chevauchent pas" +#: ../src/ui/dialog/align-and-distribute.cpp:977 +msgid "" +"Move objects as little as possible so that their bounding boxes do not " +"overlap" +msgstr "" +"Déplacer les objets aussi peu que possible afin que leurs boîtes englobantes " +"ne se chevauchent pas" -#: ../src/ui/dialog/align-and-distribute.cpp:1029 +#: ../src/ui/dialog/align-and-distribute.cpp:985 msgid "Align selected nodes to a common horizontal line" msgstr "Aligner les nÅ“uds sélectionnés selon une ligne horizontale commune" -#: ../src/ui/dialog/align-and-distribute.cpp:1032 +#: ../src/ui/dialog/align-and-distribute.cpp:988 msgid "Align selected nodes to a common vertical line" msgstr "Aligner les nÅ“uds sélectionnés selon une ligne verticale commune" -#: ../src/ui/dialog/align-and-distribute.cpp:1035 +#: ../src/ui/dialog/align-and-distribute.cpp:991 msgid "Distribute selected nodes horizontally" -msgstr "Distribuer des distances égales horizontalement entre les nÅ“uds sélectionnés" +msgstr "" +"Distribuer des distances égales horizontalement entre les nÅ“uds sélectionnés" -#: ../src/ui/dialog/align-and-distribute.cpp:1038 +#: ../src/ui/dialog/align-and-distribute.cpp:994 msgid "Distribute selected nodes vertically" -msgstr "Distribuer des distances égales verticalement entre les nÅ“uds sélectionnés" +msgstr "" +"Distribuer des distances égales verticalement entre les nÅ“uds sélectionnés" #. Rest of the widgetry -#: ../src/ui/dialog/align-and-distribute.cpp:1043 +#: ../src/ui/dialog/align-and-distribute.cpp:999 msgid "Last selected" msgstr "Dernier sélectionné" -#: ../src/ui/dialog/align-and-distribute.cpp:1044 +#: ../src/ui/dialog/align-and-distribute.cpp:1000 msgid "First selected" msgstr "Premier sélectionné" -#: ../src/ui/dialog/align-and-distribute.cpp:1045 +#: ../src/ui/dialog/align-and-distribute.cpp:1001 msgid "Biggest object" msgstr "Objet le plus grand" -#: ../src/ui/dialog/align-and-distribute.cpp:1046 +#: ../src/ui/dialog/align-and-distribute.cpp:1002 msgid "Smallest object" msgstr "Objet le plus petit" -#: ../src/ui/dialog/align-and-distribute.cpp:1049 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1555 -#: ../src/verbs.cpp:174 -#: ../src/widgets/desktop-widget.cpp:2004 +#: ../src/ui/dialog/align-and-distribute.cpp:1005 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1555 ../src/verbs.cpp:175 +#: ../src/widgets/desktop-widget.cpp:2011 #: ../share/extensions/printing_marks.inx.h:18 msgid "Selection" msgstr "Sélection" @@ -13752,36 +13845,785 @@ msgstr "Enregistrement" msgid "Add profile" msgstr "Ajouter un profil" +#: ../src/ui/dialog/clonetiler.cpp:112 +msgid "_Symmetry" +msgstr "_Symétrie" + +#. TRANSLATORS: "translation" means "shift" / "displacement" here. +#: ../src/ui/dialog/clonetiler.cpp:124 +msgid "<b>P1</b>: simple translation" +msgstr "<b>P1</b> : translation" + +#: ../src/ui/dialog/clonetiler.cpp:125 +msgid "<b>P2</b>: 180° rotation" +msgstr "<b>P2</b> : rotation de 180°" + +#: ../src/ui/dialog/clonetiler.cpp:126 +msgid "<b>PM</b>: reflection" +msgstr "<b>PM</b> : réflexion" + +#. TRANSLATORS: "glide reflection" is a reflection and a translation combined. +#. For more info, see http://mathforum.org/sum95/suzanne/symsusan.html +#: ../src/ui/dialog/clonetiler.cpp:129 +msgid "<b>PG</b>: glide reflection" +msgstr "<b>PG</b> : réflexion glissée" + +#: ../src/ui/dialog/clonetiler.cpp:130 +msgid "<b>CM</b>: reflection + glide reflection" +msgstr "<b>CM</b> : réflexion + réflexion glissée" + +#: ../src/ui/dialog/clonetiler.cpp:131 +msgid "<b>PMM</b>: reflection + reflection" +msgstr "<b>PMM</b> : réflexion + réflexion" + +#: ../src/ui/dialog/clonetiler.cpp:132 +msgid "<b>PMG</b>: reflection + 180° rotation" +msgstr "<b>PMG</b> : réflexion + rotation de 180°" + +#: ../src/ui/dialog/clonetiler.cpp:133 +msgid "<b>PGG</b>: glide reflection + 180° rotation" +msgstr "<b>PGG</b> : réflexion glissée + rotation de 180°" + +#: ../src/ui/dialog/clonetiler.cpp:134 +msgid "<b>CMM</b>: reflection + reflection + 180° rotation" +msgstr "<b>CMM</b> : réflexion + réflexion + rotation de 180°" + +#: ../src/ui/dialog/clonetiler.cpp:135 +msgid "<b>P4</b>: 90° rotation" +msgstr "<b>P4</b> : rotation de 90°" + +#: ../src/ui/dialog/clonetiler.cpp:136 +msgid "<b>P4M</b>: 90° rotation + 45° reflection" +msgstr "<b>P4M</b> : rotation de 90° + réflexion à 45°" + +#: ../src/ui/dialog/clonetiler.cpp:137 +msgid "<b>P4G</b>: 90° rotation + 90° reflection" +msgstr "<b>P4G</b> : rotation de 90° + réflexion à 90°" + +#: ../src/ui/dialog/clonetiler.cpp:138 +msgid "<b>P3</b>: 120° rotation" +msgstr "<b>P3</b> : rotation de 120°" + +#: ../src/ui/dialog/clonetiler.cpp:139 +msgid "<b>P31M</b>: reflection + 120° rotation, dense" +msgstr "<b>P31M</b> : réflexion + rotation de 120°, dense" + +#: ../src/ui/dialog/clonetiler.cpp:140 +msgid "<b>P3M1</b>: reflection + 120° rotation, sparse" +msgstr "<b>P3M1</b> : réflexion + rotation de 120°, clairsemé" + +#: ../src/ui/dialog/clonetiler.cpp:141 +msgid "<b>P6</b>: 60° rotation" +msgstr "<b>P6</b> : rotation de 60°" + +#: ../src/ui/dialog/clonetiler.cpp:142 +msgid "<b>P6M</b>: reflection + 60° rotation" +msgstr "<b>P6M</b> : réflexion + rotation de 60°" + +# See: +# http://www.bib.ulb.ac.be/coursmath/doc/17.htm (visual examples) +# http://membres.lycos.fr/villemingerard/Geometri/Sym1D.htm (French vocabulary) +# http://www.clarku.edu/~djoyce/wallpaper/seventeen.html (English vocabulary) +#: ../src/ui/dialog/clonetiler.cpp:162 +msgid "Select one of the 17 symmetry groups for the tiling" +msgstr "Sélectionner l'un de ces 17 groupes de symétrie pour le pavage" + +#: ../src/ui/dialog/clonetiler.cpp:180 +msgid "S_hift" +msgstr "_Translation" + +#. TRANSLATORS: "shift" means: the tiles will be shifted (offset) horizontally by this amount +#: ../src/ui/dialog/clonetiler.cpp:190 +#, no-c-format +msgid "<b>Shift X:</b>" +msgstr "<b>Translation X :</b>" + +#: ../src/ui/dialog/clonetiler.cpp:198 +#, no-c-format +msgid "Horizontal shift per row (in % of tile width)" +msgstr "" +"Translation horizontale à chaque ligne (en % de la largeur du pavé de base)" + +#: ../src/ui/dialog/clonetiler.cpp:206 +#, no-c-format +msgid "Horizontal shift per column (in % of tile width)" +msgstr "" +"Translation horizontale à chaque colonne (en % de la largeur du pavé de base)" + +#: ../src/ui/dialog/clonetiler.cpp:212 +msgid "Randomize the horizontal shift by this percentage" +msgstr "Introduire ce pourcentage de hasard dans la translation horizontale" + +#. TRANSLATORS: "shift" means: the tiles will be shifted (offset) vertically by this amount +#: ../src/ui/dialog/clonetiler.cpp:222 +#, no-c-format +msgid "<b>Shift Y:</b>" +msgstr "<b>Translation Y :</b>" + +#: ../src/ui/dialog/clonetiler.cpp:230 +#, no-c-format +msgid "Vertical shift per row (in % of tile height)" +msgstr "" +"Translation verticale à chaque ligne (en % de la hauteur du pavé de base)" + +#: ../src/ui/dialog/clonetiler.cpp:238 +#, no-c-format +msgid "Vertical shift per column (in % of tile height)" +msgstr "" +"Translation verticale à chaque colonne (en % de la hauteur du pavé de base)" + +#: ../src/ui/dialog/clonetiler.cpp:245 +msgid "Randomize the vertical shift by this percentage" +msgstr "Introduire ce pourcentage de hasard dans la translation verticale" + +#: ../src/ui/dialog/clonetiler.cpp:253 ../src/ui/dialog/clonetiler.cpp:399 +msgid "<b>Exponent:</b>" +msgstr "<b>Exposant :</b>" + +#: ../src/ui/dialog/clonetiler.cpp:260 +msgid "Whether rows are spaced evenly (1), converge (<1) or diverge (>1)" +msgstr "" +"Selon la valeur, l'inter ligne reste constant (1), converge (<1) ou diverge " +"(>1) " + +#: ../src/ui/dialog/clonetiler.cpp:267 +msgid "Whether columns are spaced evenly (1), converge (<1) or diverge (>1)" +msgstr "" +"Selon la valeur, l'inter colonne reste constant (1), converge (<1) ou " +"diverge (>1) " + +#. TRANSLATORS: "Alternate" is a verb here +#: ../src/ui/dialog/clonetiler.cpp:275 ../src/ui/dialog/clonetiler.cpp:439 +#: ../src/ui/dialog/clonetiler.cpp:515 ../src/ui/dialog/clonetiler.cpp:588 +#: ../src/ui/dialog/clonetiler.cpp:634 ../src/ui/dialog/clonetiler.cpp:761 +msgid "<small>Alternate:</small>" +msgstr "<small>Alterner :</small>" + +#: ../src/ui/dialog/clonetiler.cpp:281 +msgid "Alternate the sign of shifts for each row" +msgstr "Alterner le signe de la translation à chaque ligne" + +#: ../src/ui/dialog/clonetiler.cpp:286 +msgid "Alternate the sign of shifts for each column" +msgstr "Alterner le signe de la translation à chaque colonne" + +#. TRANSLATORS: "Cumulate" is a verb here +#: ../src/ui/dialog/clonetiler.cpp:293 ../src/ui/dialog/clonetiler.cpp:457 +#: ../src/ui/dialog/clonetiler.cpp:533 +msgid "<small>Cumulate:</small>" +msgstr "<small>Cumulatif :</small>" + +#: ../src/ui/dialog/clonetiler.cpp:299 +msgid "Cumulate the shifts for each row" +msgstr "Décalage cumulatif des lignes" + +#: ../src/ui/dialog/clonetiler.cpp:304 +msgid "Cumulate the shifts for each column" +msgstr "Décalage cumulatif des colonnes" + +#. TRANSLATORS: "Cumulate" is a verb here +#: ../src/ui/dialog/clonetiler.cpp:311 +msgid "<small>Exclude tile:</small>" +msgstr "<small>Exclure la taille du pavé :</small>" + +#: ../src/ui/dialog/clonetiler.cpp:317 +msgid "Exclude tile height in shift" +msgstr "Ne pas ajouter la hauteur du pavé au décalage" + +#: ../src/ui/dialog/clonetiler.cpp:322 +msgid "Exclude tile width in shift" +msgstr "Ne pas ajouter la largeur du pavé au décalage" + +#: ../src/ui/dialog/clonetiler.cpp:331 +msgid "Sc_ale" +msgstr "_Dimensions" + +#: ../src/ui/dialog/clonetiler.cpp:339 +msgid "<b>Scale X:</b>" +msgstr "<b>Échelle X :</b>" + +#: ../src/ui/dialog/clonetiler.cpp:347 +#, no-c-format +msgid "Horizontal scale per row (in % of tile width)" +msgstr "" +"Redimensionnement horizontal à chaque ligne (en % de la largeur du pavé de " +"base)" + +#: ../src/ui/dialog/clonetiler.cpp:355 +#, no-c-format +msgid "Horizontal scale per column (in % of tile width)" +msgstr "" +"Redimensionnement horizontal à chaque colonne (en % de la largeur du pavé de " +"base)" + +#: ../src/ui/dialog/clonetiler.cpp:361 +msgid "Randomize the horizontal scale by this percentage" +msgstr "" +"Introduire ce pourcentage de hasard dans le redimensionnement horizontal" + +#: ../src/ui/dialog/clonetiler.cpp:369 +msgid "<b>Scale Y:</b>" +msgstr "<b>Échelle Y :</b>" + +#: ../src/ui/dialog/clonetiler.cpp:377 +#, no-c-format +msgid "Vertical scale per row (in % of tile height)" +msgstr "" +"Redimensionnement vertical à chaque ligne (en % de la hauteur du pavé de " +"base)" + +#: ../src/ui/dialog/clonetiler.cpp:385 +#, no-c-format +msgid "Vertical scale per column (in % of tile height)" +msgstr "" +"Redimensionnement vertical à chaque colonne (en % de la largeur du pavé de " +"base)" + +#: ../src/ui/dialog/clonetiler.cpp:391 +msgid "Randomize the vertical scale by this percentage" +msgstr "Introduire ce pourcentage de hasard dans le redimensionnement vertical" + +#: ../src/ui/dialog/clonetiler.cpp:405 +msgid "Whether row scaling is uniform (1), converge (<1) or diverge (>1)" +msgstr "" +"Selon la valeur, le redimensionnement des lignes est uniforme (1), converge " +"(<1) ou diverge (>1) " + +#: ../src/ui/dialog/clonetiler.cpp:411 +msgid "Whether column scaling is uniform (1), converge (<1) or diverge (>1)" +msgstr "" +"Selon la valeur, le redimensionnement des colonnes est uniforme (1), " +"converge (<1) ou diverge (>1) " + +#: ../src/ui/dialog/clonetiler.cpp:419 +msgid "<b>Base:</b>" +msgstr "<b>Base :</b>" + +#: ../src/ui/dialog/clonetiler.cpp:425 ../src/ui/dialog/clonetiler.cpp:431 +msgid "" +"Base for a logarithmic spiral: not used (0), converge (<1), or diverge (>1)" +msgstr "" +"Base pour une spirale logarithmique : inutilisée (0), converge (<1), ou " +"diverge (>1)" + +#: ../src/ui/dialog/clonetiler.cpp:445 +msgid "Alternate the sign of scales for each row" +msgstr "Alterner le signe du redimensionnement à chaque ligne" + +#: ../src/ui/dialog/clonetiler.cpp:450 +msgid "Alternate the sign of scales for each column" +msgstr "Alterner le signe du redimensionnement à chaque colonne" + +#: ../src/ui/dialog/clonetiler.cpp:463 +msgid "Cumulate the scales for each row" +msgstr "Cumuler le redimensionnement à chaque ligne" + +#: ../src/ui/dialog/clonetiler.cpp:468 +msgid "Cumulate the scales for each column" +msgstr "Cumuler le redimensionnement à chaque colonne" + +#: ../src/ui/dialog/clonetiler.cpp:477 +msgid "_Rotation" +msgstr "_Rotation" + +#: ../src/ui/dialog/clonetiler.cpp:485 +msgid "<b>Angle:</b>" +msgstr "<b>Angle :</b>" + +#: ../src/ui/dialog/clonetiler.cpp:493 +#, no-c-format +msgid "Rotate tiles by this angle for each row" +msgstr "Faire tourner les pavés de cet angle à chaque ligne" + +#: ../src/ui/dialog/clonetiler.cpp:501 +#, no-c-format +msgid "Rotate tiles by this angle for each column" +msgstr "Faire tourner les pavés de cet angle à chaque colonne" + +#: ../src/ui/dialog/clonetiler.cpp:507 +msgid "Randomize the rotation angle by this percentage" +msgstr "Introduire ce pourcentage de hasard dans l'angle de rotation" + +#: ../src/ui/dialog/clonetiler.cpp:521 +msgid "Alternate the rotation direction for each row" +msgstr "Alterner le sens de la rotation à chaque ligne" + +#: ../src/ui/dialog/clonetiler.cpp:526 +msgid "Alternate the rotation direction for each column" +msgstr "Alterner le sens de la rotation à chaque colonne" + +#: ../src/ui/dialog/clonetiler.cpp:539 +msgid "Cumulate the rotation for each row" +msgstr "Cumuler l'angle de rotation à chaque ligne" + +#: ../src/ui/dialog/clonetiler.cpp:544 +msgid "Cumulate the rotation for each column" +msgstr "Cumuler l'angle de rotation à chaque colonne" + +#: ../src/ui/dialog/clonetiler.cpp:553 +msgid "_Blur & opacity" +msgstr "_Flou & opacité" + +#: ../src/ui/dialog/clonetiler.cpp:562 +msgid "<b>Blur:</b>" +msgstr "<b>Flou :</b>" + +#: ../src/ui/dialog/clonetiler.cpp:568 +msgid "Blur tiles by this percentage for each row" +msgstr "Rendre les pavés flous de ce pourcentage à chaque ligne" + +#: ../src/ui/dialog/clonetiler.cpp:574 +msgid "Blur tiles by this percentage for each column" +msgstr "Rendre les pavés flous de ce pourcentage à chaque colonne" + +#: ../src/ui/dialog/clonetiler.cpp:580 +msgid "Randomize the tile blur by this percentage" +msgstr "Introduire ce pourcentage de hasard dans le flou" + +#: ../src/ui/dialog/clonetiler.cpp:594 +msgid "Alternate the sign of blur change for each row" +msgstr "Alterner le signe de la modification de flou à chaque ligne" + +#: ../src/ui/dialog/clonetiler.cpp:599 +msgid "Alternate the sign of blur change for each column" +msgstr "Alterner le signe de la modification de flou à chaque colonne" + +#: ../src/ui/dialog/clonetiler.cpp:608 +msgid "<b>Opacity:</b>" +msgstr "<b>Opacité :</b>" + +#: ../src/ui/dialog/clonetiler.cpp:614 +msgid "Decrease tile opacity by this percentage for each row" +msgstr "Diminuer l'opacité des pavés de ce pourcentage à chaque ligne" + +#: ../src/ui/dialog/clonetiler.cpp:620 +msgid "Decrease tile opacity by this percentage for each column" +msgstr "Diminuer l'opacité des pavés de ce pourcentage à chaque colonne" + +#: ../src/ui/dialog/clonetiler.cpp:626 +msgid "Randomize the tile opacity by this percentage" +msgstr "Introduire ce pourcentage de hasard dans l'opacité" + +#: ../src/ui/dialog/clonetiler.cpp:640 +msgid "Alternate the sign of opacity change for each row" +msgstr "Alterner le signe de la modification d'opacité à chaque ligne" + +#: ../src/ui/dialog/clonetiler.cpp:645 +msgid "Alternate the sign of opacity change for each column" +msgstr "Alterner le signe de la modification d'opacité à chaque colonne" + +#: ../src/ui/dialog/clonetiler.cpp:653 +msgid "Co_lor" +msgstr "Cou_leur" + +#: ../src/ui/dialog/clonetiler.cpp:663 +msgid "Initial color: " +msgstr "Couleur initiale :" + +#: ../src/ui/dialog/clonetiler.cpp:667 +msgid "Initial color of tiled clones" +msgstr "Couleur initiale des clones de pavage" + +#: ../src/ui/dialog/clonetiler.cpp:667 +msgid "" +"Initial color for clones (works only if the original has unset fill or " +"stroke)" +msgstr "" +"Couleur initiale pour les clones (ne fonctionne que si l'original a un " +"remplissage ou un contour indéfini)" + +#: ../src/ui/dialog/clonetiler.cpp:682 +msgid "<b>H:</b>" +msgstr "<b>T :</b>" + +#: ../src/ui/dialog/clonetiler.cpp:688 +msgid "Change the tile hue by this percentage for each row" +msgstr "Modifier la teinte des pavés de ce pourcentage à chaque ligne" + +#: ../src/ui/dialog/clonetiler.cpp:694 +msgid "Change the tile hue by this percentage for each column" +msgstr "Modifier la teinte des pavés de ce pourcentage à chaque colonne" + +#: ../src/ui/dialog/clonetiler.cpp:700 +msgid "Randomize the tile hue by this percentage" +msgstr "Introduire ce pourcentage de hasard dans la modification de teinte" + +#: ../src/ui/dialog/clonetiler.cpp:709 +msgid "<b>S:</b>" +msgstr "<b>S :</b>" + +#: ../src/ui/dialog/clonetiler.cpp:715 +msgid "Change the color saturation by this percentage for each row" +msgstr "Modifier la saturation des pavés de ce pourcentage à chaque ligne" + +#: ../src/ui/dialog/clonetiler.cpp:721 +msgid "Change the color saturation by this percentage for each column" +msgstr "Modifier la saturation des pavés de ce pourcentage à chaque colonne" + +#: ../src/ui/dialog/clonetiler.cpp:727 +msgid "Randomize the color saturation by this percentage" +msgstr "Introduire ce pourcentage de hasard dans la modification de saturation" + +#: ../src/ui/dialog/clonetiler.cpp:735 +msgid "<b>L:</b>" +msgstr "<b>L :</b>" + +#: ../src/ui/dialog/clonetiler.cpp:741 +msgid "Change the color lightness by this percentage for each row" +msgstr "Modifier la luminosité des pavés de ce pourcentage à chaque ligne" + +#: ../src/ui/dialog/clonetiler.cpp:747 +msgid "Change the color lightness by this percentage for each column" +msgstr "Modifier la luminosité des pavés de ce pourcentage à chaque colonne" + +#: ../src/ui/dialog/clonetiler.cpp:753 +msgid "Randomize the color lightness by this percentage" +msgstr "Introduire ce pourcentage de hasard dans la modification de luminosité" + +#: ../src/ui/dialog/clonetiler.cpp:767 +msgid "Alternate the sign of color changes for each row" +msgstr "Alterner le signe de la modification de couleur à chaque ligne" + +#: ../src/ui/dialog/clonetiler.cpp:772 +msgid "Alternate the sign of color changes for each column" +msgstr "Alterner le signe de la modification de couleur à chaque colonne" + +#: ../src/ui/dialog/clonetiler.cpp:780 +msgid "_Trace" +msgstr "_Calquer" + +#: ../src/ui/dialog/clonetiler.cpp:792 +msgid "Trace the drawing under the tiles" +msgstr "Calquer depuis le dessin sous les pavés" + +#: ../src/ui/dialog/clonetiler.cpp:796 +msgid "" +"For each clone, pick a value from the drawing in that clone's location and " +"apply it to the clone" +msgstr "" +"Pour chaque clone, capturer une valeur du dessin à l'emplacement du clone et " +"l'appliquer au clone" + +#: ../src/ui/dialog/clonetiler.cpp:815 +msgid "1. Pick from the drawing:" +msgstr "1. Capturer depuis le dessin :" + +#: ../src/ui/dialog/clonetiler.cpp:833 +msgid "Pick the visible color and opacity" +msgstr "Capturer la couleur et l'opacité visibles" + +#: ../src/ui/dialog/clonetiler.cpp:841 +msgid "Pick the total accumulated opacity" +msgstr "Capturer l'opacité cumulée" + +# Red (in RGB) +#: ../src/ui/dialog/clonetiler.cpp:848 +msgid "R" +msgstr "R" + +#: ../src/ui/dialog/clonetiler.cpp:849 +msgid "Pick the Red component of the color" +msgstr "Capturer la composante Rouge de la couleur" + +# Green (in RGB) +#: ../src/ui/dialog/clonetiler.cpp:856 +msgid "G" +msgstr "V" + +#: ../src/ui/dialog/clonetiler.cpp:857 +msgid "Pick the Green component of the color" +msgstr "Capturer la composante Verte de la couleur" + +# Blue (in RGB) +#: ../src/ui/dialog/clonetiler.cpp:864 +msgid "B" +msgstr "B" + +#: ../src/ui/dialog/clonetiler.cpp:865 +msgid "Pick the Blue component of the color" +msgstr "Capturer la composante Bleue de la couleur" + +#: ../src/ui/dialog/clonetiler.cpp:872 +msgctxt "Clonetiler color hue" +msgid "H" +msgstr "T" + +#: ../src/ui/dialog/clonetiler.cpp:873 +msgid "Pick the hue of the color" +msgstr "Capturer la teinte de la couleur" + +# Saturation (in HSL) +#: ../src/ui/dialog/clonetiler.cpp:880 +msgctxt "Clonetiler color saturation" +msgid "S" +msgstr "S" + +#: ../src/ui/dialog/clonetiler.cpp:881 +msgid "Pick the saturation of the color" +msgstr "Capturer la saturation de la couleur" + +# Luminosity (in HSL) +#: ../src/ui/dialog/clonetiler.cpp:888 +msgctxt "Clonetiler color lightness" +msgid "L" +msgstr "L" + +#: ../src/ui/dialog/clonetiler.cpp:889 +msgid "Pick the lightness of the color" +msgstr "Capturer la luminosité de la couleur" + +#: ../src/ui/dialog/clonetiler.cpp:899 +msgid "2. Tweak the picked value:" +msgstr "2. Modifier la valeur capturée" + +#: ../src/ui/dialog/clonetiler.cpp:916 +msgid "Gamma-correct:" +msgstr "Corriger le Gamma" + +#: ../src/ui/dialog/clonetiler.cpp:920 +msgid "Shift the mid-range of the picked value upwards (>0) or downwards (<0)" +msgstr "" +"Décaler le milieu de la valeur capturée vers le haut (>0) ou vers le bas (<0)" + +#: ../src/ui/dialog/clonetiler.cpp:927 +msgid "Randomize:" +msgstr "Hasard :" + +#: ../src/ui/dialog/clonetiler.cpp:931 +msgid "Randomize the picked value by this percentage" +msgstr "Introduire ce pourcentage de hasard dans la capture de la valeur" + +#: ../src/ui/dialog/clonetiler.cpp:938 +msgid "Invert:" +msgstr "Inverser :" + +#: ../src/ui/dialog/clonetiler.cpp:942 +msgid "Invert the picked value" +msgstr "Inverser la valeur capturée" + +#: ../src/ui/dialog/clonetiler.cpp:948 +msgid "3. Apply the value to the clones':" +msgstr "3. Appliquer la valeur aux clones :" + +#: ../src/ui/dialog/clonetiler.cpp:963 +msgid "Presence" +msgstr "Présence" + +#: ../src/ui/dialog/clonetiler.cpp:966 +msgid "" +"Each clone is created with the probability determined by the picked value in " +"that point" +msgstr "" +"Chaque clone est créé selon une probabilité déterminée par la valeur " +"capturée en ce point" + +#: ../src/ui/dialog/clonetiler.cpp:973 +msgid "Size" +msgstr "Dimensions" + +#: ../src/ui/dialog/clonetiler.cpp:976 +msgid "Each clone's size is determined by the picked value in that point" +msgstr "" +"Les dimensions de chaque clone sont déterminées selon la valeur capturée en " +"ce point " + +#: ../src/ui/dialog/clonetiler.cpp:986 +msgid "" +"Each clone is painted by the picked color (the original must have unset fill " +"or stroke)" +msgstr "" +"Chaque clone est peint selon la couleur capturée (l'original doit avoir un " +"remplissage ou un contour indéfini)" + +#: ../src/ui/dialog/clonetiler.cpp:996 +msgid "Each clone's opacity is determined by the picked value in that point" +msgstr "" +"L'opacité de chaque clone est déterminée par la valeur capturée en ce point" + +#: ../src/ui/dialog/clonetiler.cpp:1044 +msgid "How many rows in the tiling" +msgstr "Nombre de lignes du pavage" + +#: ../src/ui/dialog/clonetiler.cpp:1074 +msgid "How many columns in the tiling" +msgstr "Nombre de colonnes du pavage" + +#: ../src/ui/dialog/clonetiler.cpp:1119 +msgid "Width of the rectangle to be filled" +msgstr "Largeur du rectangle à remplir" + +#: ../src/ui/dialog/clonetiler.cpp:1152 +msgid "Height of the rectangle to be filled" +msgstr "Hauteur du rectangle à remplir" + +#: ../src/ui/dialog/clonetiler.cpp:1169 +msgid "Rows, columns: " +msgstr "Lignes, colonnes :" + +#: ../src/ui/dialog/clonetiler.cpp:1170 +msgid "Create the specified number of rows and columns" +msgstr "Créer le nombre spécifié de lignes et de colonnes" + +#: ../src/ui/dialog/clonetiler.cpp:1179 +msgid "Width, height: " +msgstr "Largeur, hauteur :" + +#: ../src/ui/dialog/clonetiler.cpp:1180 +msgid "Fill the specified width and height with the tiling" +msgstr "Remplir avec le pavage selon la hauteur et la largeur spécifiées" + +#: ../src/ui/dialog/clonetiler.cpp:1201 +msgid "Use saved size and position of the tile" +msgstr "Utiliser les dimensions et position enregistrées du pavage" + +#: ../src/ui/dialog/clonetiler.cpp:1204 +msgid "" +"Pretend that the size and position of the tile are the same as the last time " +"you tiled it (if any), instead of using the current size" +msgstr "" +"Utiliser les mêmes dimensions et position de pavés que lors du pavage " +"précédent (si possible), au lieu d'utiliser les paramètres courants" + +#: ../src/ui/dialog/clonetiler.cpp:1238 +msgid " <b>_Create</b> " +msgstr " <b>_Créer</b> " + +#: ../src/ui/dialog/clonetiler.cpp:1240 +msgid "Create and tile the clones of the selection" +msgstr "Créer des clones et paver la sélection avec" + +#. TRANSLATORS: if a group of objects are "clumped" together, then they +#. are unevenly spread in the given amount of space - as shown in the +#. diagrams on the left in the following screenshot: +#. http://www.inkscape.org/screenshots/gallery/inkscape-0.42-CVS-tiles-unclump.png +#. So unclumping is the process of spreading a number of objects out more evenly. +#: ../src/ui/dialog/clonetiler.cpp:1260 +msgid " _Unclump " +msgstr "É_parpiller" + +#: ../src/ui/dialog/clonetiler.cpp:1261 +msgid "Spread out clones to reduce clumping; can be applied repeatedly" +msgstr "" +"Disperser les clones de façon à reduire le rassemblement; peut être appliqué " +"plusieurs fois" + +#: ../src/ui/dialog/clonetiler.cpp:1267 +msgid " Re_move " +msgstr "_Supprimer" + +#: ../src/ui/dialog/clonetiler.cpp:1268 +msgid "Remove existing tiled clones of the selected object (siblings only)" +msgstr "" +"Retirer les clones de pavage de l'objet sélectionné (seulement les « enfants " +"de mêmes parents »)" + +#: ../src/ui/dialog/clonetiler.cpp:1284 +msgid " R_eset " +msgstr " R-à -_z" + +#. TRANSLATORS: "change" is a noun here +#: ../src/ui/dialog/clonetiler.cpp:1286 +msgid "" +"Reset all shifts, scales, rotates, opacity and color changes in the dialog " +"to zero" +msgstr "" +"Remise à zéro de tous les décalages, redimensionnements, rotation et " +"opacités dans la boîte de dialogue" + +#: ../src/ui/dialog/clonetiler.cpp:1359 +msgid "<small>Nothing selected.</small>" +msgstr "<small>Aucune sélection.</small>" + +#: ../src/ui/dialog/clonetiler.cpp:1365 +msgid "<small>More than one object selected.</small>" +msgstr "<small>Plus d'un objet est sélectionné.</small>" + +#: ../src/ui/dialog/clonetiler.cpp:1372 +#, c-format +msgid "<small>Object has <b>%d</b> tiled clones.</small>" +msgstr "<small>L'objet possède <b>%d</b> clones de pavage.</small>" + +#: ../src/ui/dialog/clonetiler.cpp:1377 +msgid "<small>Object has no tiled clones.</small>" +msgstr "<small>L'objet ne possède aucun clone de pavage.</small>" + +#: ../src/ui/dialog/clonetiler.cpp:2097 +msgid "Select <b>one object</b> whose tiled clones to unclump." +msgstr "Sélectionner <b>un objet</b> pour en éparpiller les clones de pavage." + +#: ../src/ui/dialog/clonetiler.cpp:2119 +msgid "Unclump tiled clones" +msgstr "Éparpiller les clones de pavage" + +#: ../src/ui/dialog/clonetiler.cpp:2148 +msgid "Select <b>one object</b> whose tiled clones to remove." +msgstr "Sélectionner <b>un objet</b> pour en retirer les clones de pavage." + +#: ../src/ui/dialog/clonetiler.cpp:2171 +msgid "Delete tiled clones" +msgstr "Supprimer les clones de pavage" + +#: ../src/ui/dialog/clonetiler.cpp:2224 +msgid "" +"If you want to clone several objects, <b>group</b> them and <b>clone the " +"group</b>." +msgstr "" +"Si vous voulez cloner plusieurs objets, <b>groupez</b>-les puis <b>clonez le " +"groupe</b>." + +#: ../src/ui/dialog/clonetiler.cpp:2233 +msgid "<small>Creating tiled clones...</small>" +msgstr "<small>Création d'un pavage de clones...</small>" + +#: ../src/ui/dialog/clonetiler.cpp:2638 +msgid "Create tiled clones" +msgstr "Créer un pavage avec des clones" + +#: ../src/ui/dialog/clonetiler.cpp:2871 +msgid "<small>Per row:</small>" +msgstr "<small>Par ligne :</small>" + +#: ../src/ui/dialog/clonetiler.cpp:2889 +msgid "<small>Per column:</small>" +msgstr "<small>Par colonne :</small>" + +#: ../src/ui/dialog/clonetiler.cpp:2897 +msgid "<small>Randomize:</small>" +msgstr "<small>Hasard :</small>" + #: ../src/ui/dialog/color-item.cpp:131 #, c-format -msgid "Color: <b>%s</b>; <b>Click</b> to set fill, <b>Shift+click</b> to set stroke" -msgstr "Couleur : <b>%s</b> ; <b>Clic</b> pour définir le remplissage, <b>Maj + clic</b> pour définir le contour" +msgid "" +"Color: <b>%s</b>; <b>Click</b> to set fill, <b>Shift+click</b> to set stroke" +msgstr "" +"Couleur : <b>%s</b> ; <b>Clic</b> pour définir le remplissage, <b>Maj + " +"clic</b> pour définir le contour" -#: ../src/ui/dialog/color-item.cpp:513 +#: ../src/ui/dialog/color-item.cpp:509 msgid "Change color definition" msgstr "Modifier la définition de la couleur" -#: ../src/ui/dialog/color-item.cpp:687 +#: ../src/ui/dialog/color-item.cpp:679 msgid "Remove stroke color" msgstr "Supprimer la couleur du contour" -#: ../src/ui/dialog/color-item.cpp:687 +#: ../src/ui/dialog/color-item.cpp:679 msgid "Remove fill color" msgstr "Supprimer la couleur de remplissage" -#: ../src/ui/dialog/color-item.cpp:692 +#: ../src/ui/dialog/color-item.cpp:684 msgid "Set stroke color to none" msgstr "Appliquer une couleur de contour nulle" -#: ../src/ui/dialog/color-item.cpp:692 +#: ../src/ui/dialog/color-item.cpp:684 msgid "Set fill color to none" msgstr "Appliquer une couleur de remplissage nulle" -#: ../src/ui/dialog/color-item.cpp:708 +#: ../src/ui/dialog/color-item.cpp:700 msgid "Set stroke color from swatch" msgstr "Appliquer une couleur de contour à partir de l'échantillon" -#: ../src/ui/dialog/color-item.cpp:708 +#: ../src/ui/dialog/color-item.cpp:700 msgid "Set fill color from swatch" msgstr "Appliquer une couleur de remplissage à partir de l'échantillon" @@ -13789,14 +14631,11 @@ msgstr "Appliquer une couleur de remplissage à partir de l'échantillon" msgid "Messages" msgstr "Messages" -#: ../src/ui/dialog/debug.cpp:87 -#: ../src/ui/dialog/messages.cpp:47 -#: ../src/ui/dialog/scriptdialog.cpp:182 +#: ../src/ui/dialog/debug.cpp:87 ../src/ui/dialog/messages.cpp:47 msgid "_Clear" msgstr "Effa_cer" -#: ../src/ui/dialog/debug.cpp:91 -#: ../src/ui/dialog/messages.cpp:48 +#: ../src/ui/dialog/debug.cpp:91 ../src/ui/dialog/messages.cpp:48 msgid "Capture log messages" msgstr "Capturer les messages de log" @@ -13805,275 +14644,303 @@ msgid "Release log messages" msgstr "Détacher les messages de log" #: ../src/ui/dialog/document-metadata.cpp:88 -#: ../src/ui/dialog/document-properties.cpp:152 +#: ../src/ui/dialog/document-properties.cpp:155 msgid "Metadata" msgstr "Métadonnées" #: ../src/ui/dialog/document-metadata.cpp:89 -#: ../src/ui/dialog/document-properties.cpp:153 +#: ../src/ui/dialog/document-properties.cpp:156 msgid "License" msgstr "Licence" #: ../src/ui/dialog/document-metadata.cpp:126 -#: ../src/ui/dialog/document-properties.cpp:960 +#: ../src/ui/dialog/document-properties.cpp:966 msgid "<b>Dublin Core Entities</b>" msgstr "<b>Entités Dublin Core</b>" #: ../src/ui/dialog/document-metadata.cpp:168 -#: ../src/ui/dialog/document-properties.cpp:1022 +#: ../src/ui/dialog/document-properties.cpp:1028 msgid "<b>License</b>" msgstr "<b>Licence</b>" #. --------------------------------------------------------------- -#: ../src/ui/dialog/document-properties.cpp:105 +#: ../src/ui/dialog/document-properties.cpp:108 msgid "Show page _border" msgstr "Afficher la _bordure de page" -#: ../src/ui/dialog/document-properties.cpp:105 +#: ../src/ui/dialog/document-properties.cpp:108 msgid "If set, rectangular page border is shown" msgstr "Si coché, la bordure rectangulaire de la page est affichée" -#: ../src/ui/dialog/document-properties.cpp:106 +#: ../src/ui/dialog/document-properties.cpp:109 msgid "Border on _top of drawing" msgstr "Bordure au-_dessus du dessin" -#: ../src/ui/dialog/document-properties.cpp:106 +#: ../src/ui/dialog/document-properties.cpp:109 msgid "If set, border is always on top of the drawing" msgstr "Si coché, la bordure est toujours au-dessus du dessin" -#: ../src/ui/dialog/document-properties.cpp:107 +#: ../src/ui/dialog/document-properties.cpp:110 msgid "_Show border shadow" msgstr "_Afficher une ombre de bordure" -#: ../src/ui/dialog/document-properties.cpp:107 +#: ../src/ui/dialog/document-properties.cpp:110 msgid "If set, page border shows a shadow on its right and lower side" msgstr "Si coché, la bordure de page est ombrée en bas et à droite" -#: ../src/ui/dialog/document-properties.cpp:108 +#: ../src/ui/dialog/document-properties.cpp:111 msgid "Back_ground color:" msgstr "Couleur de _fond :" -#: ../src/ui/dialog/document-properties.cpp:108 -msgid "Color of the page background. Note: transparency setting ignored while editing but used when exporting to bitmap." +#: ../src/ui/dialog/document-properties.cpp:111 +msgid "" +"Color of the page background. Note: transparency setting ignored while " +"editing but used when exporting to bitmap." msgstr "" -#: ../src/ui/dialog/document-properties.cpp:109 +#: ../src/ui/dialog/document-properties.cpp:112 msgid "Border _color:" msgstr "_Couleur de la bordure :" -#: ../src/ui/dialog/document-properties.cpp:109 +#: ../src/ui/dialog/document-properties.cpp:112 msgid "Page border color" msgstr "Couleur de bordure de page" -#: ../src/ui/dialog/document-properties.cpp:109 +#: ../src/ui/dialog/document-properties.cpp:112 msgid "Color of the page border" msgstr "Couleur de bordure de page" -#: ../src/ui/dialog/document-properties.cpp:110 +#: ../src/ui/dialog/document-properties.cpp:113 msgid "Default _units:" msgstr "_Unités par défaut :" #. --------------------------------------------------------------- #. General snap options -#: ../src/ui/dialog/document-properties.cpp:114 +#: ../src/ui/dialog/document-properties.cpp:117 msgid "Show _guides" msgstr "Afficher les _guides" -#: ../src/ui/dialog/document-properties.cpp:114 +#: ../src/ui/dialog/document-properties.cpp:117 msgid "Show or hide guides" msgstr "Afficher ou non les guides" -#: ../src/ui/dialog/document-properties.cpp:115 +#: ../src/ui/dialog/document-properties.cpp:118 msgid "Guide co_lor:" msgstr "Cou_leur des guides :" -#: ../src/ui/dialog/document-properties.cpp:115 +#: ../src/ui/dialog/document-properties.cpp:118 msgid "Guideline color" msgstr "Couleur des lignes de guide" -#: ../src/ui/dialog/document-properties.cpp:115 +#: ../src/ui/dialog/document-properties.cpp:118 msgid "Color of guidelines" msgstr "Couleur des lignes de guide" -#: ../src/ui/dialog/document-properties.cpp:116 +#: ../src/ui/dialog/document-properties.cpp:119 msgid "_Highlight color:" msgstr "Couleur d'emp_hase :" -#: ../src/ui/dialog/document-properties.cpp:116 +#: ../src/ui/dialog/document-properties.cpp:119 msgid "Highlighted guideline color" msgstr "Couleur d'emphase des lignes de guide" -#: ../src/ui/dialog/document-properties.cpp:116 +#: ../src/ui/dialog/document-properties.cpp:119 msgid "Color of a guideline when it is under mouse" -msgstr "Couleur d'une ligne de guide quand elle est sous le curseur de la souris" +msgstr "" +"Couleur d'une ligne de guide quand elle est sous le curseur de la souris" #. --------------------------------------------------------------- -#: ../src/ui/dialog/document-properties.cpp:118 +#: ../src/ui/dialog/document-properties.cpp:121 msgid "Snap _distance" msgstr "Distance d'attraction" -#: ../src/ui/dialog/document-properties.cpp:118 +#: ../src/ui/dialog/document-properties.cpp:121 msgid "Snap only when _closer than:" msgstr "Aimanter seulement à moins d'une distance de :" -#: ../src/ui/dialog/document-properties.cpp:118 -#: ../src/ui/dialog/document-properties.cpp:123 -#: ../src/ui/dialog/document-properties.cpp:128 +#: ../src/ui/dialog/document-properties.cpp:121 +#: ../src/ui/dialog/document-properties.cpp:126 +#: ../src/ui/dialog/document-properties.cpp:131 msgid "Always snap" msgstr "Toujours aimanter" -#: ../src/ui/dialog/document-properties.cpp:119 +#: ../src/ui/dialog/document-properties.cpp:122 msgid "Snapping distance, in screen pixels, for snapping to objects" msgstr "Distance d'attraction, en pixels d'écran, pour aimanter aux objets" -#: ../src/ui/dialog/document-properties.cpp:119 +#: ../src/ui/dialog/document-properties.cpp:122 msgid "Always snap to objects, regardless of their distance" -msgstr "Toujours adhérer aux objets les plus proche, sans tenir compte de la distance" +msgstr "" +"Toujours adhérer aux objets les plus proche, sans tenir compte de la distance" -#: ../src/ui/dialog/document-properties.cpp:120 -msgid "If set, objects only snap to another object when it's within the range specified below" -msgstr "Si la valeur est définie, les objets ne sont aimantés entre eux que s'ils sont à une distance inférieure à cette valeur" +#: ../src/ui/dialog/document-properties.cpp:123 +msgid "" +"If set, objects only snap to another object when it's within the range " +"specified below" +msgstr "" +"Si la valeur est définie, les objets ne sont aimantés entre eux que s'ils " +"sont à une distance inférieure à cette valeur" #. Options for snapping to grids -#: ../src/ui/dialog/document-properties.cpp:123 +#: ../src/ui/dialog/document-properties.cpp:126 msgid "Snap d_istance" msgstr "D_istance d'attraction" -#: ../src/ui/dialog/document-properties.cpp:123 +#: ../src/ui/dialog/document-properties.cpp:126 msgid "Snap only when c_loser than:" msgstr "Aimanter seulement à moins d'une distance de :" -#: ../src/ui/dialog/document-properties.cpp:124 +#: ../src/ui/dialog/document-properties.cpp:127 msgid "Snapping distance, in screen pixels, for snapping to grid" msgstr "Distance d'attraction, en pixels d'écran, pour aimanter à la grille" -#: ../src/ui/dialog/document-properties.cpp:124 +#: ../src/ui/dialog/document-properties.cpp:127 msgid "Always snap to grids, regardless of the distance" -msgstr "Toujours adhérer aux grilles les plus proches, sans tenir compte de la distance" +msgstr "" +"Toujours adhérer aux grilles les plus proches, sans tenir compte de la " +"distance" -#: ../src/ui/dialog/document-properties.cpp:125 -msgid "If set, objects only snap to a grid line when it's within the range specified below" -msgstr "Si la valeur est définie, les objets ne sont aimantés à une ligne de la grille que s'ils sont à une distance inférieure à cette valeur" +#: ../src/ui/dialog/document-properties.cpp:128 +msgid "" +"If set, objects only snap to a grid line when it's within the range " +"specified below" +msgstr "" +"Si la valeur est définie, les objets ne sont aimantés à une ligne de la " +"grille que s'ils sont à une distance inférieure à cette valeur" #. Options for snapping to guides -#: ../src/ui/dialog/document-properties.cpp:128 +#: ../src/ui/dialog/document-properties.cpp:131 msgid "Snap dist_ance" msgstr "Distance d'attraction" -#: ../src/ui/dialog/document-properties.cpp:128 +#: ../src/ui/dialog/document-properties.cpp:131 msgid "Snap only when close_r than:" msgstr "Aimante_r seulement à moins d'une distance de :" -#: ../src/ui/dialog/document-properties.cpp:129 +#: ../src/ui/dialog/document-properties.cpp:132 msgid "Snapping distance, in screen pixels, for snapping to guides" msgstr "Distance d'attraction, en pixels d'écran, pour aimanter aux guides" -#: ../src/ui/dialog/document-properties.cpp:129 +#: ../src/ui/dialog/document-properties.cpp:132 msgid "Always snap to guides, regardless of the distance" -msgstr "Toujours adhérer aux guides les plus proches, sans tenir compte de la distance" +msgstr "" +"Toujours adhérer aux guides les plus proches, sans tenir compte de la " +"distance" -#: ../src/ui/dialog/document-properties.cpp:130 -msgid "If set, objects only snap to a guide when it's within the range specified below" -msgstr "Si la valeur est définie, les objets ne sont aimantés à un guide que s'ils sont à une distance inférieure à cette valeur" +#: ../src/ui/dialog/document-properties.cpp:133 +msgid "" +"If set, objects only snap to a guide when it's within the range specified " +"below" +msgstr "" +"Si la valeur est définie, les objets ne sont aimantés à un guide que s'ils " +"sont à une distance inférieure à cette valeur" #. --------------------------------------------------------------- -#: ../src/ui/dialog/document-properties.cpp:133 +#: ../src/ui/dialog/document-properties.cpp:136 msgid "Snap to clip paths" msgstr "Aimanter aux chemins de découpe" -#: ../src/ui/dialog/document-properties.cpp:133 +#: ../src/ui/dialog/document-properties.cpp:136 msgid "When snapping to paths, then also try snapping to clip paths" -msgstr "Lorsque les chemins sont aimantés, essayer également d'aimanter aux chemins de découpe" +msgstr "" +"Lorsque les chemins sont aimantés, essayer également d'aimanter aux chemins " +"de découpe" -#: ../src/ui/dialog/document-properties.cpp:134 +#: ../src/ui/dialog/document-properties.cpp:137 msgid "Snap to mask paths" msgstr "Aimanter aux chemins de masque" -#: ../src/ui/dialog/document-properties.cpp:134 +#: ../src/ui/dialog/document-properties.cpp:137 msgid "When snapping to paths, then also try snapping to mask paths" -msgstr "Lorsque les chemins sont aimantés, essayer également d'aimanter aux chemins de masque" +msgstr "" +"Lorsque les chemins sont aimantés, essayer également d'aimanter aux chemins " +"de masque" -#: ../src/ui/dialog/document-properties.cpp:135 +#: ../src/ui/dialog/document-properties.cpp:138 msgid "Snap perpendicularly" msgstr "Aimanter perpendiculairement" -#: ../src/ui/dialog/document-properties.cpp:135 -msgid "When snapping to paths or guides, then also try snapping perpendicularly" -msgstr "Lorsque les chemins ou les guides sont aimantés, essayer également d'aimanter perpendiculairement" +#: ../src/ui/dialog/document-properties.cpp:138 +msgid "" +"When snapping to paths or guides, then also try snapping perpendicularly" +msgstr "" +"Lorsque les chemins ou les guides sont aimantés, essayer également " +"d'aimanter perpendiculairement" -#: ../src/ui/dialog/document-properties.cpp:136 +#: ../src/ui/dialog/document-properties.cpp:139 msgid "Snap tangentially" msgstr "Aimanter tangentiellement" -#: ../src/ui/dialog/document-properties.cpp:136 +#: ../src/ui/dialog/document-properties.cpp:139 msgid "When snapping to paths or guides, then also try snapping tangentially" -msgstr "Lorsque les chemins ou les guides sont aimantés, essayer également d'aimanter tangentiellement" +msgstr "" +"Lorsque les chemins ou les guides sont aimantés, essayer également " +"d'aimanter tangentiellement" -#: ../src/ui/dialog/document-properties.cpp:139 +#: ../src/ui/dialog/document-properties.cpp:142 msgctxt "Grid" msgid "_New" msgstr "_Nouveau" -#: ../src/ui/dialog/document-properties.cpp:139 +#: ../src/ui/dialog/document-properties.cpp:142 msgid "Create new grid." msgstr "Créer une nouvelle grille" -#: ../src/ui/dialog/document-properties.cpp:140 +#: ../src/ui/dialog/document-properties.cpp:143 msgctxt "Grid" msgid "_Remove" msgstr "Supp_rimer" -#: ../src/ui/dialog/document-properties.cpp:140 +#: ../src/ui/dialog/document-properties.cpp:143 msgid "Remove selected grid." msgstr "Supprimer la grille sélectionnée." -#: ../src/ui/dialog/document-properties.cpp:147 -#: ../src/widgets/toolbox.cpp:1835 +#: ../src/ui/dialog/document-properties.cpp:150 +#: ../src/widgets/toolbox.cpp:1833 msgid "Guides" msgstr "Guides" -#: ../src/ui/dialog/document-properties.cpp:149 -#: ../src/verbs.cpp:2685 +#: ../src/ui/dialog/document-properties.cpp:152 ../src/verbs.cpp:2748 msgid "Snap" msgstr "Magnétisme" -#: ../src/ui/dialog/document-properties.cpp:151 +#: ../src/ui/dialog/document-properties.cpp:154 msgid "Scripting" msgstr "Programmation" -#: ../src/ui/dialog/document-properties.cpp:311 +#: ../src/ui/dialog/document-properties.cpp:317 msgid "<b>General</b>" msgstr "<b>Général</b>" -#: ../src/ui/dialog/document-properties.cpp:313 +#: ../src/ui/dialog/document-properties.cpp:319 msgid "<b>Color</b>" msgstr "<b>Couleur</b>" -#: ../src/ui/dialog/document-properties.cpp:315 +#: ../src/ui/dialog/document-properties.cpp:321 msgid "<b>Border</b>" msgstr "<b>Bordure</b>" -#: ../src/ui/dialog/document-properties.cpp:317 +#: ../src/ui/dialog/document-properties.cpp:323 msgid "<b>Page Size</b>" msgstr "<b>Taille de la page</b>" -#: ../src/ui/dialog/document-properties.cpp:350 +#: ../src/ui/dialog/document-properties.cpp:356 msgid "<b>Guides</b>" msgstr "<b>Guides</b>" -#: ../src/ui/dialog/document-properties.cpp:368 +#: ../src/ui/dialog/document-properties.cpp:374 msgid "<b>Snap to objects</b>" msgstr "<b>Aimanter aux objets</b>" -#: ../src/ui/dialog/document-properties.cpp:370 +#: ../src/ui/dialog/document-properties.cpp:376 msgid "<b>Snap to grids</b>" msgstr "<b>Aimanter à la grille</b>" -#: ../src/ui/dialog/document-properties.cpp:372 +#: ../src/ui/dialog/document-properties.cpp:378 msgid "<b>Snap to guides</b>" msgstr "<b>Aimanter aux guides</b>" -#: ../src/ui/dialog/document-properties.cpp:374 +#: ../src/ui/dialog/document-properties.cpp:380 msgid "<b>Miscellaneous</b>" msgstr "<b>Divers</b>" @@ -14081,143 +14948,341 @@ msgstr "<b>Divers</b>" #. Inkscape::GC::release(defsRepr); #. inform the document, so we can undo #. Color Management -#: ../src/ui/dialog/document-properties.cpp:487 -#: ../src/verbs.cpp:2860 +#: ../src/ui/dialog/document-properties.cpp:493 ../src/verbs.cpp:2923 msgid "Link Color Profile" msgstr "Lier un profil de couleurs" -#: ../src/ui/dialog/document-properties.cpp:588 +#: ../src/ui/dialog/document-properties.cpp:594 msgid "Remove linked color profile" msgstr "Supprimer le profil de couleur lié" -#: ../src/ui/dialog/document-properties.cpp:601 +#: ../src/ui/dialog/document-properties.cpp:607 msgid "<b>Linked Color Profiles:</b>" msgstr "<b>Profils de couleur liés :</b>" -#: ../src/ui/dialog/document-properties.cpp:603 +#: ../src/ui/dialog/document-properties.cpp:609 msgid "<b>Available Color Profiles:</b>" msgstr "<b>Profils de couleur disponibles :</b>" -#: ../src/ui/dialog/document-properties.cpp:605 +#: ../src/ui/dialog/document-properties.cpp:611 msgid "Link Profile" msgstr "Lier au profil" -#: ../src/ui/dialog/document-properties.cpp:608 +#: ../src/ui/dialog/document-properties.cpp:614 msgid "Unlink Profile" msgstr "Délier le profil" -#: ../src/ui/dialog/document-properties.cpp:686 +#: ../src/ui/dialog/document-properties.cpp:692 msgid "Profile Name" msgstr "Nom du profil" -#: ../src/ui/dialog/document-properties.cpp:722 +#: ../src/ui/dialog/document-properties.cpp:728 msgid "External scripts" msgstr "Programmes externes" -#: ../src/ui/dialog/document-properties.cpp:723 +#: ../src/ui/dialog/document-properties.cpp:729 msgid "Embedded scripts" msgstr "Programmes incorporés" -#: ../src/ui/dialog/document-properties.cpp:728 +#: ../src/ui/dialog/document-properties.cpp:734 msgid "<b>External script files:</b>" msgstr "<b>Fichier de programmation externe :</b>" -#: ../src/ui/dialog/document-properties.cpp:730 +#: ../src/ui/dialog/document-properties.cpp:736 msgid "Add the current file name or browse for a file" msgstr "Choisir un fichier" -#: ../src/ui/dialog/document-properties.cpp:733 -#: ../src/ui/dialog/document-properties.cpp:811 -#: ../src/ui/widget/selected-style.cpp:334 +#: ../src/ui/dialog/document-properties.cpp:739 +#: ../src/ui/dialog/document-properties.cpp:817 +#: ../src/ui/widget/selected-style.cpp:339 msgid "Remove" msgstr "Supprimer" -#: ../src/ui/dialog/document-properties.cpp:798 +#: ../src/ui/dialog/document-properties.cpp:804 msgid "Filename" msgstr "Nom du fichier" -#: ../src/ui/dialog/document-properties.cpp:806 +#: ../src/ui/dialog/document-properties.cpp:812 msgid "<b>Embedded script files:</b>" msgstr "<b>Fichier de programmation incorporés :</b>" -#: ../src/ui/dialog/document-properties.cpp:808 +#: ../src/ui/dialog/document-properties.cpp:814 msgid "New" msgstr "Nouvelle" -#: ../src/ui/dialog/document-properties.cpp:875 +#: ../src/ui/dialog/document-properties.cpp:881 msgid "Script id" msgstr "Identifiant du script" -#: ../src/ui/dialog/document-properties.cpp:881 +#: ../src/ui/dialog/document-properties.cpp:887 msgid "<b>Content:</b>" msgstr "<b>Contenu :</b>" -#: ../src/ui/dialog/document-properties.cpp:998 +#: ../src/ui/dialog/document-properties.cpp:1004 msgid "_Save as default" msgstr "Enregistrer comme valeur par _défaut" -#: ../src/ui/dialog/document-properties.cpp:999 +#: ../src/ui/dialog/document-properties.cpp:1005 msgid "Save this metadata as the default metadata" msgstr "Enregistrer ces informations comme métadonnées par défaut" -#: ../src/ui/dialog/document-properties.cpp:1000 +#: ../src/ui/dialog/document-properties.cpp:1006 msgid "Use _default" msgstr "Utiliser les valeurs par défaut" -#: ../src/ui/dialog/document-properties.cpp:1001 +#: ../src/ui/dialog/document-properties.cpp:1007 msgid "Use the previously saved default metadata here" msgstr "Utiliser les métadonnées précédentes valeurs par défaut" #. inform the document, so we can undo -#: ../src/ui/dialog/document-properties.cpp:1074 +#: ../src/ui/dialog/document-properties.cpp:1080 msgid "Add external script..." msgstr "Ajouter un programme externe..." -#: ../src/ui/dialog/document-properties.cpp:1113 +#: ../src/ui/dialog/document-properties.cpp:1119 msgid "Select a script to load" msgstr "Sélectionnez un script à charger" #. inform the document, so we can undo -#: ../src/ui/dialog/document-properties.cpp:1141 +#: ../src/ui/dialog/document-properties.cpp:1147 msgid "Add embedded script..." msgstr "Ajouter un programme incorporé..." #. inform the document, so we can undo -#: ../src/ui/dialog/document-properties.cpp:1172 +#: ../src/ui/dialog/document-properties.cpp:1178 msgid "Remove external script" msgstr "Supprimer un programme externe" #. inform the document, so we can undo -#: ../src/ui/dialog/document-properties.cpp:1206 +#: ../src/ui/dialog/document-properties.cpp:1212 msgid "Remove embedded script" msgstr "Retirer le programme incorporé" #. TODO repr->set_content(_EmbeddedContent.get_buffer()->get_text()); #. inform the document, so we can undo -#: ../src/ui/dialog/document-properties.cpp:1306 +#: ../src/ui/dialog/document-properties.cpp:1312 msgid "Edit embedded script" msgstr "Retirer le programme incorporé" -#: ../src/ui/dialog/document-properties.cpp:1389 +#: ../src/ui/dialog/document-properties.cpp:1395 msgid "<b>Creation</b>" msgstr " <b>Création</b> " -#: ../src/ui/dialog/document-properties.cpp:1390 +#: ../src/ui/dialog/document-properties.cpp:1396 msgid "<b>Defined grids</b>" msgstr "<b>Grilles définies</b>" -#: ../src/ui/dialog/document-properties.cpp:1618 +#: ../src/ui/dialog/document-properties.cpp:1639 msgid "Remove grid" msgstr "Supprimer la grille" +#: ../src/ui/dialog/document-properties.cpp:1707 +#, fuzzy +msgid "Changed document unit" +msgstr "Document sans nom %d" + +#: ../src/ui/dialog/export.cpp:151 ../src/verbs.cpp:2800 +msgid "_Page" +msgstr "_Page" + +#: ../src/ui/dialog/export.cpp:151 ../src/verbs.cpp:2804 +msgid "_Drawing" +msgstr "_Dessin" + +#: ../src/ui/dialog/export.cpp:151 ../src/verbs.cpp:2806 +msgid "_Selection" +msgstr "_Sélection" + +#: ../src/ui/dialog/export.cpp:151 +msgid "_Custom" +msgstr "P_ersonnalisée" + +#: ../src/ui/dialog/export.cpp:168 ../src/widgets/measure-toolbar.cpp:116 +#: ../src/widgets/measure-toolbar.cpp:124 +#: ../share/extensions/render_gears.inx.h:6 +msgid "Units:" +msgstr "Unités :" + +#: ../src/ui/dialog/export.cpp:170 +msgid "_Export As..." +msgstr "E_xporter sous..." + +#: ../src/ui/dialog/export.cpp:173 +msgid "B_atch export all selected objects" +msgstr "Exporter les _objets sélectionnés en un lot" + +#: ../src/ui/dialog/export.cpp:173 +msgid "" +"Export each selected object into its own PNG file, using export hints if any " +"(caution, overwrites without asking!)" +msgstr "" +"Exporter chaque objet de la sélection dans son fichier PNG, en tenant compte " +"des indications d'export (attention, écrase les fichiers sans demander de " +"confirmation !)" + +#: ../src/ui/dialog/export.cpp:175 +msgid "Hide a_ll except selected" +msgstr "_Cacher tout sauf la sélection" + +#: ../src/ui/dialog/export.cpp:175 +msgid "In the exported image, hide all objects except those that are selected" +msgstr "" +"Dans l'image exportée, cacher tous les objets qui ne sont pas sélectionnés" + +#: ../src/ui/dialog/export.cpp:176 +msgid "Close when complete" +msgstr "Fermer cette boîte de dialogue" + +#: ../src/ui/dialog/export.cpp:176 +msgid "Once the export completes, close this dialog" +msgstr "Fermer cette boîte de dialogue une fois l'exportation terminée" + +#: ../src/ui/dialog/export.cpp:178 +msgid "_Export" +msgstr "_Exporter" + +#: ../src/ui/dialog/export.cpp:196 +msgid "<b>Export area</b>" +msgstr "<b>Zone à exporter</b>" + +#: ../src/ui/dialog/export.cpp:235 +msgid "_x0:" +msgstr "_x0 :" + +#: ../src/ui/dialog/export.cpp:239 +msgid "x_1:" +msgstr "x_1 :" + +#: ../src/ui/dialog/export.cpp:243 +msgid "Wid_th:" +msgstr "La_rgeur :" + +#: ../src/ui/dialog/export.cpp:247 +msgid "_y0:" +msgstr "_y0 :" + +#: ../src/ui/dialog/export.cpp:251 +msgid "y_1:" +msgstr "y_1 :" + +#: ../src/ui/dialog/export.cpp:255 +msgid "Hei_ght:" +msgstr "Hau_teur :" + +#: ../src/ui/dialog/export.cpp:270 +msgid "<b>Image size</b>" +msgstr "<b>Taille de l'image</b>" + +#: ../src/ui/dialog/export.cpp:288 ../src/ui/dialog/export.cpp:299 +msgid "pixels at" +msgstr "pixels à " + +#: ../src/ui/dialog/export.cpp:294 +msgid "dp_i" +msgstr "_ppp" + +#: ../src/ui/dialog/export.cpp:299 ../src/ui/dialog/transformation.cpp:82 +#: ../src/ui/widget/page-sizer.cpp:237 +msgid "_Height:" +msgstr "_Hauteur :" + +#: ../src/ui/dialog/export.cpp:307 +#: ../src/ui/dialog/inkscape-preferences.cpp:1436 +#: ../src/ui/dialog/inkscape-preferences.cpp:1439 +#: ../src/ui/dialog/inkscape-preferences.cpp:1451 +msgid "dpi" +msgstr "ppp" + +#: ../src/ui/dialog/export.cpp:315 +msgid "<b>_Filename</b>" +msgstr "<b>Nom de _fichier</b>" + +#: ../src/ui/dialog/export.cpp:357 +msgid "Export the bitmap file with these settings" +msgstr "Exporter le fichier bitmap avec ces réglages" + +#: ../src/ui/dialog/export.cpp:608 +#, c-format +msgid "B_atch export %d selected object" +msgid_plural "B_atch export %d selected objects" +msgstr[0] "Exporter %d _objet sélectionné en lot" +msgstr[1] "Exporter les %d _objets sélectionnés en lot" + +#: ../src/ui/dialog/export.cpp:924 +msgid "Export in progress" +msgstr "Export en cours" + +#: ../src/ui/dialog/export.cpp:1014 +msgid "No items selected." +msgstr "Aucun élément sélectionné." + +#: ../src/ui/dialog/export.cpp:1018 ../src/ui/dialog/export.cpp:1020 +msgid "Exporting %1 files" +msgstr "Exportation de %1 fichiers" + +#: ../src/ui/dialog/export.cpp:1060 ../src/ui/dialog/export.cpp:1062 +#, c-format +msgid "Exporting file <b>%s</b>..." +msgstr "Exportation du fichier <b>%s</b> en cours" + +#: ../src/ui/dialog/export.cpp:1071 ../src/ui/dialog/export.cpp:1162 +#, c-format +msgid "Could not export to filename %s.\n" +msgstr "Impossible d'exporter dans le fichier %s.\n" + +#: ../src/ui/dialog/export.cpp:1074 +#, c-format +msgid "Could not export to filename <b>%s</b>." +msgstr "Impossible d'exporter dans le fichier <b>%s</b>." + +#: ../src/ui/dialog/export.cpp:1089 +#, c-format +msgid "Successfully exported <b>%d</b> files from <b>%d</b> selected items." +msgstr "" +"<b>%d</b> fichiers ont été exportés à partir des <b>%d</b> objets " +"sélectionnés." + +#: ../src/ui/dialog/export.cpp:1100 +msgid "You have to enter a filename." +msgstr "Vous devez entrer un nom de fichier." + +#: ../src/ui/dialog/export.cpp:1101 +msgid "You have to enter a filename" +msgstr "Vous devez entrer un nom de fichier" + +#: ../src/ui/dialog/export.cpp:1115 +msgid "The chosen area to be exported is invalid." +msgstr "La zone à exporter choisie n'est pas valide." + +#: ../src/ui/dialog/export.cpp:1116 +msgid "The chosen area to be exported is invalid" +msgstr "La zone à exporter choisie n'est pas valide" + +#: ../src/ui/dialog/export.cpp:1131 +#, c-format +msgid "Directory %s does not exist or is not a directory.\n" +msgstr "Le dossier %s n'existe pas ou n'est pas un dossier.\n" + +#. TRANSLATORS: %1 will be the filename, %2 the width, and %3 the height of the image +#: ../src/ui/dialog/export.cpp:1145 ../src/ui/dialog/export.cpp:1147 +msgid "Exporting %1 (%2 x %3)" +msgstr "Exportation %s1(%2 x %3) en cours" + +#: ../src/ui/dialog/export.cpp:1173 +#, c-format +msgid "Drawing exported to <b>%s</b>." +msgstr "Dessin exporté vers <b>%s</b>." + +#: ../src/ui/dialog/export.cpp:1177 +msgid "Export aborted." +msgstr "Exportation annulée." + #: ../src/ui/dialog/extension-editor.cpp:81 msgid "Information" msgstr "Information" -#: ../src/ui/dialog/extension-editor.cpp:82 -#: ../src/verbs.cpp:289 -#: ../src/verbs.cpp:308 -#: ../share/extensions/color_custom.inx.h:7 +#: ../src/ui/dialog/extension-editor.cpp:82 ../src/verbs.cpp:290 +#: ../src/verbs.cpp:309 ../share/extensions/color_custom.inx.h:7 #: ../share/extensions/color_HSL_adjust.inx.h:11 #: ../share/extensions/color_randomize.inx.h:6 #: ../share/extensions/dots.inx.h:7 @@ -14256,12 +15321,11 @@ msgstr "Information" #: ../share/extensions/measure.inx.h:15 #: ../share/extensions/pathalongpath.inx.h:16 #: ../share/extensions/pathscatter.inx.h:18 -#: ../share/extensions/radiusrand.inx.h:8 -#: ../share/extensions/split.inx.h:8 +#: ../share/extensions/radiusrand.inx.h:8 ../share/extensions/split.inx.h:8 #: ../share/extensions/voronoi2svg.inx.h:11 +#: ../share/extensions/web-set-att.inx.h:25 #: ../share/extensions/webslicer_create_group.inx.h:11 #: ../share/extensions/webslicer_export.inx.h:6 -#: ../share/extensions/web-set-att.inx.h:25 #: ../share/extensions/web-transmit-att.inx.h:23 msgid "Help" msgstr "Aide" @@ -14425,8 +15489,17 @@ msgstr "St_yle du contour" #. TRANSLATORS: this dialog is accessible via menu Filters - Filter editor #: ../src/ui/dialog/filter-effects-dialog.cpp:515 -msgid "This matrix determines a linear transform on color space. Each line affects one of the color components. Each column determines how much of each color component from the input is passed to the output. The last column does not depend on input colors, so can be used to adjust a constant component value." -msgstr "Cette matrice détermine une transformation linéaire de l'espace des couleurs. Chaque ligne affecte une des composantes de la couleur. Chaque colonne détermine quelle proportion de chaque composante de l'entrée est passée à la sortie. La dernière colonne ne dépend pas de l'entrée. Elle sert à ajouter une constante aux composantes." +msgid "" +"This matrix determines a linear transform on color space. Each line affects " +"one of the color components. Each column determines how much of each color " +"component from the input is passed to the output. The last column does not " +"depend on input colors, so can be used to adjust a constant component value." +msgstr "" +"Cette matrice détermine une transformation linéaire de l'espace des " +"couleurs. Chaque ligne affecte une des composantes de la couleur. Chaque " +"colonne détermine quelle proportion de chaque composante de l'entrée est " +"passée à la sortie. La dernière colonne ne dépend pas de l'entrée. Elle sert " +"à ajouter une constante aux composantes." #: ../src/ui/dialog/filter-effects-dialog.cpp:625 msgid "Image File" @@ -14455,11 +15528,13 @@ msgstr "Source de lumière :" #: ../src/ui/dialog/filter-effects-dialog.cpp:1001 msgid "Direction angle for the light source on the XY plane, in degrees" -msgstr "Angle pour la direction de la source de lumière dans le plan XY, en degrés" +msgstr "" +"Angle pour la direction de la source de lumière dans le plan XY, en degrés" #: ../src/ui/dialog/filter-effects-dialog.cpp:1002 msgid "Direction angle for the light source on the YZ plane, in degrees" -msgstr "Angle pour la direction de la source de lumière dans le plan XY, en degrés" +msgstr "" +"Angle pour la direction de la source de lumière dans le plan XY, en degrés" #. default x: #. default y: @@ -14505,8 +15580,14 @@ msgid "Cone Angle" msgstr "Angle du cône" #: ../src/ui/dialog/filter-effects-dialog.cpp:1014 -msgid "This is the angle between the spot light axis (i.e. the axis between the light source and the point to which it is pointing at) and the spot light cone. No light is projected outside this cone." -msgstr "C'est l'ouverture du cône de lumière autour de l'axe de la source (la ligne entre la source et le point vers lequel elle pointe). Aucune lumière n'est projetée hors de ce cône." +msgid "" +"This is the angle between the spot light axis (i.e. the axis between the " +"light source and the point to which it is pointing at) and the spot light " +"cone. No light is projected outside this cone." +msgstr "" +"C'est l'ouverture du cône de lumière autour de l'axe de la source (la ligne " +"entre la source et le point vers lequel elle pointe). Aucune lumière n'est " +"projetée hors de ce cône." #: ../src/ui/dialog/filter-effects-dialog.cpp:1077 msgid "New light source" @@ -14520,275 +15601,335 @@ msgstr "_Dupliquer" msgid "_Filter" msgstr "_Filtre" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1168 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1174 msgid "R_ename" msgstr "R_enommer" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1298 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1304 msgid "Rename filter" msgstr "Renommer le filtre" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1335 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1349 msgid "Apply filter" msgstr "Appliquer le filtre" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1405 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1419 msgid "filter" msgstr "filtre" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1412 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1426 msgid "Add filter" msgstr "Ajouter un filtre" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1464 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1478 msgid "Duplicate filter" msgstr "Dupliquer le filtre" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1563 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1577 msgid "_Effect" msgstr "_Effets" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1573 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1587 msgid "Connections" msgstr "Connecteurs" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1711 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1725 msgid "Remove filter primitive" msgstr "Supprimer la primitive de filtre" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2299 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2313 msgid "Remove merge node" msgstr "Supprimer le nÅ“ud de fusion" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2419 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2433 msgid "Reorder filter primitive" msgstr "Réordonner la primitive de filtre" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2499 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2513 msgid "Add Effect:" msgstr "Ajouter un effet :" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2500 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2514 msgid "No effect selected" msgstr "Aucun effet sélectionné" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2501 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2515 msgid "No filter selected" msgstr "Aucun filtre sélectionné" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2547 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2561 msgid "Effect parameters" msgstr "Paramètres de l'effet" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2548 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2562 msgid "Filter General Settings" msgstr "Paramètres généraux des filtres" #. default x: #. default y: -#: ../src/ui/dialog/filter-effects-dialog.cpp:2606 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2620 msgid "Coordinates:" msgstr "Coordonnées :" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2606 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2620 msgid "X coordinate of the left corners of filter effects region" msgstr "Coordonnée X des coins gauches de la zone d'action du filtre" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2606 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2620 msgid "Y coordinate of the upper corners of filter effects region" msgstr "Coordonnée Y des coins supérieurs de la zone d'action du filtre" #. default width: #. default height: -#: ../src/ui/dialog/filter-effects-dialog.cpp:2607 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2621 msgid "Dimensions:" msgstr "Dimensions :" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2607 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2621 msgid "Width of filter effects region" msgstr "Largeur de la zone d'action du filtre" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2607 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2621 msgid "Height of filter effects region" msgstr "Hauteur de la zone d'action du filtre" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2613 -msgid "Indicates the type of matrix operation. The keyword 'matrix' indicates that a full 5x4 matrix of values will be provided. The other keywords represent convenience shortcuts to allow commonly used color operations to be performed without specifying a complete matrix." -msgstr "Indique le type d'opération matricielle. Le mot-clef « matrice » indique qu'une matrice 5x4 sera donnée en entrée. Les autres mots-clés représentent des raccourcis pour les opérations les plus fréquentes sur les couleurs sans spécifier de matrice." +#: ../src/ui/dialog/filter-effects-dialog.cpp:2627 +msgid "" +"Indicates the type of matrix operation. The keyword 'matrix' indicates that " +"a full 5x4 matrix of values will be provided. The other keywords represent " +"convenience shortcuts to allow commonly used color operations to be " +"performed without specifying a complete matrix." +msgstr "" +"Indique le type d'opération matricielle. Le mot-clef « matrice » indique " +"qu'une matrice 5x4 sera donnée en entrée. Les autres mots-clés représentent " +"des raccourcis pour les opérations les plus fréquentes sur les couleurs sans " +"spécifier de matrice." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2614 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2628 msgid "Value(s):" msgstr "Valeur(s) :" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2629 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2669 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2643 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2683 msgid "Operator:" msgstr "Opérateur :" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2630 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2644 msgid "K1:" msgstr "K1 :" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2630 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2631 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2632 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2633 -msgid "If the arithmetic operation is chosen, each result pixel is computed using the formula k1*i1*i2 + k2*i1 + k3*i2 + k4 where i1 and i2 are the pixel values of the first and second inputs respectively." -msgstr "Si une opération arithmétique est sélectionnée, chaque pixel du résultat est calculé par: k1*i1*i2 + k2*i1 + k3*i2 + k4. i1 et i2 sont les valeurs de la première et de la deuxième entrée." +#: ../src/ui/dialog/filter-effects-dialog.cpp:2644 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2645 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2646 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2647 +msgid "" +"If the arithmetic operation is chosen, each result pixel is computed using " +"the formula k1*i1*i2 + k2*i1 + k3*i2 + k4 where i1 and i2 are the pixel " +"values of the first and second inputs respectively." +msgstr "" +"Si une opération arithmétique est sélectionnée, chaque pixel du résultat est " +"calculé par: k1*i1*i2 + k2*i1 + k3*i2 + k4. i1 et i2 sont les valeurs de la " +"première et de la deuxième entrée." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2631 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2645 msgid "K2:" msgstr "K2 :" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2632 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2646 msgid "K3:" msgstr "K3 :" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2633 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2647 msgid "K4:" msgstr "K4 :" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2636 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2650 msgid "Size:" msgstr "Taille :" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2636 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2650 msgid "width of the convolve matrix" msgstr "largeur de la matrice de convolution" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2636 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2650 msgid "height of the convolve matrix" msgstr "hauteur de la matrice de convolution" #. default x: #. default y: -#: ../src/ui/dialog/filter-effects-dialog.cpp:2637 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2651 #: ../src/ui/dialog/object-attributes.cpp:48 msgid "Target:" msgstr "Cible :" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2637 -msgid "X coordinate of the target point in the convolve matrix. The convolution is applied to pixels around this point." -msgstr "Coordonnée X du point cible de la matrice de convolution. La convolution est appliquée aux pixels qui entourent ce point." +#: ../src/ui/dialog/filter-effects-dialog.cpp:2651 +msgid "" +"X coordinate of the target point in the convolve matrix. The convolution is " +"applied to pixels around this point." +msgstr "" +"Coordonnée X du point cible de la matrice de convolution. La convolution est " +"appliquée aux pixels qui entourent ce point." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2637 -msgid "Y coordinate of the target point in the convolve matrix. The convolution is applied to pixels around this point." -msgstr "Coordonnée Y du point cible de la matrice de convolution. La convolution est appliquée aux pixels qui entourent ce point." +#: ../src/ui/dialog/filter-effects-dialog.cpp:2651 +msgid "" +"Y coordinate of the target point in the convolve matrix. The convolution is " +"applied to pixels around this point." +msgstr "" +"Coordonnée Y du point cible de la matrice de convolution. La convolution est " +"appliquée aux pixels qui entourent ce point." #. TRANSLATORS: for info on "Kernel", see http://en.wikipedia.org/wiki/Kernel_(matrix) -#: ../src/ui/dialog/filter-effects-dialog.cpp:2639 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2653 msgid "Kernel:" msgstr "Kernel :" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2639 -msgid "This matrix describes the convolve operation that is applied to the input image in order to calculate the pixel colors at the output. Different arrangements of values in this matrix result in various possible visual effects. An identity matrix would lead to a motion blur effect (parallel to the matrix diagonal) while a matrix filled with a constant non-zero value would lead to a common blur effect." -msgstr "Cette matrice décrit l'opération de convolution qui est appliquée à l'image en entrée pour calculer les valeurs des pixels en sortie. Les organisations différentes des valeurs dans cette matrice donnent divers effets visuels possibles. Une matrice identité produira un effet de flou de mouvement (parallèle à la diagonale de la matrice) alors qu'une matrice remplie d'une valeur non-nulle constante produira un effet de flou simple." +#: ../src/ui/dialog/filter-effects-dialog.cpp:2653 +msgid "" +"This matrix describes the convolve operation that is applied to the input " +"image in order to calculate the pixel colors at the output. Different " +"arrangements of values in this matrix result in various possible visual " +"effects. An identity matrix would lead to a motion blur effect (parallel to " +"the matrix diagonal) while a matrix filled with a constant non-zero value " +"would lead to a common blur effect." +msgstr "" +"Cette matrice décrit l'opération de convolution qui est appliquée à l'image " +"en entrée pour calculer les valeurs des pixels en sortie. Les organisations " +"différentes des valeurs dans cette matrice donnent divers effets visuels " +"possibles. Une matrice identité produira un effet de flou de mouvement " +"(parallèle à la diagonale de la matrice) alors qu'une matrice remplie d'une " +"valeur non-nulle constante produira un effet de flou simple." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2641 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2655 msgid "Divisor:" msgstr "Diviseur :" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2641 -msgid "After applying the kernelMatrix to the input image to yield a number, that number is divided by divisor to yield the final destination color value. A divisor that is the sum of all the matrix values tends to have an evening effect on the overall color intensity of the result." -msgstr "Après l'application de la kernelMatrix à l'image en entrée pour obtenir un nombre, ce nombre est divisé par le diviseur, ce qui donne la valeur de couleur finale en sortie. Un diviseur d'une valeur égale à la somme de toutes les valeurs de la matrice aura tendance à avoir un effet lissant sur l'intensité globale de la couleur du résultat." +#: ../src/ui/dialog/filter-effects-dialog.cpp:2655 +msgid "" +"After applying the kernelMatrix to the input image to yield a number, that " +"number is divided by divisor to yield the final destination color value. A " +"divisor that is the sum of all the matrix values tends to have an evening " +"effect on the overall color intensity of the result." +msgstr "" +"Après l'application de la kernelMatrix à l'image en entrée pour obtenir un " +"nombre, ce nombre est divisé par le diviseur, ce qui donne la valeur de " +"couleur finale en sortie. Un diviseur d'une valeur égale à la somme de " +"toutes les valeurs de la matrice aura tendance à avoir un effet lissant sur " +"l'intensité globale de la couleur du résultat." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2642 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2656 msgid "Bias:" msgstr "Déviation :" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2642 -msgid "This value is added to each component. This is useful to define a constant value as the zero response of the filter." -msgstr "Cette valeur est ajoutée à chaque composant. Permet de définir une valeur constante comme la réponse en zéro du filtre." +#: ../src/ui/dialog/filter-effects-dialog.cpp:2656 +msgid "" +"This value is added to each component. This is useful to define a constant " +"value as the zero response of the filter." +msgstr "" +"Cette valeur est ajoutée à chaque composant. Permet de définir une valeur " +"constante comme la réponse en zéro du filtre." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2643 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2657 msgid "Edge Mode:" msgstr "Mode bordure :" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2643 -msgid "Determines how to extend the input image as necessary with color values so that the matrix operations can be applied when the kernel is positioned at or near the edge of the input image." -msgstr "Détermine comment étendre l'image en entrée avec des valeurs de couleur si besoin, pour que les opérations matricielles puissent être appliquées quand le kernel est positionné au bord ou près du bord de l'image en entrée." +#: ../src/ui/dialog/filter-effects-dialog.cpp:2657 +msgid "" +"Determines how to extend the input image as necessary with color values so " +"that the matrix operations can be applied when the kernel is positioned at " +"or near the edge of the input image." +msgstr "" +"Détermine comment étendre l'image en entrée avec des valeurs de couleur si " +"besoin, pour que les opérations matricielles puissent être appliquées quand " +"le kernel est positionné au bord ou près du bord de l'image en entrée." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2644 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2658 msgid "Preserve Alpha" msgstr "Préserver l'opacité" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2644 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2658 msgid "If set, the alpha channel won't be altered by this filter primitive." -msgstr "Si coché, la composante opacité (alpha) ne sera pas modifiée par cette primitive de filtre." +msgstr "" +"Si coché, la composante opacité (alpha) ne sera pas modifiée par cette " +"primitive de filtre." #. default: white -#: ../src/ui/dialog/filter-effects-dialog.cpp:2647 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2661 msgid "Diffuse Color:" msgstr "Diffusion de la couleur :" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2647 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2680 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2661 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2694 msgid "Defines the color of the light source" msgstr "Définit la couleur de la source lumineuse" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2648 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2681 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2662 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2695 msgid "Surface Scale:" msgstr "Relief de surface :" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2648 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2681 -msgid "This value amplifies the heights of the bump map defined by the input alpha channel" -msgstr "Cette valeur amplifie la hauteur du relief défini par la composante opacité (alpha) en entrée" +#: ../src/ui/dialog/filter-effects-dialog.cpp:2662 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2695 +msgid "" +"This value amplifies the heights of the bump map defined by the input alpha " +"channel" +msgstr "" +"Cette valeur amplifie la hauteur du relief défini par la composante opacité " +"(alpha) en entrée" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2649 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2682 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2663 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2696 msgid "Constant:" msgstr "Constante :" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2649 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2682 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2663 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2696 msgid "This constant affects the Phong lighting model." msgstr "Cette constante agit sur le modèle d'éclairage Phong." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2650 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2684 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2664 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2698 msgid "Kernel Unit Length:" msgstr "Unité de longueur du Kernel :" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2654 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2668 msgid "This defines the intensity of the displacement effect." msgstr "Définit l'intensité de l'effet de déplacement." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2655 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2669 msgid "X displacement:" msgstr "Déplacement en X :" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2655 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2669 msgid "Color component that controls the displacement in the X direction" msgstr "Composante RGB qui contrôle le déplacement suivant l'axe X" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2656 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2670 msgid "Y displacement:" msgstr "Déplacement en Y :" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2656 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2670 msgid "Color component that controls the displacement in the Y direction" msgstr "Composante RGB qui contrôle le déplacement dans la direction Y" #. default: black -#: ../src/ui/dialog/filter-effects-dialog.cpp:2659 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2673 msgid "Flood Color:" msgstr "Couleur de remplissage :" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2659 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2673 msgid "The whole filter region will be filled with this color." -msgstr "Toute la région affectée par le filtre sera remplie avec cette couleur." +msgstr "" +"Toute la région affectée par le filtre sera remplie avec cette couleur." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2663 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2677 msgid "Standard Deviation:" msgstr "Variance :" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2663 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2677 msgid "The standard deviation for the blur operation." msgstr "La variance pour l'effet de flou." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2669 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2683 msgid "" "Erode: performs \"thinning\" of input image.\n" "Dilate: performs \"fattenning\" of input image." @@ -14796,133 +15937,245 @@ msgstr "" "Contracter : rend l'image plus « fine ».\n" "Dilater : rend l'image plus « épaisse »" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2673 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2687 msgid "Source of Image:" msgstr "Source de l'image :" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2676 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2690 msgid "Delta X:" msgstr "Delta X :" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2676 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2690 msgid "This is how far the input image gets shifted to the right" msgstr "Distance du décalage de l'image vers la droite" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2677 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2691 msgid "Delta Y:" msgstr "Delta Y :" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2677 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2691 msgid "This is how far the input image gets shifted downwards" msgstr "Distance du décalage de l'image vers le bas" #. default: white -#: ../src/ui/dialog/filter-effects-dialog.cpp:2680 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2694 msgid "Specular Color:" msgstr "Couleur spéculaire :" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2683 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2697 #: ../share/extensions/interp.inx.h:2 msgid "Exponent:" msgstr "Exposant :" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2683 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2697 msgid "Exponent for specular term, larger is more \"shiny\"." -msgstr "Exposant pour le terme spéculaire. Plus il est grand, plus l'objet est « brillant »." +msgstr "" +"Exposant pour le terme spéculaire. Plus il est grand, plus l'objet est " +"« brillant »." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2692 -msgid "Indicates whether the filter primitive should perform a noise or turbulence function." -msgstr "Indique si la primitive de filtre doit effectuer une fonction de bruit ou de turbulence." +#: ../src/ui/dialog/filter-effects-dialog.cpp:2706 +msgid "" +"Indicates whether the filter primitive should perform a noise or turbulence " +"function." +msgstr "" +"Indique si la primitive de filtre doit effectuer une fonction de bruit ou de " +"turbulence." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2693 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2707 msgid "Base Frequency:" msgstr "Fréquence de base :" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2694 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2708 msgid "Octaves:" msgstr "Octaves :" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2695 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2709 msgid "Seed:" msgstr "Germe :" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2695 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2709 msgid "The starting number for the pseudo random number generator." msgstr "La graine pour le générateur pseudo-aléatoire." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2707 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2721 msgid "Add filter primitive" msgstr "Ajouter une primitive de filtre" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2724 -msgid "The <b>feBlend</b> filter primitive provides 4 image blending modes: screen, multiply, darken and lighten." -msgstr "<b>feBlend</b> fournit quatre modes de fondu d'image : produit, superposition, obscurcir et éclaircir." - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2728 -msgid "The <b>feColorMatrix</b> filter primitive applies a matrix transformation to color of each rendered pixel. This allows for effects like turning object to grayscale, modifying color saturation and changing color hue." -msgstr "<b>feColorMatrix</b> applique une transformation matricielle à la couleur de chaque pixel. Cela permet des effets comme la transformation d'objets en niveaux de gris, la modification de la saturation des couleurs et la modification de la teinte des couleurs." +#: ../src/ui/dialog/filter-effects-dialog.cpp:2738 +msgid "" +"The <b>feBlend</b> filter primitive provides 4 image blending modes: screen, " +"multiply, darken and lighten." +msgstr "" +"<b>feBlend</b> fournit quatre modes de fondu d'image : produit, " +"superposition, obscurcir et éclaircir." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2732 -msgid "The <b>feComponentTransfer</b> filter primitive manipulates the input's color components (red, green, blue, and alpha) according to particular transfer functions, allowing operations like brightness and contrast adjustment, color balance, and thresholding." -msgstr "<b>feComponentTransfer</b> manipule les composantes de couleur de l'entrée (rouge, vert, bleu et opacité) suivant des fonctions de tranfert. Cela permet des opérations comme l'ajustement de luminosité et de contraste, la balance des couleurs, et la détection de seuil." +#: ../src/ui/dialog/filter-effects-dialog.cpp:2742 +msgid "" +"The <b>feColorMatrix</b> filter primitive applies a matrix transformation to " +"color of each rendered pixel. This allows for effects like turning object to " +"grayscale, modifying color saturation and changing color hue." +msgstr "" +"<b>feColorMatrix</b> applique une transformation matricielle à la couleur de " +"chaque pixel. Cela permet des effets comme la transformation d'objets en " +"niveaux de gris, la modification de la saturation des couleurs et la " +"modification de la teinte des couleurs." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2736 -msgid "The <b>feComposite</b> filter primitive composites two images using one of the Porter-Duff blending modes or the arithmetic mode described in SVG standard. Porter-Duff blending modes are essentially logical operations between the corresponding pixel values of the images." -msgstr "La primitive <b>feComposite</b> fond deux images ensemble en utilisant un des modes de fondu Porter-Duff ou le mode arithmétique décrit dans le standard SVG. Les modes de fondu Porter-Duff sont en résumé des opérations logiques entre les valeurs de pixels respectives des images." +#: ../src/ui/dialog/filter-effects-dialog.cpp:2746 +msgid "" +"The <b>feComponentTransfer</b> filter primitive manipulates the input's " +"color components (red, green, blue, and alpha) according to particular " +"transfer functions, allowing operations like brightness and contrast " +"adjustment, color balance, and thresholding." +msgstr "" +"<b>feComponentTransfer</b> manipule les composantes de couleur de l'entrée " +"(rouge, vert, bleu et opacité) suivant des fonctions de tranfert. Cela " +"permet des opérations comme l'ajustement de luminosité et de contraste, la " +"balance des couleurs, et la détection de seuil." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2740 -msgid "The <b>feConvolveMatrix</b> lets you specify a Convolution to be applied on the image. Common effects created using convolution matrices are blur, sharpening, embossing and edge detection. Note that while gaussian blur can be created using this filter primitive, the special gaussian blur primitive is faster and resolution-independent." -msgstr "<b>feConvolveMatrix</b> vous permet de spécifier une matrice de convolution à appliquer à l'image. Les effets courants créés par des matrices de convolution sont le flou, la netteté, le gauffrage et la détection de bords. Il faut noter que, bien qu'un flou gaussien puisse être créé en utilisant cette primitive de filtre, la primitive dédiée au flou gaussien est plus rapide et ne dépend pas de la résolution." +#: ../src/ui/dialog/filter-effects-dialog.cpp:2750 +msgid "" +"The <b>feComposite</b> filter primitive composites two images using one of " +"the Porter-Duff blending modes or the arithmetic mode described in SVG " +"standard. Porter-Duff blending modes are essentially logical operations " +"between the corresponding pixel values of the images." +msgstr "" +"La primitive <b>feComposite</b> fond deux images ensemble en utilisant un " +"des modes de fondu Porter-Duff ou le mode arithmétique décrit dans le " +"standard SVG. Les modes de fondu Porter-Duff sont en résumé des opérations " +"logiques entre les valeurs de pixels respectives des images." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2744 -msgid "The <b>feDiffuseLighting</b> and feSpecularLighting filter primitives create \"embossed\" shadings. The input's alpha channel is used to provide depth information: higher opacity areas are raised toward the viewer and lower opacity areas recede away from the viewer." -msgstr "<b>feDiffuseLighting</b> et feSpecularLighting créent des ombrages « gauffrés ». La composante d'opacité (alpha) de l'entrée est utilisée pour founir l'information de profondeur : les zones de forte opacité sont élevées vers le point de vue et les zones de faible opacité sont reculées par rapport au point de vue." +#: ../src/ui/dialog/filter-effects-dialog.cpp:2754 +msgid "" +"The <b>feConvolveMatrix</b> lets you specify a Convolution to be applied on " +"the image. Common effects created using convolution matrices are blur, " +"sharpening, embossing and edge detection. Note that while gaussian blur can " +"be created using this filter primitive, the special gaussian blur primitive " +"is faster and resolution-independent." +msgstr "" +"<b>feConvolveMatrix</b> vous permet de spécifier une matrice de convolution " +"à appliquer à l'image. Les effets courants créés par des matrices de " +"convolution sont le flou, la netteté, le gauffrage et la détection de bords. " +"Il faut noter que, bien qu'un flou gaussien puisse être créé en utilisant " +"cette primitive de filtre, la primitive dédiée au flou gaussien est plus " +"rapide et ne dépend pas de la résolution." + +#: ../src/ui/dialog/filter-effects-dialog.cpp:2758 +msgid "" +"The <b>feDiffuseLighting</b> and feSpecularLighting filter primitives create " +"\"embossed\" shadings. The input's alpha channel is used to provide depth " +"information: higher opacity areas are raised toward the viewer and lower " +"opacity areas recede away from the viewer." +msgstr "" +"<b>feDiffuseLighting</b> et feSpecularLighting créent des ombrages " +"« gauffrés ». La composante d'opacité (alpha) de l'entrée est utilisée pour " +"founir l'information de profondeur : les zones de forte opacité sont élevées " +"vers le point de vue et les zones de faible opacité sont reculées par " +"rapport au point de vue." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2748 -msgid "The <b>feDisplacementMap</b> filter primitive displaces the pixels in the first input using the second input as a displacement map, that shows from how far the pixel should come from. Classical examples are whirl and pinch effects." -msgstr "<b>feDisplacementMap</b> déplace les pixels de la première entrée en utilisant la deuxième entrée comme displacement map, qui définit la distance d'où le pixel doit venir. Les exemples les plus classiques sont les effets de tourbillon et de contraction." +#: ../src/ui/dialog/filter-effects-dialog.cpp:2762 +msgid "" +"The <b>feDisplacementMap</b> filter primitive displaces the pixels in the " +"first input using the second input as a displacement map, that shows from " +"how far the pixel should come from. Classical examples are whirl and pinch " +"effects." +msgstr "" +"<b>feDisplacementMap</b> déplace les pixels de la première entrée en " +"utilisant la deuxième entrée comme displacement map, qui définit la distance " +"d'où le pixel doit venir. Les exemples les plus classiques sont les effets " +"de tourbillon et de contraction." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2752 -msgid "The <b>feFlood</b> filter primitive fills the region with a given color and opacity. It is usually used as an input to other filters to apply color to a graphic." -msgstr "<b>feFlood</b> remplit la région avec une couleur et une opacité données. Il est le plus souvent utilisé comme entrée pour d'autres filtres pour appliquer une couleur à une ressource graphique." +#: ../src/ui/dialog/filter-effects-dialog.cpp:2766 +msgid "" +"The <b>feFlood</b> filter primitive fills the region with a given color and " +"opacity. It is usually used as an input to other filters to apply color to " +"a graphic." +msgstr "" +"<b>feFlood</b> remplit la région avec une couleur et une opacité données. Il " +"est le plus souvent utilisé comme entrée pour d'autres filtres pour " +"appliquer une couleur à une ressource graphique." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2756 -msgid "The <b>feGaussianBlur</b> filter primitive uniformly blurs its input. It is commonly used together with feOffset to create a drop shadow effect." -msgstr "<b>feGaussianBlur</b> rend uniformément flou son entrée. Il est le plus souvent utilisé avec feOffset pour créer un effet d'ombre portée." +#: ../src/ui/dialog/filter-effects-dialog.cpp:2770 +msgid "" +"The <b>feGaussianBlur</b> filter primitive uniformly blurs its input. It is " +"commonly used together with feOffset to create a drop shadow effect." +msgstr "" +"<b>feGaussianBlur</b> rend uniformément flou son entrée. Il est le plus " +"souvent utilisé avec feOffset pour créer un effet d'ombre portée." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2760 -msgid "The <b>feImage</b> filter primitive fills the region with an external image or another part of the document." -msgstr "<b>feImage</b> remplit la zone avec une image externe ou une autre partie du document." +#: ../src/ui/dialog/filter-effects-dialog.cpp:2774 +msgid "" +"The <b>feImage</b> filter primitive fills the region with an external image " +"or another part of the document." +msgstr "" +"<b>feImage</b> remplit la zone avec une image externe ou une autre partie du " +"document." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2764 -msgid "The <b>feMerge</b> filter primitive composites several temporary images inside the filter primitive to a single image. It uses normal alpha compositing for this. This is equivalent to using several feBlend primitives in 'normal' mode or several feComposite primitives in 'over' mode." -msgstr "<b>feMerge</b> compose plusieurs images temporaires à l'intérieur du filtre de primitive en une seule image. Il utilise la composition alpha normale pour ce faire. Celà équivaut à utiliser plusieurs primitives feBlend en mode 'normal' ou plusieurs primitives feComposite en mode 'over'." +#: ../src/ui/dialog/filter-effects-dialog.cpp:2778 +msgid "" +"The <b>feMerge</b> filter primitive composites several temporary images " +"inside the filter primitive to a single image. It uses normal alpha " +"compositing for this. This is equivalent to using several feBlend primitives " +"in 'normal' mode or several feComposite primitives in 'over' mode." +msgstr "" +"<b>feMerge</b> compose plusieurs images temporaires à l'intérieur du filtre " +"de primitive en une seule image. Il utilise la composition alpha normale " +"pour ce faire. Celà équivaut à utiliser plusieurs primitives feBlend en mode " +"'normal' ou plusieurs primitives feComposite en mode 'over'." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2768 -msgid "The <b>feMorphology</b> filter primitive provides erode and dilate effects. For single-color objects erode makes the object thinner and dilate makes it thicker." -msgstr "<b>feMorphology</b> fournit des effets de contraction et de dilatation. Pour des objets de couleur uniforme la contraction rend l'objet plus fin et la dilatation le rend plus épais." +#: ../src/ui/dialog/filter-effects-dialog.cpp:2782 +msgid "" +"The <b>feMorphology</b> filter primitive provides erode and dilate effects. " +"For single-color objects erode makes the object thinner and dilate makes it " +"thicker." +msgstr "" +"<b>feMorphology</b> fournit des effets de contraction et de dilatation. Pour " +"des objets de couleur uniforme la contraction rend l'objet plus fin et la " +"dilatation le rend plus épais." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2772 -msgid "The <b>feOffset</b> filter primitive offsets the image by an user-defined amount. For example, this is useful for drop shadows, where the shadow is in a slightly different position than the actual object." -msgstr "<b>feOffset</b> décale l'image d'une quantité définie par l'utilisateur. Par example, il est utile dans le cas des ombres portées, où les ombres sont dans une position légèrement différente de l'objet source de l'ombre." +#: ../src/ui/dialog/filter-effects-dialog.cpp:2786 +msgid "" +"The <b>feOffset</b> filter primitive offsets the image by an user-defined " +"amount. For example, this is useful for drop shadows, where the shadow is in " +"a slightly different position than the actual object." +msgstr "" +"<b>feOffset</b> décale l'image d'une quantité définie par l'utilisateur. Par " +"example, il est utile dans le cas des ombres portées, où les ombres sont " +"dans une position légèrement différente de l'objet source de l'ombre." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2776 -msgid "The <b>feDiffuseLighting</b> and <b>feSpecularLighting</b> filter primitives create \"embossed\" shadings. The input's alpha channel is used to provide depth information: higher opacity areas are raised toward the viewer and lower opacity areas recede away from the viewer." -msgstr "<b>feDiffuseLighting</b> et feSpecularLighting créent des ombrages « gaufrés ». La composante d'opacité (alpha) de l'entrée est utilisée pour fournir l'information de profondeur : les zones de forte opacité sont élevées vers le point de vue et les zones de faible opacité sont reculées par rapport au point de vue." +#: ../src/ui/dialog/filter-effects-dialog.cpp:2790 +msgid "" +"The <b>feDiffuseLighting</b> and <b>feSpecularLighting</b> filter primitives " +"create \"embossed\" shadings. The input's alpha channel is used to provide " +"depth information: higher opacity areas are raised toward the viewer and " +"lower opacity areas recede away from the viewer." +msgstr "" +"<b>feDiffuseLighting</b> et feSpecularLighting créent des ombrages " +"« gaufrés ». La composante d'opacité (alpha) de l'entrée est utilisée pour " +"fournir l'information de profondeur : les zones de forte opacité sont " +"élevées vers le point de vue et les zones de faible opacité sont reculées " +"par rapport au point de vue." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2780 -msgid "The <b>feTile</b> filter primitive tiles a region with its input graphic" -msgstr "<b>feTile</b> pave une région avec la ressource graphique fournie en entrée." +#: ../src/ui/dialog/filter-effects-dialog.cpp:2794 +msgid "" +"The <b>feTile</b> filter primitive tiles a region with its input graphic" +msgstr "" +"<b>feTile</b> pave une région avec la ressource graphique fournie en entrée." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2784 -msgid "The <b>feTurbulence</b> filter primitive renders Perlin noise. This kind of noise is useful in simulating several nature phenomena like clouds, fire and smoke and in generating complex textures like marble or granite." -msgstr "<b>feTurbulence</b> crée du bruit de Perlin. Ce genre de bruit est utile pour simuler les phénomènes naturels comme les nuages, le feu et la fumée, et pour générer des textures complexes comme le marbre ou le granit." +#: ../src/ui/dialog/filter-effects-dialog.cpp:2798 +msgid "" +"The <b>feTurbulence</b> filter primitive renders Perlin noise. This kind of " +"noise is useful in simulating several nature phenomena like clouds, fire and " +"smoke and in generating complex textures like marble or granite." +msgstr "" +"<b>feTurbulence</b> crée du bruit de Perlin. Ce genre de bruit est utile " +"pour simuler les phénomènes naturels comme les nuages, le feu et la fumée, " +"et pour générer des textures complexes comme le marbre ou le granit." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2803 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2817 msgid "Duplicate filter primitive" msgstr "Dupliquer la primitive de filtre" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2856 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2870 msgid "Set filter primitive attribute" msgstr "Définir l'attribut de la primitive de filtre" @@ -14932,7 +16185,9 @@ msgstr "Re_chercher :" #: ../src/ui/dialog/find.cpp:71 msgid "Find objects by their content or properties (exact or partial match)" -msgstr "Rechercher des objets par leur contenu ou propriétés (correspondance exacte ou partielle)" +msgstr "" +"Rechercher des objets par leur contenu ou propriétés (correspondance exacte " +"ou partielle)" #: ../src/ui/dialog/find.cpp:72 msgid "R_eplace:" @@ -14976,7 +16231,9 @@ msgstr "_Propriétés" #: ../src/ui/dialog/find.cpp:78 msgid "Search in object properties, styles, attributes and IDs" -msgstr "Rechercher dans les propriétés, les styles, les attributs et les identifiants des objets" +msgstr "" +"Rechercher dans les propriétés, les styles, les attributs et les " +"identifiants des objets" #: ../src/ui/dialog/find.cpp:80 msgid "Search in" @@ -15106,8 +16363,7 @@ msgstr "Spirales" msgid "Search spirals" msgstr "Rechercher les spirales" -#: ../src/ui/dialog/find.cpp:102 -#: ../src/widgets/toolbox.cpp:1736 +#: ../src/ui/dialog/find.cpp:102 ../src/widgets/toolbox.cpp:1734 msgid "Paths" msgstr "Chemins" @@ -15141,8 +16397,7 @@ msgstr "Clones" msgid "Search clones" msgstr "Rechercher les clones" -#: ../src/ui/dialog/find.cpp:109 -#: ../share/extensions/embedimage.inx.h:3 +#: ../src/ui/dialog/find.cpp:109 ../share/extensions/embedimage.inx.h:3 #: ../share/extensions/extractimage.inx.h:5 msgid "Images" msgstr "Images" @@ -15169,7 +16424,8 @@ msgstr "_Rechercher" #: ../src/ui/dialog/find.cpp:114 msgid "Select all objects matching the selection criteria" -msgstr "Sélectionner tous les objets qui correspondent aux critères de sélection" +msgstr "" +"Sélectionner tous les objets qui correspondent aux critères de sélection" #: ../src/ui/dialog/find.cpp:115 msgid "_Replace All" @@ -15256,8 +16512,7 @@ msgstr "Ne plus afficher cet avertissement" msgid "Font '%1' substituted with '%2'" msgstr "Fonte '%1' remplacée par '%2'" -#: ../src/ui/dialog/glyphs.cpp:60 -#: ../src/ui/dialog/glyphs.cpp:152 +#: ../src/ui/dialog/glyphs.cpp:60 ../src/ui/dialog/glyphs.cpp:152 msgid "all" msgstr "tout" @@ -15269,38 +16524,32 @@ msgstr "commun" msgid "inherited" msgstr "hérité" -#: ../src/ui/dialog/glyphs.cpp:63 -#: ../src/ui/dialog/glyphs.cpp:165 +#: ../src/ui/dialog/glyphs.cpp:63 ../src/ui/dialog/glyphs.cpp:165 msgid "Arabic" msgstr "Arabe" -#: ../src/ui/dialog/glyphs.cpp:64 -#: ../src/ui/dialog/glyphs.cpp:163 +#: ../src/ui/dialog/glyphs.cpp:64 ../src/ui/dialog/glyphs.cpp:163 msgid "Armenian" msgstr "Arménien" -#: ../src/ui/dialog/glyphs.cpp:65 -#: ../src/ui/dialog/glyphs.cpp:172 +#: ../src/ui/dialog/glyphs.cpp:65 ../src/ui/dialog/glyphs.cpp:172 msgid "Bengali" msgstr "Bengali" -#: ../src/ui/dialog/glyphs.cpp:66 -#: ../src/ui/dialog/glyphs.cpp:254 +#: ../src/ui/dialog/glyphs.cpp:66 ../src/ui/dialog/glyphs.cpp:254 msgid "Bopomofo" msgstr "Bopomofo" -#: ../src/ui/dialog/glyphs.cpp:67 -#: ../src/ui/dialog/glyphs.cpp:189 +#: ../src/ui/dialog/glyphs.cpp:67 ../src/ui/dialog/glyphs.cpp:189 msgid "Cherokee" msgstr "Chérokî" -#: ../src/ui/dialog/glyphs.cpp:68 -#: ../src/ui/dialog/glyphs.cpp:242 +#: ../src/ui/dialog/glyphs.cpp:68 ../src/ui/dialog/glyphs.cpp:242 msgid "Coptic" msgstr "Copte" -#: ../src/ui/dialog/glyphs.cpp:69 -#: ../src/ui/dialog/glyphs.cpp:161 +#: ../src/ui/dialog/glyphs.cpp:69 ../src/ui/dialog/glyphs.cpp:161 +#: ../share/extensions/hershey.inx.h:22 msgid "Cyrillic" msgstr "Cyrillique" @@ -15308,18 +16557,15 @@ msgstr "Cyrillique" msgid "Deseret" msgstr "Déséret" -#: ../src/ui/dialog/glyphs.cpp:71 -#: ../src/ui/dialog/glyphs.cpp:171 +#: ../src/ui/dialog/glyphs.cpp:71 ../src/ui/dialog/glyphs.cpp:171 msgid "Devanagari" msgstr "Dévanâgarî" -#: ../src/ui/dialog/glyphs.cpp:72 -#: ../src/ui/dialog/glyphs.cpp:187 +#: ../src/ui/dialog/glyphs.cpp:72 ../src/ui/dialog/glyphs.cpp:187 msgid "Ethiopic" msgstr "Éthiopien" -#: ../src/ui/dialog/glyphs.cpp:73 -#: ../src/ui/dialog/glyphs.cpp:185 +#: ../src/ui/dialog/glyphs.cpp:73 ../src/ui/dialog/glyphs.cpp:185 msgid "Georgian" msgstr "Géorgien" @@ -15331,13 +16577,11 @@ msgstr "Gotique" msgid "Greek" msgstr "Grec" -#: ../src/ui/dialog/glyphs.cpp:76 -#: ../src/ui/dialog/glyphs.cpp:174 +#: ../src/ui/dialog/glyphs.cpp:76 ../src/ui/dialog/glyphs.cpp:174 msgid "Gujarati" msgstr "Goudjarati" -#: ../src/ui/dialog/glyphs.cpp:77 -#: ../src/ui/dialog/glyphs.cpp:173 +#: ../src/ui/dialog/glyphs.cpp:77 ../src/ui/dialog/glyphs.cpp:173 msgid "Gurmukhi" msgstr "Gourmoukhî" @@ -15349,33 +16593,27 @@ msgstr "Han" msgid "Hangul" msgstr "Hangûl" -#: ../src/ui/dialog/glyphs.cpp:80 -#: ../src/ui/dialog/glyphs.cpp:164 +#: ../src/ui/dialog/glyphs.cpp:80 ../src/ui/dialog/glyphs.cpp:164 msgid "Hebrew" msgstr "Hébreu" -#: ../src/ui/dialog/glyphs.cpp:81 -#: ../src/ui/dialog/glyphs.cpp:252 +#: ../src/ui/dialog/glyphs.cpp:81 ../src/ui/dialog/glyphs.cpp:252 msgid "Hiragana" msgstr "Hiragana" -#: ../src/ui/dialog/glyphs.cpp:82 -#: ../src/ui/dialog/glyphs.cpp:178 +#: ../src/ui/dialog/glyphs.cpp:82 ../src/ui/dialog/glyphs.cpp:178 msgid "Kannada" msgstr "Kannara" -#: ../src/ui/dialog/glyphs.cpp:83 -#: ../src/ui/dialog/glyphs.cpp:253 +#: ../src/ui/dialog/glyphs.cpp:83 ../src/ui/dialog/glyphs.cpp:253 msgid "Katakana" msgstr "Katakana" -#: ../src/ui/dialog/glyphs.cpp:84 -#: ../src/ui/dialog/glyphs.cpp:197 +#: ../src/ui/dialog/glyphs.cpp:84 ../src/ui/dialog/glyphs.cpp:197 msgid "Khmer" msgstr "Khmer" -#: ../src/ui/dialog/glyphs.cpp:85 -#: ../src/ui/dialog/glyphs.cpp:182 +#: ../src/ui/dialog/glyphs.cpp:85 ../src/ui/dialog/glyphs.cpp:182 msgid "Lao" msgstr "Lao" @@ -15383,23 +16621,19 @@ msgstr "Lao" msgid "Latin" msgstr "Latin" -#: ../src/ui/dialog/glyphs.cpp:87 -#: ../src/ui/dialog/glyphs.cpp:179 +#: ../src/ui/dialog/glyphs.cpp:87 ../src/ui/dialog/glyphs.cpp:179 msgid "Malayalam" msgstr "Malayalam" -#: ../src/ui/dialog/glyphs.cpp:88 -#: ../src/ui/dialog/glyphs.cpp:198 +#: ../src/ui/dialog/glyphs.cpp:88 ../src/ui/dialog/glyphs.cpp:198 msgid "Mongolian" msgstr "Mongol" -#: ../src/ui/dialog/glyphs.cpp:89 -#: ../src/ui/dialog/glyphs.cpp:184 +#: ../src/ui/dialog/glyphs.cpp:89 ../src/ui/dialog/glyphs.cpp:184 msgid "Myanmar" msgstr "Birman" -#: ../src/ui/dialog/glyphs.cpp:90 -#: ../src/ui/dialog/glyphs.cpp:191 +#: ../src/ui/dialog/glyphs.cpp:90 ../src/ui/dialog/glyphs.cpp:191 msgid "Ogham" msgstr "Ogam" @@ -15407,48 +16641,39 @@ msgstr "Ogam" msgid "Old Italic" msgstr "Vieil italique" -#: ../src/ui/dialog/glyphs.cpp:92 -#: ../src/ui/dialog/glyphs.cpp:175 +#: ../src/ui/dialog/glyphs.cpp:92 ../src/ui/dialog/glyphs.cpp:175 msgid "Oriya" msgstr "Oriya" -#: ../src/ui/dialog/glyphs.cpp:93 -#: ../src/ui/dialog/glyphs.cpp:192 +#: ../src/ui/dialog/glyphs.cpp:93 ../src/ui/dialog/glyphs.cpp:192 msgid "Runic" msgstr "Runes" -#: ../src/ui/dialog/glyphs.cpp:94 -#: ../src/ui/dialog/glyphs.cpp:180 +#: ../src/ui/dialog/glyphs.cpp:94 ../src/ui/dialog/glyphs.cpp:180 msgid "Sinhala" msgstr "Singhalais" -#: ../src/ui/dialog/glyphs.cpp:95 -#: ../src/ui/dialog/glyphs.cpp:166 +#: ../src/ui/dialog/glyphs.cpp:95 ../src/ui/dialog/glyphs.cpp:166 msgid "Syriac" msgstr "Syriaque" -#: ../src/ui/dialog/glyphs.cpp:96 -#: ../src/ui/dialog/glyphs.cpp:176 +#: ../src/ui/dialog/glyphs.cpp:96 ../src/ui/dialog/glyphs.cpp:176 msgid "Tamil" msgstr "Tamoul" -#: ../src/ui/dialog/glyphs.cpp:97 -#: ../src/ui/dialog/glyphs.cpp:177 +#: ../src/ui/dialog/glyphs.cpp:97 ../src/ui/dialog/glyphs.cpp:177 msgid "Telugu" msgstr "Télougou" -#: ../src/ui/dialog/glyphs.cpp:98 -#: ../src/ui/dialog/glyphs.cpp:168 +#: ../src/ui/dialog/glyphs.cpp:98 ../src/ui/dialog/glyphs.cpp:168 msgid "Thaana" msgstr "Thâna" -#: ../src/ui/dialog/glyphs.cpp:99 -#: ../src/ui/dialog/glyphs.cpp:181 +#: ../src/ui/dialog/glyphs.cpp:99 ../src/ui/dialog/glyphs.cpp:181 msgid "Thai" msgstr "Thaï" -#: ../src/ui/dialog/glyphs.cpp:100 -#: ../src/ui/dialog/glyphs.cpp:183 +#: ../src/ui/dialog/glyphs.cpp:100 ../src/ui/dialog/glyphs.cpp:183 msgid "Tibetan" msgstr "Tibétain" @@ -15460,23 +16685,19 @@ msgstr "Syllabaires canadiens" msgid "Yi" msgstr "Yi" -#: ../src/ui/dialog/glyphs.cpp:103 -#: ../src/ui/dialog/glyphs.cpp:193 +#: ../src/ui/dialog/glyphs.cpp:103 ../src/ui/dialog/glyphs.cpp:193 msgid "Tagalog" msgstr "Tagal" -#: ../src/ui/dialog/glyphs.cpp:104 -#: ../src/ui/dialog/glyphs.cpp:194 +#: ../src/ui/dialog/glyphs.cpp:104 ../src/ui/dialog/glyphs.cpp:194 msgid "Hanunoo" msgstr "Hanounóo" -#: ../src/ui/dialog/glyphs.cpp:105 -#: ../src/ui/dialog/glyphs.cpp:195 +#: ../src/ui/dialog/glyphs.cpp:105 ../src/ui/dialog/glyphs.cpp:195 msgid "Buhid" msgstr "Bouhid" -#: ../src/ui/dialog/glyphs.cpp:106 -#: ../src/ui/dialog/glyphs.cpp:196 +#: ../src/ui/dialog/glyphs.cpp:106 ../src/ui/dialog/glyphs.cpp:196 msgid "Tagbanwa" msgstr "Tagbanoua" @@ -15488,8 +16709,7 @@ msgstr "Braille" msgid "Cypriot" msgstr "Syllabaire chypriote" -#: ../src/ui/dialog/glyphs.cpp:109 -#: ../src/ui/dialog/glyphs.cpp:200 +#: ../src/ui/dialog/glyphs.cpp:109 ../src/ui/dialog/glyphs.cpp:200 msgid "Limbu" msgstr "Limbu" @@ -15505,8 +16725,7 @@ msgstr "Shavien" msgid "Linear B" msgstr "Linéaire B" -#: ../src/ui/dialog/glyphs.cpp:113 -#: ../src/ui/dialog/glyphs.cpp:201 +#: ../src/ui/dialog/glyphs.cpp:113 ../src/ui/dialog/glyphs.cpp:201 msgid "Tai Le" msgstr "Taï-le" @@ -15514,28 +16733,23 @@ msgstr "Taï-le" msgid "Ugaritic" msgstr "Ougaritique" -#: ../src/ui/dialog/glyphs.cpp:115 -#: ../src/ui/dialog/glyphs.cpp:202 +#: ../src/ui/dialog/glyphs.cpp:115 ../src/ui/dialog/glyphs.cpp:202 msgid "New Tai Lue" msgstr "Nouveau taï lü" -#: ../src/ui/dialog/glyphs.cpp:116 -#: ../src/ui/dialog/glyphs.cpp:204 +#: ../src/ui/dialog/glyphs.cpp:116 ../src/ui/dialog/glyphs.cpp:204 msgid "Buginese" msgstr "Buginais" -#: ../src/ui/dialog/glyphs.cpp:117 -#: ../src/ui/dialog/glyphs.cpp:240 +#: ../src/ui/dialog/glyphs.cpp:117 ../src/ui/dialog/glyphs.cpp:240 msgid "Glagolitic" msgstr "Glagolitique" -#: ../src/ui/dialog/glyphs.cpp:118 -#: ../src/ui/dialog/glyphs.cpp:244 +#: ../src/ui/dialog/glyphs.cpp:118 ../src/ui/dialog/glyphs.cpp:244 msgid "Tifinagh" msgstr "Tifinaghe" -#: ../src/ui/dialog/glyphs.cpp:119 -#: ../src/ui/dialog/glyphs.cpp:273 +#: ../src/ui/dialog/glyphs.cpp:119 ../src/ui/dialog/glyphs.cpp:273 msgid "Syloti Nagri" msgstr "Sylotî nâgrî" @@ -15551,8 +16765,7 @@ msgstr "Kharochthî" msgid "unassigned" msgstr "Non assigné" -#: ../src/ui/dialog/glyphs.cpp:123 -#: ../src/ui/dialog/glyphs.cpp:206 +#: ../src/ui/dialog/glyphs.cpp:123 ../src/ui/dialog/glyphs.cpp:206 msgid "Balinese" msgstr "Balinais" @@ -15564,8 +16777,7 @@ msgstr "Cunéiforme" msgid "Phoenician" msgstr "Phénicien" -#: ../src/ui/dialog/glyphs.cpp:126 -#: ../src/ui/dialog/glyphs.cpp:275 +#: ../src/ui/dialog/glyphs.cpp:126 ../src/ui/dialog/glyphs.cpp:275 msgid "Phags-pa" msgstr "Phags-pa" @@ -15573,43 +16785,35 @@ msgstr "Phags-pa" msgid "N'Ko" msgstr "N'Ko" -#: ../src/ui/dialog/glyphs.cpp:128 -#: ../src/ui/dialog/glyphs.cpp:278 +#: ../src/ui/dialog/glyphs.cpp:128 ../src/ui/dialog/glyphs.cpp:278 msgid "Kayah Li" msgstr "Kayah Li" -#: ../src/ui/dialog/glyphs.cpp:129 -#: ../src/ui/dialog/glyphs.cpp:208 +#: ../src/ui/dialog/glyphs.cpp:129 ../src/ui/dialog/glyphs.cpp:208 msgid "Lepcha" msgstr "Lepcha" -#: ../src/ui/dialog/glyphs.cpp:130 -#: ../src/ui/dialog/glyphs.cpp:279 +#: ../src/ui/dialog/glyphs.cpp:130 ../src/ui/dialog/glyphs.cpp:279 msgid "Rejang" msgstr "Rejang" -#: ../src/ui/dialog/glyphs.cpp:131 -#: ../src/ui/dialog/glyphs.cpp:207 +#: ../src/ui/dialog/glyphs.cpp:131 ../src/ui/dialog/glyphs.cpp:207 msgid "Sundanese" msgstr "Soundanais" -#: ../src/ui/dialog/glyphs.cpp:132 -#: ../src/ui/dialog/glyphs.cpp:276 +#: ../src/ui/dialog/glyphs.cpp:132 ../src/ui/dialog/glyphs.cpp:276 msgid "Saurashtra" msgstr "Saurashtra" -#: ../src/ui/dialog/glyphs.cpp:133 -#: ../src/ui/dialog/glyphs.cpp:282 +#: ../src/ui/dialog/glyphs.cpp:133 ../src/ui/dialog/glyphs.cpp:282 msgid "Cham" msgstr "Cham" -#: ../src/ui/dialog/glyphs.cpp:134 -#: ../src/ui/dialog/glyphs.cpp:209 +#: ../src/ui/dialog/glyphs.cpp:134 ../src/ui/dialog/glyphs.cpp:209 msgid "Ol Chiki" msgstr "Santâlî" -#: ../src/ui/dialog/glyphs.cpp:135 -#: ../src/ui/dialog/glyphs.cpp:268 +#: ../src/ui/dialog/glyphs.cpp:135 ../src/ui/dialog/glyphs.cpp:268 msgid "Vai" msgstr "Vaï" @@ -16051,8 +17255,7 @@ msgctxt "Guides" msgid "_Y:" msgstr "_Y :" -#: ../src/ui/dialog/guides.cpp:50 -#: ../src/ui/dialog/object-properties.cpp:62 +#: ../src/ui/dialog/guides.cpp:50 ../src/ui/dialog/object-properties.cpp:62 msgid "_Label:" msgstr "É_tiquette :" @@ -16109,8 +17312,11 @@ msgid "Show selection cue" msgstr "Afficher les poignées de sélection" #: ../src/ui/dialog/inkscape-preferences.cpp:182 -msgid "Whether selected objects display a selection cue (the same as in selector)" -msgstr "Si coché, l'objet sélectionné affiche ses poignées de sélection (les mêmes que dans le sélecteur)" +msgid "" +"Whether selected objects display a selection cue (the same as in selector)" +msgstr "" +"Si coché, l'objet sélectionné affiche ses poignées de sélection (les mêmes " +"que dans le sélecteur)" #: ../src/ui/dialog/inkscape-preferences.cpp:188 msgid "Enable gradient editing" @@ -16118,15 +17324,23 @@ msgstr "Activer l'édition de dégradé" #: ../src/ui/dialog/inkscape-preferences.cpp:189 msgid "Whether selected objects display gradient editing controls" -msgstr "Si coché, les objets sélectionnés affichent leurs poignées d'édition de dégradés" +msgstr "" +"Si coché, les objets sélectionnés affichent leurs poignées d'édition de " +"dégradés" #: ../src/ui/dialog/inkscape-preferences.cpp:194 msgid "Conversion to guides uses edges instead of bounding box" -msgstr "Utiliser les bords (plutôt que les boîtes englobantes) pour convertir en guides" +msgstr "" +"Utiliser les bords (plutôt que les boîtes englobantes) pour convertir en " +"guides" #: ../src/ui/dialog/inkscape-preferences.cpp:195 -msgid "Converting an object to guides places these along the object's true edges (imitating the object's shape), not along the bounding box" -msgstr "La conversion d'un objet en guides place ceux-ci le long des bords réels de l'objet (imitant la forme de l'objet), et non le long de sa boîte englobante" +msgid "" +"Converting an object to guides places these along the object's true edges " +"(imitating the object's shape), not along the bounding box" +msgstr "" +"La conversion d'un objet en guides place ceux-ci le long des bords réels de " +"l'objet (imitant la forme de l'objet), et non le long de sa boîte englobante" #: ../src/ui/dialog/inkscape-preferences.cpp:202 msgid "Ctrl+click _dot size:" @@ -16138,15 +17352,21 @@ msgstr "fois l'épaisseur courante de contour" #: ../src/ui/dialog/inkscape-preferences.cpp:203 msgid "Size of dots created with Ctrl+click (relative to current stroke width)" -msgstr "Taille des points créés avec Ctrl+clic (par rapport à l'épaisseur courante de contour)" +msgstr "" +"Taille des points créés avec Ctrl+clic (par rapport à l'épaisseur courante " +"de contour)" #: ../src/ui/dialog/inkscape-preferences.cpp:218 msgid "<b>No objects selected</b> to take the style from." msgstr "<b>Aucun objet sélectionné</b> pour en capturer le style." #: ../src/ui/dialog/inkscape-preferences.cpp:227 -msgid "<b>More than one object selected.</b> Cannot take style from multiple objects." -msgstr "<b>Plus d'un objet est sélectionné.</b> Impossible de capturer le style de plusieurs objets." +msgid "" +"<b>More than one object selected.</b> Cannot take style from multiple " +"objects." +msgstr "" +"<b>Plus d'un objet est sélectionné.</b> Impossible de capturer le style de " +"plusieurs objets." #: ../src/ui/dialog/inkscape-preferences.cpp:260 msgid "Style of new objects" @@ -16165,8 +17385,12 @@ msgid "This tool's own style:" msgstr "Style propre à l'outil :" #: ../src/ui/dialog/inkscape-preferences.cpp:273 -msgid "Each tool may store its own style to apply to the newly created objects. Use the button below to set it." -msgstr "Chaque outil retient son propre style à appliquer aux nouveaux objets créés. Utiliser le bouton ci-dessous pour le définir." +msgid "" +"Each tool may store its own style to apply to the newly created objects. Use " +"the button below to set it." +msgstr "" +"Chaque outil retient son propre style à appliquer aux nouveaux objets créés. " +"Utiliser le bouton ci-dessous pour le définir." #. style swatch #: ../src/ui/dialog/inkscape-preferences.cpp:277 @@ -16179,7 +17403,8 @@ msgstr "Style de cet outil pour les nouveaux objets" #: ../src/ui/dialog/inkscape-preferences.cpp:289 msgid "Remember the style of the (first) selected object as this tool's style" -msgstr "Mémoriser le style du premier objet sélectionné comme style de cet outil" +msgstr "" +"Mémoriser le style du premier objet sélectionné comme style de cet outil" #: ../src/ui/dialog/inkscape-preferences.cpp:294 msgid "Tools" @@ -16195,7 +17420,9 @@ msgstr "Boîte englobante visuelle" #: ../src/ui/dialog/inkscape-preferences.cpp:300 msgid "This bounding box includes stroke width, markers, filter margins, etc." -msgstr "Cette boîte englobante comprend l'épaisseur du contour, les marqueurs, les marges des filtres, etc." +msgstr "" +"Cette boîte englobante comprend l'épaisseur du contour, les marqueurs, les " +"marges des filtres, etc." #: ../src/ui/dialog/inkscape-preferences.cpp:301 msgid "Geometric bounding box" @@ -16214,16 +17441,24 @@ msgid "Keep objects after conversion to guides" msgstr "Conserver les objets après leur conversion en guides" #: ../src/ui/dialog/inkscape-preferences.cpp:308 -msgid "When converting an object to guides, don't delete the object after the conversion" -msgstr "Lors de la conversion d'objets en guides, ne pas supprimer les objets après la conversion" +msgid "" +"When converting an object to guides, don't delete the object after the " +"conversion" +msgstr "" +"Lors de la conversion d'objets en guides, ne pas supprimer les objets après " +"la conversion" #: ../src/ui/dialog/inkscape-preferences.cpp:309 msgid "Treat groups as a single object" msgstr "Manipule le groupe comme un objet unique" #: ../src/ui/dialog/inkscape-preferences.cpp:311 -msgid "Treat groups as a single object during conversion to guides rather than converting each child separately" -msgstr "Lors de la conversion en guides, les groupes sont traités chacun comme un objet unique (la conversion n'est pas appliquée à chaque enfant séparément)" +msgid "" +"Treat groups as a single object during conversion to guides rather than " +"converting each child separately" +msgstr "" +"Lors de la conversion en guides, les groupes sont traités chacun comme un " +"objet unique (la conversion n'est pas appliquée à chaque enfant séparément)" #: ../src/ui/dialog/inkscape-preferences.cpp:313 msgid "Average all sketches" @@ -16264,7 +17499,9 @@ msgstr "Silhouette rectangulaire" #: ../src/ui/dialog/inkscape-preferences.cpp:330 msgid "Show only a box outline of the objects when moving or transforming" -msgstr "N'afficher que la silhouette rectangulaire des objets lors de leurs déplacements ou transformations" +msgstr "" +"N'afficher que la silhouette rectangulaire des objets lors de leurs " +"déplacements ou transformations" #: ../src/ui/dialog/inkscape-preferences.cpp:331 msgid "Per-object selection cue" @@ -16280,7 +17517,9 @@ msgstr "Marque" #: ../src/ui/dialog/inkscape-preferences.cpp:337 msgid "Each selected object has a diamond mark in the top left corner" -msgstr "Chaque objet sélectionné est marqué d'un losange dans le coin en haut à gauche" +msgstr "" +"Chaque objet sélectionné est marqué d'un losange dans le coin en haut à " +"gauche" #: ../src/ui/dialog/inkscape-preferences.cpp:338 msgid "Box" @@ -16313,31 +17552,47 @@ msgstr "Toujours afficher le contour" #: ../src/ui/dialog/inkscape-preferences.cpp:350 msgid "Show outlines for all paths, not only invisible paths" -msgstr "Affiche les contours pour tous les chemins, pas seulement les chemins invisibles" +msgstr "" +"Affiche les contours pour tous les chemins, pas seulement les chemins " +"invisibles" #: ../src/ui/dialog/inkscape-preferences.cpp:351 msgid "Update outline when dragging nodes" msgstr "Mettre à jour le contour pendant le déplacement des nÅ“uds" #: ../src/ui/dialog/inkscape-preferences.cpp:352 -msgid "Update the outline when dragging or transforming nodes; if this is off, the outline will only update when completing a drag" -msgstr "Met à jour le contour pendant le déplacement ou la transformation des nÅ“uds ; lorsque cette option est désactivée, le contour n'est mis à jour qu'à la fin du déplacement" +msgid "" +"Update the outline when dragging or transforming nodes; if this is off, the " +"outline will only update when completing a drag" +msgstr "" +"Met à jour le contour pendant le déplacement ou la transformation des " +"nÅ“uds ; lorsque cette option est désactivée, le contour n'est mis à jour " +"qu'à la fin du déplacement" #: ../src/ui/dialog/inkscape-preferences.cpp:353 msgid "Update paths when dragging nodes" msgstr "Mettre à jour les chemins pendant le déplacement des nÅ“uds" #: ../src/ui/dialog/inkscape-preferences.cpp:354 -msgid "Update paths when dragging or transforming nodes; if this is off, paths will only be updated when completing a drag" -msgstr "Met à jour les chemins pendant le déplacement ou la transformation des nÅ“uds ; lorsque cette option est désactivée, les chemins ne sont mis à jour qu'à la fin du déplacement" +msgid "" +"Update paths when dragging or transforming nodes; if this is off, paths will " +"only be updated when completing a drag" +msgstr "" +"Met à jour les chemins pendant le déplacement ou la transformation des " +"nÅ“uds ; lorsque cette option est désactivée, les chemins ne sont mis à jour " +"qu'à la fin du déplacement" #: ../src/ui/dialog/inkscape-preferences.cpp:355 msgid "Show path direction on outlines" msgstr "Afficher la direction des chemins sur le contour" #: ../src/ui/dialog/inkscape-preferences.cpp:356 -msgid "Visualize the direction of selected paths by drawing small arrows in the middle of each outline segment" -msgstr "Visualise la direction des chemins sélectionnés en dessinant de petites flèches au milieu de chaque segment de contour" +msgid "" +"Visualize the direction of selected paths by drawing small arrows in the " +"middle of each outline segment" +msgstr "" +"Visualise la direction des chemins sélectionnés en dessinant de petites " +"flèches au milieu de chaque segment de contour" #: ../src/ui/dialog/inkscape-preferences.cpp:357 msgid "Show temporary path outline" @@ -16353,15 +17608,23 @@ msgstr "Afficher temporairement le contour des chemins sélectionnés" #: ../src/ui/dialog/inkscape-preferences.cpp:360 msgid "Show temporary outline even when a path is selected for editing" -msgstr "Affiche temporairement le contour même lorsqu'un chemin est sélectionné pour édition" +msgstr "" +"Affiche temporairement le contour même lorsqu'un chemin est sélectionné pour " +"édition" #: ../src/ui/dialog/inkscape-preferences.cpp:362 msgid "_Flash time:" msgstr "Durée de _clignotement :" #: ../src/ui/dialog/inkscape-preferences.cpp:362 -msgid "Specifies how long the path outline will be visible after a mouse-over (in milliseconds); specify 0 to have the outline shown until mouse leaves the path" -msgstr "Définit combien de temps le contour sera visible après son survol par la souris (en millisecondes) ; choisissez 0 pour garder le contour visible jusqu'à ce que la souris quitte le chemin." +msgid "" +"Specifies how long the path outline will be visible after a mouse-over (in " +"milliseconds); specify 0 to have the outline shown until mouse leaves the " +"path" +msgstr "" +"Définit combien de temps le contour sera visible après son survol par la " +"souris (en millisecondes) ; choisissez 0 pour garder le contour visible " +"jusqu'à ce que la souris quitte le chemin." #: ../src/ui/dialog/inkscape-preferences.cpp:363 msgid "Editing preferences" @@ -16373,15 +17636,21 @@ msgstr "Afficher les poignées de transformation pour un nÅ“ud seul" #: ../src/ui/dialog/inkscape-preferences.cpp:365 msgid "Show transform handles even when only a single node is selected" -msgstr "Affiche les poignées de transformation même lorsqu'un seul nÅ“ud est sélectionné" +msgstr "" +"Affiche les poignées de transformation même lorsqu'un seul nÅ“ud est " +"sélectionné" #: ../src/ui/dialog/inkscape-preferences.cpp:366 msgid "Deleting nodes preserves shape" msgstr "La suppression des nÅ“uds préserve la forme" #: ../src/ui/dialog/inkscape-preferences.cpp:367 -msgid "Move handles next to deleted nodes to resemble original shape; hold Ctrl to get the other behavior" -msgstr "Déplace les poignées près des nÅ“uds supprimés pour conserver la forme originale ; maintenir Ctrl pour désactiver cette fonctionnalité" +msgid "" +"Move handles next to deleted nodes to resemble original shape; hold Ctrl to " +"get the other behavior" +msgstr "" +"Déplace les poignées près des nÅ“uds supprimés pour conserver la forme " +"originale ; maintenir Ctrl pour désactiver cette fonctionnalité" #. Tweak #: ../src/ui/dialog/inkscape-preferences.cpp:370 @@ -16394,13 +17663,12 @@ msgstr "Style de l'outil" #. Zoom #: ../src/ui/dialog/inkscape-preferences.cpp:376 -#: ../src/widgets/desktop-widget.cpp:631 +#: ../src/widgets/desktop-widget.cpp:635 msgid "Zoom" msgstr "Zoom" #. Measure -#: ../src/ui/dialog/inkscape-preferences.cpp:381 -#: ../src/verbs.cpp:2619 +#: ../src/ui/dialog/inkscape-preferences.cpp:381 ../src/verbs.cpp:2682 msgctxt "ContextVerb" msgid "Measure" msgstr "Mesurer" @@ -16410,8 +17678,14 @@ msgid "Ignore first and last points" msgstr "Ignorer le premier et le dernier point" #: ../src/ui/dialog/inkscape-preferences.cpp:384 -msgid "The start and end of the measurement tool's control line will not be considered for calculating lengths. Only lengths between actual curve intersections will be displayed." -msgstr "Le début et la fin de la ligne de contrôle de l'outil de mesure ne sont pas pris en compte dans le calcul des longueurs. Seules les longueurs entre les intersections des chemins sont affichées." +msgid "" +"The start and end of the measurement tool's control line will not be " +"considered for calculating lengths. Only lengths between actual curve " +"intersections will be displayed." +msgstr "" +"Le début et la fin de la ligne de contrôle de l'outil de mesure ne sont pas " +"pris en compte dans le calcul des longueurs. Seules les longueurs entre les " +"intersections des chemins sont affichées." #. Shapes #: ../src/ui/dialog/inkscape-preferences.cpp:387 @@ -16423,8 +17697,13 @@ msgid "Sketch mode" msgstr "Mode croquis" #: ../src/ui/dialog/inkscape-preferences.cpp:421 -msgid "If on, the sketch result will be the normal average of all sketches made, instead of averaging the old result with the new sketch" -msgstr "Si coché, le résultat du croquis sera moyenné avec tous les autres croquis ; sinon, la moyenne sera effectuée entre l'ancien résultat et le nouveau croquis" +msgid "" +"If on, the sketch result will be the normal average of all sketches made, " +"instead of averaging the old result with the new sketch" +msgstr "" +"Si coché, le résultat du croquis sera moyenné avec tous les autres croquis ; " +"sinon, la moyenne sera effectuée entre l'ancien résultat et le nouveau " +"croquis" #. Pen #: ../src/ui/dialog/inkscape-preferences.cpp:424 @@ -16438,16 +17717,24 @@ msgid "Calligraphy" msgstr "Plume calligraphique" #: ../src/ui/dialog/inkscape-preferences.cpp:434 -msgid "If on, pen width is in absolute units (px) independent of zoom; otherwise pen width depends on zoom so that it looks the same at any zoom" -msgstr "Si coché, la largeur de la plume est en unités absolues (px) indépendemment du zoom; sinon, la largeur de plume dépend du zoom afin de paraître la même quel que soit le zoom" +msgid "" +"If on, pen width is in absolute units (px) independent of zoom; otherwise " +"pen width depends on zoom so that it looks the same at any zoom" +msgstr "" +"Si coché, la largeur de la plume est en unités absolues (px) indépendemment " +"du zoom; sinon, la largeur de plume dépend du zoom afin de paraître la même " +"quel que soit le zoom" #: ../src/ui/dialog/inkscape-preferences.cpp:436 -msgid "If on, each newly created object will be selected (deselecting previous selection)" -msgstr "Activer pour que les nouveaux objets soient automatiquement sélectionnés (à la place de l'ancienne sélection)" +msgid "" +"If on, each newly created object will be selected (deselecting previous " +"selection)" +msgstr "" +"Activer pour que les nouveaux objets soient automatiquement sélectionnés (à " +"la place de l'ancienne sélection)" #. Text -#: ../src/ui/dialog/inkscape-preferences.cpp:439 -#: ../src/verbs.cpp:2611 +#: ../src/ui/dialog/inkscape-preferences.cpp:439 ../src/verbs.cpp:2674 msgctxt "ContextVerb" msgid "Text" msgstr "Texte" @@ -16457,16 +17744,47 @@ msgid "Show font samples in the drop-down list" msgstr "Afficher les échantillons de police dans la liste déroulante" #: ../src/ui/dialog/inkscape-preferences.cpp:445 -msgid "Show font samples alongside font names in the drop-down list in Text bar" -msgstr "Affiche les échantillons de police à côté du nom dans la liste déroulante de la barre de texte" +msgid "" +"Show font samples alongside font names in the drop-down list in Text bar" +msgstr "" +"Affiche les échantillons de police à côté du nom dans la liste déroulante de " +"la barre de texte" #: ../src/ui/dialog/inkscape-preferences.cpp:447 msgid "Show font substitution warning dialog" msgstr "Afficher un avertissement lors du remplacement de polices" #: ../src/ui/dialog/inkscape-preferences.cpp:448 -msgid "Show font substitution warning dialog when requested fonts are not available on the system" -msgstr "Afficher un avertissement de remplacement de police lorsque les polices demandées ne sont pas disponibles" +msgid "" +"Show font substitution warning dialog when requested fonts are not available " +"on the system" +msgstr "" +"Afficher un avertissement de remplacement de police lorsque les polices " +"demandées ne sont pas disponibles" + +#: ../src/ui/dialog/inkscape-preferences.cpp:451 +msgid "Pixel" +msgstr "Pixel" + +#: ../src/ui/dialog/inkscape-preferences.cpp:451 +msgid "Pica" +msgstr "Pica" + +#: ../src/ui/dialog/inkscape-preferences.cpp:451 +msgid "Millimeter" +msgstr "Millimètre" + +#: ../src/ui/dialog/inkscape-preferences.cpp:451 +msgid "Centimeter" +msgstr "Centimètre" + +#: ../src/ui/dialog/inkscape-preferences.cpp:451 +msgid "Inch" +msgstr "Pouce" + +#: ../src/ui/dialog/inkscape-preferences.cpp:451 +msgid "Em square" +msgstr "Em carré" #. , _("Ex square"), _("Percent") #. , SP_CSS_UNIT_EX, SP_CSS_UNIT_PERCENT @@ -16480,15 +17798,21 @@ msgstr "Unité de mesure pour la taille du texte :" #: ../src/ui/dialog/inkscape-preferences.cpp:457 msgid "Set the type of unit used in the text toolbar and text dialogs" -msgstr "Définir le type d'unité utilisée dans la boîte de dialogue Texte et police et la barre de commande de l'outil texte" +msgstr "" +"Définir le type d'unité utilisée dans la boîte de dialogue Texte et police " +"et la barre de commande de l'outil texte" #: ../src/ui/dialog/inkscape-preferences.cpp:458 msgid "Always output text size in pixels (px)" msgstr "Toujours enregistrer la taille du texte en pixels (px)" #: ../src/ui/dialog/inkscape-preferences.cpp:459 -msgid "Always convert the text size units above into pixels (px) before saving to file" -msgstr "Toujours convertir la taille du texte en pixels (px) avant d'enregistrer dans un fichier" +msgid "" +"Always convert the text size units above into pixels (px) before saving to " +"file" +msgstr "" +"Toujours convertir la taille du texte en pixels (px) avant d'enregistrer " +"dans un fichier" #. Spray #: ../src/ui/dialog/inkscape-preferences.cpp:464 @@ -16507,8 +17831,8 @@ msgstr "Remplissage au seau" #. Gradient #: ../src/ui/dialog/inkscape-preferences.cpp:478 -#: ../src/widgets/gradient-selector.cpp:150 -#: ../src/widgets/gradient-selector.cpp:302 +#: ../src/widgets/gradient-selector.cpp:151 +#: ../src/widgets/gradient-selector.cpp:303 msgid "Gradient" msgstr "Dégradé" @@ -16517,15 +17841,24 @@ msgid "Prevent sharing of gradient definitions" msgstr "Interdire le partage des définitions de dégradé" #: ../src/ui/dialog/inkscape-preferences.cpp:482 -msgid "When on, shared gradient definitions are automatically forked on change; uncheck to allow sharing of gradient definitions so that editing one object may affect other objects using the same gradient" -msgstr "Si coché, les définitions communes de dégradés sont automatiquement dupliquées lors d'une modification; décocher pour autoriser le partage des définitions de dégradé de manière à ce que la modification d'un objet puisse affecter tous les objets utilisant le même dégradé" +msgid "" +"When on, shared gradient definitions are automatically forked on change; " +"uncheck to allow sharing of gradient definitions so that editing one object " +"may affect other objects using the same gradient" +msgstr "" +"Si coché, les définitions communes de dégradés sont automatiquement " +"dupliquées lors d'une modification; décocher pour autoriser le partage des " +"définitions de dégradé de manière à ce que la modification d'un objet puisse " +"affecter tous les objets utilisant le même dégradé" #: ../src/ui/dialog/inkscape-preferences.cpp:483 msgid "Use legacy Gradient Editor" msgstr "Utiliser l'ancien éditeur de dégradé" #: ../src/ui/dialog/inkscape-preferences.cpp:485 -msgid "When on, the Gradient Edit button in the Fill & Stroke dialog will show the legacy Gradient Editor dialog, when off the Gradient Tool will be used" +msgid "" +"When on, the Gradient Edit button in the Fill & Stroke dialog will show the " +"legacy Gradient Editor dialog, when off the Gradient Tool will be used" msgstr "" #: ../src/ui/dialog/inkscape-preferences.cpp:488 @@ -16533,7 +17866,8 @@ msgid "Linear gradient _angle:" msgstr "_Angle de dégradé linéaire :" #: ../src/ui/dialog/inkscape-preferences.cpp:489 -msgid "Default angle of new linear gradients in degrees (clockwise from horizontal)" +msgid "" +"Default angle of new linear gradients in degrees (clockwise from horizontal)" msgstr "" #. Dropper @@ -16548,7 +17882,9 @@ msgstr "Connecteur" #: ../src/ui/dialog/inkscape-preferences.cpp:501 msgid "If on, connector attachment points will not be shown for text objects" -msgstr "Si coché, les points d'accroche de connecteur ne sont pas montrés pour des objets texte" +msgstr "" +"Si coché, les points d'accroche de connecteur ne sont pas montrés pour des " +"objets texte" #: ../src/ui/dialog/inkscape-preferences.cpp:511 msgid "Interface" @@ -16854,31 +18190,42 @@ msgstr "Taille des icônes de la barre d'outils :" #: ../src/ui/dialog/inkscape-preferences.cpp:566 msgid "Set the size for the tool icons (requires restart)" -msgstr "Définit la taille des icônes de la barre d'outils (nécessite un redémarrage)" +msgstr "" +"Définit la taille des icônes de la barre d'outils (nécessite un redémarrage)" #: ../src/ui/dialog/inkscape-preferences.cpp:569 msgid "Control bar icon size:" msgstr "Taille des icônes de la barre de contrôle des outils :" #: ../src/ui/dialog/inkscape-preferences.cpp:570 -msgid "Set the size for the icons in tools' control bars to use (requires restart)" -msgstr "Définit la taille des icônes de la barre de contrôle des outils (nécessite un redémarrage)" +msgid "" +"Set the size for the icons in tools' control bars to use (requires restart)" +msgstr "" +"Définit la taille des icônes de la barre de contrôle des outils (nécessite " +"un redémarrage)" #: ../src/ui/dialog/inkscape-preferences.cpp:573 msgid "Secondary toolbar icon size:" msgstr "Taille des icônes de la barre d'outils secondaire :" #: ../src/ui/dialog/inkscape-preferences.cpp:574 -msgid "Set the size for the icons in secondary toolbars to use (requires restart)" -msgstr "Définit la taille des icônes de la barre d'outils secondaire (nécessite un redémarrage)" +msgid "" +"Set the size for the icons in secondary toolbars to use (requires restart)" +msgstr "" +"Définit la taille des icônes de la barre d'outils secondaire (nécessite un " +"redémarrage)" #: ../src/ui/dialog/inkscape-preferences.cpp:577 msgid "Work-around color sliders not drawing" msgstr "Contourner le non affichage des barres de défilement de couleur" #: ../src/ui/dialog/inkscape-preferences.cpp:579 -msgid "When on, will attempt to work around bugs in certain GTK themes drawing color sliders" -msgstr "Si activé, essayera de contourner un défaut d'affichage des barres de défilement de couleur lié à certains thèmes GTK" +msgid "" +"When on, will attempt to work around bugs in certain GTK themes drawing " +"color sliders" +msgstr "" +"Si activé, essayera de contourner un défaut d'affichage des barres de " +"défilement de couleur lié à certains thèmes GTK" #: ../src/ui/dialog/inkscape-preferences.cpp:584 msgid "Clear list" @@ -16889,33 +18236,53 @@ msgid "Maximum documents in Open _Recent:" msgstr "Nombre maximum de documents _récents :" #: ../src/ui/dialog/inkscape-preferences.cpp:588 -msgid "Set the maximum length of the Open Recent list in the File menu, or clear the list" -msgstr "Définit la longueur maximum de la liste « Documents récents » dans le menu « Fichier », ou efface la liste" +msgid "" +"Set the maximum length of the Open Recent list in the File menu, or clear " +"the list" +msgstr "" +"Définit la longueur maximum de la liste « Documents récents » dans le menu " +"« Fichier », ou efface la liste" #: ../src/ui/dialog/inkscape-preferences.cpp:591 msgid "_Zoom correction factor (in %):" msgstr "Niveau de correction du _zoom (en %) :" #: ../src/ui/dialog/inkscape-preferences.cpp:592 -msgid "Adjust the slider until the length of the ruler on your screen matches its real length. This information is used when zooming to 1:1, 1:2, etc., to display objects in their true sizes" -msgstr "Ajuster le curseur pour faire correspondre la longueur de la règle sur l'écran avec sa vraie valeur. Cette information est utilisée lors des zoom de niveau 1:1, 1:2, etc. pour afficher les objets avec leur taille exacte" +msgid "" +"Adjust the slider until the length of the ruler on your screen matches its " +"real length. This information is used when zooming to 1:1, 1:2, etc., to " +"display objects in their true sizes" +msgstr "" +"Ajuster le curseur pour faire correspondre la longueur de la règle sur " +"l'écran avec sa vraie valeur. Cette information est utilisée lors des zoom " +"de niveau 1:1, 1:2, etc. pour afficher les objets avec leur taille exacte" #: ../src/ui/dialog/inkscape-preferences.cpp:595 msgid "Enable dynamic relayout for incomplete sections" msgstr "Activer la remise en forme dynamique des sections incomplètes" #: ../src/ui/dialog/inkscape-preferences.cpp:597 -msgid "When on, will allow dynamic layout of components that are not completely finished being refactored" -msgstr "Lorsqu'activé, autorise la mise en forme dynamique des composants dont le réusinage n'est pas complètement achevé" +msgid "" +"When on, will allow dynamic layout of components that are not completely " +"finished being refactored" +msgstr "" +"Lorsqu'activé, autorise la mise en forme dynamique des composants dont le " +"réusinage n'est pas complètement achevé" #. show infobox #: ../src/ui/dialog/inkscape-preferences.cpp:600 msgid "Show filter primitives infobox (requires restart)" -msgstr "Affiche la boîte d'information des primitives de filtre (nécessite un redémarrage)" +msgstr "" +"Affiche la boîte d'information des primitives de filtre (nécessite un " +"redémarrage)" #: ../src/ui/dialog/inkscape-preferences.cpp:602 -msgid "Show icons and descriptions for the filter primitives available at the filter effects dialog" -msgstr "Afficher les icônes et les descriptions pour les primitives de filtre disponibles dans la boîte de dialogue des effets de filtre" +msgid "" +"Show icons and descriptions for the filter primitives available at the " +"filter effects dialog" +msgstr "" +"Afficher les icônes et les descriptions pour les primitives de filtre " +"disponibles dans la boîte de dialogue des effets de filtre" #: ../src/ui/dialog/inkscape-preferences.cpp:605 #: ../src/ui/dialog/inkscape-preferences.cpp:613 @@ -16937,7 +18304,9 @@ msgid "Dockbar style (requires restart):" msgstr "Style de barre détachable (nécessite un redémarrage) :" #: ../src/ui/dialog/inkscape-preferences.cpp:611 -msgid "Selects whether the vertical bars on the dockbar will show text labels, icons, or both" +msgid "" +"Selects whether the vertical bars on the dockbar will show text labels, " +"icons, or both" msgstr "" #: ../src/ui/dialog/inkscape-preferences.cpp:618 @@ -16945,13 +18314,15 @@ msgid "Switcher style (requires restart):" msgstr "Style de bouton de commutation (nécessite un redémarrage)" #: ../src/ui/dialog/inkscape-preferences.cpp:619 -msgid "Selects whether the dockbar switcher will show text labels, icons, or both" +msgid "" +"Selects whether the dockbar switcher will show text labels, icons, or both" msgstr "" #. Windows #: ../src/ui/dialog/inkscape-preferences.cpp:623 msgid "Save and restore window geometry for each document" -msgstr "Enregistrer et restaurer la géométrie de la fenêtre pour chaque document" +msgstr "" +"Enregistrer et restaurer la géométrie de la fenêtre pour chaque document" #: ../src/ui/dialog/inkscape-preferences.cpp:624 msgid "Remember and use last window's geometry" @@ -17024,20 +18395,32 @@ msgid "Let the window manager determine placement of all windows" msgstr "Laisser le gestionnaire de fenêtre placer toutes les fenêtres" #: ../src/ui/dialog/inkscape-preferences.cpp:658 -msgid "Remember and use the last window's geometry (saves geometry to user preferences)" -msgstr "Mémoriser et utiliser la géométrie de la dernière fenêtre (enregistre la géométrie dans les préférences utilisateur)" +msgid "" +"Remember and use the last window's geometry (saves geometry to user " +"preferences)" +msgstr "" +"Mémoriser et utiliser la géométrie de la dernière fenêtre (enregistre la " +"géométrie dans les préférences utilisateur)" #: ../src/ui/dialog/inkscape-preferences.cpp:660 -msgid "Save and restore window geometry for each document (saves geometry in the document)" -msgstr "Sauver et restaurer la géométrie de la fenêtre pour chaque document (enregistre la géométrie avec le document)" +msgid "" +"Save and restore window geometry for each document (saves geometry in the " +"document)" +msgstr "" +"Sauver et restaurer la géométrie de la fenêtre pour chaque document " +"(enregistre la géométrie avec le document)" #: ../src/ui/dialog/inkscape-preferences.cpp:662 msgid "Saving dialogs status" msgstr "Enregistrer l'état des fenêtres" #: ../src/ui/dialog/inkscape-preferences.cpp:666 -msgid "Save and restore dialogs status (the last open windows dialogs are saved when it closes)" -msgstr "Enregistrer et restaurer l'état des boîtes de dialogue (dans l'état de la dernière fenêtre fermée)" +msgid "" +"Save and restore dialogs status (the last open windows dialogs are saved " +"when it closes)" +msgstr "" +"Enregistrer et restaurer l'état des boîtes de dialogue (dans l'état de la " +"dernière fenêtre fermée)" #: ../src/ui/dialog/inkscape-preferences.cpp:670 msgid "Dialog behavior (requires restart)" @@ -17049,11 +18432,15 @@ msgstr "Intégration au bureau" #: ../src/ui/dialog/inkscape-preferences.cpp:678 msgid "Use Windows like open and save dialogs" -msgstr "Utiliser des boîtes de dialogue à la Windows pour l'ouverture et l'enregistrement de fichiers" +msgstr "" +"Utiliser des boîtes de dialogue à la Windows pour l'ouverture et " +"l'enregistrement de fichiers" #: ../src/ui/dialog/inkscape-preferences.cpp:680 msgid "Use GTK open and save dialogs " -msgstr "Utiliser les boîtes de dialogue GTK pour l'ouverture et l'enregistrement de fichiers" +msgstr "" +"Utiliser les boîtes de dialogue GTK pour l'ouverture et l'enregistrement de " +"fichiers" #: ../src/ui/dialog/inkscape-preferences.cpp:684 msgid "Dialogs on top:" @@ -17069,7 +18456,9 @@ msgstr "Les dialogues restent au-dessus des fenêtres de document" #: ../src/ui/dialog/inkscape-preferences.cpp:691 msgid "Same as Normal but may work better with some window managers" -msgstr "Comme Normal, mais fonctionne peut-être mieux avec certains gestionnaires de fenêtres" +msgstr "" +"Comme Normal, mais fonctionne peut-être mieux avec certains gestionnaires de " +"fenêtres" #: ../src/ui/dialog/inkscape-preferences.cpp:694 msgid "Dialog Transparency" @@ -17088,24 +18477,39 @@ msgid "_Time of opacity change animation:" msgstr "_Temps de transition :" #: ../src/ui/dialog/inkscape-preferences.cpp:703 +#: ../share/extensions/hpgl_output.inx.h:30 +#: ../share/extensions/plotter.inx.h:40 msgid "Miscellaneous" msgstr "Divers" #: ../src/ui/dialog/inkscape-preferences.cpp:706 msgid "Whether dialog windows are to be hidden in the window manager taskbar" -msgstr "Si coché, les boîtes de dialogue sont cachées dans la barre des tâches du gestionnaire de fenêtre" +msgstr "" +"Si coché, les boîtes de dialogue sont cachées dans la barre des tâches du " +"gestionnaire de fenêtre" #: ../src/ui/dialog/inkscape-preferences.cpp:709 -msgid "Zoom drawing when document window is resized, to keep the same area visible (this is the default which can be changed in any window using the button above the right scrollbar)" -msgstr "Si coché, le dessin est rezoomé quand la fenêtre est redimensionnée, pour garder visible la même aire (c'est l'option par défaut qui peut être changée dans toute fenêtre en utilisant le boutton au dessus de la barre de défilement de droite)" +msgid "" +"Zoom drawing when document window is resized, to keep the same area visible " +"(this is the default which can be changed in any window using the button " +"above the right scrollbar)" +msgstr "" +"Si coché, le dessin est rezoomé quand la fenêtre est redimensionnée, pour " +"garder visible la même aire (c'est l'option par défaut qui peut être changée " +"dans toute fenêtre en utilisant le boutton au dessus de la barre de " +"défilement de droite)" #: ../src/ui/dialog/inkscape-preferences.cpp:711 -msgid "Save documents viewport (zoom and panning position). Useful to turn off when sharing version controlled files." +msgid "" +"Save documents viewport (zoom and panning position). Useful to turn off when " +"sharing version controlled files." msgstr "" #: ../src/ui/dialog/inkscape-preferences.cpp:713 msgid "Whether dialog windows have a close button (requires restart)" -msgstr "Si coché, les boîtes de dialogue ont un bouton de fermeture (nécessite un redémarrage)" +msgstr "" +"Si coché, les boîtes de dialogue ont un bouton de fermeture (nécessite un " +"redémarrage)" #: ../src/ui/dialog/inkscape-preferences.cpp:714 msgid "Windows" @@ -17118,11 +18522,13 @@ msgstr "Couleur des lignes pendant le zoom arrière" #: ../src/ui/dialog/inkscape-preferences.cpp:720 msgid "The gridlines will be shown in minor grid line color" -msgstr "Les lignes de grille seront affichées avec la couleur de grille secondaire" +msgstr "" +"Les lignes de grille seront affichées avec la couleur de grille secondaire" #: ../src/ui/dialog/inkscape-preferences.cpp:722 msgid "The gridlines will be shown in major grid line color" -msgstr "Les lignes de grille seront affichées avec la couleur de grille principale" +msgstr "" +"Les lignes de grille seront affichées avec la couleur de grille principale" #: ../src/ui/dialog/inkscape-preferences.cpp:724 msgid "Default grid settings" @@ -17187,7 +18593,9 @@ msgstr "Afficher des points plutôt que des lignes" #: ../src/ui/dialog/inkscape-preferences.cpp:751 msgid "If set, display dots at gridpoints instead of gridlines" -msgstr "Cocher pour afficher des points aux intersections de la grille plutôt que des lignes" +msgstr "" +"Cocher pour afficher des points aux intersections de la grille plutôt que " +"des lignes" #: ../src/ui/dialog/inkscape-preferences.cpp:832 msgid "Input/Output" @@ -17198,24 +18606,40 @@ msgid "Use current directory for \"Save As ...\"" msgstr "« Enregistrer sous... » utilise le dossier courant " #: ../src/ui/dialog/inkscape-preferences.cpp:837 -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" -msgstr "Lorsque cette option est active, les boîtes de dialogue « Enregistrer sous... » et « Enregistrer une copie... » s'ouvrent toujours dans le dossier contenant le document actuellement ouvert ; si l'option est désactivée, elles ouvrent alors le dernier dossier dans lequel un fichier a été enregistré avec ces boîtes de dialogue" +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" +msgstr "" +"Lorsque cette option est active, les boîtes de dialogue « Enregistrer " +"sous... » et « Enregistrer une copie... » s'ouvrent toujours dans le dossier " +"contenant le document actuellement ouvert ; si l'option est désactivée, " +"elles ouvrent alors le dernier dossier dans lequel un fichier a été " +"enregistré avec ces boîtes de dialogue" #: ../src/ui/dialog/inkscape-preferences.cpp:839 msgid "Add label comments to printing output" msgstr "Ajouter les labels de commentaires à l'impression" #: ../src/ui/dialog/inkscape-preferences.cpp:841 -msgid "When on, a comment will be added to the raw print output, marking the rendered output for an object with its label" -msgstr "Si coché, un commentaire est ajouté à l'impression brute, signalant le rendu d'un objet avec son label" +msgid "" +"When on, a comment will be added to the raw print output, marking the " +"rendered output for an object with its label" +msgstr "" +"Si coché, un commentaire est ajouté à l'impression brute, signalant le rendu " +"d'un objet avec son label" #: ../src/ui/dialog/inkscape-preferences.cpp:843 msgid "Add default metadata to new documents" msgstr "Ajouter les métadonnées par défaut aux nouveaux documents" #: ../src/ui/dialog/inkscape-preferences.cpp:845 -msgid "Add default metadata to new documents. Default metadata can be set from Document Properties->Metadata." -msgstr "Ajoute les métadonnées par défaut dans les nouveaux documents. Ces métadonnées peuvent être définies dans Propriétés du document>Métadonnées." +msgid "" +"Add default metadata to new documents. Default metadata can be set from " +"Document Properties->Metadata." +msgstr "" +"Ajoute les métadonnées par défaut dans les nouveaux documents. Ces " +"métadonnées peuvent être définies dans Propriétés du document>Métadonnées." #: ../src/ui/dialog/inkscape-preferences.cpp:849 msgid "_Grab sensitivity:" @@ -17226,23 +18650,30 @@ msgid "pixels (requires restart)" msgstr "pixels (nécessite un redémarrage)" #: ../src/ui/dialog/inkscape-preferences.cpp:850 -msgid "How close on the screen you need to be to an object to be able to grab it with mouse (in screen pixels)" -msgstr "Distance à partir de laquelle on peut saisir un objet à l'écran avec la souris (en pixels d'écran)" +msgid "" +"How close on the screen you need to be to an object to be able to grab it " +"with mouse (in screen pixels)" +msgstr "" +"Distance à partir de laquelle on peut saisir un objet à l'écran avec la " +"souris (en pixels d'écran)" #: ../src/ui/dialog/inkscape-preferences.cpp:852 msgid "_Click/drag threshold:" msgstr "_Seuil de cliquer-déplacer :" #: ../src/ui/dialog/inkscape-preferences.cpp:852 -#: ../src/ui/dialog/inkscape-preferences.cpp:1190 #: ../src/ui/dialog/inkscape-preferences.cpp:1194 -#: ../src/ui/dialog/inkscape-preferences.cpp:1204 +#: ../src/ui/dialog/inkscape-preferences.cpp:1198 +#: ../src/ui/dialog/inkscape-preferences.cpp:1208 msgid "pixels" msgstr "pixels" #: ../src/ui/dialog/inkscape-preferences.cpp:853 -msgid "Maximum mouse drag (in screen pixels) which is considered a click, not a drag" -msgstr "Déplacement maximal de la souris (en pixels d'écran) considéré comme un clic et non comme un déplacement" +msgid "" +"Maximum mouse drag (in screen pixels) which is considered a click, not a drag" +msgstr "" +"Déplacement maximal de la souris (en pixels d'écran) considéré comme un clic " +"et non comme un déplacement" #: ../src/ui/dialog/inkscape-preferences.cpp:856 msgid "_Handle size:" @@ -17254,19 +18685,33 @@ msgstr "Définir la taille relative des poignées de nÅ“uds" #: ../src/ui/dialog/inkscape-preferences.cpp:859 msgid "Use pressure-sensitive tablet (requires restart)" -msgstr "Utiliser une tablette graphique sensible à la pression (nécessite un redémarrage)" +msgstr "" +"Utiliser une tablette graphique sensible à la pression (nécessite un " +"redémarrage)" #: ../src/ui/dialog/inkscape-preferences.cpp:861 -msgid "Use the capabilities of a tablet or other pressure-sensitive device. Disable this only if you have problems with the tablet (you can still use it as a mouse)" -msgstr "Utiliser les possibilités offertes par une tablette graphique ou un autre périphérique sensible à la pression. Désactivez ceci uniquement si vous rencontrez des problèmes avec la tablette (vous pourrez néanmoins continuer à l'utiliser comme souris)" +msgid "" +"Use the capabilities of a tablet or other pressure-sensitive device. Disable " +"this only if you have problems with the tablet (you can still use it as a " +"mouse)" +msgstr "" +"Utiliser les possibilités offertes par une tablette graphique ou un autre " +"périphérique sensible à la pression. Désactivez ceci uniquement si vous " +"rencontrez des problèmes avec la tablette (vous pourrez néanmoins continuer " +"à l'utiliser comme souris)" #: ../src/ui/dialog/inkscape-preferences.cpp:863 msgid "Switch tool based on tablet device (requires restart)" -msgstr "Change d'outil en fonction des dispositifs de tablette (nécessite un redémarrage)" +msgstr "" +"Change d'outil en fonction des dispositifs de tablette (nécessite un " +"redémarrage)" #: ../src/ui/dialog/inkscape-preferences.cpp:865 -msgid "Change tool as different devices are used on the tablet (pen, eraser, mouse)" -msgstr "Change d'outil lorsque des dispositifs différents sont utilisés sur la tablette (crayon, gomme, souris)" +msgid "" +"Change tool as different devices are used on the tablet (pen, eraser, mouse)" +msgstr "" +"Change d'outil lorsque des dispositifs différents sont utilisés sur la " +"tablette (crayon, gomme, souris)" #: ../src/ui/dialog/inkscape-preferences.cpp:866 msgid "Input devices" @@ -17278,8 +18723,12 @@ msgid "Use named colors" msgstr "Utiliser les couleurs nommées" #: ../src/ui/dialog/inkscape-preferences.cpp:870 -msgid "If set, write the CSS name of the color when available (e.g. 'red' or 'magenta') instead of the numeric value" -msgstr "Si coché, écrit le nom CSS de la couleur si elle est disponible (rouge ou magenta, par exemple) à la place de sa valeur numérique" +msgid "" +"If set, write the CSS name of the color when available (e.g. 'red' or " +"'magenta') instead of the numeric value" +msgstr "" +"Si coché, écrit le nom CSS de la couleur si elle est disponible (rouge ou " +"magenta, par exemple) à la place de sa valeur numérique" #: ../src/ui/dialog/inkscape-preferences.cpp:872 msgid "XML formatting" @@ -17298,158 +18747,220 @@ msgid "_Indent, spaces:" msgstr "_Distance d'indentation (en espaces) :" #: ../src/ui/dialog/inkscape-preferences.cpp:878 -msgid "The number of spaces to use for indenting nested elements; set to 0 for no indentation" -msgstr "Le nombre d'espaces utilisés pour l'indentation d'éléments imbriqués ; définir à 0 pour désactiver l'indentation" +msgid "" +"The number of spaces to use for indenting nested elements; set to 0 for no " +"indentation" +msgstr "" +"Le nombre d'espaces utilisés pour l'indentation d'éléments imbriqués ; " +"définir à 0 pour désactiver l'indentation" #: ../src/ui/dialog/inkscape-preferences.cpp:880 msgid "Path data" msgstr "Données de chemin" -#: ../src/ui/dialog/inkscape-preferences.cpp:882 -msgid "Allow relative coordinates" -msgstr "Autoriser les coordonnées relatives" +#: ../src/ui/dialog/inkscape-preferences.cpp:883 +msgid "Absolute" +msgstr "" + +#: ../src/ui/dialog/inkscape-preferences.cpp:883 +#, fuzzy +msgid "Relative" +msgstr "Relativement à  : " #: ../src/ui/dialog/inkscape-preferences.cpp:883 -msgid "If set, relative coordinates may be used in path data" -msgstr "Si coché, les coordonnées relatives peuvent être utilisées dans les données du chemin" +#: ../src/ui/dialog/inkscape-preferences.cpp:1173 +msgid "Optimized" +msgstr "Optimisé" + +#: ../src/ui/dialog/inkscape-preferences.cpp:887 +msgid "Path string format:" +msgstr "" + +#: ../src/ui/dialog/inkscape-preferences.cpp:887 +msgid "" +"Path data should be written: only with absolute coordinates, only with " +"relative coordinates, or optimized for string length (mixed absolute and " +"relative coordinates)" +msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:885 +#: ../src/ui/dialog/inkscape-preferences.cpp:889 msgid "Force repeat commands" msgstr "Imposer les commandes répétitives" -#: ../src/ui/dialog/inkscape-preferences.cpp:886 -msgid "Force repeating of the same path command (for example, 'L 1,2 L 3,4' instead of 'L 1,2 3,4')" -msgstr "Si coché, impose la répétition de la même commande de chemin (écrit 'L 1,2 L 3,4' à la place de 'L 1,2 3,4')." +#: ../src/ui/dialog/inkscape-preferences.cpp:890 +msgid "" +"Force repeating of the same path command (for example, 'L 1,2 L 3,4' instead " +"of 'L 1,2 3,4')" +msgstr "" +"Si coché, impose la répétition de la même commande de chemin (écrit 'L 1,2 L " +"3,4' à la place de 'L 1,2 3,4')." -#: ../src/ui/dialog/inkscape-preferences.cpp:888 +#: ../src/ui/dialog/inkscape-preferences.cpp:892 msgid "Numbers" msgstr "Nombres" -#: ../src/ui/dialog/inkscape-preferences.cpp:891 +#: ../src/ui/dialog/inkscape-preferences.cpp:895 msgid "_Numeric precision:" msgstr "_Précision numérique :" -#: ../src/ui/dialog/inkscape-preferences.cpp:891 +#: ../src/ui/dialog/inkscape-preferences.cpp:895 msgid "Significant figures of the values written to the SVG file" -msgstr "Nombre de chiffres significatifs des valeurs écrites dans le fichier SVG" +msgstr "" +"Nombre de chiffres significatifs des valeurs écrites dans le fichier SVG" -#: ../src/ui/dialog/inkscape-preferences.cpp:894 +#: ../src/ui/dialog/inkscape-preferences.cpp:898 msgid "Minimum _exponent:" msgstr "Exposant _minimum :" -#: ../src/ui/dialog/inkscape-preferences.cpp:894 -msgid "The smallest number written to SVG is 10 to the power of this exponent; anything smaller is written as zero" -msgstr "La taille minimale d'un nombre écrite dans le SVG est 10 à la puissance de cet exposant ; les nombres plus petits s'écriront zéro" +#: ../src/ui/dialog/inkscape-preferences.cpp:898 +msgid "" +"The smallest number written to SVG is 10 to the power of this exponent; " +"anything smaller is written as zero" +msgstr "" +"La taille minimale d'un nombre écrite dans le SVG est 10 à la puissance de " +"cet exposant ; les nombres plus petits s'écriront zéro" #. Code to add controls for attribute checking options #. Add incorrect style properties options -#: ../src/ui/dialog/inkscape-preferences.cpp:899 +#: ../src/ui/dialog/inkscape-preferences.cpp:903 msgid "Improper Attributes Actions" msgstr "En cas d'attributs inappropriés" -#: ../src/ui/dialog/inkscape-preferences.cpp:901 -#: ../src/ui/dialog/inkscape-preferences.cpp:909 -#: ../src/ui/dialog/inkscape-preferences.cpp:917 +#: ../src/ui/dialog/inkscape-preferences.cpp:905 +#: ../src/ui/dialog/inkscape-preferences.cpp:913 +#: ../src/ui/dialog/inkscape-preferences.cpp:921 msgid "Print warnings" msgstr "Afficher un avertissement" -#: ../src/ui/dialog/inkscape-preferences.cpp:902 -msgid "Print warning if invalid or non-useful attributes found. Database files located in inkscape_data_dir/attributes." -msgstr "Affiche un avertissement si des attributs invalides ou inappropriés sont détectés. Le fichier de données est disponible dans inkscape_data_dir/attributes." +#: ../src/ui/dialog/inkscape-preferences.cpp:906 +msgid "" +"Print warning if invalid or non-useful attributes found. Database files " +"located in inkscape_data_dir/attributes." +msgstr "" +"Affiche un avertissement si des attributs invalides ou inappropriés sont " +"détectés. Le fichier de données est disponible dans inkscape_data_dir/" +"attributes." -#: ../src/ui/dialog/inkscape-preferences.cpp:903 +#: ../src/ui/dialog/inkscape-preferences.cpp:907 msgid "Remove attributes" msgstr "Supprimer les attributs" -#: ../src/ui/dialog/inkscape-preferences.cpp:904 +#: ../src/ui/dialog/inkscape-preferences.cpp:908 msgid "Delete invalid or non-useful attributes from element tag" msgstr "Supprime les éléments invalides ou inappropriés de l'élément" #. Add incorrect style properties options -#: ../src/ui/dialog/inkscape-preferences.cpp:907 +#: ../src/ui/dialog/inkscape-preferences.cpp:911 msgid "Inappropriate Style Properties Actions" msgstr "En cas de propriétés de style inappropriées" -#: ../src/ui/dialog/inkscape-preferences.cpp:910 -msgid "Print warning if inappropriate style properties found (i.e. 'font-family' set on a <rect>). Database files located in inkscape_data_dir/attributes." -msgstr "Affiche un avertissement si des propriétés de style inappropriés sont détectés (par exemple 'font-family' dans un élément <rect>. Le fichier de données est disponible dans inkscape_data_dir/attributes." +#: ../src/ui/dialog/inkscape-preferences.cpp:914 +msgid "" +"Print warning if inappropriate style properties found (i.e. 'font-family' " +"set on a <rect>). Database files located in inkscape_data_dir/attributes." +msgstr "" +"Affiche un avertissement si des propriétés de style inappropriés sont " +"détectés (par exemple 'font-family' dans un élément <rect>. Le fichier de " +"données est disponible dans inkscape_data_dir/attributes." -#: ../src/ui/dialog/inkscape-preferences.cpp:911 -#: ../src/ui/dialog/inkscape-preferences.cpp:919 +#: ../src/ui/dialog/inkscape-preferences.cpp:915 +#: ../src/ui/dialog/inkscape-preferences.cpp:923 msgid "Remove style properties" msgstr "Supprimer les propriétés de style" -#: ../src/ui/dialog/inkscape-preferences.cpp:912 +#: ../src/ui/dialog/inkscape-preferences.cpp:916 msgid "Delete inappropriate style properties" msgstr "Supprime les propriétés de style inappropriées" #. Add default or inherited style properties options -#: ../src/ui/dialog/inkscape-preferences.cpp:915 +#: ../src/ui/dialog/inkscape-preferences.cpp:919 msgid "Non-useful Style Properties Actions" msgstr "En cas de propriétés de style inutiles" -#: ../src/ui/dialog/inkscape-preferences.cpp:918 -msgid "Print warning if redundant style properties found (i.e. if a property has the default value and a different value is not inherited or if value is the same as would be inherited). Database files located in inkscape_data_dir/attributes." -msgstr "Affiche un avertissement si des propriétés de style inutiles sont détectés (par exemple si une propriété est définie avec sa valeur par défaut et que cette valeur ne modifie pas l'héritage). Le fichier de données est disponible dans inkscape_data_dir/attributes." +#: ../src/ui/dialog/inkscape-preferences.cpp:922 +msgid "" +"Print warning if redundant style properties found (i.e. if a property has " +"the default value and a different value is not inherited or if value is the " +"same as would be inherited). Database files located in inkscape_data_dir/" +"attributes." +msgstr "" +"Affiche un avertissement si des propriétés de style inutiles sont détectés " +"(par exemple si une propriété est définie avec sa valeur par défaut et que " +"cette valeur ne modifie pas l'héritage). Le fichier de données est " +"disponible dans inkscape_data_dir/attributes." -#: ../src/ui/dialog/inkscape-preferences.cpp:920 +#: ../src/ui/dialog/inkscape-preferences.cpp:924 msgid "Delete redundant style properties" msgstr "Supprimer les propriétés de style inutiles" -#: ../src/ui/dialog/inkscape-preferences.cpp:922 +#: ../src/ui/dialog/inkscape-preferences.cpp:926 msgid "Check Attributes and Style Properties on" msgstr "Vérifier les attributs et propriétés de style" -#: ../src/ui/dialog/inkscape-preferences.cpp:924 +#: ../src/ui/dialog/inkscape-preferences.cpp:928 msgid "Reading" msgstr "Lors de la lecture" -#: ../src/ui/dialog/inkscape-preferences.cpp:925 -msgid "Check attributes and style properties on reading in SVG files (including those internal to Inkscape which will slow down startup)" -msgstr "Vérifier les attributs et les propriétés de style lors de la lecture des fichiers SVG (y compris les fichiers internes à Inkscape, ce qui ralentira le démarrage de l'application)" +#: ../src/ui/dialog/inkscape-preferences.cpp:929 +msgid "" +"Check attributes and style properties on reading in SVG files (including " +"those internal to Inkscape which will slow down startup)" +msgstr "" +"Vérifier les attributs et les propriétés de style lors de la lecture des " +"fichiers SVG (y compris les fichiers internes à Inkscape, ce qui ralentira " +"le démarrage de l'application)" -#: ../src/ui/dialog/inkscape-preferences.cpp:926 +#: ../src/ui/dialog/inkscape-preferences.cpp:930 msgid "Editing" msgstr "Lors de l'édition" -#: ../src/ui/dialog/inkscape-preferences.cpp:927 -msgid "Check attributes and style properties while editing SVG files (may slow down Inkscape, mostly useful for debugging)" -msgstr "Vérifier les attributs et les propriétés de style lors de l'édition des fichiers SVG (peut ralentir Inkscape, à utiliser principalement pour le débogage)" +#: ../src/ui/dialog/inkscape-preferences.cpp:931 +msgid "" +"Check attributes and style properties while editing SVG files (may slow down " +"Inkscape, mostly useful for debugging)" +msgstr "" +"Vérifier les attributs et les propriétés de style lors de l'édition des " +"fichiers SVG (peut ralentir Inkscape, à utiliser principalement pour le " +"débogage)" -#: ../src/ui/dialog/inkscape-preferences.cpp:928 +#: ../src/ui/dialog/inkscape-preferences.cpp:932 msgid "Writing" msgstr "Lors de l'écriture" -#: ../src/ui/dialog/inkscape-preferences.cpp:929 +#: ../src/ui/dialog/inkscape-preferences.cpp:933 msgid "Check attributes and style properties on writing out SVG files" -msgstr "Vérifier les attributs et les propriétés de style lors de l'écriture des fichiers SVG" +msgstr "" +"Vérifier les attributs et les propriétés de style lors de l'écriture des " +"fichiers SVG" -#: ../src/ui/dialog/inkscape-preferences.cpp:931 +#: ../src/ui/dialog/inkscape-preferences.cpp:935 msgid "SVG output" msgstr "Sortie SVG" #. TRANSLATORS: see http://www.newsandtech.com/issues/2004/03-04/pt/03-04_rendering.htm -#: ../src/ui/dialog/inkscape-preferences.cpp:937 +#: ../src/ui/dialog/inkscape-preferences.cpp:941 msgid "Perceptual" msgstr "Perceptif" -#: ../src/ui/dialog/inkscape-preferences.cpp:937 +#: ../src/ui/dialog/inkscape-preferences.cpp:941 msgid "Relative Colorimetric" msgstr "Colorimétrie relative" -#: ../src/ui/dialog/inkscape-preferences.cpp:937 +#: ../src/ui/dialog/inkscape-preferences.cpp:941 msgid "Absolute Colorimetric" msgstr "Colorimétrie absolue" -#: ../src/ui/dialog/inkscape-preferences.cpp:941 +#: ../src/ui/dialog/inkscape-preferences.cpp:945 msgid "(Note: Color management has been disabled in this build)" -msgstr "(NB : les fonctionnalités colorimétriques sont désactivées dans cette version)" +msgstr "" +"(NB : les fonctionnalités colorimétriques sont désactivées dans cette " +"version)" -#: ../src/ui/dialog/inkscape-preferences.cpp:945 +#: ../src/ui/dialog/inkscape-preferences.cpp:949 msgid "Display adjustment" msgstr "Ajustement de l'affichage" -#: ../src/ui/dialog/inkscape-preferences.cpp:955 +#: ../src/ui/dialog/inkscape-preferences.cpp:959 #, c-format msgid "" "The ICC profile to use to calibrate display output.\n" @@ -17458,137 +18969,154 @@ msgstr "" "Le profil ICC à utiliser pour calibrer l'affichage.\n" "Répertoires parcourus :%s" -#: ../src/ui/dialog/inkscape-preferences.cpp:956 +#: ../src/ui/dialog/inkscape-preferences.cpp:960 msgid "Display profile:" msgstr "Profil d'affichage :" -#: ../src/ui/dialog/inkscape-preferences.cpp:961 +#: ../src/ui/dialog/inkscape-preferences.cpp:965 msgid "Retrieve profile from display" msgstr "Utiliser le profil proposé par le périphérique d'affichage." -#: ../src/ui/dialog/inkscape-preferences.cpp:964 +#: ../src/ui/dialog/inkscape-preferences.cpp:968 msgid "Retrieve profiles from those attached to displays via XICC" -msgstr "Utiliser un profil parmi ceux correspondant aux périphériques d'affichage grâce à XICC" +msgstr "" +"Utiliser un profil parmi ceux correspondant aux périphériques d'affichage " +"grâce à XICC" -#: ../src/ui/dialog/inkscape-preferences.cpp:966 +#: ../src/ui/dialog/inkscape-preferences.cpp:970 msgid "Retrieve profiles from those attached to displays" -msgstr "Utiliser un profil parmi ceux correspondant aux périphériques d'affichage" +msgstr "" +"Utiliser un profil parmi ceux correspondant aux périphériques d'affichage" -#: ../src/ui/dialog/inkscape-preferences.cpp:971 +#: ../src/ui/dialog/inkscape-preferences.cpp:975 msgid "Display rendering intent:" msgstr "Intention de rendu de l'affichage :" -#: ../src/ui/dialog/inkscape-preferences.cpp:972 +#: ../src/ui/dialog/inkscape-preferences.cpp:976 msgid "The rendering intent to use to calibrate display output" msgstr "L'intention de rendu à utiliser pour calibrer la sortie de l'affichage" -#: ../src/ui/dialog/inkscape-preferences.cpp:974 +#: ../src/ui/dialog/inkscape-preferences.cpp:978 msgid "Proofing" msgstr "Gestion des couleurs" -#: ../src/ui/dialog/inkscape-preferences.cpp:976 +#: ../src/ui/dialog/inkscape-preferences.cpp:980 msgid "Simulate output on screen" msgstr "Simuler la sortie à l'écran" -#: ../src/ui/dialog/inkscape-preferences.cpp:978 +#: ../src/ui/dialog/inkscape-preferences.cpp:982 msgid "Simulates output of target device" msgstr "Simule la sortie du périphérique cible" -#: ../src/ui/dialog/inkscape-preferences.cpp:980 +#: ../src/ui/dialog/inkscape-preferences.cpp:984 msgid "Mark out of gamut colors" msgstr "Marquer les couleurs hors-gamut" -#: ../src/ui/dialog/inkscape-preferences.cpp:982 +#: ../src/ui/dialog/inkscape-preferences.cpp:986 msgid "Highlights colors that are out of gamut for the target device" -msgstr "Mettre en exergue les couleurs qui sont en-dehors du gamut pour le périphérique cible" +msgstr "" +"Mettre en exergue les couleurs qui sont en-dehors du gamut pour le " +"périphérique cible" -#: ../src/ui/dialog/inkscape-preferences.cpp:994 +#: ../src/ui/dialog/inkscape-preferences.cpp:998 msgid "Out of gamut warning color:" msgstr "Couleur d'avertissement hors-gamut :" -#: ../src/ui/dialog/inkscape-preferences.cpp:995 +#: ../src/ui/dialog/inkscape-preferences.cpp:999 msgid "Selects the color used for out of gamut warning" msgstr "La couleur utilisée pour prévenir des problèmes de gamut" -#: ../src/ui/dialog/inkscape-preferences.cpp:997 +#: ../src/ui/dialog/inkscape-preferences.cpp:1001 msgid "Device profile:" msgstr "Profil du périphérique :" -#: ../src/ui/dialog/inkscape-preferences.cpp:998 +#: ../src/ui/dialog/inkscape-preferences.cpp:1002 msgid "The ICC profile to use to simulate device output" msgstr "Le profil ICC utilisé pour simuler la sortie du périphérique" -#: ../src/ui/dialog/inkscape-preferences.cpp:1001 +#: ../src/ui/dialog/inkscape-preferences.cpp:1005 msgid "Device rendering intent:" msgstr "Intention de rendu du périphérique :" -#: ../src/ui/dialog/inkscape-preferences.cpp:1002 +#: ../src/ui/dialog/inkscape-preferences.cpp:1006 msgid "The rendering intent to use to calibrate device output" -msgstr "L'intention de rendu à utiliser pour calibrer le périphérique de sortie" +msgstr "" +"L'intention de rendu à utiliser pour calibrer le périphérique de sortie" -#: ../src/ui/dialog/inkscape-preferences.cpp:1004 +#: ../src/ui/dialog/inkscape-preferences.cpp:1008 msgid "Black point compensation" msgstr "Compensation du point noir" -#: ../src/ui/dialog/inkscape-preferences.cpp:1006 +#: ../src/ui/dialog/inkscape-preferences.cpp:1010 msgid "Enables black point compensation" msgstr "Active la compensation du point noir" -#: ../src/ui/dialog/inkscape-preferences.cpp:1008 +#: ../src/ui/dialog/inkscape-preferences.cpp:1012 msgid "Preserve black" msgstr "Préserver le noir" -#: ../src/ui/dialog/inkscape-preferences.cpp:1015 +#: ../src/ui/dialog/inkscape-preferences.cpp:1019 msgid "(LittleCMS 1.15 or later required)" msgstr "(LittleCMS 1.15 ou version supérieure requis)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1017 +#: ../src/ui/dialog/inkscape-preferences.cpp:1021 msgid "Preserve K channel in CMYK -> CMYK transforms" msgstr "Préserver la composante N dans les transformaitons CMJN > CMJN" -#: ../src/ui/dialog/inkscape-preferences.cpp:1031 +#: ../src/ui/dialog/inkscape-preferences.cpp:1035 #: ../src/widgets/sp-color-icc-selector.cpp:474 #: ../src/widgets/sp-color-icc-selector.cpp:766 msgid "<none>" msgstr "<aucun>" -#: ../src/ui/dialog/inkscape-preferences.cpp:1076 +#: ../src/ui/dialog/inkscape-preferences.cpp:1080 msgid "Color management" msgstr "Gestion de la couleur" #. Autosave options -#: ../src/ui/dialog/inkscape-preferences.cpp:1079 +#: ../src/ui/dialog/inkscape-preferences.cpp:1083 msgid "Enable autosave (requires restart)" msgstr "Activer l'enregistrement automatique (nécessite un redémarrage)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1080 -msgid "Automatically save the current document(s) at a given interval, thus minimizing loss in case of a crash" -msgstr "Enregistre automatiquement les documents en cours, à intervalle donné, pour diminuer les risques de perte de données en cas de plantage de l'application" +#: ../src/ui/dialog/inkscape-preferences.cpp:1084 +msgid "" +"Automatically save the current document(s) at a given interval, thus " +"minimizing loss in case of a crash" +msgstr "" +"Enregistre automatiquement les documents en cours, à intervalle donné, pour " +"diminuer les risques de perte de données en cas de plantage de l'application" -#: ../src/ui/dialog/inkscape-preferences.cpp:1086 +#: ../src/ui/dialog/inkscape-preferences.cpp:1090 msgctxt "Filesystem" msgid "Autosave _directory:" msgstr "_Dossier des enregistrements automatiques :" -#: ../src/ui/dialog/inkscape-preferences.cpp:1086 -msgid "The directory where autosaves will be written. This should be an absolute path (starts with / on UNIX or a drive letter such as C: on Windows). " +#: ../src/ui/dialog/inkscape-preferences.cpp:1090 +msgid "" +"The directory where autosaves will be written. This should be an absolute " +"path (starts with / on UNIX or a drive letter such as C: on Windows). " msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1088 +#: ../src/ui/dialog/inkscape-preferences.cpp:1092 msgid "_Interval (in minutes):" msgstr "_Intervalle (en minutes) :" -#: ../src/ui/dialog/inkscape-preferences.cpp:1088 +#: ../src/ui/dialog/inkscape-preferences.cpp:1092 msgid "Interval (in minutes) at which document will be autosaved" -msgstr "Définit l'intervalle (en minutes) auquel l'espace de travail sera enregistré automatiquement" +msgstr "" +"Définit l'intervalle (en minutes) auquel l'espace de travail sera enregistré " +"automatiquement" -#: ../src/ui/dialog/inkscape-preferences.cpp:1090 +#: ../src/ui/dialog/inkscape-preferences.cpp:1094 msgid "_Maximum number of autosaves:" msgstr "Nombre _maximum d'enregistrements :" -#: ../src/ui/dialog/inkscape-preferences.cpp:1090 -msgid "Maximum number of autosaved files; use this to limit the storage space used" -msgstr "Nombre maximum d'enregistrements automatiques ; utiliser cette valeur pour limiter l'espace de stockage utilisé" +#: ../src/ui/dialog/inkscape-preferences.cpp:1094 +msgid "" +"Maximum number of autosaved files; use this to limit the storage space used" +msgstr "" +"Nombre maximum d'enregistrements automatiques ; utiliser cette valeur pour " +"limiter l'espace de stockage utilisé" #. When changing the interval or enabling/disabling the autosave function, #. * update our running configuration @@ -17602,902 +19130,1082 @@ msgstr "Nombre maximum d'enregistrements automatiques ; utiliser cette valeur p #. _autosave_autosave_interval.signal_changed().connect( sigc::ptr_fun(inkscape_autosave_init), TRUE ); #. #. ----------- -#: ../src/ui/dialog/inkscape-preferences.cpp:1105 +#: ../src/ui/dialog/inkscape-preferences.cpp:1109 msgid "Autosave" msgstr "Enregistrement automatique" -#: ../src/ui/dialog/inkscape-preferences.cpp:1109 +#: ../src/ui/dialog/inkscape-preferences.cpp:1113 msgid "Open Clip Art Library _Server Name:" msgstr "Nom du _serveur de bibliothèque Open Clip Art :" -#: ../src/ui/dialog/inkscape-preferences.cpp:1110 -msgid "The server name of the Open Clip Art Library webdav server; it's used by the Import and Export to OCAL function" -msgstr "Le nom du serveur webdav de la bibliothèque Open Clip Art ; il est utilisé par la fonction d'import et export vers OCAL." +#: ../src/ui/dialog/inkscape-preferences.cpp:1114 +msgid "" +"The server name of the Open Clip Art Library webdav server; it's used by the " +"Import and Export to OCAL function" +msgstr "" +"Le nom du serveur webdav de la bibliothèque Open Clip Art ; il est utilisé " +"par la fonction d'import et export vers OCAL." -#: ../src/ui/dialog/inkscape-preferences.cpp:1112 +#: ../src/ui/dialog/inkscape-preferences.cpp:1116 msgid "Open Clip Art Library _Username:" msgstr "Nom d'_utilisateur bibliothèque Open Clip Art :" -#: ../src/ui/dialog/inkscape-preferences.cpp:1113 +#: ../src/ui/dialog/inkscape-preferences.cpp:1117 msgid "The username used to log into Open Clip Art Library" msgstr "Le nom d'utilisateur pour se connecter à la bibliothèque Open Clip Art" -#: ../src/ui/dialog/inkscape-preferences.cpp:1115 +#: ../src/ui/dialog/inkscape-preferences.cpp:1119 msgid "Open Clip Art Library _Password:" msgstr "Mot de _passe de la bibliothèque Open Clip Art :" -#: ../src/ui/dialog/inkscape-preferences.cpp:1116 +#: ../src/ui/dialog/inkscape-preferences.cpp:1120 msgid "The password used to log into Open Clip Art Library" msgstr "Le mot de passe pour se connecter à la bibliothèque Open Clip Art" -#: ../src/ui/dialog/inkscape-preferences.cpp:1117 +#: ../src/ui/dialog/inkscape-preferences.cpp:1121 msgid "Open Clip Art" msgstr "Open Clip Art" -#: ../src/ui/dialog/inkscape-preferences.cpp:1122 +#: ../src/ui/dialog/inkscape-preferences.cpp:1126 msgid "Behavior" msgstr "Comportement" -#: ../src/ui/dialog/inkscape-preferences.cpp:1126 +#: ../src/ui/dialog/inkscape-preferences.cpp:1130 msgid "_Simplification threshold:" msgstr "_Seuil de simplification :" -#: ../src/ui/dialog/inkscape-preferences.cpp:1127 -msgid "How strong is the Node tool's Simplify command by default. If you invoke this command several times in quick succession, it will act more and more aggressively; invoking it again after a pause restores the default threshold." -msgstr "Force par défaut de la commande Simplifier. En faisant appel à cette commande plusieurs fois de suite, elle agira de façon de plus en plus agressive ; un appel après une pause restaurera la valeur par défaut." +#: ../src/ui/dialog/inkscape-preferences.cpp:1131 +msgid "" +"How strong is the Node tool's Simplify command by default. If you invoke " +"this command several times in quick succession, it will act more and more " +"aggressively; invoking it again after a pause restores the default threshold." +msgstr "" +"Force par défaut de la commande Simplifier. En faisant appel à cette " +"commande plusieurs fois de suite, elle agira de façon de plus en plus " +"agressive ; un appel après une pause restaurera la valeur par défaut." -#: ../src/ui/dialog/inkscape-preferences.cpp:1129 +#: ../src/ui/dialog/inkscape-preferences.cpp:1133 msgid "Color stock markers the same color as object" msgstr "Colorer les marqueurs par défaut avec la même couleur que l'objet" -#: ../src/ui/dialog/inkscape-preferences.cpp:1130 +#: ../src/ui/dialog/inkscape-preferences.cpp:1134 msgid "Color custom markers the same color as object" msgstr "Colorer les marqueurs personnalisés avec la même couleur que l'objet" -#: ../src/ui/dialog/inkscape-preferences.cpp:1131 -#: ../src/ui/dialog/inkscape-preferences.cpp:1341 +#: ../src/ui/dialog/inkscape-preferences.cpp:1135 +#: ../src/ui/dialog/inkscape-preferences.cpp:1345 msgid "Update marker color when object color changes" -msgstr "Mettre à jour la couleur du marqueur lorsque la couleur de l'objet est modifiée" +msgstr "" +"Mettre à jour la couleur du marqueur lorsque la couleur de l'objet est " +"modifiée" #. Selecting options -#: ../src/ui/dialog/inkscape-preferences.cpp:1134 +#: ../src/ui/dialog/inkscape-preferences.cpp:1138 msgid "Select in all layers" msgstr "Sélectionner dans tous les calques" -#: ../src/ui/dialog/inkscape-preferences.cpp:1135 +#: ../src/ui/dialog/inkscape-preferences.cpp:1139 msgid "Select only within current layer" msgstr "Sélectionner seulement dans le calque courant" -#: ../src/ui/dialog/inkscape-preferences.cpp:1136 +#: ../src/ui/dialog/inkscape-preferences.cpp:1140 msgid "Select in current layer and sublayers" msgstr "Sélectionner dans le calque courant et ses sous-calques" -#: ../src/ui/dialog/inkscape-preferences.cpp:1137 +#: ../src/ui/dialog/inkscape-preferences.cpp:1141 msgid "Ignore hidden objects and layers" msgstr "Ignorer les objets et calques cachés" -#: ../src/ui/dialog/inkscape-preferences.cpp:1138 +#: ../src/ui/dialog/inkscape-preferences.cpp:1142 msgid "Ignore locked objects and layers" msgstr "Ignorer les objets et calques verrouillés" -#: ../src/ui/dialog/inkscape-preferences.cpp:1139 +#: ../src/ui/dialog/inkscape-preferences.cpp:1143 msgid "Deselect upon layer change" msgstr "Désélectionner en changeant de calque" -#: ../src/ui/dialog/inkscape-preferences.cpp:1142 -msgid "Uncheck this to be able to keep the current objects selected when the current layer changes" -msgstr "Si décoché, les objets sélectionnés restent sélectionnés lorsque vous passez du calque courant à un autre" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1144 -msgid "Ctrl+A, Tab, Shift+Tab" -msgstr "Ctrl+A, Tab, Maj+Tab" - #: ../src/ui/dialog/inkscape-preferences.cpp:1146 -msgid "Make keyboard selection commands work on objects in all layers" -msgstr "Les commandes de sélection au clavier s'appliquent aux objets dans tous les calques" +msgid "" +"Uncheck this to be able to keep the current objects selected when the " +"current layer changes" +msgstr "" +"Si décoché, les objets sélectionnés restent sélectionnés lorsque vous passez " +"du calque courant à un autre" #: ../src/ui/dialog/inkscape-preferences.cpp:1148 -msgid "Make keyboard selection commands work on objects in current layer only" -msgstr "Les commandes de sélection au clavier s'appliquent seulement dans le calque courant" +msgid "Ctrl+A, Tab, Shift+Tab" +msgstr "Ctrl+A, Tab, Maj+Tab" #: ../src/ui/dialog/inkscape-preferences.cpp:1150 -msgid "Make keyboard selection commands work on objects in current layer and all its sublayers" -msgstr "Les commandes de sélection au clavier s'appliquent seulement dans le calque courant et dans ses sous-calques" +msgid "Make keyboard selection commands work on objects in all layers" +msgstr "" +"Les commandes de sélection au clavier s'appliquent aux objets dans tous les " +"calques" #: ../src/ui/dialog/inkscape-preferences.cpp:1152 -msgid "Uncheck this to be able to select objects that are hidden (either by themselves or by being in a hidden layer)" -msgstr "Si décoché, la sélection des objets cachés est possible (objets cachés isolés ou appartenant à calque caché)" +msgid "Make keyboard selection commands work on objects in current layer only" +msgstr "" +"Les commandes de sélection au clavier s'appliquent seulement dans le calque " +"courant" #: ../src/ui/dialog/inkscape-preferences.cpp:1154 -msgid "Uncheck this to be able to select objects that are locked (either by themselves or by being in a locked layer)" -msgstr "Si décoché, la sélection des objets verrouillés est possible (objets verrouillés isolés ou appartenant à un calque verrouillé)" +msgid "" +"Make keyboard selection commands work on objects in current layer and all " +"its sublayers" +msgstr "" +"Les commandes de sélection au clavier s'appliquent seulement dans le calque " +"courant et dans ses sous-calques" #: ../src/ui/dialog/inkscape-preferences.cpp:1156 -msgid "Wrap when cycling objects in z-order" +msgid "" +"Uncheck this to be able to select objects that are hidden (either by " +"themselves or by being in a hidden layer)" msgstr "" +"Si décoché, la sélection des objets cachés est possible (objets cachés " +"isolés ou appartenant à calque caché)" #: ../src/ui/dialog/inkscape-preferences.cpp:1158 +msgid "" +"Uncheck this to be able to select objects that are locked (either by " +"themselves or by being in a locked layer)" +msgstr "" +"Si décoché, la sélection des objets verrouillés est possible (objets " +"verrouillés isolés ou appartenant à un calque verrouillé)" + +#: ../src/ui/dialog/inkscape-preferences.cpp:1160 +msgid "Wrap when cycling objects in z-order" +msgstr "" + +#: ../src/ui/dialog/inkscape-preferences.cpp:1162 msgid "Alt+Scroll Wheel" msgstr "Alt+molette" -#: ../src/ui/dialog/inkscape-preferences.cpp:1160 +#: ../src/ui/dialog/inkscape-preferences.cpp:1164 msgid "Wrap around at start and end when cycling objects in z-order" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1162 +#: ../src/ui/dialog/inkscape-preferences.cpp:1166 msgid "Selecting" msgstr "Sélection" #. Transforms options -#: ../src/ui/dialog/inkscape-preferences.cpp:1165 -#: ../src/widgets/select-toolbar.cpp:572 +#: ../src/ui/dialog/inkscape-preferences.cpp:1169 +#: ../src/widgets/select-toolbar.cpp:577 msgid "Scale stroke width" msgstr "Redimensionner l'épaisseur du contour" -#: ../src/ui/dialog/inkscape-preferences.cpp:1166 +#: ../src/ui/dialog/inkscape-preferences.cpp:1170 msgid "Scale rounded corners in rectangles" msgstr "Redimensionner les coins arrondis des rectangles" -#: ../src/ui/dialog/inkscape-preferences.cpp:1167 +#: ../src/ui/dialog/inkscape-preferences.cpp:1171 msgid "Transform gradients" msgstr "Transformer les dégradés" -#: ../src/ui/dialog/inkscape-preferences.cpp:1168 +#: ../src/ui/dialog/inkscape-preferences.cpp:1172 msgid "Transform patterns" msgstr "Transformer les motifs de remplissage" -#: ../src/ui/dialog/inkscape-preferences.cpp:1169 -msgid "Optimized" -msgstr "Optimisé" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1170 +#: ../src/ui/dialog/inkscape-preferences.cpp:1174 msgid "Preserved" msgstr "Préservé" -#: ../src/ui/dialog/inkscape-preferences.cpp:1173 -#: ../src/widgets/select-toolbar.cpp:573 +#: ../src/ui/dialog/inkscape-preferences.cpp:1177 +#: ../src/widgets/select-toolbar.cpp:578 msgid "When scaling objects, scale the stroke width by the same proportion" -msgstr "Lors d'un redimensionnement des objets, préserver la proportion des épaisseurs des contours" +msgstr "" +"Lors d'un redimensionnement des objets, préserver la proportion des " +"épaisseurs des contours" -#: ../src/ui/dialog/inkscape-preferences.cpp:1175 -#: ../src/widgets/select-toolbar.cpp:584 +#: ../src/ui/dialog/inkscape-preferences.cpp:1179 +#: ../src/widgets/select-toolbar.cpp:589 msgid "When scaling rectangles, scale the radii of rounded corners" -msgstr "Lors du redimensionnements d'un rectangle, préserver la proportion des rayons des coins arrondis" +msgstr "" +"Lors du redimensionnements d'un rectangle, préserver la proportion des " +"rayons des coins arrondis" -#: ../src/ui/dialog/inkscape-preferences.cpp:1177 -#: ../src/widgets/select-toolbar.cpp:595 +#: ../src/ui/dialog/inkscape-preferences.cpp:1181 +#: ../src/widgets/select-toolbar.cpp:600 msgid "Move gradients (in fill or stroke) along with the objects" msgstr "Transformer les dégradés avec les objets (remplissage et contour)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1179 -#: ../src/widgets/select-toolbar.cpp:606 +#: ../src/ui/dialog/inkscape-preferences.cpp:1183 +#: ../src/widgets/select-toolbar.cpp:611 msgid "Move patterns (in fill or stroke) along with the objects" -msgstr "Transformer les motifs de remplissage avec les objets (remplissage et contour)" +msgstr "" +"Transformer les motifs de remplissage avec les objets (remplissage et " +"contour)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1180 +#: ../src/ui/dialog/inkscape-preferences.cpp:1184 msgid "Store transformation" msgstr "Enregistrement des transformations" -#: ../src/ui/dialog/inkscape-preferences.cpp:1182 -msgid "If possible, apply transformation to objects without adding a transform= attribute" -msgstr "Si possible, appliquer des transformations aux objets sans ajouter l'attribut transform=" +#: ../src/ui/dialog/inkscape-preferences.cpp:1186 +msgid "" +"If possible, apply transformation to objects without adding a transform= " +"attribute" +msgstr "" +"Si possible, appliquer des transformations aux objets sans ajouter " +"l'attribut transform=" -#: ../src/ui/dialog/inkscape-preferences.cpp:1184 +#: ../src/ui/dialog/inkscape-preferences.cpp:1188 msgid "Always store transformation as a transform= attribute on objects" -msgstr "Toujours enregistrer les transformations dans l'attribut transform= des objets" +msgstr "" +"Toujours enregistrer les transformations dans l'attribut transform= des " +"objets" -#: ../src/ui/dialog/inkscape-preferences.cpp:1186 +#: ../src/ui/dialog/inkscape-preferences.cpp:1190 msgid "Transforms" msgstr "Transformations" -#: ../src/ui/dialog/inkscape-preferences.cpp:1190 +#: ../src/ui/dialog/inkscape-preferences.cpp:1194 msgid "Mouse _wheel scrolls by:" msgstr "La _molette de la souris défile de :" -#: ../src/ui/dialog/inkscape-preferences.cpp:1191 -msgid "One mouse wheel notch scrolls by this distance in screen pixels (horizontally with Shift)" -msgstr "Un cran de la molette de la souris fait défiler de tant de pixels (horizontalement avec Maj)" +#: ../src/ui/dialog/inkscape-preferences.cpp:1195 +msgid "" +"One mouse wheel notch scrolls by this distance in screen pixels " +"(horizontally with Shift)" +msgstr "" +"Un cran de la molette de la souris fait défiler de tant de pixels " +"(horizontalement avec Maj)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1192 +#: ../src/ui/dialog/inkscape-preferences.cpp:1196 msgid "Ctrl+arrows" msgstr "Ctrl+flèches" -#: ../src/ui/dialog/inkscape-preferences.cpp:1194 +#: ../src/ui/dialog/inkscape-preferences.cpp:1198 msgid "Sc_roll by:" msgstr "Défile_r de :" -#: ../src/ui/dialog/inkscape-preferences.cpp:1195 +#: ../src/ui/dialog/inkscape-preferences.cpp:1199 msgid "Pressing Ctrl+arrow key scrolls by this distance (in screen pixels)" -msgstr "Appuyer sur Ctrl+flèches fait défiler de cette distance (en pixels d'écran)" +msgstr "" +"Appuyer sur Ctrl+flèches fait défiler de cette distance (en pixels d'écran)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1197 +#: ../src/ui/dialog/inkscape-preferences.cpp:1201 msgid "_Acceleration:" msgstr "_Accélération :" -#: ../src/ui/dialog/inkscape-preferences.cpp:1198 -msgid "Pressing and holding Ctrl+arrow will gradually speed up scrolling (0 for no acceleration)" -msgstr "Garder appuyé Ctrl+flèches accélère graduellement la vitesse du défilement (0 pour aucune accélération)" +#: ../src/ui/dialog/inkscape-preferences.cpp:1202 +msgid "" +"Pressing and holding Ctrl+arrow will gradually speed up scrolling (0 for no " +"acceleration)" +msgstr "" +"Garder appuyé Ctrl+flèches accélère graduellement la vitesse du défilement " +"(0 pour aucune accélération)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1199 +#: ../src/ui/dialog/inkscape-preferences.cpp:1203 msgid "Autoscrolling" msgstr "Défilement automatique" -#: ../src/ui/dialog/inkscape-preferences.cpp:1201 +#: ../src/ui/dialog/inkscape-preferences.cpp:1205 msgid "_Speed:" msgstr "_Vitesse :" -#: ../src/ui/dialog/inkscape-preferences.cpp:1202 -msgid "How fast the canvas autoscrolls when you drag beyond canvas edge (0 to turn autoscroll off)" -msgstr "Vitesse du défilement automatique de la zone de travail lors que l'on tire un objet au dehors de la zone (0 pour aucun défilement automatique)" +#: ../src/ui/dialog/inkscape-preferences.cpp:1206 +msgid "" +"How fast the canvas autoscrolls when you drag beyond canvas edge (0 to turn " +"autoscroll off)" +msgstr "" +"Vitesse du défilement automatique de la zone de travail lors que l'on tire " +"un objet au dehors de la zone (0 pour aucun défilement automatique)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1204 -#: ../src/ui/dialog/tracedialog.cpp:522 -#: ../src/ui/dialog/tracedialog.cpp:721 +#: ../src/ui/dialog/inkscape-preferences.cpp:1208 +#: ../src/ui/dialog/tracedialog.cpp:522 ../src/ui/dialog/tracedialog.cpp:721 msgid "_Threshold:" msgstr "_Seuil :" -#: ../src/ui/dialog/inkscape-preferences.cpp:1205 -msgid "How far (in screen pixels) you need to be from the canvas edge to trigger autoscroll; positive is outside the canvas, negative is within the canvas" -msgstr "Distance (en pixels d'écran) à laquelle il faut être du bord de la zone de travail pour activer le défilement automatique; les valeurs positives sont en dehors de la zone, les négatives à l'intérieur" +#: ../src/ui/dialog/inkscape-preferences.cpp:1209 +msgid "" +"How far (in screen pixels) you need to be from the canvas edge to trigger " +"autoscroll; positive is outside the canvas, negative is within the canvas" +msgstr "" +"Distance (en pixels d'écran) à laquelle il faut être du bord de la zone de " +"travail pour activer le défilement automatique; les valeurs positives sont " +"en dehors de la zone, les négatives à l'intérieur" #. #. _scroll_space.init ( _("Left mouse button pans when Space is pressed"), "/options/spacepans/value", false); #. _page_scrolling.add_line( false, "", _scroll_space, "", #. _("When on, pressing and holding Space and dragging with left mouse button pans canvas (as in Adobe Illustrator); when off, Space temporarily switches to Selector tool (default)")); #. -#: ../src/ui/dialog/inkscape-preferences.cpp:1211 +#: ../src/ui/dialog/inkscape-preferences.cpp:1215 msgid "Mouse wheel zooms by default" msgstr "La molette de la souris zoome par défaut" -#: ../src/ui/dialog/inkscape-preferences.cpp:1213 -msgid "When on, mouse wheel zooms without Ctrl and scrolls canvas with Ctrl; when off, it zooms with Ctrl and scrolls without Ctrl" -msgstr "Si coché, la molette de la souris zoome sans la touche Ctrl et fait défiler la zone de travail avec Ctrl ; si décoché, elle zoome avec Ctrl et fait défiler sans Ctrl." +#: ../src/ui/dialog/inkscape-preferences.cpp:1217 +msgid "" +"When on, mouse wheel zooms without Ctrl and scrolls canvas with Ctrl; when " +"off, it zooms with Ctrl and scrolls without Ctrl" +msgstr "" +"Si coché, la molette de la souris zoome sans la touche Ctrl et fait défiler " +"la zone de travail avec Ctrl ; si décoché, elle zoome avec Ctrl et fait " +"défiler sans Ctrl." -#: ../src/ui/dialog/inkscape-preferences.cpp:1214 +#: ../src/ui/dialog/inkscape-preferences.cpp:1218 msgid "Scrolling" msgstr "Défilement" #. Snapping options -#: ../src/ui/dialog/inkscape-preferences.cpp:1217 +#: ../src/ui/dialog/inkscape-preferences.cpp:1221 msgid "Enable snap indicator" msgstr "Activer le témoin de magnétisme" -#: ../src/ui/dialog/inkscape-preferences.cpp:1219 +#: ../src/ui/dialog/inkscape-preferences.cpp:1223 msgid "After snapping, a symbol is drawn at the point that has snapped" msgstr "Un symbole est dessiné sur le point d'accrochage après l'opération" -#: ../src/ui/dialog/inkscape-preferences.cpp:1222 +#: ../src/ui/dialog/inkscape-preferences.cpp:1226 msgid "_Delay (in ms):" msgstr "_Délai (en millisecondes) :" -#: ../src/ui/dialog/inkscape-preferences.cpp:1223 -msgid "Postpone snapping as long as the mouse is moving, and then wait an additional fraction of a second. This additional delay is specified here. When set to zero or to a very small number, snapping will be immediate." -msgstr "Diffère le magnétisme aussi longtemps que la souris est en mouvement, puis attend encore une fraction de seconde supplémentaire. Ce délai additionnel est défini ici. Si la valeur est nulle ou très faible, l'aimantation est immédiate." +#: ../src/ui/dialog/inkscape-preferences.cpp:1227 +msgid "" +"Postpone snapping as long as the mouse is moving, and then wait an " +"additional fraction of a second. This additional delay is specified here. " +"When set to zero or to a very small number, snapping will be immediate." +msgstr "" +"Diffère le magnétisme aussi longtemps que la souris est en mouvement, puis " +"attend encore une fraction de seconde supplémentaire. Ce délai additionnel " +"est défini ici. Si la valeur est nulle ou très faible, l'aimantation est " +"immédiate." -#: ../src/ui/dialog/inkscape-preferences.cpp:1225 +#: ../src/ui/dialog/inkscape-preferences.cpp:1229 msgid "Only snap the node closest to the pointer" msgstr "Aimanter seulement le nÅ“ud le plus proche du pointeur" -#: ../src/ui/dialog/inkscape-preferences.cpp:1227 -msgid "Only try to snap the node that is initially closest to the mouse pointer" +#: ../src/ui/dialog/inkscape-preferences.cpp:1231 +msgid "" +"Only try to snap the node that is initially closest to the mouse pointer" msgstr "Essayer d'aimanter le nÅ“ud initialement le plus proche du pointeur" -#: ../src/ui/dialog/inkscape-preferences.cpp:1230 +#: ../src/ui/dialog/inkscape-preferences.cpp:1234 msgid "_Weight factor:" msgstr "_Coefficient de pondération :" -#: ../src/ui/dialog/inkscape-preferences.cpp:1231 -msgid "When multiple snap solutions are found, then Inkscape can either prefer the closest transformation (when set to 0), or prefer the node that was initially the closest to the pointer (when set to 1)" -msgstr "Lorsque plusieurs aimantations sont possibles, Inkscape choisit soit la transformation la plus proche (si positionné à 0), soit le nÅ“ud qui était initialement le plus proche du pointeur (si positionné à 1)" +#: ../src/ui/dialog/inkscape-preferences.cpp:1235 +msgid "" +"When multiple snap solutions are found, then Inkscape can either prefer the " +"closest transformation (when set to 0), or prefer the node that was " +"initially the closest to the pointer (when set to 1)" +msgstr "" +"Lorsque plusieurs aimantations sont possibles, Inkscape choisit soit la " +"transformation la plus proche (si positionné à 0), soit le nÅ“ud qui était " +"initialement le plus proche du pointeur (si positionné à 1)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1233 +#: ../src/ui/dialog/inkscape-preferences.cpp:1237 msgid "Snap the mouse pointer when dragging a constrained knot" msgstr "Aimanter le pointeur de souris lors du déplacement d'un nÅ“ud contraint" -#: ../src/ui/dialog/inkscape-preferences.cpp:1235 -msgid "When dragging a knot along a constraint line, then snap the position of the mouse pointer instead of snapping the projection of the knot onto the constraint line" -msgstr "Lorsqu'un nÅ“ud est déplacé le long d'une ligne de contrainte, alors aimanter la position du pointeur de souris plutôt que la projection du nÅ“ud sur la ligne de contrainte" +#: ../src/ui/dialog/inkscape-preferences.cpp:1239 +msgid "" +"When dragging a knot along a constraint line, then snap the position of the " +"mouse pointer instead of snapping the projection of the knot onto the " +"constraint line" +msgstr "" +"Lorsqu'un nÅ“ud est déplacé le long d'une ligne de contrainte, alors aimanter " +"la position du pointeur de souris plutôt que la projection du nÅ“ud sur la " +"ligne de contrainte" -#: ../src/ui/dialog/inkscape-preferences.cpp:1237 +#: ../src/ui/dialog/inkscape-preferences.cpp:1241 msgid "Snapping" msgstr "Magnétisme" #. nudgedistance is limited to 1000 in select-context.cpp: use the same limit here -#: ../src/ui/dialog/inkscape-preferences.cpp:1242 +#: ../src/ui/dialog/inkscape-preferences.cpp:1246 msgid "_Arrow keys move by:" msgstr "Les _flèches déplacent de :" -#: ../src/ui/dialog/inkscape-preferences.cpp:1243 -msgid "Pressing an arrow key moves selected object(s) or node(s) by this distance" -msgstr "Appuyer sur une flèche déplace les objet(s) ou les nÅ“ud(s) sélectionnés de cette distance" +#: ../src/ui/dialog/inkscape-preferences.cpp:1247 +msgid "" +"Pressing an arrow key moves selected object(s) or node(s) by this distance" +msgstr "" +"Appuyer sur une flèche déplace les objet(s) ou les nÅ“ud(s) sélectionnés de " +"cette distance" #. defaultscale is limited to 1000 in select-context.cpp: use the same limit here -#: ../src/ui/dialog/inkscape-preferences.cpp:1246 +#: ../src/ui/dialog/inkscape-preferences.cpp:1250 msgid "> and < _scale by:" msgstr "> et < _redimensionnent de :" -#: ../src/ui/dialog/inkscape-preferences.cpp:1247 +#: ../src/ui/dialog/inkscape-preferences.cpp:1251 msgid "Pressing > or < scales selection up or down by this increment" msgstr "Appuyer sur > ou < redimensionne de cet incrément" -#: ../src/ui/dialog/inkscape-preferences.cpp:1249 +#: ../src/ui/dialog/inkscape-preferences.cpp:1253 msgid "_Inset/Outset by:" msgstr "_Contracter/dilater de :" -#: ../src/ui/dialog/inkscape-preferences.cpp:1250 +#: ../src/ui/dialog/inkscape-preferences.cpp:1254 msgid "Inset and Outset commands displace the path by this distance" -msgstr "Les commandes contracter et dilater déplacent le chemin de cette distance" +msgstr "" +"Les commandes contracter et dilater déplacent le chemin de cette distance" -#: ../src/ui/dialog/inkscape-preferences.cpp:1251 +#: ../src/ui/dialog/inkscape-preferences.cpp:1255 msgid "Compass-like display of angles" msgstr "Afficher les angles comme sur une boussole" -#: ../src/ui/dialog/inkscape-preferences.cpp:1253 -msgid "When on, angles are displayed with 0 at north, 0 to 360 range, positive clockwise; otherwise with 0 at east, -180 to 180 range, positive counterclockwise" -msgstr "Si coché, les angles sont affichés en sens horaire de 0 (au nord) à 360; si décoché, ils sont affichés de -180 à 180 en sens anti-horaire (0 étant à l'est)" +#: ../src/ui/dialog/inkscape-preferences.cpp:1257 +msgid "" +"When on, angles are displayed with 0 at north, 0 to 360 range, positive " +"clockwise; otherwise with 0 at east, -180 to 180 range, positive " +"counterclockwise" +msgstr "" +"Si coché, les angles sont affichés en sens horaire de 0 (au nord) à 360; si " +"décoché, ils sont affichés de -180 à 180 en sens anti-horaire (0 étant à " +"l'est)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1259 +#: ../src/ui/dialog/inkscape-preferences.cpp:1263 msgid "_Rotation snaps every:" msgstr "Incrément de _rotation :" -#: ../src/ui/dialog/inkscape-preferences.cpp:1259 +#: ../src/ui/dialog/inkscape-preferences.cpp:1263 msgid "degrees" msgstr "degrés" -#: ../src/ui/dialog/inkscape-preferences.cpp:1260 -msgid "Rotating with Ctrl pressed snaps every that much degrees; also, pressing [ or ] rotates by this amount" -msgstr "Ctrl appuyé forcera des rotations de tant de degrés; de même en appuyant sur [ ou ], les rotations se feront selon cet incrément" +#: ../src/ui/dialog/inkscape-preferences.cpp:1264 +msgid "" +"Rotating with Ctrl pressed snaps every that much degrees; also, pressing " +"[ or ] rotates by this amount" +msgstr "" +"Ctrl appuyé forcera des rotations de tant de degrés; de même en appuyant sur " +"[ ou ], les rotations se feront selon cet incrément" -#: ../src/ui/dialog/inkscape-preferences.cpp:1261 +#: ../src/ui/dialog/inkscape-preferences.cpp:1265 msgid "Relative snapping of guideline angles" msgstr "Aimanter relativement aux angles des guides" -#: ../src/ui/dialog/inkscape-preferences.cpp:1263 -msgid "When on, the snap angles when rotating a guideline will be relative to the original angle" -msgstr "Si coché, l'angle de magnétisme lors de la rotation d'un guide est relatif à l'angle d'origine" +#: ../src/ui/dialog/inkscape-preferences.cpp:1267 +msgid "" +"When on, the snap angles when rotating a guideline will be relative to the " +"original angle" +msgstr "" +"Si coché, l'angle de magnétisme lors de la rotation d'un guide est relatif à " +"l'angle d'origine" -#: ../src/ui/dialog/inkscape-preferences.cpp:1265 +#: ../src/ui/dialog/inkscape-preferences.cpp:1269 msgid "_Zoom in/out by:" msgstr "(Dé)_Zoomer de :" -#: ../src/ui/dialog/inkscape-preferences.cpp:1266 -msgid "Zoom tool click, +/- keys, and middle click zoom in and out by this multiplier" -msgstr "Les outils de zoom (clic en mode zoom, touches +/-, clic bouton du milieu) zooment ou dézooment selon ce facteur" +#: ../src/ui/dialog/inkscape-preferences.cpp:1269 +msgid "%" +msgstr "%" -#: ../src/ui/dialog/inkscape-preferences.cpp:1267 +#: ../src/ui/dialog/inkscape-preferences.cpp:1270 +msgid "" +"Zoom tool click, +/- keys, and middle click zoom in and out by this " +"multiplier" +msgstr "" +"Les outils de zoom (clic en mode zoom, touches +/-, clic bouton du milieu) " +"zooment ou dézooment selon ce facteur" + +#: ../src/ui/dialog/inkscape-preferences.cpp:1271 msgid "Steps" msgstr "Incréments" #. Clones options -#: ../src/ui/dialog/inkscape-preferences.cpp:1270 +#: ../src/ui/dialog/inkscape-preferences.cpp:1274 msgid "Move in parallel" msgstr "Sont déplacés en parallèle" -#: ../src/ui/dialog/inkscape-preferences.cpp:1272 +#: ../src/ui/dialog/inkscape-preferences.cpp:1276 msgid "Stay unmoved" msgstr "Ne bougent pas" -#: ../src/ui/dialog/inkscape-preferences.cpp:1274 +#: ../src/ui/dialog/inkscape-preferences.cpp:1278 msgid "Move according to transform" msgstr "Sont déplacés en fonction leurs transformations" -#: ../src/ui/dialog/inkscape-preferences.cpp:1276 +#: ../src/ui/dialog/inkscape-preferences.cpp:1280 msgid "Are unlinked" msgstr "Sont déliés" -#: ../src/ui/dialog/inkscape-preferences.cpp:1278 +#: ../src/ui/dialog/inkscape-preferences.cpp:1282 msgid "Are deleted" msgstr "Sont supprimés" -#: ../src/ui/dialog/inkscape-preferences.cpp:1281 +#: ../src/ui/dialog/inkscape-preferences.cpp:1285 msgid "Moving original: clones and linked offsets" msgstr "Lorsque l'original est déplacé, ses clones et ses offsets liés" -#: ../src/ui/dialog/inkscape-preferences.cpp:1283 +#: ../src/ui/dialog/inkscape-preferences.cpp:1287 msgid "Clones are translated by the same vector as their original" msgstr "Les clones sont déplacés du même vecteur que leur original" -#: ../src/ui/dialog/inkscape-preferences.cpp:1285 +#: ../src/ui/dialog/inkscape-preferences.cpp:1289 msgid "Clones preserve their positions when their original is moved" msgstr "Les clones restent sur place quand leur original est déplacé" -#: ../src/ui/dialog/inkscape-preferences.cpp:1287 -msgid "Each clone moves according to the value of its transform= attribute; for example, a rotated clone will move in a different direction than its original" -msgstr "Chaque clone est déplacé en fonction de son attribut transform= ; par exemple, un clone qui a déjà été tourné sera déplacé dans une direction différente de celle de son original" +#: ../src/ui/dialog/inkscape-preferences.cpp:1291 +msgid "" +"Each clone moves according to the value of its transform= attribute; for " +"example, a rotated clone will move in a different direction than its original" +msgstr "" +"Chaque clone est déplacé en fonction de son attribut transform= ; par " +"exemple, un clone qui a déjà été tourné sera déplacé dans une direction " +"différente de celle de son original" -#: ../src/ui/dialog/inkscape-preferences.cpp:1288 +#: ../src/ui/dialog/inkscape-preferences.cpp:1292 msgid "Deleting original: clones" msgstr "Suppression de l'original : clones" -#: ../src/ui/dialog/inkscape-preferences.cpp:1290 +#: ../src/ui/dialog/inkscape-preferences.cpp:1294 msgid "Orphaned clones are converted to regular objects" msgstr "Les clones orphelins sont convertis en objets normaux" -#: ../src/ui/dialog/inkscape-preferences.cpp:1292 +#: ../src/ui/dialog/inkscape-preferences.cpp:1296 msgid "Orphaned clones are deleted along with their original" msgstr "Les clones orphelins sont supprimés en même temps que leur original" -#: ../src/ui/dialog/inkscape-preferences.cpp:1294 +#: ../src/ui/dialog/inkscape-preferences.cpp:1298 msgid "Duplicating original+clones/linked offset" -msgstr "Lors de la duplication d'un original et de ses clones ou de ses offsets liés" +msgstr "" +"Lors de la duplication d'un original et de ses clones ou de ses offsets liés" -#: ../src/ui/dialog/inkscape-preferences.cpp:1296 +#: ../src/ui/dialog/inkscape-preferences.cpp:1300 msgid "Relink duplicated clones" msgstr "Relier les clones dupliqués" -#: ../src/ui/dialog/inkscape-preferences.cpp:1298 -msgid "When duplicating a selection containing both a clone and its original (possibly in groups), relink the duplicated clone to the duplicated original instead of the old original" -msgstr "Lorsque la sélection dupliquée contient un clone et son original (dans un groupe par exemple), relier le clone dupliqué à l'objet original dupliqué plutôt qu'à l'original initial" +#: ../src/ui/dialog/inkscape-preferences.cpp:1302 +msgid "" +"When duplicating a selection containing both a clone and its original " +"(possibly in groups), relink the duplicated clone to the duplicated original " +"instead of the old original" +msgstr "" +"Lorsque la sélection dupliquée contient un clone et son original (dans un " +"groupe par exemple), relier le clone dupliqué à l'objet original dupliqué " +"plutôt qu'à l'original initial" #. TRANSLATORS: Heading for the Inkscape Preferences "Clones" Page -#: ../src/ui/dialog/inkscape-preferences.cpp:1301 +#: ../src/ui/dialog/inkscape-preferences.cpp:1305 msgid "Clones" msgstr "Clones" #. Clip paths and masks options -#: ../src/ui/dialog/inkscape-preferences.cpp:1304 +#: ../src/ui/dialog/inkscape-preferences.cpp:1308 msgid "When applying, use the topmost selected object as clippath/mask" -msgstr "Utiliser l'objet le plus haut comme chemin de découpe ou masque lors de l'application" +msgstr "" +"Utiliser l'objet le plus haut comme chemin de découpe ou masque lors de " +"l'application" -#: ../src/ui/dialog/inkscape-preferences.cpp:1306 -msgid "Uncheck this to use the bottom selected object as the clipping path or mask" -msgstr "Si décoché, l'objet le plus en-dessous de la sélection est utilisé comme chemin de découpe ou masque" +#: ../src/ui/dialog/inkscape-preferences.cpp:1310 +msgid "" +"Uncheck this to use the bottom selected object as the clipping path or mask" +msgstr "" +"Si décoché, l'objet le plus en-dessous de la sélection est utilisé comme " +"chemin de découpe ou masque" -#: ../src/ui/dialog/inkscape-preferences.cpp:1307 +#: ../src/ui/dialog/inkscape-preferences.cpp:1311 msgid "Remove clippath/mask object after applying" msgstr "Supprimer le chemin de découpe ou le masque après application" -#: ../src/ui/dialog/inkscape-preferences.cpp:1309 -msgid "After applying, remove the object used as the clipping path or mask from the drawing" -msgstr "Si coché, le chemin de découpe ou masque est supprimé du dessin après avoir été appliqué" +#: ../src/ui/dialog/inkscape-preferences.cpp:1313 +msgid "" +"After applying, remove the object used as the clipping path or mask from the " +"drawing" +msgstr "" +"Si coché, le chemin de découpe ou masque est supprimé du dessin après avoir " +"été appliqué" -#: ../src/ui/dialog/inkscape-preferences.cpp:1311 +#: ../src/ui/dialog/inkscape-preferences.cpp:1315 msgid "Before applying" msgstr "Avant d'appliquer une découpe ou un masque" -#: ../src/ui/dialog/inkscape-preferences.cpp:1313 +#: ../src/ui/dialog/inkscape-preferences.cpp:1317 msgid "Do not group clipped/masked objects" msgstr "Ne pas grouper les objets découpés ou masqués" -#: ../src/ui/dialog/inkscape-preferences.cpp:1314 +#: ../src/ui/dialog/inkscape-preferences.cpp:1318 msgid "Put every clipped/masked object in its own group" msgstr "Insérer chaque objet découpé ou masqué dans son propre groupe" -#: ../src/ui/dialog/inkscape-preferences.cpp:1315 +#: ../src/ui/dialog/inkscape-preferences.cpp:1319 msgid "Put all clipped/masked objects into one group" msgstr "Mettre tous les objets découpés ou masqués dans un même groupe" -#: ../src/ui/dialog/inkscape-preferences.cpp:1318 +#: ../src/ui/dialog/inkscape-preferences.cpp:1322 msgid "Apply clippath/mask to every object" msgstr "Applique la découpe ou le masque à tous les objets" -#: ../src/ui/dialog/inkscape-preferences.cpp:1321 +#: ../src/ui/dialog/inkscape-preferences.cpp:1325 msgid "Apply clippath/mask to groups containing single object" msgstr "Applique la découpe ou le masque à des groupes contenant un objet seul" -#: ../src/ui/dialog/inkscape-preferences.cpp:1324 +#: ../src/ui/dialog/inkscape-preferences.cpp:1328 msgid "Apply clippath/mask to group containing all objects" msgstr "Applique la découpe ou le masque à un groupe contenant tous les objets" -#: ../src/ui/dialog/inkscape-preferences.cpp:1326 +#: ../src/ui/dialog/inkscape-preferences.cpp:1330 msgid "After releasing" msgstr "Après retrait de la découpe ou du masque" -#: ../src/ui/dialog/inkscape-preferences.cpp:1328 +#: ../src/ui/dialog/inkscape-preferences.cpp:1332 msgid "Ungroup automatically created groups" msgstr "Dégrouper les groupes créés automatiquement" -#: ../src/ui/dialog/inkscape-preferences.cpp:1330 +#: ../src/ui/dialog/inkscape-preferences.cpp:1334 msgid "Ungroup groups created when setting clip/mask" -msgstr "Dégrouper les groupes créés lors de la mise en place de la découpe ou du masque" +msgstr "" +"Dégrouper les groupes créés lors de la mise en place de la découpe ou du " +"masque" -#: ../src/ui/dialog/inkscape-preferences.cpp:1332 +#: ../src/ui/dialog/inkscape-preferences.cpp:1336 msgid "Clippaths and masks" msgstr "Chemins de découpe et masques" -#: ../src/ui/dialog/inkscape-preferences.cpp:1335 +#: ../src/ui/dialog/inkscape-preferences.cpp:1339 msgid "Stroke Style Markers" msgstr "Style de contour des marqueurs" -#: ../src/ui/dialog/inkscape-preferences.cpp:1337 -#: ../src/ui/dialog/inkscape-preferences.cpp:1339 -msgid "Stroke color same as object, fill color either object fill color or marker fill color" +#: ../src/ui/dialog/inkscape-preferences.cpp:1341 +#: ../src/ui/dialog/inkscape-preferences.cpp:1343 +msgid "" +"Stroke color same as object, fill color either object fill color or marker " +"fill color" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1343 +#: ../src/ui/dialog/inkscape-preferences.cpp:1347 +#: ../share/extensions/hershey.inx.h:27 msgid "Markers" msgstr "Marqueurs" -#: ../src/ui/dialog/inkscape-preferences.cpp:1346 +#: ../src/ui/dialog/inkscape-preferences.cpp:1350 msgid "Document cleanup" msgstr "Nettoyage du document" -#: ../src/ui/dialog/inkscape-preferences.cpp:1347 -#: ../src/ui/dialog/inkscape-preferences.cpp:1349 +#: ../src/ui/dialog/inkscape-preferences.cpp:1351 +#: ../src/ui/dialog/inkscape-preferences.cpp:1353 msgid "Remove unused swatches when doing a document cleanup" msgstr "" #. tooltip -#: ../src/ui/dialog/inkscape-preferences.cpp:1350 +#: ../src/ui/dialog/inkscape-preferences.cpp:1354 msgid "Cleanup" msgstr "Nettoyage" -#: ../src/ui/dialog/inkscape-preferences.cpp:1358 +#: ../src/ui/dialog/inkscape-preferences.cpp:1362 msgid "Number of _Threads:" msgstr "Nombre de _threads :" -#: ../src/ui/dialog/inkscape-preferences.cpp:1358 -#: ../src/ui/dialog/inkscape-preferences.cpp:1876 +#: ../src/ui/dialog/inkscape-preferences.cpp:1362 +#: ../src/ui/dialog/inkscape-preferences.cpp:1880 msgid "(requires restart)" msgstr "(nécessite un redémarrage)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1359 +#: ../src/ui/dialog/inkscape-preferences.cpp:1363 msgid "Configure number of processors/threads to use when rendering filters" -msgstr "Configure le nombre de processeurs/threads à utiliser pour le rendu des filtres" +msgstr "" +"Configure le nombre de processeurs/threads à utiliser pour le rendu des " +"filtres" -#: ../src/ui/dialog/inkscape-preferences.cpp:1363 +#: ../src/ui/dialog/inkscape-preferences.cpp:1367 msgid "Rendering _cache size:" msgstr "Taille du _cache de rendu :" -#: ../src/ui/dialog/inkscape-preferences.cpp:1363 +#: ../src/ui/dialog/inkscape-preferences.cpp:1367 msgctxt "mebibyte (2^20 bytes) abbreviation" msgid "MiB" msgstr "Mio" -#: ../src/ui/dialog/inkscape-preferences.cpp:1363 -msgid "Set the amount of memory per document which can be used to store rendered parts of the drawing for later reuse; set to zero to disable caching" -msgstr "Configure la quantité de mémoire par document pouvant être utilisée pour stocker les parties affichées du dessin pour une réutilisation ultérieure ; positionnez cette valeur à zéro pour désactiver le cache" +#: ../src/ui/dialog/inkscape-preferences.cpp:1367 +msgid "" +"Set the amount of memory per document which can be used to store rendered " +"parts of the drawing for later reuse; set to zero to disable caching" +msgstr "" +"Configure la quantité de mémoire par document pouvant être utilisée pour " +"stocker les parties affichées du dessin pour une réutilisation ultérieure ; " +"positionnez cette valeur à zéro pour désactiver le cache" #. blur quality #. filter quality -#: ../src/ui/dialog/inkscape-preferences.cpp:1366 -#: ../src/ui/dialog/inkscape-preferences.cpp:1390 +#: ../src/ui/dialog/inkscape-preferences.cpp:1370 +#: ../src/ui/dialog/inkscape-preferences.cpp:1394 msgid "Best quality (slowest)" msgstr "Haute qualité (le plus lent)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1368 -#: ../src/ui/dialog/inkscape-preferences.cpp:1392 +#: ../src/ui/dialog/inkscape-preferences.cpp:1372 +#: ../src/ui/dialog/inkscape-preferences.cpp:1396 msgid "Better quality (slower)" msgstr "Bonne qualité (plus lent)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1370 -#: ../src/ui/dialog/inkscape-preferences.cpp:1394 +#: ../src/ui/dialog/inkscape-preferences.cpp:1374 +#: ../src/ui/dialog/inkscape-preferences.cpp:1398 msgid "Average quality" msgstr "Qualité moyenne" -#: ../src/ui/dialog/inkscape-preferences.cpp:1372 -#: ../src/ui/dialog/inkscape-preferences.cpp:1396 +#: ../src/ui/dialog/inkscape-preferences.cpp:1376 +#: ../src/ui/dialog/inkscape-preferences.cpp:1400 msgid "Lower quality (faster)" msgstr "Basse qualité (plus rapide)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1374 -#: ../src/ui/dialog/inkscape-preferences.cpp:1398 +#: ../src/ui/dialog/inkscape-preferences.cpp:1378 +#: ../src/ui/dialog/inkscape-preferences.cpp:1402 msgid "Lowest quality (fastest)" msgstr "Qualité médiocre (le plus rapide)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1377 +#: ../src/ui/dialog/inkscape-preferences.cpp:1381 msgid "Gaussian blur quality for display" msgstr "Qualité d'affichage du flou gaussien" -#: ../src/ui/dialog/inkscape-preferences.cpp:1379 -#: ../src/ui/dialog/inkscape-preferences.cpp:1403 -msgid "Best quality, but display may be very slow at high zooms (bitmap export always uses best quality)" -msgstr "La plus haute qualité, mais l'affichage peut être très lent pour des zooms importants (l'export en bitmap utilise toujours la plus haute qualité)" +#: ../src/ui/dialog/inkscape-preferences.cpp:1383 +#: ../src/ui/dialog/inkscape-preferences.cpp:1407 +msgid "" +"Best quality, but display may be very slow at high zooms (bitmap export " +"always uses best quality)" +msgstr "" +"La plus haute qualité, mais l'affichage peut être très lent pour des zooms " +"importants (l'export en bitmap utilise toujours la plus haute qualité)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1381 -#: ../src/ui/dialog/inkscape-preferences.cpp:1405 +#: ../src/ui/dialog/inkscape-preferences.cpp:1385 +#: ../src/ui/dialog/inkscape-preferences.cpp:1409 msgid "Better quality, but slower display" msgstr "Meilleure qualité, mais affichage plus lent" -#: ../src/ui/dialog/inkscape-preferences.cpp:1383 -#: ../src/ui/dialog/inkscape-preferences.cpp:1407 +#: ../src/ui/dialog/inkscape-preferences.cpp:1387 +#: ../src/ui/dialog/inkscape-preferences.cpp:1411 msgid "Average quality, acceptable display speed" msgstr "Qualité moyenne, vitesse d'affichage acceptable" -#: ../src/ui/dialog/inkscape-preferences.cpp:1385 -#: ../src/ui/dialog/inkscape-preferences.cpp:1409 +#: ../src/ui/dialog/inkscape-preferences.cpp:1389 +#: ../src/ui/dialog/inkscape-preferences.cpp:1413 msgid "Lower quality (some artifacts), but display is faster" msgstr "Qualité plus faible (présence d'artefacts), mais affichage plus rapide" -#: ../src/ui/dialog/inkscape-preferences.cpp:1387 -#: ../src/ui/dialog/inkscape-preferences.cpp:1411 +#: ../src/ui/dialog/inkscape-preferences.cpp:1391 +#: ../src/ui/dialog/inkscape-preferences.cpp:1415 msgid "Lowest quality (considerable artifacts), but display is fastest" -msgstr "La plus mauvaise qualité (nombreux artefacts), mais l'affichage est bien plus rapide" +msgstr "" +"La plus mauvaise qualité (nombreux artefacts), mais l'affichage est bien " +"plus rapide" -#: ../src/ui/dialog/inkscape-preferences.cpp:1401 +#: ../src/ui/dialog/inkscape-preferences.cpp:1405 msgid "Filter effects quality for display" msgstr "Qualité d'affichage des effets de filtre" #. build custom preferences tab -#: ../src/ui/dialog/inkscape-preferences.cpp:1413 +#: ../src/ui/dialog/inkscape-preferences.cpp:1417 #: ../src/ui/dialog/print.cpp:224 msgid "Rendering" msgstr "Rendu" -#: ../src/ui/dialog/inkscape-preferences.cpp:1419 +#: ../src/ui/dialog/inkscape-preferences.cpp:1423 msgid "2x2" msgstr "2x2" -#: ../src/ui/dialog/inkscape-preferences.cpp:1419 +#: ../src/ui/dialog/inkscape-preferences.cpp:1423 msgid "4x4" msgstr "4x4" -#: ../src/ui/dialog/inkscape-preferences.cpp:1419 +#: ../src/ui/dialog/inkscape-preferences.cpp:1423 msgid "8x8" msgstr "8x8" -#: ../src/ui/dialog/inkscape-preferences.cpp:1419 +#: ../src/ui/dialog/inkscape-preferences.cpp:1423 msgid "16x16" msgstr "16x16" -#: ../src/ui/dialog/inkscape-preferences.cpp:1423 +#: ../src/ui/dialog/inkscape-preferences.cpp:1427 msgid "Oversample bitmaps:" msgstr "Sur-échantilloner les bitmaps :" -#: ../src/ui/dialog/inkscape-preferences.cpp:1426 +#: ../src/ui/dialog/inkscape-preferences.cpp:1430 msgid "Automatically reload bitmaps" msgstr "Recharger automatiquement les bitmaps" -#: ../src/ui/dialog/inkscape-preferences.cpp:1428 +#: ../src/ui/dialog/inkscape-preferences.cpp:1432 msgid "Automatically reload linked images when file is changed on disk" -msgstr "Active le rechargement automatique des images liées lorsqu'elles ont été modifiées sur le disque" +msgstr "" +"Active le rechargement automatique des images liées lorsqu'elles ont été " +"modifiées sur le disque" -#: ../src/ui/dialog/inkscape-preferences.cpp:1430 +#: ../src/ui/dialog/inkscape-preferences.cpp:1434 msgid "_Bitmap editor:" msgstr "Éditeur de _bitmap :" -#: ../src/ui/dialog/inkscape-preferences.cpp:1432 +#: ../src/ui/dialog/inkscape-preferences.cpp:1436 msgid "Default export _resolution:" msgstr "_Résolution par défaut d'exportation :" -#: ../src/ui/dialog/inkscape-preferences.cpp:1433 +#: ../src/ui/dialog/inkscape-preferences.cpp:1437 msgid "Default bitmap resolution (in dots per inch) in the Export dialog" -msgstr "Résolution par défaut (point par pouce) dans la boîte de dialogue exporter" +msgstr "" +"Résolution par défaut (point par pouce) dans la boîte de dialogue exporter" -#: ../src/ui/dialog/inkscape-preferences.cpp:1435 +#: ../src/ui/dialog/inkscape-preferences.cpp:1439 msgid "Resolution for Create Bitmap _Copy:" msgstr "Résolution pour _Créer une copie bitmap :" -#: ../src/ui/dialog/inkscape-preferences.cpp:1436 +#: ../src/ui/dialog/inkscape-preferences.cpp:1440 msgid "Resolution used by the Create Bitmap Copy command" msgstr "Résolution utilisée par la commande Créer une copie bitmap" -#: ../src/ui/dialog/inkscape-preferences.cpp:1438 +#: ../src/ui/dialog/inkscape-preferences.cpp:1442 msgid "Always embed" msgstr "Toujours incorporer" -#: ../src/ui/dialog/inkscape-preferences.cpp:1438 +#: ../src/ui/dialog/inkscape-preferences.cpp:1442 msgid "Always link" msgstr "Toujours lier" -#: ../src/ui/dialog/inkscape-preferences.cpp:1438 +#: ../src/ui/dialog/inkscape-preferences.cpp:1442 msgid "Ask" msgstr "Demander" -#: ../src/ui/dialog/inkscape-preferences.cpp:1441 +#: ../src/ui/dialog/inkscape-preferences.cpp:1445 msgid "Bitmap import:" msgstr "Importation de bitmap :" -#: ../src/ui/dialog/inkscape-preferences.cpp:1444 +#: ../src/ui/dialog/inkscape-preferences.cpp:1448 msgid "Bitmap import quality:" msgstr "Qualité de bitmap à l'importation :" -#: ../src/ui/dialog/inkscape-preferences.cpp:1447 +#: ../src/ui/dialog/inkscape-preferences.cpp:1451 msgid "Default _import resolution:" msgstr "Résolution par défaut d'_importation :" -#: ../src/ui/dialog/inkscape-preferences.cpp:1448 +#: ../src/ui/dialog/inkscape-preferences.cpp:1452 msgid "Default bitmap resolution (in dots per inch) for bitmap import" -msgstr "Résolution bitmap par défaut (point par pouce) dans la boîte de dialogue importer" +msgstr "" +"Résolution bitmap par défaut (point par pouce) dans la boîte de dialogue " +"importer" -#: ../src/ui/dialog/inkscape-preferences.cpp:1449 +#: ../src/ui/dialog/inkscape-preferences.cpp:1453 msgid "Override file resolution" msgstr "Écraser la résolution du fichier" -#: ../src/ui/dialog/inkscape-preferences.cpp:1451 +#: ../src/ui/dialog/inkscape-preferences.cpp:1455 msgid "Use default bitmap resolution in favor of information from file" -msgstr "Utilise la résolution matricielle par défaut à la place de celle contenue dans le fichier" +msgstr "" +"Utilise la résolution matricielle par défaut à la place de celle contenue " +"dans le fichier" -#: ../src/ui/dialog/inkscape-preferences.cpp:1453 +#: ../src/ui/dialog/inkscape-preferences.cpp:1457 msgid "Bitmaps" msgstr "Bitmaps" -#: ../src/ui/dialog/inkscape-preferences.cpp:1465 +#: ../src/ui/dialog/inkscape-preferences.cpp:1469 #, fuzzy -msgid "Select a file of predefined shortcuts to use. Any customized shortcuts you create will be added seperately to " +msgid "" +"Select a file of predefined shortcuts to use. Any customized shortcuts you " +"create will be added seperately to " msgstr "Sélectionnez un fichier de raccourcis prédéfinis à utiliser." -#: ../src/ui/dialog/inkscape-preferences.cpp:1468 +#: ../src/ui/dialog/inkscape-preferences.cpp:1472 msgid "Shortcut file:" msgstr "Fichier des raccourcis :" -#: ../src/ui/dialog/inkscape-preferences.cpp:1471 +#: ../src/ui/dialog/inkscape-preferences.cpp:1475 +#: ../src/ui/dialog/template-load-tab.cpp:50 msgid "Search:" msgstr "Rechercher :" -#: ../src/ui/dialog/inkscape-preferences.cpp:1483 +#: ../src/ui/dialog/inkscape-preferences.cpp:1487 msgid "Shortcut" msgstr "Raccourci" -#: ../src/ui/dialog/inkscape-preferences.cpp:1484 -#: ../src/ui/widget/page-sizer.cpp:262 +#: ../src/ui/dialog/inkscape-preferences.cpp:1488 +#: ../src/ui/widget/page-sizer.cpp:260 msgid "Description" msgstr "Description" -#: ../src/ui/dialog/inkscape-preferences.cpp:1539 -#: ../src/ui/dialog/svg-fonts-dialog.cpp:694 +#: ../src/ui/dialog/inkscape-preferences.cpp:1543 +#: ../src/ui/dialog/pixelartdialog.cpp:268 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:698 #: ../src/ui/dialog/tracedialog.cpp:813 #: ../src/ui/widget/preferences-widget.cpp:749 msgid "Reset" msgstr "Réinitialiser" -#: ../src/ui/dialog/inkscape-preferences.cpp:1539 -msgid "Remove all your customized keyboard shortcuts, and revert to the shortcuts in the shortcut file listed above" -msgstr "Remplace tous les raccourcis clavier personnalisés par ceux définis dans le fichier choisi" - #: ../src/ui/dialog/inkscape-preferences.cpp:1543 +msgid "" +"Remove all your customized keyboard shortcuts, and revert to the shortcuts " +"in the shortcut file listed above" +msgstr "" +"Remplace tous les raccourcis clavier personnalisés par ceux définis dans le " +"fichier choisi" + +#: ../src/ui/dialog/inkscape-preferences.cpp:1547 msgid "Import ..." msgstr "Importer..." -#: ../src/ui/dialog/inkscape-preferences.cpp:1543 +#: ../src/ui/dialog/inkscape-preferences.cpp:1547 msgid "Import custom keyboard shortcuts from a file" msgstr "Importer des raccourcis clavier personnalisés à partir d'un fichier" -#: ../src/ui/dialog/inkscape-preferences.cpp:1546 +#: ../src/ui/dialog/inkscape-preferences.cpp:1550 msgid "Export ..." msgstr "Exporter..." -#: ../src/ui/dialog/inkscape-preferences.cpp:1546 +#: ../src/ui/dialog/inkscape-preferences.cpp:1550 msgid "Export custom keyboard shortcuts to a file" msgstr "Exporter les raccourcis clavier personnalisés dans un fichier" -#: ../src/ui/dialog/inkscape-preferences.cpp:1556 +#: ../src/ui/dialog/inkscape-preferences.cpp:1560 msgid "Keyboard Shortcuts" msgstr "Raccourcis clavier" #. Find this group in the tree -#: ../src/ui/dialog/inkscape-preferences.cpp:1719 +#: ../src/ui/dialog/inkscape-preferences.cpp:1723 msgid "Misc" msgstr "Divers" -#: ../src/ui/dialog/inkscape-preferences.cpp:1838 +#: ../src/ui/dialog/inkscape-preferences.cpp:1842 msgid "Set the main spell check language" msgstr "Définit la langue principale du correcteur orthographique" -#: ../src/ui/dialog/inkscape-preferences.cpp:1841 +#: ../src/ui/dialog/inkscape-preferences.cpp:1845 msgid "Second language:" msgstr "Deuxième langue :" -#: ../src/ui/dialog/inkscape-preferences.cpp:1842 -msgid "Set the second spell check language; checking will only stop on words unknown in ALL chosen languages" -msgstr "Définit la deuxième langue du correcteur orthographique ; la vérification ne s'arrêtera que sur les mots inconnus de toutes les langues sélectionnées" +#: ../src/ui/dialog/inkscape-preferences.cpp:1846 +msgid "" +"Set the second spell check language; checking will only stop on words " +"unknown in ALL chosen languages" +msgstr "" +"Définit la deuxième langue du correcteur orthographique ; la vérification ne " +"s'arrêtera que sur les mots inconnus de toutes les langues sélectionnées" -#: ../src/ui/dialog/inkscape-preferences.cpp:1845 +#: ../src/ui/dialog/inkscape-preferences.cpp:1849 msgid "Third language:" msgstr "Troisième langue :" -#: ../src/ui/dialog/inkscape-preferences.cpp:1846 -msgid "Set the third spell check language; checking will only stop on words unknown in ALL chosen languages" -msgstr "Définit la troisième langue du correcteur orthographique ; la vérification ne s'arrêtera que sur les mots inconnus de toutes les langues sélectionnées" +#: ../src/ui/dialog/inkscape-preferences.cpp:1850 +msgid "" +"Set the third spell check language; checking will only stop on words unknown " +"in ALL chosen languages" +msgstr "" +"Définit la troisième langue du correcteur orthographique ; la vérification " +"ne s'arrêtera que sur les mots inconnus de toutes les langues sélectionnées" -#: ../src/ui/dialog/inkscape-preferences.cpp:1848 +#: ../src/ui/dialog/inkscape-preferences.cpp:1852 msgid "Ignore words with digits" msgstr "Ignorer les mots contenant des chiffres" -#: ../src/ui/dialog/inkscape-preferences.cpp:1850 +#: ../src/ui/dialog/inkscape-preferences.cpp:1854 msgid "Ignore words containing digits, such as \"R2D2\"" msgstr "Ignorer les mots contenant des chiffres, comme « R2D2 »" -#: ../src/ui/dialog/inkscape-preferences.cpp:1852 +#: ../src/ui/dialog/inkscape-preferences.cpp:1856 msgid "Ignore words in ALL CAPITALS" msgstr "Ignorer les mots tout en capitales" -#: ../src/ui/dialog/inkscape-preferences.cpp:1854 +#: ../src/ui/dialog/inkscape-preferences.cpp:1858 msgid "Ignore words in all capitals, such as \"IUPAC\"" msgstr "Ignorer les mots tout en capitales, comme « GNU »" -#: ../src/ui/dialog/inkscape-preferences.cpp:1856 +#: ../src/ui/dialog/inkscape-preferences.cpp:1860 msgid "Spellcheck" msgstr "Vérification orthographique" -#: ../src/ui/dialog/inkscape-preferences.cpp:1876 +#: ../src/ui/dialog/inkscape-preferences.cpp:1880 msgid "Latency _skew:" msgstr "_Décalage temporel :" -#: ../src/ui/dialog/inkscape-preferences.cpp:1877 -msgid "Factor by which the event clock is skewed from the actual time (0.9766 on some systems)" -msgstr "Facteur de décalage entre l'horloge de l'événement et le temps réel (0,9766 sur certains systèmes)" +#: ../src/ui/dialog/inkscape-preferences.cpp:1881 +msgid "" +"Factor by which the event clock is skewed from the actual time (0.9766 on " +"some systems)" +msgstr "" +"Facteur de décalage entre l'horloge de l'événement et le temps réel (0,9766 " +"sur certains systèmes)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1879 +#: ../src/ui/dialog/inkscape-preferences.cpp:1883 msgid "Pre-render named icons" msgstr "Préafficher les icônes nommées" -#: ../src/ui/dialog/inkscape-preferences.cpp:1881 -msgid "When on, named icons will be rendered before displaying the ui. This is for working around bugs in GTK+ named icon notification" -msgstr "Si coché, les icônes nommées sont rendues avant l'affichage de l'interface utilisateur. Il s'agit du contournement d'un bug sur la notification des icônes nommées dans GTK+." +#: ../src/ui/dialog/inkscape-preferences.cpp:1885 +msgid "" +"When on, named icons will be rendered before displaying the ui. This is for " +"working around bugs in GTK+ named icon notification" +msgstr "" +"Si coché, les icônes nommées sont rendues avant l'affichage de l'interface " +"utilisateur. Il s'agit du contournement d'un bug sur la notification des " +"icônes nommées dans GTK+." -#: ../src/ui/dialog/inkscape-preferences.cpp:1889 +#: ../src/ui/dialog/inkscape-preferences.cpp:1893 msgid "System info" msgstr "Informations système" -#: ../src/ui/dialog/inkscape-preferences.cpp:1893 +#: ../src/ui/dialog/inkscape-preferences.cpp:1897 msgid "User config: " msgstr "Configuration utilisateur : " -#: ../src/ui/dialog/inkscape-preferences.cpp:1893 +#: ../src/ui/dialog/inkscape-preferences.cpp:1897 msgid "Location of users configuration" msgstr "Emplacement de la configuration utilisateur" -#: ../src/ui/dialog/inkscape-preferences.cpp:1897 +#: ../src/ui/dialog/inkscape-preferences.cpp:1901 msgid "User preferences: " msgstr "Préférences de l'utilisateur :" -#: ../src/ui/dialog/inkscape-preferences.cpp:1897 +#: ../src/ui/dialog/inkscape-preferences.cpp:1901 msgid "Location of the users preferences file" msgstr "Emplacement du fichier de préférences de l'utilisateur" -#: ../src/ui/dialog/inkscape-preferences.cpp:1901 +#: ../src/ui/dialog/inkscape-preferences.cpp:1905 msgid "User extensions: " msgstr "Extensions de l'utilisateur :" -#: ../src/ui/dialog/inkscape-preferences.cpp:1901 +#: ../src/ui/dialog/inkscape-preferences.cpp:1905 msgid "Location of the users extensions" msgstr "Emplacement des extensions de l'utilisateur" -#: ../src/ui/dialog/inkscape-preferences.cpp:1905 +#: ../src/ui/dialog/inkscape-preferences.cpp:1909 msgid "User cache: " msgstr "Cache utilisateur : " -#: ../src/ui/dialog/inkscape-preferences.cpp:1905 +#: ../src/ui/dialog/inkscape-preferences.cpp:1909 msgid "Location of users cache" msgstr "Emplacement du cache utilisateur" -#: ../src/ui/dialog/inkscape-preferences.cpp:1913 +#: ../src/ui/dialog/inkscape-preferences.cpp:1917 msgid "Temporary files: " msgstr "Fichiers temporaires :" -#: ../src/ui/dialog/inkscape-preferences.cpp:1913 +#: ../src/ui/dialog/inkscape-preferences.cpp:1917 msgid "Location of the temporary files used for autosave" -msgstr "Emplacement des fichiers temporaires utilisés pour l'enregistrement automatique" +msgstr "" +"Emplacement des fichiers temporaires utilisés pour l'enregistrement " +"automatique" -#: ../src/ui/dialog/inkscape-preferences.cpp:1917 +#: ../src/ui/dialog/inkscape-preferences.cpp:1921 msgid "Inkscape data: " msgstr "Données d'Inkscape :" -#: ../src/ui/dialog/inkscape-preferences.cpp:1917 +#: ../src/ui/dialog/inkscape-preferences.cpp:1921 msgid "Location of Inkscape data" msgstr "Emplacement des données d'Inkscape" -#: ../src/ui/dialog/inkscape-preferences.cpp:1921 +#: ../src/ui/dialog/inkscape-preferences.cpp:1925 msgid "Inkscape extensions: " msgstr "Extensions d'Inkscape :" -#: ../src/ui/dialog/inkscape-preferences.cpp:1921 +#: ../src/ui/dialog/inkscape-preferences.cpp:1925 msgid "Location of the Inkscape extensions" msgstr "Emplacement des extensions d'Inkscape" -#: ../src/ui/dialog/inkscape-preferences.cpp:1930 +#: ../src/ui/dialog/inkscape-preferences.cpp:1934 msgid "System data: " msgstr "Données système : " -#: ../src/ui/dialog/inkscape-preferences.cpp:1930 +#: ../src/ui/dialog/inkscape-preferences.cpp:1934 msgid "Locations of system data" msgstr "Emplacement des données du système" -#: ../src/ui/dialog/inkscape-preferences.cpp:1954 +#: ../src/ui/dialog/inkscape-preferences.cpp:1958 msgid "Icon theme: " msgstr "Thème d'icônes : " -#: ../src/ui/dialog/inkscape-preferences.cpp:1954 +#: ../src/ui/dialog/inkscape-preferences.cpp:1958 msgid "Locations of icon themes" msgstr "Emplacement des thèmes d'icône" -#: ../src/ui/dialog/inkscape-preferences.cpp:1956 +#: ../src/ui/dialog/inkscape-preferences.cpp:1960 msgid "System" msgstr "Système" -#: ../src/ui/dialog/input.cpp:360 -#: ../src/ui/dialog/input.cpp:381 +#: ../src/ui/dialog/input.cpp:360 ../src/ui/dialog/input.cpp:381 #: ../src/ui/dialog/input.cpp:1641 msgid "Disabled" msgstr "Désactivé" @@ -18507,8 +20215,7 @@ msgctxt "Input device" msgid "Screen" msgstr "Superposition" -#: ../src/ui/dialog/input.cpp:362 -#: ../src/ui/dialog/input.cpp:383 +#: ../src/ui/dialog/input.cpp:362 ../src/ui/dialog/input.cpp:383 msgid "Window" msgstr "Fenêtre" @@ -18520,8 +20227,7 @@ msgstr "Zone de test" msgid "Axis" msgstr "Axe" -#: ../src/ui/dialog/input.cpp:708 -#: ../share/extensions/svgcalendar.inx.h:2 +#: ../src/ui/dialog/input.cpp:708 ../share/extensions/svgcalendar.inx.h:2 msgid "Configuration" msgstr "Configuration" @@ -18549,17 +20255,17 @@ msgstr "Nombre de boutons :" msgid "Tablet" msgstr "Tablette" -#: ../src/ui/dialog/input.cpp:1039 -#: ../src/ui/dialog/input.cpp:1931 +#: ../src/ui/dialog/input.cpp:1039 ../src/ui/dialog/input.cpp:1931 msgid "pad" msgstr "pad" #: ../src/ui/dialog/input.cpp:1081 msgid "_Use pressure-sensitive tablet (requires restart)" -msgstr "_Utiliser une tablette graphique sensible à la pression (nécessite un redémarrage)" +msgstr "" +"_Utiliser une tablette graphique sensible à la pression (nécessite un " +"redémarrage)" -#: ../src/ui/dialog/input.cpp:1082 -#: ../src/verbs.cpp:2302 +#: ../src/ui/dialog/input.cpp:1082 ../src/verbs.cpp:2361 msgid "_Save" msgstr "_Enregistrer" @@ -18572,13 +20278,13 @@ msgid "Keys" msgstr "Touches" #: ../src/ui/dialog/input.cpp:1170 -msgid "A device can be 'Disabled', its co-ordinates mapped to the whole 'Screen', or to a single (usually focused) 'Window'" +msgid "" +"A device can be 'Disabled', its co-ordinates mapped to the whole 'Screen', " +"or to a single (usually focused) 'Window'" msgstr "" -#: ../src/ui/dialog/input.cpp:1616 -#: ../src/widgets/calligraphy-toolbar.cpp:599 -#: ../src/widgets/spray-toolbar.cpp:240 -#: ../src/widgets/tweak-toolbar.cpp:390 +#: ../src/ui/dialog/input.cpp:1616 ../src/widgets/calligraphy-toolbar.cpp:595 +#: ../src/widgets/spray-toolbar.cpp:236 ../src/widgets/tweak-toolbar.cpp:386 msgid "Pressure" msgstr "Pression" @@ -18621,9 +20327,8 @@ msgstr "Renommer le calque" #. 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:193 -#: ../src/verbs.cpp:2233 +#: ../src/ui/dialog/layer-properties.cpp:410 ../src/verbs.cpp:194 +#: ../src/verbs.cpp:2292 msgid "Layer" msgstr "Calque" @@ -18631,8 +20336,7 @@ msgstr "Calque" msgid "_Rename" msgstr "_Renommer" -#: ../src/ui/dialog/layer-properties.cpp:368 -#: ../src/ui/dialog/layers.cpp:749 +#: ../src/ui/dialog/layer-properties.cpp:368 ../src/ui/dialog/layers.cpp:750 msgid "Rename layer" msgstr "Renommer le calque" @@ -18658,69 +20362,67 @@ msgid "Move to Layer" msgstr "Déplacer vers le calque" #: ../src/ui/dialog/layer-properties.cpp:411 -#: ../src/ui/dialog/transformation.cpp:113 +#: ../src/ui/dialog/transformation.cpp:114 msgid "_Move" msgstr "Déplace_ment" -#: ../src/ui/dialog/layers.cpp:524 -#: ../src/ui/widget/layer-selector.cpp:613 +#: ../src/ui/dialog/layers.cpp:525 ../src/ui/widget/layer-selector.cpp:613 msgid "Unhide layer" msgstr "Montrer le calque" -#: ../src/ui/dialog/layers.cpp:524 -#: ../src/ui/widget/layer-selector.cpp:613 +#: ../src/ui/dialog/layers.cpp:525 ../src/ui/widget/layer-selector.cpp:613 msgid "Hide layer" msgstr "Cacher le calque" -#: ../src/ui/dialog/layers.cpp:535 -#: ../src/ui/widget/layer-selector.cpp:605 +#: ../src/ui/dialog/layers.cpp:536 ../src/ui/widget/layer-selector.cpp:605 msgid "Lock layer" msgstr "Verrouiller le calque" -#: ../src/ui/dialog/layers.cpp:535 -#: ../src/ui/widget/layer-selector.cpp:605 +#: ../src/ui/dialog/layers.cpp:536 ../src/ui/widget/layer-selector.cpp:605 msgid "Unlock layer" msgstr "Déverrouiller le calque" -#: ../src/ui/dialog/layers.cpp:623 -#: ../src/verbs.cpp:1348 +#: ../src/ui/dialog/layers.cpp:624 ../src/verbs.cpp:1401 msgid "Toggle layer solo" msgstr "Afficher ou masquer les autres calques" -#: ../src/ui/dialog/layers.cpp:626 -#: ../src/verbs.cpp:1372 +#: ../src/ui/dialog/layers.cpp:627 ../src/verbs.cpp:1425 msgid "Lock other layers" msgstr "Verrouiller les autres calques" -#: ../src/ui/dialog/layers.cpp:720 +#: ../src/ui/dialog/layers.cpp:721 msgid "Moved layer" msgstr "Calque déplacé" -#: ../src/ui/dialog/layers.cpp:882 +#: ../src/ui/dialog/layers.cpp:884 msgctxt "Layers" msgid "New" msgstr "Nouvelle" -#: ../src/ui/dialog/layers.cpp:887 +#: ../src/ui/dialog/layers.cpp:889 msgctxt "Layers" msgid "Bot" msgstr "Bas" -#: ../src/ui/dialog/layers.cpp:893 +#: ../src/ui/dialog/layers.cpp:895 msgctxt "Layers" msgid "Dn" msgstr "Descendre" -#: ../src/ui/dialog/layers.cpp:899 +#: ../src/ui/dialog/layers.cpp:901 msgctxt "Layers" msgid "Up" msgstr "Monter" -#: ../src/ui/dialog/layers.cpp:905 +#: ../src/ui/dialog/layers.cpp:907 msgctxt "Layers" msgid "Top" msgstr "Haut" +#: ../src/ui/dialog/livepatheffect-add.cpp:32 +msgid "Add Path Effect" +msgstr "Ajouter un effet de chemin" + #: ../src/ui/dialog/livepatheffect-editor.cpp:109 msgid "Add path effect" msgstr "Ajouter un effet de chemin" @@ -18791,10 +20493,6 @@ msgstr "Activer l'effet de chemin" msgid "Deactivate path effect" msgstr "Désactiver l'effet de chemin" -#: ../src/ui/dialog/livepatheffect-add.cpp:32 -msgid "Add Path Effect" -msgstr "Ajouter un effet de chemin" - #: ../src/ui/dialog/memory.cpp:96 msgid "Heap" msgstr "Tas" @@ -18813,10 +20511,8 @@ msgstr "Inutilisée" msgid "Total" msgstr "Total" -#: ../src/ui/dialog/memory.cpp:141 -#: ../src/ui/dialog/memory.cpp:147 -#: ../src/ui/dialog/memory.cpp:154 -#: ../src/ui/dialog/memory.cpp:186 +#: ../src/ui/dialog/memory.cpp:141 ../src/ui/dialog/memory.cpp:147 +#: ../src/ui/dialog/memory.cpp:154 ../src/ui/dialog/memory.cpp:186 msgid "Unknown" msgstr "Inconnu" @@ -18844,6 +20540,15 @@ msgstr "Capture des logs démarrée." msgid "Log capture stopped." msgstr "Capture des logs arrêtée." +#: ../src/ui/dialog/new-from-template.cpp:24 +#, fuzzy +msgid "Create from template" +msgstr "Créer un chemin spirographique" + +#: ../src/ui/dialog/new-from-template.cpp:26 +msgid "New From Template" +msgstr "" + #: ../src/ui/dialog/object-attributes.cpp:47 msgid "Href:" msgstr "Href :" @@ -18875,18 +20580,14 @@ msgid "URL:" msgstr "URL :" #: ../src/ui/dialog/object-attributes.cpp:66 -#: ../src/ui/dialog/object-attributes.cpp:74 -#: ../src/ui/dialog/tile.cpp:618 -#: ../src/widgets/desktop-widget.cpp:666 -#: ../src/widgets/node-toolbar.cpp:590 +#: ../src/ui/dialog/object-attributes.cpp:74 ../src/ui/dialog/tile.cpp:618 +#: ../src/widgets/desktop-widget.cpp:670 ../src/widgets/node-toolbar.cpp:593 msgid "X:" msgstr "X :" #: ../src/ui/dialog/object-attributes.cpp:67 -#: ../src/ui/dialog/object-attributes.cpp:75 -#: ../src/ui/dialog/tile.cpp:619 -#: ../src/widgets/desktop-widget.cpp:676 -#: ../src/widgets/node-toolbar.cpp:608 +#: ../src/ui/dialog/object-attributes.cpp:75 ../src/ui/dialog/tile.cpp:619 +#: ../src/widgets/desktop-widget.cpp:680 ../src/widgets/node-toolbar.cpp:611 msgid "Y:" msgstr "Y :" @@ -18913,9 +20614,8 @@ msgstr "Cac_her" msgid "L_ock" msgstr "Verr_ouiller" -#: ../src/ui/dialog/object-properties.cpp:74 -#: ../src/verbs.cpp:2573 -#: ../src/verbs.cpp:2579 +#: ../src/ui/dialog/object-properties.cpp:74 ../src/verbs.cpp:2636 +#: ../src/verbs.cpp:2642 msgid "_Set" msgstr "_Définir" @@ -18925,8 +20625,11 @@ msgstr "_Interactivité" #. Create the entry box for the object id #: ../src/ui/dialog/object-properties.cpp:153 -msgid "The id= attribute (only letters, digits, and the characters .-_: allowed)" -msgstr "L'attribut id= (seuls les chiffres, lettres, et les caractères .-_: sont autorisés)" +msgid "" +"The id= attribute (only letters, digits, and the characters .-_: allowed)" +msgstr "" +"L'attribut id= (seuls les chiffres, lettres, et les caractères .-_: sont " +"autorisés)" #. Create the entry box for the object label #: ../src/ui/dialog/object-properties.cpp:186 @@ -19017,8 +20720,7 @@ msgstr "Aucune description" msgid "Searching clipart..." msgstr "Recherche du clipart..." -#: ../src/ui/dialog/ocaldialogs.cpp:1097 -#: ../src/ui/dialog/ocaldialogs.cpp:1118 +#: ../src/ui/dialog/ocaldialogs.cpp:1097 ../src/ui/dialog/ocaldialogs.cpp:1118 msgid "Could not connect to the Open Clip Art Library" msgstr "Connexion à la bibliothèque Open Clip Art impossible" @@ -19031,8 +20733,12 @@ msgid "No clipart named <b>%1</b> was found." msgstr "Aucun clipart nommé <b>%1</b> n'a été trouvé." #: ../src/ui/dialog/ocaldialogs.cpp:1179 -msgid "Please make sure all keywords are spelled correctly, or try again with different keywords." -msgstr "Veuillez vous assurer que les mots clé ont été correctement épelé, ou essayez avec des mots clé différents." +msgid "" +"Please make sure all keywords are spelled correctly, or try again with " +"different keywords." +msgstr "" +"Veuillez vous assurer que les mots clé ont été correctement épelé, ou " +"essayez avec des mots clé différents." #: ../src/ui/dialog/ocaldialogs.cpp:1231 msgid "Search" @@ -19042,6 +20748,111 @@ msgstr "Rechercher" msgid "Close" msgstr "Fermer" +#: ../src/ui/dialog/pixelartdialog.cpp:162 +msgid "_Curves (multiplier)" +msgstr "" + +#: ../src/ui/dialog/pixelartdialog.cpp:165 +msgid "Favors connections that are part of a long curve" +msgstr "" + +#: ../src/ui/dialog/pixelartdialog.cpp:176 +msgid "_Islands (weight)" +msgstr "" + +#: ../src/ui/dialog/pixelartdialog.cpp:179 +msgid "Avoid single disconnected pixels" +msgstr "" + +#: ../src/ui/dialog/pixelartdialog.cpp:181 +#, fuzzy +msgid "A constant vote value" +msgstr "angle contraint" + +#: ../src/ui/dialog/pixelartdialog.cpp:191 +msgid "Sparse pixels (window _radius)" +msgstr "" + +#: ../src/ui/dialog/pixelartdialog.cpp:200 +msgid "The radius of the window analyzed" +msgstr "" + +#: ../src/ui/dialog/pixelartdialog.cpp:201 +msgid "Sparse pixels (_multiplier)" +msgstr "" + +#: ../src/ui/dialog/pixelartdialog.cpp:212 +msgid "Favors connections that are part of foreground color" +msgstr "" + +#: ../src/ui/dialog/pixelartdialog.cpp:218 +msgid "The heuristic computed vote will be multiplied by this value" +msgstr "" + +#: ../src/ui/dialog/pixelartdialog.cpp:231 +msgid "Heuristics" +msgstr "" + +#: ../src/ui/dialog/pixelartdialog.cpp:238 +#, fuzzy +msgid "_Voronoi diagram" +msgstr "Diagramme de Voronoï" + +#: ../src/ui/dialog/pixelartdialog.cpp:239 +msgid "Output composed of straight lines" +msgstr "" + +#: ../src/ui/dialog/pixelartdialog.cpp:245 +#, fuzzy +msgid "Convert to _B-spline curves" +msgstr "Convertir en canvas HTML5" + +#: ../src/ui/dialog/pixelartdialog.cpp:246 +#, fuzzy +msgid "Preserve staircasing artifacts" +msgstr "Préserver les identifiants débutant par :" + +#: ../src/ui/dialog/pixelartdialog.cpp:253 +#, fuzzy +msgid "_Smooth curves" +msgstr "_Adoucir les coins" + +#: ../src/ui/dialog/pixelartdialog.cpp:254 +msgid "The Kopf-Lischinski algorithm" +msgstr "" + +#: ../src/ui/dialog/pixelartdialog.cpp:261 +msgid "Output" +msgstr "Résultat" + +#: ../src/ui/dialog/pixelartdialog.cpp:269 +#: ../src/ui/dialog/tracedialog.cpp:814 +msgid "Reset all settings to defaults" +msgstr "Rétablir toutes les valeurs par défaut" + +#: ../src/ui/dialog/pixelartdialog.cpp:274 +#: ../src/ui/dialog/tracedialog.cpp:819 +msgid "Abort a trace in progress" +msgstr "Annuler une vectorisation en cours" + +#: ../src/ui/dialog/pixelartdialog.cpp:278 +#: ../src/ui/dialog/tracedialog.cpp:823 +msgid "Execute the trace" +msgstr "Lancer la vectorisation" + +#: ../src/ui/dialog/pixelartdialog.cpp:362 +#, fuzzy +msgid "Trace pixel art" +msgstr "pixels à " + +#: ../src/ui/dialog/pixelartdialog.cpp:376 +msgid "" +"Image looks too big. Process may take a while and is wise to save your " +"document before continue.\n" +"\n" +"Continue the procedure (without saving)?" +msgstr "" + #: ../src/ui/dialog/print.cpp:104 msgid "Could not open temporary PNG for bitmap printing" msgstr "Impossible d'ouvrir un PNG temporaire pour imprimer en bitmap." @@ -19063,35 +20874,79 @@ msgstr "Document SVG" msgid "Print" msgstr "Imprimer" -#. ## Add a menu for clear() -#: ../src/ui/dialog/scriptdialog.cpp:178 -#: ../src/verbs.cpp:136 -msgid "File" -msgstr "Fichier" +#: ../src/ui/dialog/spellcheck.cpp:73 +msgid "_Accept" +msgstr "_Accepter" -#: ../src/ui/dialog/scriptdialog.cpp:186 -msgid "_Execute Javascript" -msgstr "_Exécuter Javascript" +#: ../src/ui/dialog/spellcheck.cpp:74 +msgid "_Ignore once" +msgstr "_Ignorer cette fois" -#: ../src/ui/dialog/scriptdialog.cpp:190 -msgid "_Execute Python" -msgstr "_Exécuter Python" +#: ../src/ui/dialog/spellcheck.cpp:75 +msgid "_Ignore" +msgstr "_Ignorer" -#: ../src/ui/dialog/scriptdialog.cpp:194 -msgid "_Execute Ruby" -msgstr "_Exécuter Ruby" +#: ../src/ui/dialog/spellcheck.cpp:76 +msgid "A_dd" +msgstr "A_jouter" -#: ../src/ui/dialog/scriptdialog.cpp:205 -msgid "Script" -msgstr "Script" +#: ../src/ui/dialog/spellcheck.cpp:78 +msgid "_Stop" +msgstr "_Arrêter" -#: ../src/ui/dialog/scriptdialog.cpp:215 -msgid "Output" -msgstr "Résultat" +#: ../src/ui/dialog/spellcheck.cpp:79 +msgid "_Start" +msgstr "_Démarrer" + +#: ../src/ui/dialog/spellcheck.cpp:109 +msgid "Suggestions:" +msgstr "Proposition :" + +#: ../src/ui/dialog/spellcheck.cpp:124 +msgid "Accept the chosen suggestion" +msgstr "Accepter la proposition choisie" + +#: ../src/ui/dialog/spellcheck.cpp:125 +msgid "Ignore this word only once" +msgstr "Ignorer le mot uniquement cette fois-ci" + +#: ../src/ui/dialog/spellcheck.cpp:126 +msgid "Ignore this word in this session" +msgstr "Ignorer le mot dans cette session" -#: ../src/ui/dialog/scriptdialog.cpp:225 -msgid "Errors" -msgstr "Erreurs" +#: ../src/ui/dialog/spellcheck.cpp:127 +msgid "Add this word to the chosen dictionary" +msgstr "Ajouter ce mot dans le dictionnaire de votre choix" + +#: ../src/ui/dialog/spellcheck.cpp:141 +msgid "Stop the check" +msgstr "Arrêter la vérification" + +#: ../src/ui/dialog/spellcheck.cpp:142 +msgid "Start the check" +msgstr "Démarrer la vérification" + +#: ../src/ui/dialog/spellcheck.cpp:460 +#, c-format +msgid "<b>Finished</b>, <b>%d</b> words added to dictionary" +msgstr "<b>Terminé</b> ; <b>%d</b> mots ont été ajoutés au dictionnaire" + +#: ../src/ui/dialog/spellcheck.cpp:462 +msgid "<b>Finished</b>, nothing suspicious found" +msgstr "<b>Terminé</b> ; aucune faute n'a été détectée" + +#: ../src/ui/dialog/spellcheck.cpp:578 +#, c-format +msgid "Not in dictionary (%s): <b>%s</b>" +msgstr "Le dictionnaire %s ne contient pas le mot <b>%s</b>" + +#: ../src/ui/dialog/spellcheck.cpp:725 +msgid "<i>Checking...</i>" +msgstr "<i>Vérification...</i>" + +#: ../src/ui/dialog/spellcheck.cpp:794 +msgid "Fix spelling" +msgstr "Corriger l'orthographe" #: ../src/ui/dialog/svg-fonts-dialog.cpp:138 msgid "Set SVG Font attribute" @@ -19119,12 +20974,12 @@ msgid "Add glyph" msgstr "Ajouter un glyphe" #: ../src/ui/dialog/svg-fonts-dialog.cpp:521 -#: ../src/ui/dialog/svg-fonts-dialog.cpp:561 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:563 msgid "Select a <b>path</b> to define the curves of a glyph" msgstr "Sélectionner un <b>chemin(s)</b> pour définir les courbes du glyphe" #: ../src/ui/dialog/svg-fonts-dialog.cpp:529 -#: ../src/ui/dialog/svg-fonts-dialog.cpp:569 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:571 msgid "The selected object does not have a <b>path</b> description." msgstr "L'objet sélectionné n'est pas décrit comme un <b>chemin</b>." @@ -19132,183 +20987,267 @@ msgstr "L'objet sélectionné n'est pas décrit comme un <b>chemin</b>." msgid "No glyph selected in the SVGFonts dialog." msgstr "Aucun glyphe n'est sélectionné dans la boîte de dialogue Fontes SVG." -#: ../src/ui/dialog/svg-fonts-dialog.cpp:545 -#: ../src/ui/dialog/svg-fonts-dialog.cpp:582 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:547 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:586 msgid "Set glyph curves" msgstr "Définir les courbes du glyphe" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:602 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:606 msgid "Reset missing-glyph" msgstr "Réinitialiser le glyphe manquant" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:618 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:622 msgid "Edit glyph name" msgstr "Modifier le nom du glyphe" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:632 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:636 msgid "Set glyph unicode" msgstr "Définir l'unicode du glyphe" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:644 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:648 msgid "Remove font" msgstr "Supprimer la fonte" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:661 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:665 msgid "Remove glyph" msgstr "Supprimer le glyphe" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:678 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:682 msgid "Remove kerning pair" msgstr "Supprimer la paire de crénage" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:688 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:692 msgid "Missing Glyph:" msgstr "Glyphe manquant :" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:692 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:696 msgid "From selection..." msgstr "À partir de la sélection..." -#: ../src/ui/dialog/svg-fonts-dialog.cpp:705 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:709 msgid "Glyph name" msgstr "Nom du glyphe" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:706 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:710 msgid "Matching string" msgstr "Chaîne correspondante" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:709 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:713 msgid "Add Glyph" msgstr "Ajouter un glyphe" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:716 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:720 msgid "Get curves from selection..." msgstr "Obtenir les courbes à partir de la sélection..." -#: ../src/ui/dialog/svg-fonts-dialog.cpp:765 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:769 msgid "Add kerning pair" msgstr "Ajouter une paire de crénage" #. Kerning Setup: -#: ../src/ui/dialog/svg-fonts-dialog.cpp:773 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:777 msgid "Kerning Setup" msgstr "Paramétrage du crénage :" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:775 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:779 msgid "1st Glyph:" msgstr "Premier glyphe :" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:777 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:781 msgid "2nd Glyph:" msgstr "Deuxième glyphe :" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:780 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:784 msgid "Add pair" msgstr "Ajouter la paire" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:792 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:796 msgid "First Unicode range" msgstr "Première plage Unicode" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:793 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:797 msgid "Second Unicode range" msgstr "Deuxième plage Unicode" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:800 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:804 msgid "Kerning value:" msgstr "Valeur de crénage :" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:858 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:862 msgid "Set font family" msgstr "Définir la famille de la fonte" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:867 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:871 msgid "font" msgstr "fonte" #. select_font(font); -#: ../src/ui/dialog/svg-fonts-dialog.cpp:882 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:886 msgid "Add font" msgstr "Ajouter une fonte" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:916 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:912 ../src/ui/dialog/text-edit.cpp:70 +msgid "_Font" +msgstr "_Police" + +#: ../src/ui/dialog/svg-fonts-dialog.cpp:920 msgid "_Global Settings" msgstr "Paramètres généraux" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:917 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:921 msgid "_Glyphs" msgstr "_Glyphes" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:918 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:922 msgid "_Kerning" msgstr "_Crénage" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:925 -#: ../src/ui/dialog/svg-fonts-dialog.cpp:926 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:929 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:930 msgid "Sample Text" msgstr "Texte exemple" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:930 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:934 msgid "Preview Text:" msgstr "Texte de l'aperçu :" +#. TRANSLATORS: An item in context menu on a colour in the swatches +#: ../src/ui/dialog/swatches.cpp:258 +msgid "Set fill" +msgstr "Définir le remplissage" + +#. TRANSLATORS: An item in context menu on a colour in the swatches +#: ../src/ui/dialog/swatches.cpp:266 +msgid "Set stroke" +msgstr "Définir le contour" + +#: ../src/ui/dialog/swatches.cpp:287 +msgid "Edit..." +msgstr "Éditer..." + +#: ../src/ui/dialog/swatches.cpp:299 +msgid "Convert" +msgstr "Convertir" + +#: ../src/ui/dialog/swatches.cpp:543 +#, c-format +msgid "Palettes directory (%s) is unavailable." +msgstr "Le dossier des palettes (%s) est indisponible." + #. ******************* Symbol Sets ************************ -#: ../src/ui/dialog/symbols.cpp:127 +#: ../src/ui/dialog/symbols.cpp:128 msgid "Symbol set: " msgstr "Jeu de symboles :" #. Fill in later -#: ../src/ui/dialog/symbols.cpp:136 -#: ../src/ui/dialog/symbols.cpp:137 +#: ../src/ui/dialog/symbols.cpp:137 ../src/ui/dialog/symbols.cpp:138 msgid "Current Document" msgstr "Document courant" -#: ../src/ui/dialog/symbols.cpp:204 +#: ../src/ui/dialog/symbols.cpp:205 msgid "Add Symbol from the current document." msgstr "Ajouter un symbole à partir du document courant." -#: ../src/ui/dialog/symbols.cpp:213 +#: ../src/ui/dialog/symbols.cpp:214 msgid "Remove Symbol from the current document." msgstr "Supprimer un symbole du document courant." -#: ../src/ui/dialog/symbols.cpp:226 +#: ../src/ui/dialog/symbols.cpp:227 msgid "Make Icons bigger by zooming in." msgstr "" -#: ../src/ui/dialog/symbols.cpp:235 +#: ../src/ui/dialog/symbols.cpp:236 msgid "Make Icons smaller by zooming out." msgstr "Rendre les icônes plus petites." -#: ../src/ui/dialog/symbols.cpp:244 +#: ../src/ui/dialog/symbols.cpp:245 msgid "Toggle 'fit' symbols in icon space." msgstr "" -#: ../src/ui/dialog/symbols.cpp:557 +#: ../src/ui/dialog/symbols.cpp:558 msgid "Unnamed Symbols" msgstr "Symboles sans nom" -#. TRANSLATORS: An item in context menu on a colour in the swatches -#: ../src/ui/dialog/swatches.cpp:258 -msgid "Set fill" -msgstr "Définir le remplissage" +#: ../src/ui/dialog/template-widget.cpp:36 +#, fuzzy +msgid "More info" +msgstr "Augmenter la luminosité" -#. TRANSLATORS: An item in context menu on a colour in the swatches -#: ../src/ui/dialog/swatches.cpp:266 -msgid "Set stroke" -msgstr "Définir le contour" +#: ../src/ui/dialog/template-widget.cpp:37 +msgid " " +msgstr "" -#: ../src/ui/dialog/swatches.cpp:287 -msgid "Edit..." -msgstr "Éditer..." +#: ../src/ui/dialog/template-widget.cpp:38 +#, fuzzy +msgid "no template selected" +msgstr "Aucun élément sélectionné." -#: ../src/ui/dialog/swatches.cpp:299 -msgid "Convert" -msgstr "Convertir" +#: ../src/ui/dialog/template-widget.cpp:119 +#, fuzzy +msgid "Path: " +msgstr "Chemin :" -#: ../src/ui/dialog/swatches.cpp:543 -#, c-format -msgid "Palettes directory (%s) is unavailable." -msgstr "Le dossier des palettes (%s) est indisponible." +#: ../src/ui/dialog/template-widget.cpp:122 +#, fuzzy +msgid "Description: " +msgstr "Description :" + +#: ../src/ui/dialog/template-widget.cpp:124 +#, fuzzy +msgid "Keywords: " +msgstr "Mots clés :" + +#: ../src/ui/dialog/template-widget.cpp:131 +msgid "By: " +msgstr "" + +#: ../src/ui/dialog/text-edit.cpp:73 +msgid "Set as _default" +msgstr "Définir comme valeur par _défaut" + +# Do not try to translate. This is a test string used in text and font dialog, when no text has been typed in order to get a preview of the font. +# Simply copying it. +#: ../src/ui/dialog/text-edit.cpp:87 +msgid "AaBbCcIiPpQq12369$€¢?.;/()" +msgstr "AaBbCcIiPpQq12369$€¢?.;/()" + +#. Align buttons +#: ../src/ui/dialog/text-edit.cpp:97 ../src/widgets/text-toolbar.cpp:1349 +#: ../src/widgets/text-toolbar.cpp:1350 +msgid "Align left" +msgstr "Aligner à gauche" + +#: ../src/ui/dialog/text-edit.cpp:98 ../src/widgets/text-toolbar.cpp:1357 +#: ../src/widgets/text-toolbar.cpp:1358 +msgid "Align center" +msgstr "Centrer" + +#: ../src/ui/dialog/text-edit.cpp:99 ../src/widgets/text-toolbar.cpp:1365 +#: ../src/widgets/text-toolbar.cpp:1366 +msgid "Align right" +msgstr "Aligner à droite" + +#: ../src/ui/dialog/text-edit.cpp:100 ../src/widgets/text-toolbar.cpp:1374 +msgid "Justify (only flowed text)" +msgstr "Justifier (texte encadré seulement)" + +#. Direction buttons +#: ../src/ui/dialog/text-edit.cpp:109 ../src/widgets/text-toolbar.cpp:1409 +msgid "Horizontal text" +msgstr "Texte horizontal" + +#: ../src/ui/dialog/text-edit.cpp:110 ../src/widgets/text-toolbar.cpp:1416 +msgid "Vertical text" +msgstr "Texte vertical" + +#: ../src/ui/dialog/text-edit.cpp:130 ../src/ui/dialog/text-edit.cpp:131 +msgid "Spacing between lines (percent of font size)" +msgstr "Espacement entre les lignes (pourcentage de la taille de la police)" + +#: ../src/ui/dialog/text-edit.cpp:147 +#, fuzzy +msgid "Text path offset" +msgstr "Décalage magenta" #: ../src/ui/dialog/tile.cpp:349 msgid "Arrange in a grid" @@ -19336,12 +21275,13 @@ msgstr "Égaliser la _hauteur" #: ../src/ui/dialog/tile.cpp:690 msgid "If not set, each row has the height of the tallest object in it" -msgstr "Si décoché, chaque ligne a même la hauteur que l'objet le plus haut qu'elle contient" +msgstr "" +"Si décoché, chaque ligne a même la hauteur que l'objet le plus haut qu'elle " +"contient" #. #### Radio buttons to control vertical alignment #### #. #### Radio buttons to control horizontal alignment #### -#: ../src/ui/dialog/tile.cpp:696 -#: ../src/ui/dialog/tile.cpp:768 +#: ../src/ui/dialog/tile.cpp:696 ../src/ui/dialog/tile.cpp:768 msgid "Align:" msgstr "Aligner :" @@ -19360,7 +21300,9 @@ msgstr "Égaliser la _largeur" #: ../src/ui/dialog/tile.cpp:761 msgid "If not set, each column has the width of the widest object in it" -msgstr "Si décoché, chaque ligne a la même largeur que l'objet le plus large qu'elle contient" +msgstr "" +"Si décoché, chaque ligne a la même largeur que l'objet le plus large qu'elle " +"contient" #. #### Radio buttons to control spacing manually or to fit selection bbox #### #: ../src/ui/dialog/tile.cpp:807 @@ -19414,7 +21356,9 @@ msgstr "Vectoriser en utilisant l'algorithme détection d'arêtes de J. Canny" #: ../src/ui/dialog/tracedialog.cpp:556 msgid "Brightness cutoff for adjacent pixels (determines edge thickness)" -msgstr "Limite de luminosité pour déterminer les pixels adjacents (détermine la finesse des arrêtes)" +msgstr "" +"Limite de luminosité pour déterminer les pixels adjacents (détermine la " +"finesse des arrêtes)" #: ../src/ui/dialog/tracedialog.cpp:559 msgid "T_hreshold:" @@ -19498,8 +21442,12 @@ msgid "Stac_k scans" msgstr "Em_piler les passes" #: ../src/ui/dialog/tracedialog.cpp:661 -msgid "Stack scans on top of one another (no gaps) instead of tiling (usually with gaps)" -msgstr "Empiler les passes verticalement (sans espacement) au lieu de les juxtaposer (souvent avec de l'espacement)" +msgid "" +"Stack scans on top of one another (no gaps) instead of tiling (usually with " +"gaps)" +msgstr "" +"Empiler les passes verticalement (sans espacement) au lieu de les juxtaposer " +"(souvent avec de l'espacement)" #: ../src/ui/dialog/tracedialog.cpp:665 msgid "Remo_ve background" @@ -19556,11 +21504,17 @@ msgstr "_Optimiser les chemins" #: ../src/ui/dialog/tracedialog.cpp:729 msgid "Try to optimize paths by joining adjacent Bezier curve segments" -msgstr "Tenter d'optimiser les chemins en joignant les segments de courbes de Bézier adjacents" +msgstr "" +"Tenter d'optimiser les chemins en joignant les segments de courbes de Bézier " +"adjacents" #: ../src/ui/dialog/tracedialog.cpp:737 -msgid "Increase this to reduce the number of nodes in the trace by more aggressive optimization" -msgstr "Augmenter ce paramètre pour diminuer le nombre de nÅ“uds de la vectorisation avec une optimisation plus aggressive" +msgid "" +"Increase this to reduce the number of nodes in the trace by more aggressive " +"optimization" +msgstr "" +"Augmenter ce paramètre pour diminuer le nombre de nÅ“uds de la vectorisation " +"avec une optimisation plus aggressive" #: ../src/ui/dialog/tracedialog.cpp:739 msgid "To_lerance:" @@ -19610,164 +21564,295 @@ msgstr "_Mettre à jour" #. I guess it's correct to call the "intermediate bitmap" a preview of the trace #: ../src/ui/dialog/tracedialog.cpp:796 -msgid "Preview the intermediate bitmap with the current settings, without actual tracing" -msgstr "Aperçu du bitmap intermédiaire avec les paramètres définis, sans vectorisation effective" +msgid "" +"Preview the intermediate bitmap with the current settings, without actual " +"tracing" +msgstr "" +"Aperçu du bitmap intermédiaire avec les paramètres définis, sans " +"vectorisation effective" #: ../src/ui/dialog/tracedialog.cpp:800 msgid "Preview" msgstr "Aperçu" -#: ../src/ui/dialog/tracedialog.cpp:814 -msgid "Reset all settings to defaults" -msgstr "Rétablir toutes les valeurs par défaut" - -#: ../src/ui/dialog/tracedialog.cpp:819 -msgid "Abort a trace in progress" -msgstr "Annuler une vectorisation en cours" - -#: ../src/ui/dialog/tracedialog.cpp:823 -msgid "Execute the trace" -msgstr "Lancer la vectorisation" - -#: ../src/ui/dialog/transformation.cpp:75 -#: ../src/ui/dialog/transformation.cpp:85 +#: ../src/ui/dialog/transformation.cpp:76 +#: ../src/ui/dialog/transformation.cpp:86 msgid "_Horizontal:" msgstr "_Horizontal :" -#: ../src/ui/dialog/transformation.cpp:75 +#: ../src/ui/dialog/transformation.cpp:76 msgid "Horizontal displacement (relative) or position (absolute)" msgstr "Déplacement (relatif) ou position (absolue) horizontal(e)" -#: ../src/ui/dialog/transformation.cpp:77 -#: ../src/ui/dialog/transformation.cpp:87 +#: ../src/ui/dialog/transformation.cpp:78 +#: ../src/ui/dialog/transformation.cpp:88 msgid "_Vertical:" msgstr "_Vertical :" -#: ../src/ui/dialog/transformation.cpp:77 +#: ../src/ui/dialog/transformation.cpp:78 msgid "Vertical displacement (relative) or position (absolute)" msgstr "Déplacement (relatif) ou position (absolue) vertical(e)" -#: ../src/ui/dialog/transformation.cpp:79 +#: ../src/ui/dialog/transformation.cpp:80 msgid "Horizontal size (absolute or percentage of current)" msgstr "Dimension horizontale (absolue ou pourcentage de l'existant)" -#: ../src/ui/dialog/transformation.cpp:81 +#: ../src/ui/dialog/transformation.cpp:82 msgid "Vertical size (absolute or percentage of current)" msgstr "Dimension verticals (absolue ou pourcentage de l'existant)" -#: ../src/ui/dialog/transformation.cpp:83 +#: ../src/ui/dialog/transformation.cpp:84 msgid "A_ngle:" msgstr "A_ngle :" -#: ../src/ui/dialog/transformation.cpp:83 -#: ../src/ui/dialog/transformation.cpp:1068 +#: ../src/ui/dialog/transformation.cpp:84 +#: ../src/ui/dialog/transformation.cpp:1103 msgid "Rotation angle (positive = counterclockwise)" msgstr "Angle de rotation (positif = sens anti-horaire)" -#: ../src/ui/dialog/transformation.cpp:85 -msgid "Horizontal skew angle (positive = counterclockwise), or absolute displacement, or percentage displacement" -msgstr "Angle d'inclinaison horizontal (positif = sens anti-horaire) ou déplacement absolu, ou pourcentage de déplacement" +#: ../src/ui/dialog/transformation.cpp:86 +msgid "" +"Horizontal skew angle (positive = counterclockwise), or absolute " +"displacement, or percentage displacement" +msgstr "" +"Angle d'inclinaison horizontal (positif = sens anti-horaire) ou déplacement " +"absolu, ou pourcentage de déplacement" -#: ../src/ui/dialog/transformation.cpp:87 -msgid "Vertical skew angle (positive = counterclockwise), or absolute displacement, or percentage displacement" -msgstr "Angle d'inclinaison vertical (positif = sens anti-horaire) ou déplacement absolu, ou pourcentage de déplacement" +#: ../src/ui/dialog/transformation.cpp:88 +msgid "" +"Vertical skew angle (positive = counterclockwise), or absolute displacement, " +"or percentage displacement" +msgstr "" +"Angle d'inclinaison vertical (positif = sens anti-horaire) ou déplacement " +"absolu, ou pourcentage de déplacement" -#: ../src/ui/dialog/transformation.cpp:90 +#: ../src/ui/dialog/transformation.cpp:91 msgid "Transformation matrix element A" msgstr "Elément A de la matrice de transformation" -#: ../src/ui/dialog/transformation.cpp:91 +#: ../src/ui/dialog/transformation.cpp:92 msgid "Transformation matrix element B" msgstr "Elément B de la matrice de transformation" -#: ../src/ui/dialog/transformation.cpp:92 +#: ../src/ui/dialog/transformation.cpp:93 msgid "Transformation matrix element C" msgstr "Elément C de la matrice de transformation" -#: ../src/ui/dialog/transformation.cpp:93 +#: ../src/ui/dialog/transformation.cpp:94 msgid "Transformation matrix element D" msgstr "Elément D de la matrice de transformation" -#: ../src/ui/dialog/transformation.cpp:94 +#: ../src/ui/dialog/transformation.cpp:95 msgid "Transformation matrix element E" msgstr "Elément E de la matrice de transformation" -#: ../src/ui/dialog/transformation.cpp:95 +#: ../src/ui/dialog/transformation.cpp:96 msgid "Transformation matrix element F" msgstr "Elément F de la matrice de transformation" -#: ../src/ui/dialog/transformation.cpp:100 +#: ../src/ui/dialog/transformation.cpp:101 msgid "Rela_tive move" msgstr "Déplacement rela_tif" -#: ../src/ui/dialog/transformation.cpp:100 -msgid "Add the specified relative displacement to the current position; otherwise, edit the current absolute position directly" -msgstr "Ajoute le déplacement relatif spécifié à la position courante; sinon, modifie directement la position absolue courante" - #: ../src/ui/dialog/transformation.cpp:101 +msgid "" +"Add the specified relative displacement to the current position; otherwise, " +"edit the current absolute position directly" +msgstr "" +"Ajoute le déplacement relatif spécifié à la position courante; sinon, " +"modifie directement la position absolue courante" + +#: ../src/ui/dialog/transformation.cpp:102 msgid "_Scale proportionally" msgstr "_Redimensionner proportionnellement" -#: ../src/ui/dialog/transformation.cpp:101 +#: ../src/ui/dialog/transformation.cpp:102 msgid "Preserve the width/height ratio of the scaled objects" msgstr "Préserver le rapport largeur/hauteur des objets redimensionnés" -#: ../src/ui/dialog/transformation.cpp:102 +#: ../src/ui/dialog/transformation.cpp:103 msgid "Apply to each _object separately" msgstr "Appliquer à chaque _objet séparément" -#: ../src/ui/dialog/transformation.cpp:102 -msgid "Apply the scale/rotate/skew to each selected object separately; otherwise, transform the selection as a whole" -msgstr "Appliquer la transformation à chaque objet séparément; sinon, transformer la sélection comme un tout" - #: ../src/ui/dialog/transformation.cpp:103 +msgid "" +"Apply the scale/rotate/skew to each selected object separately; otherwise, " +"transform the selection as a whole" +msgstr "" +"Appliquer la transformation à chaque objet séparément; sinon, transformer la " +"sélection comme un tout" + +#: ../src/ui/dialog/transformation.cpp:104 msgid "Edit c_urrent matrix" msgstr "Editer la matrice co_urante" -#: ../src/ui/dialog/transformation.cpp:103 -msgid "Edit the current transform= matrix; otherwise, post-multiply transform= by this matrix" -msgstr "Si coché, édite la matrice de la transformation courante; sinon, post-multiplie la transformation courante par cette matrice." +#: ../src/ui/dialog/transformation.cpp:104 +msgid "" +"Edit the current transform= matrix; otherwise, post-multiply transform= by " +"this matrix" +msgstr "" +"Si coché, édite la matrice de la transformation courante; sinon, post-" +"multiplie la transformation courante par cette matrice." -#: ../src/ui/dialog/transformation.cpp:116 +#: ../src/ui/dialog/transformation.cpp:117 msgid "_Scale" msgstr "Dimen_sions" -#: ../src/ui/dialog/transformation.cpp:119 +#: ../src/ui/dialog/transformation.cpp:120 msgid "_Rotate" msgstr "_Rotation" -#: ../src/ui/dialog/transformation.cpp:122 +#: ../src/ui/dialog/transformation.cpp:123 msgid "Ske_w" msgstr "_Inclinaison" -#: ../src/ui/dialog/transformation.cpp:125 +#: ../src/ui/dialog/transformation.cpp:126 msgid "Matri_x" msgstr "Matri_ce" -#: ../src/ui/dialog/transformation.cpp:149 +#: ../src/ui/dialog/transformation.cpp:150 msgid "Reset the values on the current tab to defaults" msgstr "Rétablir les valeurs par défaut dans l'onglet courant" -#: ../src/ui/dialog/transformation.cpp:156 +#: ../src/ui/dialog/transformation.cpp:157 msgid "Apply transformation to selection" msgstr "Appliquer la transformation à la sélection" -#: ../src/ui/dialog/transformation.cpp:331 +#: ../src/ui/dialog/transformation.cpp:332 msgid "Rotate in a counterclockwise direction" msgstr "Tourner dans le sens anti-horaire" -#: ../src/ui/dialog/transformation.cpp:337 +#: ../src/ui/dialog/transformation.cpp:338 msgid "Rotate in a clockwise direction" msgstr "Tourner dans le sens horaire" -#: ../src/ui/dialog/transformation.cpp:976 +#: ../src/ui/dialog/transformation.cpp:907 +#: ../src/ui/dialog/transformation.cpp:918 +#: ../src/ui/dialog/transformation.cpp:932 +#: ../src/ui/dialog/transformation.cpp:951 +#: ../src/ui/dialog/transformation.cpp:962 +#: ../src/ui/dialog/transformation.cpp:972 +#: ../src/ui/dialog/transformation.cpp:996 +msgid "Transform matrix is singular, <b>not used</b>." +msgstr "" + +#: ../src/ui/dialog/transformation.cpp:1011 msgid "Edit transformation matrix" msgstr "Éditer la matrice de transformation" -#: ../src/ui/dialog/transformation.cpp:1075 +#: ../src/ui/dialog/transformation.cpp:1110 msgid "Rotation angle (positive = clockwise)" msgstr "Angle de rotation (positif = sens horaire)" +#: ../src/ui/dialog/xml-tree.cpp:70 ../src/ui/dialog/xml-tree.cpp:123 +msgid "New element node" +msgstr "Nouveau nÅ“ud élément" + +#: ../src/ui/dialog/xml-tree.cpp:71 ../src/ui/dialog/xml-tree.cpp:129 +msgid "New text node" +msgstr "Nouveau nÅ“ud texte" + +#: ../src/ui/dialog/xml-tree.cpp:72 ../src/ui/dialog/xml-tree.cpp:143 +msgid "nodeAsInXMLdialogTooltip|Delete node" +msgstr "Supprimer le nÅ“ud" + +#: ../src/ui/dialog/xml-tree.cpp:73 ../src/ui/dialog/xml-tree.cpp:135 +#: ../src/ui/dialog/xml-tree.cpp:974 +msgid "Duplicate node" +msgstr "Dupliquer le nÅ“ud" + +#: ../src/ui/dialog/xml-tree.cpp:79 ../src/ui/dialog/xml-tree.cpp:188 +#: ../src/ui/dialog/xml-tree.cpp:1010 +msgid "Delete attribute" +msgstr "Supprimer l'attribut" + +#: ../src/ui/dialog/xml-tree.cpp:87 +msgid "Set" +msgstr "Définir" + +#: ../src/ui/dialog/xml-tree.cpp:118 +msgid "Drag to reorder nodes" +msgstr "Cliquer-déplacer pour réorganiser les nÅ“uds" + +#: ../src/ui/dialog/xml-tree.cpp:149 ../src/ui/dialog/xml-tree.cpp:150 +#: ../src/ui/dialog/xml-tree.cpp:1131 +msgid "Unindent node" +msgstr "Désindenter le nÅ“ud" + +#: ../src/ui/dialog/xml-tree.cpp:154 ../src/ui/dialog/xml-tree.cpp:155 +#: ../src/ui/dialog/xml-tree.cpp:1109 +msgid "Indent node" +msgstr "Indenter le nÅ“ud" + +#: ../src/ui/dialog/xml-tree.cpp:159 ../src/ui/dialog/xml-tree.cpp:160 +#: ../src/ui/dialog/xml-tree.cpp:1060 +msgid "Raise node" +msgstr "Monter le nÅ“ud" + +#: ../src/ui/dialog/xml-tree.cpp:164 ../src/ui/dialog/xml-tree.cpp:165 +#: ../src/ui/dialog/xml-tree.cpp:1078 +msgid "Lower node" +msgstr "Descendre le nÅ“ud" + +#: ../src/ui/dialog/xml-tree.cpp:205 +msgid "Attribute name" +msgstr "Nom de l'attribut" + +#: ../src/ui/dialog/xml-tree.cpp:220 +msgid "Attribute value" +msgstr "Valeur de l'attribut" + +#: ../src/ui/dialog/xml-tree.cpp:308 +msgid "<b>Click</b> to select nodes, <b>drag</b> to rearrange." +msgstr "" +"<b>Cliquer</b> pour sélectionner des nÅ“uds, <b>cliquer-déplacer</b> pour les " +"déplacer." + +#: ../src/ui/dialog/xml-tree.cpp:319 +msgid "<b>Click</b> attribute to edit." +msgstr "<b>Cliquer</b> sur les attributs pour pouvoir les éditer." + +#: ../src/ui/dialog/xml-tree.cpp:323 +#, c-format +msgid "" +"Attribute <b>%s</b> selected. Press <b>Ctrl+Enter</b> when done editing to " +"commit changes." +msgstr "" +"Attribut <b>%s</b> sélectionné. Appuyer sur <b>Ctrl+Enter</b> après édition " +"pour valider." + +#: ../src/ui/dialog/xml-tree.cpp:563 +msgid "Drag XML subtree" +msgstr "Déplacer la sous-arborescence XML" + +#: ../src/ui/dialog/xml-tree.cpp:865 +msgid "New element node..." +msgstr "Nouveau nÅ“ud élément..." + +#: ../src/ui/dialog/xml-tree.cpp:903 +msgid "Cancel" +msgstr "Annuler" + +#: ../src/ui/dialog/xml-tree.cpp:909 +msgid "Create" +msgstr "Créer" + +#: ../src/ui/dialog/xml-tree.cpp:940 +msgid "Create new element node" +msgstr "Créer un nouveau nÅ“ud élément" + +#: ../src/ui/dialog/xml-tree.cpp:956 +msgid "Create new text node" +msgstr "Créer un nouveau nÅ“ud texte" + +#: ../src/ui/dialog/xml-tree.cpp:991 +msgid "nodeAsInXMLinHistoryDialog|Delete node" +msgstr "Supprimer le nÅ“ud" + +#: ../src/ui/dialog/xml-tree.cpp:1034 +msgid "Change attribute" +msgstr "Modifier l'attribut" + #: ../src/ui/tool/curve-drag-point.cpp:100 msgid "Drag curve" msgstr "Déplacer la courbe" @@ -19788,425 +21873,502 @@ msgstr "<b>Ctrl+Alt</b> : cliquer pour insérer un nÅ“ud" #: ../src/ui/tool/curve-drag-point.cpp:175 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 "<b>Segment linéaire</b> : cliquer-déplacer pour convertir en segment de Bézier, double-cliquer pour insérer un nÅ“ud, cliquer pour sélectionner (modificateurs : Maj, Ctrl+Alt)" +msgid "" +"<b>Linear segment</b>: drag to convert to a Bezier segment, doubleclick to " +"insert node, click to select (more: Shift, Ctrl+Alt)" +msgstr "" +"<b>Segment linéaire</b> : cliquer-déplacer pour convertir en segment de " +"Bézier, double-cliquer pour insérer un nÅ“ud, cliquer pour sélectionner " +"(modificateurs : Maj, Ctrl+Alt)" #: ../src/ui/tool/curve-drag-point.cpp:179 msgctxt "Path segment tip" -msgid "<b>Bezier segment</b>: drag to shape the segment, doubleclick to insert node, click to select (more: Shift, Ctrl+Alt)" -msgstr "<b>Segment de Bézier</b> : cliquer-déplacer pour modeler le segment, double-cliquer pour insérer un nÅ“ud, cliquer pour sélectionner (modificateurs : Maj, Ctrl+Alt)" +msgid "" +"<b>Bezier segment</b>: drag to shape the segment, doubleclick to insert " +"node, click to select (more: Shift, Ctrl+Alt)" +msgstr "" +"<b>Segment de Bézier</b> : cliquer-déplacer pour modeler le segment, double-" +"cliquer pour insérer un nÅ“ud, cliquer pour sélectionner (modificateurs : " +"Maj, Ctrl+Alt)" -#: ../src/ui/tool/multi-path-manipulator.cpp:322 +#: ../src/ui/tool/multi-path-manipulator.cpp:326 msgid "Retract handles" msgstr "Rétracter les poignées" -#: ../src/ui/tool/multi-path-manipulator.cpp:322 -#: ../src/ui/tool/node.cpp:271 +#: ../src/ui/tool/multi-path-manipulator.cpp:326 ../src/ui/tool/node.cpp:270 msgid "Change node type" msgstr "Modifier le type de nÅ“ud" -#: ../src/ui/tool/multi-path-manipulator.cpp:330 +#: ../src/ui/tool/multi-path-manipulator.cpp:334 msgid "Straighten segments" msgstr "Rendre les segments droits" -#: ../src/ui/tool/multi-path-manipulator.cpp:332 +#: ../src/ui/tool/multi-path-manipulator.cpp:336 msgid "Make segments curves" msgstr "Rendre courbes les segments sélectionnés" -#: ../src/ui/tool/multi-path-manipulator.cpp:339 +#: ../src/ui/tool/multi-path-manipulator.cpp:343 msgid "Add nodes" msgstr "Ajouter des nÅ“uds" -#: ../src/ui/tool/multi-path-manipulator.cpp:344 +#: ../src/ui/tool/multi-path-manipulator.cpp:348 msgid "Add extremum nodes" msgstr "Ajouter des nÅ“uds aux extrémités" -#: ../src/ui/tool/multi-path-manipulator.cpp:350 +#: ../src/ui/tool/multi-path-manipulator.cpp:354 msgid "Duplicate nodes" msgstr "Dupliquer les nÅ“uds" -#: ../src/ui/tool/multi-path-manipulator.cpp:412 -#: ../src/widgets/node-toolbar.cpp:417 +#: ../src/ui/tool/multi-path-manipulator.cpp:416 +#: ../src/widgets/node-toolbar.cpp:420 msgid "Join nodes" msgstr "Joindre les nÅ“uds" -#: ../src/ui/tool/multi-path-manipulator.cpp:419 -#: ../src/widgets/node-toolbar.cpp:428 +#: ../src/ui/tool/multi-path-manipulator.cpp:423 +#: ../src/widgets/node-toolbar.cpp:431 msgid "Break nodes" msgstr "Séparer les nÅ“uds" -#: ../src/ui/tool/multi-path-manipulator.cpp:426 +#: ../src/ui/tool/multi-path-manipulator.cpp:430 msgid "Delete nodes" msgstr "Supprimer les nÅ“uds" -#: ../src/ui/tool/multi-path-manipulator.cpp:756 +#: ../src/ui/tool/multi-path-manipulator.cpp:760 msgid "Move nodes" msgstr "Déplacer les nÅ“uds" -#: ../src/ui/tool/multi-path-manipulator.cpp:759 +#: ../src/ui/tool/multi-path-manipulator.cpp:763 msgid "Move nodes horizontally" msgstr "Déplacer les nÅ“uds horizontalement" -#: ../src/ui/tool/multi-path-manipulator.cpp:763 +#: ../src/ui/tool/multi-path-manipulator.cpp:767 msgid "Move nodes vertically" msgstr "Déplacer les nÅ“uds verticalement" -#: ../src/ui/tool/multi-path-manipulator.cpp:767 -#: ../src/ui/tool/multi-path-manipulator.cpp:770 +#: ../src/ui/tool/multi-path-manipulator.cpp:771 +#: ../src/ui/tool/multi-path-manipulator.cpp:774 msgid "Rotate nodes" msgstr "Tourner les nÅ“uds" -#: ../src/ui/tool/multi-path-manipulator.cpp:774 -#: ../src/ui/tool/multi-path-manipulator.cpp:780 +#: ../src/ui/tool/multi-path-manipulator.cpp:778 +#: ../src/ui/tool/multi-path-manipulator.cpp:784 msgid "Scale nodes uniformly" msgstr "Redimensionner les nÅ“uds uniformément" -#: ../src/ui/tool/multi-path-manipulator.cpp:777 +#: ../src/ui/tool/multi-path-manipulator.cpp:781 msgid "Scale nodes" msgstr "Redimensionner les nÅ“uds" -#: ../src/ui/tool/multi-path-manipulator.cpp:784 +#: ../src/ui/tool/multi-path-manipulator.cpp:788 msgid "Scale nodes horizontally" msgstr "Redimensionner les nÅ“uds horizontalement" -#: ../src/ui/tool/multi-path-manipulator.cpp:788 +#: ../src/ui/tool/multi-path-manipulator.cpp:792 msgid "Scale nodes vertically" msgstr "Redimensionner les nÅ“uds verticalement" -#: ../src/ui/tool/multi-path-manipulator.cpp:792 +#: ../src/ui/tool/multi-path-manipulator.cpp:796 msgid "Skew nodes horizontally" msgstr "Incliner les nÅ“uds horizontalement" -#: ../src/ui/tool/multi-path-manipulator.cpp:796 +#: ../src/ui/tool/multi-path-manipulator.cpp:800 msgid "Skew nodes vertically" msgstr "Incliner les nÅ“uds verticalement" -#: ../src/ui/tool/multi-path-manipulator.cpp:800 +#: ../src/ui/tool/multi-path-manipulator.cpp:804 msgid "Flip nodes horizontally" msgstr "Retourner les nÅ“uds horizontalement" -#: ../src/ui/tool/multi-path-manipulator.cpp:803 +#: ../src/ui/tool/multi-path-manipulator.cpp:807 msgid "Flip nodes vertically" msgstr "Retourner les nÅ“uds verticalement" -#: ../src/ui/tool/node-tool.cpp:555 -msgctxt "Node tool tip" -msgid "<b>Shift</b>: drag to add nodes to the selection, click to toggle object selection" -msgstr "<b>Maj :</b> cliquer-déplacer pour ajouter des nÅ“uds à la sélection, cliquer pour inverser l'état de sélection de l'objet" - -#: ../src/ui/tool/node-tool.cpp:559 -msgctxt "Node tool tip" -msgid "<b>Shift</b>: drag to add nodes to the selection" -msgstr "<b>Maj</b> : cliquer-déplacer pour ajouter des nÅ“uds à la sélection" - -#: ../src/ui/tool/node-tool.cpp:568 -#, c-format -msgid "<b>%u of %u</b> node selected." -msgid_plural "<b>%u of %u</b> nodes selected." -msgstr[0] "<b>%u</b> objet sur <b>%u</b> sélectionné" -msgstr[1] "<b>%u</b> objets sur <b>%u</b> sélectionnés" - -#: ../src/ui/tool/node-tool.cpp:573 -#, c-format -msgctxt "Node tool tip" -msgid "%s Drag to select nodes, click to edit only this object (more: Shift)" -msgstr "%s Cliquer-glisser pour sélectionner des nÅ“uds, cliquer pour sélectionner seulement cet objet (plus d'actions avec Maj)" - -#: ../src/ui/tool/node-tool.cpp:579 -#, c-format -msgctxt "Node tool tip" -msgid "%s Drag to select nodes, click clear the selection" -msgstr "%s Cliquer-glisser pour sélectionner des nÅ“uds, cliquer pour libérer la sélection" - -#: ../src/ui/tool/node-tool.cpp:588 -msgctxt "Node tool tip" -msgid "Drag to select nodes, click to edit only this object" -msgstr "Cliquer-glisser pour sélectionner des nÅ“uds, cliquer pour sélectionner seulement cet objet" - -#: ../src/ui/tool/node-tool.cpp:591 -msgctxt "Node tool tip" -msgid "Drag to select nodes, click to clear the selection" -msgstr "Cliquer-glisser pour sélectionner des nÅ“uds, cliquer pour libérer la sélection" - -#: ../src/ui/tool/node-tool.cpp:596 -msgctxt "Node tool tip" -msgid "Drag to select objects to edit, click to edit this object (more: Shift)" -msgstr "Cliquer-glisser pour sélectionner les objets à éditer, cliquer pour éditer les objets (modificateur : Maj)" - -#: ../src/ui/tool/node-tool.cpp:599 -msgctxt "Node tool tip" -msgid "Drag to select objects to edit" -msgstr "Cliquer-glisser pour sélectionner les objets à éditer" - -#: ../src/ui/tool/node.cpp:246 +#: ../src/ui/tool/node.cpp:245 msgid "Cusp node handle" msgstr "Poignée de point de rebroussement" -#: ../src/ui/tool/node.cpp:247 +#: ../src/ui/tool/node.cpp:246 msgid "Smooth node handle" msgstr "Poignée de nÅ“ud doux" -#: ../src/ui/tool/node.cpp:248 +#: ../src/ui/tool/node.cpp:247 msgid "Symmetric node handle" msgstr "Poignée de nÅ“ud symétrique" -#: ../src/ui/tool/node.cpp:249 +#: ../src/ui/tool/node.cpp:248 msgid "Auto-smooth node handle" msgstr "Poignée de nÅ“ud automatique" -#: ../src/ui/tool/node.cpp:433 +#: ../src/ui/tool/node.cpp:432 msgctxt "Path handle tip" msgid "more: Shift, Ctrl, Alt" msgstr "modificateurs : Maj, Ctrl, Alt" -#: ../src/ui/tool/node.cpp:435 +#: ../src/ui/tool/node.cpp:434 msgctxt "Path handle tip" msgid "more: Ctrl, Alt" msgstr "modificateurs : Ctrl, Alt" -#: ../src/ui/tool/node.cpp:441 +#: ../src/ui/tool/node.cpp:440 #, c-format msgctxt "Path handle tip" -msgid "<b>Shift+Ctrl+Alt</b>: preserve length and snap rotation angle to %g° increments while rotating both handles" -msgstr "<b>Maj+Ctrl+Alt</b> : préserver la longueur et forcer l'incrément de l'angle de rotation à %g ° lorsque les deux poignées sont tournées" +msgid "" +"<b>Shift+Ctrl+Alt</b>: preserve length and snap rotation angle to %g° " +"increments while rotating both handles" +msgstr "" +"<b>Maj+Ctrl+Alt</b> : préserver la longueur et forcer l'incrément de l'angle " +"de rotation à %g ° lorsque les deux poignées sont tournées" -#: ../src/ui/tool/node.cpp:446 +#: ../src/ui/tool/node.cpp:445 #, c-format msgctxt "Path handle tip" -msgid "<b>Ctrl+Alt</b>: preserve length and snap rotation angle to %g° increments" -msgstr "<b>Ctrl+Alt</b> : préserver la longueur et forcer l'incrément de l'angle de rotation à %g °" +msgid "" +"<b>Ctrl+Alt</b>: preserve length and snap rotation angle to %g° increments" +msgstr "" +"<b>Ctrl+Alt</b> : préserver la longueur et forcer l'incrément de l'angle de " +"rotation à %g °" -#: ../src/ui/tool/node.cpp:452 +#: ../src/ui/tool/node.cpp:451 msgctxt "Path handle tip" msgid "<b>Shift+Alt</b>: preserve handle length and rotate both handles" -msgstr "<b>Maj+Alt</b> : préserver la longueur des poignées et tourner les deux poignées" +msgstr "" +"<b>Maj+Alt</b> : préserver la longueur des poignées et tourner les deux " +"poignées" -#: ../src/ui/tool/node.cpp:455 +#: ../src/ui/tool/node.cpp:454 msgctxt "Path handle tip" msgid "<b>Alt</b>: preserve handle length while dragging" msgstr "<b>Alt</b> : préserver la longueur des poignées lors des déplacements" -#: ../src/ui/tool/node.cpp:462 +#: ../src/ui/tool/node.cpp:461 #, c-format msgctxt "Path handle tip" -msgid "<b>Shift+Ctrl</b>: snap rotation angle to %g° increments and rotate both handles" -msgstr "<b>Maj+Ctrl</b> : forcer l'incrément de l'angle de rotation à %g ° et tourner les deux poignées" +msgid "" +"<b>Shift+Ctrl</b>: snap rotation angle to %g° increments and rotate both " +"handles" +msgstr "" +"<b>Maj+Ctrl</b> : forcer l'incrément de l'angle de rotation à %g ° et " +"tourner les deux poignées" -#: ../src/ui/tool/node.cpp:466 +#: ../src/ui/tool/node.cpp:465 #, c-format msgctxt "Path handle tip" msgid "<b>Ctrl</b>: snap rotation angle to %g° increments, click to retract" -msgstr "<b>Ctrl</b> : forcer l'incrément de l'angle de rotation à %g °, cliquer pour rétracter" +msgstr "" +"<b>Ctrl</b> : forcer l'incrément de l'angle de rotation à %g °, cliquer pour " +"rétracter" -#: ../src/ui/tool/node.cpp:471 +#: ../src/ui/tool/node.cpp:470 msgctxt "Path hande tip" msgid "<b>Shift</b>: rotate both handles by the same angle" msgstr "<b>Maj</b> : applique une rotation d'angle identique aux deux poignées" -#: ../src/ui/tool/node.cpp:478 +#: ../src/ui/tool/node.cpp:477 #, c-format msgctxt "Path handle tip" msgid "<b>Auto node handle</b>: drag to convert to smooth node (%s)" -msgstr "<b>Poignées de nÅ“ud automatique</b> : cliquer-déplacer pour convertir en nÅ“ud doux (%s)" +msgstr "" +"<b>Poignées de nÅ“ud automatique</b> : cliquer-déplacer pour convertir en " +"nÅ“ud doux (%s)" -#: ../src/ui/tool/node.cpp:481 +#: ../src/ui/tool/node.cpp:480 #, c-format msgctxt "Path handle tip" msgid "<b>%s</b>: drag to shape the segment (%s)" msgstr "<b>%s</b> : cliquer-déplacer pour modeler le segment (%s)" -#: ../src/ui/tool/node.cpp:497 +#: ../src/ui/tool/node.cpp:500 #, c-format msgctxt "Path handle tip" msgid "Move handle by %s, %s; angle %.2f°, length %s" msgstr "Déplacement des poignées de %s, %s; angle %.2f°, longueur %s" -#: ../src/ui/tool/node.cpp:1263 +#: ../src/ui/tool/node.cpp:1266 msgctxt "Path node tip" msgid "<b>Shift</b>: drag out a handle, click to toggle selection" -msgstr "<b>Maj</b> : cliquer-déplacer pour étirer une poignée, cliquer pour inverser l'état de sélection" +msgstr "" +"<b>Maj</b> : cliquer-déplacer pour étirer une poignée, cliquer pour inverser " +"l'état de sélection" -#: ../src/ui/tool/node.cpp:1265 +#: ../src/ui/tool/node.cpp:1268 msgctxt "Path node tip" msgid "<b>Shift</b>: click to toggle selection" msgstr "<b>Maj</b> : cliquer pour inverser l'état de sélection" -#: ../src/ui/tool/node.cpp:1270 +#: ../src/ui/tool/node.cpp:1273 msgctxt "Path node tip" msgid "<b>Ctrl+Alt</b>: move along handle lines, click to delete node" -msgstr "<b>Ctrl+Alt</b> : déplacer le long des lignes des poignées, cliquer pour effacer le nÅ“ud" +msgstr "" +"<b>Ctrl+Alt</b> : déplacer le long des lignes des poignées, cliquer pour " +"effacer le nÅ“ud" -#: ../src/ui/tool/node.cpp:1273 +#: ../src/ui/tool/node.cpp:1276 msgctxt "Path node tip" msgid "<b>Ctrl</b>: move along axes, click to change node type" -msgstr "<b>Ctrl</b> : déplacer le long des axes, cliquer pour changer de type de nÅ“ud" +msgstr "" +"<b>Ctrl</b> : déplacer le long des axes, cliquer pour changer de type de nÅ“ud" -#: ../src/ui/tool/node.cpp:1277 +#: ../src/ui/tool/node.cpp:1280 msgctxt "Path node tip" msgid "<b>Alt</b>: sculpt nodes" msgstr "<b>Alt</b> : sculpter les nÅ“uds" -#: ../src/ui/tool/node.cpp:1285 +#: ../src/ui/tool/node.cpp:1288 #, c-format msgctxt "Path node tip" msgid "<b>%s</b>: drag to shape the path (more: Shift, Ctrl, Alt)" -msgstr "<b>%s</b> : cliquer-déplacer pour modeler le chemin (modificateurs : Maj, Ctrl, Alt)" +msgstr "" +"<b>%s</b> : cliquer-déplacer pour modeler le chemin (modificateurs : Maj, " +"Ctrl, Alt)" -#: ../src/ui/tool/node.cpp:1288 +#: ../src/ui/tool/node.cpp:1291 #, c-format msgctxt "Path node tip" -msgid "<b>%s</b>: drag to shape the path, click to toggle scale/rotation handles (more: Shift, Ctrl, Alt)" -msgstr "<b>%s</b> : cliquer-déplacer pour modeler le chemin, cliquer pour basculer entre les poignées de sélection et de rotation (modificateurs : Maj, Ctrl, Alt)" +msgid "" +"<b>%s</b>: drag to shape the path, click to toggle scale/rotation handles " +"(more: Shift, Ctrl, Alt)" +msgstr "" +"<b>%s</b> : cliquer-déplacer pour modeler le chemin, cliquer pour basculer " +"entre les poignées de sélection et de rotation (modificateurs : Maj, Ctrl, " +"Alt)" -#: ../src/ui/tool/node.cpp:1291 +#: ../src/ui/tool/node.cpp:1294 #, c-format msgctxt "Path node tip" -msgid "<b>%s</b>: drag to shape the path, click to select only this node (more: Shift, Ctrl, Alt)" -msgstr "<b>%s</b> : cliquer-déplacer pour modeler le chemin, cliquer pour sélectionner seulement ce nÅ“ud (modificateurs : Maj, Ctrl, Alt)" +msgid "" +"<b>%s</b>: drag to shape the path, click to select only this node (more: " +"Shift, Ctrl, Alt)" +msgstr "" +"<b>%s</b> : cliquer-déplacer pour modeler le chemin, cliquer pour " +"sélectionner seulement ce nÅ“ud (modificateurs : Maj, Ctrl, Alt)" -#: ../src/ui/tool/node.cpp:1299 +#: ../src/ui/tool/node.cpp:1305 #, c-format msgctxt "Path node tip" msgid "Move node by %s, %s" msgstr "Déplacement du nÅ“ud de %s, %s" -#: ../src/ui/tool/node.cpp:1311 +#: ../src/ui/tool/node.cpp:1316 msgid "Symmetric node" msgstr "NÅ“ud symétrique" -#: ../src/ui/tool/node.cpp:1312 +#: ../src/ui/tool/node.cpp:1317 msgid "Auto-smooth node" msgstr "NÅ“ud automatique" -#: ../src/ui/tool/path-manipulator.cpp:816 +#: ../src/ui/tool/node-tool.cpp:553 +msgctxt "Node tool tip" +msgid "" +"<b>Shift</b>: drag to add nodes to the selection, click to toggle object " +"selection" +msgstr "" +"<b>Maj :</b> cliquer-déplacer pour ajouter des nÅ“uds à la sélection, cliquer " +"pour inverser l'état de sélection de l'objet" + +#: ../src/ui/tool/node-tool.cpp:557 +msgctxt "Node tool tip" +msgid "<b>Shift</b>: drag to add nodes to the selection" +msgstr "<b>Maj</b> : cliquer-déplacer pour ajouter des nÅ“uds à la sélection" + +#: ../src/ui/tool/node-tool.cpp:569 +#, c-format +msgid "<b>%u of %u</b> node selected." +msgid_plural "<b>%u of %u</b> nodes selected." +msgstr[0] "<b>%u</b> objet sur <b>%u</b> sélectionné" +msgstr[1] "<b>%u</b> objets sur <b>%u</b> sélectionnés" + +#: ../src/ui/tool/node-tool.cpp:575 +#, c-format +msgctxt "Node tool tip" +msgid "%s Drag to select nodes, click to edit only this object (more: Shift)" +msgstr "" +"%s Cliquer-glisser pour sélectionner des nÅ“uds, cliquer pour sélectionner " +"seulement cet objet (plus d'actions avec Maj)" + +#: ../src/ui/tool/node-tool.cpp:581 +#, c-format +msgctxt "Node tool tip" +msgid "%s Drag to select nodes, click clear the selection" +msgstr "" +"%s Cliquer-glisser pour sélectionner des nÅ“uds, cliquer pour libérer la " +"sélection" + +#: ../src/ui/tool/node-tool.cpp:590 +msgctxt "Node tool tip" +msgid "Drag to select nodes, click to edit only this object" +msgstr "" +"Cliquer-glisser pour sélectionner des nÅ“uds, cliquer pour sélectionner " +"seulement cet objet" + +#: ../src/ui/tool/node-tool.cpp:593 +msgctxt "Node tool tip" +msgid "Drag to select nodes, click to clear the selection" +msgstr "" +"Cliquer-glisser pour sélectionner des nÅ“uds, cliquer pour libérer la " +"sélection" + +#: ../src/ui/tool/node-tool.cpp:598 +msgctxt "Node tool tip" +msgid "Drag to select objects to edit, click to edit this object (more: Shift)" +msgstr "" +"Cliquer-glisser pour sélectionner les objets à éditer, cliquer pour éditer " +"les objets (modificateur : Maj)" + +#: ../src/ui/tool/node-tool.cpp:601 +msgctxt "Node tool tip" +msgid "Drag to select objects to edit" +msgstr "Cliquer-glisser pour sélectionner les objets à éditer" + +#: ../src/ui/tool/path-manipulator.cpp:821 msgid "Scale handle" msgstr "Redimensionner la poignée" -#: ../src/ui/tool/path-manipulator.cpp:840 +#: ../src/ui/tool/path-manipulator.cpp:845 msgid "Rotate handle" msgstr "Faire tourner la poignée" #. We need to call MPM's method because it could have been our last node -#: ../src/ui/tool/path-manipulator.cpp:1374 -#: ../src/widgets/node-toolbar.cpp:406 +#: ../src/ui/tool/path-manipulator.cpp:1384 +#: ../src/widgets/node-toolbar.cpp:409 msgid "Delete node" msgstr "Supprimer le nÅ“ud" -#: ../src/ui/tool/path-manipulator.cpp:1382 +#: ../src/ui/tool/path-manipulator.cpp:1392 msgid "Cycle node type" msgstr "Permuter le type de nÅ“ud" -#: ../src/ui/tool/path-manipulator.cpp:1397 +#: ../src/ui/tool/path-manipulator.cpp:1407 msgid "Drag handle" msgstr "Étirer la poignée" -#: ../src/ui/tool/path-manipulator.cpp:1406 +#: ../src/ui/tool/path-manipulator.cpp:1416 msgid "Retract handle" msgstr "Retracter la poignée" -#: ../src/ui/tool/transform-handle-set.cpp:194 +#: ../src/ui/tool/transform-handle-set.cpp:195 msgctxt "Transform handle tip" msgid "<b>Shift+Ctrl</b>: scale uniformly about the rotation center" -msgstr "<b>Maj+Ctrl</b> : redimensionne uniformément autour du centre de rotation" +msgstr "" +"<b>Maj+Ctrl</b> : redimensionne uniformément autour du centre de rotation" -#: ../src/ui/tool/transform-handle-set.cpp:196 +#: ../src/ui/tool/transform-handle-set.cpp:197 msgctxt "Transform handle tip" msgid "<b>Ctrl:</b> scale uniformly" msgstr "<b>Ctrl</b> : redimensionner uniformément" -#: ../src/ui/tool/transform-handle-set.cpp:201 +#: ../src/ui/tool/transform-handle-set.cpp:202 msgctxt "Transform handle tip" -msgid "<b>Shift+Alt</b>: scale using an integer ratio about the rotation center" -msgstr "<b>Maj+Alt</b> : redimensionne conformément à un rapport entier autour du centre de rotation" +msgid "" +"<b>Shift+Alt</b>: scale using an integer ratio about the rotation center" +msgstr "" +"<b>Maj+Alt</b> : redimensionne conformément à un rapport entier autour du " +"centre de rotation" -#: ../src/ui/tool/transform-handle-set.cpp:203 +#: ../src/ui/tool/transform-handle-set.cpp:204 msgctxt "Transform handle tip" msgid "<b>Shift</b>: scale from the rotation center" msgstr "<b>Maj</b> : redimensionner à partir du centre de rotation" -#: ../src/ui/tool/transform-handle-set.cpp:206 +#: ../src/ui/tool/transform-handle-set.cpp:207 msgctxt "Transform handle tip" msgid "<b>Alt</b>: scale using an integer ratio" msgstr "<b>Alt</b> : redimensionne conformément à un rapport entier" -#: ../src/ui/tool/transform-handle-set.cpp:208 +#: ../src/ui/tool/transform-handle-set.cpp:209 msgctxt "Transform handle tip" msgid "<b>Scale handle</b>: drag to scale the selection" -msgstr "<b>Poignée de redimensionnement</b> : cliquer-déplacer pour redimensionner la sélection" +msgstr "" +"<b>Poignée de redimensionnement</b> : cliquer-déplacer pour redimensionner " +"la sélection" -#: ../src/ui/tool/transform-handle-set.cpp:213 +#: ../src/ui/tool/transform-handle-set.cpp:214 #, c-format msgctxt "Transform handle tip" msgid "Scale by %.2f%% x %.2f%%" msgstr "Redimensionnement de %.2f%% x %.2f%%" -#: ../src/ui/tool/transform-handle-set.cpp:437 +#: ../src/ui/tool/transform-handle-set.cpp:438 #, c-format msgctxt "Transform handle tip" -msgid "<b>Shift+Ctrl</b>: rotate around the opposite corner and snap angle to %f° increments" +msgid "" +"<b>Shift+Ctrl</b>: rotate around the opposite corner and snap angle to %f° " +"increments" msgstr "<b>Maj+Ctrl</b> : tourne autour du coin opposé par incréments de %f °" -#: ../src/ui/tool/transform-handle-set.cpp:440 +#: ../src/ui/tool/transform-handle-set.cpp:441 msgctxt "Transform handle tip" msgid "<b>Shift</b>: rotate around the opposite corner" msgstr "<b>Maj</b> : tourne autour du coin opposé" -#: ../src/ui/tool/transform-handle-set.cpp:444 +#: ../src/ui/tool/transform-handle-set.cpp:445 #, c-format msgctxt "Transform handle tip" msgid "<b>Ctrl</b>: snap angle to %f° increments" msgstr "<b>Ctrl</b> : tourner par incréments de %f °" -#: ../src/ui/tool/transform-handle-set.cpp:446 +#: ../src/ui/tool/transform-handle-set.cpp:447 msgctxt "Transform handle tip" -msgid "<b>Rotation handle</b>: drag to rotate the selection around the rotation center" -msgstr "<b>Poignée de rotation</b> : cliquer-déplacer pour faire tourner la sélection autour du centre de rotation" +msgid "" +"<b>Rotation handle</b>: drag to rotate the selection around the rotation " +"center" +msgstr "" +"<b>Poignée de rotation</b> : cliquer-déplacer pour faire tourner la " +"sélection autour du centre de rotation" #. event -#: ../src/ui/tool/transform-handle-set.cpp:451 +#: ../src/ui/tool/transform-handle-set.cpp:452 #, c-format msgctxt "Transform handle tip" msgid "Rotate by %.2f°" msgstr "Rotation de %.2f °" -#: ../src/ui/tool/transform-handle-set.cpp:577 +#: ../src/ui/tool/transform-handle-set.cpp:578 #, c-format msgctxt "Transform handle tip" -msgid "<b>Shift+Ctrl</b>: skew about the rotation center with snapping to %f° increments" -msgstr "<b>Maj+Ctrl</b> : incliner par rapport au centre de rotation par incréments de %f °" +msgid "" +"<b>Shift+Ctrl</b>: skew about the rotation center with snapping to %f° " +"increments" +msgstr "" +"<b>Maj+Ctrl</b> : incliner par rapport au centre de rotation par incréments " +"de %f °" -#: ../src/ui/tool/transform-handle-set.cpp:580 +#: ../src/ui/tool/transform-handle-set.cpp:581 msgctxt "Transform handle tip" msgid "<b>Shift</b>: skew about the rotation center" msgstr "<b>Maj</b> : incliner par rapport au centre de rotation" -#: ../src/ui/tool/transform-handle-set.cpp:584 +#: ../src/ui/tool/transform-handle-set.cpp:585 #, c-format msgctxt "Transform handle tip" msgid "<b>Ctrl</b>: snap skew angle to %f° increments" msgstr "<b>Ctrl</b> : incliner par incréments de %f °" -#: ../src/ui/tool/transform-handle-set.cpp:587 +#: ../src/ui/tool/transform-handle-set.cpp:588 msgctxt "Transform handle tip" -msgid "<b>Skew handle</b>: drag to skew (shear) selection about the opposite handle" -msgstr "<b>Poignée d'inclinaison</b> : cliquer-déplacer pour incliner la sélection par rapport à la poignée opposée" +msgid "" +"<b>Skew handle</b>: drag to skew (shear) selection about the opposite handle" +msgstr "" +"<b>Poignée d'inclinaison</b> : cliquer-déplacer pour incliner la sélection " +"par rapport à la poignée opposée" -#: ../src/ui/tool/transform-handle-set.cpp:593 +#: ../src/ui/tool/transform-handle-set.cpp:594 #, c-format msgctxt "Transform handle tip" msgid "Skew horizontally by %.2f°" msgstr "Incline horizontalement de %.2f °" -#: ../src/ui/tool/transform-handle-set.cpp:596 +#: ../src/ui/tool/transform-handle-set.cpp:597 #, c-format msgctxt "Transform handle tip" msgid "Skew vertically by %.2f°" msgstr "Incline verticalement de %.2f °" -#: ../src/ui/tool/transform-handle-set.cpp:655 +#: ../src/ui/tool/transform-handle-set.cpp:656 msgctxt "Transform handle tip" msgid "<b>Rotation center</b>: drag to change the origin of transforms" -msgstr "<b>Centre de rotation</b> : cliquer-déplacer pour modifier l'origine des transformations" +msgstr "" +"<b>Centre de rotation</b> : cliquer-déplacer pour modifier l'origine des " +"transformations" #: ../src/ui/widget/filter-effect-chooser.cpp:27 msgid "Blur (%)" @@ -20237,8 +22399,8 @@ msgid "MetadataLicence|Other" msgstr "Autre" #: ../src/ui/widget/object-composite-settings.cpp:67 -#: ../src/ui/widget/selected-style.cpp:1090 -#: ../src/ui/widget/selected-style.cpp:1091 +#: ../src/ui/widget/selected-style.cpp:1095 +#: ../src/ui/widget/selected-style.cpp:1096 msgid "Opacity (%)" msgstr "Opacité (%)" @@ -20247,86 +22409,91 @@ msgid "Change blur" msgstr "Modifier le flou" #: ../src/ui/widget/object-composite-settings.cpp:220 -#: ../src/ui/widget/selected-style.cpp:922 -#: ../src/ui/widget/selected-style.cpp:1216 +#: ../src/ui/widget/selected-style.cpp:927 +#: ../src/ui/widget/selected-style.cpp:1221 msgid "Change opacity" msgstr "Modifier l'opacité" -#: ../src/ui/widget/page-sizer.cpp:237 +#: ../src/ui/widget/page-sizer.cpp:235 msgid "U_nits:" msgstr "U_nités :" -#: ../src/ui/widget/page-sizer.cpp:238 +#: ../src/ui/widget/page-sizer.cpp:236 msgid "Width of paper" msgstr "Largeur de papier" -#: ../src/ui/widget/page-sizer.cpp:239 +#: ../src/ui/widget/page-sizer.cpp:237 msgid "Height of paper" msgstr "Hauteur de papier" -#: ../src/ui/widget/page-sizer.cpp:240 +#: ../src/ui/widget/page-sizer.cpp:238 msgid "T_op margin:" msgstr "Marge s_upérieure :" -#: ../src/ui/widget/page-sizer.cpp:240 +#: ../src/ui/widget/page-sizer.cpp:238 msgid "Top margin" msgstr "Marge supérieure" -#: ../src/ui/widget/page-sizer.cpp:241 +#: ../src/ui/widget/page-sizer.cpp:239 msgid "L_eft:" msgstr "Gauch_e :" -#: ../src/ui/widget/page-sizer.cpp:241 +#: ../src/ui/widget/page-sizer.cpp:239 +#: ../share/extensions/guides_creator.inx.h:17 msgid "Left margin" msgstr "Marge gauche" -#: ../src/ui/widget/page-sizer.cpp:242 +#: ../src/ui/widget/page-sizer.cpp:240 msgid "Ri_ght:" msgstr "Dro_ite :" -#: ../src/ui/widget/page-sizer.cpp:242 +#: ../src/ui/widget/page-sizer.cpp:240 +#: ../share/extensions/guides_creator.inx.h:18 msgid "Right margin" msgstr "Marge droite" -#: ../src/ui/widget/page-sizer.cpp:243 +#: ../src/ui/widget/page-sizer.cpp:241 msgid "Botto_m:" msgstr "B_as :" -#: ../src/ui/widget/page-sizer.cpp:243 +#: ../src/ui/widget/page-sizer.cpp:241 msgid "Bottom margin" msgstr "Marge inférieure" -#: ../src/ui/widget/page-sizer.cpp:303 -#: ../share/extensions/hpgl_output.inx.h:7 +#: ../src/ui/widget/page-sizer.cpp:296 msgid "Orientation:" msgstr "Orientation :" -#: ../src/ui/widget/page-sizer.cpp:306 +#: ../src/ui/widget/page-sizer.cpp:299 msgid "_Landscape" msgstr "Pa_ysage" -#: ../src/ui/widget/page-sizer.cpp:311 +#: ../src/ui/widget/page-sizer.cpp:304 msgid "_Portrait" msgstr "_Portrait" #. ## Set up custom size frame -#: ../src/ui/widget/page-sizer.cpp:329 +#: ../src/ui/widget/page-sizer.cpp:322 msgid "Custom size" msgstr "Dimensions personnalisées" -#: ../src/ui/widget/page-sizer.cpp:374 +#: ../src/ui/widget/page-sizer.cpp:367 msgid "Resi_ze page to content..." msgstr "Redimensionner la page au contenu..." -#: ../src/ui/widget/page-sizer.cpp:426 +#: ../src/ui/widget/page-sizer.cpp:419 msgid "_Resize page to drawing or selection" msgstr "A_juster la page au dessin ou à la sélection" -#: ../src/ui/widget/page-sizer.cpp:427 -msgid "Resize the page to fit the current selection, or the entire drawing if there is no selection" -msgstr "Redimensionner la page pour l'ajuster à la sélection, ou au dessin entier s'il n'y a pas de sélection" +#: ../src/ui/widget/page-sizer.cpp:420 +msgid "" +"Resize the page to fit the current selection, or the entire drawing if there " +"is no selection" +msgstr "" +"Redimensionner la page pour l'ajuster à la sélection, ou au dessin entier " +"s'il n'y a pas de sélection" -#: ../src/ui/widget/page-sizer.cpp:492 +#: ../src/ui/widget/page-sizer.cpp:488 msgid "Set page size" msgstr "Définir les dimensions de la page" @@ -20429,8 +22596,12 @@ msgid "Select a bitmap editor" msgstr "Sélectionnez un éditeur de bitmap" #: ../src/ui/widget/random.cpp:84 -msgid "Reseed the random number generator; this creates a different sequence of random numbers." -msgstr "Réinitialiser le générateur pseudo-aléatoire; cela crée une nouvelle suite de nombre aléatoires." +msgid "" +"Reseed the random number generator; this creates a different sequence of " +"random numbers." +msgstr "" +"Réinitialiser le générateur pseudo-aléatoire; cela crée une nouvelle suite " +"de nombre aléatoires." #: ../src/ui/widget/rendering-options.cpp:30 msgid "Backend" @@ -20453,370 +22624,402 @@ msgid "Preferred resolution of rendering, in dots per inch." msgstr "Résolution préférée (point par pouce) du rendu." #: ../src/ui/widget/rendering-options.cpp:43 -msgid "Render using Cairo vector operations. The resulting image is usually smaller in file size and can be arbitrarily scaled, but some filter effects will not be correctly rendered." -msgstr "Utiliser les opérateurs vectoriels Cairo. Le fichier image résultant est en général moins volumineux et reste redimensionnable; cependant les motifs de remplissage seront perdus." +msgid "" +"Render using Cairo vector operations. The resulting image is usually " +"smaller in file size and can be arbitrarily scaled, but some filter effects " +"will not be correctly rendered." +msgstr "" +"Utiliser les opérateurs vectoriels Cairo. Le fichier image résultant est en " +"général moins volumineux et reste redimensionnable; cependant les motifs de " +"remplissage seront perdus." #: ../src/ui/widget/rendering-options.cpp:48 -msgid "Render everything as bitmap. The resulting image is usually larger in file size and cannot be arbitrarily scaled without quality loss, but all objects will be rendered exactly as displayed." -msgstr "Tout imprimer en tant que bitmap. Le fichier image résultant sera en général plus volumineux et n'est plus redimensionnable sans perte de qualité, cependant tous les objets seront rendus tels qu'affichés." +msgid "" +"Render everything as bitmap. The resulting image is usually larger in file " +"size and cannot be arbitrarily scaled without quality loss, but all objects " +"will be rendered exactly as displayed." +msgstr "" +"Tout imprimer en tant que bitmap. Le fichier image résultant sera en général " +"plus volumineux et n'est plus redimensionnable sans perte de qualité, " +"cependant tous les objets seront rendus tels qu'affichés." -#: ../src/ui/widget/selected-style.cpp:127 -#: ../src/ui/widget/style-swatch.cpp:126 +#: ../src/ui/widget/selected-style.cpp:130 +#: ../src/ui/widget/style-swatch.cpp:127 msgid "Fill:" msgstr "Remplissage :" # Opacity -#: ../src/ui/widget/selected-style.cpp:129 +#: ../src/ui/widget/selected-style.cpp:132 msgid "O:" msgstr "O :" -#: ../src/ui/widget/selected-style.cpp:174 +#: ../src/ui/widget/selected-style.cpp:177 msgid "N/A" msgstr "N/A" -#: ../src/ui/widget/selected-style.cpp:177 -#: ../src/ui/widget/selected-style.cpp:1083 -#: ../src/ui/widget/selected-style.cpp:1084 -#: ../src/widgets/gradient-toolbar.cpp:176 +#: ../src/ui/widget/selected-style.cpp:180 +#: ../src/ui/widget/selected-style.cpp:1088 +#: ../src/ui/widget/selected-style.cpp:1089 +#: ../src/widgets/gradient-toolbar.cpp:177 msgid "Nothing selected" msgstr "Aucune sélection" -#: ../src/ui/widget/selected-style.cpp:179 -#: ../src/ui/widget/style-swatch.cpp:319 +#: ../src/ui/widget/selected-style.cpp:182 +#: ../src/ui/widget/style-swatch.cpp:320 msgctxt "Fill and stroke" msgid "<i>None</i>" msgstr "<i>Aucun</i>" -#: ../src/ui/widget/selected-style.cpp:182 -#: ../src/ui/widget/style-swatch.cpp:321 +#: ../src/ui/widget/selected-style.cpp:185 +#: ../src/ui/widget/style-swatch.cpp:322 msgctxt "Fill and stroke" msgid "No fill" msgstr "Aucun remplissage" -#: ../src/ui/widget/selected-style.cpp:182 -#: ../src/ui/widget/style-swatch.cpp:321 +#: ../src/ui/widget/selected-style.cpp:185 +#: ../src/ui/widget/style-swatch.cpp:322 msgctxt "Fill and stroke" msgid "No stroke" msgstr "Aucun contour" -#: ../src/ui/widget/selected-style.cpp:184 -#: ../src/ui/widget/style-swatch.cpp:300 -#: ../src/widgets/paint-selector.cpp:242 +#: ../src/ui/widget/selected-style.cpp:187 +#: ../src/ui/widget/style-swatch.cpp:301 ../src/widgets/paint-selector.cpp:242 msgid "Pattern" msgstr "Motif" -#: ../src/ui/widget/selected-style.cpp:187 -#: ../src/ui/widget/style-swatch.cpp:302 +#: ../src/ui/widget/selected-style.cpp:190 +#: ../src/ui/widget/style-swatch.cpp:303 msgid "Pattern fill" msgstr "Motif de remplissage" -#: ../src/ui/widget/selected-style.cpp:187 -#: ../src/ui/widget/style-swatch.cpp:302 +#: ../src/ui/widget/selected-style.cpp:190 +#: ../src/ui/widget/style-swatch.cpp:303 msgid "Pattern stroke" msgstr "Motif de contour" -#: ../src/ui/widget/selected-style.cpp:189 +#: ../src/ui/widget/selected-style.cpp:192 msgid "<b>L</b>" msgstr "<b>L</b>" -#: ../src/ui/widget/selected-style.cpp:192 -#: ../src/ui/widget/style-swatch.cpp:294 +#: ../src/ui/widget/selected-style.cpp:195 +#: ../src/ui/widget/style-swatch.cpp:295 msgid "Linear gradient fill" msgstr "Dégradé linéaire de remplissage" -#: ../src/ui/widget/selected-style.cpp:192 -#: ../src/ui/widget/style-swatch.cpp:294 +#: ../src/ui/widget/selected-style.cpp:195 +#: ../src/ui/widget/style-swatch.cpp:295 msgid "Linear gradient stroke" msgstr "Dégradé linéaire de contour" -#: ../src/ui/widget/selected-style.cpp:199 +#: ../src/ui/widget/selected-style.cpp:202 msgid "<b>R</b>" msgstr "<b>R</b>" -#: ../src/ui/widget/selected-style.cpp:202 -#: ../src/ui/widget/style-swatch.cpp:298 +#: ../src/ui/widget/selected-style.cpp:205 +#: ../src/ui/widget/style-swatch.cpp:299 msgid "Radial gradient fill" msgstr "Dégradé radial de remplissage" -#: ../src/ui/widget/selected-style.cpp:202 -#: ../src/ui/widget/style-swatch.cpp:298 +#: ../src/ui/widget/selected-style.cpp:205 +#: ../src/ui/widget/style-swatch.cpp:299 msgid "Radial gradient stroke" msgstr "Dégradé radial de contour" -#: ../src/ui/widget/selected-style.cpp:209 +#: ../src/ui/widget/selected-style.cpp:212 msgid "Different" msgstr "Différents" -#: ../src/ui/widget/selected-style.cpp:212 +#: ../src/ui/widget/selected-style.cpp:215 msgid "Different fills" msgstr "Remplissages différents" -#: ../src/ui/widget/selected-style.cpp:212 +#: ../src/ui/widget/selected-style.cpp:215 msgid "Different strokes" msgstr "Contours différents" -#: ../src/ui/widget/selected-style.cpp:214 -#: ../src/ui/widget/style-swatch.cpp:324 +#: ../src/ui/widget/selected-style.cpp:217 +#: ../src/ui/widget/style-swatch.cpp:325 msgid "<b>Unset</b>" msgstr "<b>Indéfini</b>" #. TRANSLATORS COMMENT: unset is a verb here -#: ../src/ui/widget/selected-style.cpp:217 -#: ../src/ui/widget/selected-style.cpp:275 -#: ../src/ui/widget/selected-style.cpp:554 -#: ../src/ui/widget/style-swatch.cpp:326 -#: ../src/widgets/fill-style.cpp:712 +#: ../src/ui/widget/selected-style.cpp:220 +#: ../src/ui/widget/selected-style.cpp:278 +#: ../src/ui/widget/selected-style.cpp:559 +#: ../src/ui/widget/style-swatch.cpp:327 ../src/widgets/fill-style.cpp:712 msgid "Unset fill" msgstr "Ne pas définir le remplissage" -#: ../src/ui/widget/selected-style.cpp:217 -#: ../src/ui/widget/selected-style.cpp:275 -#: ../src/ui/widget/selected-style.cpp:570 -#: ../src/ui/widget/style-swatch.cpp:326 -#: ../src/widgets/fill-style.cpp:712 +#: ../src/ui/widget/selected-style.cpp:220 +#: ../src/ui/widget/selected-style.cpp:278 +#: ../src/ui/widget/selected-style.cpp:575 +#: ../src/ui/widget/style-swatch.cpp:327 ../src/widgets/fill-style.cpp:712 msgid "Unset stroke" msgstr "Ne pas définir le contour" -#: ../src/ui/widget/selected-style.cpp:220 +#: ../src/ui/widget/selected-style.cpp:223 msgid "Flat color fill" msgstr "Aplat de remplissage" -#: ../src/ui/widget/selected-style.cpp:220 +#: ../src/ui/widget/selected-style.cpp:223 msgid "Flat color stroke" msgstr "Aplat de contour" #. TRANSLATOR COMMENT: A means "Averaged" -#: ../src/ui/widget/selected-style.cpp:223 +#: ../src/ui/widget/selected-style.cpp:226 msgid "<b>a</b>" msgstr "<b>m</b>" -#: ../src/ui/widget/selected-style.cpp:226 +#: ../src/ui/widget/selected-style.cpp:229 msgid "Fill is averaged over selected objects" msgstr "Le remplissage est moyenné sur les objets sélectionnés" -#: ../src/ui/widget/selected-style.cpp:226 +#: ../src/ui/widget/selected-style.cpp:229 msgid "Stroke is averaged over selected objects" msgstr "Le contour est moyenné sur les objets sélectionnés" #. TRANSLATOR COMMENT: M means "Multiple" -#: ../src/ui/widget/selected-style.cpp:229 +#: ../src/ui/widget/selected-style.cpp:232 msgid "<b>m</b>" msgstr "<b>p</b>" -#: ../src/ui/widget/selected-style.cpp:232 +#: ../src/ui/widget/selected-style.cpp:235 msgid "Multiple selected objects have the same fill" msgstr "Plusieurs objets sélectionnés ont le même remplissage" -#: ../src/ui/widget/selected-style.cpp:232 +#: ../src/ui/widget/selected-style.cpp:235 msgid "Multiple selected objects have the same stroke" msgstr "Plusieurs objets sélectionnés ont le même contour" -#: ../src/ui/widget/selected-style.cpp:234 +#: ../src/ui/widget/selected-style.cpp:237 msgid "Edit fill..." msgstr "Éditer le remplissage..." -#: ../src/ui/widget/selected-style.cpp:234 +#: ../src/ui/widget/selected-style.cpp:237 msgid "Edit stroke..." msgstr "Éditer le contour..." -#: ../src/ui/widget/selected-style.cpp:238 +#: ../src/ui/widget/selected-style.cpp:241 msgid "Last set color" msgstr "Dernière couleur définie" -#: ../src/ui/widget/selected-style.cpp:242 +#: ../src/ui/widget/selected-style.cpp:245 msgid "Last selected color" msgstr "Dernière couleur sélectionnée" -#: ../src/ui/widget/selected-style.cpp:258 +#: ../src/ui/widget/selected-style.cpp:261 msgid "Copy color" msgstr "Copier la couleur" -#: ../src/ui/widget/selected-style.cpp:262 +#: ../src/ui/widget/selected-style.cpp:265 msgid "Paste color" msgstr "Coller la couleur" -#: ../src/ui/widget/selected-style.cpp:266 -#: ../src/ui/widget/selected-style.cpp:847 +#: ../src/ui/widget/selected-style.cpp:269 +#: ../src/ui/widget/selected-style.cpp:852 msgid "Swap fill and stroke" msgstr "Intervertir remplissage et contour" -#: ../src/ui/widget/selected-style.cpp:270 -#: ../src/ui/widget/selected-style.cpp:579 -#: ../src/ui/widget/selected-style.cpp:588 +#: ../src/ui/widget/selected-style.cpp:273 +#: ../src/ui/widget/selected-style.cpp:584 +#: ../src/ui/widget/selected-style.cpp:593 msgid "Make fill opaque" msgstr "Rendre le remplissage opaque" -#: ../src/ui/widget/selected-style.cpp:270 +#: ../src/ui/widget/selected-style.cpp:273 msgid "Make stroke opaque" msgstr "Rendre le contour opaque" -#: ../src/ui/widget/selected-style.cpp:279 -#: ../src/ui/widget/selected-style.cpp:536 -#: ../src/widgets/fill-style.cpp:510 +#: ../src/ui/widget/selected-style.cpp:282 +#: ../src/ui/widget/selected-style.cpp:541 ../src/widgets/fill-style.cpp:510 msgid "Remove fill" msgstr "Supprimer le remplissage" -#: ../src/ui/widget/selected-style.cpp:279 -#: ../src/ui/widget/selected-style.cpp:545 -#: ../src/widgets/fill-style.cpp:510 +#: ../src/ui/widget/selected-style.cpp:282 +#: ../src/ui/widget/selected-style.cpp:550 ../src/widgets/fill-style.cpp:510 msgid "Remove stroke" msgstr "Supprimer le contour" -#: ../src/ui/widget/selected-style.cpp:600 +#: ../src/ui/widget/selected-style.cpp:605 msgid "Apply last set color to fill" msgstr "Appliquer la dernière couleur définie au remplissage" -#: ../src/ui/widget/selected-style.cpp:612 +#: ../src/ui/widget/selected-style.cpp:617 msgid "Apply last set color to stroke" msgstr "Appliquer la dernière couleur définie au contour" -#: ../src/ui/widget/selected-style.cpp:623 +#: ../src/ui/widget/selected-style.cpp:628 msgid "Apply last selected color to fill" msgstr "Appliquer la dernière couleur sélectionnée au remplissage" -#: ../src/ui/widget/selected-style.cpp:634 +#: ../src/ui/widget/selected-style.cpp:639 msgid "Apply last selected color to stroke" msgstr "Appliquer la dernière couleur sélectionnée au contour" -#: ../src/ui/widget/selected-style.cpp:660 +#: ../src/ui/widget/selected-style.cpp:665 msgid "Invert fill" msgstr "Inverser le remplissage" -#: ../src/ui/widget/selected-style.cpp:684 +#: ../src/ui/widget/selected-style.cpp:689 msgid "Invert stroke" msgstr "Inverser le contour" -#: ../src/ui/widget/selected-style.cpp:696 +#: ../src/ui/widget/selected-style.cpp:701 msgid "White fill" msgstr "Remplissage blanc" -#: ../src/ui/widget/selected-style.cpp:708 +#: ../src/ui/widget/selected-style.cpp:713 msgid "White stroke" msgstr "Contour blanc" -#: ../src/ui/widget/selected-style.cpp:720 +#: ../src/ui/widget/selected-style.cpp:725 msgid "Black fill" msgstr "Remplissage noir" -#: ../src/ui/widget/selected-style.cpp:732 +#: ../src/ui/widget/selected-style.cpp:737 msgid "Black stroke" msgstr "Contour noir" -#: ../src/ui/widget/selected-style.cpp:775 +#: ../src/ui/widget/selected-style.cpp:780 msgid "Paste fill" msgstr "Coller le remplissage" -#: ../src/ui/widget/selected-style.cpp:793 +#: ../src/ui/widget/selected-style.cpp:798 msgid "Paste stroke" msgstr "Coller le contour" -#: ../src/ui/widget/selected-style.cpp:949 +#: ../src/ui/widget/selected-style.cpp:954 msgid "Change stroke width" msgstr "Modifier l'épaisseur du contour" -#: ../src/ui/widget/selected-style.cpp:1044 +#: ../src/ui/widget/selected-style.cpp:1049 msgid ", drag to adjust" msgstr ", cliquer-déplacer pour ajuster" -#: ../src/ui/widget/selected-style.cpp:1129 +#: ../src/ui/widget/selected-style.cpp:1134 #, c-format msgid "Stroke width: %.5g%s%s" msgstr "Épaisseur de contour : %.5g%s%s" -#: ../src/ui/widget/selected-style.cpp:1133 +#: ../src/ui/widget/selected-style.cpp:1138 msgid " (averaged)" msgstr " (moyenné)" -#: ../src/ui/widget/selected-style.cpp:1161 +#: ../src/ui/widget/selected-style.cpp:1166 msgid "0 (transparent)" msgstr "0 (transparent)" -#: ../src/ui/widget/selected-style.cpp:1185 +#: ../src/ui/widget/selected-style.cpp:1190 msgid "100% (opaque)" msgstr "100% (opaque)" -#: ../src/ui/widget/selected-style.cpp:1352 +#: ../src/ui/widget/selected-style.cpp:1357 msgid "Adjust alpha" msgstr "Ajuster l'opacité" -#: ../src/ui/widget/selected-style.cpp:1354 +#: ../src/ui/widget/selected-style.cpp:1359 #, c-format -msgid "Adjusting <b>alpha</b>: was %.3g, now <b>%.3g</b> (diff %.3g); with <b>Ctrl</b> to adjust lightness, with <b>Shift</b> to adjust saturation, without modifiers to adjust hue" -msgstr "Ajustement de l'<b>opacité</b> : valeur précédente %.3g, désormais <b>%.3g</b> (diff. %.3g) ; <b>Ctrl</b> pour ajuster la luminosité, <b>Maj</b> pour ajuster la saturation, sans touche modificatrice pour ajuster la teinte" +msgid "" +"Adjusting <b>alpha</b>: was %.3g, now <b>%.3g</b> (diff %.3g); with <b>Ctrl</" +"b> to adjust lightness, with <b>Shift</b> to adjust saturation, without " +"modifiers to adjust hue" +msgstr "" +"Ajustement de l'<b>opacité</b> : valeur précédente %.3g, désormais <b>%.3g</" +"b> (diff. %.3g) ; <b>Ctrl</b> pour ajuster la luminosité, <b>Maj</b> pour " +"ajuster la saturation, sans touche modificatrice pour ajuster la teinte" -#: ../src/ui/widget/selected-style.cpp:1358 +#: ../src/ui/widget/selected-style.cpp:1363 msgid "Adjust saturation" msgstr "Ajuster la saturation" -#: ../src/ui/widget/selected-style.cpp:1360 +#: ../src/ui/widget/selected-style.cpp:1365 #, c-format -msgid "Adjusting <b>saturation</b>: was %.3g, now <b>%.3g</b> (diff %.3g); with <b>Ctrl</b> to adjust lightness, with <b>Alt</b> to adjust alpha, without modifiers to adjust hue" -msgstr "Ajustement de la <b>saturation</b> : valeur précédente %.3g, désormais <b>%.3g</b> (diff. %.3g) ; <b>Ctrl</b> pour ajuster la luminosité, csans touche modificatrice pour ajuster la teinte" +msgid "" +"Adjusting <b>saturation</b>: was %.3g, now <b>%.3g</b> (diff %.3g); with " +"<b>Ctrl</b> to adjust lightness, with <b>Alt</b> to adjust alpha, without " +"modifiers to adjust hue" +msgstr "" +"Ajustement de la <b>saturation</b> : valeur précédente %.3g, désormais <b>" +"%.3g</b> (diff. %.3g) ; <b>Ctrl</b> pour ajuster la luminosité, csans touche " +"modificatrice pour ajuster la teinte" -#: ../src/ui/widget/selected-style.cpp:1364 +#: ../src/ui/widget/selected-style.cpp:1369 msgid "Adjust lightness" msgstr "Ajuster la luminosité" -#: ../src/ui/widget/selected-style.cpp:1366 +#: ../src/ui/widget/selected-style.cpp:1371 #, c-format -msgid "Adjusting <b>lightness</b>: was %.3g, now <b>%.3g</b> (diff %.3g); with <b>Shift</b> to adjust saturation, with <b>Alt</b> to adjust alpha, without modifiers to adjust hue" -msgstr "Ajustement de la <b>luminosité</b> : valeur précédente %.3g, désormais <b>%.3g</b> (diff. %.3g) ; <b>Maj</b> pour ajuster la saturation, <b>Alt</b> pour ajuster l'opacité, sans touche modificatrice pour ajuster la teinte" +msgid "" +"Adjusting <b>lightness</b>: was %.3g, now <b>%.3g</b> (diff %.3g); with " +"<b>Shift</b> to adjust saturation, with <b>Alt</b> to adjust alpha, without " +"modifiers to adjust hue" +msgstr "" +"Ajustement de la <b>luminosité</b> : valeur précédente %.3g, désormais <b>" +"%.3g</b> (diff. %.3g) ; <b>Maj</b> pour ajuster la saturation, <b>Alt</b> " +"pour ajuster l'opacité, sans touche modificatrice pour ajuster la teinte" -#: ../src/ui/widget/selected-style.cpp:1370 +#: ../src/ui/widget/selected-style.cpp:1375 msgid "Adjust hue" msgstr "Ajuster la teinte" -#: ../src/ui/widget/selected-style.cpp:1372 +#: ../src/ui/widget/selected-style.cpp:1377 #, c-format -msgid "Adjusting <b>hue</b>: was %.3g, now <b>%.3g</b> (diff %.3g); with <b>Shift</b> to adjust saturation, with <b>Alt</b> to adjust alpha, with <b>Ctrl</b> to adjust lightness" -msgstr "Ajustement de la <b>teinte</b> : valeur précédente %.3g, désormais <b>%.3g</b> (diff. %.3g) ; <b>Maj</b> pour ajuster la saturation, <b>Ctrl</b> pour ajuster la luminosité, <b>Alt</b> pour ajuster l'opacité" +msgid "" +"Adjusting <b>hue</b>: was %.3g, now <b>%.3g</b> (diff %.3g); with <b>Shift</" +"b> to adjust saturation, with <b>Alt</b> to adjust alpha, with <b>Ctrl</b> " +"to adjust lightness" +msgstr "" +"Ajustement de la <b>teinte</b> : valeur précédente %.3g, désormais <b>%.3g</" +"b> (diff. %.3g) ; <b>Maj</b> pour ajuster la saturation, <b>Ctrl</b> pour " +"ajuster la luminosité, <b>Alt</b> pour ajuster l'opacité" -#: ../src/ui/widget/selected-style.cpp:1492 -#: ../src/ui/widget/selected-style.cpp:1506 +#: ../src/ui/widget/selected-style.cpp:1495 +#: ../src/ui/widget/selected-style.cpp:1509 msgid "Adjust stroke width" msgstr "Ajustement de l'épaisseur du contour" -#: ../src/ui/widget/selected-style.cpp:1493 +#: ../src/ui/widget/selected-style.cpp:1496 #, c-format msgid "Adjusting <b>stroke width</b>: was %.3g, now <b>%.3g</b> (diff %.3g)" -msgstr "Ajustement de l'<b>épaisseur du contour</b> : de %.3g vers <b>%.3g</b> (diff %.3g)" +msgstr "" +"Ajustement de l'<b>épaisseur du contour</b> : de %.3g vers <b>%.3g</b> (diff " +"%.3g)" #. TRANSLATORS: "Link" means to _link_ two sliders together -#: ../src/ui/widget/spin-scale.cpp:138 -#: ../src/ui/widget/spin-slider.cpp:156 +#: ../src/ui/widget/spin-scale.cpp:138 ../src/ui/widget/spin-slider.cpp:156 msgctxt "Sliders" msgid "Link" msgstr "Lier" -#: ../src/ui/widget/style-swatch.cpp:292 +#: ../src/ui/widget/style-swatch.cpp:293 msgid "L Gradient" msgstr "Dégradé L" -#: ../src/ui/widget/style-swatch.cpp:296 +#: ../src/ui/widget/style-swatch.cpp:297 msgid "R Gradient" msgstr "Dégradé R" -#: ../src/ui/widget/style-swatch.cpp:312 +#: ../src/ui/widget/style-swatch.cpp:313 #, c-format msgid "Fill: %06x/%.3g" msgstr "Remplissage : %06x/%.3g" -#: ../src/ui/widget/style-swatch.cpp:314 +#: ../src/ui/widget/style-swatch.cpp:315 #, c-format msgid "Stroke: %06x/%.3g" msgstr "Contour : %06x/%.3g" -#: ../src/ui/widget/style-swatch.cpp:346 +#: ../src/ui/widget/style-swatch.cpp:347 #, c-format msgid "Stroke width: %.5g%s" msgstr "Épaisseur de contour : %.5g%s" -#: ../src/ui/widget/style-swatch.cpp:362 +#: ../src/ui/widget/style-swatch.cpp:363 #, c-format msgid "O: %2.0f" msgstr "O: %2.0f" -#: ../src/ui/widget/style-swatch.cpp:367 +#: ../src/ui/widget/style-swatch.cpp:368 #, c-format msgid "Opacity: %2.1f %%" msgstr "Opacité : %2.1f %%" @@ -20836,171 +23039,166 @@ msgstr "Boîte 3D : déplacer le point de fuite" #: ../src/vanishing-point.cpp:326 #, c-format msgid "<b>Finite</b> vanishing point shared by <b>%d</b> box" -msgid_plural "<b>Finite</b> vanishing point shared by <b>%d</b> boxes; drag with <b>Shift</b> to separate selected box(es)" +msgid_plural "" +"<b>Finite</b> vanishing point shared by <b>%d</b> boxes; drag with <b>Shift</" +"b> to separate selected box(es)" msgstr[0] "Point de fuite <b>fini</b> partagé par <b>%d</b> boîte" -msgstr[1] "Point de fuite <b>fini</b> partagé par <b>%d</b> boîtes; cliquer-déplacer avec <b>Maj</b> pour séparer les boîte(s) sélectionnée(s)" +msgstr[1] "" +"Point de fuite <b>fini</b> partagé par <b>%d</b> boîtes; cliquer-déplacer " +"avec <b>Maj</b> pour séparer les boîte(s) sélectionnée(s)" #. This won't make sense any more when infinite VPs are not shown on the canvas, #. but currently we update the status message anyway #: ../src/vanishing-point.cpp:333 #, c-format msgid "<b>Infinite</b> vanishing point shared by <b>%d</b> box" -msgid_plural "<b>Infinite</b> vanishing point shared by <b>%d</b> boxes; drag with <b>Shift</b> to separate selected box(es)" +msgid_plural "" +"<b>Infinite</b> vanishing point shared by <b>%d</b> boxes; drag with " +"<b>Shift</b> to separate selected box(es)" msgstr[0] "Point de fuite <b>infini</b> partagé par <b>%d</b> boîte" -msgstr[1] "Point de fuite <b>infini</b> partagé par <b>%d</b> boîtes; cliquer-déplacer avec <b>Maj</b> pour séparer les boîte(s) sélectionnée(s)" +msgstr[1] "" +"Point de fuite <b>infini</b> partagé par <b>%d</b> boîtes; cliquer-déplacer " +"avec <b>Maj</b> pour séparer les boîte(s) sélectionnée(s)" #: ../src/vanishing-point.cpp:341 #, c-format -msgid "shared by <b>%d</b> box; drag with <b>Shift</b> to separate selected box(es)" -msgid_plural "shared by <b>%d</b> boxes; drag with <b>Shift</b> to separate selected box(es)" -msgstr[0] "partagé par <b>%d</b> boîte; déplacer avec <b>Maj</b> pour séparer les boîte(s) sélectionnée(s)" -msgstr[1] "partagé par <b>%d</b> boîtes; déplacer avec <b>Maj</b> pour séparer la boîte sélectionnée" +msgid "" +"shared by <b>%d</b> box; drag with <b>Shift</b> to separate selected box(es)" +msgid_plural "" +"shared by <b>%d</b> boxes; drag with <b>Shift</b> to separate selected box" +"(es)" +msgstr[0] "" +"partagé par <b>%d</b> boîte; déplacer avec <b>Maj</b> pour séparer les boîte" +"(s) sélectionnée(s)" +msgstr[1] "" +"partagé par <b>%d</b> boîtes; déplacer avec <b>Maj</b> pour séparer la boîte " +"sélectionnée" + +#: ../src/verbs.cpp:137 +msgid "File" +msgstr "Fichier" -#: ../src/verbs.cpp:155 -#: ../src/widgets/calligraphy-toolbar.cpp:647 +#: ../src/verbs.cpp:156 ../src/widgets/calligraphy-toolbar.cpp:643 msgid "Edit" msgstr "Édition" -#: ../src/verbs.cpp:231 +#: ../src/verbs.cpp:232 msgid "Context" msgstr "Contexte" -#: ../src/verbs.cpp:250 -#: ../src/verbs.cpp:2167 +#: ../src/verbs.cpp:251 ../src/verbs.cpp:2226 #: ../share/extensions/jessyInk_view.inx.h:1 #: ../share/extensions/polyhedron_3d.inx.h:26 msgid "View" msgstr "Vue" -#: ../src/verbs.cpp:270 +#: ../src/verbs.cpp:271 msgid "Dialog" msgstr "Boîte de dialogue" -#: ../src/verbs.cpp:327 -#: ../share/extensions/lorem_ipsum.inx.h:8 -#: ../share/extensions/replace_font.inx.h:11 -#: ../share/extensions/split.inx.h:10 -#: ../share/extensions/text_braille.inx.h:2 -#: ../share/extensions/text_extract.inx.h:14 -#: ../share/extensions/text_flipcase.inx.h:2 -#: ../share/extensions/text_lowercase.inx.h:2 -#: ../share/extensions/text_randomcase.inx.h:2 -#: ../share/extensions/text_sentencecase.inx.h:2 -#: ../share/extensions/text_titlecase.inx.h:2 -#: ../share/extensions/text_uppercase.inx.h:2 -msgid "Text" -msgstr "Texte" - -#: ../src/verbs.cpp:1174 +#: ../src/verbs.cpp:1227 msgid "Switch to next layer" msgstr "Transférer sur le calque suivant" -#: ../src/verbs.cpp:1175 +#: ../src/verbs.cpp:1228 msgid "Switched to next layer." msgstr "Transféré sur le calque suivant." -#: ../src/verbs.cpp:1177 +#: ../src/verbs.cpp:1230 msgid "Cannot go past last layer." msgstr "Impossible de transférer au-dessus du dernier calque." -#: ../src/verbs.cpp:1186 +#: ../src/verbs.cpp:1239 msgid "Switch to previous layer" msgstr "Transférer sur le calque précédent" -#: ../src/verbs.cpp:1187 +#: ../src/verbs.cpp:1240 msgid "Switched to previous layer." msgstr "Transféré sur le calque précédent." -#: ../src/verbs.cpp:1189 +#: ../src/verbs.cpp:1242 msgid "Cannot go before first layer." msgstr "Impossible de transférer sous le premier calque." -#: ../src/verbs.cpp:1210 -#: ../src/verbs.cpp:1307 -#: ../src/verbs.cpp:1339 -#: ../src/verbs.cpp:1345 -#: ../src/verbs.cpp:1369 -#: ../src/verbs.cpp:1384 +#: ../src/verbs.cpp:1263 ../src/verbs.cpp:1360 ../src/verbs.cpp:1392 +#: ../src/verbs.cpp:1398 ../src/verbs.cpp:1422 ../src/verbs.cpp:1437 msgid "No current layer." msgstr "Aucun calque courant." -#: ../src/verbs.cpp:1239 -#: ../src/verbs.cpp:1243 +#: ../src/verbs.cpp:1292 ../src/verbs.cpp:1296 #, c-format msgid "Raised layer <b>%s</b>." msgstr "Calque <b>%s</b> monté." -#: ../src/verbs.cpp:1240 +#: ../src/verbs.cpp:1293 msgid "Layer to top" msgstr "Calque au premier plan" -#: ../src/verbs.cpp:1244 +#: ../src/verbs.cpp:1297 msgid "Raise layer" msgstr "Monter le calque" -#: ../src/verbs.cpp:1247 -#: ../src/verbs.cpp:1251 +#: ../src/verbs.cpp:1300 ../src/verbs.cpp:1304 #, c-format msgid "Lowered layer <b>%s</b>." msgstr "Calque <b>%s</b> descendu." -#: ../src/verbs.cpp:1248 +#: ../src/verbs.cpp:1301 msgid "Layer to bottom" msgstr "Calque à l'arrière-plan" -#: ../src/verbs.cpp:1252 +#: ../src/verbs.cpp:1305 msgid "Lower layer" msgstr "Descendre le calque" -#: ../src/verbs.cpp:1261 +#: ../src/verbs.cpp:1314 msgid "Cannot move layer any further." msgstr "Impossible de déplacer le calque plus loin." -#: ../src/verbs.cpp:1275 -#: ../src/verbs.cpp:1294 +#: ../src/verbs.cpp:1328 ../src/verbs.cpp:1347 #, c-format msgid "%s copy" msgstr "Copie de %s" -#: ../src/verbs.cpp:1302 +#: ../src/verbs.cpp:1355 msgid "Duplicate layer" msgstr "Dupliquer le calque" #. TRANSLATORS: this means "The layer has been duplicated." -#: ../src/verbs.cpp:1305 +#: ../src/verbs.cpp:1358 msgid "Duplicated layer." msgstr "Calque dupliqué." -#: ../src/verbs.cpp:1334 +#: ../src/verbs.cpp:1387 msgid "Delete layer" msgstr "Supprimer le calque" #. TRANSLATORS: this means "The layer has been deleted." -#: ../src/verbs.cpp:1337 +#: ../src/verbs.cpp:1390 msgid "Deleted layer." msgstr "Calque supprimé." -#: ../src/verbs.cpp:1354 +#: ../src/verbs.cpp:1407 msgid "Show all layers" msgstr "Afficher tous les calques" -#: ../src/verbs.cpp:1359 +#: ../src/verbs.cpp:1412 msgid "Hide all layers" msgstr "Masquer tous les calques" -#: ../src/verbs.cpp:1364 +#: ../src/verbs.cpp:1417 msgid "Lock all layers" msgstr "Verrouiller tous les calques" -#: ../src/verbs.cpp:1378 +#: ../src/verbs.cpp:1431 msgid "Unlock all layers" msgstr "Déverrouiller tous les calques" -#: ../src/verbs.cpp:1452 +#: ../src/verbs.cpp:1515 msgid "Flip horizontally" msgstr "Retourner horizontalement" -#: ../src/verbs.cpp:1457 +#: ../src/verbs.cpp:1520 msgid "Flip vertically" msgstr "Retourner verticalement" @@ -21008,2714 +23206,2895 @@ msgstr "Retourner verticalement" #. 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:2050 +#: ../src/verbs.cpp:2108 msgid "tutorial-basic.svg" msgstr "tutorial-basic.fr.svg" # Name of the displayed file (in Help > tutorials > ...). To be translated if the tutorial has been translated. #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2054 +#: ../src/verbs.cpp:2112 msgid "tutorial-shapes.svg" msgstr "tutorial-shapes.fr.svg" # Name of the displayed file (in Help > tutorials > ...). To be translated if the tutorial has been translated. #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2058 +#: ../src/verbs.cpp:2116 msgid "tutorial-advanced.svg" msgstr "tutorial-advanced.fr.svg" # Name of the displayed file (in Help > tutorials > ...). To be translated if the tutorial has been translated. #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2062 +#: ../src/verbs.cpp:2120 msgid "tutorial-tracing.svg" msgstr "tutorial-tracing.fr.svg" # Name of the displayed file (in Help > tutorials > ...). To be translated if the tutorial has been translated. +#: ../src/verbs.cpp:2123 +#, fuzzy +msgid "tutorial-tracing-pixelart.svg" +msgstr "tutorial-tracing.fr.svg" + +# Name of the displayed file (in Help > tutorials > ...). To be translated if the tutorial has been translated. #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2066 +#: ../src/verbs.cpp:2127 msgid "tutorial-calligraphy.svg" msgstr "tutorial-calligraphy.fr.svg" # Name of the displayed file (in Help > tutorials > ...). To be translated if the tutorial has been translated. #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2070 +#: ../src/verbs.cpp:2131 msgid "tutorial-interpolate.svg" msgstr "tutorial-interpolate.fr.svg" # Name of the displayed file (in Help > tutorials > ...). To be translated if the tutorial has been translated. #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2074 +#: ../src/verbs.cpp:2135 msgid "tutorial-elements.svg" msgstr "tutorial-elements.fr.svg" # Name of the displayed file (in Help > tutorials > ...). To be translated if the tutorial has been translated. #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2078 +#: ../src/verbs.cpp:2139 msgid "tutorial-tips.svg" msgstr "tutorial-tips.fr.svg" -#: ../src/verbs.cpp:2266 -#: ../src/verbs.cpp:2852 +#: ../src/verbs.cpp:2325 ../src/verbs.cpp:2915 msgid "Unlock all objects in the current layer" msgstr "Déverrouiller tous les objets sur le calque courant" -#: ../src/verbs.cpp:2270 -#: ../src/verbs.cpp:2854 +#: ../src/verbs.cpp:2329 ../src/verbs.cpp:2917 msgid "Unlock all objects in all layers" msgstr "Déverouiller tous les objets sur tous les calques" -#: ../src/verbs.cpp:2274 -#: ../src/verbs.cpp:2856 +#: ../src/verbs.cpp:2333 ../src/verbs.cpp:2919 msgid "Unhide all objects in the current layer" msgstr "Montrer tous les objets sur le calque courant" -#: ../src/verbs.cpp:2278 -#: ../src/verbs.cpp:2858 +#: ../src/verbs.cpp:2337 ../src/verbs.cpp:2921 msgid "Unhide all objects in all layers" msgstr "Montrer tous les objets sur tous les calques" -#: ../src/verbs.cpp:2293 +#: ../src/verbs.cpp:2352 msgid "Does nothing" msgstr "Ne fait rien" -#: ../src/verbs.cpp:2296 +#: ../src/verbs.cpp:2355 msgid "Create new document from the default template" msgstr "Créer un nouveau document depuis le modèle par défaut" -#: ../src/verbs.cpp:2298 +#: ../src/verbs.cpp:2357 msgid "_Open..." msgstr "_Ouvrir..." -#: ../src/verbs.cpp:2299 +#: ../src/verbs.cpp:2358 msgid "Open an existing document" msgstr "Ouvrir un document existant" -#: ../src/verbs.cpp:2300 +#: ../src/verbs.cpp:2359 msgid "Re_vert" msgstr "_Recharger" -#: ../src/verbs.cpp:2301 +#: ../src/verbs.cpp:2360 msgid "Revert to the last saved version of document (changes will be lost)" -msgstr "Recharger le dernier enregistrement du document (les changements seront perdus)" +msgstr "" +"Recharger le dernier enregistrement du document (les changements seront " +"perdus)" -#: ../src/verbs.cpp:2302 +#: ../src/verbs.cpp:2361 msgid "Save document" msgstr "Enregistrer le document" -#: ../src/verbs.cpp:2304 +#: ../src/verbs.cpp:2363 msgid "Save _As..." msgstr "Enregistrer _sous..." -#: ../src/verbs.cpp:2305 +#: ../src/verbs.cpp:2364 msgid "Save document under a new name" msgstr "Enregistrer le document sous un nouveau nom" -#: ../src/verbs.cpp:2306 +#: ../src/verbs.cpp:2365 msgid "Save a Cop_y..." msgstr "Enregistrer une cop_ie..." -#: ../src/verbs.cpp:2307 +#: ../src/verbs.cpp:2366 msgid "Save a copy of the document under a new name" msgstr "Enregistrer une copie du document sous un nouveau nom" -#: ../src/verbs.cpp:2308 +#: ../src/verbs.cpp:2367 msgid "_Print..." msgstr "Im_primer..." -#: ../src/verbs.cpp:2308 +#: ../src/verbs.cpp:2367 msgid "Print document" msgstr "Imprimer le document" #. TRANSLATORS: "Vacuum Defs" means "Clean up defs" (so as to remove unused definitions) -#: ../src/verbs.cpp:2311 +#: ../src/verbs.cpp:2370 msgid "Clean _up document" msgstr "Nettoyer le doc_ument" -#: ../src/verbs.cpp:2311 -msgid "Remove unused definitions (such as gradients or clipping paths) from the <defs> of the document" -msgstr "Retirer les définitions inutilisées (comme des dégradés ou des chemins de découpe) des <defs> du document" +#: ../src/verbs.cpp:2370 +msgid "" +"Remove unused definitions (such as gradients or clipping paths) from the <" +"defs> of the document" +msgstr "" +"Retirer les définitions inutilisées (comme des dégradés ou des chemins de " +"découpe) des <defs> du document" -#: ../src/verbs.cpp:2313 +#: ../src/verbs.cpp:2372 msgid "_Import..." msgstr "_Importer..." -#: ../src/verbs.cpp:2314 +#: ../src/verbs.cpp:2373 msgid "Import a bitmap or SVG image into this document" msgstr "Importer une image SVG ou bitmap dans ce document" -#: ../src/verbs.cpp:2315 +#: ../src/verbs.cpp:2374 msgid "_Export Bitmap..." msgstr "E_xporter en bitmap..." -#: ../src/verbs.cpp:2316 +#: ../src/verbs.cpp:2375 msgid "Export this document or a selection as a bitmap image" msgstr "Exporter ce document ou la sélection en image bitmap" -#: ../src/verbs.cpp:2317 +#: ../src/verbs.cpp:2376 msgid "Import Clip Art..." msgstr "Importer un Clip Art..." -#: ../src/verbs.cpp:2318 +#: ../src/verbs.cpp:2377 msgid "Import clipart from Open Clip Art Library" msgstr "Importer depuis la bibliothèque Open Clip Art" #. new FileVerb(SP_VERB_FILE_EXPORT_TO_OCAL, "FileExportToOCAL", N_("Export To Open Clip Art Library"), N_("Export this document to Open Clip Art Library"), INKSCAPE_ICON_DOCUMENT_EXPORT_OCAL), -#: ../src/verbs.cpp:2320 +#: ../src/verbs.cpp:2379 msgid "N_ext Window" msgstr "Fenêtre _suivante" -#: ../src/verbs.cpp:2321 +#: ../src/verbs.cpp:2380 msgid "Switch to the next document window" msgstr "Passer à la fenêtre (document) suivante" -#: ../src/verbs.cpp:2322 +#: ../src/verbs.cpp:2381 msgid "P_revious Window" msgstr "Fenêtre _précédente" -#: ../src/verbs.cpp:2323 +#: ../src/verbs.cpp:2382 msgid "Switch to the previous document window" msgstr "Passer à la fenêtre (document) précédente" -#: ../src/verbs.cpp:2324 +#: ../src/verbs.cpp:2383 msgid "_Close" msgstr "_Fermer" -#: ../src/verbs.cpp:2325 +#: ../src/verbs.cpp:2384 msgid "Close this document window" msgstr "Fermer cette fenêtre document" -#: ../src/verbs.cpp:2326 +#: ../src/verbs.cpp:2385 msgid "_Quit" msgstr "_Quitter" -#: ../src/verbs.cpp:2326 +#: ../src/verbs.cpp:2385 msgid "Quit Inkscape" msgstr "Quitter Inkscape" -#: ../src/verbs.cpp:2329 +#: ../src/verbs.cpp:2386 +#, fuzzy +msgid "_Templates..." +msgstr "_Palettes..." + +#: ../src/verbs.cpp:2387 +#, fuzzy +msgid "Create new project from template" +msgstr "Créer un nouveau document depuis le modèle par défaut" + +#: ../src/verbs.cpp:2390 msgid "Undo last action" msgstr "Annuler la dernière action" -#: ../src/verbs.cpp:2332 +#: ../src/verbs.cpp:2393 msgid "Do again the last undone action" msgstr "Refaire la dernière action annulée" -#: ../src/verbs.cpp:2333 +#: ../src/verbs.cpp:2394 msgid "Cu_t" msgstr "_Couper" -#: ../src/verbs.cpp:2334 +#: ../src/verbs.cpp:2395 msgid "Cut selection to clipboard" msgstr "Couper la sélection vers le presse-papiers" -#: ../src/verbs.cpp:2335 +#: ../src/verbs.cpp:2396 msgid "_Copy" msgstr "Co_pier" -#: ../src/verbs.cpp:2336 +#: ../src/verbs.cpp:2397 msgid "Copy selection to clipboard" msgstr "Copier la sélection vers le presse-papiers" -#: ../src/verbs.cpp:2337 +#: ../src/verbs.cpp:2398 msgid "_Paste" msgstr "C_oller" -#: ../src/verbs.cpp:2338 +#: ../src/verbs.cpp:2399 msgid "Paste objects from clipboard to mouse point, or paste text" -msgstr "Coller les objets du presse-papiers sous le pointeur de souris, ou coller du texte" +msgstr "" +"Coller les objets du presse-papiers sous le pointeur de souris, ou coller du " +"texte" -#: ../src/verbs.cpp:2339 +#: ../src/verbs.cpp:2400 msgid "Paste _Style" msgstr "Coller le st_yle" -#: ../src/verbs.cpp:2340 +#: ../src/verbs.cpp:2401 msgid "Apply the style of the copied object to selection" msgstr "Appliquer le style de l'objet copié à la sélection" -#: ../src/verbs.cpp:2342 +#: ../src/verbs.cpp:2403 msgid "Scale selection to match the size of the copied object" -msgstr "Redimensionner la sélection afin de correspondre aux dimensions de l'objet sélectionné" +msgstr "" +"Redimensionner la sélection afin de correspondre aux dimensions de l'objet " +"sélectionné" -#: ../src/verbs.cpp:2343 +#: ../src/verbs.cpp:2404 msgid "Paste _Width" msgstr "Coller la _largeur" -#: ../src/verbs.cpp:2344 +#: ../src/verbs.cpp:2405 msgid "Scale selection horizontally to match the width of the copied object" -msgstr "Redimensionne horizontalement la sélection afin d'avoir la largeur de l'objet copié" +msgstr "" +"Redimensionne horizontalement la sélection afin d'avoir la largeur de " +"l'objet copié" -#: ../src/verbs.cpp:2345 +#: ../src/verbs.cpp:2406 msgid "Paste _Height" msgstr "Coller la _hauteur" -#: ../src/verbs.cpp:2346 +#: ../src/verbs.cpp:2407 msgid "Scale selection vertically to match the height of the copied object" -msgstr "Redimensionne verticalement la sélection afin d'avoir la hauteur de l'objet copié" +msgstr "" +"Redimensionne verticalement la sélection afin d'avoir la hauteur de l'objet " +"copié" -#: ../src/verbs.cpp:2347 +#: ../src/verbs.cpp:2408 msgid "Paste Size Separately" msgstr "Coller les dimensions séparément" -#: ../src/verbs.cpp:2348 +#: ../src/verbs.cpp:2409 msgid "Scale each selected object to match the size of the copied object" -msgstr "Redimensionner chaque objet sélectionné afin de correspondre aux dimensions de l'objet copié" +msgstr "" +"Redimensionner chaque objet sélectionné afin de correspondre aux dimensions " +"de l'objet copié" -#: ../src/verbs.cpp:2349 +#: ../src/verbs.cpp:2410 msgid "Paste Width Separately" msgstr "Coller la largeur séparément" -#: ../src/verbs.cpp:2350 -msgid "Scale each selected object horizontally to match the width of the copied object" -msgstr "Redimensionner horizontalement chaque objet sélectionné afin de correspondre à la largeur de l'objet copié" +#: ../src/verbs.cpp:2411 +msgid "" +"Scale each selected object horizontally to match the width of the copied " +"object" +msgstr "" +"Redimensionner horizontalement chaque objet sélectionné afin de correspondre " +"à la largeur de l'objet copié" -#: ../src/verbs.cpp:2351 +#: ../src/verbs.cpp:2412 msgid "Paste Height Separately" msgstr "Coller la hauteur séparément" -#: ../src/verbs.cpp:2352 -msgid "Scale each selected object vertically to match the height of the copied object" -msgstr "Redimensionner verticalement chaque objet sélectionné afin de correspondre à la hauteur de l'objet copié" +#: ../src/verbs.cpp:2413 +msgid "" +"Scale each selected object vertically to match the height of the copied " +"object" +msgstr "" +"Redimensionner verticalement chaque objet sélectionné afin de correspondre à " +"la hauteur de l'objet copié" -#: ../src/verbs.cpp:2353 +#: ../src/verbs.cpp:2414 msgid "Paste _In Place" msgstr "Coller sur pl_ace" -#: ../src/verbs.cpp:2354 +#: ../src/verbs.cpp:2415 msgid "Paste objects from clipboard to the original location" msgstr "Coller les objets du presse-papiers à leur emplacement d'origine" -#: ../src/verbs.cpp:2355 +#: ../src/verbs.cpp:2416 msgid "Paste Path _Effect" msgstr "Coller l'effet de chemin" -#: ../src/verbs.cpp:2356 +#: ../src/verbs.cpp:2417 msgid "Apply the path effect of the copied object to selection" msgstr "Appliquer l'effet de chemin de l'objet copié à la sélection" -#: ../src/verbs.cpp:2357 +#: ../src/verbs.cpp:2418 msgid "Remove Path _Effect" msgstr "Supprimer l'_effet de chemin" -#: ../src/verbs.cpp:2358 +#: ../src/verbs.cpp:2419 msgid "Remove any path effects from selected objects" msgstr "Retirer tous les effets de chemin de la sélection" -#: ../src/verbs.cpp:2359 +#: ../src/verbs.cpp:2420 msgid "_Remove Filters" msgstr "Supp_rimer les filtres" -#: ../src/verbs.cpp:2360 +#: ../src/verbs.cpp:2421 msgid "Remove any filters from selected objects" msgstr "Retirer tous les filtres de la sélection" -#: ../src/verbs.cpp:2361 +#: ../src/verbs.cpp:2422 msgid "_Delete" msgstr "_Supprimer" -#: ../src/verbs.cpp:2362 +#: ../src/verbs.cpp:2423 msgid "Delete selection" msgstr "Supprimer la sélection" -#: ../src/verbs.cpp:2363 +#: ../src/verbs.cpp:2424 msgid "Duplic_ate" msgstr "Dupli_quer" -#: ../src/verbs.cpp:2364 +#: ../src/verbs.cpp:2425 msgid "Duplicate selected objects" msgstr "Dupliquer les objets sélectionnés" -#: ../src/verbs.cpp:2365 +#: ../src/verbs.cpp:2426 msgid "Create Clo_ne" msgstr "Créer un clo_ne" -#: ../src/verbs.cpp:2366 +#: ../src/verbs.cpp:2427 msgid "Create a clone (a copy linked to the original) of selected object" msgstr "Créer un clone (une copie liée à l'original) de l'objet sélectionné" -#: ../src/verbs.cpp:2367 +#: ../src/verbs.cpp:2428 msgid "Unlin_k Clone" msgstr "_Délier le clone" -#: ../src/verbs.cpp:2368 -msgid "Cut the selected clones' links to the originals, turning them into standalone objects" -msgstr "Couper le lien entre le clone sélectionné et son original, le transformant en objet indépendant" +#: ../src/verbs.cpp:2429 +msgid "" +"Cut the selected clones' links to the originals, turning them into " +"standalone objects" +msgstr "" +"Couper le lien entre le clone sélectionné et son original, le transformant " +"en objet indépendant" -#: ../src/verbs.cpp:2369 +#: ../src/verbs.cpp:2430 msgid "Relink to Copied" msgstr "Relier à la copie" -#: ../src/verbs.cpp:2370 +#: ../src/verbs.cpp:2431 msgid "Relink the selected clones to the object currently on the clipboard" -msgstr "Relier les clones sélectionnés à l'objet actuellement placé dans le presse-papier" +msgstr "" +"Relier les clones sélectionnés à l'objet actuellement placé dans le presse-" +"papier" -#: ../src/verbs.cpp:2371 +#: ../src/verbs.cpp:2432 msgid "Select _Original" msgstr "Sélectionner l'_original" -#: ../src/verbs.cpp:2372 +#: ../src/verbs.cpp:2433 msgid "Select the object to which the selected clone is linked" msgstr "Sélectionner l'objet auquel le clone sélectionné est lié" -#: ../src/verbs.cpp:2373 +#: ../src/verbs.cpp:2434 msgid "Clone original path (LPE)" msgstr "Cloner le chemin original (LPE)" -#: ../src/verbs.cpp:2374 -msgid "Creates a new path, applies the Clone original LPE, and refers it to the selected path" +#: ../src/verbs.cpp:2435 +msgid "" +"Creates a new path, applies the Clone original LPE, and refers it to the " +"selected path" msgstr "" -#: ../src/verbs.cpp:2375 +#: ../src/verbs.cpp:2436 msgid "Objects to _Marker" msgstr "Objets en _marqueur" -#: ../src/verbs.cpp:2376 +#: ../src/verbs.cpp:2437 msgid "Convert selection to a line marker" msgstr "Transforme la sélection en marqueur de ligne" -#: ../src/verbs.cpp:2377 +#: ../src/verbs.cpp:2438 msgid "Objects to Gu_ides" msgstr "Objets en gu_ides" -#: ../src/verbs.cpp:2378 -msgid "Convert selected objects to a collection of guidelines aligned with their edges" -msgstr "Convertir les objets sélectionnés en une collection de guides alignés avec leurs bords" +#: ../src/verbs.cpp:2439 +msgid "" +"Convert selected objects to a collection of guidelines aligned with their " +"edges" +msgstr "" +"Convertir les objets sélectionnés en une collection de guides alignés avec " +"leurs bords" -#: ../src/verbs.cpp:2379 +#: ../src/verbs.cpp:2440 msgid "Objects to Patter_n" msgstr "Objets en _motif" -#: ../src/verbs.cpp:2380 +#: ../src/verbs.cpp:2441 msgid "Convert selection to a rectangle with tiled pattern fill" msgstr "Convertir la sélection en rectangle rempli par ce motif" -#: ../src/verbs.cpp:2381 +#: ../src/verbs.cpp:2442 msgid "Pattern to _Objects" msgstr "Motif en _objets" -#: ../src/verbs.cpp:2382 +#: ../src/verbs.cpp:2443 msgid "Extract objects from a tiled pattern fill" msgstr "Extraire des objet(s) d'un motif de remplissage" -#: ../src/verbs.cpp:2383 +#: ../src/verbs.cpp:2444 msgid "Group to Symbol" msgstr "Groupe en symbole" -#: ../src/verbs.cpp:2384 +#: ../src/verbs.cpp:2445 msgid "Convert group to a symbol" msgstr "Convertir un groupe en symbole" -#: ../src/verbs.cpp:2385 +#: ../src/verbs.cpp:2446 msgid "Symbol to Group" msgstr "Symbole en groupe" -#: ../src/verbs.cpp:2386 +#: ../src/verbs.cpp:2447 msgid "Extract group from a symbol" msgstr "Extraire un groupe à partir d'un symbole" -#: ../src/verbs.cpp:2387 +#: ../src/verbs.cpp:2448 msgid "Clea_r All" msgstr "Efface_r tout" -#: ../src/verbs.cpp:2388 +#: ../src/verbs.cpp:2449 msgid "Delete all objects from document" msgstr "Supprimer tous les objets du document" -#: ../src/verbs.cpp:2389 +#: ../src/verbs.cpp:2450 msgid "Select Al_l" msgstr "Sélectionner _tout" -#: ../src/verbs.cpp:2390 +#: ../src/verbs.cpp:2451 msgid "Select all objects or all nodes" msgstr "Sélectionner tous les objets ou tous les nÅ“uds" -#: ../src/verbs.cpp:2391 +#: ../src/verbs.cpp:2452 msgid "Select All in All La_yers" msgstr "Tout s_électionner dans tous les calques" -#: ../src/verbs.cpp:2392 +#: ../src/verbs.cpp:2453 msgid "Select all objects in all visible and unlocked layers" -msgstr "Sélectionner tous les objets dans tous les calques visibles et non verrouillés" +msgstr "" +"Sélectionner tous les objets dans tous les calques visibles et non " +"verrouillés" -#: ../src/verbs.cpp:2393 +#: ../src/verbs.cpp:2454 msgid "Fill _and Stroke" msgstr "Remplissage _et contour" -#: ../src/verbs.cpp:2394 -msgid "Select all objects with the same fill and stroke as the selected objects" -msgstr "Sélectionner tous les objets de même remplissage et contour que la sélection" +#: ../src/verbs.cpp:2455 +msgid "" +"Select all objects with the same fill and stroke as the selected objects" +msgstr "" +"Sélectionner tous les objets de même remplissage et contour que la sélection" -#: ../src/verbs.cpp:2395 +#: ../src/verbs.cpp:2456 msgid "_Fill Color" msgstr "Couleur du _remplissage" -#: ../src/verbs.cpp:2396 +#: ../src/verbs.cpp:2457 msgid "Select all objects with the same fill as the selected objects" msgstr "Sélectionner tous les objets de même remplissage que la sélection" -#: ../src/verbs.cpp:2397 +#: ../src/verbs.cpp:2458 msgid "_Stroke Color" msgstr "Couleur du _contour" -#: ../src/verbs.cpp:2398 +#: ../src/verbs.cpp:2459 msgid "Select all objects with the same stroke as the selected objects" msgstr "Sélectionner tous les objets de même contour que la sélection" -#: ../src/verbs.cpp:2399 +#: ../src/verbs.cpp:2460 msgid "Stroke St_yle" msgstr "St_yle du contour" -#: ../src/verbs.cpp:2400 -msgid "Select all objects with the same stroke style (width, dash, markers) as the selected objects" -msgstr "Sélectionner tous les objets de même style de contour (épaisseur, pointillés, marqueurs) que la sélection" +#: ../src/verbs.cpp:2461 +msgid "" +"Select all objects with the same stroke style (width, dash, markers) as the " +"selected objects" +msgstr "" +"Sélectionner tous les objets de même style de contour (épaisseur, " +"pointillés, marqueurs) que la sélection" -#: ../src/verbs.cpp:2401 +#: ../src/verbs.cpp:2462 msgid "_Object Type" msgstr "Type d'_objet" -#: ../src/verbs.cpp:2402 -msgid "Select all objects with the same object type (rect, arc, text, path, bitmap etc) as the selected objects" -msgstr "Sélectionner tous les objets de même type (rectangle, arc, texte, chemin, bitmap, etc.) que la sélection" +#: ../src/verbs.cpp:2463 +msgid "" +"Select all objects with the same object type (rect, arc, text, path, bitmap " +"etc) as the selected objects" +msgstr "" +"Sélectionner tous les objets de même type (rectangle, arc, texte, chemin, " +"bitmap, etc.) que la sélection" -#: ../src/verbs.cpp:2403 +#: ../src/verbs.cpp:2464 msgid "In_vert Selection" msgstr "In_verser la sélection" -#: ../src/verbs.cpp:2404 +#: ../src/verbs.cpp:2465 msgid "Invert selection (unselect what is selected and select everything else)" -msgstr "Inverser la sélection (désélectionner tout ce qui était sélectionné, et sélectionner tout le reste)" +msgstr "" +"Inverser la sélection (désélectionner tout ce qui était sélectionné, et " +"sélectionner tout le reste)" -#: ../src/verbs.cpp:2405 +#: ../src/verbs.cpp:2466 msgid "Invert in All Layers" msgstr "Inverser dans tous les calques" -#: ../src/verbs.cpp:2406 +#: ../src/verbs.cpp:2467 msgid "Invert selection in all visible and unlocked layers" -msgstr "Inverser la sélection dans tous les calques visibles et non verrouillés" +msgstr "" +"Inverser la sélection dans tous les calques visibles et non verrouillés" -#: ../src/verbs.cpp:2407 +#: ../src/verbs.cpp:2468 msgid "Select Next" msgstr "Sélectionner suivant" -#: ../src/verbs.cpp:2408 +#: ../src/verbs.cpp:2469 msgid "Select next object or node" msgstr "Sélectionner l'objet ou nÅ“ud suivant" -#: ../src/verbs.cpp:2409 +#: ../src/verbs.cpp:2470 msgid "Select Previous" msgstr "Sélectionner précédent" -#: ../src/verbs.cpp:2410 +#: ../src/verbs.cpp:2471 msgid "Select previous object or node" msgstr "Sélectionner l'objet ou nÅ“ud précédent" -#: ../src/verbs.cpp:2411 +#: ../src/verbs.cpp:2472 msgid "D_eselect" msgstr "_Désélectionner" -#: ../src/verbs.cpp:2412 +#: ../src/verbs.cpp:2473 msgid "Deselect any selected objects or nodes" msgstr "Désélectionner tous les objets ou nÅ“uds" -#: ../src/verbs.cpp:2413 -msgid "Create _Guides Around the Page" -msgstr "Créer des _guides autour de la page" - -#: ../src/verbs.cpp:2414 -#: ../src/verbs.cpp:2416 +#: ../src/verbs.cpp:2475 ../src/verbs.cpp:2477 msgid "Create four guides aligned with the page borders" msgstr "Crée quatre guides alignés sur les bords de la page" -#: ../src/verbs.cpp:2417 +#: ../src/verbs.cpp:2476 +msgid "Create _Guides Around the Page" +msgstr "Créer des _guides autour de la page" + +#: ../src/verbs.cpp:2478 msgid "Next path effect parameter" msgstr "Paramètre de l'effect de chemin suivant" -#: ../src/verbs.cpp:2418 +#: ../src/verbs.cpp:2479 msgid "Show next editable path effect parameter" msgstr "Afficher le paramètre de l'effet de chemin suivant" #. Selection -#: ../src/verbs.cpp:2421 +#: ../src/verbs.cpp:2482 msgid "Raise to _Top" msgstr "Monter au premier p_lan" -#: ../src/verbs.cpp:2422 +#: ../src/verbs.cpp:2483 msgid "Raise selection to top" msgstr "Monter la sélection au premier plan" -#: ../src/verbs.cpp:2423 +#: ../src/verbs.cpp:2484 msgid "Lower to _Bottom" msgstr "Descendre à l'arrière-pl_an" -#: ../src/verbs.cpp:2424 +#: ../src/verbs.cpp:2485 msgid "Lower selection to bottom" msgstr "Descendre la sélection à l'arrière-plan" -#: ../src/verbs.cpp:2425 +#: ../src/verbs.cpp:2486 msgid "_Raise" msgstr "_Monter" -#: ../src/verbs.cpp:2426 +#: ../src/verbs.cpp:2487 msgid "Raise selection one step" msgstr "Monter la sélection d'un cran" -#: ../src/verbs.cpp:2427 +#: ../src/verbs.cpp:2488 msgid "_Lower" msgstr "D_escendre" -#: ../src/verbs.cpp:2428 +#: ../src/verbs.cpp:2489 msgid "Lower selection one step" msgstr "Descendre la sélection d'un cran" -#: ../src/verbs.cpp:2430 +#: ../src/verbs.cpp:2491 msgid "Group selected objects" msgstr "Grouper les objets sélectionnés" -#: ../src/verbs.cpp:2432 +#: ../src/verbs.cpp:2493 msgid "Ungroup selected groups" msgstr "Dégrouper les groupes sélectionnés" -#: ../src/verbs.cpp:2434 +#: ../src/verbs.cpp:2495 msgid "_Put on Path" msgstr "Mettre _suivant un chemin" -#: ../src/verbs.cpp:2436 +#: ../src/verbs.cpp:2497 msgid "_Remove from Path" msgstr "_Retirer du chemin" -#: ../src/verbs.cpp:2438 +#: ../src/verbs.cpp:2499 msgid "Remove Manual _Kerns" msgstr "Retirer les crénages _manuels" #. 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:2441 +#: ../src/verbs.cpp:2502 msgid "Remove all manual kerns and glyph rotations from a text object" msgstr "Retirer les crénages manuels et rotations de glyphes d'un texte" -#: ../src/verbs.cpp:2443 +#: ../src/verbs.cpp:2504 msgid "_Union" msgstr "_Union" -#: ../src/verbs.cpp:2444 +#: ../src/verbs.cpp:2505 msgid "Create union of selected paths" msgstr "Créer l'union des chemins sélectionnés" -#: ../src/verbs.cpp:2445 +#: ../src/verbs.cpp:2506 msgid "_Intersection" msgstr "_Intersection" -#: ../src/verbs.cpp:2446 +#: ../src/verbs.cpp:2507 msgid "Create intersection of selected paths" msgstr "Créer l'intersection des chemins sélectionnés" -#: ../src/verbs.cpp:2447 +#: ../src/verbs.cpp:2508 msgid "_Difference" msgstr "_Différence" -#: ../src/verbs.cpp:2448 +#: ../src/verbs.cpp:2509 msgid "Create difference of selected paths (bottom minus top)" msgstr "Créer la différence des chemins sélectionnés (dessous moins dessus)" -#: ../src/verbs.cpp:2449 +#: ../src/verbs.cpp:2510 msgid "E_xclusion" msgstr "E_xclusion" -#: ../src/verbs.cpp:2450 -msgid "Create exclusive OR of selected paths (those parts that belong to only one path)" -msgstr "Créer un OU exclusif des chemins sélectionnés (seules les parties qui n'appartiennent qu'à un seul chemin)" +#: ../src/verbs.cpp:2511 +msgid "" +"Create exclusive OR of selected paths (those parts that belong to only one " +"path)" +msgstr "" +"Créer un OU exclusif des chemins sélectionnés (seules les parties qui " +"n'appartiennent qu'à un seul chemin)" -#: ../src/verbs.cpp:2451 +#: ../src/verbs.cpp:2512 msgid "Di_vision" msgstr "Di_vision" -#: ../src/verbs.cpp:2452 +#: ../src/verbs.cpp:2513 msgid "Cut the bottom path into pieces" msgstr "Couper le chemin du dessous en morceaux" #. 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:2455 +#: ../src/verbs.cpp:2516 msgid "Cut _Path" msgstr "Décou_per le chemin" -#: ../src/verbs.cpp:2456 +#: ../src/verbs.cpp:2517 msgid "Cut the bottom path's stroke into pieces, removing fill" msgstr "Couper le contour du chemin du dessous, et supprimer son remplissage" #. 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:2460 +#: ../src/verbs.cpp:2521 msgid "Outs_et" msgstr "Dil_ater" -#: ../src/verbs.cpp:2461 +#: ../src/verbs.cpp:2522 msgid "Outset selected paths" msgstr "Dilater les chemins sélectionnés" -#: ../src/verbs.cpp:2463 +#: ../src/verbs.cpp:2524 msgid "O_utset Path by 1 px" msgstr "_Dilater le chemin de 1px" -#: ../src/verbs.cpp:2464 +#: ../src/verbs.cpp:2525 msgid "Outset selected paths by 1 px" msgstr "Dilater les chemins sélectionnés de 1 px" -#: ../src/verbs.cpp:2466 +#: ../src/verbs.cpp:2527 msgid "O_utset Path by 10 px" msgstr "_Dilater le chemin de 10 px" -#: ../src/verbs.cpp:2467 +#: ../src/verbs.cpp:2528 msgid "Outset selected paths by 10 px" msgstr "Dilater les chemins sélectionnés de 10 px" #. TRANSLATORS: "inset": contract a shape by offsetting the object's path, #. i.e. by displacing it perpendicular to the path in each point. #. See also the Advanced Tutorial for explanation. -#: ../src/verbs.cpp:2471 +#: ../src/verbs.cpp:2532 msgid "I_nset" msgstr "Co_ntracter" -#: ../src/verbs.cpp:2472 +#: ../src/verbs.cpp:2533 msgid "Inset selected paths" msgstr "Contracter les chemins sélectionnés" -#: ../src/verbs.cpp:2474 +#: ../src/verbs.cpp:2535 msgid "I_nset Path by 1 px" msgstr "Co_ntracter le chemin de 1 px" -#: ../src/verbs.cpp:2475 +#: ../src/verbs.cpp:2536 msgid "Inset selected paths by 1 px" msgstr "Contracter les chemins sélectionnés de 1 px" -#: ../src/verbs.cpp:2477 +#: ../src/verbs.cpp:2538 msgid "I_nset Path by 10 px" msgstr "Co_ntracter le chemin de 10 px" -#: ../src/verbs.cpp:2478 +#: ../src/verbs.cpp:2539 msgid "Inset selected paths by 10 px" msgstr "Contracter les chemins sélectionnés de 10 px" -#: ../src/verbs.cpp:2480 +#: ../src/verbs.cpp:2541 msgid "D_ynamic Offset" msgstr "Offset d_ynamique" -#: ../src/verbs.cpp:2480 +#: ../src/verbs.cpp:2541 msgid "Create a dynamic offset object" msgstr "Créer un objet offset dynamique" -#: ../src/verbs.cpp:2482 +#: ../src/verbs.cpp:2543 msgid "_Linked Offset" msgstr "Offset _lié" -#: ../src/verbs.cpp:2483 +#: ../src/verbs.cpp:2544 msgid "Create a dynamic offset object linked to the original path" msgstr "Créer un objet offset dynamique lié au chemin original" -#: ../src/verbs.cpp:2485 +#: ../src/verbs.cpp:2546 msgid "_Stroke to Path" msgstr "_Contour en chemin" -#: ../src/verbs.cpp:2486 +#: ../src/verbs.cpp:2547 msgid "Convert selected object's stroke to paths" msgstr "Convertir les contours des objets sélectionnés en chemins" -#: ../src/verbs.cpp:2487 +#: ../src/verbs.cpp:2548 msgid "Si_mplify" msgstr "Si_mplifier" -#: ../src/verbs.cpp:2488 +#: ../src/verbs.cpp:2549 msgid "Simplify selected paths (remove extra nodes)" msgstr "Simplifier les chemins sélectionnés (supprimer des nÅ“uds superflus)" -#: ../src/verbs.cpp:2489 +#: ../src/verbs.cpp:2550 msgid "_Reverse" msgstr "Invers_er" -#: ../src/verbs.cpp:2490 +#: ../src/verbs.cpp:2551 msgid "Reverse the direction of selected paths (useful for flipping markers)" -msgstr "Inverser la direction des chemins sélectionnés (utile pour retourner des marqueurs)" +msgstr "" +"Inverser la direction des chemins sélectionnés (utile pour retourner des " +"marqueurs)" -#: ../src/verbs.cpp:2493 +#: ../src/verbs.cpp:2554 msgid "Create one or more paths from a bitmap by tracing it" msgstr "Créer un ou plusieurs chemin en vectorisant un bitmap" -#: ../src/verbs.cpp:2494 +#: ../src/verbs.cpp:2555 +#, fuzzy +msgid "Trace Pixel Art..." +msgstr "Vec_toriser le bitmap..." + +#: ../src/verbs.cpp:2556 +msgid "Create paths using Kopf-Lischinski algorithm to vectorize pixel art" +msgstr "" + +#: ../src/verbs.cpp:2557 msgid "Make a _Bitmap Copy" msgstr "Faire une copie bit_map" -#: ../src/verbs.cpp:2495 +#: ../src/verbs.cpp:2558 msgid "Export selection to a bitmap and insert it into document" msgstr "Exporter la sélection en bitmap et insérer celui-ci dans le document" -#: ../src/verbs.cpp:2496 +#: ../src/verbs.cpp:2559 msgid "_Combine" msgstr "Com_biner" -#: ../src/verbs.cpp:2497 +#: ../src/verbs.cpp:2560 msgid "Combine several paths into one" msgstr "Combiner plusieurs chemins en un seul" #. 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:2500 +#: ../src/verbs.cpp:2563 msgid "Break _Apart" msgstr "Sépa_rer" -#: ../src/verbs.cpp:2501 +#: ../src/verbs.cpp:2564 msgid "Break selected paths into subpaths" msgstr "Séparer les chemins sélectionnés en sous-chemins" -#: ../src/verbs.cpp:2502 +#: ../src/verbs.cpp:2565 msgid "Ro_ws and Columns..." msgstr "Li_gnes et colonnes..." -#: ../src/verbs.cpp:2503 +#: ../src/verbs.cpp:2566 msgid "Arrange selected objects in a table" msgstr "Arranger les objets sélectionnés dans une grille" #. Layer -#: ../src/verbs.cpp:2505 +#: ../src/verbs.cpp:2568 msgid "_Add Layer..." msgstr "_Ajouter un calque..." -#: ../src/verbs.cpp:2506 +#: ../src/verbs.cpp:2569 msgid "Create a new layer" msgstr "Créer un nouveau calque" -#: ../src/verbs.cpp:2507 +#: ../src/verbs.cpp:2570 msgid "Re_name Layer..." msgstr "Re_nommer le calque..." -#: ../src/verbs.cpp:2508 +#: ../src/verbs.cpp:2571 msgid "Rename the current layer" msgstr "Renommer le calque courant" -#: ../src/verbs.cpp:2509 +#: ../src/verbs.cpp:2572 msgid "Switch to Layer Abov_e" msgstr "Passer au calque supéri_eur" -#: ../src/verbs.cpp:2510 +#: ../src/verbs.cpp:2573 msgid "Switch to the layer above the current" msgstr "Passer au calque au-dessus du calque courant" -#: ../src/verbs.cpp:2511 +#: ../src/verbs.cpp:2574 msgid "Switch to Layer Belo_w" msgstr "Passer au calque inférie_ur" -#: ../src/verbs.cpp:2512 +#: ../src/verbs.cpp:2575 msgid "Switch to the layer below the current" msgstr "Passer au calque en-dessous du calque courant" -#: ../src/verbs.cpp:2513 +#: ../src/verbs.cpp:2576 msgid "Move Selection to Layer Abo_ve" msgstr "Déplacer la sélection au calque su_périeur" -#: ../src/verbs.cpp:2514 +#: ../src/verbs.cpp:2577 msgid "Move selection to the layer above the current" msgstr "Déplacer la sélection vers le calque au-dessus du calque courant" -#: ../src/verbs.cpp:2515 +#: ../src/verbs.cpp:2578 msgid "Move Selection to Layer Bel_ow" msgstr "Déplacer la sélection au calque in_férieur" -#: ../src/verbs.cpp:2516 +#: ../src/verbs.cpp:2579 msgid "Move selection to the layer below the current" msgstr "Déplacer la sélection vers le calque en-dessous du calque courant" -#: ../src/verbs.cpp:2517 +#: ../src/verbs.cpp:2580 msgid "Move Selection to Layer..." msgstr "Déplacer la sélection vers le calque..." -#: ../src/verbs.cpp:2519 +#: ../src/verbs.cpp:2582 msgid "Layer to _Top" msgstr "Calque au pre_mier plan" -#: ../src/verbs.cpp:2520 +#: ../src/verbs.cpp:2583 msgid "Raise the current layer to the top" msgstr "Monter le calque courant au premier plan" -#: ../src/verbs.cpp:2521 +#: ../src/verbs.cpp:2584 msgid "Layer to _Bottom" msgstr "Calque à l'a_rrière-plan" -#: ../src/verbs.cpp:2522 +#: ../src/verbs.cpp:2585 msgid "Lower the current layer to the bottom" msgstr "Descendre le calque courant à l'arrière-plan" -#: ../src/verbs.cpp:2523 +#: ../src/verbs.cpp:2586 msgid "_Raise Layer" msgstr "M_onter le calque" -#: ../src/verbs.cpp:2524 +#: ../src/verbs.cpp:2587 msgid "Raise the current layer" msgstr "Monter le calque courant" -#: ../src/verbs.cpp:2525 +#: ../src/verbs.cpp:2588 msgid "_Lower Layer" msgstr "Descen_dre le calque" -#: ../src/verbs.cpp:2526 +#: ../src/verbs.cpp:2589 msgid "Lower the current layer" msgstr "Descendre le calque courant" -#: ../src/verbs.cpp:2527 +#: ../src/verbs.cpp:2590 msgid "D_uplicate Current Layer" msgstr "D_upliquer le calque courant" -#: ../src/verbs.cpp:2528 +#: ../src/verbs.cpp:2591 msgid "Duplicate an existing layer" msgstr "Dupliquer un calque existant" -#: ../src/verbs.cpp:2529 +#: ../src/verbs.cpp:2592 msgid "_Delete Current Layer" msgstr "_Supprimer le calque courant" -#: ../src/verbs.cpp:2530 +#: ../src/verbs.cpp:2593 msgid "Delete the current layer" msgstr "Supprimer le calque courant" -#: ../src/verbs.cpp:2531 +#: ../src/verbs.cpp:2594 msgid "_Show/hide other layers" msgstr "Afficher ou masquer les autres calques" -#: ../src/verbs.cpp:2532 +#: ../src/verbs.cpp:2595 msgid "Solo the current layer" msgstr "Afficher le calque courant uniquement" -#: ../src/verbs.cpp:2533 +#: ../src/verbs.cpp:2596 msgid "_Show all layers" msgstr "_Montrer tous les calques" -#: ../src/verbs.cpp:2534 +#: ../src/verbs.cpp:2597 msgid "Show all the layers" msgstr "Afficher tous les calques" -#: ../src/verbs.cpp:2535 +#: ../src/verbs.cpp:2598 msgid "_Hide all layers" msgstr "_Cacher tous les calques" -#: ../src/verbs.cpp:2536 +#: ../src/verbs.cpp:2599 msgid "Hide all the layers" msgstr "Cacher tous les calques" -#: ../src/verbs.cpp:2537 +#: ../src/verbs.cpp:2600 msgid "_Lock all layers" msgstr "_Verrouiller tous les calques" -#: ../src/verbs.cpp:2538 +#: ../src/verbs.cpp:2601 msgid "Lock all the layers" msgstr "Verrouiller tous les calques" -#: ../src/verbs.cpp:2539 +#: ../src/verbs.cpp:2602 msgid "Lock/Unlock _other layers" msgstr "Verrouiller ou libérer les _autres calques" -#: ../src/verbs.cpp:2540 +#: ../src/verbs.cpp:2603 msgid "Lock all the other layers" msgstr "Verrouiller tous les autres calques" -#: ../src/verbs.cpp:2541 +#: ../src/verbs.cpp:2604 msgid "_Unlock all layers" msgstr "_Déverrouiller tous les calques" -#: ../src/verbs.cpp:2542 +#: ../src/verbs.cpp:2605 msgid "Unlock all the layers" msgstr "Déverrouiller tous les calques" -#: ../src/verbs.cpp:2543 +#: ../src/verbs.cpp:2606 msgid "_Lock/Unlock Current Layer" msgstr "Verrouiller ou _libérer le calque courant" -#: ../src/verbs.cpp:2544 +#: ../src/verbs.cpp:2607 msgid "Toggle lock on current layer" msgstr "Afficher le calque courant uniquement" -#: ../src/verbs.cpp:2545 +#: ../src/verbs.cpp:2608 msgid "_Show/hide Current Layer" msgstr "Afficher ou _masquer le calque courant" -#: ../src/verbs.cpp:2546 +#: ../src/verbs.cpp:2609 msgid "Toggle visibility of current layer" msgstr "Afficher le calque courant uniquement" #. Object -#: ../src/verbs.cpp:2549 +#: ../src/verbs.cpp:2612 msgid "Rotate _90° CW" msgstr "Tourner de _90° dans le sens horaire" #. This is shared between tooltips and statusbar, so they #. must use UTF-8, not HTML entities for special characters. -#: ../src/verbs.cpp:2552 +#: ../src/verbs.cpp:2615 msgid "Rotate selection 90° clockwise" msgstr "Tourner la sélection de 90° dans le sens horaire" -#: ../src/verbs.cpp:2553 +#: ../src/verbs.cpp:2616 msgid "Rotate 9_0° CCW" msgstr "Tourner de 9_0° dans le sens anti-horaire" #. This is shared between tooltips and statusbar, so they #. must use UTF-8, not HTML entities for special characters. -#: ../src/verbs.cpp:2556 +#: ../src/verbs.cpp:2619 msgid "Rotate selection 90° counter-clockwise" msgstr "Tourner la sélection de 90° dans le sens anti-horaire" -#: ../src/verbs.cpp:2557 +#: ../src/verbs.cpp:2620 msgid "Remove _Transformations" msgstr "Retirer les _transformations" -#: ../src/verbs.cpp:2558 +#: ../src/verbs.cpp:2621 msgid "Remove transformations from object" msgstr "retirer les transformations de l'objet" -#: ../src/verbs.cpp:2559 +#: ../src/verbs.cpp:2622 msgid "_Object to Path" msgstr "_Objet en chemin" -#: ../src/verbs.cpp:2560 +#: ../src/verbs.cpp:2623 msgid "Convert selected object to path" msgstr "Convertir les objets sélectionnés en chemins" -#: ../src/verbs.cpp:2561 +#: ../src/verbs.cpp:2624 msgid "_Flow into Frame" msgstr "_Encadrer" -#: ../src/verbs.cpp:2562 -msgid "Put text into a frame (path or shape), creating a flowed text linked to the frame object" -msgstr "Placer du texte dans un cadre (chemin ou forme), créant un texte encadré lié à l'objet cadre" +#: ../src/verbs.cpp:2625 +msgid "" +"Put text into a frame (path or shape), creating a flowed text linked to the " +"frame object" +msgstr "" +"Placer du texte dans un cadre (chemin ou forme), créant un texte encadré lié " +"à l'objet cadre" -#: ../src/verbs.cpp:2563 +#: ../src/verbs.cpp:2626 msgid "_Unflow" msgstr "_Désencadrer" -#: ../src/verbs.cpp:2564 +#: ../src/verbs.cpp:2627 msgid "Remove text from frame (creates a single-line text object)" msgstr "Retirer le texte du cadre (crée un objet texte d'une seule ligne)" -#: ../src/verbs.cpp:2565 +#: ../src/verbs.cpp:2628 msgid "_Convert to Text" msgstr "_Convertir en texte" -#: ../src/verbs.cpp:2566 +#: ../src/verbs.cpp:2629 msgid "Convert flowed text to regular text object (preserves appearance)" -msgstr "Convertir du texte encadré en objet texte normal (en préservant l'apparence)" +msgstr "" +"Convertir du texte encadré en objet texte normal (en préservant l'apparence)" -#: ../src/verbs.cpp:2568 +#: ../src/verbs.cpp:2631 msgid "Flip _Horizontal" msgstr "Retourner _horizontalement" -#: ../src/verbs.cpp:2568 +#: ../src/verbs.cpp:2631 msgid "Flip selected objects horizontally" msgstr "Retourner horizontalement les objets sélectionnés" -#: ../src/verbs.cpp:2571 +#: ../src/verbs.cpp:2634 msgid "Flip _Vertical" msgstr "Retourner _verticalement" -#: ../src/verbs.cpp:2571 +#: ../src/verbs.cpp:2634 msgid "Flip selected objects vertically" msgstr "Retourner verticalement les objets sélectionnés" -#: ../src/verbs.cpp:2574 +#: ../src/verbs.cpp:2637 msgid "Apply mask to selection (using the topmost object as mask)" -msgstr "Appliquer un masque à la sélection (en utilisant l'objet le plus au-dessus comme masque)" +msgstr "" +"Appliquer un masque à la sélection (en utilisant l'objet le plus au-dessus " +"comme masque)" -#: ../src/verbs.cpp:2576 +#: ../src/verbs.cpp:2639 msgid "Edit mask" msgstr "Modifier le masque" -#: ../src/verbs.cpp:2577 -#: ../src/verbs.cpp:2583 +#: ../src/verbs.cpp:2640 ../src/verbs.cpp:2646 msgid "_Release" msgstr "_Retirer" -#: ../src/verbs.cpp:2578 +#: ../src/verbs.cpp:2641 msgid "Remove mask from selection" msgstr "Retirer le masque de la sélection" -#: ../src/verbs.cpp:2580 -msgid "Apply clipping path to selection (using the topmost object as clipping path)" -msgstr "Appliquer un chemin de découpe à la sélection (en utilisant l'objet le plus au-dessus comme chemin de découpe)" +#: ../src/verbs.cpp:2643 +msgid "" +"Apply clipping path to selection (using the topmost object as clipping path)" +msgstr "" +"Appliquer un chemin de découpe à la sélection (en utilisant l'objet le plus " +"au-dessus comme chemin de découpe)" -#: ../src/verbs.cpp:2582 +#: ../src/verbs.cpp:2645 msgid "Edit clipping path" msgstr "Modifier le chemin de découpe" -#: ../src/verbs.cpp:2584 +#: ../src/verbs.cpp:2647 msgid "Remove clipping path from selection" msgstr "Retirer le chemin de découpe de la sélection" #. Tools -#: ../src/verbs.cpp:2587 +#: ../src/verbs.cpp:2650 msgctxt "ContextVerb" msgid "Select" msgstr "Sélectionner" -#: ../src/verbs.cpp:2588 +#: ../src/verbs.cpp:2651 msgid "Select and transform objects" msgstr "Sélectionner et transformer des objets" -#: ../src/verbs.cpp:2589 +#: ../src/verbs.cpp:2652 msgctxt "ContextVerb" msgid "Node Edit" msgstr "Éditer les nÅ“uds" -#: ../src/verbs.cpp:2590 +#: ../src/verbs.cpp:2653 msgid "Edit paths by nodes" msgstr "Éditer les nÅ“uds ou les poignées de contrôle d'un chemin" -#: ../src/verbs.cpp:2591 +#: ../src/verbs.cpp:2654 msgctxt "ContextVerb" msgid "Tweak" msgstr "Ajuster" -#: ../src/verbs.cpp:2592 +#: ../src/verbs.cpp:2655 msgid "Tweak objects by sculpting or painting" msgstr "Ajuster les objets en les sculptant ou en les peignant" -#: ../src/verbs.cpp:2593 +#: ../src/verbs.cpp:2656 msgctxt "ContextVerb" msgid "Spray" msgstr "Aérographe" -#: ../src/verbs.cpp:2594 +#: ../src/verbs.cpp:2657 msgid "Spray objects by sculpting or painting" msgstr "Pulvériser les objets en les sculptant ou en les peignant" -#: ../src/verbs.cpp:2595 +#: ../src/verbs.cpp:2658 msgctxt "ContextVerb" msgid "Rectangle" msgstr "Rectangle" -#: ../src/verbs.cpp:2596 +#: ../src/verbs.cpp:2659 msgid "Create rectangles and squares" msgstr "Créer des rectangles et des carrés" -#: ../src/verbs.cpp:2597 +#: ../src/verbs.cpp:2660 msgctxt "ContextVerb" msgid "3D Box" msgstr "Boîte 3D" -#: ../src/verbs.cpp:2598 +#: ../src/verbs.cpp:2661 msgid "Create 3D boxes" msgstr "Créer une boîte 3D" -#: ../src/verbs.cpp:2599 +#: ../src/verbs.cpp:2662 msgctxt "ContextVerb" msgid "Ellipse" msgstr "Ellipse" -#: ../src/verbs.cpp:2600 +#: ../src/verbs.cpp:2663 msgid "Create circles, ellipses, and arcs" msgstr "Créer des cercles, des ellipses et des arcs" -#: ../src/verbs.cpp:2601 +#: ../src/verbs.cpp:2664 msgctxt "ContextVerb" msgid "Star" msgstr "Étoile" -#: ../src/verbs.cpp:2602 +#: ../src/verbs.cpp:2665 msgid "Create stars and polygons" msgstr "Créer des étoiles et des polygones" -#: ../src/verbs.cpp:2603 +#: ../src/verbs.cpp:2666 msgctxt "ContextVerb" msgid "Spiral" msgstr "Spirale" -#: ../src/verbs.cpp:2604 +#: ../src/verbs.cpp:2667 msgid "Create spirals" msgstr "Créer des spirales" -#: ../src/verbs.cpp:2605 +#: ../src/verbs.cpp:2668 msgctxt "ContextVerb" msgid "Pencil" msgstr "Crayon" -#: ../src/verbs.cpp:2606 +#: ../src/verbs.cpp:2669 msgid "Draw freehand lines" msgstr "Dessiner des lignes à main levée" -#: ../src/verbs.cpp:2607 +#: ../src/verbs.cpp:2670 msgctxt "ContextVerb" msgid "Pen" msgstr "Stylo" -#: ../src/verbs.cpp:2608 +#: ../src/verbs.cpp:2671 msgid "Draw Bezier curves and straight lines" msgstr "Tracer des courbes de Bézier et des segments de droites" -#: ../src/verbs.cpp:2609 +#: ../src/verbs.cpp:2672 msgctxt "ContextVerb" msgid "Calligraphy" msgstr "Plume calligraphique" -#: ../src/verbs.cpp:2610 +#: ../src/verbs.cpp:2673 msgid "Draw calligraphic or brush strokes" msgstr "Créer un tracé calligraphique ou au pinceau" -#: ../src/verbs.cpp:2612 +#: ../src/verbs.cpp:2675 msgid "Create and edit text objects" msgstr "Créer et éditer des objets textes" -#: ../src/verbs.cpp:2613 +#: ../src/verbs.cpp:2676 msgctxt "ContextVerb" msgid "Gradient" msgstr "Dégradé" -#: ../src/verbs.cpp:2614 +#: ../src/verbs.cpp:2677 msgid "Create and edit gradients" msgstr "Créer et éditer des dégradés" -#: ../src/verbs.cpp:2615 +#: ../src/verbs.cpp:2678 msgctxt "ContextVerb" msgid "Mesh" msgstr "" -#: ../src/verbs.cpp:2616 +#: ../src/verbs.cpp:2679 msgid "Create and edit meshes" msgstr "Créer et éditer des toiles de dégradés" -#: ../src/verbs.cpp:2617 +#: ../src/verbs.cpp:2680 msgctxt "ContextVerb" msgid "Zoom" msgstr "Zoom" -#: ../src/verbs.cpp:2618 +#: ../src/verbs.cpp:2681 msgid "Zoom in or out" msgstr "(Dé)zoomer" -#: ../src/verbs.cpp:2620 +#: ../src/verbs.cpp:2683 msgid "Measurement tool" msgstr "Outil de mesure" -#: ../src/verbs.cpp:2621 +#: ../src/verbs.cpp:2684 msgctxt "ContextVerb" msgid "Dropper" msgstr "Pipette" -#: ../src/verbs.cpp:2622 -#: ../src/widgets/sp-color-notebook.cpp:411 +#: ../src/verbs.cpp:2685 ../src/widgets/sp-color-notebook.cpp:411 msgid "Pick colors from image" msgstr "Capturer des couleurs depuis l'image" -#: ../src/verbs.cpp:2623 +#: ../src/verbs.cpp:2686 msgctxt "ContextVerb" msgid "Connector" msgstr "Connecteur" -#: ../src/verbs.cpp:2624 +#: ../src/verbs.cpp:2687 msgid "Create diagram connectors" msgstr "Créer des connecteurs" -#: ../src/verbs.cpp:2625 +#: ../src/verbs.cpp:2688 msgctxt "ContextVerb" msgid "Paint Bucket" msgstr "Remplissage au seau" -#: ../src/verbs.cpp:2626 +#: ../src/verbs.cpp:2689 msgid "Fill bounded areas" msgstr "Remplir une zone bornée" -#: ../src/verbs.cpp:2627 +#: ../src/verbs.cpp:2690 msgctxt "ContextVerb" msgid "LPE Edit" msgstr "Édition des effets de chemin en direct" -#: ../src/verbs.cpp:2628 +#: ../src/verbs.cpp:2691 msgid "Edit Path Effect parameters" msgstr "Modifier les paramètres des effets de chemin" -#: ../src/verbs.cpp:2629 +#: ../src/verbs.cpp:2692 msgctxt "ContextVerb" msgid "Eraser" msgstr "Gomme" -#: ../src/verbs.cpp:2630 +#: ../src/verbs.cpp:2693 msgid "Erase existing paths" msgstr "Effacer les chemins existants" -#: ../src/verbs.cpp:2631 +#: ../src/verbs.cpp:2694 msgctxt "ContextVerb" msgid "LPE Tool" msgstr "Outil effets de chemin en direct" -#: ../src/verbs.cpp:2632 +#: ../src/verbs.cpp:2695 msgid "Do geometric constructions" msgstr "Réalise des contructions géométriques" #. Tool prefs -#: ../src/verbs.cpp:2634 +#: ../src/verbs.cpp:2697 msgid "Selector Preferences" msgstr "Préférences du sélecteur" -#: ../src/verbs.cpp:2635 +#: ../src/verbs.cpp:2698 msgid "Open Preferences for the Selector tool" msgstr "Ouvrir les préférences de l'outil sélecteur" -#: ../src/verbs.cpp:2636 +#: ../src/verbs.cpp:2699 msgid "Node Tool Preferences" msgstr "Préférences des nÅ“uds" -#: ../src/verbs.cpp:2637 +#: ../src/verbs.cpp:2700 msgid "Open Preferences for the Node tool" msgstr "Ouvrir les préférences de l'outil nÅ“ud" # flo: je ne suis pas certain du nom bidouillage, à changer si tu as mieux. -#: ../src/verbs.cpp:2638 +#: ../src/verbs.cpp:2701 msgid "Tweak Tool Preferences" msgstr "Préférences de l'outil d'ajustement" -#: ../src/verbs.cpp:2639 +#: ../src/verbs.cpp:2702 msgid "Open Preferences for the Tweak tool" msgstr "Ouvrir les préférences de l'outil d'ajustement" -#: ../src/verbs.cpp:2640 +#: ../src/verbs.cpp:2703 msgid "Spray Tool Preferences" msgstr "Préférences de l'outil aérographe" -#: ../src/verbs.cpp:2641 +#: ../src/verbs.cpp:2704 msgid "Open Preferences for the Spray tool" msgstr "Ouvrir les préférences de l'outil aérographe" -#: ../src/verbs.cpp:2642 +#: ../src/verbs.cpp:2705 msgid "Rectangle Preferences" msgstr "Préférences des rectangles" -#: ../src/verbs.cpp:2643 +#: ../src/verbs.cpp:2706 msgid "Open Preferences for the Rectangle tool" msgstr "Ouvrir les préférences de l'outil rectangle" -#: ../src/verbs.cpp:2644 +#: ../src/verbs.cpp:2707 msgid "3D Box Preferences" msgstr "Préférences des boîtes 3D" -#: ../src/verbs.cpp:2645 +#: ../src/verbs.cpp:2708 msgid "Open Preferences for the 3D Box tool" msgstr "Ouvrir les préférences de l'outil boîte 3D" -#: ../src/verbs.cpp:2646 +#: ../src/verbs.cpp:2709 msgid "Ellipse Preferences" msgstr "Préférences des ellipses" -#: ../src/verbs.cpp:2647 +#: ../src/verbs.cpp:2710 msgid "Open Preferences for the Ellipse tool" msgstr "Ouvrir les préférences de l'outil ellipse" -#: ../src/verbs.cpp:2648 +#: ../src/verbs.cpp:2711 msgid "Star Preferences" msgstr "Préférences des étoiles" -#: ../src/verbs.cpp:2649 +#: ../src/verbs.cpp:2712 msgid "Open Preferences for the Star tool" msgstr "Ouvrir les préférences de l'outil étoile" -#: ../src/verbs.cpp:2650 +#: ../src/verbs.cpp:2713 msgid "Spiral Preferences" msgstr "Préférences des spirales" -#: ../src/verbs.cpp:2651 +#: ../src/verbs.cpp:2714 msgid "Open Preferences for the Spiral tool" msgstr "Ouvrir les préférences de l'outil spirale" -#: ../src/verbs.cpp:2652 +#: ../src/verbs.cpp:2715 msgid "Pencil Preferences" msgstr "Préférences du crayon" -#: ../src/verbs.cpp:2653 +#: ../src/verbs.cpp:2716 msgid "Open Preferences for the Pencil tool" msgstr "Ouvrir les préférences de l'outil crayon" -#: ../src/verbs.cpp:2654 +#: ../src/verbs.cpp:2717 msgid "Pen Preferences" msgstr "Préférences du stylo" -#: ../src/verbs.cpp:2655 +#: ../src/verbs.cpp:2718 msgid "Open Preferences for the Pen tool" msgstr "Ouvrir les préférences de l'outil stylo" -#: ../src/verbs.cpp:2656 +#: ../src/verbs.cpp:2719 msgid "Calligraphic Preferences" msgstr "Préférences de la plume calligraphique" -#: ../src/verbs.cpp:2657 +#: ../src/verbs.cpp:2720 msgid "Open Preferences for the Calligraphy tool" msgstr "Ouvrir les préférences de la plume calligraphique" -#: ../src/verbs.cpp:2658 +#: ../src/verbs.cpp:2721 msgid "Text Preferences" msgstr "Préférences des textes" -#: ../src/verbs.cpp:2659 +#: ../src/verbs.cpp:2722 msgid "Open Preferences for the Text tool" msgstr "Ouvrir les préférences de l'outil texte" -#: ../src/verbs.cpp:2660 +#: ../src/verbs.cpp:2723 msgid "Gradient Preferences" msgstr "Préférences des dégradés" -#: ../src/verbs.cpp:2661 +#: ../src/verbs.cpp:2724 msgid "Open Preferences for the Gradient tool" msgstr "Ouvrir les préférences de l'outil de dégradé" -#: ../src/verbs.cpp:2662 +#: ../src/verbs.cpp:2725 msgid "Mesh Preferences" msgstr "Préférences de l'outil Mesh" -#: ../src/verbs.cpp:2663 +#: ../src/verbs.cpp:2726 msgid "Open Preferences for the Mesh tool" msgstr "Ouvrir les préférences de l'outil de Mesh" -#: ../src/verbs.cpp:2664 +#: ../src/verbs.cpp:2727 msgid "Zoom Preferences" msgstr "Préférences du zoom" -#: ../src/verbs.cpp:2665 +#: ../src/verbs.cpp:2728 msgid "Open Preferences for the Zoom tool" msgstr "Ouvrir les préférences de l'outil zoom" -#: ../src/verbs.cpp:2666 +#: ../src/verbs.cpp:2729 msgid "Measure Preferences" msgstr "Préférences de l'outil de mesure" -#: ../src/verbs.cpp:2667 +#: ../src/verbs.cpp:2730 msgid "Open Preferences for the Measure tool" msgstr "Ouvrir les préférences de l'outil de mesure" -#: ../src/verbs.cpp:2668 +#: ../src/verbs.cpp:2731 msgid "Dropper Preferences" msgstr "Préférences de la pipette" -#: ../src/verbs.cpp:2669 +#: ../src/verbs.cpp:2732 msgid "Open Preferences for the Dropper tool" msgstr "Ouvrir les préférences de l'outil pipette" -#: ../src/verbs.cpp:2670 +#: ../src/verbs.cpp:2733 msgid "Connector Preferences" msgstr "Préférences des connecteurs" -#: ../src/verbs.cpp:2671 +#: ../src/verbs.cpp:2734 msgid "Open Preferences for the Connector tool" msgstr "Ouvrir les préférences de l'outil connecteur" -#: ../src/verbs.cpp:2672 +#: ../src/verbs.cpp:2735 msgid "Paint Bucket Preferences" msgstr "Préférences de remplissage au seau" -#: ../src/verbs.cpp:2673 +#: ../src/verbs.cpp:2736 msgid "Open Preferences for the Paint Bucket tool" msgstr "Ouvrir les préférences de l'outil de remplissage au seau" -#: ../src/verbs.cpp:2674 +#: ../src/verbs.cpp:2737 msgid "Eraser Preferences" msgstr "Préférences de la gomme" -#: ../src/verbs.cpp:2675 +#: ../src/verbs.cpp:2738 msgid "Open Preferences for the Eraser tool" msgstr "Ouvrir les préférences de l'outil gomme" -#: ../src/verbs.cpp:2676 +#: ../src/verbs.cpp:2739 msgid "LPE Tool Preferences" msgstr "Préférences de l'outil Effets de chemin en direct" -#: ../src/verbs.cpp:2677 +#: ../src/verbs.cpp:2740 msgid "Open Preferences for the LPETool tool" msgstr "Ouvrir les préférences de l'outil Effets de chemin en direct" #. Zoom/View -#: ../src/verbs.cpp:2679 +#: ../src/verbs.cpp:2742 msgid "Zoom In" msgstr "Zoomer" -#: ../src/verbs.cpp:2679 +#: ../src/verbs.cpp:2742 msgid "Zoom in" msgstr "Zoomer" -#: ../src/verbs.cpp:2680 +#: ../src/verbs.cpp:2743 msgid "Zoom Out" msgstr "Dézoomer" -#: ../src/verbs.cpp:2680 +#: ../src/verbs.cpp:2743 msgid "Zoom out" msgstr "Dézoomer" -#: ../src/verbs.cpp:2681 +#: ../src/verbs.cpp:2744 msgid "_Rulers" msgstr "_Règles" -#: ../src/verbs.cpp:2681 +#: ../src/verbs.cpp:2744 msgid "Show or hide the canvas rulers" msgstr "Afficher ou non les règles de la zone de travail" -#: ../src/verbs.cpp:2682 +#: ../src/verbs.cpp:2745 msgid "Scroll_bars" msgstr "_Barres de défilement" -#: ../src/verbs.cpp:2682 +#: ../src/verbs.cpp:2745 msgid "Show or hide the canvas scrollbars" msgstr "Afficher ou non les barres de défilement de la zone de travail" -#: ../src/verbs.cpp:2683 +#: ../src/verbs.cpp:2746 msgid "_Grid" msgstr "_Grille" -#: ../src/verbs.cpp:2683 +#: ../src/verbs.cpp:2746 msgid "Show or hide the grid" msgstr "Afficher ou non la grille" -#: ../src/verbs.cpp:2684 +#: ../src/verbs.cpp:2747 msgid "G_uides" msgstr "G_uides" -#: ../src/verbs.cpp:2684 +#: ../src/verbs.cpp:2747 msgid "Show or hide guides (drag from a ruler to create a guide)" -msgstr "Afficher ou non les guides (pour créer un guide, effectuer un cliquer-déplacer depuis une règle)" +msgstr "" +"Afficher ou non les guides (pour créer un guide, effectuer un cliquer-" +"déplacer depuis une règle)" -#: ../src/verbs.cpp:2685 +#: ../src/verbs.cpp:2748 msgid "Enable snapping" msgstr "Activer le magnétisme" -#: ../src/verbs.cpp:2686 +#: ../src/verbs.cpp:2749 msgid "_Commands Bar" msgstr "Barre des _commandes" -#: ../src/verbs.cpp:2686 +#: ../src/verbs.cpp:2749 msgid "Show or hide the Commands bar (under the menu)" msgstr "Afficher ou non la barre des commandes (sous le menu)" -#: ../src/verbs.cpp:2687 +#: ../src/verbs.cpp:2750 msgid "Sn_ap Controls Bar" msgstr "Barre des contrôles du m_agnétisme" -#: ../src/verbs.cpp:2687 +#: ../src/verbs.cpp:2750 msgid "Show or hide the snapping controls" msgstr "Afficher ou non la barre des contrôles du magnétisme" -#: ../src/verbs.cpp:2688 +#: ../src/verbs.cpp:2751 msgid "T_ool Controls Bar" msgstr "Barre des contrôles d'_outils" -#: ../src/verbs.cpp:2688 +#: ../src/verbs.cpp:2751 msgid "Show or hide the Tool Controls bar" msgstr "Afficher ou non la barre des contrôles d'outils" -#: ../src/verbs.cpp:2689 +#: ../src/verbs.cpp:2752 msgid "_Toolbox" msgstr "Boîte à _outils" -#: ../src/verbs.cpp:2689 +#: ../src/verbs.cpp:2752 msgid "Show or hide the main toolbox (on the left)" msgstr "Afficher ou non la boîte à outils principale (à gauche)" -#: ../src/verbs.cpp:2690 +#: ../src/verbs.cpp:2753 msgid "_Palette" msgstr "_Palette" -#: ../src/verbs.cpp:2690 +#: ../src/verbs.cpp:2753 msgid "Show or hide the color palette" msgstr "Afficher ou non la palette de couleurs" -#: ../src/verbs.cpp:2691 +#: ../src/verbs.cpp:2754 msgid "_Statusbar" msgstr "Barre d'_état" -#: ../src/verbs.cpp:2691 +#: ../src/verbs.cpp:2754 msgid "Show or hide the statusbar (at the bottom of the window)" msgstr "Afficher ou non la barre d'état (en bas de la fenêtre)" -#: ../src/verbs.cpp:2692 +#: ../src/verbs.cpp:2755 msgid "Nex_t Zoom" msgstr "Zoom suivan_t" -#: ../src/verbs.cpp:2692 +#: ../src/verbs.cpp:2755 msgid "Next zoom (from the history of zooms)" msgstr "Zoom suivant (dans l'historique des zooms)" -#: ../src/verbs.cpp:2694 +#: ../src/verbs.cpp:2757 msgid "Pre_vious Zoom" msgstr "Zoom _précédent" -#: ../src/verbs.cpp:2694 +#: ../src/verbs.cpp:2757 msgid "Previous zoom (from the history of zooms)" msgstr "Zoom précédent (dans l'historique des zooms)" -#: ../src/verbs.cpp:2696 +#: ../src/verbs.cpp:2759 msgid "Zoom 1:_1" msgstr "Zoom 1:_1" -#: ../src/verbs.cpp:2696 +#: ../src/verbs.cpp:2759 msgid "Zoom to 1:1" msgstr "Zoomer à 1:1" -#: ../src/verbs.cpp:2698 +#: ../src/verbs.cpp:2761 msgid "Zoom 1:_2" msgstr "Zoom 1:_2" -#: ../src/verbs.cpp:2698 +#: ../src/verbs.cpp:2761 msgid "Zoom to 1:2" msgstr "Zoomer à 1:2" -#: ../src/verbs.cpp:2700 +#: ../src/verbs.cpp:2763 msgid "_Zoom 2:1" msgstr "_Zoom 2:1" -#: ../src/verbs.cpp:2700 +#: ../src/verbs.cpp:2763 msgid "Zoom to 2:1" msgstr "Zoomer à 2:1" -#: ../src/verbs.cpp:2703 +#: ../src/verbs.cpp:2766 msgid "_Fullscreen" msgstr "Plein _écran" -#: ../src/verbs.cpp:2703 -#: ../src/verbs.cpp:2705 +#: ../src/verbs.cpp:2766 ../src/verbs.cpp:2768 msgid "Stretch this document window to full screen" msgstr "Afficher cette fenêtre (document) en plein écran" -#: ../src/verbs.cpp:2705 +#: ../src/verbs.cpp:2768 msgid "Fullscreen & Focus Mode" msgstr "Plein écran et mode de _focus" -#: ../src/verbs.cpp:2708 +#: ../src/verbs.cpp:2771 msgid "Toggle _Focus Mode" msgstr "Inverser le mode de _focus" -#: ../src/verbs.cpp:2708 +#: ../src/verbs.cpp:2771 msgid "Remove excess toolbars to focus on drawing" msgstr "Supprime les barres superflues pour se concentrer sur le dessin" -#: ../src/verbs.cpp:2710 +#: ../src/verbs.cpp:2773 msgid "Duplic_ate Window" msgstr "Dupliquer la _fenêtre" -#: ../src/verbs.cpp:2710 +#: ../src/verbs.cpp:2773 msgid "Open a new window with the same document" msgstr "Ouvrir une nouvelle fenêtre avec le même document" -#: ../src/verbs.cpp:2712 +#: ../src/verbs.cpp:2775 msgid "_New View Preview" msgstr "_Nouvel aperçu" -#: ../src/verbs.cpp:2713 +#: ../src/verbs.cpp:2776 msgid "New View Preview" msgstr "Nouvel aperçu" #. "view_new_preview" -#: ../src/verbs.cpp:2715 -#: ../src/verbs.cpp:2723 +#: ../src/verbs.cpp:2778 ../src/verbs.cpp:2786 msgid "_Normal" msgstr "_Normal" -#: ../src/verbs.cpp:2716 +#: ../src/verbs.cpp:2779 msgid "Switch to normal display mode" msgstr "Passer en mode d'affichage normal" -#: ../src/verbs.cpp:2717 +#: ../src/verbs.cpp:2780 msgid "No _Filters" msgstr "Sans _filtre" -#: ../src/verbs.cpp:2718 +#: ../src/verbs.cpp:2781 msgid "Switch to normal display without filters" msgstr "Passer en mode d'affichage normal, sans filtre" -#: ../src/verbs.cpp:2719 +#: ../src/verbs.cpp:2782 msgid "_Outline" msgstr "_Contour" -#: ../src/verbs.cpp:2720 +#: ../src/verbs.cpp:2783 msgid "Switch to outline (wireframe) display mode" msgstr "Passer en mode d'affichage contour (fil de fer)" #. 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:2721 -#: ../src/verbs.cpp:2729 +#: ../src/verbs.cpp:2784 ../src/verbs.cpp:2792 msgid "_Toggle" msgstr "Al_terner" -#: ../src/verbs.cpp:2722 +#: ../src/verbs.cpp:2785 msgid "Toggle between normal and outline display modes" msgstr "Alterner entre les modes d'affichage normal et contour" -#: ../src/verbs.cpp:2724 +#: ../src/verbs.cpp:2787 msgid "Switch to normal color display mode" msgstr "Passer en mode d'affichage de couleur normal" -#: ../src/verbs.cpp:2725 +#: ../src/verbs.cpp:2788 msgid "_Grayscale" msgstr "Niveaux de _gris" -#: ../src/verbs.cpp:2726 +#: ../src/verbs.cpp:2789 msgid "Switch to grayscale display mode" msgstr "Passer en mode d'affichage niveaux de gris" -#: ../src/verbs.cpp:2730 +#: ../src/verbs.cpp:2793 msgid "Toggle between normal and grayscale color display modes" -msgstr "Alterner entre les modes d'affichage de couleur normal et niveaux de gris" +msgstr "" +"Alterner entre les modes d'affichage de couleur normal et niveaux de gris" -#: ../src/verbs.cpp:2732 +#: ../src/verbs.cpp:2795 msgid "Color-managed view" msgstr "Affichage avec gestion des couleurs" -#: ../src/verbs.cpp:2733 +#: ../src/verbs.cpp:2796 msgid "Toggle color-managed display for this document window" -msgstr "Alterner entre le mode d'affichage avec gestion des couleurs et le mode normal pour cette fenêtre de document" +msgstr "" +"Alterner entre le mode d'affichage avec gestion des couleurs et le mode " +"normal pour cette fenêtre de document" -#: ../src/verbs.cpp:2735 +#: ../src/verbs.cpp:2798 msgid "Ico_n Preview..." msgstr "Aperçu d'_icône..." -#: ../src/verbs.cpp:2736 +#: ../src/verbs.cpp:2799 msgid "Open a window to preview objects at different icon resolutions" -msgstr "Ouvrir une fenêtre d'aperçu des objets en icônes à différentes résolutions" +msgstr "" +"Ouvrir une fenêtre d'aperçu des objets en icônes à différentes résolutions" -#: ../src/verbs.cpp:2738 +#: ../src/verbs.cpp:2801 msgid "Zoom to fit page in window" msgstr "Ajuster la page à la fenêtre" -#: ../src/verbs.cpp:2739 +#: ../src/verbs.cpp:2802 msgid "Page _Width" msgstr "_Largeur de la page" -#: ../src/verbs.cpp:2740 +#: ../src/verbs.cpp:2803 msgid "Zoom to fit page width in window" msgstr "Zoomer pour ajuster la largeur de la page à la fenêtre" -#: ../src/verbs.cpp:2742 +#: ../src/verbs.cpp:2805 msgid "Zoom to fit drawing in window" msgstr "Zoomer pour ajuster le dessin à la fenêtre" -#: ../src/verbs.cpp:2744 +#: ../src/verbs.cpp:2807 msgid "Zoom to fit selection in window" msgstr "Zoomer pour ajuster la sélection à la fenêtre" #. Dialogs -#: ../src/verbs.cpp:2747 +#: ../src/verbs.cpp:2810 msgid "P_references..." msgstr "P_références..." -#: ../src/verbs.cpp:2748 +#: ../src/verbs.cpp:2811 msgid "Edit global Inkscape preferences" msgstr "Éditer les préférences globales d'Inkscape" -#: ../src/verbs.cpp:2749 +#: ../src/verbs.cpp:2812 msgid "_Document Properties..." msgstr "Propriétés du do_cument..." -#: ../src/verbs.cpp:2750 +#: ../src/verbs.cpp:2813 msgid "Edit properties of this document (to be saved with the document)" msgstr "Éditer les préférences du document (enregistrées avec celui-ci)" -#: ../src/verbs.cpp:2751 +#: ../src/verbs.cpp:2814 msgid "Document _Metadata..." msgstr "_Métadonnées du document..." -#: ../src/verbs.cpp:2752 +#: ../src/verbs.cpp:2815 msgid "Edit document metadata (to be saved with the document)" msgstr "Éditer les métadonnées du document (enregistrées avec celui-ci)" -#: ../src/verbs.cpp:2754 -msgid "Edit objects' colors, gradients, arrowheads, and other fill and stroke properties..." -msgstr "Éditer les couleurs de l'objet, ses dégradés, les têtes de flèches, et autres propriétés de remplissage et contour..." +#: ../src/verbs.cpp:2817 +msgid "" +"Edit objects' colors, gradients, arrowheads, and other fill and stroke " +"properties..." +msgstr "" +"Éditer les couleurs de l'objet, ses dégradés, les têtes de flèches, et " +"autres propriétés de remplissage et contour..." -#: ../src/verbs.cpp:2755 +#: ../src/verbs.cpp:2818 msgid "Gl_yphs..." msgstr "Gl_yphes..." -#: ../src/verbs.cpp:2756 +#: ../src/verbs.cpp:2819 msgid "Select characters from a glyphs palette" msgstr "Sélectionner des caractères depuis une palette de glyphes" #. TRANSLATORS: "Swatches" means: color samples -#: ../src/verbs.cpp:2758 +#: ../src/verbs.cpp:2821 msgid "S_watches..." msgstr "_Palettes..." -#: ../src/verbs.cpp:2759 +#: ../src/verbs.cpp:2822 msgid "Select colors from a swatches palette" msgstr "Sélectionner des couleurs depuis une palette" -#: ../src/verbs.cpp:2760 +#: ../src/verbs.cpp:2823 msgid "S_ymbols..." msgstr "S_ymboles..." -#: ../src/verbs.cpp:2761 +#: ../src/verbs.cpp:2824 msgid "Select symbol from a symbols palette" msgstr "Sélectionnez un symbole depuis une palette" -#: ../src/verbs.cpp:2762 +#: ../src/verbs.cpp:2825 msgid "Transfor_m..." msgstr "_Transformer..." -#: ../src/verbs.cpp:2763 +#: ../src/verbs.cpp:2826 msgid "Precisely control objects' transformations" msgstr "Contrôler précisément les transformations d'objets" -#: ../src/verbs.cpp:2764 +#: ../src/verbs.cpp:2827 msgid "_Align and Distribute..." msgstr "Aligner et distri_buer..." -#: ../src/verbs.cpp:2765 +#: ../src/verbs.cpp:2828 msgid "Align and distribute objects" msgstr "Aligner et distribuer des objets" -#: ../src/verbs.cpp:2766 +#: ../src/verbs.cpp:2829 msgid "_Spray options..." msgstr "Options du pulvéri_sateur..." -#: ../src/verbs.cpp:2767 +#: ../src/verbs.cpp:2830 msgid "Some options for the spray" msgstr "Options pour l'aérographe" -#: ../src/verbs.cpp:2768 +#: ../src/verbs.cpp:2831 msgid "Undo _History..." msgstr "_Historique des annulations" -#: ../src/verbs.cpp:2769 +#: ../src/verbs.cpp:2832 msgid "Undo History" msgstr "Historique des annulations" -#: ../src/verbs.cpp:2771 +#: ../src/verbs.cpp:2834 msgid "View and select font family, font size and other text properties" -msgstr "Voir et sélectionner une police, une taille de police et autres propriétés de texte" +msgstr "" +"Voir et sélectionner une police, une taille de police et autres propriétés " +"de texte" -#: ../src/verbs.cpp:2772 +#: ../src/verbs.cpp:2835 msgid "_XML Editor..." msgstr "Éditeur _XML..." -#: ../src/verbs.cpp:2773 +#: ../src/verbs.cpp:2836 msgid "View and edit the XML tree of the document" msgstr "Voir et éditer l'arbre XML du document" -#: ../src/verbs.cpp:2774 +#: ../src/verbs.cpp:2837 msgid "_Find/Replace..." msgstr "Rechercher/_remplacer..." -#: ../src/verbs.cpp:2775 +#: ../src/verbs.cpp:2838 msgid "Find objects in document" msgstr "Rechercher des objets dans le document" -#: ../src/verbs.cpp:2776 +#: ../src/verbs.cpp:2839 msgid "Find and _Replace Text..." msgstr "Trouver et _remplacer le texte..." -#: ../src/verbs.cpp:2777 +#: ../src/verbs.cpp:2840 msgid "Find and replace text in document" msgstr "Rechercher et remplacer du texte dans le document" -#: ../src/verbs.cpp:2779 +#: ../src/verbs.cpp:2842 msgid "Check spelling of text in document" msgstr "Vérifier l'orthographe des texte du document" -#: ../src/verbs.cpp:2780 +#: ../src/verbs.cpp:2843 msgid "_Messages..." msgstr "_Messages..." -#: ../src/verbs.cpp:2781 +#: ../src/verbs.cpp:2844 msgid "View debug messages" msgstr "Voir les messages de débuggage" -#: ../src/verbs.cpp:2782 -msgid "S_cripts..." -msgstr "S_cripts..." - -#: ../src/verbs.cpp:2783 -msgid "Run scripts" -msgstr "Exécuter des scripts" - -#: ../src/verbs.cpp:2784 +#: ../src/verbs.cpp:2845 msgid "Show/Hide D_ialogs" msgstr "Afficher/cacher les boîtes de d_ialogue" -#: ../src/verbs.cpp:2785 +#: ../src/verbs.cpp:2846 msgid "Show or hide all open dialogs" msgstr "Afficher ou non les dialogues ouverts" -#: ../src/verbs.cpp:2786 +#: ../src/verbs.cpp:2847 msgid "Create Tiled Clones..." msgstr "Créer un pavage avec des clones..." -#: ../src/verbs.cpp:2787 -msgid "Create multiple clones of selected object, arranging them into a pattern or scattering" -msgstr "Créer des clones multiple d'un objet, et les arranger selon un motif ou les disperser" +#: ../src/verbs.cpp:2848 +msgid "" +"Create multiple clones of selected object, arranging them into a pattern or " +"scattering" +msgstr "" +"Créer des clones multiple d'un objet, et les arranger selon un motif ou les " +"disperser" -#: ../src/verbs.cpp:2788 +#: ../src/verbs.cpp:2849 msgid "_Object attributes..." msgstr "_Attributs de l'objet..." -#: ../src/verbs.cpp:2789 +#: ../src/verbs.cpp:2850 msgid "Edit the object attributes..." msgstr "Éditer les attributs de l'objet..." -#: ../src/verbs.cpp:2791 +#: ../src/verbs.cpp:2852 msgid "Edit the ID, locked and visible status, and other object properties" -msgstr "Editer l'Id, les statuts de visibilité et de verrouillage et autres propriétés des objets" +msgstr "" +"Editer l'Id, les statuts de visibilité et de verrouillage et autres " +"propriétés des objets" -#: ../src/verbs.cpp:2792 +#: ../src/verbs.cpp:2853 msgid "_Input Devices..." msgstr "Périp_hériques de saisie..." -#: ../src/verbs.cpp:2793 +#: ../src/verbs.cpp:2854 msgid "Configure extended input devices, such as a graphics tablet" -msgstr "Configurer les périphériques de saisie étendus, comme une tablette graphique" +msgstr "" +"Configurer les périphériques de saisie étendus, comme une tablette graphique" -#: ../src/verbs.cpp:2794 +#: ../src/verbs.cpp:2855 msgid "_Extensions..." msgstr "_Extensions..." -#: ../src/verbs.cpp:2795 +#: ../src/verbs.cpp:2856 msgid "Query information about extensions" msgstr "Demander des informations à propos des extensions" -#: ../src/verbs.cpp:2796 +#: ../src/verbs.cpp:2857 msgid "Layer_s..." msgstr "_Calques..." -#: ../src/verbs.cpp:2797 +#: ../src/verbs.cpp:2858 msgid "View Layers" msgstr "Afficher les calques" -#: ../src/verbs.cpp:2798 +#: ../src/verbs.cpp:2859 msgid "Path E_ffects ..." msgstr "E_ffets de chemin..." -#: ../src/verbs.cpp:2799 +#: ../src/verbs.cpp:2860 msgid "Manage, edit, and apply path effects" msgstr "Créer, modifier et appliquer des effets de chemin" -#: ../src/verbs.cpp:2800 +#: ../src/verbs.cpp:2861 msgid "Filter _Editor..." msgstr "Édit_eur de filtres..." -#: ../src/verbs.cpp:2801 +#: ../src/verbs.cpp:2862 msgid "Manage, edit, and apply SVG filters" msgstr "Gérer, modifier et appliquer des filtres SVG" -#: ../src/verbs.cpp:2802 +#: ../src/verbs.cpp:2863 msgid "SVG Font Editor..." msgstr "Éditeur de fontes SVG..." -#: ../src/verbs.cpp:2803 +#: ../src/verbs.cpp:2864 msgid "Edit SVG fonts" msgstr "Éditer les fontes SVG" -#: ../src/verbs.cpp:2804 +#: ../src/verbs.cpp:2865 msgid "Print Colors..." msgstr "Imprimer les couleurs..." -#: ../src/verbs.cpp:2805 -msgid "Select which color separations to render in Print Colors Preview rendermode" -msgstr "Sélectionner quelles séparations de couleur afficher en mode aperçu des couleurs d'impression" +#: ../src/verbs.cpp:2866 +msgid "" +"Select which color separations to render in Print Colors Preview rendermode" +msgstr "" +"Sélectionner quelles séparations de couleur afficher en mode aperçu des " +"couleurs d'impression" -#: ../src/verbs.cpp:2806 +#: ../src/verbs.cpp:2867 msgid "_Export PNG Image..." msgstr "_Exporter une image PNG..." -#: ../src/verbs.cpp:2807 +#: ../src/verbs.cpp:2868 msgid "Export this document or a selection as a PNG image" msgstr "Exporter ce document ou une sélection en une image PNG" #. Help -#: ../src/verbs.cpp:2809 +#: ../src/verbs.cpp:2870 msgid "About E_xtensions" msgstr "À propos des e_xtensions" -#: ../src/verbs.cpp:2810 +#: ../src/verbs.cpp:2871 msgid "Information on Inkscape extensions" msgstr "Information sur les extensions d'Inkscape" -#: ../src/verbs.cpp:2811 +#: ../src/verbs.cpp:2872 msgid "About _Memory" msgstr "Gestion _mémoire" -#: ../src/verbs.cpp:2812 +#: ../src/verbs.cpp:2873 msgid "Memory usage information" msgstr "Information sur l'utilisation de la mémoire" -#: ../src/verbs.cpp:2813 +#: ../src/verbs.cpp:2874 msgid "_About Inkscape" msgstr "À _propos d'Inkscape" -#: ../src/verbs.cpp:2814 +#: ../src/verbs.cpp:2875 msgid "Inkscape version, authors, license" msgstr "Version, auteurs et licence d'Inkscape" #. new HelpVerb(SP_VERB_SHOW_LICENSE, "ShowLicense", N_("_License"), #. N_("Distribution terms"), /*"show_license"*/"inkscape_options"), #. Tutorials -#: ../src/verbs.cpp:2819 +#: ../src/verbs.cpp:2880 msgid "Inkscape: _Basic" msgstr "Inkscape : _basique" -#: ../src/verbs.cpp:2820 +#: ../src/verbs.cpp:2881 msgid "Getting started with Inkscape" msgstr "Premiers pas avec Inkscape" #. "tutorial_basic" -#: ../src/verbs.cpp:2821 +#: ../src/verbs.cpp:2882 msgid "Inkscape: _Shapes" msgstr "Inkscape : _formes" -#: ../src/verbs.cpp:2822 +#: ../src/verbs.cpp:2883 msgid "Using shape tools to create and edit shapes" msgstr "Utilisation des outils de formes pour créer et éditer des formes" -#: ../src/verbs.cpp:2823 +#: ../src/verbs.cpp:2884 msgid "Inkscape: _Advanced" msgstr "Inkscape : _avancé" -#: ../src/verbs.cpp:2824 +#: ../src/verbs.cpp:2885 msgid "Advanced Inkscape topics" msgstr "Sujets avancés d'Inkscape" #. "tutorial_advanced" #. TRANSLATORS: "to trace" means "to convert a bitmap to vector graphics" (to vectorize) -#: ../src/verbs.cpp:2826 +#: ../src/verbs.cpp:2887 msgid "Inkscape: T_racing" msgstr "Inkscape : _vectorisation" -#: ../src/verbs.cpp:2827 +#: ../src/verbs.cpp:2888 msgid "Using bitmap tracing" msgstr "Vectorisation de bitmap" #. "tutorial_tracing" -#: ../src/verbs.cpp:2828 +#: ../src/verbs.cpp:2889 +#, fuzzy +msgid "Inkscape: Tracing Pixel Art" +msgstr "Inkscape : _vectorisation" + +#: ../src/verbs.cpp:2890 +msgid "Using Trace Pixel Art dialog" +msgstr "" + +#: ../src/verbs.cpp:2891 msgid "Inkscape: _Calligraphy" msgstr "Inkscape : _calligraphie" -#: ../src/verbs.cpp:2829 +#: ../src/verbs.cpp:2892 msgid "Using the Calligraphy pen tool" msgstr "Utilisation de la plume calligraphique d'Inkscape" -#: ../src/verbs.cpp:2830 +#: ../src/verbs.cpp:2893 msgid "Inkscape: _Interpolate" msgstr "Inkscape : _Interpolation" -#: ../src/verbs.cpp:2831 +#: ../src/verbs.cpp:2894 msgid "Using the interpolate extension" msgstr "Utiliser l'extension Interpoler" #. "tutorial_interpolate" -#: ../src/verbs.cpp:2832 +#: ../src/verbs.cpp:2895 msgid "_Elements of Design" msgstr "Rudiments de _design" -#: ../src/verbs.cpp:2833 +#: ../src/verbs.cpp:2896 msgid "Principles of design in the tutorial form" msgstr "Rudiments de design sous forme de didacticiel" #. "tutorial_design" -#: ../src/verbs.cpp:2834 +#: ../src/verbs.cpp:2897 msgid "_Tips and Tricks" msgstr "_Trucs et astuces" -#: ../src/verbs.cpp:2835 +#: ../src/verbs.cpp:2898 msgid "Miscellaneous tips and tricks" msgstr "Divers trucs et astuces" #. "tutorial_tips" #. Effect -- renamed Extension -#: ../src/verbs.cpp:2838 +#: ../src/verbs.cpp:2901 msgid "Previous Exte_nsion" msgstr "Exte_nsion précédente" -#: ../src/verbs.cpp:2839 +#: ../src/verbs.cpp:2902 msgid "Repeat the last extension with the same settings" msgstr "Répéter la dernière extension avec les mêmes paramètres" -#: ../src/verbs.cpp:2840 +#: ../src/verbs.cpp:2903 msgid "_Previous Extension Settings..." msgstr "_Paramètres de l'extension précédente..." -#: ../src/verbs.cpp:2841 +#: ../src/verbs.cpp:2904 msgid "Repeat the last extension with new settings" msgstr "Répéter la dernière extension avec les nouveaux paramètres" -#: ../src/verbs.cpp:2845 +#: ../src/verbs.cpp:2908 msgid "Fit the page to the current selection" msgstr "Ajuster la page à la sélection courante" -#: ../src/verbs.cpp:2847 +#: ../src/verbs.cpp:2910 msgid "Fit the page to the drawing" msgstr "Ajuster la page au dessin" -#: ../src/verbs.cpp:2849 -msgid "Fit the page to the current selection or the drawing if there is no selection" -msgstr "Ajuster la page à la sélection courante ou au dessin s'il n'y a pas de sélection" +#: ../src/verbs.cpp:2912 +msgid "" +"Fit the page to the current selection or the drawing if there is no selection" +msgstr "" +"Ajuster la page à la sélection courante ou au dessin s'il n'y a pas de " +"sélection" #. LockAndHide -#: ../src/verbs.cpp:2851 +#: ../src/verbs.cpp:2914 msgid "Unlock All" msgstr "Déverrouiller tout" -#: ../src/verbs.cpp:2853 +#: ../src/verbs.cpp:2916 msgid "Unlock All in All Layers" msgstr "Tout déverouiller dans tous les calques" -#: ../src/verbs.cpp:2855 +#: ../src/verbs.cpp:2918 msgid "Unhide All" msgstr "Montrer tout" -#: ../src/verbs.cpp:2857 +#: ../src/verbs.cpp:2920 msgid "Unhide All in All Layers" msgstr "Tout montrer dans tous les calques" -#: ../src/verbs.cpp:2861 +#: ../src/verbs.cpp:2924 msgid "Link an ICC color profile" msgstr "Lier un profil de couleur ICC" -#: ../src/verbs.cpp:2862 +#: ../src/verbs.cpp:2925 msgid "Remove Color Profile" msgstr "Supprimer le profil de couleur" -#: ../src/verbs.cpp:2863 +#: ../src/verbs.cpp:2926 msgid "Remove a linked ICC color profile" msgstr "Supprimer un profil de couleur ICC lié" -#: ../src/verbs.cpp:2886 -#: ../src/verbs.cpp:2887 +#: ../src/verbs.cpp:2929 +#, fuzzy +msgid "Add External Script" +msgstr "Ajouter un programme externe..." + +#: ../src/verbs.cpp:2929 +#, fuzzy +msgid "Add an external script" +msgstr "Ajouter un programme externe..." + +#: ../src/verbs.cpp:2931 +#, fuzzy +msgid "Add Embedded Script" +msgstr "Ajouter un programme incorporé..." + +#: ../src/verbs.cpp:2931 +#, fuzzy +msgid "Add an embedded script" +msgstr "Ajouter un programme incorporé..." + +#: ../src/verbs.cpp:2933 +#, fuzzy +msgid "Edit Embedded Script" +msgstr "Retirer le programme incorporé" + +#: ../src/verbs.cpp:2933 +#, fuzzy +msgid "Edit an embedded script" +msgstr "Retirer le programme incorporé" + +#: ../src/verbs.cpp:2935 +#, fuzzy +msgid "Remove External Script" +msgstr "Supprimer un programme externe" + +#: ../src/verbs.cpp:2935 +#, fuzzy +msgid "Remove an external script" +msgstr "Supprimer un programme externe" + +#: ../src/verbs.cpp:2937 +#, fuzzy +msgid "Remove Embedded Script" +msgstr "Retirer le programme incorporé" + +#: ../src/verbs.cpp:2937 +#, fuzzy +msgid "Remove an embedded script" +msgstr "Retirer le programme incorporé" + +#: ../src/verbs.cpp:2959 ../src/verbs.cpp:2960 msgid "Center on horizontal and vertical axis" msgstr "Centrer horizontalement et verticalement" -#: ../src/widgets/arc-toolbar.cpp:146 +#: ../src/widgets/arc-toolbar.cpp:141 msgid "Arc: Change start/end" msgstr "Arc : déplacer début/fin" -#: ../src/widgets/arc-toolbar.cpp:212 +#: ../src/widgets/arc-toolbar.cpp:207 msgid "Arc: Change open/closed" msgstr "Arc : modifier ouvert/fermé" -#: ../src/widgets/arc-toolbar.cpp:303 -#: ../src/widgets/arc-toolbar.cpp:332 -#: ../src/widgets/rect-toolbar.cpp:259 -#: ../src/widgets/rect-toolbar.cpp:297 -#: ../src/widgets/spiral-toolbar.cpp:229 -#: ../src/widgets/spiral-toolbar.cpp:253 -#: ../src/widgets/star-toolbar.cpp:395 -#: ../src/widgets/star-toolbar.cpp:456 +#: ../src/widgets/arc-toolbar.cpp:298 ../src/widgets/arc-toolbar.cpp:327 +#: ../src/widgets/rect-toolbar.cpp:265 ../src/widgets/rect-toolbar.cpp:303 +#: ../src/widgets/spiral-toolbar.cpp:225 ../src/widgets/spiral-toolbar.cpp:249 +#: ../src/widgets/star-toolbar.cpp:391 ../src/widgets/star-toolbar.cpp:452 msgid "<b>New:</b>" msgstr "<b>Créer :</b>" #. FIXME: implement averaging of all parameters for multiple selected #. gtk_label_set_markup(GTK_LABEL(l), _("<b>Average:</b>")); -#: ../src/widgets/arc-toolbar.cpp:306 -#: ../src/widgets/arc-toolbar.cpp:317 -#: ../src/widgets/rect-toolbar.cpp:267 -#: ../src/widgets/rect-toolbar.cpp:285 -#: ../src/widgets/spiral-toolbar.cpp:231 -#: ../src/widgets/spiral-toolbar.cpp:242 -#: ../src/widgets/star-toolbar.cpp:397 +#: ../src/widgets/arc-toolbar.cpp:301 ../src/widgets/arc-toolbar.cpp:312 +#: ../src/widgets/rect-toolbar.cpp:273 ../src/widgets/rect-toolbar.cpp:291 +#: ../src/widgets/spiral-toolbar.cpp:227 ../src/widgets/spiral-toolbar.cpp:238 +#: ../src/widgets/star-toolbar.cpp:393 msgid "<b>Change:</b>" msgstr "<b>Modifier :</b>" -#: ../src/widgets/arc-toolbar.cpp:341 -msgid "Start:" -msgstr "Début :" - -#: ../src/widgets/arc-toolbar.cpp:342 +#: ../src/widgets/arc-toolbar.cpp:337 msgid "The angle (in degrees) from the horizontal to the arc's start point" msgstr "Angle (en degrés) entre l'horizontale et le début de l'arc" -#: ../src/widgets/arc-toolbar.cpp:354 -msgid "End:" -msgstr "Fin :" - -#: ../src/widgets/arc-toolbar.cpp:355 +#: ../src/widgets/arc-toolbar.cpp:350 msgid "The angle (in degrees) from the horizontal to the arc's end point" msgstr "Angle (en degrés) entre l'horizontale et la fin de l'arc" -#: ../src/widgets/arc-toolbar.cpp:371 +#: ../src/widgets/arc-toolbar.cpp:366 msgid "Closed arc" msgstr "Arc fermé" -#: ../src/widgets/arc-toolbar.cpp:372 +#: ../src/widgets/arc-toolbar.cpp:367 msgid "Switch to segment (closed shape with two radii)" msgstr "Tracer un camembert (forme fermée entre deux rayons)" -#: ../src/widgets/arc-toolbar.cpp:378 +#: ../src/widgets/arc-toolbar.cpp:373 msgid "Open Arc" msgstr "Arc ouvert" -#: ../src/widgets/arc-toolbar.cpp:379 +#: ../src/widgets/arc-toolbar.cpp:374 msgid "Switch to arc (unclosed shape)" msgstr "Tracer un arc (courbe non fermée)" -#: ../src/widgets/arc-toolbar.cpp:402 +#: ../src/widgets/arc-toolbar.cpp:397 msgid "Make whole" msgstr "Refermer" -#: ../src/widgets/arc-toolbar.cpp:403 +#: ../src/widgets/arc-toolbar.cpp:398 msgid "Make the shape a whole ellipse, not arc or segment" msgstr "Transformer en ellipse pleine (pas un arc ou un camembert)" # ligne d'horizon ? #. TODO: use the correct axis here, too -#: ../src/widgets/box3d-toolbar.cpp:253 +#: ../src/widgets/box3d-toolbar.cpp:248 msgid "3D Box: Change perspective (angle of infinite axis)" msgstr "Boîte 3D: changer la perspective (angle de ligne d'horizon)" -#: ../src/widgets/box3d-toolbar.cpp:320 +#: ../src/widgets/box3d-toolbar.cpp:315 msgid "Angle in X direction" msgstr "Angle dans la direction X" #. Translators: PL is short for 'perspective line' -#: ../src/widgets/box3d-toolbar.cpp:322 +#: ../src/widgets/box3d-toolbar.cpp:317 msgid "Angle of PLs in X direction" msgstr "Angle des lignes parallèles dans la direction X" #. Translators: VP is short for 'vanishing point' -#: ../src/widgets/box3d-toolbar.cpp:344 +#: ../src/widgets/box3d-toolbar.cpp:339 msgid "State of VP in X direction" msgstr "État du point de fuite dans la direction X" -#: ../src/widgets/box3d-toolbar.cpp:345 +#: ../src/widgets/box3d-toolbar.cpp:340 msgid "Toggle VP in X direction between 'finite' and 'infinite' (=parallel)" -msgstr "Alterner le point de fuite dans la direction X entre « fini » et « infini » (=parallèles)" +msgstr "" +"Alterner le point de fuite dans la direction X entre « fini » et " +"« infini » (=parallèles)" -#: ../src/widgets/box3d-toolbar.cpp:360 +#: ../src/widgets/box3d-toolbar.cpp:355 msgid "Angle in Y direction" msgstr "Angle dans la direction Y" -#: ../src/widgets/box3d-toolbar.cpp:360 +#: ../src/widgets/box3d-toolbar.cpp:355 msgid "Angle Y:" msgstr "Angle Y :" #. Translators: PL is short for 'perspective line' -#: ../src/widgets/box3d-toolbar.cpp:362 +#: ../src/widgets/box3d-toolbar.cpp:357 msgid "Angle of PLs in Y direction" msgstr "Angle des lignes parallèles dans la direction Y" #. Translators: VP is short for 'vanishing point' -#: ../src/widgets/box3d-toolbar.cpp:383 +#: ../src/widgets/box3d-toolbar.cpp:378 msgid "State of VP in Y direction" msgstr "État du point de fuite dans la direction Y" -#: ../src/widgets/box3d-toolbar.cpp:384 +#: ../src/widgets/box3d-toolbar.cpp:379 msgid "Toggle VP in Y direction between 'finite' and 'infinite' (=parallel)" -msgstr "Alterner le point de fuite dans la direction Y entre « fini » et « infini » (=parallèles)" +msgstr "" +"Alterner le point de fuite dans la direction Y entre « fini » et " +"« infini » (=parallèles)" -#: ../src/widgets/box3d-toolbar.cpp:399 +#: ../src/widgets/box3d-toolbar.cpp:394 msgid "Angle in Z direction" msgstr "Angle dans la direction Z" #. Translators: PL is short for 'perspective line' -#: ../src/widgets/box3d-toolbar.cpp:401 +#: ../src/widgets/box3d-toolbar.cpp:396 msgid "Angle of PLs in Z direction" msgstr "Angle des lignes parallèles dans la direction Z" #. Translators: VP is short for 'vanishing point' -#: ../src/widgets/box3d-toolbar.cpp:422 +#: ../src/widgets/box3d-toolbar.cpp:417 msgid "State of VP in Z direction" msgstr "État du point de fuite dans la direction Z" -#: ../src/widgets/box3d-toolbar.cpp:423 +#: ../src/widgets/box3d-toolbar.cpp:418 msgid "Toggle VP in Z direction between 'finite' and 'infinite' (=parallel)" -msgstr "Alterner le point de fuite dans la direction Z entre « fini » et « infini » (=parallèles)" +msgstr "" +"Alterner le point de fuite dans la direction Z entre « fini » et " +"« infini » (=parallèles)" #. gint preset_index = ege_select_one_action_get_active( sel ); -#: ../src/widgets/calligraphy-toolbar.cpp:239 -#: ../src/widgets/calligraphy-toolbar.cpp:283 -#: ../src/widgets/calligraphy-toolbar.cpp:288 +#: ../src/widgets/calligraphy-toolbar.cpp:235 +#: ../src/widgets/calligraphy-toolbar.cpp:279 +#: ../src/widgets/calligraphy-toolbar.cpp:284 msgid "No preset" msgstr "Aucune présélection" #. Width -#: ../src/widgets/calligraphy-toolbar.cpp:448 -#: ../src/widgets/erasor-toolbar.cpp:146 +#: ../src/widgets/calligraphy-toolbar.cpp:444 +#: ../src/widgets/eraser-toolbar.cpp:142 msgid "(hairline)" msgstr "(sans épaisseur)" #. Mean #. Rotation #. Scale -#: ../src/widgets/calligraphy-toolbar.cpp:448 -#: ../src/widgets/calligraphy-toolbar.cpp:481 -#: ../src/widgets/erasor-toolbar.cpp:146 -#: ../src/widgets/pencil-toolbar.cpp:303 -#: ../src/widgets/spray-toolbar.cpp:129 -#: ../src/widgets/spray-toolbar.cpp:145 -#: ../src/widgets/spray-toolbar.cpp:161 -#: ../src/widgets/spray-toolbar.cpp:221 -#: ../src/widgets/spray-toolbar.cpp:251 -#: ../src/widgets/spray-toolbar.cpp:269 -#: ../src/widgets/tweak-toolbar.cpp:143 -#: ../src/widgets/tweak-toolbar.cpp:160 -#: ../src/widgets/tweak-toolbar.cpp:368 +#: ../src/widgets/calligraphy-toolbar.cpp:444 +#: ../src/widgets/calligraphy-toolbar.cpp:477 +#: ../src/widgets/eraser-toolbar.cpp:142 ../src/widgets/pencil-toolbar.cpp:298 +#: ../src/widgets/spray-toolbar.cpp:125 ../src/widgets/spray-toolbar.cpp:141 +#: ../src/widgets/spray-toolbar.cpp:157 ../src/widgets/spray-toolbar.cpp:217 +#: ../src/widgets/spray-toolbar.cpp:247 ../src/widgets/spray-toolbar.cpp:265 +#: ../src/widgets/tweak-toolbar.cpp:139 ../src/widgets/tweak-toolbar.cpp:156 +#: ../src/widgets/tweak-toolbar.cpp:364 msgid "(default)" msgstr "(défaut)" -#: ../src/widgets/calligraphy-toolbar.cpp:448 -#: ../src/widgets/erasor-toolbar.cpp:146 +#: ../src/widgets/calligraphy-toolbar.cpp:444 +#: ../src/widgets/eraser-toolbar.cpp:142 msgid "(broad stroke)" msgstr " (trait large)" -#: ../src/widgets/calligraphy-toolbar.cpp:451 -#: ../src/widgets/erasor-toolbar.cpp:149 +#: ../src/widgets/calligraphy-toolbar.cpp:447 +#: ../src/widgets/eraser-toolbar.cpp:145 msgid "Pen Width" msgstr "Largeur du stylo" -#: ../src/widgets/calligraphy-toolbar.cpp:452 +#: ../src/widgets/calligraphy-toolbar.cpp:448 msgid "The width of the calligraphic pen (relative to the visible canvas area)" msgstr "Largeur de la plume (relativement à la zone de travail visible)" #. Thinning -#: ../src/widgets/calligraphy-toolbar.cpp:465 +#: ../src/widgets/calligraphy-toolbar.cpp:461 msgid "(speed blows up stroke)" msgstr "(la vitesse gonfle le trait)" -#: ../src/widgets/calligraphy-toolbar.cpp:465 +#: ../src/widgets/calligraphy-toolbar.cpp:461 msgid "(slight widening)" msgstr "(léger élargissement)" -#: ../src/widgets/calligraphy-toolbar.cpp:465 +#: ../src/widgets/calligraphy-toolbar.cpp:461 msgid "(constant width)" msgstr "(largeur constante)" -#: ../src/widgets/calligraphy-toolbar.cpp:465 +#: ../src/widgets/calligraphy-toolbar.cpp:461 msgid "(slight thinning, default)" msgstr "(léger amincissement, défaut)" -#: ../src/widgets/calligraphy-toolbar.cpp:465 +#: ../src/widgets/calligraphy-toolbar.cpp:461 msgid "(speed deflates stroke)" msgstr "(la vitesse affine le trait)" -#: ../src/widgets/calligraphy-toolbar.cpp:468 +#: ../src/widgets/calligraphy-toolbar.cpp:464 msgid "Stroke Thinning" msgstr "Amincissement du trait" -#: ../src/widgets/calligraphy-toolbar.cpp:468 +#: ../src/widgets/calligraphy-toolbar.cpp:464 msgid "Thinning:" msgstr "Amincissement :" -#: ../src/widgets/calligraphy-toolbar.cpp:469 -msgid "How much velocity thins the stroke (> 0 makes fast strokes thinner, < 0 makes them broader, 0 makes width independent of velocity)" -msgstr "Largeur du tracé en fonction de la vélocité. (>0 la vitesse du tracé diminue sa largeur, <0 l'augmente, 0 ne l'influence pas)" +#: ../src/widgets/calligraphy-toolbar.cpp:465 +msgid "" +"How much velocity thins the stroke (> 0 makes fast strokes thinner, < 0 " +"makes them broader, 0 makes width independent of velocity)" +msgstr "" +"Largeur du tracé en fonction de la vélocité. (>0 la vitesse du tracé diminue " +"sa largeur, <0 l'augmente, 0 ne l'influence pas)" #. Angle -#: ../src/widgets/calligraphy-toolbar.cpp:481 +#: ../src/widgets/calligraphy-toolbar.cpp:477 msgid "(left edge up)" msgstr "(bord gauche vers le haut)" -#: ../src/widgets/calligraphy-toolbar.cpp:481 +#: ../src/widgets/calligraphy-toolbar.cpp:477 msgid "(horizontal)" msgstr "(horizontal)" -#: ../src/widgets/calligraphy-toolbar.cpp:481 +#: ../src/widgets/calligraphy-toolbar.cpp:477 msgid "(right edge up)" msgstr "(bord droit vers le haut)" -#: ../src/widgets/calligraphy-toolbar.cpp:484 +#: ../src/widgets/calligraphy-toolbar.cpp:480 msgid "Pen Angle" msgstr "Angle du stylo" -#: ../src/widgets/calligraphy-toolbar.cpp:484 -#: ../share/extensions/motion.inx.h:3 -#: ../share/extensions/restack.inx.h:10 -msgid "Angle:" -msgstr "Angle :" - -#: ../src/widgets/calligraphy-toolbar.cpp:485 -msgid "The angle of the pen's nib (in degrees; 0 = horizontal; has no effect if fixation = 0)" -msgstr "Angle de la plume (en degrés; 0 = horizontal; n'a pas d'effet si orientation = 0)" +#: ../src/widgets/calligraphy-toolbar.cpp:481 +msgid "" +"The angle of the pen's nib (in degrees; 0 = horizontal; has no effect if " +"fixation = 0)" +msgstr "" +"Angle de la plume (en degrés; 0 = horizontal; n'a pas d'effet si orientation " +"= 0)" #. Fixation -#: ../src/widgets/calligraphy-toolbar.cpp:499 +#: ../src/widgets/calligraphy-toolbar.cpp:495 msgid "(perpendicular to stroke, \"brush\")" msgstr "(perpendiculaire au tracé, « pinceau »)" -#: ../src/widgets/calligraphy-toolbar.cpp:499 +#: ../src/widgets/calligraphy-toolbar.cpp:495 msgid "(almost fixed, default)" msgstr "(presque fixe, valeur par défaut)" -#: ../src/widgets/calligraphy-toolbar.cpp:499 +#: ../src/widgets/calligraphy-toolbar.cpp:495 msgid "(fixed by Angle, \"pen\")" msgstr "(fixé par un angle, « stylo »)" -#: ../src/widgets/calligraphy-toolbar.cpp:502 +#: ../src/widgets/calligraphy-toolbar.cpp:498 msgid "Fixation" msgstr "Fixité" -#: ../src/widgets/calligraphy-toolbar.cpp:502 +#: ../src/widgets/calligraphy-toolbar.cpp:498 msgid "Fixation:" msgstr "Fixité :" -#: ../src/widgets/calligraphy-toolbar.cpp:503 -msgid "Angle behavior (0 = nib always perpendicular to stroke direction, 100 = fixed angle)" -msgstr "Comportement de l'angle de la plume (0 = toujours perpendiculaire à la direction du tracé, 100 = invariant)" +#: ../src/widgets/calligraphy-toolbar.cpp:499 +msgid "" +"Angle behavior (0 = nib always perpendicular to stroke direction, 100 = " +"fixed angle)" +msgstr "" +"Comportement de l'angle de la plume (0 = toujours perpendiculaire à la " +"direction du tracé, 100 = invariant)" #. Cap Rounding -#: ../src/widgets/calligraphy-toolbar.cpp:515 +#: ../src/widgets/calligraphy-toolbar.cpp:511 msgid "(blunt caps, default)" msgstr "(terminaisons planes, défaut)" -#: ../src/widgets/calligraphy-toolbar.cpp:515 +#: ../src/widgets/calligraphy-toolbar.cpp:511 msgid "(slightly bulging)" msgstr "(légèrement bombées)" -#: ../src/widgets/calligraphy-toolbar.cpp:515 +#: ../src/widgets/calligraphy-toolbar.cpp:511 msgid "(approximately round)" msgstr "(approximativement arrondies)" -#: ../src/widgets/calligraphy-toolbar.cpp:515 +#: ../src/widgets/calligraphy-toolbar.cpp:511 msgid "(long protruding caps)" msgstr "(terminaisons très proéminentes)" -#: ../src/widgets/calligraphy-toolbar.cpp:519 +#: ../src/widgets/calligraphy-toolbar.cpp:515 msgid "Cap rounding" msgstr "Arrondi de la terminaison" -#: ../src/widgets/calligraphy-toolbar.cpp:519 +#: ../src/widgets/calligraphy-toolbar.cpp:515 msgid "Caps:" msgstr "Terminaisons :" -#: ../src/widgets/calligraphy-toolbar.cpp:520 -msgid "Increase to make caps at the ends of strokes protrude more (0 = no caps, 1 = round caps)" -msgstr "Augmenter ce paramètre pour que les extrémités du tracé soient plus proéminentes (0 = pas de terminaison, 1 = terminaison arrondie)" +#: ../src/widgets/calligraphy-toolbar.cpp:516 +msgid "" +"Increase to make caps at the ends of strokes protrude more (0 = no caps, 1 = " +"round caps)" +msgstr "" +"Augmenter ce paramètre pour que les extrémités du tracé soient plus " +"proéminentes (0 = pas de terminaison, 1 = terminaison arrondie)" #. Tremor -#: ../src/widgets/calligraphy-toolbar.cpp:532 +#: ../src/widgets/calligraphy-toolbar.cpp:528 msgid "(smooth line)" msgstr "(ligne douce)" -#: ../src/widgets/calligraphy-toolbar.cpp:532 +#: ../src/widgets/calligraphy-toolbar.cpp:528 msgid "(slight tremor)" msgstr "(léger tremblement)" -#: ../src/widgets/calligraphy-toolbar.cpp:532 +#: ../src/widgets/calligraphy-toolbar.cpp:528 msgid "(noticeable tremor)" msgstr "(tremblement sensible)" -#: ../src/widgets/calligraphy-toolbar.cpp:532 +#: ../src/widgets/calligraphy-toolbar.cpp:528 msgid "(maximum tremor)" msgstr "(tremblement maximum)" -#: ../src/widgets/calligraphy-toolbar.cpp:535 +#: ../src/widgets/calligraphy-toolbar.cpp:531 msgid "Stroke Tremor" msgstr "Appliquer un tremblement au contour" -#: ../src/widgets/calligraphy-toolbar.cpp:535 +#: ../src/widgets/calligraphy-toolbar.cpp:531 msgid "Tremor:" msgstr "Tremblement :" -#: ../src/widgets/calligraphy-toolbar.cpp:536 +#: ../src/widgets/calligraphy-toolbar.cpp:532 msgid "Increase to make strokes rugged and trembling" msgstr "Augmenter ce paramètre pour rendre la plume tremblante et irrégulière" #. Wiggle -#: ../src/widgets/calligraphy-toolbar.cpp:550 +#: ../src/widgets/calligraphy-toolbar.cpp:546 msgid "(no wiggle)" msgstr "(pas d'agitation)" -#: ../src/widgets/calligraphy-toolbar.cpp:550 +#: ../src/widgets/calligraphy-toolbar.cpp:546 msgid "(slight deviation)" msgstr "(légères déviations)" -#: ../src/widgets/calligraphy-toolbar.cpp:550 +#: ../src/widgets/calligraphy-toolbar.cpp:546 msgid "(wild waves and curls)" msgstr "(grandes vagues et boucles)" -#: ../src/widgets/calligraphy-toolbar.cpp:553 +#: ../src/widgets/calligraphy-toolbar.cpp:549 msgid "Pen Wiggle" msgstr "Agitation du stylo" -#: ../src/widgets/calligraphy-toolbar.cpp:553 +#: ../src/widgets/calligraphy-toolbar.cpp:549 msgid "Wiggle:" msgstr "Agitation :" -#: ../src/widgets/calligraphy-toolbar.cpp:554 +#: ../src/widgets/calligraphy-toolbar.cpp:550 msgid "Increase to make the pen waver and wiggle" msgstr "Augmenter ce paramètre pour rendre la plume hésitante et agitée" #. Mass -#: ../src/widgets/calligraphy-toolbar.cpp:567 +#: ../src/widgets/calligraphy-toolbar.cpp:563 msgid "(no inertia)" msgstr "(aucune inertie)" -#: ../src/widgets/calligraphy-toolbar.cpp:567 +#: ../src/widgets/calligraphy-toolbar.cpp:563 msgid "(slight smoothing, default)" msgstr "(lissage léger, valeur par défaut)" -#: ../src/widgets/calligraphy-toolbar.cpp:567 +#: ../src/widgets/calligraphy-toolbar.cpp:563 msgid "(noticeable lagging)" msgstr "(retard sensible)" -#: ../src/widgets/calligraphy-toolbar.cpp:567 +#: ../src/widgets/calligraphy-toolbar.cpp:563 msgid "(maximum inertia)" msgstr "(inertie maximum)" -#: ../src/widgets/calligraphy-toolbar.cpp:570 +#: ../src/widgets/calligraphy-toolbar.cpp:566 msgid "Pen Mass" msgstr "Inertie du stylo" -#: ../src/widgets/calligraphy-toolbar.cpp:570 +#: ../src/widgets/calligraphy-toolbar.cpp:566 msgid "Mass:" msgstr "Inertie :" -#: ../src/widgets/calligraphy-toolbar.cpp:571 +#: ../src/widgets/calligraphy-toolbar.cpp:567 msgid "Increase to make the pen drag behind, as if slowed by inertia" -msgstr "Augmenter ce paramètre pour que la plume traîne, ralentie par son inertie" +msgstr "" +"Augmenter ce paramètre pour que la plume traîne, ralentie par son inertie" -#: ../src/widgets/calligraphy-toolbar.cpp:586 +#: ../src/widgets/calligraphy-toolbar.cpp:582 msgid "Trace Background" msgstr "Tracer selon le fond" -#: ../src/widgets/calligraphy-toolbar.cpp:587 -msgid "Trace the lightness of the background by the width of the pen (white - minimum width, black - maximum width)" -msgstr "Imiter la luminosité de l'arrière-plan avec l'épaisseur du trait (blanc - trait fin, noir - trait épais)" +#: ../src/widgets/calligraphy-toolbar.cpp:583 +msgid "" +"Trace the lightness of the background by the width of the pen (white - " +"minimum width, black - maximum width)" +msgstr "" +"Imiter la luminosité de l'arrière-plan avec l'épaisseur du trait (blanc - " +"trait fin, noir - trait épais)" -#: ../src/widgets/calligraphy-toolbar.cpp:600 +#: ../src/widgets/calligraphy-toolbar.cpp:596 msgid "Use the pressure of the input device to alter the width of the pen" -msgstr "Utiliser la pression du périphérique d'entrée pour modifier la largeur de la plume" +msgstr "" +"Utiliser la pression du périphérique d'entrée pour modifier la largeur de la " +"plume" -#: ../src/widgets/calligraphy-toolbar.cpp:612 +#: ../src/widgets/calligraphy-toolbar.cpp:608 msgid "Tilt" msgstr "Inclinaison" -#: ../src/widgets/calligraphy-toolbar.cpp:613 +#: ../src/widgets/calligraphy-toolbar.cpp:609 msgid "Use the tilt of the input device to alter the angle of the pen's nib" -msgstr "Utiliser l'inclinaison du périphérique d'entrée pour modifier l'angle de la plume" +msgstr "" +"Utiliser l'inclinaison du périphérique d'entrée pour modifier l'angle de la " +"plume" -#: ../src/widgets/calligraphy-toolbar.cpp:628 +#: ../src/widgets/calligraphy-toolbar.cpp:624 msgid "Choose a preset" msgstr "Aucune présélection" -#: ../src/widgets/calligraphy-toolbar.cpp:643 +#: ../src/widgets/calligraphy-toolbar.cpp:639 msgid "Add/Edit Profile" msgstr "Ajouter/éditer profil" -#: ../src/widgets/calligraphy-toolbar.cpp:644 +#: ../src/widgets/calligraphy-toolbar.cpp:640 msgid "Add or edit calligraphic profile" msgstr "Ajouter ou éditer un profil calligraphique" -#: ../src/widgets/connector-toolbar.cpp:136 +#: ../src/widgets/connector-toolbar.cpp:132 msgid "Set connector type: orthogonal" msgstr "Type de connecteur : orthogonal" -#: ../src/widgets/connector-toolbar.cpp:136 +#: ../src/widgets/connector-toolbar.cpp:132 msgid "Set connector type: polyline" msgstr "Type de connecteur : polyligne" -#: ../src/widgets/connector-toolbar.cpp:185 +#: ../src/widgets/connector-toolbar.cpp:181 msgid "Change connector curvature" msgstr "Modifier la courbure du connecteur" -#: ../src/widgets/connector-toolbar.cpp:236 +#: ../src/widgets/connector-toolbar.cpp:232 msgid "Change connector spacing" msgstr "Modifier la marge des connecteurs" -#: ../src/widgets/connector-toolbar.cpp:329 +#: ../src/widgets/connector-toolbar.cpp:325 msgid "Avoid" msgstr "Éviter" -#: ../src/widgets/connector-toolbar.cpp:339 +#: ../src/widgets/connector-toolbar.cpp:335 msgid "Ignore" msgstr "Ignorer" -#: ../src/widgets/connector-toolbar.cpp:350 +#: ../src/widgets/connector-toolbar.cpp:346 msgid "Orthogonal" msgstr "Othogonal" -#: ../src/widgets/connector-toolbar.cpp:351 +#: ../src/widgets/connector-toolbar.cpp:347 msgid "Make connector orthogonal or polyline" msgstr "Rend les connecteurs orthogonaux ou polylignes" -#: ../src/widgets/connector-toolbar.cpp:365 +#: ../src/widgets/connector-toolbar.cpp:361 msgid "Connector Curvature" msgstr "Courbure du connecteur" -#: ../src/widgets/connector-toolbar.cpp:365 +#: ../src/widgets/connector-toolbar.cpp:361 msgid "Curvature:" msgstr "Courbure :" -#: ../src/widgets/connector-toolbar.cpp:366 +#: ../src/widgets/connector-toolbar.cpp:362 msgid "The amount of connectors curvature" msgstr "Quantité de courbure des connecteurs" -#: ../src/widgets/connector-toolbar.cpp:376 +#: ../src/widgets/connector-toolbar.cpp:372 msgid "Connector Spacing" msgstr "Espacement des connecteurs" -#: ../src/widgets/connector-toolbar.cpp:376 +#: ../src/widgets/connector-toolbar.cpp:372 msgid "Spacing:" msgstr "Espacement :" -#: ../src/widgets/connector-toolbar.cpp:377 +#: ../src/widgets/connector-toolbar.cpp:373 msgid "The amount of space left around objects by auto-routing connectors" -msgstr "Espace laissé autour des objets par les connecteurs routés automatiquement" +msgstr "" +"Espace laissé autour des objets par les connecteurs routés automatiquement" -#: ../src/widgets/connector-toolbar.cpp:388 +#: ../src/widgets/connector-toolbar.cpp:384 msgid "Graph" msgstr "Graphe" -#: ../src/widgets/connector-toolbar.cpp:398 +#: ../src/widgets/connector-toolbar.cpp:394 msgid "Connector Length" msgstr "Longueur des connecteurs" -#: ../src/widgets/connector-toolbar.cpp:398 +#: ../src/widgets/connector-toolbar.cpp:394 msgid "Length:" msgstr "Longueur :" -#: ../src/widgets/connector-toolbar.cpp:399 +#: ../src/widgets/connector-toolbar.cpp:395 msgid "Ideal length for connectors when layout is applied" msgstr "Longueur idéale pour les connecteurs après routage" -#: ../src/widgets/connector-toolbar.cpp:411 +#: ../src/widgets/connector-toolbar.cpp:407 msgid "Downwards" msgstr "Vers le bas" -#: ../src/widgets/connector-toolbar.cpp:412 +#: ../src/widgets/connector-toolbar.cpp:408 msgid "Make connectors with end-markers (arrows) point downwards" -msgstr "Faire que les connecteurs avec des marqueurs de fin (des flèches) pointent vers le bas" +msgstr "" +"Faire que les connecteurs avec des marqueurs de fin (des flèches) pointent " +"vers le bas" -#: ../src/widgets/connector-toolbar.cpp:428 +#: ../src/widgets/connector-toolbar.cpp:424 msgid "Do not allow overlapping shapes" msgstr "Ne pas permettre que deux formes se chevauchent" -#: ../src/widgets/dash-selector.cpp:58 +#: ../src/widgets/dash-selector.cpp:59 msgid "Dash pattern" msgstr "Motif de pointillé" -#: ../src/widgets/dash-selector.cpp:75 +#: ../src/widgets/dash-selector.cpp:76 msgid "Pattern offset" msgstr "Décalage du motif" -#: ../src/widgets/desktop-widget.cpp:461 +#: ../src/widgets/desktop-widget.cpp:465 msgid "Zoom drawing if window size changes" msgstr "Zoomer le dessin si les dimensions de la fenêtre sont modifiées" -#: ../src/widgets/desktop-widget.cpp:665 +#: ../src/widgets/desktop-widget.cpp:669 msgid "Cursor coordinates" msgstr "Coordonnées du curseur" -#: ../src/widgets/desktop-widget.cpp:691 +#: ../src/widgets/desktop-widget.cpp:695 msgid "Z:" msgstr "Z :" #. display the initial welcome message in the statusbar -#: ../src/widgets/desktop-widget.cpp:734 -msgid "<b>Welcome to Inkscape!</b> Use shape or freehand tools to create objects; use selector (arrow) to move or transform them." -msgstr "<b>Bienvenue dans Inkscape!</b> Utilisez les formes ou l'outil de dessin à main levée pour créer des objets; utilisez les sélecteurs (flèches) pour les déplacer ou les modifier." +#: ../src/widgets/desktop-widget.cpp:738 +msgid "" +"<b>Welcome to Inkscape!</b> Use shape or freehand tools to create objects; " +"use selector (arrow) to move or transform them." +msgstr "" +"<b>Bienvenue dans Inkscape!</b> Utilisez les formes ou l'outil de dessin à " +"main levée pour créer des objets; utilisez les sélecteurs (flèches) pour les " +"déplacer ou les modifier." -#: ../src/widgets/desktop-widget.cpp:828 +#: ../src/widgets/desktop-widget.cpp:832 msgid "grayscale" msgstr "niveaux de gris" -#: ../src/widgets/desktop-widget.cpp:829 +#: ../src/widgets/desktop-widget.cpp:833 msgid ", grayscale" msgstr ", niveaux de gris" -#: ../src/widgets/desktop-widget.cpp:830 +#: ../src/widgets/desktop-widget.cpp:834 msgid "print colors preview" msgstr "aperçu avant impression" -#: ../src/widgets/desktop-widget.cpp:831 +#: ../src/widgets/desktop-widget.cpp:835 msgid ", print colors preview" msgstr ", aperçu avant impression" -#: ../src/widgets/desktop-widget.cpp:832 +#: ../src/widgets/desktop-widget.cpp:836 msgid "outline" msgstr "contour" -#: ../src/widgets/desktop-widget.cpp:833 +#: ../src/widgets/desktop-widget.cpp:837 msgid "no filters" msgstr "sans filtre" -#: ../src/widgets/desktop-widget.cpp:860 +#: ../src/widgets/desktop-widget.cpp:864 #, c-format msgid "%s%s: %d (%s%s) - Inkscape" msgstr "%s%s: %d (%s%s) - Inkscape" -#: ../src/widgets/desktop-widget.cpp:862 -#: ../src/widgets/desktop-widget.cpp:866 +#: ../src/widgets/desktop-widget.cpp:866 ../src/widgets/desktop-widget.cpp:870 #, c-format msgid "%s%s: %d (%s) - Inkscape" msgstr "%s%s: %d (%s) - Inkscape" -#: ../src/widgets/desktop-widget.cpp:868 +#: ../src/widgets/desktop-widget.cpp:872 #, c-format msgid "%s%s: %d - Inkscape" msgstr "%s%s: %d - Inkscape" -#: ../src/widgets/desktop-widget.cpp:874 +#: ../src/widgets/desktop-widget.cpp:878 #, c-format msgid "%s%s (%s%s) - Inkscape" msgstr "%s%s (%s%s) - Inkscape" -#: ../src/widgets/desktop-widget.cpp:876 -#: ../src/widgets/desktop-widget.cpp:880 +#: ../src/widgets/desktop-widget.cpp:880 ../src/widgets/desktop-widget.cpp:884 #, c-format msgid "%s%s (%s) - Inkscape" msgstr "%s%s (%s) - Inkscape" -#: ../src/widgets/desktop-widget.cpp:882 +#: ../src/widgets/desktop-widget.cpp:886 #, c-format msgid "%s%s - Inkscape" msgstr "%s%s - Inkscape" -#: ../src/widgets/desktop-widget.cpp:1051 +#: ../src/widgets/desktop-widget.cpp:1055 msgid "Color-managed display is <b>enabled</b> in this window" -msgstr "L'affichage avec gestion des couleurs est <b>activé</b> dans cette fenêtre" +msgstr "" +"L'affichage avec gestion des couleurs est <b>activé</b> dans cette fenêtre" -#: ../src/widgets/desktop-widget.cpp:1053 +#: ../src/widgets/desktop-widget.cpp:1057 msgid "Color-managed display is <b>disabled</b> in this window" -msgstr "L'affichage avec gestion des couleurs est <b>désactivé</b> dans cette fenêtre" +msgstr "" +"L'affichage avec gestion des couleurs est <b>désactivé</b> dans cette fenêtre" -#: ../src/widgets/desktop-widget.cpp:1108 +#: ../src/widgets/desktop-widget.cpp:1112 #, c-format msgid "" -"<span weight=\"bold\" size=\"larger\">Save changes to document \"%s\" before closing?</span>\n" +"<span weight=\"bold\" size=\"larger\">Save changes to document \"%s\" before " +"closing?</span>\n" "\n" "If you close without saving, your changes will be discarded." msgstr "" -"<span weight=\"bold\" size=\"larger\">Enregistrer les modifications du document « %s » avant de fermer ?</span>\n" +"<span weight=\"bold\" size=\"larger\">Enregistrer les modifications du " +"document « %s » avant de fermer ?</span>\n" "\n" "Si vous fermez sans enregistrer, vos modifications seront perdues." -#: ../src/widgets/desktop-widget.cpp:1118 -#: ../src/widgets/desktop-widget.cpp:1177 +#: ../src/widgets/desktop-widget.cpp:1122 +#: ../src/widgets/desktop-widget.cpp:1181 msgid "Close _without saving" msgstr "Fermer _sans enregistrer" -#: ../src/widgets/desktop-widget.cpp:1167 +#: ../src/widgets/desktop-widget.cpp:1171 #, c-format msgid "" -"<span weight=\"bold\" size=\"larger\">The file \"%s\" was saved with a format that may cause data loss!</span>\n" +"<span weight=\"bold\" size=\"larger\">The file \"%s\" was saved with a " +"format that may cause data loss!</span>\n" "\n" "Do you want to save this file as Inkscape SVG?" msgstr "" -"<span weight=\"bold\" size=\"larger\">Le fichier « %s » a été enregistré dans un format qui peut causer des pertes de données !</span>\n" +"<span weight=\"bold\" size=\"larger\">Le fichier « %s » a été enregistré " +"dans un format qui peut causer des pertes de données !</span>\n" "\n" "Voulez-vous enregistrer ce fichier au format SVG Inkscape ?" -#: ../src/widgets/desktop-widget.cpp:1179 +#: ../src/widgets/desktop-widget.cpp:1183 msgid "_Save as Inkscape SVG" msgstr "Enregi_strer comme SVG Inkscape" -#: ../src/widgets/desktop-widget.cpp:1389 +#: ../src/widgets/desktop-widget.cpp:1393 msgid "Note:" msgstr "Note :" -#: ../src/widgets/dropper-toolbar.cpp:118 +#: ../src/widgets/dropper-toolbar.cpp:114 msgid "Pick opacity" msgstr "Capturer l'opacité" -#: ../src/widgets/dropper-toolbar.cpp:119 -msgid "Pick both the color and the alpha (transparency) under cursor; otherwise, pick only the visible color premultiplied by alpha" -msgstr "Capturer à la fois la couleur et l'alpha (opacité) sous le curseur; Sinon, ne capturer que la couleur visible prémultipliée par l'alpha" +#: ../src/widgets/dropper-toolbar.cpp:115 +msgid "" +"Pick both the color and the alpha (transparency) under cursor; otherwise, " +"pick only the visible color premultiplied by alpha" +msgstr "" +"Capturer à la fois la couleur et l'alpha (opacité) sous le curseur; Sinon, " +"ne capturer que la couleur visible prémultipliée par l'alpha" -#: ../src/widgets/dropper-toolbar.cpp:122 +#: ../src/widgets/dropper-toolbar.cpp:118 msgid "Pick" msgstr "Capturer" -#: ../src/widgets/dropper-toolbar.cpp:131 +#: ../src/widgets/dropper-toolbar.cpp:127 msgid "Assign opacity" msgstr "Appliquer l'opacité" -#: ../src/widgets/dropper-toolbar.cpp:132 -msgid "If alpha was picked, assign it to selection as fill or stroke transparency" -msgstr "Si l'alpha a été capturé, l'appliquer comme transparence de remplissage ou de contour à la sélection" +#: ../src/widgets/dropper-toolbar.cpp:128 +msgid "" +"If alpha was picked, assign it to selection as fill or stroke transparency" +msgstr "" +"Si l'alpha a été capturé, l'appliquer comme transparence de remplissage ou " +"de contour à la sélection" -#: ../src/widgets/dropper-toolbar.cpp:135 +#: ../src/widgets/dropper-toolbar.cpp:131 msgid "Assign" msgstr "Appliquer" @@ -23723,19 +26102,19 @@ msgstr "Appliquer" msgid "remove" msgstr "supprimer" -#: ../src/widgets/erasor-toolbar.cpp:115 +#: ../src/widgets/eraser-toolbar.cpp:111 msgid "Delete objects touched by the eraser" msgstr "Effacer les objets en contact avec la gomme" -#: ../src/widgets/erasor-toolbar.cpp:121 +#: ../src/widgets/eraser-toolbar.cpp:117 msgid "Cut" msgstr "Couper" -#: ../src/widgets/erasor-toolbar.cpp:122 +#: ../src/widgets/eraser-toolbar.cpp:118 msgid "Cut out from objects" msgstr "Effacer une partie d'objet" -#: ../src/widgets/erasor-toolbar.cpp:150 +#: ../src/widgets/eraser-toolbar.cpp:146 msgid "The width of the eraser pen (relative to the visible canvas area)" msgstr "Largeur de la gomme (relativement à la zone de travail visible)" @@ -23743,13 +26122,11 @@ msgstr "Largeur de la gomme (relativement à la zone de travail visible)" msgid "Change fill rule" msgstr "Modifier la règle de remplissage" -#: ../src/widgets/fill-style.cpp:447 -#: ../src/widgets/fill-style.cpp:526 +#: ../src/widgets/fill-style.cpp:447 ../src/widgets/fill-style.cpp:526 msgid "Set fill color" msgstr "Appliquer une couleur de remplissage" -#: ../src/widgets/fill-style.cpp:447 -#: ../src/widgets/fill-style.cpp:526 +#: ../src/widgets/fill-style.cpp:447 ../src/widgets/fill-style.cpp:526 msgid "Set stroke color" msgstr "Appliquer une couleur de contour" @@ -23769,203 +26146,210 @@ msgstr "Appliquer un motif de remplissage" msgid "Set pattern on stroke" msgstr "Appliquer un motif à un contour" -#: ../src/widgets/font-selector.cpp:135 -#: ../src/widgets/text-toolbar.cpp:966 -#: ../src/widgets/text-toolbar.cpp:1284 +#: ../src/widgets/font-selector.cpp:134 ../src/widgets/text-toolbar.cpp:962 +#: ../src/widgets/text-toolbar.cpp:1275 msgid "Font size" msgstr "Taille de police" #. Family frame -#: ../src/widgets/font-selector.cpp:149 +#: ../src/widgets/font-selector.cpp:148 msgid "Font family" msgstr "Famille de police" #. Style frame -#: ../src/widgets/font-selector.cpp:192 +#: ../src/widgets/font-selector.cpp:191 msgctxt "Font selector" msgid "Style" msgstr "Style" -#: ../src/widgets/font-selector.cpp:243 -#: ../share/extensions/dots.inx.h:3 +#: ../src/widgets/font-selector.cpp:242 ../share/extensions/dots.inx.h:3 msgid "Font size:" msgstr "Taille de police :" -#: ../src/widgets/gradient-selector.cpp:207 +#: ../src/widgets/gradient-selector.cpp:208 msgid "Create a duplicate gradient" msgstr "Dupliquer un dégradé" -#: ../src/widgets/gradient-selector.cpp:217 +#: ../src/widgets/gradient-selector.cpp:218 msgid "Edit gradient" msgstr "Éditer le dégradé" -#: ../src/widgets/gradient-selector.cpp:288 +#: ../src/widgets/gradient-selector.cpp:289 #: ../src/widgets/paint-selector.cpp:244 msgid "Swatch" msgstr "Échantillon" -#: ../src/widgets/gradient-selector.cpp:338 +#: ../src/widgets/gradient-selector.cpp:339 msgid "Rename gradient" msgstr "Renommer le dégradé" -#: ../src/widgets/gradient-toolbar.cpp:170 -#: ../src/widgets/gradient-toolbar.cpp:183 -#: ../src/widgets/gradient-toolbar.cpp:775 -#: ../src/widgets/gradient-toolbar.cpp:1110 -#: ../src/widgets/gradient-toolbar.cpp:1157 +#: ../src/widgets/gradient-toolbar.cpp:171 +#: ../src/widgets/gradient-toolbar.cpp:184 +#: ../src/widgets/gradient-toolbar.cpp:776 +#: ../src/widgets/gradient-toolbar.cpp:1111 +#: ../src/widgets/gradient-toolbar.cpp:1158 msgid "No gradient" msgstr "Pas de dégradés" -#: ../src/widgets/gradient-toolbar.cpp:189 +#: ../src/widgets/gradient-toolbar.cpp:190 msgid "Multiple gradients" msgstr "Plusieurs dégradés" -#: ../src/widgets/gradient-toolbar.cpp:695 +#: ../src/widgets/gradient-toolbar.cpp:696 msgid "Multiple stops" msgstr "Plusieurs stops" -#: ../src/widgets/gradient-toolbar.cpp:793 +#: ../src/widgets/gradient-toolbar.cpp:794 #: ../src/widgets/gradient-vector.cpp:629 msgid "No stops in gradient" msgstr "Il n'y a pas de stop dans le dégradé" -#: ../src/widgets/gradient-toolbar.cpp:946 +#: ../src/widgets/gradient-toolbar.cpp:947 msgid "Assign gradient to object" msgstr "Appliquer un dégradé à un objet" -#: ../src/widgets/gradient-toolbar.cpp:968 +#: ../src/widgets/gradient-toolbar.cpp:969 msgid "Set gradient repeat" msgstr "Défini la répétition du dégradé" -#: ../src/widgets/gradient-toolbar.cpp:1006 +#: ../src/widgets/gradient-toolbar.cpp:1007 #: ../src/widgets/gradient-vector.cpp:740 msgid "Change gradient stop offset" msgstr "Modifier le décalage d'un stop de dégradé" -#: ../src/widgets/gradient-toolbar.cpp:1050 +#: ../src/widgets/gradient-toolbar.cpp:1051 msgid "linear" msgstr "linéaire" -#: ../src/widgets/gradient-toolbar.cpp:1050 +#: ../src/widgets/gradient-toolbar.cpp:1051 msgid "Create linear gradient" msgstr "Créer un dégradé linéaire" -#: ../src/widgets/gradient-toolbar.cpp:1054 +#: ../src/widgets/gradient-toolbar.cpp:1055 msgid "radial" msgstr "radial" -#: ../src/widgets/gradient-toolbar.cpp:1054 +#: ../src/widgets/gradient-toolbar.cpp:1055 msgid "Create radial (elliptic or circular) gradient" msgstr "Créer un dégradé radial (elliptique ou circulaire)" -#: ../src/widgets/gradient-toolbar.cpp:1057 +#: ../src/widgets/gradient-toolbar.cpp:1058 #: ../src/widgets/mesh-toolbar.cpp:211 msgid "New:" msgstr "Créer :" -#: ../src/widgets/gradient-toolbar.cpp:1080 +#: ../src/widgets/gradient-toolbar.cpp:1081 #: ../src/widgets/mesh-toolbar.cpp:234 msgid "fill" msgstr "remplissage" -#: ../src/widgets/gradient-toolbar.cpp:1080 +#: ../src/widgets/gradient-toolbar.cpp:1081 #: ../src/widgets/mesh-toolbar.cpp:234 msgid "Create gradient in the fill" msgstr "Appliquer le dégradé au remplissage" -#: ../src/widgets/gradient-toolbar.cpp:1084 +#: ../src/widgets/gradient-toolbar.cpp:1085 #: ../src/widgets/mesh-toolbar.cpp:238 msgid "stroke" msgstr "contour" -#: ../src/widgets/gradient-toolbar.cpp:1084 +#: ../src/widgets/gradient-toolbar.cpp:1085 #: ../src/widgets/mesh-toolbar.cpp:238 msgid "Create gradient in the stroke" msgstr "Appliquer le dégradé au contour" -#: ../src/widgets/gradient-toolbar.cpp:1087 +#: ../src/widgets/gradient-toolbar.cpp:1088 #: ../src/widgets/mesh-toolbar.cpp:241 msgid "on:" msgstr "sur :" -#: ../src/widgets/gradient-toolbar.cpp:1112 +#: ../src/widgets/gradient-toolbar.cpp:1113 msgid "Select" msgstr "Sélectionner" -#: ../src/widgets/gradient-toolbar.cpp:1112 +#: ../src/widgets/gradient-toolbar.cpp:1113 msgid "Choose a gradient" msgstr "Choisir un dégradé" -#: ../src/widgets/gradient-toolbar.cpp:1113 +#: ../src/widgets/gradient-toolbar.cpp:1114 msgid "Select:" msgstr "Sélection :" -#: ../src/widgets/gradient-toolbar.cpp:1131 +#: ../src/widgets/gradient-toolbar.cpp:1132 msgid "Reflected" msgstr "Réfléchi" -#: ../src/widgets/gradient-toolbar.cpp:1134 +#: ../src/widgets/gradient-toolbar.cpp:1135 msgid "Direct" msgstr "Direct" -#: ../src/widgets/gradient-toolbar.cpp:1136 +#: ../src/widgets/gradient-toolbar.cpp:1137 msgid "Repeat" msgstr "Répétition :" #. TRANSLATORS: for info, see http://www.w3.org/TR/2000/CR-SVG-20000802/pservers.html#LinearGradientSpreadMethodAttribute -#: ../src/widgets/gradient-toolbar.cpp:1138 -msgid "Whether to fill with flat color beyond the ends of the gradient vector (spreadMethod=\"pad\"), or repeat the gradient in the same direction (spreadMethod=\"repeat\"), or repeat the gradient in alternating opposite directions (spreadMethod=\"reflect\")" -msgstr "Prolongement du dégradé au delà de la définition de son vecteur : prolonger par une zone uniforme de la dernière couleur (aucune, spreadMethod=\"pad\"), répéter le dégradé (directe, spreadMethod=\"repeat\") ou le réfléchir (réflection, spreadMethod=\"reflect\")" +#: ../src/widgets/gradient-toolbar.cpp:1139 +msgid "" +"Whether to fill with flat color beyond the ends of the gradient vector " +"(spreadMethod=\"pad\"), or repeat the gradient in the same direction " +"(spreadMethod=\"repeat\"), or repeat the gradient in alternating opposite " +"directions (spreadMethod=\"reflect\")" +msgstr "" +"Prolongement du dégradé au delà de la définition de son vecteur : prolonger " +"par une zone uniforme de la dernière couleur (aucune, spreadMethod=\"pad\"), " +"répéter le dégradé (directe, spreadMethod=\"repeat\") ou le réfléchir " +"(réflection, spreadMethod=\"reflect\")" -#: ../src/widgets/gradient-toolbar.cpp:1143 +#: ../src/widgets/gradient-toolbar.cpp:1144 msgid "Repeat:" msgstr "Répétition :" -#: ../src/widgets/gradient-toolbar.cpp:1159 +#: ../src/widgets/gradient-toolbar.cpp:1160 msgid "Stops" msgstr "Stops" -#: ../src/widgets/gradient-toolbar.cpp:1159 +#: ../src/widgets/gradient-toolbar.cpp:1160 msgid "Select a stop for the current gradient" msgstr "Sélectionner un stop pour le dégradé courant" -#: ../src/widgets/gradient-toolbar.cpp:1160 +#: ../src/widgets/gradient-toolbar.cpp:1161 msgid "Stops:" msgstr "Stops :" -#: ../src/widgets/gradient-toolbar.cpp:1172 +#: ../src/widgets/gradient-toolbar.cpp:1173 msgid "Offset of selected stop" msgstr "Décalage du stop sélectionné" -#: ../src/widgets/gradient-toolbar.cpp:1189 -#: ../src/widgets/gradient-toolbar.cpp:1190 +#: ../src/widgets/gradient-toolbar.cpp:1191 +#: ../src/widgets/gradient-toolbar.cpp:1192 msgid "Insert new stop" msgstr "Insérer un stop" -#: ../src/widgets/gradient-toolbar.cpp:1203 -#: ../src/widgets/gradient-toolbar.cpp:1204 +#: ../src/widgets/gradient-toolbar.cpp:1205 +#: ../src/widgets/gradient-toolbar.cpp:1206 #: ../src/widgets/gradient-vector.cpp:908 msgid "Delete stop" msgstr "Supprimer un stop" -#: ../src/widgets/gradient-toolbar.cpp:1217 +#: ../src/widgets/gradient-toolbar.cpp:1219 msgid "Reverse" msgstr "Inverser" -#: ../src/widgets/gradient-toolbar.cpp:1218 +#: ../src/widgets/gradient-toolbar.cpp:1220 msgid "Reverse the direction of the gradient" msgstr "Inverser la direction du dégradé" -#: ../src/widgets/gradient-toolbar.cpp:1232 +#: ../src/widgets/gradient-toolbar.cpp:1234 msgid "Link gradients" msgstr "Lier les dégradés" -#: ../src/widgets/gradient-toolbar.cpp:1233 +#: ../src/widgets/gradient-toolbar.cpp:1235 msgid "Link gradients to change all related gradients" msgstr "Lier et modifier tous les dégradés associés" #: ../src/widgets/gradient-vector.cpp:332 #: ../src/widgets/paint-selector.cpp:922 +#: ../src/widgets/stroke-marker-selector.cpp:154 msgid "No document selected" msgstr "Aucun document sélectionné" @@ -24003,81 +26387,77 @@ msgstr "Éditeur de dégradé" msgid "Change gradient stop color" msgstr "Modifier la couleur d'un stop de dégradé" -#: ../src/widgets/lpe-toolbar.cpp:249 -msgid "Closed" -msgstr "Fermé" - -#: ../src/widgets/lpe-toolbar.cpp:251 -msgid "Open start" -msgstr "Début ouvert" - -#: ../src/widgets/lpe-toolbar.cpp:253 -msgid "Open end" -msgstr "Fin ouverte" - -#: ../src/widgets/lpe-toolbar.cpp:255 -msgid "Open both" -msgstr "Les deux ouverts" - -#: ../src/widgets/lpe-toolbar.cpp:314 +#: ../src/widgets/lpe-toolbar.cpp:317 msgid "All inactive" msgstr "Tout inactif" -#: ../src/widgets/lpe-toolbar.cpp:315 +#: ../src/widgets/lpe-toolbar.cpp:318 msgid "No geometric tool is active" msgstr "Aucun outil géométrique n'est actif" -#: ../src/widgets/lpe-toolbar.cpp:348 +#: ../src/widgets/lpe-toolbar.cpp:351 msgid "Show limiting bounding box" msgstr "Montrer la boîte englobante limite" -#: ../src/widgets/lpe-toolbar.cpp:349 +#: ../src/widgets/lpe-toolbar.cpp:352 msgid "Show bounding box (used to cut infinite lines)" msgstr "Affiche la boîte englobante (utilisé pour couper les lignes infinies)" -#: ../src/widgets/lpe-toolbar.cpp:360 +#: ../src/widgets/lpe-toolbar.cpp:363 msgid "Get limiting bounding box from selection" msgstr "Obtenir la boîte englobante limite à partir de la sélection" -#: ../src/widgets/lpe-toolbar.cpp:361 -msgid "Set limiting bounding box (used to cut infinite lines) to the bounding box of current selection" -msgstr "Définir la boîte englobante limite (utilisée pour couper les lignes infinies) à la boîte englobante de la sélection" +#: ../src/widgets/lpe-toolbar.cpp:364 +msgid "" +"Set limiting bounding box (used to cut infinite lines) to the bounding box " +"of current selection" +msgstr "" +"Définir la boîte englobante limite (utilisée pour couper les lignes " +"infinies) à la boîte englobante de la sélection" -#: ../src/widgets/lpe-toolbar.cpp:373 +#: ../src/widgets/lpe-toolbar.cpp:376 msgid "Choose a line segment type" msgstr "Sélectionner un type de segment" -#: ../src/widgets/lpe-toolbar.cpp:389 +#: ../src/widgets/lpe-toolbar.cpp:392 msgid "Display measuring info" msgstr "Afficher les informations de mesure" -#: ../src/widgets/lpe-toolbar.cpp:390 +#: ../src/widgets/lpe-toolbar.cpp:393 msgid "Display measuring info for selected items" msgstr "Affiche les informations de mesure pour la sélection" -#: ../src/widgets/lpe-toolbar.cpp:410 +#. Add the units menu. +#: ../src/widgets/lpe-toolbar.cpp:403 ../src/widgets/node-toolbar.cpp:625 +#: ../src/widgets/paintbucket-toolbar.cpp:187 +#: ../src/widgets/rect-toolbar.cpp:382 ../src/widgets/select-toolbar.cpp:543 +msgid "Units" +msgstr "Unités" + +#: ../src/widgets/lpe-toolbar.cpp:413 msgid "Open LPE dialog" msgstr "Ouvrir la boîte de dialogue des effets de chemin" -#: ../src/widgets/lpe-toolbar.cpp:411 +#: ../src/widgets/lpe-toolbar.cpp:414 msgid "Open LPE dialog (to adapt parameters numerically)" -msgstr "Ouvrir la boîte de dialogue des effets de chemin (pour adapter les paramètres numériquement)" +msgstr "" +"Ouvrir la boîte de dialogue des effets de chemin (pour adapter les " +"paramètres numériquement)" -#: ../src/widgets/measure-toolbar.cpp:102 -#: ../src/widgets/text-toolbar.cpp:1287 +#: ../src/widgets/measure-toolbar.cpp:103 ../src/widgets/text-toolbar.cpp:1278 msgid "Font Size" msgstr "Taille de police" -#: ../src/widgets/measure-toolbar.cpp:102 +#: ../src/widgets/measure-toolbar.cpp:103 msgid "Font Size:" msgstr "Taille de police :" -#: ../src/widgets/measure-toolbar.cpp:103 +#: ../src/widgets/measure-toolbar.cpp:104 msgid "The font size to be used in the measurement labels" msgstr "Taille de police à utiliser pour les labels des mesures" -#: ../src/widgets/measure-toolbar.cpp:115 -#: ../src/widgets/measure-toolbar.cpp:123 +#: ../src/widgets/measure-toolbar.cpp:116 +#: ../src/widgets/measure-toolbar.cpp:124 msgid "The units to be used for the measurements" msgstr "Unité à utiliser pour les mesures" @@ -24100,11 +26480,11 @@ msgid "Create conical gradient" msgstr "Créer un dégradé linéaire" #: ../src/widgets/mesh-toolbar.cpp:263 +#: ../share/extensions/guides_creator.inx.h:5 msgid "Rows" msgstr "Lignes" -#: ../src/widgets/mesh-toolbar.cpp:263 -#: ../share/extensions/layout_nup.inx.h:12 +#: ../src/widgets/mesh-toolbar.cpp:263 ../share/extensions/layout_nup.inx.h:12 msgid "Rows:" msgstr "Lignes :" @@ -24114,6 +26494,7 @@ msgid "Number of rows in new mesh" msgstr "Nombre de lignes" #: ../src/widgets/mesh-toolbar.cpp:279 +#: ../share/extensions/guides_creator.inx.h:4 msgid "Columns" msgstr "Colonnes" @@ -24144,8 +26525,7 @@ msgstr "Éditer le contour" msgid "Edit stroke mesh" msgstr "Éditer le contour..." -#: ../src/widgets/mesh-toolbar.cpp:317 -#: ../src/widgets/node-toolbar.cpp:530 +#: ../src/widgets/mesh-toolbar.cpp:317 ../src/widgets/node-toolbar.cpp:533 msgid "Show Handles" msgstr "Afficher les poignées" @@ -24154,244 +26534,258 @@ msgstr "Afficher les poignées" msgid "Show side and tensor handles" msgstr "Afficher les poignées de transformation" -#: ../src/widgets/node-toolbar.cpp:350 +#: ../src/widgets/node-toolbar.cpp:353 msgid "Insert node" msgstr "Insérer un nÅ“ud" -#: ../src/widgets/node-toolbar.cpp:351 +#: ../src/widgets/node-toolbar.cpp:354 msgid "Insert new nodes into selected segments" msgstr "Insérer de nouveaux nÅ“uds aux milieux des segments sélectionnés" -#: ../src/widgets/node-toolbar.cpp:354 +#: ../src/widgets/node-toolbar.cpp:357 msgid "Insert" msgstr "Insérer" -#: ../src/widgets/node-toolbar.cpp:365 +#: ../src/widgets/node-toolbar.cpp:368 msgid "Insert node at min X" msgstr "Insérer un nÅ“ud à l'abscisse minimale" -#: ../src/widgets/node-toolbar.cpp:366 +#: ../src/widgets/node-toolbar.cpp:369 msgid "Insert new nodes at min X into selected segments" -msgstr "Insérer de nouveaux nÅ“uds à l'abscisse minimale des segments sélectionnés" +msgstr "" +"Insérer de nouveaux nÅ“uds à l'abscisse minimale des segments sélectionnés" -#: ../src/widgets/node-toolbar.cpp:369 +#: ../src/widgets/node-toolbar.cpp:372 msgid "Insert min X" msgstr "Insérer à l'abscisse minimale" -#: ../src/widgets/node-toolbar.cpp:375 +#: ../src/widgets/node-toolbar.cpp:378 msgid "Insert node at max X" msgstr "Insérer un nÅ“ud à l'abscisse maximale" -#: ../src/widgets/node-toolbar.cpp:376 +#: ../src/widgets/node-toolbar.cpp:379 msgid "Insert new nodes at max X into selected segments" -msgstr "Insérer de nouveaux nÅ“uds à l'abscisse maximale des segments sélectionnés" +msgstr "" +"Insérer de nouveaux nÅ“uds à l'abscisse maximale des segments sélectionnés" -#: ../src/widgets/node-toolbar.cpp:379 +#: ../src/widgets/node-toolbar.cpp:382 msgid "Insert max X" msgstr "Insérer à l'abscisse maximale" -#: ../src/widgets/node-toolbar.cpp:385 +#: ../src/widgets/node-toolbar.cpp:388 msgid "Insert node at min Y" msgstr "Insérer un nÅ“ud à l'ordonnée minimale" -#: ../src/widgets/node-toolbar.cpp:386 +#: ../src/widgets/node-toolbar.cpp:389 msgid "Insert new nodes at min Y into selected segments" -msgstr "Insérer de nouveaux nÅ“uds à l'ordonnée minimale des segments sélectionnés" +msgstr "" +"Insérer de nouveaux nÅ“uds à l'ordonnée minimale des segments sélectionnés" -#: ../src/widgets/node-toolbar.cpp:389 +#: ../src/widgets/node-toolbar.cpp:392 msgid "Insert min Y" msgstr "Insérer à l'ordonnée minimale" -#: ../src/widgets/node-toolbar.cpp:395 +#: ../src/widgets/node-toolbar.cpp:398 msgid "Insert node at max Y" msgstr "Insérer un nÅ“ud à l'ordonnée maximale" -#: ../src/widgets/node-toolbar.cpp:396 +#: ../src/widgets/node-toolbar.cpp:399 msgid "Insert new nodes at max Y into selected segments" -msgstr "Insérer de nouveaux nÅ“uds à l'ordonnée maximale des segments sélectionnés" +msgstr "" +"Insérer de nouveaux nÅ“uds à l'ordonnée maximale des segments sélectionnés" -#: ../src/widgets/node-toolbar.cpp:399 +#: ../src/widgets/node-toolbar.cpp:402 msgid "Insert max Y" msgstr "Insérer à l'ordonnée maximale" -#: ../src/widgets/node-toolbar.cpp:407 +#: ../src/widgets/node-toolbar.cpp:410 msgid "Delete selected nodes" msgstr "Supprimer les nÅ“uds sélectionnés" -#: ../src/widgets/node-toolbar.cpp:418 +#: ../src/widgets/node-toolbar.cpp:421 msgid "Join selected nodes" msgstr "Joindre les nÅ“uds sélectionnés" -#: ../src/widgets/node-toolbar.cpp:421 +#: ../src/widgets/node-toolbar.cpp:424 msgid "Join" msgstr "Joindre" -#: ../src/widgets/node-toolbar.cpp:429 +#: ../src/widgets/node-toolbar.cpp:432 msgid "Break path at selected nodes" msgstr "Briser le chemin aux nÅ“uds sélectionnés" -#: ../src/widgets/node-toolbar.cpp:439 +#: ../src/widgets/node-toolbar.cpp:442 msgid "Join with segment" msgstr "Joindre par un segment" -#: ../src/widgets/node-toolbar.cpp:440 +#: ../src/widgets/node-toolbar.cpp:443 msgid "Join selected endnodes with a new segment" msgstr "Joindre les nÅ“uds terminaux sélectionnés par un nouveau segment" -#: ../src/widgets/node-toolbar.cpp:449 +#: ../src/widgets/node-toolbar.cpp:452 msgid "Delete segment" msgstr "Supprimer le segment" -#: ../src/widgets/node-toolbar.cpp:450 +#: ../src/widgets/node-toolbar.cpp:453 msgid "Delete segment between two non-endpoint nodes" msgstr "Supprimer un segment entre deux nÅ“uds non terminaux" -#: ../src/widgets/node-toolbar.cpp:459 +#: ../src/widgets/node-toolbar.cpp:462 msgid "Node Cusp" msgstr "Point de rebroussement" -#: ../src/widgets/node-toolbar.cpp:460 +#: ../src/widgets/node-toolbar.cpp:463 msgid "Make selected nodes corner" msgstr "Rendre durs les nÅ“uds sélectionnés" -#: ../src/widgets/node-toolbar.cpp:469 +#: ../src/widgets/node-toolbar.cpp:472 msgid "Node Smooth" msgstr "Doux" -#: ../src/widgets/node-toolbar.cpp:470 +#: ../src/widgets/node-toolbar.cpp:473 msgid "Make selected nodes smooth" msgstr "Rendre doux les nÅ“uds sélectionnés" -#: ../src/widgets/node-toolbar.cpp:479 +#: ../src/widgets/node-toolbar.cpp:482 msgid "Node Symmetric" msgstr "Symétrique" -#: ../src/widgets/node-toolbar.cpp:480 +#: ../src/widgets/node-toolbar.cpp:483 msgid "Make selected nodes symmetric" msgstr "Rendre symétriques les nÅ“uds sélectionnés" -#: ../src/widgets/node-toolbar.cpp:489 +#: ../src/widgets/node-toolbar.cpp:492 msgid "Node Auto" msgstr "NÅ“ud automatique" -#: ../src/widgets/node-toolbar.cpp:490 +#: ../src/widgets/node-toolbar.cpp:493 msgid "Make selected nodes auto-smooth" msgstr "Rendre automatiques les nÅ“uds sélectionnés" -#: ../src/widgets/node-toolbar.cpp:499 +#: ../src/widgets/node-toolbar.cpp:502 msgid "Node Line" msgstr "Rectiligne" -#: ../src/widgets/node-toolbar.cpp:500 +#: ../src/widgets/node-toolbar.cpp:503 msgid "Make selected segments lines" msgstr "Rendre rectilignes les segments sélectionnés" -#: ../src/widgets/node-toolbar.cpp:509 +#: ../src/widgets/node-toolbar.cpp:512 msgid "Node Curve" msgstr "Courbe" -#: ../src/widgets/node-toolbar.cpp:510 +#: ../src/widgets/node-toolbar.cpp:513 msgid "Make selected segments curves" msgstr "Rendre courbes les segments sélectionnés" -#: ../src/widgets/node-toolbar.cpp:519 +#: ../src/widgets/node-toolbar.cpp:522 msgid "Show Transform Handles" msgstr "Afficher les poignées de transformation" -#: ../src/widgets/node-toolbar.cpp:520 +#: ../src/widgets/node-toolbar.cpp:523 msgid "Show transformation handles for selected nodes" msgstr "Afficher les poignées de transformation pour les nÅ“uds sélectionnés" -#: ../src/widgets/node-toolbar.cpp:531 +#: ../src/widgets/node-toolbar.cpp:534 msgid "Show Bezier handles of selected nodes" msgstr "Afficher les poignées de Bézier des nÅ“uds sélectionnés" -#: ../src/widgets/node-toolbar.cpp:541 +#: ../src/widgets/node-toolbar.cpp:544 msgid "Show Outline" msgstr "Afficher le contour" -#: ../src/widgets/node-toolbar.cpp:542 +#: ../src/widgets/node-toolbar.cpp:545 msgid "Show path outline (without path effects)" msgstr "Afficher le contour du chemin (sans les effets de chemin)" -#: ../src/widgets/node-toolbar.cpp:564 +#: ../src/widgets/node-toolbar.cpp:567 msgid "Edit clipping paths" msgstr "Modifier les chemins de découpe" -#: ../src/widgets/node-toolbar.cpp:565 +#: ../src/widgets/node-toolbar.cpp:568 msgid "Show clipping path(s) of selected object(s)" msgstr "Afficher les chemins de découpe des objets sélectionnés" -#: ../src/widgets/node-toolbar.cpp:575 +#: ../src/widgets/node-toolbar.cpp:578 msgid "Edit masks" msgstr "Modifier les masques" -#: ../src/widgets/node-toolbar.cpp:576 +#: ../src/widgets/node-toolbar.cpp:579 msgid "Show mask(s) of selected object(s)" msgstr "Afficher les masques des objets sélectionnés" -#: ../src/widgets/node-toolbar.cpp:590 +#: ../src/widgets/node-toolbar.cpp:593 msgid "X coordinate:" msgstr "Coordonnée X :" -#: ../src/widgets/node-toolbar.cpp:590 +#: ../src/widgets/node-toolbar.cpp:593 msgid "X coordinate of selected node(s)" msgstr "Coordonnée X de la sélection" -#: ../src/widgets/node-toolbar.cpp:608 +#: ../src/widgets/node-toolbar.cpp:611 msgid "Y coordinate:" msgstr "Coordonnée Y :" -#: ../src/widgets/node-toolbar.cpp:608 +#: ../src/widgets/node-toolbar.cpp:611 msgid "Y coordinate of selected node(s)" msgstr "Coordonnée Y de la sélection" -#: ../src/widgets/paintbucket-toolbar.cpp:153 +#: ../src/widgets/paintbucket-toolbar.cpp:154 msgid "Fill by" msgstr "Type de remplissage" -#: ../src/widgets/paintbucket-toolbar.cpp:154 +#: ../src/widgets/paintbucket-toolbar.cpp:155 msgid "Fill by:" msgstr "Type de remplissage :" -#: ../src/widgets/paintbucket-toolbar.cpp:166 +#: ../src/widgets/paintbucket-toolbar.cpp:167 msgid "Fill Threshold" msgstr "Seuil de remplissage :" -#: ../src/widgets/paintbucket-toolbar.cpp:167 -msgid "The maximum allowed difference between the clicked pixel and the neighboring pixels to be counted in the fill" -msgstr "La différence maximale entre le pixel du clic et les pixels voisins pour qu'ils soient ajoutés dans le remplissage" +#: ../src/widgets/paintbucket-toolbar.cpp:168 +msgid "" +"The maximum allowed difference between the clicked pixel and the neighboring " +"pixels to be counted in the fill" +msgstr "" +"La différence maximale entre le pixel du clic et les pixels voisins pour " +"qu'ils soient ajoutés dans le remplissage" -#: ../src/widgets/paintbucket-toolbar.cpp:193 +#: ../src/widgets/paintbucket-toolbar.cpp:195 msgid "Grow/shrink by" msgstr "Agrandir/rétrécir de" -#: ../src/widgets/paintbucket-toolbar.cpp:193 +#: ../src/widgets/paintbucket-toolbar.cpp:195 msgid "Grow/shrink by:" msgstr "Agrandir/rétrécir de :" -#: ../src/widgets/paintbucket-toolbar.cpp:194 -msgid "The amount to grow (positive) or shrink (negative) the created fill path" -msgstr "Agrandit (si positif) ou rétrécit (si négatif) de cette quantité le chemin créé par remplissage." +#: ../src/widgets/paintbucket-toolbar.cpp:196 +msgid "" +"The amount to grow (positive) or shrink (negative) the created fill path" +msgstr "" +"Agrandit (si positif) ou rétrécit (si négatif) de cette quantité le chemin " +"créé par remplissage." -#: ../src/widgets/paintbucket-toolbar.cpp:219 +#: ../src/widgets/paintbucket-toolbar.cpp:221 msgid "Close gaps" msgstr "Combler les vides" -#: ../src/widgets/paintbucket-toolbar.cpp:220 +#: ../src/widgets/paintbucket-toolbar.cpp:222 msgid "Close gaps:" msgstr "Combler les vides :" -#: ../src/widgets/paintbucket-toolbar.cpp:231 -#: ../src/widgets/pencil-toolbar.cpp:326 -#: ../src/widgets/spiral-toolbar.cpp:304 -#: ../src/widgets/star-toolbar.cpp:576 +#: ../src/widgets/paintbucket-toolbar.cpp:233 +#: ../src/widgets/pencil-toolbar.cpp:322 ../src/widgets/spiral-toolbar.cpp:300 +#: ../src/widgets/star-toolbar.cpp:572 msgid "Defaults" msgstr "R-à -z" -#: ../src/widgets/paintbucket-toolbar.cpp:232 -msgid "Reset paint bucket parameters to defaults (use Inkscape Preferences > Tools to change defaults)" -msgstr "Restaurer les préférences par défaut de l'outil de remplissage au seau (changez les valeurs par défaut dans Inkscape Préférences>Outils)" +#: ../src/widgets/paintbucket-toolbar.cpp:234 +msgid "" +"Reset paint bucket parameters to defaults (use Inkscape Preferences > Tools " +"to change defaults)" +msgstr "" +"Restaurer les préférences par défaut de l'outil de remplissage au seau " +"(changez les valeurs par défaut dans Inkscape Préférences>Outils)" #: ../src/widgets/paint-selector.cpp:234 msgid "No paint" @@ -24415,13 +26809,20 @@ msgstr "Remplissage indéfini (permettant ainsi qu'il soit hérité)" #. TRANSLATORS: for info, see http://www.w3.org/TR/2000/CR-SVG-20000802/painting.html#FillRuleProperty #: ../src/widgets/paint-selector.cpp:263 -msgid "Any path self-intersections or subpaths create holes in the fill (fill-rule: evenodd)" -msgstr "Toute intersection d'un chemin avec lui-même ou avec un de ses sous-chemins engendrera des lacunes dans le remplissage (fill-rule: evenodd)" +msgid "" +"Any path self-intersections or subpaths create holes in the fill (fill-rule: " +"evenodd)" +msgstr "" +"Toute intersection d'un chemin avec lui-même ou avec un de ses sous-chemins " +"engendrera des lacunes dans le remplissage (fill-rule: evenodd)" #. TRANSLATORS: for info, see http://www.w3.org/TR/2000/CR-SVG-20000802/painting.html#FillRuleProperty #: ../src/widgets/paint-selector.cpp:274 -msgid "Fill is solid unless a subpath is counterdirectional (fill-rule: nonzero)" -msgstr "Le remplissage est sans lacune, sauf si un sous-chemin est en sens inverse (fill-rule: nonzero)" +msgid "" +"Fill is solid unless a subpath is counterdirectional (fill-rule: nonzero)" +msgstr "" +"Le remplissage est sans lacune, sauf si un sous-chemin est en sens inverse " +"(fill-rule: nonzero)" #: ../src/widgets/paint-selector.cpp:590 msgid "<b>No objects</b>" @@ -24453,483 +26854,345 @@ msgid "<b>Radial gradient</b>" msgstr "<b>Dégradé radial</b>" #: ../src/widgets/paint-selector.cpp:1055 -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 "Utiliser l'<b>outil nÅ“ud</b> pour ajuster la position, l'échelle et l'angle du motif sur la zone de travail. Utiliser <b>Objet > Motifs > Objets en Motif</b> pour créer un nouveau motif à partir de la sélection." +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 "" +"Utiliser l'<b>outil nÅ“ud</b> pour ajuster la position, l'échelle et l'angle " +"du motif sur la zone de travail. Utiliser <b>Objet > Motifs > Objets " +"en Motif</b> pour créer un nouveau motif à partir de la sélection." #: ../src/widgets/paint-selector.cpp:1068 msgid "<b>Pattern fill</b>" msgstr "<b>Motif de remplissage</b>" -#: ../src/widgets/paint-selector.cpp:1164 +#: ../src/widgets/paint-selector.cpp:1162 msgid "<b>Swatch fill</b>" msgstr "<b>Remplissage par échantillon</b>" -#: ../src/widgets/pencil-toolbar.cpp:130 +#: ../src/widgets/pencil-toolbar.cpp:125 msgid "Bezier" msgstr "Bézier" -#: ../src/widgets/pencil-toolbar.cpp:131 +#: ../src/widgets/pencil-toolbar.cpp:126 msgid "Create regular Bezier path" msgstr "Créer un chemin de Bézier régulier" -#: ../src/widgets/pencil-toolbar.cpp:138 +#: ../src/widgets/pencil-toolbar.cpp:133 msgid "Create Spiro path" msgstr "Créer un chemin spirographique" -#: ../src/widgets/pencil-toolbar.cpp:145 +#: ../src/widgets/pencil-toolbar.cpp:140 msgid "Zigzag" msgstr "Zigzag" -#: ../src/widgets/pencil-toolbar.cpp:146 +#: ../src/widgets/pencil-toolbar.cpp:141 msgid "Create a sequence of straight line segments" msgstr "Créer une séquence de segments de lignes droites" -#: ../src/widgets/pencil-toolbar.cpp:152 +#: ../src/widgets/pencil-toolbar.cpp:147 msgid "Paraxial" msgstr "Paraxial" -#: ../src/widgets/pencil-toolbar.cpp:153 +#: ../src/widgets/pencil-toolbar.cpp:148 msgid "Create a sequence of paraxial line segments" msgstr "Créer une séquence de segments de lignes paraxiales" -#: ../src/widgets/pencil-toolbar.cpp:161 +#: ../src/widgets/pencil-toolbar.cpp:156 msgid "Mode of new lines drawn by this tool" msgstr "Mode des nouvelles lignes dessinées avec cet outil" -#: ../src/widgets/pencil-toolbar.cpp:190 +#: ../src/widgets/pencil-toolbar.cpp:185 msgid "Triangle in" msgstr "Triangle décroissant" -#: ../src/widgets/pencil-toolbar.cpp:191 +#: ../src/widgets/pencil-toolbar.cpp:186 msgid "Triangle out" msgstr "Triangle croissant" -#: ../src/widgets/pencil-toolbar.cpp:193 +#: ../src/widgets/pencil-toolbar.cpp:188 msgid "From clipboard" msgstr "À partir du presse-papier" -#: ../src/widgets/pencil-toolbar.cpp:218 -#: ../src/widgets/pencil-toolbar.cpp:219 +#: ../src/widgets/pencil-toolbar.cpp:213 ../src/widgets/pencil-toolbar.cpp:214 msgid "Shape:" msgstr "Forme :" -#: ../src/widgets/pencil-toolbar.cpp:218 +#: ../src/widgets/pencil-toolbar.cpp:213 msgid "Shape of new paths drawn by this tool" msgstr "Style des nouveaux chemins dessinés avec cet outil" -#: ../src/widgets/pencil-toolbar.cpp:303 +#: ../src/widgets/pencil-toolbar.cpp:298 msgid "(many nodes, rough)" msgstr "(nombreux nÅ“uds, rugueux)" -#: ../src/widgets/pencil-toolbar.cpp:303 +#: ../src/widgets/pencil-toolbar.cpp:298 msgid "(few nodes, smooth)" msgstr "(peu de nÅ“uds, doux)" -#: ../src/widgets/pencil-toolbar.cpp:306 +#: ../src/widgets/pencil-toolbar.cpp:301 msgid "Smoothing:" msgstr "Lissage :" -#: ../src/widgets/pencil-toolbar.cpp:306 +#: ../src/widgets/pencil-toolbar.cpp:301 msgid "Smoothing: " msgstr "Lissage :" -#: ../src/widgets/pencil-toolbar.cpp:307 +#: ../src/widgets/pencil-toolbar.cpp:302 msgid "How much smoothing (simplifying) is applied to the line" msgstr "Quel niveau de lissage (simplification) est appliqué à la ligne" -#: ../src/widgets/pencil-toolbar.cpp:327 -msgid "Reset pencil parameters to defaults (use Inkscape Preferences > Tools to change defaults)" -msgstr "Restaurer les préférences du crayon par défaut (changez les valeurs par défaut dans Préférences d'Inkscape>Outils)" +#: ../src/widgets/pencil-toolbar.cpp:323 +msgid "" +"Reset pencil parameters to defaults (use Inkscape Preferences > Tools to " +"change defaults)" +msgstr "" +"Restaurer les préférences du crayon par défaut (changez les valeurs par " +"défaut dans Préférences d'Inkscape>Outils)" -#: ../src/widgets/rect-toolbar.cpp:128 +#: ../src/widgets/rect-toolbar.cpp:129 msgid "Change rectangle" msgstr "Modifier un rectangle" -#: ../src/widgets/rect-toolbar.cpp:315 +#: ../src/widgets/rect-toolbar.cpp:321 msgid "W:" msgstr "L :" -#: ../src/widgets/rect-toolbar.cpp:315 +#: ../src/widgets/rect-toolbar.cpp:321 msgid "Width of rectangle" msgstr "Largeur du rectangle" -#: ../src/widgets/rect-toolbar.cpp:332 +#: ../src/widgets/rect-toolbar.cpp:338 msgid "H:" msgstr "H :" -#: ../src/widgets/rect-toolbar.cpp:332 +#: ../src/widgets/rect-toolbar.cpp:338 msgid "Height of rectangle" msgstr "Hauteur du rectangle" -#: ../src/widgets/rect-toolbar.cpp:346 -#: ../src/widgets/rect-toolbar.cpp:361 +#: ../src/widgets/rect-toolbar.cpp:352 ../src/widgets/rect-toolbar.cpp:367 msgid "not rounded" msgstr "pas d'arrondi" -#: ../src/widgets/rect-toolbar.cpp:349 +#: ../src/widgets/rect-toolbar.cpp:355 msgid "Horizontal radius" msgstr "Rayon horizontal" -#: ../src/widgets/rect-toolbar.cpp:349 +#: ../src/widgets/rect-toolbar.cpp:355 msgid "Rx:" msgstr "Rx :" -#: ../src/widgets/rect-toolbar.cpp:349 +#: ../src/widgets/rect-toolbar.cpp:355 msgid "Horizontal radius of rounded corners" msgstr "Rayon horizontal des coins arrondis" -#: ../src/widgets/rect-toolbar.cpp:364 +#: ../src/widgets/rect-toolbar.cpp:370 msgid "Vertical radius" msgstr "Rayon vertical" -#: ../src/widgets/rect-toolbar.cpp:364 +#: ../src/widgets/rect-toolbar.cpp:370 msgid "Ry:" msgstr "Ry :" -#: ../src/widgets/rect-toolbar.cpp:364 +#: ../src/widgets/rect-toolbar.cpp:370 msgid "Vertical radius of rounded corners" msgstr "Rayon vertical des coins arrondis" -#: ../src/widgets/rect-toolbar.cpp:383 +#: ../src/widgets/rect-toolbar.cpp:389 msgid "Not rounded" msgstr "Pas d'arrondi" -#: ../src/widgets/rect-toolbar.cpp:384 +#: ../src/widgets/rect-toolbar.cpp:390 msgid "Make corners sharp" msgstr "Rendre les coins pointus" -#: ../src/widgets/select-toolbar.cpp:263 +#: ../src/widgets/ruler.cpp:192 +#, fuzzy +msgid "The orientation of the ruler" +msgstr "Orientation des éléments détachables" + +#: ../src/widgets/ruler.cpp:202 +#, fuzzy +msgid "Unit of the ruler" +msgstr "Largeur du motif" + +#: ../src/widgets/ruler.cpp:209 +msgid "Lower" +msgstr "Descendre" + +#: ../src/widgets/ruler.cpp:210 +#, fuzzy +msgid "Lower limit of ruler" +msgstr "Descendre au calque précédent." + +#: ../src/widgets/ruler.cpp:219 +#, fuzzy +msgid "Upper" +msgstr "Pipette" + +#: ../src/widgets/ruler.cpp:220 +msgid "Upper limit of ruler" +msgstr "" + +#: ../src/widgets/ruler.cpp:230 +#, fuzzy +msgid "Position of mark on the ruler" +msgstr "Emplacement des thèmes d'icône" + +#: ../src/widgets/ruler.cpp:239 +#, fuzzy +msgid "Max Size" +msgstr "Dimensions" + +#: ../src/widgets/ruler.cpp:240 +msgid "Maximum size of the ruler" +msgstr "" + +#: ../src/widgets/select-toolbar.cpp:267 msgid "Transform by toolbar" msgstr "Transformer via la barre d'outils" -#: ../src/widgets/select-toolbar.cpp:341 +#: ../src/widgets/select-toolbar.cpp:346 msgid "Now <b>stroke width</b> is <b>scaled</b> when objects are scaled." -msgstr "Maintenant l'<b>épaisseur de contour</b> est <b>redimensionnée</b> quand les objets sont redimensionnés." +msgstr "" +"Maintenant l'<b>épaisseur de contour</b> est <b>redimensionnée</b> quand les " +"objets sont redimensionnés." -#: ../src/widgets/select-toolbar.cpp:343 +#: ../src/widgets/select-toolbar.cpp:348 msgid "Now <b>stroke width</b> is <b>not scaled</b> when objects are scaled." -msgstr "Maintenant l'<b>épaisseur de contour</b> n'est <b> pas redimensionnée</b> quand les objets sont redimensionnés." +msgstr "" +"Maintenant l'<b>épaisseur de contour</b> n'est <b> pas redimensionnée</b> " +"quand les objets sont redimensionnés." -#: ../src/widgets/select-toolbar.cpp:354 -msgid "Now <b>rounded rectangle corners</b> are <b>scaled</b> when rectangles are scaled." -msgstr "Maintenant les <b>coins arrondis de rectangles</b> sont <b>redimensionnés</b> quand les rectangles sont redimensionnés." +#: ../src/widgets/select-toolbar.cpp:359 +msgid "" +"Now <b>rounded rectangle corners</b> are <b>scaled</b> when rectangles are " +"scaled." +msgstr "" +"Maintenant les <b>coins arrondis de rectangles</b> sont <b>redimensionnés</" +"b> quand les rectangles sont redimensionnés." -#: ../src/widgets/select-toolbar.cpp:356 -msgid "Now <b>rounded rectangle corners</b> are <b>not scaled</b> when rectangles are scaled." -msgstr "Maintenant les <b>coins arrondis de rectangles</b> ne sont <b>pas redimensionnés</b> quand les rectangles sont redimensionnés." +#: ../src/widgets/select-toolbar.cpp:361 +msgid "" +"Now <b>rounded rectangle corners</b> are <b>not scaled</b> when rectangles " +"are scaled." +msgstr "" +"Maintenant les <b>coins arrondis de rectangles</b> ne sont <b>pas " +"redimensionnés</b> quand les rectangles sont redimensionnés." -#: ../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 "Maintenant les <b>dégradés</b> sont <b>transformés</b> lors des transformations de leurs objets (déplacement, redimensionnement, rotation ou inclinaison)." +#: ../src/widgets/select-toolbar.cpp:372 +msgid "" +"Now <b>gradients</b> are <b>transformed</b> along with their objects when " +"those are transformed (moved, scaled, rotated, or skewed)." +msgstr "" +"Maintenant les <b>dégradés</b> sont <b>transformés</b> lors des " +"transformations de leurs objets (déplacement, redimensionnement, rotation ou " +"inclinaison)." -#: ../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 "Maintenant les <b>dégradés</b> restent <b>fixes</b> lors des transformations de leurs objets (déplacement, redimensionnement, rotation, ou inclinaison)." +#: ../src/widgets/select-toolbar.cpp:374 +msgid "" +"Now <b>gradients</b> remain <b>fixed</b> when objects are transformed " +"(moved, scaled, rotated, or skewed)." +msgstr "" +"Maintenant les <b>dégradés</b> restent <b>fixes</b> lors des transformations " +"de leurs objets (déplacement, redimensionnement, rotation, ou inclinaison)." -#: ../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 "Maintenant les <b>motifs</b> sont <b>transformés</b> lors des transformations de leurs objets (déplacement, redimensionnement, rotation ou inclinaison)." +#: ../src/widgets/select-toolbar.cpp:385 +msgid "" +"Now <b>patterns</b> are <b>transformed</b> along with their objects when " +"those are transformed (moved, scaled, rotated, or skewed)." +msgstr "" +"Maintenant les <b>motifs</b> sont <b>transformés</b> lors des " +"transformations de leurs objets (déplacement, redimensionnement, rotation ou " +"inclinaison)." -#: ../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 "Maintenant les <b>motifs</b> restent <b>fixes</b> lors des transformations de leurs objets (déplacement, redimensionnement, rotation, ou inclinaison)." +#: ../src/widgets/select-toolbar.cpp:387 +msgid "" +"Now <b>patterns</b> remain <b>fixed</b> when objects are transformed (moved, " +"scaled, rotated, or skewed)." +msgstr "" +"Maintenant les <b>motifs</b> restent <b>fixes</b> lors des transformations " +"de leurs objets (déplacement, redimensionnement, rotation, ou inclinaison)." #. four spinbuttons -#: ../src/widgets/select-toolbar.cpp:500 +#: ../src/widgets/select-toolbar.cpp:505 msgctxt "Select toolbar" msgid "X position" msgstr "Position X" -#: ../src/widgets/select-toolbar.cpp:500 +#: ../src/widgets/select-toolbar.cpp:505 msgctxt "Select toolbar" msgid "X:" msgstr "X :" -#: ../src/widgets/select-toolbar.cpp:502 +#: ../src/widgets/select-toolbar.cpp:507 msgid "Horizontal coordinate of selection" msgstr "Coordonnée horizontale de la sélection" -#: ../src/widgets/select-toolbar.cpp:506 +#: ../src/widgets/select-toolbar.cpp:511 msgctxt "Select toolbar" msgid "Y position" msgstr "Position Y" -#: ../src/widgets/select-toolbar.cpp:506 +#: ../src/widgets/select-toolbar.cpp:511 msgctxt "Select toolbar" msgid "Y:" msgstr "Y :" -#: ../src/widgets/select-toolbar.cpp:508 +#: ../src/widgets/select-toolbar.cpp:513 msgid "Vertical coordinate of selection" msgstr "Coordonnée verticale de la sélection" -#: ../src/widgets/select-toolbar.cpp:512 +#: ../src/widgets/select-toolbar.cpp:517 msgctxt "Select toolbar" msgid "Width" msgstr "Largeur" -#: ../src/widgets/select-toolbar.cpp:512 +#: ../src/widgets/select-toolbar.cpp:517 msgctxt "Select toolbar" msgid "W:" msgstr "L :" -#: ../src/widgets/select-toolbar.cpp:514 +#: ../src/widgets/select-toolbar.cpp:519 msgid "Width of selection" msgstr "Largeur de la sélection" -#: ../src/widgets/select-toolbar.cpp:521 +#: ../src/widgets/select-toolbar.cpp:526 msgid "Lock width and height" msgstr "Verrouiller la largeur et la hauteur" -#: ../src/widgets/select-toolbar.cpp:522 +#: ../src/widgets/select-toolbar.cpp:527 msgid "When locked, change both width and height by the same proportion" -msgstr "Si coché, la hauteur et la largeur sont modifiées selon la même proportion" +msgstr "" +"Si coché, la hauteur et la largeur sont modifiées selon la même proportion" -#: ../src/widgets/select-toolbar.cpp:531 +#: ../src/widgets/select-toolbar.cpp:536 msgctxt "Select toolbar" msgid "Height" msgstr "Hauteur" -#: ../src/widgets/select-toolbar.cpp:531 +#: ../src/widgets/select-toolbar.cpp:536 msgctxt "Select toolbar" msgid "H:" msgstr "H :" -#: ../src/widgets/select-toolbar.cpp:533 +#: ../src/widgets/select-toolbar.cpp:538 msgid "Height of selection" msgstr "Hauteur de la sélection" -#: ../src/widgets/select-toolbar.cpp:583 +#: ../src/widgets/select-toolbar.cpp:588 msgid "Scale rounded corners" msgstr "Redimensionner les coins arrondis des rectangles" -#: ../src/widgets/select-toolbar.cpp:594 +#: ../src/widgets/select-toolbar.cpp:599 msgid "Move gradients" msgstr "Déplacer les dégradés" -#: ../src/widgets/select-toolbar.cpp:605 +#: ../src/widgets/select-toolbar.cpp:610 msgid "Move patterns" msgstr "Déplacer les motifs" -#: ../src/widgets/spiral-toolbar.cpp:115 -msgid "Change spiral" -msgstr "Modifier une spirale" - -#: ../src/widgets/spiral-toolbar.cpp:261 -msgid "just a curve" -msgstr "juste une courbe" - -#: ../src/widgets/spiral-toolbar.cpp:261 -msgid "one full revolution" -msgstr "une révolution complète" - -#: ../src/widgets/spiral-toolbar.cpp:264 -msgid "Number of turns" -msgstr "Nombre de tours" - -#: ../src/widgets/spiral-toolbar.cpp:264 -msgid "Turns:" -msgstr "Tours :" - -#: ../src/widgets/spiral-toolbar.cpp:264 -msgid "Number of revolutions" -msgstr "Nombre de révolutions" - -#: ../src/widgets/spiral-toolbar.cpp:275 -msgid "circle" -msgstr "cercle" - -#: ../src/widgets/spiral-toolbar.cpp:275 -msgid "edge is much denser" -msgstr "le bord est beaucoup plus dense" - -#: ../src/widgets/spiral-toolbar.cpp:275 -msgid "edge is denser" -msgstr "le bord est plus dense" - -#: ../src/widgets/spiral-toolbar.cpp:275 -msgid "even" -msgstr "égal" - -#: ../src/widgets/spiral-toolbar.cpp:275 -msgid "center is denser" -msgstr "le centre est plus dense" - -#: ../src/widgets/spiral-toolbar.cpp:275 -msgid "center is much denser" -msgstr "le centre est beaucoup plus dense" - -#: ../src/widgets/spiral-toolbar.cpp:278 -msgid "Divergence" -msgstr "Divergence :" - -#: ../src/widgets/spiral-toolbar.cpp:278 -msgid "Divergence:" -msgstr "Divergence :" - -#: ../src/widgets/spiral-toolbar.cpp:278 -msgid "How much denser/sparser are outer revolutions; 1 = uniform" -msgstr "Densité de la révolution; 1 = uniforme" - -#: ../src/widgets/spiral-toolbar.cpp:289 -msgid "starts from center" -msgstr "démarrer du centre" - -#: ../src/widgets/spiral-toolbar.cpp:289 -msgid "starts mid-way" -msgstr "démarrer du milieu" - -#: ../src/widgets/spiral-toolbar.cpp:289 -msgid "starts near edge" -msgstr "démarrer près du bord" - -#: ../src/widgets/spiral-toolbar.cpp:292 -msgid "Inner radius" -msgstr "Rayon intérieur :" - -#: ../src/widgets/spiral-toolbar.cpp:292 -msgid "Inner radius:" -msgstr "Rayon intérieur :" - -#: ../src/widgets/spiral-toolbar.cpp:292 -msgid "Radius of the innermost revolution (relative to the spiral size)" -msgstr "Rayon de la révolution intérieure (relatif aux dimensions de la spirale)" - -#: ../src/widgets/spiral-toolbar.cpp:305 -#: ../src/widgets/star-toolbar.cpp:577 -msgid "Reset shape parameters to defaults (use Inkscape Preferences > Tools to change defaults)" -msgstr "Restaurer les préférences de la forme par défaut (changez les valeurs par défaut dans Inkscape Préférences>Outils)" - -#. Width -#: ../src/widgets/spray-toolbar.cpp:129 -msgid "(narrow spray)" -msgstr "(pulvérisation étroite)" - -#: ../src/widgets/spray-toolbar.cpp:129 -msgid "(broad spray)" -msgstr "(pulvérisation large)" - -#: ../src/widgets/spray-toolbar.cpp:132 -msgid "The width of the spray area (relative to the visible canvas area)" -msgstr "Largeur de la zone de pulvérisation (relativement à la zone de travail visible)" - -#: ../src/widgets/spray-toolbar.cpp:145 -msgid "(maximum mean)" -msgstr "(moyenne maximale)" - -#: ../src/widgets/spray-toolbar.cpp:148 -msgid "Focus" -msgstr "Rayon" - -#: ../src/widgets/spray-toolbar.cpp:148 -msgid "Focus:" -msgstr "Rayon :" - -#: ../src/widgets/spray-toolbar.cpp:148 -msgid "0 to spray a spot; increase to enlarge the ring radius" -msgstr "0 pour pulvériser sur un seul endroit ; augmenter pour élargir le rayon de pulvérisation" - -#. Standard_deviation -#: ../src/widgets/spray-toolbar.cpp:161 -msgid "(minimum scatter)" -msgstr "(dispersion minimale)" - -#: ../src/widgets/spray-toolbar.cpp:161 -msgid "(maximum scatter)" -msgstr "(dispersion maximale)" - -#: ../src/widgets/spray-toolbar.cpp:164 -msgctxt "Spray tool" -msgid "Scatter" -msgstr "Éparpiller" - -#: ../src/widgets/spray-toolbar.cpp:164 -msgctxt "Spray tool" -msgid "Scatter:" -msgstr "Éparpiller :" - -#: ../src/widgets/spray-toolbar.cpp:164 -msgid "Increase to scatter sprayed objects" -msgstr "Augmenter pour disperser les objets pulvérisés" - -#: ../src/widgets/spray-toolbar.cpp:183 -msgid "Spray copies of the initial selection" -msgstr "Pulvériser des copies de la sélection initiale" - -#: ../src/widgets/spray-toolbar.cpp:190 -msgid "Spray clones of the initial selection" -msgstr "Pulvériser des clones de la sélection initiale" - -#: ../src/widgets/spray-toolbar.cpp:196 -msgid "Spray single path" -msgstr "Pulvérisation par union des formes" - -#: ../src/widgets/spray-toolbar.cpp:197 -msgid "Spray objects in a single path" -msgstr "Pulvérisation fusionnée en un chemin unique" - -#: ../src/widgets/spray-toolbar.cpp:201 -#: ../src/widgets/tweak-toolbar.cpp:271 -msgid "Mode" -msgstr "Mode" - -#. Population -#: ../src/widgets/spray-toolbar.cpp:221 -msgid "(low population)" -msgstr "(faible population)" - -#: ../src/widgets/spray-toolbar.cpp:221 -msgid "(high population)" -msgstr "(forte population)" - -#: ../src/widgets/spray-toolbar.cpp:224 -msgid "Amount" -msgstr "Quantité" - -#: ../src/widgets/spray-toolbar.cpp:225 -msgid "Adjusts the number of items sprayed per click" -msgstr "Ajuste le nombre de d'éléments pulvérisés par clic" - -#: ../src/widgets/spray-toolbar.cpp:241 -msgid "Use the pressure of the input device to alter the amount of sprayed objects" -msgstr "Utiliser la pression du périphérique d'entrée pour modifier la quantité d'objets pulvérisés" - -#: ../src/widgets/spray-toolbar.cpp:251 -msgid "(high rotation variation)" -msgstr "(variation de rotation forte)" - -#: ../src/widgets/spray-toolbar.cpp:254 -msgid "Rotation" -msgstr "Rotation" - -#: ../src/widgets/spray-toolbar.cpp:254 -msgid "Rotation:" -msgstr "Rotation :" - -#: ../src/widgets/spray-toolbar.cpp:256 -#, no-c-format -msgid "Variation of the rotation of the sprayed objects; 0% for the same rotation than the original object" -msgstr "Variation de rotation des objets pulvérisés ; 0 % pour utiliser la même rotation que l'objet original" - -#: ../src/widgets/spray-toolbar.cpp:269 -msgid "(high scale variation)" -msgstr "(variation d'échelle forte)" - -#: ../src/widgets/spray-toolbar.cpp:272 -msgctxt "Spray tool" -msgid "Scale" -msgstr "Échelle" - -#: ../src/widgets/spray-toolbar.cpp:272 -msgctxt "Spray tool" -msgid "Scale:" -msgstr "Échelle :" - -#: ../src/widgets/spray-toolbar.cpp:274 -#, no-c-format -msgid "Variation in the scale of the sprayed objects; 0% for the same scale than the original object" -msgstr "Variation de l'échelle des objets pulvérisés ; 0 % pour utiliser la même taille que l'objet original" - #: ../src/widgets/sp-attribute-widget.cpp:299 msgid "Set attribute" msgstr "Définir l'attribut" @@ -25023,7 +27286,8 @@ msgstr "Fixer" #: ../src/widgets/sp-color-icc-selector.cpp:458 msgid "Fix RGB fallback to match icc-color() value." -msgstr "Fixer une valeur RVB de secours pour correspondre à la valeur icc-color()." +msgstr "" +"Fixer une valeur RVB de secours pour correspondre à la valeur icc-color()." # Alpha (opacity) #. Label @@ -25085,6 +27349,243 @@ msgstr "CMJN" msgid "Unnamed" msgstr "Sans nom" +#: ../src/widgets/spiral-toolbar.cpp:111 +msgid "Change spiral" +msgstr "Modifier une spirale" + +#: ../src/widgets/spiral-toolbar.cpp:257 +msgid "just a curve" +msgstr "juste une courbe" + +#: ../src/widgets/spiral-toolbar.cpp:257 +msgid "one full revolution" +msgstr "une révolution complète" + +#: ../src/widgets/spiral-toolbar.cpp:260 +msgid "Number of turns" +msgstr "Nombre de tours" + +#: ../src/widgets/spiral-toolbar.cpp:260 +msgid "Turns:" +msgstr "Tours :" + +#: ../src/widgets/spiral-toolbar.cpp:260 +msgid "Number of revolutions" +msgstr "Nombre de révolutions" + +#: ../src/widgets/spiral-toolbar.cpp:271 +msgid "circle" +msgstr "cercle" + +#: ../src/widgets/spiral-toolbar.cpp:271 +msgid "edge is much denser" +msgstr "le bord est beaucoup plus dense" + +#: ../src/widgets/spiral-toolbar.cpp:271 +msgid "edge is denser" +msgstr "le bord est plus dense" + +#: ../src/widgets/spiral-toolbar.cpp:271 +msgid "even" +msgstr "égal" + +#: ../src/widgets/spiral-toolbar.cpp:271 +msgid "center is denser" +msgstr "le centre est plus dense" + +#: ../src/widgets/spiral-toolbar.cpp:271 +msgid "center is much denser" +msgstr "le centre est beaucoup plus dense" + +#: ../src/widgets/spiral-toolbar.cpp:274 +msgid "Divergence" +msgstr "Divergence :" + +#: ../src/widgets/spiral-toolbar.cpp:274 +msgid "Divergence:" +msgstr "Divergence :" + +#: ../src/widgets/spiral-toolbar.cpp:274 +msgid "How much denser/sparser are outer revolutions; 1 = uniform" +msgstr "Densité de la révolution; 1 = uniforme" + +#: ../src/widgets/spiral-toolbar.cpp:285 +msgid "starts from center" +msgstr "démarrer du centre" + +#: ../src/widgets/spiral-toolbar.cpp:285 +msgid "starts mid-way" +msgstr "démarrer du milieu" + +#: ../src/widgets/spiral-toolbar.cpp:285 +msgid "starts near edge" +msgstr "démarrer près du bord" + +#: ../src/widgets/spiral-toolbar.cpp:288 +msgid "Inner radius" +msgstr "Rayon intérieur :" + +#: ../src/widgets/spiral-toolbar.cpp:288 +msgid "Inner radius:" +msgstr "Rayon intérieur :" + +#: ../src/widgets/spiral-toolbar.cpp:288 +msgid "Radius of the innermost revolution (relative to the spiral size)" +msgstr "" +"Rayon de la révolution intérieure (relatif aux dimensions de la spirale)" + +#: ../src/widgets/spiral-toolbar.cpp:301 ../src/widgets/star-toolbar.cpp:573 +msgid "" +"Reset shape parameters to defaults (use Inkscape Preferences > Tools to " +"change defaults)" +msgstr "" +"Restaurer les préférences de la forme par défaut (changez les valeurs par " +"défaut dans Inkscape Préférences>Outils)" + +#. Width +#: ../src/widgets/spray-toolbar.cpp:125 +msgid "(narrow spray)" +msgstr "(pulvérisation étroite)" + +#: ../src/widgets/spray-toolbar.cpp:125 +msgid "(broad spray)" +msgstr "(pulvérisation large)" + +#: ../src/widgets/spray-toolbar.cpp:128 +msgid "The width of the spray area (relative to the visible canvas area)" +msgstr "" +"Largeur de la zone de pulvérisation (relativement à la zone de travail " +"visible)" + +#: ../src/widgets/spray-toolbar.cpp:141 +msgid "(maximum mean)" +msgstr "(moyenne maximale)" + +#: ../src/widgets/spray-toolbar.cpp:144 +msgid "Focus" +msgstr "Rayon" + +#: ../src/widgets/spray-toolbar.cpp:144 +msgid "Focus:" +msgstr "Rayon :" + +#: ../src/widgets/spray-toolbar.cpp:144 +msgid "0 to spray a spot; increase to enlarge the ring radius" +msgstr "" +"0 pour pulvériser sur un seul endroit ; augmenter pour élargir le rayon de " +"pulvérisation" + +#. Standard_deviation +#: ../src/widgets/spray-toolbar.cpp:157 +msgid "(minimum scatter)" +msgstr "(dispersion minimale)" + +#: ../src/widgets/spray-toolbar.cpp:157 +msgid "(maximum scatter)" +msgstr "(dispersion maximale)" + +#: ../src/widgets/spray-toolbar.cpp:160 +msgctxt "Spray tool" +msgid "Scatter" +msgstr "Éparpiller" + +#: ../src/widgets/spray-toolbar.cpp:160 +msgctxt "Spray tool" +msgid "Scatter:" +msgstr "Éparpiller :" + +#: ../src/widgets/spray-toolbar.cpp:160 +msgid "Increase to scatter sprayed objects" +msgstr "Augmenter pour disperser les objets pulvérisés" + +#: ../src/widgets/spray-toolbar.cpp:179 +msgid "Spray copies of the initial selection" +msgstr "Pulvériser des copies de la sélection initiale" + +#: ../src/widgets/spray-toolbar.cpp:186 +msgid "Spray clones of the initial selection" +msgstr "Pulvériser des clones de la sélection initiale" + +#: ../src/widgets/spray-toolbar.cpp:192 +msgid "Spray single path" +msgstr "Pulvérisation par union des formes" + +#: ../src/widgets/spray-toolbar.cpp:193 +msgid "Spray objects in a single path" +msgstr "Pulvérisation fusionnée en un chemin unique" + +#: ../src/widgets/spray-toolbar.cpp:197 ../src/widgets/tweak-toolbar.cpp:267 +msgid "Mode" +msgstr "Mode" + +#. Population +#: ../src/widgets/spray-toolbar.cpp:217 +msgid "(low population)" +msgstr "(faible population)" + +#: ../src/widgets/spray-toolbar.cpp:217 +msgid "(high population)" +msgstr "(forte population)" + +#: ../src/widgets/spray-toolbar.cpp:220 +msgid "Amount" +msgstr "Quantité" + +#: ../src/widgets/spray-toolbar.cpp:221 +msgid "Adjusts the number of items sprayed per click" +msgstr "Ajuste le nombre de d'éléments pulvérisés par clic" + +#: ../src/widgets/spray-toolbar.cpp:237 +msgid "" +"Use the pressure of the input device to alter the amount of sprayed objects" +msgstr "" +"Utiliser la pression du périphérique d'entrée pour modifier la quantité " +"d'objets pulvérisés" + +#: ../src/widgets/spray-toolbar.cpp:247 +msgid "(high rotation variation)" +msgstr "(variation de rotation forte)" + +#: ../src/widgets/spray-toolbar.cpp:250 +msgid "Rotation" +msgstr "Rotation" + +#: ../src/widgets/spray-toolbar.cpp:250 +msgid "Rotation:" +msgstr "Rotation :" + +#: ../src/widgets/spray-toolbar.cpp:252 +#, no-c-format +msgid "" +"Variation of the rotation of the sprayed objects; 0% for the same rotation " +"than the original object" +msgstr "" +"Variation de rotation des objets pulvérisés ; 0 % pour utiliser la même " +"rotation que l'objet original" + +#: ../src/widgets/spray-toolbar.cpp:265 +msgid "(high scale variation)" +msgstr "(variation d'échelle forte)" + +#: ../src/widgets/spray-toolbar.cpp:268 +msgctxt "Spray tool" +msgid "Scale" +msgstr "Échelle" + +#: ../src/widgets/spray-toolbar.cpp:268 +msgctxt "Spray tool" +msgid "Scale:" +msgstr "Échelle :" + +#: ../src/widgets/spray-toolbar.cpp:270 +#, no-c-format +msgid "" +"Variation in the scale of the sprayed objects; 0% for the same scale than " +"the original object" +msgstr "" +"Variation de l'échelle des objets pulvérisés ; 0 % pour utiliser la même " +"taille que l'objet original" + #: ../src/widgets/sp-xmlview-attr-list.cpp:64 msgid "Value" msgstr "Valeur" @@ -25093,182 +27594,181 @@ msgstr "Valeur" msgid "Type text in a text node" msgstr "Taper du texte dans un nÅ“ud texte" -#: ../src/widgets/star-toolbar.cpp:114 +#: ../src/widgets/star-toolbar.cpp:110 msgid "Star: Change number of corners" msgstr "Étoile : modifier le nombre de sommets" -#: ../src/widgets/star-toolbar.cpp:167 +#: ../src/widgets/star-toolbar.cpp:163 msgid "Star: Change spoke ratio" msgstr "Étoile : modifier le ratio des rayons" -#: ../src/widgets/star-toolbar.cpp:212 +#: ../src/widgets/star-toolbar.cpp:208 msgid "Make polygon" msgstr "Transformer en polygone" -#: ../src/widgets/star-toolbar.cpp:212 +#: ../src/widgets/star-toolbar.cpp:208 msgid "Make star" msgstr "Transformer en étoile" -#: ../src/widgets/star-toolbar.cpp:251 +#: ../src/widgets/star-toolbar.cpp:247 msgid "Star: Change rounding" msgstr "Étoile : modifier l'arrondi" -#: ../src/widgets/star-toolbar.cpp:291 +#: ../src/widgets/star-toolbar.cpp:287 msgid "Star: Change randomization" msgstr "Étoile : modifier le hasard" -#: ../src/widgets/star-toolbar.cpp:475 +#: ../src/widgets/star-toolbar.cpp:471 msgid "Regular polygon (with one handle) instead of a star" msgstr "Polygone régulier (avec une poignée) au lieu d'une étoile" -#: ../src/widgets/star-toolbar.cpp:482 +#: ../src/widgets/star-toolbar.cpp:478 msgid "Star instead of a regular polygon (with one handle)" msgstr "Étoile au lieu d'un polygone régulier (avec une poignée)" -#: ../src/widgets/star-toolbar.cpp:503 +#: ../src/widgets/star-toolbar.cpp:499 msgid "triangle/tri-star" msgstr "triangle/étoile à trois branches" -#: ../src/widgets/star-toolbar.cpp:503 +#: ../src/widgets/star-toolbar.cpp:499 msgid "square/quad-star" msgstr "carré/étoile à quatre branches" -#: ../src/widgets/star-toolbar.cpp:503 +#: ../src/widgets/star-toolbar.cpp:499 msgid "pentagon/five-pointed star" msgstr "pentagone/étoile à cinq branches" -#: ../src/widgets/star-toolbar.cpp:503 +#: ../src/widgets/star-toolbar.cpp:499 msgid "hexagon/six-pointed star" msgstr "hexagone/étoile à six branches" -#: ../src/widgets/star-toolbar.cpp:506 +#: ../src/widgets/star-toolbar.cpp:502 msgid "Corners" msgstr "Sommets" -#: ../src/widgets/star-toolbar.cpp:506 +#: ../src/widgets/star-toolbar.cpp:502 msgid "Corners:" msgstr "Sommets :" -#: ../src/widgets/star-toolbar.cpp:506 +#: ../src/widgets/star-toolbar.cpp:502 msgid "Number of corners of a polygon or star" msgstr "Nombre de sommets du polygone ou de l'étoile" -#: ../src/widgets/star-toolbar.cpp:519 +#: ../src/widgets/star-toolbar.cpp:515 msgid "thin-ray star" msgstr "étoile à branches fines" -#: ../src/widgets/star-toolbar.cpp:519 +#: ../src/widgets/star-toolbar.cpp:515 msgid "pentagram" msgstr "pentagramme" -#: ../src/widgets/star-toolbar.cpp:519 +#: ../src/widgets/star-toolbar.cpp:515 msgid "hexagram" msgstr "hexagramme" -#: ../src/widgets/star-toolbar.cpp:519 +#: ../src/widgets/star-toolbar.cpp:515 msgid "heptagram" msgstr "heptagramme" -#: ../src/widgets/star-toolbar.cpp:519 +#: ../src/widgets/star-toolbar.cpp:515 msgid "octagram" msgstr "octagramme" -#: ../src/widgets/star-toolbar.cpp:519 +#: ../src/widgets/star-toolbar.cpp:515 msgid "regular polygon" msgstr "polygone régulier" -#: ../src/widgets/star-toolbar.cpp:522 +#: ../src/widgets/star-toolbar.cpp:518 msgid "Spoke ratio" msgstr "Ratio des rayons" -#: ../src/widgets/star-toolbar.cpp:522 +#: ../src/widgets/star-toolbar.cpp:518 msgid "Spoke ratio:" msgstr "Ratio des rayons :" #. 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:525 +#: ../src/widgets/star-toolbar.cpp:521 msgid "Base radius to tip radius ratio" msgstr "Rapport du rayon intérieur sur le rayon extérieur" -#: ../src/widgets/star-toolbar.cpp:543 +#: ../src/widgets/star-toolbar.cpp:539 msgid "stretched" msgstr "étiré" -#: ../src/widgets/star-toolbar.cpp:543 +#: ../src/widgets/star-toolbar.cpp:539 msgid "twisted" msgstr "tordu" -#: ../src/widgets/star-toolbar.cpp:543 +#: ../src/widgets/star-toolbar.cpp:539 msgid "slightly pinched" msgstr "légèrement pincé" -#: ../src/widgets/star-toolbar.cpp:543 +#: ../src/widgets/star-toolbar.cpp:539 msgid "NOT rounded" msgstr "PAS arrondi" -#: ../src/widgets/star-toolbar.cpp:543 +#: ../src/widgets/star-toolbar.cpp:539 msgid "slightly rounded" msgstr "léger arrondi" -#: ../src/widgets/star-toolbar.cpp:543 +#: ../src/widgets/star-toolbar.cpp:539 msgid "visibly rounded" msgstr "arrondi visible" -#: ../src/widgets/star-toolbar.cpp:543 +#: ../src/widgets/star-toolbar.cpp:539 msgid "well rounded" msgstr "bien arrondi" -#: ../src/widgets/star-toolbar.cpp:543 +#: ../src/widgets/star-toolbar.cpp:539 msgid "amply rounded" msgstr "largement arrondi" -#: ../src/widgets/star-toolbar.cpp:543 -#: ../src/widgets/star-toolbar.cpp:558 +#: ../src/widgets/star-toolbar.cpp:539 ../src/widgets/star-toolbar.cpp:554 msgid "blown up" msgstr "gonflé" -#: ../src/widgets/star-toolbar.cpp:546 +#: ../src/widgets/star-toolbar.cpp:542 msgid "Rounded:" msgstr "Arrondi :" -#: ../src/widgets/star-toolbar.cpp:546 +#: ../src/widgets/star-toolbar.cpp:542 msgid "How much rounded are the corners (0 for sharp)" msgstr "Quantité d'arrondi des sommets (0 pour pointu)" -#: ../src/widgets/star-toolbar.cpp:558 +#: ../src/widgets/star-toolbar.cpp:554 msgid "NOT randomized" msgstr "PAS aléatoire" -#: ../src/widgets/star-toolbar.cpp:558 +#: ../src/widgets/star-toolbar.cpp:554 msgid "slightly irregular" msgstr "légérement irrégulier" -#: ../src/widgets/star-toolbar.cpp:558 +#: ../src/widgets/star-toolbar.cpp:554 msgid "visibly randomized" msgstr "sensiblement aléatoire" -#: ../src/widgets/star-toolbar.cpp:558 +#: ../src/widgets/star-toolbar.cpp:554 msgid "strongly randomized" msgstr "très aléatoire" -#: ../src/widgets/star-toolbar.cpp:561 +#: ../src/widgets/star-toolbar.cpp:557 msgid "Randomized" msgstr "Aléatoire" -#: ../src/widgets/star-toolbar.cpp:561 +#: ../src/widgets/star-toolbar.cpp:557 msgid "Randomized:" msgstr "Hasard :" -#: ../src/widgets/star-toolbar.cpp:561 +#: ../src/widgets/star-toolbar.cpp:557 msgid "Scatter randomly the corners and angles" msgstr "Disperser aléatoirement les sommets et les angles" -#: ../src/widgets/stroke-style.cpp:185 +#: ../src/widgets/stroke-style.cpp:191 msgid "Stroke width" msgstr "Épaisseur du contour" -#: ../src/widgets/stroke-style.cpp:187 +#: ../src/widgets/stroke-style.cpp:193 msgctxt "Stroke width" msgid "_Width:" msgstr "_Épaisseur :" @@ -25276,87 +27776,92 @@ msgstr "_Épaisseur :" #. TRANSLATORS: Miter join: joining lines with a sharp (pointed) corner. #. For an example, draw a triangle with a large stroke width and modify the #. "Join" option (in the Fill and Stroke dialog). -#: ../src/widgets/stroke-style.cpp:232 +#: ../src/widgets/stroke-style.cpp:238 msgid "Miter join" msgstr "Raccord droit" #. TRANSLATORS: Round join: joining lines with a rounded corner. #. For an example, draw a triangle with a large stroke width and modify the #. "Join" option (in the Fill and Stroke dialog). -#: ../src/widgets/stroke-style.cpp:240 +#: ../src/widgets/stroke-style.cpp:246 msgid "Round join" msgstr "Raccord arrondi" #. TRANSLATORS: Bevel join: joining lines with a blunted (flattened) corner. #. For an example, draw a triangle with a large stroke width and modify the #. "Join" option (in the Fill and Stroke dialog). -#: ../src/widgets/stroke-style.cpp:248 +#: ../src/widgets/stroke-style.cpp:254 msgid "Bevel join" msgstr "Raccord biseauté" -#: ../src/widgets/stroke-style.cpp:273 +#: ../src/widgets/stroke-style.cpp:279 msgid "Miter _limit:" msgstr "_Limite du raccord :" #. Cap type #. TRANSLATORS: cap type specifies the shape for the ends of lines #. spw_label(t, _("_Cap:"), 0, i); -#: ../src/widgets/stroke-style.cpp:289 +#: ../src/widgets/stroke-style.cpp:295 msgid "Cap:" msgstr "Terminaison :" #. TRANSLATORS: Butt cap: the line shape does not extend beyond the end point #. of the line; the ends of the line are square -#: ../src/widgets/stroke-style.cpp:300 +#: ../src/widgets/stroke-style.cpp:306 msgid "Butt cap" msgstr "Terminaison sur le nÅ“ud" #. TRANSLATORS: Round cap: the line shape extends beyond the end point of the #. line; the ends of the line are rounded -#: ../src/widgets/stroke-style.cpp:307 +#: ../src/widgets/stroke-style.cpp:313 msgid "Round cap" msgstr "Terminaison arrondie" #. TRANSLATORS: Square cap: the line shape extends beyond the end point of the #. line; the ends of the line are square -#: ../src/widgets/stroke-style.cpp:314 +#: ../src/widgets/stroke-style.cpp:320 msgid "Square cap" msgstr "Terminaison carrée" #. Dash -#: ../src/widgets/stroke-style.cpp:319 +#: ../src/widgets/stroke-style.cpp:325 msgid "Dashes:" msgstr "Pointillés :" #. Drop down marker selectors #. TRANSLATORS: Path markers are an SVG feature that allows you to attach arbitrary shapes #. (arrowheads, bullets, faces, whatever) to the start, end, or middle nodes of a path. -#: ../src/widgets/stroke-style.cpp:345 +#: ../src/widgets/stroke-style.cpp:351 msgid "Markers:" msgstr "Marqueurs :" -#: ../src/widgets/stroke-style.cpp:351 +#: ../src/widgets/stroke-style.cpp:357 msgid "Start Markers are drawn on the first node of a path or shape" -msgstr "Les marqueurs de début sont dessinés sur le premier nÅ“ud d'un chemin ou objet" +msgstr "" +"Les marqueurs de début sont dessinés sur le premier nÅ“ud d'un chemin ou objet" -#: ../src/widgets/stroke-style.cpp:360 -msgid "Mid Markers are drawn on every node of a path or shape except the first and last nodes" -msgstr "Les marqueurs intermédiaires sont dessinés sur chaque nÅ“ud d'un chemin ou objet, à l'exception du premier et du dernier" +#: ../src/widgets/stroke-style.cpp:366 +msgid "" +"Mid Markers are drawn on every node of a path or shape except the first and " +"last nodes" +msgstr "" +"Les marqueurs intermédiaires sont dessinés sur chaque nÅ“ud d'un chemin ou " +"objet, à l'exception du premier et du dernier" -#: ../src/widgets/stroke-style.cpp:369 +#: ../src/widgets/stroke-style.cpp:375 msgid "End Markers are drawn on the last node of a path or shape" -msgstr "Les marqueurs de fin sont dessinés sur le dernier nÅ“ud d'un chemin ou objet" +msgstr "" +"Les marqueurs de fin sont dessinés sur le dernier nÅ“ud d'un chemin ou objet" -#: ../src/widgets/stroke-style.cpp:487 +#: ../src/widgets/stroke-style.cpp:493 msgid "Set markers" msgstr "Appliquer des marqueurs" -#: ../src/widgets/stroke-style.cpp:1075 -#: ../src/widgets/stroke-style.cpp:1160 +#: ../src/widgets/stroke-style.cpp:1022 ../src/widgets/stroke-style.cpp:1107 msgid "Set stroke style" msgstr "Appliquer un style de contour" -#: ../src/widgets/stroke-style.cpp:1248 +#: ../src/widgets/stroke-style.cpp:1195 msgid "Set marker color" msgstr "Appliquer une couleur de marqueur" @@ -25364,241 +27869,238 @@ msgstr "Appliquer une couleur de marqueur" msgid "Change swatch color" msgstr "Modifier la couleur de l'échantillon" -#: ../src/widgets/text-toolbar.cpp:178 +#: ../src/widgets/text-toolbar.cpp:174 msgid "Text: Change font family" msgstr "Texte : modifier la police" -#: ../src/widgets/text-toolbar.cpp:242 +#: ../src/widgets/text-toolbar.cpp:238 msgid "Text: Change font size" msgstr "Texte : modifier la taille de police" -#: ../src/widgets/text-toolbar.cpp:280 +#: ../src/widgets/text-toolbar.cpp:276 msgid "Text: Change font style" msgstr "Texte : modifier le style de la police" -#: ../src/widgets/text-toolbar.cpp:358 +#: ../src/widgets/text-toolbar.cpp:354 msgid "Text: Change superscript or subscript" msgstr "Texte : passe en exposant ou en indice" -#: ../src/widgets/text-toolbar.cpp:503 +#: ../src/widgets/text-toolbar.cpp:499 msgid "Text: Change alignment" msgstr "Texte : modifier l'alignement" -#: ../src/widgets/text-toolbar.cpp:546 +#: ../src/widgets/text-toolbar.cpp:542 msgid "Text: Change line-height" msgstr "Texte : modifier la hauteur de ligne" -#: ../src/widgets/text-toolbar.cpp:595 +#: ../src/widgets/text-toolbar.cpp:591 msgid "Text: Change word-spacing" msgstr "Texte : modifier l'espacement intermot" -#: ../src/widgets/text-toolbar.cpp:636 +#: ../src/widgets/text-toolbar.cpp:632 msgid "Text: Change letter-spacing" msgstr "Texte : modifier l'interlettrage" -#: ../src/widgets/text-toolbar.cpp:676 +#: ../src/widgets/text-toolbar.cpp:672 msgid "Text: Change dx (kern)" msgstr "Texte : modifier dx (crénage)" -#: ../src/widgets/text-toolbar.cpp:710 +#: ../src/widgets/text-toolbar.cpp:706 msgid "Text: Change dy" msgstr "Texte : modifier dy" -#: ../src/widgets/text-toolbar.cpp:745 +#: ../src/widgets/text-toolbar.cpp:741 msgid "Text: Change rotate" msgstr "Texte : modifier la rotation" -#: ../src/widgets/text-toolbar.cpp:793 +#: ../src/widgets/text-toolbar.cpp:789 msgid "Text: Change orientation" msgstr "Texte : modifier l'orientation" -#: ../src/widgets/text-toolbar.cpp:1235 +#: ../src/widgets/text-toolbar.cpp:1226 msgid "Font Family" msgstr "Famille de police" -#: ../src/widgets/text-toolbar.cpp:1236 +#: ../src/widgets/text-toolbar.cpp:1227 msgid "Select Font Family (Alt-X to access)" msgstr "Sélectionner une famille de police (Alt+X pour y accéder)" #. Focus widget #. Enable entry completion -#: ../src/widgets/text-toolbar.cpp:1246 +#: ../src/widgets/text-toolbar.cpp:1237 msgid "Select all text with this font-family" msgstr "Sélectionne tout texte ayant ces famille de fonte" -#: ../src/widgets/text-toolbar.cpp:1250 +#: ../src/widgets/text-toolbar.cpp:1241 msgid "Font not found on system" msgstr "Police indisponible sur votre système" -#: ../src/widgets/text-toolbar.cpp:1309 +#: ../src/widgets/text-toolbar.cpp:1300 msgid "Font Style" msgstr "Style de police" -#: ../src/widgets/text-toolbar.cpp:1310 +#: ../src/widgets/text-toolbar.cpp:1301 msgid "Font style" msgstr "Style de police" #. Name -#: ../src/widgets/text-toolbar.cpp:1327 +#: ../src/widgets/text-toolbar.cpp:1318 msgid "Toggle Superscript" msgstr "Inverser le mode exposant" #. Label -#: ../src/widgets/text-toolbar.cpp:1328 +#: ../src/widgets/text-toolbar.cpp:1319 msgid "Toggle superscript" msgstr "Inverser le mode exposant" #. Name -#: ../src/widgets/text-toolbar.cpp:1340 +#: ../src/widgets/text-toolbar.cpp:1331 msgid "Toggle Subscript" msgstr "Inverser le mode indice" #. Label -#: ../src/widgets/text-toolbar.cpp:1341 +#: ../src/widgets/text-toolbar.cpp:1332 msgid "Toggle subscript" msgstr "Inverser le mode indice" -#: ../src/widgets/text-toolbar.cpp:1382 +#: ../src/widgets/text-toolbar.cpp:1373 msgid "Justify" msgstr "Justifier" #. Name -#: ../src/widgets/text-toolbar.cpp:1389 +#: ../src/widgets/text-toolbar.cpp:1380 msgid "Alignment" msgstr "Alignement" #. Label -#: ../src/widgets/text-toolbar.cpp:1390 +#: ../src/widgets/text-toolbar.cpp:1381 msgid "Text alignment" msgstr "Alignement du texte" -#: ../src/widgets/text-toolbar.cpp:1417 +#: ../src/widgets/text-toolbar.cpp:1408 msgid "Horizontal" msgstr "Horizontal" -#: ../src/widgets/text-toolbar.cpp:1424 +#: ../src/widgets/text-toolbar.cpp:1415 msgid "Vertical" msgstr "Vertical" #. Label -#: ../src/widgets/text-toolbar.cpp:1431 +#: ../src/widgets/text-toolbar.cpp:1422 msgid "Text orientation" msgstr "Orientation du texte" #. Drop down menu -#: ../src/widgets/text-toolbar.cpp:1454 +#: ../src/widgets/text-toolbar.cpp:1445 msgid "Smaller spacing" msgstr "Espacement plus faible" -#: ../src/widgets/text-toolbar.cpp:1454 -#: ../src/widgets/text-toolbar.cpp:1485 -#: ../src/widgets/text-toolbar.cpp:1516 +#: ../src/widgets/text-toolbar.cpp:1445 ../src/widgets/text-toolbar.cpp:1476 +#: ../src/widgets/text-toolbar.cpp:1507 msgctxt "Text tool" msgid "Normal" msgstr "Normal" -#: ../src/widgets/text-toolbar.cpp:1454 +#: ../src/widgets/text-toolbar.cpp:1445 msgid "Larger spacing" msgstr "Espacement plus important" #. name -#: ../src/widgets/text-toolbar.cpp:1459 +#: ../src/widgets/text-toolbar.cpp:1450 msgid "Line Height" msgstr "Hauteur de ligne" #. label -#: ../src/widgets/text-toolbar.cpp:1460 +#: ../src/widgets/text-toolbar.cpp:1451 msgid "Line:" msgstr "Ligne :" #. short label -#: ../src/widgets/text-toolbar.cpp:1461 +#: ../src/widgets/text-toolbar.cpp:1452 msgid "Spacing between lines (times font size)" msgstr "Espacement entre les lignes (nombre de fois la taille de la police)" #. Drop down menu -#: ../src/widgets/text-toolbar.cpp:1485 -#: ../src/widgets/text-toolbar.cpp:1516 +#: ../src/widgets/text-toolbar.cpp:1476 ../src/widgets/text-toolbar.cpp:1507 msgid "Negative spacing" msgstr "Espacement négatif" -#: ../src/widgets/text-toolbar.cpp:1485 -#: ../src/widgets/text-toolbar.cpp:1516 +#: ../src/widgets/text-toolbar.cpp:1476 ../src/widgets/text-toolbar.cpp:1507 msgid "Positive spacing" msgstr "Espacement positif" #. name -#: ../src/widgets/text-toolbar.cpp:1490 +#: ../src/widgets/text-toolbar.cpp:1481 msgid "Word spacing" msgstr "Espacement intermot" #. label -#: ../src/widgets/text-toolbar.cpp:1491 +#: ../src/widgets/text-toolbar.cpp:1482 msgid "Word:" msgstr "Mot :" #. short label -#: ../src/widgets/text-toolbar.cpp:1492 +#: ../src/widgets/text-toolbar.cpp:1483 msgid "Spacing between words (px)" msgstr "Espacement entre les mots (px)" #. name -#: ../src/widgets/text-toolbar.cpp:1521 +#: ../src/widgets/text-toolbar.cpp:1512 msgid "Letter spacing" msgstr "Interlettrage" #. label -#: ../src/widgets/text-toolbar.cpp:1522 +#: ../src/widgets/text-toolbar.cpp:1513 msgid "Letter:" msgstr "Lettre :" #. short label -#: ../src/widgets/text-toolbar.cpp:1523 +#: ../src/widgets/text-toolbar.cpp:1514 msgid "Spacing between letters (px)" msgstr "Espacement entre les lettres (px)" #. name -#: ../src/widgets/text-toolbar.cpp:1552 +#: ../src/widgets/text-toolbar.cpp:1543 msgid "Kerning" msgstr "Crénage" #. label -#: ../src/widgets/text-toolbar.cpp:1553 +#: ../src/widgets/text-toolbar.cpp:1544 msgid "Kern:" msgstr "Crénage :" #. short label -#: ../src/widgets/text-toolbar.cpp:1554 +#: ../src/widgets/text-toolbar.cpp:1545 msgid "Horizontal kerning (px)" msgstr "Crénage horizontal (px)" #. name -#: ../src/widgets/text-toolbar.cpp:1583 +#: ../src/widgets/text-toolbar.cpp:1574 msgid "Vertical Shift" msgstr "Décalage vertical" #. label -#: ../src/widgets/text-toolbar.cpp:1584 +#: ../src/widgets/text-toolbar.cpp:1575 msgid "Vert:" msgstr "Vertical :" #. short label -#: ../src/widgets/text-toolbar.cpp:1585 +#: ../src/widgets/text-toolbar.cpp:1576 msgid "Vertical shift (px)" msgstr "Décalage vertical (px)" #. name -#: ../src/widgets/text-toolbar.cpp:1614 +#: ../src/widgets/text-toolbar.cpp:1605 msgid "Letter rotation" msgstr "Rotation des caractères" #. label -#: ../src/widgets/text-toolbar.cpp:1615 +#: ../src/widgets/text-toolbar.cpp:1606 msgid "Rot:" msgstr "Rotation :" #. short label -#: ../src/widgets/text-toolbar.cpp:1616 +#: ../src/widgets/text-toolbar.cpp:1607 msgid "Character rotation (degrees)" msgstr "Rotation des caractères (degrés)" @@ -25638,8 +28140,7 @@ msgstr "Style des chemins créés par le stylo" msgid "Style of new calligraphic strokes" msgstr "Style des nouveaux tracés calligraphiques" -#: ../src/widgets/toolbox.cpp:205 -#: ../src/widgets/toolbox.cpp:207 +#: ../src/widgets/toolbox.cpp:205 ../src/widgets/toolbox.cpp:207 msgid "TBD" msgstr "À définir" @@ -25647,339 +28148,350 @@ msgstr "À définir" msgid "Style of Paint Bucket fill objects" msgstr "Style des objets créés par remplissage au seau" -#: ../src/widgets/toolbox.cpp:1682 +#: ../src/widgets/toolbox.cpp:1680 msgid "Bounding box" msgstr "Boîte englobante" -#: ../src/widgets/toolbox.cpp:1682 +#: ../src/widgets/toolbox.cpp:1680 msgid "Snap bounding boxes" msgstr "Aimanter aux boîtes englobantes" -#: ../src/widgets/toolbox.cpp:1691 +#: ../src/widgets/toolbox.cpp:1689 msgid "Bounding box edges" msgstr "Bords des boîtes englobantes" -#: ../src/widgets/toolbox.cpp:1691 +#: ../src/widgets/toolbox.cpp:1689 msgid "Snap to edges of a bounding box" msgstr "Aimanter aux bords des boîtes englobantes" -#: ../src/widgets/toolbox.cpp:1700 +#: ../src/widgets/toolbox.cpp:1698 msgid "Bounding box corners" msgstr "Coins des boîtes englobantes" -#: ../src/widgets/toolbox.cpp:1700 +#: ../src/widgets/toolbox.cpp:1698 msgid "Snap bounding box corners" msgstr "Aimanter aux coins des boîtes englobantes" -#: ../src/widgets/toolbox.cpp:1709 +#: ../src/widgets/toolbox.cpp:1707 msgid "BBox Edge Midpoints" msgstr "Milieux des bords de la boîte englobante" -#: ../src/widgets/toolbox.cpp:1709 +#: ../src/widgets/toolbox.cpp:1707 msgid "Snap midpoints of bounding box edges" msgstr "Aimanter au milieu des bords des boîtes englobantes" -#: ../src/widgets/toolbox.cpp:1719 +#: ../src/widgets/toolbox.cpp:1717 msgid "BBox Centers" msgstr "Centre des boîtes englobantes" -#: ../src/widgets/toolbox.cpp:1719 +#: ../src/widgets/toolbox.cpp:1717 msgid "Snapping centers of bounding boxes" msgstr "Aimanter au centre des boîtes englobantes" -#: ../src/widgets/toolbox.cpp:1728 +#: ../src/widgets/toolbox.cpp:1726 msgid "Snap nodes, paths, and handles" msgstr "Aimanter aux nÅ“uds, chemins et poignées" -#: ../src/widgets/toolbox.cpp:1736 +#: ../src/widgets/toolbox.cpp:1734 msgid "Snap to paths" msgstr "Aimanter aux chemins" -#: ../src/widgets/toolbox.cpp:1745 +#: ../src/widgets/toolbox.cpp:1743 msgid "Path intersections" msgstr "Intersections des chemins" -#: ../src/widgets/toolbox.cpp:1745 +#: ../src/widgets/toolbox.cpp:1743 msgid "Snap to path intersections" msgstr "Aimanter aux intersections des chemins" -#: ../src/widgets/toolbox.cpp:1754 +#: ../src/widgets/toolbox.cpp:1752 msgid "To nodes" msgstr "Aux nÅ“uds" -#: ../src/widgets/toolbox.cpp:1754 +#: ../src/widgets/toolbox.cpp:1752 msgid "Snap cusp nodes, incl. rectangle corners" msgstr "" -#: ../src/widgets/toolbox.cpp:1763 +#: ../src/widgets/toolbox.cpp:1761 msgid "Smooth nodes" msgstr "NÅ“uds doux" -#: ../src/widgets/toolbox.cpp:1763 +#: ../src/widgets/toolbox.cpp:1761 msgid "Snap smooth nodes, incl. quadrant points of ellipses" msgstr "" -#: ../src/widgets/toolbox.cpp:1772 +#: ../src/widgets/toolbox.cpp:1770 msgid "Line Midpoints" msgstr "Milieu de ligne" -#: ../src/widgets/toolbox.cpp:1772 +#: ../src/widgets/toolbox.cpp:1770 msgid "Snap midpoints of line segments" msgstr "Aimanter au milieu des segments" -#: ../src/widgets/toolbox.cpp:1781 +#: ../src/widgets/toolbox.cpp:1779 msgid "Others" msgstr "Autres" -#: ../src/widgets/toolbox.cpp:1781 +#: ../src/widgets/toolbox.cpp:1779 msgid "Snap other points (centers, guide origins, gradient handles, etc.)" -msgstr "Aimanter à d'autres points (centres, origines de guide, poignées de gradients, etc.)" +msgstr "" +"Aimanter à d'autres points (centres, origines de guide, poignées de " +"gradients, etc.)" -#: ../src/widgets/toolbox.cpp:1789 +#: ../src/widgets/toolbox.cpp:1787 msgid "Object Centers" msgstr "Centres d'objet" -#: ../src/widgets/toolbox.cpp:1789 +#: ../src/widgets/toolbox.cpp:1787 msgid "Snap centers of objects" msgstr "Aimanter au centre des objets" -#: ../src/widgets/toolbox.cpp:1798 +#: ../src/widgets/toolbox.cpp:1796 msgid "Rotation Centers" msgstr "Centres de rotation" -#: ../src/widgets/toolbox.cpp:1798 +#: ../src/widgets/toolbox.cpp:1796 msgid "Snap an item's rotation center" msgstr "Aimanter au centre de rotation d'un objet" -#: ../src/widgets/toolbox.cpp:1807 +#: ../src/widgets/toolbox.cpp:1805 msgid "Text baseline" msgstr "Ligne de base de texte" -#: ../src/widgets/toolbox.cpp:1807 +#: ../src/widgets/toolbox.cpp:1805 msgid "Snap text anchors and baselines" msgstr "Aimanter aux ancres et lignes de base" -#: ../src/widgets/toolbox.cpp:1817 +#: ../src/widgets/toolbox.cpp:1815 msgid "Page border" msgstr "Bords de la page" -#: ../src/widgets/toolbox.cpp:1817 +#: ../src/widgets/toolbox.cpp:1815 msgid "Snap to the page border" msgstr "Aimanter aux bords de la page" -#: ../src/widgets/toolbox.cpp:1826 +#: ../src/widgets/toolbox.cpp:1824 msgid "Snap to grids" msgstr "Aimanter aux grilles" -#: ../src/widgets/toolbox.cpp:1835 +#: ../src/widgets/toolbox.cpp:1833 msgid "Snap guides" msgstr "Aimanter aux guides" #. Width -#: ../src/widgets/tweak-toolbar.cpp:143 +#: ../src/widgets/tweak-toolbar.cpp:139 msgid "(pinch tweak)" msgstr "(ajustement serré)" -#: ../src/widgets/tweak-toolbar.cpp:143 +#: ../src/widgets/tweak-toolbar.cpp:139 msgid "(broad tweak)" msgstr "(ajustement large)" -#: ../src/widgets/tweak-toolbar.cpp:146 +#: ../src/widgets/tweak-toolbar.cpp:142 msgid "The width of the tweak area (relative to the visible canvas area)" -msgstr "Largeur de la zone d'ajustement (relativement à la zone de travail visible)" +msgstr "" +"Largeur de la zone d'ajustement (relativement à la zone de travail visible)" #. Force -#: ../src/widgets/tweak-toolbar.cpp:160 +#: ../src/widgets/tweak-toolbar.cpp:156 msgid "(minimum force)" msgstr "(force minimum)" -#: ../src/widgets/tweak-toolbar.cpp:160 +#: ../src/widgets/tweak-toolbar.cpp:156 msgid "(maximum force)" msgstr "(force maximum)" -#: ../src/widgets/tweak-toolbar.cpp:163 +#: ../src/widgets/tweak-toolbar.cpp:159 msgid "Force" msgstr "Force" -#: ../src/widgets/tweak-toolbar.cpp:163 +#: ../src/widgets/tweak-toolbar.cpp:159 msgid "Force:" msgstr "Force :" -#: ../src/widgets/tweak-toolbar.cpp:163 +#: ../src/widgets/tweak-toolbar.cpp:159 msgid "The force of the tweak action" msgstr "Force de l'action d'ajustement" -#: ../src/widgets/tweak-toolbar.cpp:181 +#: ../src/widgets/tweak-toolbar.cpp:177 msgid "Move mode" msgstr "Mode déplacement" -#: ../src/widgets/tweak-toolbar.cpp:182 +#: ../src/widgets/tweak-toolbar.cpp:178 msgid "Move objects in any direction" msgstr "Déplace la sélection dans la direction du curseur" -#: ../src/widgets/tweak-toolbar.cpp:188 +#: ../src/widgets/tweak-toolbar.cpp:184 msgid "Move in/out mode" msgstr "Mode rapprochement/éloignement" -#: ../src/widgets/tweak-toolbar.cpp:189 +#: ../src/widgets/tweak-toolbar.cpp:185 msgid "Move objects towards cursor; with Shift from cursor" msgstr "Déplace l'objet vers le curseur ; avec Maj, à l'encontre du curseur" -#: ../src/widgets/tweak-toolbar.cpp:195 +#: ../src/widgets/tweak-toolbar.cpp:191 msgid "Move jitter mode" msgstr "Mode déplacement aléatoire" -#: ../src/widgets/tweak-toolbar.cpp:196 +#: ../src/widgets/tweak-toolbar.cpp:192 msgid "Move objects in random directions" msgstr "Déplace la sélection dans une direction aléatoire" -#: ../src/widgets/tweak-toolbar.cpp:202 +#: ../src/widgets/tweak-toolbar.cpp:198 msgid "Scale mode" msgstr "Mode redimensionnement" -#: ../src/widgets/tweak-toolbar.cpp:203 +#: ../src/widgets/tweak-toolbar.cpp:199 msgid "Shrink objects, with Shift enlarge" msgstr "Rétrécir les objets, avec Maj. étirer" -#: ../src/widgets/tweak-toolbar.cpp:209 +#: ../src/widgets/tweak-toolbar.cpp:205 msgid "Rotate mode" msgstr "Mode rotation" -#: ../src/widgets/tweak-toolbar.cpp:210 +#: ../src/widgets/tweak-toolbar.cpp:206 msgid "Rotate objects, with Shift counterclockwise" -msgstr "Applique une rotation dans le sens horaire ; avec Maj, le sens est inversé" +msgstr "" +"Applique une rotation dans le sens horaire ; avec Maj, le sens est inversé" -#: ../src/widgets/tweak-toolbar.cpp:216 +#: ../src/widgets/tweak-toolbar.cpp:212 msgid "Duplicate/delete mode" msgstr "Mode duplication/suppression" -#: ../src/widgets/tweak-toolbar.cpp:217 +#: ../src/widgets/tweak-toolbar.cpp:213 msgid "Duplicate objects, with Shift delete" msgstr "Duplique les objets ; avec Maj, efface" -#: ../src/widgets/tweak-toolbar.cpp:223 +#: ../src/widgets/tweak-toolbar.cpp:219 msgid "Push mode" msgstr "Mode poussée" -#: ../src/widgets/tweak-toolbar.cpp:224 +#: ../src/widgets/tweak-toolbar.cpp:220 msgid "Push parts of paths in any direction" msgstr "Pousse le chemin dans le sens du curseur" -#: ../src/widgets/tweak-toolbar.cpp:230 +#: ../src/widgets/tweak-toolbar.cpp:226 msgid "Shrink/grow mode" msgstr "Mode rétrécissement/élargissement" -#: ../src/widgets/tweak-toolbar.cpp:231 +#: ../src/widgets/tweak-toolbar.cpp:227 msgid "Shrink (inset) parts of paths; with Shift grow (outset)" msgstr "Rétrécit les chemins (contraction) ; avec Maj, élargit (dilatation)" -#: ../src/widgets/tweak-toolbar.cpp:237 +#: ../src/widgets/tweak-toolbar.cpp:233 msgid "Attract/repel mode" msgstr "Mode attraction/répulsion" -#: ../src/widgets/tweak-toolbar.cpp:238 +#: ../src/widgets/tweak-toolbar.cpp:234 msgid "Attract parts of paths towards cursor; with Shift from cursor" -msgstr "Attire les chemins vers le curseur ; avec Maj, éloigne les chemins du curseur" +msgstr "" +"Attire les chemins vers le curseur ; avec Maj, éloigne les chemins du curseur" -#: ../src/widgets/tweak-toolbar.cpp:244 +#: ../src/widgets/tweak-toolbar.cpp:240 msgid "Roughen mode" msgstr "Mode rugueux" -#: ../src/widgets/tweak-toolbar.cpp:245 +#: ../src/widgets/tweak-toolbar.cpp:241 msgid "Roughen parts of paths" msgstr "Rend les chemins plus rugueux" -#: ../src/widgets/tweak-toolbar.cpp:251 +#: ../src/widgets/tweak-toolbar.cpp:247 msgid "Color paint mode" msgstr "Mode peinture de couleur" -#: ../src/widgets/tweak-toolbar.cpp:252 +#: ../src/widgets/tweak-toolbar.cpp:248 msgid "Paint the tool's color upon selected objects" msgstr "Décaler la couleur des objets vers celle de l'outil" -#: ../src/widgets/tweak-toolbar.cpp:258 +#: ../src/widgets/tweak-toolbar.cpp:254 msgid "Color jitter mode" msgstr "Mode perturbation des couleurs" -#: ../src/widgets/tweak-toolbar.cpp:259 +#: ../src/widgets/tweak-toolbar.cpp:255 msgid "Jitter the colors of selected objects" msgstr "Perturber la couleur des objets sélectionnés" -#: ../src/widgets/tweak-toolbar.cpp:265 +#: ../src/widgets/tweak-toolbar.cpp:261 msgid "Blur mode" msgstr "Mode flou" -#: ../src/widgets/tweak-toolbar.cpp:266 +#: ../src/widgets/tweak-toolbar.cpp:262 msgid "Blur selected objects more; with Shift, blur less" msgstr "Ajoute du flou à la sélection ; avec Maj, retire du flou" -#: ../src/widgets/tweak-toolbar.cpp:293 +#: ../src/widgets/tweak-toolbar.cpp:289 msgid "Channels:" msgstr "Canaux :" -#: ../src/widgets/tweak-toolbar.cpp:305 +#: ../src/widgets/tweak-toolbar.cpp:301 msgid "In color mode, act on objects' hue" msgstr "En mode couleur, agit sur la teinte des objets" #. TRANSLATORS: "H" here stands for hue -#: ../src/widgets/tweak-toolbar.cpp:309 +#: ../src/widgets/tweak-toolbar.cpp:305 msgid "H" msgstr "T" -#: ../src/widgets/tweak-toolbar.cpp:321 +#: ../src/widgets/tweak-toolbar.cpp:317 msgid "In color mode, act on objects' saturation" msgstr "En mode couleur, agit sur la saturation des objets" # Saturation (in HSL) #. TRANSLATORS: "S" here stands for Saturation -#: ../src/widgets/tweak-toolbar.cpp:325 +#: ../src/widgets/tweak-toolbar.cpp:321 msgid "S" msgstr "S" -#: ../src/widgets/tweak-toolbar.cpp:337 +#: ../src/widgets/tweak-toolbar.cpp:333 msgid "In color mode, act on objects' lightness" msgstr "En mode couleur, agit sur la luminosité des objets" # Luminosity (in HSL) #. TRANSLATORS: "L" here stands for Lightness -#: ../src/widgets/tweak-toolbar.cpp:341 +#: ../src/widgets/tweak-toolbar.cpp:337 msgid "L" msgstr "L" -#: ../src/widgets/tweak-toolbar.cpp:353 +#: ../src/widgets/tweak-toolbar.cpp:349 msgid "In color mode, act on objects' opacity" msgstr "En mode couleur, agit sur l'opacité des objets" # Opacity #. TRANSLATORS: "O" here stands for Opacity -#: ../src/widgets/tweak-toolbar.cpp:357 +#: ../src/widgets/tweak-toolbar.cpp:353 msgid "O" msgstr "O" #. Fidelity -#: ../src/widgets/tweak-toolbar.cpp:368 +#: ../src/widgets/tweak-toolbar.cpp:364 msgid "(rough, simplified)" msgstr "(grossier, simplifié)" -#: ../src/widgets/tweak-toolbar.cpp:368 +#: ../src/widgets/tweak-toolbar.cpp:364 msgid "(fine, but many nodes)" msgstr "(fin, mais avec beaucoup de nÅ“uds)" -#: ../src/widgets/tweak-toolbar.cpp:371 +#: ../src/widgets/tweak-toolbar.cpp:367 msgid "Fidelity" msgstr "Fidélité" -#: ../src/widgets/tweak-toolbar.cpp:371 +#: ../src/widgets/tweak-toolbar.cpp:367 msgid "Fidelity:" msgstr "Fidélité:" -#: ../src/widgets/tweak-toolbar.cpp:372 -msgid "Low fidelity simplifies paths; high fidelity preserves path features but may generate a lot of new nodes" -msgstr "Une basse fidélité simplifie les chemins; Une haute fidélité préserve les propriétés des chemins mais peut ajouter de nombreux nÅ“uds." +#: ../src/widgets/tweak-toolbar.cpp:368 +msgid "" +"Low fidelity simplifies paths; high fidelity preserves path features but may " +"generate a lot of new nodes" +msgstr "" +"Une basse fidélité simplifie les chemins; Une haute fidélité préserve les " +"propriétés des chemins mais peut ajouter de nombreux nÅ“uds." -#: ../src/widgets/tweak-toolbar.cpp:391 +#: ../src/widgets/tweak-toolbar.cpp:387 msgid "Use the pressure of the input device to alter the force of tweak action" -msgstr "Utiliser la pression du périphérique d'entrée pour modifier la force de l'outil" +msgstr "" +"Utiliser la pression du périphérique d'entrée pour modifier la force de " +"l'outil" #: ../share/extensions/convert2dashes.py:93 msgid "" @@ -25995,7 +28507,9 @@ msgstr "Veuillez sélectionner un objet." #: ../share/extensions/dimension.py:133 msgid "Unable to process this object. Try changing it into a path first." -msgstr "Traitement de l'objet impossible. Essayer tout d'abord de le transformer en chemin." +msgstr "" +"Traitement de l'objet impossible. Essayer tout d'abord de le transformer en " +"chemin." #. report to the Inkscape console using errormsg #: ../share/extensions/draw_from_triangle.py:178 @@ -26030,12 +28544,25 @@ msgstr "Demi-périmètre (px) :" msgid "Area (px^2): " msgstr "Aire (px²) :" +#: ../share/extensions/dxf_input.py:504 +#, python-format +msgid "" +"%d ENTITIES of type POLYLINE encountered and ignored. Please try to convert " +"to Release 13 format using QCad." +msgstr "" + #: ../share/extensions/dxf_outlines.py:49 -msgid "Failed to import the numpy or numpy.linalg modules. These modules are required by this extension. Please install them and try again." -msgstr "Échec lors de l'import des modules numpy.linalg. Ces modules sont nécessaires à cette extension. Veuillez les installer et réessayer." +msgid "" +"Failed to import the numpy or numpy.linalg modules. These modules are " +"required by this extension. Please install them and try again." +msgstr "" +"Échec lors de l'import des modules numpy.linalg. Ces modules sont " +"nécessaires à cette extension. Veuillez les installer et réessayer." #: ../share/extensions/dxf_outlines.py:300 -msgid "Error: Field 'Layer match name' must be filled when using 'By name match' option" +msgid "" +"Error: Field 'Layer match name' must be filled when using 'By name match' " +"option" msgstr "" #: ../share/extensions/dxf_outlines.py:341 @@ -26044,8 +28571,12 @@ msgid "Warning: Layer '%s' not found!" msgstr "Calque introuvable.\n" #: ../share/extensions/embedimage.py:84 -msgid "No xlink:href or sodipodi:absref attributes found, or they do not point to an existing file! Unable to embed image." -msgstr "Les attributs xlink:href et sodipodi:absref n'ont pas été trouvés, ou n'indiquent pas un fichier existant ! Impossible d'incorporer l'image." +msgid "" +"No xlink:href or sodipodi:absref attributes found, or they do not point to " +"an existing file! Unable to embed image." +msgstr "" +"Les attributs xlink:href et sodipodi:absref n'ont pas été trouvés, ou " +"n'indiquent pas un fichier existant ! Impossible d'incorporer l'image." #: ../share/extensions/embedimage.py:86 #, python-format @@ -26054,12 +28585,20 @@ msgstr "Désolé, nous ne pouvons pas localiser %s" #: ../share/extensions/embedimage.py:111 #, python-format -msgid "%s is not of type image/png, image/jpeg, image/bmp, image/gif, image/tiff, or image/x-icon" -msgstr "%s n'est pas du type image/png, image/jpeg, image/bmp, image/gif, image/tiff, ou image/x-icon" +msgid "" +"%s is not of type image/png, image/jpeg, image/bmp, image/gif, image/tiff, " +"or image/x-icon" +msgstr "" +"%s n'est pas du type image/png, image/jpeg, image/bmp, image/gif, image/" +"tiff, ou image/x-icon" #: ../share/extensions/export_gimp_palette.py:16 -msgid "The export_gpl.py module requires PyXML. Please download the latest version from http://pyxml.sourceforge.net/." -msgstr "Le module d'exportation _gpl.py nécessite PyXML. Veuillez en télécharger la dernière version à l'adresse http://pyxml.sourceforge.net/." +msgid "" +"The export_gpl.py module requires PyXML. Please download the latest version " +"from http://pyxml.sourceforge.net/." +msgstr "" +"Le module d'exportation _gpl.py nécessite PyXML. Veuillez en télécharger la " +"dernière version à l'adresse http://pyxml.sourceforge.net/." #: ../share/extensions/extractimage.py:68 #, python-format @@ -26093,15 +28632,21 @@ msgstr "Veuillez sélectionner un rectangle" #: ../share/extensions/gcodetools.py:6232 #: ../share/extensions/gcodetools.py:6427 msgid "No paths are selected! Trying to work on all available paths." -msgstr "Aucun chemin n'est sélectionné ! Tentative d'utilisation de tous les chemins disponibles." +msgstr "" +"Aucun chemin n'est sélectionné ! Tentative d'utilisation de tous les chemins " +"disponibles." #: ../share/extensions/gcodetools.py:3324 msgid "Noting is selected. Please select something." msgstr "Rien n'est sélectionné. Merci de sélectionner quelque chose." #: ../share/extensions/gcodetools.py:3864 -msgid "Directory does not exist! Please specify existing directory at Preferences tab!" -msgstr "Le dossier n'existe pas ! Veuillez spécifier un dossier existant dans l'onglet Préférences." +msgid "" +"Directory does not exist! Please specify existing directory at Preferences " +"tab!" +msgstr "" +"Le dossier n'existe pas ! Veuillez spécifier un dossier existant dans " +"l'onglet Préférences." #: ../share/extensions/gcodetools.py:3894 #, python-format @@ -26114,8 +28659,12 @@ msgstr "" #: ../share/extensions/gcodetools.py:4040 #, python-format -msgid "Orientation points for '%s' layer have not been found! Please add orientation points using Orientation tab!" -msgstr "Les points d'orientation n'ont pas été définis pour le calque '%s'. Veuillez ajouter des points d'orientation avec l'onglet Orientation." +msgid "" +"Orientation points for '%s' layer have not been found! Please add " +"orientation points using Orientation tab!" +msgstr "" +"Les points d'orientation n'ont pas été définis pour le calque '%s'. Veuillez " +"ajouter des points d'orientation avec l'onglet Orientation." #: ../share/extensions/gcodetools.py:4047 #, python-format @@ -26124,43 +28673,68 @@ msgstr "Le calque '%s' contient plus d'un groupe de points d'orientation" #: ../share/extensions/gcodetools.py:4078 #: ../share/extensions/gcodetools.py:4080 -msgid "Orientation points are wrong! (if there are two orientation points they should not be the same. If there are three orientation points they should not be in a straight line.)" +msgid "" +"Orientation points are wrong! (if there are two orientation points they " +"should not be the same. If there are three orientation points they should " +"not be in a straight line.)" msgstr "" #: ../share/extensions/gcodetools.py:4250 #, python-format -msgid "Warning! Found bad orientation points in '%s' layer. Resulting Gcode could be corrupt!" -msgstr "Attention ! Des mauvais points d'orientation ont été trouvés dans le calque '%s'. Le Gcode généré pourrait être corrompu !" +msgid "" +"Warning! Found bad orientation points in '%s' layer. Resulting Gcode could " +"be corrupt!" +msgstr "" +"Attention ! Des mauvais points d'orientation ont été trouvés dans le calque " +"'%s'. Le Gcode généré pourrait être corrompu !" #: ../share/extensions/gcodetools.py:4263 #, python-format -msgid "Warning! Found bad graffiti reference point in '%s' layer. Resulting Gcode could be corrupt!" -msgstr "Attention ! Un mauvais point de référence graffiti a été trouvé dans le calque '%s'. Le Gcode généré pourrait être corrompu !" +msgid "" +"Warning! Found bad graffiti reference point in '%s' layer. Resulting Gcode " +"could be corrupt!" +msgstr "" +"Attention ! Un mauvais point de référence graffiti a été trouvé dans le " +"calque '%s'. Le Gcode généré pourrait être corrompu !" #. xgettext:no-pango-format #: ../share/extensions/gcodetools.py:4284 msgid "" -"This extension works with Paths and Dynamic Offsets and groups of them only! All other objects will be ignored!\n" +"This extension works with Paths and Dynamic Offsets and groups of them only! " +"All other objects will be ignored!\n" "Solution 1: press Path->Object to path or Shift+Ctrl+C.\n" "Solution 2: Path->Dynamic offset or Ctrl+J.\n" -"Solution 3: export all contours to PostScript level 2 (File->Save As->.ps) and File->Import this file." +"Solution 3: export all contours to PostScript level 2 (File->Save As->.ps) " +"and File->Import this file." msgstr "" -"Cette extension ne fonctionne qu'avec des chemins ou des offsets dynamiques (ou des groupes contenant seulement ces types d'objets). Tout autre objet sera ignoré.\n" +"Cette extension ne fonctionne qu'avec des chemins ou des offsets dynamiques " +"(ou des groupes contenant seulement ces types d'objets). Tout autre objet " +"sera ignoré.\n" "Solution 1 : lancez la commande Chemin>Objet en chemin (ou Maj+Ctrl+C).\n" "Solution 2 : Chemin>Offset dynamique (ou Ctrl+J).\n" -"Solution 3 : exportez tous les contours en PostScript niveau 2 (Fichier>Enregistrer sous>.ps) puis réimportez le fichier avec Fichier>Importer." +"Solution 3 : exportez tous les contours en PostScript niveau 2 " +"(Fichier>Enregistrer sous>.ps) puis réimportez le fichier avec " +"Fichier>Importer." #: ../share/extensions/gcodetools.py:4290 -msgid "Document has no layers! Add at least one layer using layers panel (Ctrl+Shift+L)" -msgstr "Le document n'a pas de calque ! Veuillez en ajouter au moins un avec la boîte de dialogue des calques (Maj+Ctrl+L)" +msgid "" +"Document has no layers! Add at least one layer using layers panel (Ctrl+Shift" +"+L)" +msgstr "" +"Le document n'a pas de calque ! Veuillez en ajouter au moins un avec la " +"boîte de dialogue des calques (Maj+Ctrl+L)" #: ../share/extensions/gcodetools.py:4294 -msgid "Warning! There are some paths in the root of the document, but not in any layer! Using bottom-most layer for them." +msgid "" +"Warning! There are some paths in the root of the document, but not in any " +"layer! Using bottom-most layer for them." msgstr "" #: ../share/extensions/gcodetools.py:4371 #, python-format -msgid "Warning! Tool's and default tool's parameter's (%s) types are not the same ( type('%s') != type('%s') )." +msgid "" +"Warning! Tool's and default tool's parameter's (%s) types are not the same " +"( type('%s') != type('%s') )." msgstr "" #: ../share/extensions/gcodetools.py:4374 @@ -26175,16 +28749,23 @@ msgstr "Le calque '%s' contient plus d'un outil !" #: ../share/extensions/gcodetools.py:4391 #, python-format -msgid "Can not find tool for '%s' layer! Please add one with Tools library tab!" +msgid "" +"Can not find tool for '%s' layer! Please add one with Tools library tab!" msgstr "" #: ../share/extensions/gcodetools.py:4553 #: ../share/extensions/gcodetools.py:4708 -msgid "Warning: One or more paths do not have 'd' parameter, try to Ungroup (Ctrl+Shift+G) and Object to Path (Ctrl+Shift+C)!" -msgstr "Attention : au moins un chemin n'a pas de paramètre 'd'. Veuillez dégrouper (Maj+Ctrl+G) et transformer l'objet en chemin (Maj+Ctrl+C)." +msgid "" +"Warning: One or more paths do not have 'd' parameter, try to Ungroup (Ctrl" +"+Shift+G) and Object to Path (Ctrl+Shift+C)!" +msgstr "" +"Attention : au moins un chemin n'a pas de paramètre 'd'. Veuillez dégrouper " +"(Maj+Ctrl+G) et transformer l'objet en chemin (Maj+Ctrl+C)." #: ../share/extensions/gcodetools.py:4667 -msgid "Noting is selected. Please select something to convert to drill point (dxfpoint) or clear point sign." +msgid "" +"Noting is selected. Please select something to convert to drill point " +"(dxfpoint) or clear point sign." msgstr "" #: ../share/extensions/gcodetools.py:4750 @@ -26196,7 +28777,9 @@ msgstr "Cette extension nécessite la sélection d'un chemin." #: ../share/extensions/gcodetools.py:5002 #, python-format msgid "Tool diameter must be > 0 but tool's diameter on '%s' layer is not!" -msgstr "Le diamètre d'outil doit être supérieur à 0, ce qui n'est pas le cas pour l'outil du calque '%s' !" +msgstr "" +"Le diamètre d'outil doit être supérieur à 0, ce qui n'est pas le cas pour " +"l'outil du calque '%s' !" #: ../share/extensions/gcodetools.py:4767 #: ../share/extensions/gcodetools.py:4956 @@ -26227,12 +28810,18 @@ msgid "No need to engrave sharp angles." msgstr "Il n'est pas nécessaire de graver les angles aigus." #: ../share/extensions/gcodetools.py:5848 -msgid "Active layer already has orientation points! Remove them or select another layer!" -msgstr "Le calque actif possède déjà des points d'orientation. Veuillez les supprimer ou sélectionner un autre calque." +msgid "" +"Active layer already has orientation points! Remove them or select another " +"layer!" +msgstr "" +"Le calque actif possède déjà des points d'orientation. Veuillez les " +"supprimer ou sélectionner un autre calque." #: ../share/extensions/gcodetools.py:5893 msgid "Active layer already has a tool! Remove it or select another layer!" -msgstr "Le calque actif possède déjà un outil. Veuillez le supprimer ou sélectionner un autre calque." +msgstr "" +"Le calque actif possède déjà un outil. Veuillez le supprimer ou sélectionner " +"un autre calque." #: ../share/extensions/gcodetools.py:6008 msgid "Selection is empty! Will compute whole drawing." @@ -26263,20 +28852,27 @@ msgstr "" #: ../share/extensions/gcodetools.py:6662 #, python-format msgid "" -"Select one of the action tabs - Path to Gcode, Area, Engraving, DXF points, Orientation, Offset, Lathe or Tools library.\n" +"Select one of the action tabs - Path to Gcode, Area, Engraving, DXF points, " +"Orientation, Offset, Lathe or Tools library.\n" " Current active tab id is %s" msgstr "" #: ../share/extensions/gcodetools.py:6668 -msgid "Orientation points have not been defined! A default set of orientation points has been automatically added." +msgid "" +"Orientation points have not been defined! A default set of orientation " +"points has been automatically added." msgstr "" #: ../share/extensions/gcodetools.py:6672 -msgid "Cutting tool has not been defined! A default tool has been automatically added." +msgid "" +"Cutting tool has not been defined! A default tool has been automatically " +"added." msgstr "" #: ../share/extensions/generate_voronoi.py:35 -msgid "Failed to import the subprocess module. Please report this as a bug at: https://bugs.launchpad.net/inkscape." +msgid "" +"Failed to import the subprocess module. Please report this as a bug at: " +"https://bugs.launchpad.net/inkscape." msgstr "" #: ../share/extensions/generate_voronoi.py:36 @@ -26303,20 +28899,45 @@ msgstr "Cette extension nécessite la sélection d'au moins un calque non vide." msgid "The sliced bitmaps have been saved as:" msgstr "L'image découpée a été enregistrée sous :" -#: ../share/extensions/inkex.py:133 +#: ../share/extensions/hpgl_input.py:58 +msgid "" +"The HPGL data contained unknown (unsupported) commands, there is a " +"possibility that the drawing is missing some content." +msgstr "" + +#. issue error if no hpgl data found +#: ../share/extensions/hpgl_input.py:64 +#, fuzzy +msgid "No HPGL data found." +msgstr "Aucune correspondance" + +#. issue error if no paths found +#: ../share/extensions/hpgl_output.py:59 +msgid "" +"No paths where found. Please convert all objects you want to save into paths." +msgstr "" + +#: ../share/extensions/inkex.py:109 #, python-format msgid "" -"The fantastic lxml wrapper for libxml2 is required by inkex.py and therefore this extension. Please download and install the latest version from http://cheeseshop.python.org/pypi/lxml/, or install it through your package manager by a command like: sudo apt-get install python-lxml\n" +"The fantastic lxml wrapper for libxml2 is required by inkex.py and therefore " +"this extension. Please download and install the latest version from http://" +"cheeseshop.python.org/pypi/lxml/, or install it through your package manager " +"by a command like: sudo apt-get install python-lxml\n" "\n" "Technical details:\n" "%s" msgstr "" -"La fantastique classe lxml pour libxml2 est nécessaire à inkex.py et par conséquent à cette extension. Veuillez en télécharger et installer la dernière version à partir du site http://cheeseshop.python.org/pypi/lxml/, ou l'installer directement avec votre gestionnaire de paquet avec une commande du type : sudo apt-get install python-lxml\n" +"La fantastique classe lxml pour libxml2 est nécessaire à inkex.py et par " +"conséquent à cette extension. Veuillez en télécharger et installer la " +"dernière version à partir du site http://cheeseshop.python.org/pypi/lxml/, " +"ou l'installer directement avec votre gestionnaire de paquet avec une " +"commande du type : sudo apt-get install python-lxml\n" "\n" "Détails techniques :\n" "%s" -#: ../share/extensions/inkex.py:282 +#: ../share/extensions/inkex.py:260 #, python-format msgid "No matching node for expression: %s" msgstr "Aucun nÅ“ud ne correspond à l'expression : %s" @@ -26336,10 +28957,16 @@ msgstr "Aucune sélection à interpoler" #: ../share/extensions/jessyInk_video.py:49 #: ../share/extensions/jessyInk_view.py:67 msgid "" -"The JessyInk script is not installed in this SVG file or has a different version than the JessyInk extensions. Please select \"install/update...\" from the \"JessyInk\" sub-menu of the \"Extensions\" menu to install or update the JessyInk script.\n" +"The JessyInk script is not installed in this SVG file or has a different " +"version than the JessyInk extensions. Please select \"install/update...\" " +"from the \"JessyInk\" sub-menu of the \"Extensions\" menu to install or " +"update the JessyInk script.\n" "\n" msgstr "" -"Le script JessyInk n'est pas installé dans ce fichier SVG ou est d'une version différente de l'extension. Veuillez utiliser la commande Extensions>JessyInk>Installation/mise à jour pour installer ou mettre à jour le script.\n" +"Le script JessyInk n'est pas installé dans ce fichier SVG ou est d'une " +"version différente de l'extension. Veuillez utiliser la commande " +"Extensions>JessyInk>Installation/mise à jour pour installer ou mettre à jour " +"le script.\n" "\n" #: ../share/extensions/jessyInk_autoTexts.py:48 @@ -26355,12 +28982,17 @@ msgid "" "Node with id '{0}' is not a suitable text node and was therefore ignored.\n" "\n" msgstr "" -"Le nÅ“ud d'id '{0}' n'est pas un nÅ“ud texte approprié et a été de fait ignoré.\n" +"Le nÅ“ud d'id '{0}' n'est pas un nÅ“ud texte approprié et a été de fait " +"ignoré.\n" "\n" #: ../share/extensions/jessyInk_effects.py:53 -msgid "No object selected. Please select the object you want to assign an effect to and then press apply.\n" -msgstr "Aucun objet sélectionné. Veuillez préalablement sélectionner l'objet auquel vous souhaitez assigner un effet.\n" +msgid "" +"No object selected. Please select the object you want to assign an effect to " +"and then press apply.\n" +msgstr "" +"Aucun objet sélectionné. Veuillez préalablement sélectionner l'objet auquel " +"vous souhaitez assigner un effet.\n" #: ../share/extensions/jessyInk_export.py:82 msgid "Could not find Inkscape command.\n" @@ -26371,7 +29003,9 @@ msgid "Layer not found. Removed current master slide selection.\n" msgstr "" #: ../share/extensions/jessyInk_masterSlide.py:58 -msgid "More than one layer with this name found. Removed current master slide selection.\n" +msgid "" +"More than one layer with this name found. Removed current master slide " +"selection.\n" msgstr "" #: ../share/extensions/jessyInk_summary.py:69 @@ -26428,7 +29062,8 @@ msgstr "" #: ../share/extensions/jessyInk_summary.py:123 msgid "{0}\t\"{1}\" (object id \"{2}\") will be replaced by \"{3}\"." -msgstr "{0}\t\"{1}\" (l'objet d'identifiant \"{2}\") sera remplacé par \"{3}\"." +msgstr "" +"{0}\t\"{1}\" (l'objet d'identifiant \"{2}\") sera remplacé par \"{3}\"." #: ../share/extensions/jessyInk_summary.py:168 msgid "" @@ -26491,10 +29126,13 @@ msgstr "" #: ../share/extensions/jessyInk_view.py:75 msgid "More than one object selected. Please select only one object.\n" -msgstr "Plus d'un objet est sélectionné. Veuillez sélectionner un seul objet.\n" +msgstr "" +"Plus d'un objet est sélectionné. Veuillez sélectionner un seul objet.\n" #: ../share/extensions/jessyInk_view.py:79 -msgid "No object selected. Please select the object you want to assign a view to and then press apply.\n" +msgid "" +"No object selected. Please select the object you want to assign a view to " +"and then press apply.\n" msgstr "" #: ../share/extensions/markers_strokepaint.py:83 @@ -26519,7 +29157,8 @@ msgid "" "Please choose a larger object or set 'Space between copies' > 0" msgstr "" "La taille du motif est trop petite.\n" -"Veuillez choisir un objet plus grand ou paramétrer « Espacement entre les copies » avec une valeur supérieure à zéro." +"Veuillez choisir un objet plus grand ou paramétrer « Espacement entre les " +"copies » avec une valeur supérieure à zéro." #: ../share/extensions/pathalongpath.py:277 msgid "" @@ -26533,8 +29172,16 @@ msgid "Please first convert objects to paths! (Got [%s].)" msgstr "Veuillez d'abord convertir les objets en chemins ! (Obtenu [%s].)" #: ../share/extensions/perspective.py:45 -msgid "Failed to import the numpy or numpy.linalg modules. These modules are required by this extension. Please install them and try again. On a Debian-like system this can be done with the command, sudo apt-get install python-numpy." -msgstr "Échec lors de l'import des modules numpy.linalg. Ces modules sont nécessaires à cette extension. Veuillez les installer et réessayer. Sur un système de type Debian, cette installation peut être réalisée avec la commande : sudo apt-get install python-numpy." +msgid "" +"Failed to import the numpy or numpy.linalg modules. These modules are " +"required by this extension. Please install them and try again. On a Debian-" +"like system this can be done with the command, sudo apt-get install python-" +"numpy." +msgstr "" +"Échec lors de l'import des modules numpy.linalg. Ces modules sont " +"nécessaires à cette extension. Veuillez les installer et réessayer. Sur un " +"système de type Debian, cette installation peut être réalisée avec la " +"commande : sudo apt-get install python-numpy." #: ../share/extensions/perspective.py:60 #: ../share/extensions/summersnight.py:51 @@ -26548,8 +29195,11 @@ msgstr "" #: ../share/extensions/perspective.py:67 #: ../share/extensions/summersnight.py:59 -msgid "This extension requires that the second selected path be four nodes long." -msgstr "Cette extension exige que le second chemin sélectionné contienne quatre nÅ“uds." +msgid "" +"This extension requires that the second selected path be four nodes long." +msgstr "" +"Cette extension exige que le second chemin sélectionné contienne quatre " +"nÅ“uds." #: ../share/extensions/perspective.py:93 #: ../share/extensions/summersnight.py:92 @@ -26578,9 +29228,32 @@ msgstr "" "Le premier objet sélectionné n'est pas un chemin.\n" "Essayez la commande Chemin>Objet en chemin." +#: ../share/extensions/plotter.py:62 +msgid "pySerial is not installed." +msgstr "" + +#. issue error if no paths found +#: ../share/extensions/plotter.py:75 +msgid "" +"No paths where found. Please convert all objects you want to plot into paths." +msgstr "" + +#: ../share/extensions/plotter.py:111 +msgid "" +"Could not send data. Please check that your plotter is running, connected " +"and the settings are correct." +msgstr "" + #: ../share/extensions/polyhedron_3d.py:65 -msgid "Failed to import the numpy module. This module is required by this extension. Please install it and try again. On a Debian-like system this can be done with the command 'sudo apt-get install python-numpy'." -msgstr "Échec lors de l'import du module numpy. Ce module est nécessaire à cette extension. Veuillez l'installer et réessayer. Sur un système de type Debian, cette installation peut être réalisée avec la commande : sudo apt-get install python-numpy." +msgid "" +"Failed to import the numpy module. This module is required by this " +"extension. Please install it and try again. On a Debian-like system this " +"can be done with the command 'sudo apt-get install python-numpy'." +msgstr "" +"Échec lors de l'import du module numpy. Ce module est nécessaire à cette " +"extension. Veuillez l'installer et réessayer. Sur un système de type Debian, " +"cette installation peut être réalisée avec la commande : sudo apt-get " +"install python-numpy." #: ../share/extensions/polyhedron_3d.py:336 msgid "No face data found in specified file." @@ -26588,7 +29261,9 @@ msgstr "Le fichier spécifié ne contient aucune donnée de facette." #: ../share/extensions/polyhedron_3d.py:337 msgid "Try selecting \"Edge Specified\" in the Model File tab.\n" -msgstr "Essayez de sélectionner « défini par les bords » dans l'onglet Fichier modèle .\n" +msgstr "" +"Essayez de sélectionner « défini par les bords » dans l'onglet Fichier " +"modèle .\n" #: ../share/extensions/polyhedron_3d.py:343 msgid "No edge data found in specified file." @@ -26596,12 +29271,19 @@ msgstr "Le fichier spécifié ne contient aucune donnée de bord." #: ../share/extensions/polyhedron_3d.py:344 msgid "Try selecting \"Face Specified\" in the Model File tab.\n" -msgstr "Essayez de sélectionner « défini par les facettes » dans l'onglet Fichier modèle .\n" +msgstr "" +"Essayez de sélectionner « défini par les facettes » dans l'onglet Fichier " +"modèle .\n" #. we cannot generate a list of faces from the edges without a lot of computation #: ../share/extensions/polyhedron_3d.py:519 -msgid "Face Data Not Found. Ensure file contains face data, and check the file is imported as \"Face-Specified\" under the \"Model File\" tab.\n" -msgstr "Aucune donnée de facette. Vérifiez que le fichier contient bien ces données, et qu'il est bien importé avec l'option « Défini par les facettes » dans l'onglet « Fichier modèle ».\n" +msgid "" +"Face Data Not Found. Ensure file contains face data, and check the file is " +"imported as \"Face-Specified\" under the \"Model File\" tab.\n" +msgstr "" +"Aucune donnée de facette. Vérifiez que le fichier contient bien ces données, " +"et qu'il est bien importé avec l'option « Défini par les facettes » dans " +"l'onglet « Fichier modèle ».\n" #: ../share/extensions/polyhedron_3d.py:521 msgid "Internal Error. No view type selected\n" @@ -26636,8 +29318,12 @@ msgid "Please enter an input text" msgstr "Veuillez saisir une chaîne de caractères" #: ../share/extensions/replace_font.py:133 -msgid "Couldn't find anything using that font, please ensure the spelling and spacing is correct." -msgstr "Aucune correspondance avec cette fonte, veuillez vous assurer que l'orthographe et l'espacement sont corrects." +msgid "" +"Couldn't find anything using that font, please ensure the spelling and " +"spacing is correct." +msgstr "" +"Aucune correspondance avec cette fonte, veuillez vous assurer que " +"l'orthographe et l'espacement sont corrects." #: ../share/extensions/replace_font.py:140 #: ../share/extensions/svg_and_media_zip_output.py:193 @@ -26670,17 +29356,22 @@ msgstr "Veuillez saisir une chaîne de caractères dans le champs Rechercher." #: ../share/extensions/replace_font.py:248 msgid "Please enter a replacement font in the replace with box." -msgstr "Veuillez saisir une police de remplacement dans le champs Remplacer par." +msgstr "" +"Veuillez saisir une police de remplacement dans le champs Remplacer par." #: ../share/extensions/replace_font.py:253 msgid "Please enter a replacement font in the replace all box." -msgstr "Veuillez saisir une police de remplacement dans le champs Remplacer toutes les polices par." +msgstr "" +"Veuillez saisir une police de remplacement dans le champs Remplacer toutes " +"les polices par." #: ../share/extensions/summersnight.py:44 msgid "" "This extension requires two selected paths. \n" "The second path must be exactly four nodes long." -msgstr "Cette extension nécessite la sélection de deux chemins. Le second chemin sélectionné doit contenir exactement quatre nÅ“uds." +msgstr "" +"Cette extension nécessite la sélection de deux chemins. Le second chemin " +"sélectionné doit contenir exactement quatre nÅ“uds." #: ../share/extensions/svg_and_media_zip_output.py:128 #, python-format @@ -26707,12 +29398,18 @@ msgid "You must select at least two elements." msgstr "Vous devez sélectionner au moins deux éléments." #: ../share/extensions/webslicer_create_group.py:57 -msgid "You must create and select some \"Slicer rectangles\" before trying to group." -msgstr "Vous devez créer et sélectionner des « Rectangles de découpe » avant d'essayer de grouper." +msgid "" +"You must create and select some \"Slicer rectangles\" before trying to group." +msgstr "" +"Vous devez créer et sélectionner des « Rectangles de découpe » avant " +"d'essayer de grouper." #: ../share/extensions/webslicer_create_group.py:72 -msgid "You must to select some \"Slicer rectangles\" or other \"Layout groups\"." -msgstr "Vous devez sélectionner des « Rectangles de découpe » ou d'autres « Groupes de mise en page »." +msgid "" +"You must to select some \"Slicer rectangles\" or other \"Layout groups\"." +msgstr "" +"Vous devez sélectionner des « Rectangles de découpe » ou d'autres « Groupes " +"de mise en page »." #: ../share/extensions/webslicer_create_group.py:76 #, python-format @@ -26780,8 +29477,7 @@ msgstr "Nombre de segments :" #: ../share/extensions/addnodes.inx.h:7 #: ../share/extensions/convert2dashes.inx.h:2 -#: ../share/extensions/edge3d.inx.h:9 -#: ../share/extensions/flatten.inx.h:3 +#: ../share/extensions/edge3d.inx.h:9 ../share/extensions/flatten.inx.h:3 #: ../share/extensions/fractalize.inx.h:4 #: ../share/extensions/interp_att_g.inx.h:29 #: ../share/extensions/markers_strokepaint.inx.h:13 @@ -26790,8 +29486,7 @@ msgstr "Nombre de segments :" #: ../share/extensions/radiusrand.inx.h:10 #: ../share/extensions/rubberstretch.inx.h:6 #: ../share/extensions/straightseg.inx.h:4 -#: ../share/extensions/summersnight.inx.h:2 -#: ../share/extensions/whirl.inx.h:4 +#: ../share/extensions/summersnight.inx.h:2 ../share/extensions/whirl.inx.h:4 msgid "Modify Path" msgstr "Modifer le chemin" @@ -26824,7 +29519,8 @@ msgid "Corel DRAW Compressed Exchange files input (UC)" msgstr "Fichier d'entrée Corel DRAW Compressed Exchange (UC)" #: ../share/extensions/ccx_input.inx.h:2 -msgid "Corel DRAW Compressed Exchange files (UC) (.ccx)" +#, fuzzy +msgid "Corel DRAW Compressed Exchange files (UC) (*.ccx)" msgstr "Fichiers Corel DRAW Compressed Exchange (UC) (.ccx)" #: ../share/extensions/ccx_input.inx.h:3 @@ -26848,7 +29544,8 @@ msgid "Corel DRAW templates input (UC)" msgstr "Entrée modèle Corel DRAW (UC)" #: ../share/extensions/cdt_input.inx.h:2 -msgid "Corel DRAW 7-13 template files (UC) (.cdt)" +#, fuzzy +msgid "Corel DRAW 7-13 template files (UC) (*.cdt)" msgstr "Modèles Corel DRAW 7-13 (UC) (.cdt)" #: ../share/extensions/cdt_input.inx.h:3 @@ -26860,7 +29557,8 @@ msgid "Computer Graphics Metafile files input" msgstr "Fichier d'entrée Computer Graphics Metafile" #: ../share/extensions/cgm_input.inx.h:2 -msgid "Computer Graphics Metafile files (.cgm)" +#, fuzzy +msgid "Computer Graphics Metafile files (*.cgm)" msgstr "Fichiers Computer Graphics Metafile (.cgm)" #: ../share/extensions/cgm_input.inx.h:3 @@ -26872,7 +29570,8 @@ msgid "Corel DRAW Presentation Exchange files input (UC)" msgstr "Fichier d'entrée Corel DRAW Presentation Exchange (UC)" #: ../share/extensions/cmx_input.inx.h:2 -msgid "Corel DRAW Presentation Exchange files (UC) (.cmx)" +#, fuzzy +msgid "Corel DRAW Presentation Exchange files (UC) (*.cmx)" msgstr "Fichiers Corel DRAW Presentation Exchange (UC) (.cmx)" #: ../share/extensions/cmx_input.inx.h:3 @@ -26911,7 +29610,8 @@ msgstr "Plage des couleurs en entrée :" #: ../share/extensions/color_custom.inx.h:8 msgid "" "Allows you to evaluate different functions for each channel.\n" -"r, g and b are the normalized values of the red, green and blue channels. The resulting RGB values are automatically clamped.\n" +"r, g and b are the normalized values of the red, green and blue channels. " +"The resulting RGB values are automatically clamped.\n" " \n" "Example (half the red, swap green and blue):\n" " Red Function: r*0.5 \n" @@ -26919,7 +29619,8 @@ msgid "" " Blue Function: g" msgstr "" "Permet l'évaluation de différentes fonctions pour chaque canal.\n" -"r, g et b sont les valeurs normalisées pour les canaux rouge, vert et bleu. Les valeurs RGB résultantes sont recalculées automatiquement.\n" +"r, g et b sont les valeurs normalisées pour les canaux rouge, vert et bleu. " +"Les valeurs RGB résultantes sont recalculées automatiquement.\n" "\n" "Exemple (division du rouge par deux, échange du vert et du bleu) :\n" " Fonction pour le rouge : r*0.5\n" @@ -26972,7 +29673,8 @@ msgstr "Luminosité aléatoire" #: ../share/extensions/color_HSL_adjust.inx.h:13 #, no-c-format msgid "" -"Adjusts hue, saturation and lightness in the HSL representation of the selected objects's color.\n" +"Adjusts hue, saturation and lightness in the HSL representation of the " +"selected objects's color.\n" "Options:\n" " * Hue: rotate by degrees (wraps around).\n" " * Saturation: add/subtract % (min=-100, max=100).\n" @@ -27015,8 +29717,12 @@ msgid "Randomize" msgstr "Aléatoire" #: ../share/extensions/color_randomize.inx.h:7 -msgid "Converts to HSL, randomizes hue and/or saturation and/or lightness and converts it back to RGB." -msgstr "Convertit en TSL, modifie aléatoirement la teinte, la saturation ou la luminosité, puis convertit le résultat en RVB." +msgid "" +"Converts to HSL, randomizes hue and/or saturation and/or lightness and " +"converts it back to RGB." +msgstr "" +"Convertit en TSL, modifie aléatoirement la teinte, la saturation ou la " +"luminosité, puis convertit le résultat en RVB." #: ../share/extensions/color_removeblue.inx.h:1 msgid "Remove Blue" @@ -27058,17 +29764,40 @@ msgstr "Permuter RVB" msgid "Convert to Dashes" msgstr "Convertir en tirets" +#: ../share/extensions/dhw_input.inx.h:1 +#, fuzzy +msgid "DHW file input" +msgstr "Entrée métafichier Windows (*.wmf)" + +#: ../share/extensions/dhw_input.inx.h:2 +msgid "ACECAD Digimemo File (*.dhw)" +msgstr "" + +#: ../share/extensions/dhw_input.inx.h:3 +msgid "Open files from ACECAD Digimemo" +msgstr "" + #: ../share/extensions/dia.inx.h:1 msgid "Dia Input" msgstr "Entrée Dia" #: ../share/extensions/dia.inx.h:2 -msgid "The dia2svg.sh script should be installed with your Inkscape distribution. If you do not have it, there is likely to be something wrong with your Inkscape installation." -msgstr "Le script dia2svg devrait être installé avec votre distribution d'Inkscape. Si ce n'est pas le cas, il y a sans doute un problème avec votre installation d'Inkscape." +msgid "" +"The dia2svg.sh script should be installed with your Inkscape distribution. " +"If you do not have it, there is likely to be something wrong with your " +"Inkscape installation." +msgstr "" +"Le script dia2svg devrait être installé avec votre distribution d'Inkscape. " +"Si ce n'est pas le cas, il y a sans doute un problème avec votre " +"installation d'Inkscape." #: ../share/extensions/dia.inx.h:3 -msgid "In order to import Dia files, Dia itself must be installed. You can get Dia at http://live.gnome.org/Dia" -msgstr "Pour pouvoir importer des fichiers Dia, Dia doit aussi être installé. Vous pouvez obtenir Dia sur http://www.gnome.org/projects/dia/ " +msgid "" +"In order to import Dia files, Dia itself must be installed. You can get Dia " +"at http://live.gnome.org/Dia" +msgstr "" +"Pour pouvoir importer des fichiers Dia, Dia doit aussi être installé. Vous " +"pouvez obtenir Dia sur http://www.gnome.org/projects/dia/ " #: ../share/extensions/dia.inx.h:4 msgid "Dia Diagram (*.dia)" @@ -27102,10 +29831,8 @@ msgstr "Géométrique" msgid "Visual" msgstr "Visuelle" -#: ../share/extensions/dimension.inx.h:7 -#: ../share/extensions/dots.inx.h:13 -#: ../share/extensions/handles.inx.h:2 -#: ../share/extensions/measure.inx.h:24 +#: ../share/extensions/dimension.inx.h:7 ../share/extensions/dots.inx.h:13 +#: ../share/extensions/handles.inx.h:2 ../share/extensions/measure.inx.h:24 msgid "Visualize Path" msgstr "Visualisation de chemin" @@ -27127,16 +29854,21 @@ msgstr "Incrément :" #: ../share/extensions/dots.inx.h:8 msgid "" -"This extension replaces the selection's nodes with numbered dots according to the following options:\n" +"This extension replaces the selection's nodes with numbered dots according " +"to the following options:\n" " * Font size: size of the node number labels (20px, 12pt...).\n" " * Dot size: diameter of the dots placed at path nodes (10px, 2mm...).\n" -" * Starting dot number: first number in the sequence, assigned to the first node of the path.\n" +" * Starting dot number: first number in the sequence, assigned to the " +"first node of the path.\n" " * Step: numbering step between two nodes." msgstr "" -"Cette extension remplace les nÅ“uds de la sélection par des points numérotés en fonction des options suivantes :\n" +"Cette extension remplace les nÅ“uds de la sélection par des points numérotés " +"en fonction des options suivantes :\n" " * Taille de police : taille du label de numéro de nÅ“ud (20px, 12pt...).\n" -" * Taille de point : diamètre des points placés sur les nÅ“uds du chemin (10px, 2mm...)\n" -" * Numéro du nÅ“ud de départ : premier numéro de la séquence, assigné au premier nÅ“ud du chemin.\n" +" * Taille de point : diamètre des points placés sur les nÅ“uds du chemin " +"(10px, 2mm...)\n" +" * Numéro du nÅ“ud de départ : premier numéro de la séquence, assigné au " +"premier nÅ“ud du chemin.\n" " * Incrément : incrément de numérotation entre deux nÅ“uds." #: ../share/extensions/draw_from_triangle.inx.h:1 @@ -27278,15 +30010,19 @@ msgstr "Fonction triangle" #: ../share/extensions/draw_from_triangle.inx.h:36 msgid "" -"This extension draws constructions about a triangle defined by the first 3 nodes of a selected path. You may select one of preset objects or create your own ones.\n" +"This extension draws constructions about a triangle defined by the first 3 " +"nodes of a selected path. You may select one of preset objects or create " +"your own ones.\n" " \n" "All units are the Inkscape's pixel unit. Angles are all in radians.\n" -"You can specify a point by trilinear coordinates or by a triangle centre function.\n" +"You can specify a point by trilinear coordinates or by a triangle centre " +"function.\n" "Enter as functions of the side length or angles.\n" "Trilinear elements should be separated by a colon: ':'.\n" "Side lengths are represented as 's_a', 's_b' and 's_c'.\n" "Angles corresponding to these are 'a_a', 'a_b', and 'a_c'.\n" -"You can also use the semi-perimeter and area of the triangle as constants. Write 'area' or 'semiperim' for these.\n" +"You can also use the semi-perimeter and area of the triangle as constants. " +"Write 'area' or 'semiperim' for these.\n" "\n" "You can use any standard Python math function:\n" "ceil(x); fabs(x); floor(x); fmod(x,y); frexp(x); ldexp(x,i); \n" @@ -27298,18 +30034,26 @@ msgid "" "Also available are the inverse trigonometric functions:\n" "sec(x); csc(x); cot(x)\n" "\n" -"You can specify the radius of a circle around a custom point using a formula, which may also contain the side lengths, angles, etc. You can also plot the isogonal and isotomic conjugate of the point. Be aware that this may cause a divide-by-zero error for certain points.\n" +"You can specify the radius of a circle around a custom point using a " +"formula, which may also contain the side lengths, angles, etc. You can also " +"plot the isogonal and isotomic conjugate of the point. Be aware that this " +"may cause a divide-by-zero error for certain points.\n" " " msgstr "" -"Cette extension trace une construction à partir d'un triangle défini par les trois premiers nÅ“uds d'un chemin sélectionné. Vous devez sélectionner un objet prédéfini ou en créer un nouveau.\n" +"Cette extension trace une construction à partir d'un triangle défini par les " +"trois premiers nÅ“uds d'un chemin sélectionné. Vous devez sélectionner un " +"objet prédéfini ou en créer un nouveau.\n" " \n" -"Toutes les unités de mesure sont exprimées en pixels Inkscape. Les angles sont en radians.\n" -"Vous pouvez spécifier un point par coordonnées trilinéaires ou une fonction du centre du triangle.\n" +"Toutes les unités de mesure sont exprimées en pixels Inkscape. Les angles " +"sont en radians.\n" +"Vous pouvez spécifier un point par coordonnées trilinéaires ou une fonction " +"du centre du triangle.\n" "Entrez comme fonction la taille des côtés ou les angles.\n" "Les éléments trilinéaires doivent être séparés par un deux-points (:).\n" "Les tailles de côté sont représentées sous la forme 's_a', 's_b' et 's_c'.\n" "Les angles correspondants sont sous la forme 'a_a', 'a_b' et 'a_c'.\n" -"Vous pouvez également utiliser le semi-périmètre ou l'aire du triangle comme constante. Dans ce cas, écrivez 'area' ou 'semiperim'.\n" +"Vous pouvez également utiliser le semi-périmètre ou l'aire du triangle comme " +"constante. Dans ce cas, écrivez 'area' ou 'semiperim'.\n" "\n" "Vous pouvez utiliser les fonctions mathématiques standard de Python :\n" "ceil(x); fabs(x); floor(x); fmod(x,y); frexp(x); ldexp(x,i);\n" @@ -27321,7 +30065,11 @@ msgstr "" "Les fonctions trigonométriques inverses sont également disponibles :\n" "sec(x); csc(x); cot(x)\n" "\n" -"Vous pouvez spécifier le rayon d'un cercle autour d'un point personnalisé en utilisant une fonction pouvant également contenir les tailles de côté, les angles, etc. Vous pouvez également tracer les conjuguées isogonales et isotomiques du point. Soyez conscient que cela peut provoquer une erreur de type division par zéro pour certains points. " +"Vous pouvez spécifier le rayon d'un cercle autour d'un point personnalisé en " +"utilisant une fonction pouvant également contenir les tailles de côté, les " +"angles, etc. Vous pouvez également tracer les conjuguées isogonales et " +"isotomiques du point. Soyez conscient que cela peut provoquer une erreur de " +"type division par zéro pour certains points. " #: ../share/extensions/dxf_input.inx.h:1 msgid "DXF Input" @@ -27368,9 +30116,12 @@ msgstr "" "Pour AutoCAD version R13 ou plus récente.\n" "- Le dessin dxf doit être en mm.\n" "- Le dessin svg est en pixels, à 90 ppp.\n" -"- Le facteur d'échelle et l'origine ne s'applique qu'au redimensionnement manuel.\n" -"- Les calques sont préservés par l'utilisation du menu Fichier>Ouvrir, mais pas par Import.\n" -"- Le support des BLOCKS est limité. Préférez l'utilisation de AutoCAD Explode Blocks si nécessaire." +"- Le facteur d'échelle et l'origine ne s'applique qu'au redimensionnement " +"manuel.\n" +"- Les calques sont préservés par l'utilisation du menu Fichier>Ouvrir, mais " +"pas par Import.\n" +"- Le support des BLOCKS est limité. Préférez l'utilisation de AutoCAD " +"Explode Blocks si nécessaire." #: ../share/extensions/dxf_input.inx.h:17 msgid "AutoCAD DXF R13 (*.dxf)" @@ -27410,6 +30161,55 @@ msgstr "Supprimer la sélection" msgid "Layer match name" msgstr "Nom du calque :" +#: ../share/extensions/dxf_outlines.inx.h:9 +msgid "pt" +msgstr "pt" + +#: ../share/extensions/dxf_outlines.inx.h:10 +msgid "pc" +msgstr "pc" + +#: ../share/extensions/dxf_outlines.inx.h:11 +#: ../share/extensions/render_gears.inx.h:7 +msgid "px" +msgstr "px" + +#: ../share/extensions/dxf_outlines.inx.h:12 +#: ../share/extensions/gcodetools_area.inx.h:46 +#: ../share/extensions/gcodetools_dxf_points.inx.h:18 +#: ../share/extensions/gcodetools_engraving.inx.h:24 +#: ../share/extensions/gcodetools_graffiti.inx.h:18 +#: ../share/extensions/gcodetools_lathe.inx.h:39 +#: ../share/extensions/gcodetools_orientation_points.inx.h:11 +#: ../share/extensions/gcodetools_path_to_gcode.inx.h:28 +#: ../share/extensions/render_gears.inx.h:9 +msgid "mm" +msgstr "mm" + +#: ../share/extensions/dxf_outlines.inx.h:13 +msgid "cm" +msgstr "cm" + +#: ../share/extensions/dxf_outlines.inx.h:14 +msgid "m" +msgstr "m" + +#: ../share/extensions/dxf_outlines.inx.h:15 +#: ../share/extensions/gcodetools_area.inx.h:47 +#: ../share/extensions/gcodetools_dxf_points.inx.h:19 +#: ../share/extensions/gcodetools_engraving.inx.h:25 +#: ../share/extensions/gcodetools_graffiti.inx.h:19 +#: ../share/extensions/gcodetools_lathe.inx.h:40 +#: ../share/extensions/gcodetools_orientation_points.inx.h:12 +#: ../share/extensions/gcodetools_path_to_gcode.inx.h:29 +#: ../share/extensions/render_gears.inx.h:8 +msgid "in" +msgstr "in" + +#: ../share/extensions/dxf_outlines.inx.h:16 +msgid "ft" +msgstr "ft" + #: ../share/extensions/dxf_outlines.inx.h:17 msgid "Latin 1" msgstr "Latin 1" @@ -27444,24 +30244,32 @@ msgstr "" #, fuzzy msgid "" "- AutoCAD Release 14 DXF format.\n" -"- The base unit parameter specifies in what unit the coordinates are output (90 px = 1 in).\n" +"- The base unit parameter specifies in what unit the coordinates are output " +"(90 px = 1 in).\n" "- Supported element types\n" " - paths (lines and splines)\n" " - rectangles\n" " - clones (the crossreference to the original is lost)\n" -"- ROBO-Master spline output is a specialized spline readable only by ROBO-Master and AutoDesk viewers, not Inkscape.\n" -"- LWPOLYLINE output is a multiply-connected polyline, disable it to use a legacy version of the LINE output.\n" -"- You can choose to export all layers, only visible ones or by name match (case insensitive and use comma ',' as separator)" +"- ROBO-Master spline output is a specialized spline readable only by ROBO-" +"Master and AutoDesk viewers, not Inkscape.\n" +"- LWPOLYLINE output is a multiply-connected polyline, disable it to use a " +"legacy version of the LINE output.\n" +"- You can choose to export all layers, only visible ones or by name match " +"(case insensitive and use comma ',' as separator)" msgstr "" "Format AutoCAD DXF Release 14.\n" -"- Le paramètre unité de base spécifie dans quelle unité les coordonnées sont générées (90 px = 1 in).\n" +"- Le paramètre unité de base spécifie dans quelle unité les coordonnées sont " +"générées (90 px = 1 in).\n" "- Types d'éléments supportés :\n" " - chemins (lignes et splines) ;\n" " - rectangles ;\n" " - clones (la référence croisée vers l'original est perdue).\n" -"- L'option ROBO-Master génère une spline spécialisée qui ne peut être utilisée que par des lecteurs ROBO-Master et AutoDesk, pas Inkscape.\n" -"- La sortie LWPOLYLINE est une polyligne multi-connectée. Désactivez cette option pour utiliser une ancienne version de la sortie LINE.\n" -"- Vous pouvez choisir d'exporter tous les calques ou seulement ceux qui sont visibles." +"- L'option ROBO-Master génère une spline spécialisée qui ne peut être " +"utilisée que par des lecteurs ROBO-Master et AutoDesk, pas Inkscape.\n" +"- La sortie LWPOLYLINE est une polyligne multi-connectée. Désactivez cette " +"option pour utiliser une ancienne version de la sortie LINE.\n" +"- Vous pouvez choisir d'exporter tous les calques ou seulement ceux qui sont " +"visibles." #: ../share/extensions/dxf_outlines.inx.h:34 msgid "Desktop Cutting Plotter (AutoCAD DXF R14) (*.dxf)" @@ -27473,7 +30281,9 @@ msgstr "Sortie DXF" #: ../share/extensions/dxf_output.inx.h:2 msgid "pstoedit must be installed to run; see http://www.pstoedit.net/pstoedit" -msgstr "pstoedit doit être installé pour être exécuté; consultez le site http://www.pstoedit.net/pstoedit" +msgstr "" +"pstoedit doit être installé pour être exécuté; consultez le site http://www." +"pstoedit.net/pstoedit" #: ../share/extensions/dxf_output.inx.h:3 msgid "AutoCAD DXF R12 (*.dxf)" @@ -27568,10 +30378,12 @@ msgstr "Répertoire où enregistrer l'image :" #: ../share/extensions/extractimage.inx.h:3 msgid "" "* Don't type the file extension, it is appended automatically.\n" -"* A relative path (or a filename without path) is relative to the user's home directory." +"* A relative path (or a filename without path) is relative to the user's " +"home directory." msgstr "" "* Ne pas saisir l'extension du fichier, elle est ajoutée automatiquement.\n" -"* Un chemin relatif (ou un nom de fichier seul) est relatif au dossier personnel de l'utilisateur." +"* Un chemin relatif (ou un nom de fichier seul) est relatif au dossier " +"personnel de l'utilisateur." #: ../share/extensions/extrude.inx.h:3 msgid "Lines" @@ -27672,8 +30484,11 @@ msgstr "Utiliser les coordonnées polaires" #: ../share/extensions/funcplot.inx.h:11 #: ../share/extensions/param_curves.inx.h:12 -msgid "When set, Isotropic scaling uses smallest of width/xrange or height/yrange" -msgstr "Lorsqu'il est activé, le redimensionnement isotrope utilise le plus petit de : largeur/amplitude en X ou hauteur/amplitude en Y" +msgid "" +"When set, Isotropic scaling uses smallest of width/xrange or height/yrange" +msgstr "" +"Lorsqu'il est activé, le redimensionnement isotrope utilise le plus petit " +"de : largeur/amplitude en X ou hauteur/amplitude en Y" #: ../share/extensions/funcplot.inx.h:12 #: ../share/extensions/param_curves.inx.h:13 @@ -27683,7 +30498,8 @@ msgstr "Utiliser" #: ../share/extensions/funcplot.inx.h:13 msgid "" "Select a rectangle before calling the extension,\n" -"it will determine X and Y scales. If you wish to fill the area, then add x-axis endpoints.\n" +"it will determine X and Y scales. If you wish to fill the area, then add x-" +"axis endpoints.\n" "\n" "With polar coordinates:\n" " Start and end X values define the angle range in radians.\n" @@ -27692,11 +30508,14 @@ msgid "" " First derivative is always determined numerically." msgstr "" "Sélectionner un rectangle avant d'appeler l'extension.\n" -"Le rectangle détermine les échelles X et Y. Si vous souhaitez remplir la zone, ajoutez des points terminaux sur l'axe X.\n" +"Le rectangle détermine les échelles X et Y. Si vous souhaitez remplir la " +"zone, ajoutez des points terminaux sur l'axe X.\n" "\n" "Avec des coordonnées polaires :\n" -" Les valeurs X de début et de fin définissent l'amplitude d'angle en radians.\n" -" L'échelle X est fixée de manière à ce que les bords gauche et droit du rectangle soient à +/-1.\n" +" Les valeurs X de début et de fin définissent l'amplitude d'angle en " +"radians.\n" +" L'échelle X est fixée de manière à ce que les bords gauche et droit du " +"rectangle soient à +/-1.\n" " Le redimensionnement isotrope est désactivé.\n" " La dérivée première est toujours déterminée numériquement." @@ -27763,8 +30582,21 @@ msgid "About" msgstr "À propos" #: ../share/extensions/gcodetools_about.inx.h:2 -msgid "Gcodetools was developed to make simple Gcode from Inkscape's paths. Gcode is a special format which is used in most of CNC machines. So Gcodetools allows you to use Inkscape as CAM program. It can be use with a lot of machine types: Mills Lathes Laser and Plasma cutters and engravers Mill engravers Plotters etc. To get more info visit developers page at http://www.cnc-club.ru/gcodetools" -msgstr "Gcodetools a été développé pour réaliser du code Gcode simple à partir des chemins d'Inkscape. Gcode est un format spécial utilisé dans la plupart des machines-outils à commande numérique. Ainsi Gcodetools vous permet d'utiliser Inkscape comme un programme de fabrication assistée par ordinateur. Il peut être utilisé avec un grand nombre de machines. Pour de plus amples informations, visitez la page des développeurs sur le site http://www.cnc-club.ru/gcodetools" +msgid "" +"Gcodetools was developed to make simple Gcode from Inkscape's paths. Gcode " +"is a special format which is used in most of CNC machines. So Gcodetools " +"allows you to use Inkscape as CAM program. It can be use with a lot of " +"machine types: Mills Lathes Laser and Plasma cutters and engravers Mill " +"engravers Plotters etc. To get more info visit developers page at http://www." +"cnc-club.ru/gcodetools" +msgstr "" +"Gcodetools a été développé pour réaliser du code Gcode simple à partir des " +"chemins d'Inkscape. Gcode est un format spécial utilisé dans la plupart des " +"machines-outils à commande numérique. Ainsi Gcodetools vous permet " +"d'utiliser Inkscape comme un programme de fabrication assistée par " +"ordinateur. Il peut être utilisé avec un grand nombre de machines. Pour de " +"plus amples informations, visitez la page des développeurs sur le site " +"http://www.cnc-club.ru/gcodetools" #: ../share/extensions/gcodetools_about.inx.h:4 #: ../share/extensions/gcodetools_area.inx.h:54 @@ -27777,7 +30609,14 @@ msgstr "Gcodetools a été développé pour réaliser du code Gcode simple à pa #: ../share/extensions/gcodetools_path_to_gcode.inx.h:36 #: ../share/extensions/gcodetools_prepare_path_for_plasma.inx.h:18 #: ../share/extensions/gcodetools_tools_library.inx.h:13 -msgid "Gcodetools plug-in: converts paths to Gcode (using circular interpolation), makes offset paths and engraves sharp corners using cone cutters. This plug-in calculates Gcode for paths using circular interpolation or linear motion when needed. Tutorials, manuals and support can be found at English support forum: http://www.cnc-club.ru/gcodetools and Russian support forum: http://www.cnc-club.ru/gcodetoolsru Credits: Nick Drobchenko, Vladimir Kalyaev, John Brooker, Henry Nicolas, Chris Lusby Taylor. Gcodetools ver. 1.7" +msgid "" +"Gcodetools plug-in: converts paths to Gcode (using circular interpolation), " +"makes offset paths and engraves sharp corners using cone cutters. This plug-" +"in calculates Gcode for paths using circular interpolation or linear motion " +"when needed. Tutorials, manuals and support can be found at English support " +"forum: http://www.cnc-club.ru/gcodetools and Russian support forum: http://" +"www.cnc-club.ru/gcodetoolsru Credits: Nick Drobchenko, Vladimir Kalyaev, " +"John Brooker, Henry Nicolas, Chris Lusby Taylor. Gcodetools ver. 1.7" msgstr "" #: ../share/extensions/gcodetools_about.inx.h:5 @@ -27811,7 +30650,12 @@ msgid "Area tool overlap (0..0.9):" msgstr "" #: ../share/extensions/gcodetools_area.inx.h:5 -msgid "\"Create area offset\": creates several Inkscape path offsets to fill original path's area up to \"Area radius\" value. Outlines start from \"1/2 D\" up to \"Area width\" total width with \"D\" steps where D is taken from the nearest tool definition (\"Tool diameter\" value). Only one offset will be created if the \"Area width\" is equal to \"1/2 D\"." +msgid "" +"\"Create area offset\": creates several Inkscape path offsets to fill " +"original path's area up to \"Area radius\" value. Outlines start from \"1/2 D" +"\" up to \"Area width\" total width with \"D\" steps where D is taken from " +"the nearest tool definition (\"Tool diameter\" value). Only one offset will " +"be created if the \"Area width\" is equal to \"1/2 D\"." msgstr "" #: ../share/extensions/gcodetools_area.inx.h:6 @@ -27860,7 +30704,10 @@ msgid "delete" msgstr "supprimer" #: ../share/extensions/gcodetools_area.inx.h:18 -msgid "Usage: 1. Select all Area Offsets (gray outlines) 2. Object/Ungroup (Shift+Ctrl+G) 3. Press Apply Suspected small objects will be marked out by colored arrows." +msgid "" +"Usage: 1. Select all Area Offsets (gray outlines) 2. Object/Ungroup (Shift" +"+Ctrl+G) 3. Press Apply Suspected small objects will be marked out by " +"colored arrows." msgstr "" #: ../share/extensions/gcodetools_area.inx.h:19 @@ -27922,7 +30769,13 @@ msgstr "Passe par passe" #: ../share/extensions/gcodetools_area.inx.h:28 #: ../share/extensions/gcodetools_lathe.inx.h:21 #: ../share/extensions/gcodetools_path_to_gcode.inx.h:10 -msgid "Biarc interpolation tolerance is the maximum distance between path and its approximation. The segment will be split into two segments if the distance between path's segment and its approximation exceeds biarc interpolation tolerance. For depth function c=color intensity from 0.0 (white) to 1.0 (black), d is the depth defined by orientation points, s - surface defined by orientation points." +msgid "" +"Biarc interpolation tolerance is the maximum distance between path and its " +"approximation. The segment will be split into two segments if the distance " +"between path's segment and its approximation exceeds biarc interpolation " +"tolerance. For depth function c=color intensity from 0.0 (white) to 1.0 " +"(black), d is the depth defined by orientation points, s - surface defined " +"by orientation points." msgstr "" #: ../share/extensions/gcodetools_area.inx.h:30 @@ -28123,7 +30976,11 @@ msgid "Convert selection:" msgstr "Convertir la sélection :" #: ../share/extensions/gcodetools_dxf_points.inx.h:4 -msgid "Convert selected objects to drill points (as dxf_import plugin does). Also you can save original shape. Only the start point of each curve will be used. Also you can manually select object, open XML editor (Shift+Ctrl+X) and add or remove XML tag 'dxfpoint' with any value." +msgid "" +"Convert selected objects to drill points (as dxf_import plugin does). Also " +"you can save original shape. Only the start point of each curve will be " +"used. Also you can manually select object, open XML editor (Shift+Ctrl+X) " +"and add or remove XML tag 'dxfpoint' with any value." msgstr "" #: ../share/extensions/gcodetools_dxf_points.inx.h:5 @@ -28160,7 +31017,13 @@ msgid "Draw additional graphics to see engraving path" msgstr "" #: ../share/extensions/gcodetools_engraving.inx.h:6 -msgid "This function creates path to engrave letters or any shape with sharp angles. Cutter's depth as a function of radius is defined by the tool. Depth may be any Python expression. For instance: cone....(45 degrees)......................: w cone....(height/diameter=10/3)..: 10*w/3 sphere..(radius r)...........................: math.sqrt(max(0,r**2-w**2)) ellipse.(minor axis r, major 4r).....: math.sqrt(max(0,r**2-w**2))*4" +msgid "" +"This function creates path to engrave letters or any shape with sharp " +"angles. Cutter's depth as a function of radius is defined by the tool. Depth " +"may be any Python expression. For instance: cone....(45 " +"degrees)......................: w cone....(height/diameter=10/3)..: 10*w/3 " +"sphere..(radius r)...........................: math.sqrt(max(0,r**2-w**2)) " +"ellipse.(minor axis r, major 4r).....: math.sqrt(max(0,r**2-w**2))*4" msgstr "" #: ../share/extensions/gcodetools_graffiti.inx.h:1 @@ -28236,7 +31099,15 @@ msgstr "Préférences des dégradés" #: ../share/extensions/gcodetools_graffiti.inx.h:20 #: ../share/extensions/gcodetools_orientation_points.inx.h:13 -msgid "Orientation points are used to calculate transformation (offset,scale,mirror,rotation in XY plane) of the path. 3-points mode only: do not put all three into one line (use 2-points mode instead). You can modify Z surface, Z depth values later using text tool (3rd coordinates). If there are no orientation points inside current layer they are taken from the upper layer. Do not ungroup orientation points! You can select them using double click to enter the group or by Ctrl+Click. Now press apply to create control points (independent set for each layer)." +msgid "" +"Orientation points are used to calculate transformation (offset,scale,mirror," +"rotation in XY plane) of the path. 3-points mode only: do not put all three " +"into one line (use 2-points mode instead). You can modify Z surface, Z depth " +"values later using text tool (3rd coordinates). If there are no orientation " +"points inside current layer they are taken from the upper layer. Do not " +"ungroup orientation points! You can select them using double click to enter " +"the group or by Ctrl+Click. Now press apply to create control points " +"(independent set for each layer)." msgstr "" #: ../share/extensions/gcodetools_lathe.inx.h:1 @@ -28274,13 +31145,19 @@ msgstr "" msgid "Move path" msgstr "Déplacer le chemin" +#: ../share/extensions/gcodetools_lathe.inx.h:9 +msgid "Offset path" +msgstr "Chemin offset" + #: ../share/extensions/gcodetools_lathe.inx.h:10 #, fuzzy msgid "Lathe modify path" msgstr "Modifer le chemin" #: ../share/extensions/gcodetools_lathe.inx.h:11 -msgid "This function modifies path so it will be able to be cut with the rectangular cutter." +msgid "" +"This function modifies path so it will be able to be cut with the " +"rectangular cutter." msgstr "" #: ../share/extensions/gcodetools_orientation_points.inx.h:1 @@ -28393,7 +31270,11 @@ msgid "Just check tools" msgstr "" #: ../share/extensions/gcodetools_tools_library.inx.h:11 -msgid "Selected tool type fills appropriate default values. You can change these values using the Text tool later on. The topmost (z order) tool in the active layer is used. If there is no tool inside the current layer it is taken from the upper layer. Press Apply to create new tool." +msgid "" +"Selected tool type fills appropriate default values. You can change these " +"values using the Text tool later on. The topmost (z order) tool in the " +"active layer is used. If there is no tool inside the current layer it is " +"taken from the upper layer. Press Apply to create new tool." msgstr "" #: ../share/extensions/generate_voronoi.inx.h:1 @@ -28410,13 +31291,22 @@ msgstr "Taille de la bordure (px) :" #: ../share/extensions/generate_voronoi.inx.h:6 msgid "" -"Generate a random pattern of Voronoi cells. The pattern will be accessible in the Fill and Stroke dialog. You must select an object or a group.\n" +"Generate a random pattern of Voronoi cells. The pattern will be accessible " +"in the Fill and Stroke dialog. You must select an object or a group.\n" "\n" -"If border is zero, the pattern will be discontinuous at the edges. Use a positive border, preferably greater than the cell size, to produce a smooth join of the pattern at the edges. Use a negative border to reduce the size of the pattern and get an empty border." +"If border is zero, the pattern will be discontinuous at the edges. Use a " +"positive border, preferably greater than the cell size, to produce a smooth " +"join of the pattern at the edges. Use a negative border to reduce the size " +"of the pattern and get an empty border." msgstr "" -"Génère un motif de cellules de Voronoï aléatoire. Le motif pourra être utilisé dans la boîte de dialogue Remplissage et contour. Vous devez sélectionner un objet ou un groupe.\n" +"Génère un motif de cellules de Voronoï aléatoire. Le motif pourra être " +"utilisé dans la boîte de dialogue Remplissage et contour. Vous devez " +"sélectionner un objet ou un groupe.\n" "\n" -"Si la bordure est nulle, le motif sera discontinu sur ses bords. Utilisez une valeur positive, de préférence plus grande que la taille de cellule, pour produire un joint lisse du motif sur ses bords. Utilisez une valeur négative pour réduire la taille du motif et obtenir une bordure vide." +"Si la bordure est nulle, le motif sera discontinu sur ses bords. Utilisez " +"une valeur positive, de préférence plus grande que la taille de cellule, " +"pour produire un joint lisse du motif sur ses bords. Utilisez une valeur " +"négative pour réduire la taille du motif et obtenir une bordure vide." #: ../share/extensions/gimp_xcf.inx.h:1 msgid "GIMP XCF" @@ -28436,19 +31326,28 @@ msgstr "Exporter le fond" #: ../share/extensions/gimp_xcf.inx.h:7 msgid "" -"This extension exports the document to Gimp XCF format according to the following options:\n" +"This extension exports the document to Gimp XCF format according to the " +"following options:\n" " * Save Guides: convert all guides to Gimp guides.\n" -" * Save Grid: convert the first rectangular grid to a Gimp grid (note that the default Inkscape grid is very narrow when shown in Gimp).\n" +" * Save Grid: convert the first rectangular grid to a Gimp grid (note " +"that the default Inkscape grid is very narrow when shown in Gimp).\n" " * Save Background: add the document background to each converted layer.\n" "\n" -"Each first level layer is converted to a Gimp layer. Sublayers are concatenated and converted with their first level parent layer into a single Gimp layer." +"Each first level layer is converted to a Gimp layer. Sublayers are " +"concatenated and converted with their first level parent layer into a single " +"Gimp layer." msgstr "" -"Cette extension exporte le document au format Gimp XCF en fonction des options suivantes :\n" +"Cette extension exporte le document au format Gimp XCF en fonction des " +"options suivantes :\n" " * Enregistrer les guides : converti tous les guides en guides Gimp.\n" -" * Enregistrer la grille : converti la première grille rectangulaire en une grille Gimp (notez que la grille par défaut d'Inkscape est particulièrement étroite lorsque visualisée dans Gimp).\n" +" * Enregistrer la grille : converti la première grille rectangulaire en une " +"grille Gimp (notez que la grille par défaut d'Inkscape est particulièrement " +"étroite lorsque visualisée dans Gimp).\n" " * Exporter le fond : ajoute le fond du document à chaque calque converti.\n" "\n" -"Chaque calque de premier niveau est converti en calque Gimp. Les sous-calques sont concaténés et converti avec le calque de premier niveau supérieur en un calque Gimp unique." +"Chaque calque de premier niveau est converti en calque Gimp. Les sous-" +"calques sont concaténés et converti avec le calque de premier niveau " +"supérieur en un calque Gimp unique." #: ../share/extensions/gimp_xcf.inx.h:13 msgid "GIMP XCF maintaining layers (*.xcf)" @@ -28481,7 +31380,8 @@ msgstr "Subdivisions par marque principale sur l'axe X :" #: ../share/extensions/grid_cartesian.inx.h:7 msgid "Logarithmic X Subdiv. (Base given by entry above)" -msgstr "Subdivision logarithmique sur l'axe X (base donnée par l'entrée précédente)" +msgstr "" +"Subdivision logarithmique sur l'axe X (base donnée par l'entrée précédente)" #: ../share/extensions/grid_cartesian.inx.h:8 msgid "Subsubdivs. per X Subdivision:" @@ -28489,7 +31389,9 @@ msgstr "Sous-subdivisions par subdivision sur l'axe X :" #: ../share/extensions/grid_cartesian.inx.h:9 msgid "Halve X Subsubdiv. Frequency after 'n' Subdivs. (log only):" -msgstr "Diviser par deux la fréquence des sous-subdivisions sur l'axe X après « n » subdibvisions (log seulement) :" +msgstr "" +"Diviser par deux la fréquence des sous-subdivisions sur l'axe X après « n » " +"subdibvisions (log seulement) :" #: ../share/extensions/grid_cartesian.inx.h:10 msgid "Major X Division Thickness (px):" @@ -28521,7 +31423,8 @@ msgstr "Subdivisions par marque principale sur l'axe Y :" #: ../share/extensions/grid_cartesian.inx.h:17 msgid "Logarithmic Y Subdiv. (Base given by entry above)" -msgstr "Subdivision logarithmique sur l'axe Y (base donnée par l'entrée ci-dessus)" +msgstr "" +"Subdivision logarithmique sur l'axe Y (base donnée par l'entrée ci-dessus)" #: ../share/extensions/grid_cartesian.inx.h:18 msgid "Subsubdivs. per Y Subdivision:" @@ -28529,7 +31432,9 @@ msgstr "Sous-subdivisions par subdivision sur l'axe Y :" #: ../share/extensions/grid_cartesian.inx.h:19 msgid "Halve Y Subsubdiv. Frequency after 'n' Subdivs. (log only):" -msgstr "Diviser par deux la fréquence des sous-subdivisions sur l'axe Y après « n » subdibvisions (log seulement) :" +msgstr "" +"Diviser par deux la fréquence des sous-subdivisions sur l'axe Y après « n » " +"subdibvisions (log seulement) :" #: ../share/extensions/grid_cartesian.inx.h:20 msgid "Major Y Division Thickness (px):" @@ -28666,72 +31571,67 @@ msgid "Guides creator" msgstr "Générateur de guides" #: ../share/extensions/guides_creator.inx.h:2 -msgid "Preset:" -msgstr "Présélection :" +#, fuzzy +msgid "Regular guides" +msgstr "Grille rectangulaire" #: ../share/extensions/guides_creator.inx.h:3 -msgid "Custom..." -msgstr "Personnalisée..." - -#: ../share/extensions/guides_creator.inx.h:4 -msgid "Golden ratio" -msgstr "Nombre d'or" - -#: ../share/extensions/guides_creator.inx.h:5 -msgid "Rule-of-third" -msgstr "Règle des tiers" +#, fuzzy +msgid "Guides preset" +msgstr "Générateur de guides" #: ../share/extensions/guides_creator.inx.h:6 -msgid "Vertical guide each:" -msgstr "Guide vertical tous les :" +msgid "Start from edges" +msgstr "Démarrer des bords" + +#: ../share/extensions/guides_creator.inx.h:7 +msgid "Delete existing guides" +msgstr "Enlever les guides existants" #: ../share/extensions/guides_creator.inx.h:8 -msgid "1/2" -msgstr "1/2" +#, fuzzy +msgid "Diagonal guides" +msgstr "Aimanter aux guides" #: ../share/extensions/guides_creator.inx.h:9 -msgid "1/3" -msgstr "1/3" +#, fuzzy +msgid "Upper left corner" +msgstr "coin de page" #: ../share/extensions/guides_creator.inx.h:10 -msgid "1/4" -msgstr "1/4" +#, fuzzy +msgid "Upper right corner" +msgstr "coin de page" #: ../share/extensions/guides_creator.inx.h:11 -msgid "1/5" -msgstr "1/5" +#, fuzzy +msgid "Lower left corner" +msgstr "Descendre le calque courant" #: ../share/extensions/guides_creator.inx.h:12 -msgid "1/6" -msgstr "1/6" +#, fuzzy +msgid "Lower right corner" +msgstr "Descendre le calque courant" #: ../share/extensions/guides_creator.inx.h:13 -msgid "1/7" -msgstr "1/7" +#, fuzzy +msgid "Margins" +msgstr "Boîte de marge" #: ../share/extensions/guides_creator.inx.h:14 -msgid "1/8" -msgstr "1/8" +#, fuzzy +msgid "Margins preset" +msgstr "Guide de marge" #: ../share/extensions/guides_creator.inx.h:15 -msgid "1/9" -msgstr "1/9" +#, fuzzy +msgid "Header margin" +msgstr "Marges de la page" #: ../share/extensions/guides_creator.inx.h:16 -msgid "1/10" -msgstr "1/10" - -#: ../share/extensions/guides_creator.inx.h:17 -msgid "Horizontal guide each:" -msgstr "Guide horizontal tous les :" - -#: ../share/extensions/guides_creator.inx.h:18 -msgid "Start from edges" -msgstr "Démarrer des bords" - -#: ../share/extensions/guides_creator.inx.h:19 -msgid "Delete existing guides" -msgstr "Enlever les guides existants" +#, fuzzy +msgid "Footer margin" +msgstr "Marge supérieure" #: ../share/extensions/guillotine.inx.h:1 msgid "Guillotine" @@ -28761,152 +31661,421 @@ msgstr "Exporter" msgid "Draw Handles" msgstr "Dessiner les poignées" +#: ../share/extensions/hershey.inx.h:1 +msgid "Hershey Text" +msgstr "" + +#: ../share/extensions/hershey.inx.h:2 +#, fuzzy +msgid "Render Text" +msgstr "Rendu" + +#: ../share/extensions/hershey.inx.h:3 +#: ../share/extensions/render_alphabetsoup.inx.h:2 +#: ../share/extensions/render_barcode_datamatrix.inx.h:2 +#: ../share/extensions/render_barcode_qrcode.inx.h:3 +msgid "Text:" +msgstr "Texte :" + +#: ../share/extensions/hershey.inx.h:4 +msgid " Action" +msgstr "" + +#: ../share/extensions/hershey.inx.h:5 +msgid " Font face " +msgstr "" + +#: ../share/extensions/hershey.inx.h:6 +#, fuzzy +msgid "Typeset that text" +msgstr "Taper du texte" + +#: ../share/extensions/hershey.inx.h:7 +#, fuzzy +msgid "Write glyph table" +msgstr "Modifier le nom du glyphe" + +#: ../share/extensions/hershey.inx.h:8 +#, fuzzy +msgid "Sans 1-stroke" +msgstr "Ne pas définir le contour" + +#: ../share/extensions/hershey.inx.h:9 +#, fuzzy +msgid "Sans bold" +msgstr "Rendre gras" + +#: ../share/extensions/hershey.inx.h:10 +#, fuzzy +msgid "Serif medium" +msgstr "moyen" + +#: ../share/extensions/hershey.inx.h:11 +msgid "Serif medium italic" +msgstr "" + +#: ../share/extensions/hershey.inx.h:12 +msgid "Serif bold italic" +msgstr "" + +#: ../share/extensions/hershey.inx.h:13 +#, fuzzy +msgid "Serif bold" +msgstr "Rendre gras" + +#: ../share/extensions/hershey.inx.h:14 +#, fuzzy +msgid "Script 1-stroke" +msgstr "Définir le contour" + +#: ../share/extensions/hershey.inx.h:15 +msgid "Script 1-stroke (alt)" +msgstr "" + +#: ../share/extensions/hershey.inx.h:16 +#, fuzzy +msgid "Script medium" +msgstr "Identifiant du script" + +#: ../share/extensions/hershey.inx.h:17 +#, fuzzy +msgid "Gothic English" +msgstr "Gotique" + +#: ../share/extensions/hershey.inx.h:18 +#, fuzzy +msgid "Gothic German" +msgstr "Gotique" + +#: ../share/extensions/hershey.inx.h:19 +#, fuzzy +msgid "Gothic Italian" +msgstr "Gotique" + +#: ../share/extensions/hershey.inx.h:20 +#, fuzzy +msgid "Greek 1-stroke" +msgstr "Définir le contour" + +#: ../share/extensions/hershey.inx.h:21 +#, fuzzy +msgid "Greek medium" +msgstr "moyen" + +#: ../share/extensions/hershey.inx.h:23 +#, fuzzy +msgid "Japanese" +msgstr "Javanais" + +#: ../share/extensions/hershey.inx.h:24 +#, fuzzy +msgid "Astrology" +msgstr "Morphologie" + +#: ../share/extensions/hershey.inx.h:25 +msgid "Math (lower)" +msgstr "" + +#: ../share/extensions/hershey.inx.h:26 +#, fuzzy +msgid "Math (upper)" +msgstr "chemin (perpendiculaire)" + +#: ../share/extensions/hershey.inx.h:28 +#, fuzzy +msgid "Meteorology" +msgstr "Morphologie" + +#: ../share/extensions/hershey.inx.h:29 +msgid "Music" +msgstr "" + +#: ../share/extensions/hershey.inx.h:30 +#, fuzzy +msgid "Symbolic" +msgstr "Symbole" + +#: ../share/extensions/hershey.inx.h:31 +msgid "" +" \n" +"\n" +"\n" +"\n" +msgstr "" + +#: ../share/extensions/hershey.inx.h:36 +#, fuzzy +msgid "About..." +msgstr "À propos" + +#: ../share/extensions/hershey.inx.h:37 +msgid "" +"\n" +"This extension renders a line of text using\n" +"\"Hershey\" fonts for plotters, derived from \n" +"NBS SP-424 1976-04, \"A contribution to \n" +"computer typesetting techniques: Tables of\n" +"Coordinates for Hershey's Repertory of\n" +"Occidental Type Fonts and Graphic Symbols.\"\n" +"\n" +"These are not traditional \"outline\" fonts, \n" +"but are instead \"single-stroke\" fonts, or\n" +"\"engraving\" fonts where the character is\n" +"formed by the stroke (and not the fill).\n" +"\n" +"For additional information, please visit:\n" +" www.evilmadscientist.com/go/hershey" +msgstr "" + +#: ../share/extensions/hpgl_input.inx.h:1 +#, fuzzy +msgid "HPGL Input" +msgstr "Entrée WPG" + +#: ../share/extensions/hpgl_input.inx.h:2 +msgid "" +"Please note that you can only open HPGL files written by Inkscape, to open " +"other HPGL files please change their file extension to .plt, make sure you " +"have UniConverter installed and open them again." +msgstr "" + +#: ../share/extensions/hpgl_input.inx.h:3 +#: ../share/extensions/hpgl_output.inx.h:6 +#: ../share/extensions/plotter.inx.h:16 +#, fuzzy +msgid "Resolution X (dpi)" +msgstr "Résolution (ppp) :" + +#: ../share/extensions/hpgl_input.inx.h:4 +msgid "The amount of steps in one inch on the X axis (Default: 1016.0)" +msgstr "" + +#: ../share/extensions/hpgl_input.inx.h:5 +#: ../share/extensions/hpgl_output.inx.h:8 +#: ../share/extensions/plotter.inx.h:18 +#, fuzzy +msgid "Resolution Y (dpi)" +msgstr "Résolution (ppp) :" + +#: ../share/extensions/hpgl_input.inx.h:6 +msgid "The amount of steps in one inch on the Y axis (Default: 1016.0)" +msgstr "" + +#: ../share/extensions/hpgl_input.inx.h:7 +msgid "Show Movements between paths" +msgstr "" + +#: ../share/extensions/hpgl_input.inx.h:8 +msgid "Check this to show movements between paths (Default: Unchecked)" +msgstr "" + +#: ../share/extensions/hpgl_input.inx.h:9 +#: ../share/extensions/hpgl_output.inx.h:36 +msgid "HP Graphics Language file (*.hpgl)" +msgstr "Fichier HP Graphics Language (*.hpgl)" + +#: ../share/extensions/hpgl_input.inx.h:10 +#, fuzzy +msgid "Import HP Graphics Language file" +msgstr "Exporter vers un fichier HP Graphics Language" + #: ../share/extensions/hpgl_output.inx.h:1 msgid "HPGL Output" msgstr "Sortie HPGL" #: ../share/extensions/hpgl_output.inx.h:2 -msgid "Please make sure that all objects you want to plot are converted to paths. The plot will automatically be aligned to the zero point." +msgid "" +"Please make sure that all objects you want to save are converted to paths. " +"The drawing will be automatically aligned to the zero point. Please use the " +"plotter extension (Extensions menu) to plot directly on a plotter." msgstr "" #: ../share/extensions/hpgl_output.inx.h:3 -msgid "Resolution (dpi):" -msgstr "Résolution (ppp) :" +#: ../share/extensions/plotter.inx.h:13 +#, fuzzy +msgid "Plotter Settings" +msgstr "Propriétés de la page" #: ../share/extensions/hpgl_output.inx.h:4 -msgid "The amount of steps the cutter moves if it moves for 1 inch, either get this value from your plotter manual or learn it by trial and error (Standard: '1016')" -msgstr "" - -#: ../share/extensions/hpgl_output.inx.h:5 +#: ../share/extensions/plotter.inx.h:14 #, fuzzy -msgid "Pen number:" +msgid "Pen number" msgstr "Numéro de stylo" -#: ../share/extensions/hpgl_output.inx.h:6 +#: ../share/extensions/hpgl_output.inx.h:5 +#: ../share/extensions/plotter.inx.h:15 msgid "The number of the pen (tool) to use, on most plotters 1 (Standard: '1')" msgstr "" -#: ../share/extensions/hpgl_output.inx.h:8 -msgid "Orientation of the plot, change this if your plotter is plotting horizontal instead of vertical (Standard: '90°')" +#: ../share/extensions/hpgl_output.inx.h:7 +#: ../share/extensions/plotter.inx.h:17 +msgid "" +"The amount of steps the cutter moves if it moves for 1 inch on the X axis - " +"Try different settings to find the one that fits your plotter (Default: " +"1016.0)" msgstr "" #: ../share/extensions/hpgl_output.inx.h:9 -msgid "Mirror Y-axis" -msgstr "Refléter sur l'axe Y" +#: ../share/extensions/plotter.inx.h:19 +msgid "" +"The amount of steps the cutter moves if it moves for 1 inch on the Y axis - " +"Try different settings to find the one that fits your plotter (Default: " +"1016.0)" +msgstr "" #: ../share/extensions/hpgl_output.inx.h:10 -msgid "Whether to mirror the Y axis. Some plotters need this, some not. Look in your plotter manual or learn it by trial and error (Standard: 'False')" -msgstr "" +#: ../share/extensions/plotter.inx.h:20 +#, fuzzy +msgid "Mirror X-axis" +msgstr "Refléter sur l'axe Y" #: ../share/extensions/hpgl_output.inx.h:11 -#, fuzzy -msgid "Center Zero Point" -msgstr "Centrer les lignes" +msgid "" +"Check this to mirror the X axis - Try different settings to find the one " +"that fits your plotter (Default: Unchecked)" +msgstr "" #: ../share/extensions/hpgl_output.inx.h:12 -msgid "Whether the plotter needs the zero point to be in the center of the drawing. Some plotters need this, some not. Look in your plotter manual or learn it by trial and error (Standard: 'False')" -msgstr "" +#: ../share/extensions/plotter.inx.h:22 +msgid "Mirror Y-axis" +msgstr "Refléter sur l'axe Y" #: ../share/extensions/hpgl_output.inx.h:13 -#, fuzzy -msgid "Curve flatness:" -msgstr "Aplatissement :" +#: ../share/extensions/plotter.inx.h:23 +msgid "" +"Check this to mirror the Y axis - Try different settings to find the one " +"that fits your plotter (Default: Unchecked)" +msgstr "" #: ../share/extensions/hpgl_output.inx.h:14 -msgid "Curves are divided into lines, this number controls how fine the curves will be reproduced, the smaller the finer (Standard: '1.2')" -msgstr "" +#: ../share/extensions/plotter.inx.h:24 +#, fuzzy +msgid "Rotation (Clockwise)" +msgstr "Rotation en sens horaire" #: ../share/extensions/hpgl_output.inx.h:15 -#, fuzzy -msgid "Use Overcut" -msgstr "Utiliser les valeurs par défaut" +msgid "" +"Rotation of the drawing - Try different settings to find the one that fits " +"your plotter (Default: 0°)" +msgstr "" #: ../share/extensions/hpgl_output.inx.h:16 -msgid "Whether the overcut will be used, if not the 'Overcut' parameter is unused (Standard: 'True')" -msgstr "" +#: ../share/extensions/plotter.inx.h:26 +#, fuzzy +msgid "Center zero point" +msgstr "Centrer les lignes" #: ../share/extensions/hpgl_output.inx.h:17 -msgid "Overcut (mm):" +#: ../share/extensions/plotter.inx.h:27 +msgid "" +"Check this if your plotter uses a centered zero point - Try different " +"settings to find the one that fits your plotter (Default: Unchecked)" msgstr "" #: ../share/extensions/hpgl_output.inx.h:18 -msgid "The distance in mm that will be cut over the starting point of the path to prevent open paths (Standard: '1.00')" +#: ../share/extensions/plotter.inx.h:28 +msgid "Overcut & Tool Offset" msgstr "" #: ../share/extensions/hpgl_output.inx.h:19 +#: ../share/extensions/plotter.inx.h:29 #, fuzzy -msgid "Correct tool offset" -msgstr "Créer un objet offset lié" +msgid "Use overcut" +msgstr "Utiliser les valeurs par défaut" #: ../share/extensions/hpgl_output.inx.h:20 -msgid "Whether the tool offset should be corrected, if not the 'Tool offset' and 'Return Factor' parameters are unused (Standard: 'True')" +#: ../share/extensions/plotter.inx.h:30 +msgid "" +"Check this to use the overcut, if not checked the 'Overcut' parameter is " +"unused (Default: Checked)" msgstr "" #: ../share/extensions/hpgl_output.inx.h:21 -msgid "Tool offset (mm):" -msgstr "Décalage de l'outil (mm) :" +#: ../share/extensions/plotter.inx.h:31 +#, fuzzy +msgid "Overcut (mm)" +msgstr "Utiliser les valeurs par défaut" #: ../share/extensions/hpgl_output.inx.h:22 -msgid "The offset from the tool tip to the tool axis in mm (Standard: '0.25')" +#: ../share/extensions/plotter.inx.h:32 +msgid "" +"The distance in mm that will be cut over the starting point of the path to " +"prevent open paths (Default: 1.00)" msgstr "" #: ../share/extensions/hpgl_output.inx.h:23 -#, fuzzy -msgid "Return Factor:" -msgstr "Facteur :" +#: ../share/extensions/plotter.inx.h:33 +msgid "Use tool offset correction" +msgstr "" #: ../share/extensions/hpgl_output.inx.h:24 -msgid "The return factor multiplied by the tool offset is the length that is used to guide the tool back to the original path after an overcut is performed, you can only determine this value by experimentation (Standard: '2.50')" +#: ../share/extensions/plotter.inx.h:34 +msgid "" +"Check this to use the tool offset correction, if not checked the 'Tool " +"offset' and 'Precut' parameters are unused (Default: Checked)" msgstr "" #: ../share/extensions/hpgl_output.inx.h:25 -msgid "X offset (mm):" -msgstr "Décalage en X (mm) :" +#: ../share/extensions/plotter.inx.h:35 +#, fuzzy +msgid "Tool offset (mm)" +msgstr "Décalage de l'outil (mm) :" #: ../share/extensions/hpgl_output.inx.h:26 -msgid "The offset to move your plot away from the zero point in mm (Standard: '0.00')" +#: ../share/extensions/plotter.inx.h:36 +msgid "The offset from the tool tip to the tool axis in mm (Default: 0.25)" msgstr "" #: ../share/extensions/hpgl_output.inx.h:27 -msgid "Y offset (mm):" -msgstr "Décalage en Y (mm) :" +#: ../share/extensions/plotter.inx.h:37 +#, fuzzy +msgid "Use precut" +msgstr "Utiliser les valeurs par défaut" #: ../share/extensions/hpgl_output.inx.h:28 -msgid "Plot invisible layers" -msgstr "Tracer les calques invisibles" +#: ../share/extensions/plotter.inx.h:38 +msgid "" +"Check this to cut a small line before the real drawing to align the tool " +"orientation for the first cut (Default: Checked)" +msgstr "" #: ../share/extensions/hpgl_output.inx.h:29 -msgid "Plot invisible layers (Standard: 'False')" -msgstr "Tracer les calques invisibles (en standard à faux)" - -#: ../share/extensions/hpgl_output.inx.h:30 -#, fuzzy -msgid "Send to Plotter also" -msgstr "Traceur de fonction" +#: ../share/extensions/plotter.inx.h:39 +msgid "" +"Please note that using the tool offset correction will move your plot away " +"from the zero point by the length in mm specified by the tool offset." +msgstr "" #: ../share/extensions/hpgl_output.inx.h:31 -msgid "Sends the generated HPGL data also via serial connection to your plotter (Standard: 'False')" -msgstr "" +#: ../share/extensions/plotter.inx.h:41 +#, fuzzy +msgid "Curve flatness" +msgstr "Aplatissement :" #: ../share/extensions/hpgl_output.inx.h:32 -msgid "Serial Port:" -msgstr "Port sériel :" +#: ../share/extensions/plotter.inx.h:42 +msgid "" +"Curves are divided into lines, this number controls how fine the curves will " +"be reproduced, the smaller the finer (Default: '1.2')" +msgstr "" #: ../share/extensions/hpgl_output.inx.h:33 -msgid "The port of your serial connection, on Windows something like 'COM1', on Linux something like: '/dev/ttyUSB0' (Standard: 'COM1')" -msgstr "" +#: ../share/extensions/plotter.inx.h:43 +#, fuzzy +msgid "X offset (mm)" +msgstr "Décalage en X (mm) :" #: ../share/extensions/hpgl_output.inx.h:34 -msgid "Baud Rate:" +msgid "" +"The offset to shift your plot away from the zero point in mm (Default: " +"'0.00')" msgstr "" #: ../share/extensions/hpgl_output.inx.h:35 -msgid "The Baud rate of your serial connection (Standard: '9600')" -msgstr "" - -#: ../share/extensions/hpgl_output.inx.h:36 -msgid "HP Graphics Language file (*.hpgl)" -msgstr "Fichier HP Graphics Language (*.hpgl)" +#: ../share/extensions/plotter.inx.h:45 +#, fuzzy +msgid "Y offset (mm)" +msgstr "Décalage en Y (mm) :" #: ../share/extensions/hpgl_output.inx.h:37 msgid "Export to an HP Graphics Language file" @@ -29031,8 +32200,12 @@ msgid "Other" msgstr "Autre" #: ../share/extensions/interp_att_g.inx.h:18 -msgid "If you select \"Other\", you must know the SVG attributes to identify here this \"other\"." -msgstr "Si vous sélectionnez « Autre », vous devez connaître les attributs SVG nécessaires pour identifier ici cet « autre »." +msgid "" +"If you select \"Other\", you must know the SVG attributes to identify here " +"this \"other\"." +msgstr "" +"Si vous sélectionnez « Autre », vous devez connaître les attributs SVG " +"nécessaires pour identifier ici cet « autre »." #: ../share/extensions/interp_att_g.inx.h:20 msgid "Integer Number" @@ -29064,8 +32237,13 @@ msgid "No Unit" msgstr "Pas d'unité" #: ../share/extensions/interp_att_g.inx.h:28 -msgid "This effect applies a value for any interpolatable attribute for all elements inside the selected group or for all elements in a multiple selection." -msgstr "Cet effet applique une valeur sur les attributs interpolables de l'ensemble des éléments de la sélection." +msgid "" +"This effect applies a value for any interpolatable attribute for all " +"elements inside the selected group or for all elements in a multiple " +"selection." +msgstr "" +"Cet effet applique une valeur sur les attributs interpolables de l'ensemble " +"des éléments de la sélection." #: ../share/extensions/interp.inx.h:1 msgid "Interpolate" @@ -29121,8 +32299,14 @@ msgid "Number of slides" msgstr "Nombre de diapositives" #: ../share/extensions/jessyInk_autoTexts.inx.h:9 -msgid "This extension allows you to install, update and remove auto-texts for a JessyInk presentation. Please see code.google.com/p/jessyink for more details." -msgstr "Cette extension vous permet d'installer, mettre à jour ou supprimer des textes automatiques pour une présentation JessyInk. Des informations complémentaires sont disponibles sur le site code.google.com/p/jessyink." +msgid "" +"This extension allows you to install, update and remove auto-texts for a " +"JessyInk presentation. Please see code.google.com/p/jessyink for more " +"details." +msgstr "" +"Cette extension vous permet d'installer, mettre à jour ou supprimer des " +"textes automatiques pour une présentation JessyInk. Des informations " +"complémentaires sont disponibles sur le site code.google.com/p/jessyink." #: ../share/extensions/jessyInk_autoTexts.inx.h:10 #: ../share/extensions/jessyInk_effects.inx.h:15 @@ -29179,8 +32363,14 @@ msgid "Fade out" msgstr "Fermeture en fondu" #: ../share/extensions/jessyInk_effects.inx.h:14 -msgid "This extension allows you to install, update and remove object effects for a JessyInk presentation. Please see code.google.com/p/jessyink for more details." -msgstr "Cette extension vous permet d'installer, mettre à jour ou supprimer des effets d'objet pour une présentation JessyInk. Des informations complémentaires sont disponibles sur le site code.google.com/p/jessyink." +msgid "" +"This extension allows you to install, update and remove object effects for a " +"JessyInk presentation. Please see code.google.com/p/jessyink for more " +"details." +msgstr "" +"Cette extension vous permet d'installer, mettre à jour ou supprimer des " +"effets d'objet pour une présentation JessyInk. Des informations " +"complémentaires sont disponibles sur le site code.google.com/p/jessyink." #: ../share/extensions/jessyInk_export.inx.h:1 msgid "JessyInk zipped pdf or png output" @@ -29199,24 +32389,40 @@ msgid "PNG" msgstr "PNG" #: ../share/extensions/jessyInk_export.inx.h:8 -msgid "This extension allows you to export a JessyInk presentation once you created an export layer in your browser. Please see code.google.com/p/jessyink for more details." -msgstr "Cette extension vous permet d'exporter une présentation JessyInk, après avoir créé un calque d'exportation, vers un navigateur. Des informations complémentaires sont disponibles sur le site code.google.com/p/jessyink." +msgid "" +"This extension allows you to export a JessyInk presentation once you created " +"an export layer in your browser. Please see code.google.com/p/jessyink for " +"more details." +msgstr "" +"Cette extension vous permet d'exporter une présentation JessyInk, après " +"avoir créé un calque d'exportation, vers un navigateur. Des informations " +"complémentaires sont disponibles sur le site code.google.com/p/jessyink." #: ../share/extensions/jessyInk_export.inx.h:9 msgid "JessyInk zipped pdf or png output (*.zip)" msgstr "Exportation JessyInk PDF ou PNG compressée (*.zip)" #: ../share/extensions/jessyInk_export.inx.h:10 -msgid "Creates a zip file containing pdfs or pngs of all slides of a JessyInk presentation." -msgstr "Crée un fichier zip contenant des PDF ou des PNG de toutes les diapositives de la présentation JessyInk." +msgid "" +"Creates a zip file containing pdfs or pngs of all slides of a JessyInk " +"presentation." +msgstr "" +"Crée un fichier zip contenant des PDF ou des PNG de toutes les diapositives " +"de la présentation JessyInk." #: ../share/extensions/jessyInk_install.inx.h:1 msgid "Install/update" msgstr "Installation/mise à jour" #: ../share/extensions/jessyInk_install.inx.h:3 -msgid "This extension allows you to install or update the JessyInk script in order to turn your SVG file into a presentation. Please see code.google.com/p/jessyink for more details." -msgstr "Cette extension vous permet d'installer ou mettre à jour le script JessyInk pour transformer le fichier SVG en une présentation. Des informations complémentaires sont disponibles sur le site code.google.com/p/jessyink." +msgid "" +"This extension allows you to install or update the JessyInk script in order " +"to turn your SVG file into a presentation. Please see code.google.com/p/" +"jessyink for more details." +msgstr "" +"Cette extension vous permet d'installer ou mettre à jour le script JessyInk " +"pour transformer le fichier SVG en une présentation. Des informations " +"complémentaires sont disponibles sur le site code.google.com/p/jessyink." #: ../share/extensions/jessyInk_keyBindings.inx.h:1 msgid "Key bindings" @@ -29387,8 +32593,13 @@ msgid "Set number of columns to default:" msgstr "Définir le nombre de colonnes avec la valeur par défaut :" #: ../share/extensions/jessyInk_keyBindings.inx.h:45 -msgid "This extension allows you customise the key bindings JessyInk uses. Please see code.google.com/p/jessyink for more details." -msgstr "Cette extension vous permet de personnaliser les raccourcis clavier utilisés par JessyInk. Des informations complémentaires sont disponibles sur le site code.google.com/p/jessyink." +msgid "" +"This extension allows you customise the key bindings JessyInk uses. Please " +"see code.google.com/p/jessyink for more details." +msgstr "" +"Cette extension vous permet de personnaliser les raccourcis clavier utilisés " +"par JessyInk. Des informations complémentaires sont disponibles sur le site " +"code.google.com/p/jessyink." #: ../share/extensions/jessyInk_masterSlide.inx.h:1 msgid "Master slide" @@ -29401,11 +32612,17 @@ msgstr "Nom du calque :" #: ../share/extensions/jessyInk_masterSlide.inx.h:4 msgid "If no layer name is supplied, the master slide is unset." -msgstr "En l'absence d'un nom de calque, la diapositive maîtresse est désactivée." +msgstr "" +"En l'absence d'un nom de calque, la diapositive maîtresse est désactivée." #: ../share/extensions/jessyInk_masterSlide.inx.h:6 -msgid "This extension allows you to change the master slide JessyInk uses. Please see code.google.com/p/jessyink for more details." -msgstr "Cette extension vous permet de modifier la diapositive maîtresse utilisée par JessyInk. Des informations complémentaires sont disponibles sur le site code.google.com/p/jessyink." +msgid "" +"This extension allows you to change the master slide JessyInk uses. Please " +"see code.google.com/p/jessyink for more details." +msgstr "" +"Cette extension vous permet de modifier la diapositive maîtresse utilisée " +"par JessyInk. Des informations complémentaires sont disponibles sur le site " +"code.google.com/p/jessyink." #: ../share/extensions/jessyInk_mouseHandler.inx.h:1 msgid "Mouse handler" @@ -29424,16 +32641,28 @@ msgid "Dragging/zoom" msgstr "Déplacement/zoom" #: ../share/extensions/jessyInk_mouseHandler.inx.h:7 -msgid "This extension allows you customise the mouse handler JessyInk uses. Please see code.google.com/p/jessyink for more details." -msgstr "Cette extension vous permet de personnaliser la gestion de la souris par JessyInk. Des informations complémentaires sont disponibles sur le site code.google.com/p/jessyink." +msgid "" +"This extension allows you customise the mouse handler JessyInk uses. Please " +"see code.google.com/p/jessyink for more details." +msgstr "" +"Cette extension vous permet de personnaliser la gestion de la souris par " +"JessyInk. Des informations complémentaires sont disponibles sur le site code." +"google.com/p/jessyink." #: ../share/extensions/jessyInk_summary.inx.h:1 msgid "Summary" msgstr "Résumé" #: ../share/extensions/jessyInk_summary.inx.h:3 -msgid "This extension allows you to obtain information about the JessyInk script, effects and transitions contained in this SVG file. Please see code.google.com/p/jessyink for more details." -msgstr "Cette extension vous permet d'obtenir des informations sur le script JessyInk et les effets et transitions contenus dans le fichier SVG. Des informations complémentaires sont disponibles sur le site code.google.com/p/jessyink." +msgid "" +"This extension allows you to obtain information about the JessyInk script, " +"effects and transitions contained in this SVG file. Please see code.google." +"com/p/jessyink for more details." +msgstr "" +"Cette extension vous permet d'obtenir des informations sur le script " +"JessyInk et les effets et transitions contenus dans le fichier SVG. Des " +"informations complémentaires sont disponibles sur le site code.google.com/p/" +"jessyink." #: ../share/extensions/jessyInk_transitions.inx.h:1 msgid "Transitions" @@ -29452,8 +32681,13 @@ msgid "Transition out effect" msgstr "Effets de transition sortante" #: ../share/extensions/jessyInk_transitions.inx.h:13 -msgid "This extension allows you to change the transition JessyInk uses for the selected layer. Please see code.google.com/p/jessyink for more details." -msgstr "Cette extension vous permet de modifier la transition utilisée par JessyInk pour le calque sélectionné. Des informations complémentaires sont disponibles sur le site code.google.com/p/jessyink." +msgid "" +"This extension allows you to change the transition JessyInk uses for the " +"selected layer. Please see code.google.com/p/jessyink for more details." +msgstr "" +"Cette extension vous permet de modifier la transition utilisée par JessyInk " +"pour le calque sélectionné. Des informations complémentaires sont " +"disponibles sur le site code.google.com/p/jessyink." #: ../share/extensions/jessyInk_uninstall.inx.h:1 msgid "Uninstall/remove" @@ -29485,19 +32719,33 @@ msgstr "Retirer les vues" #: ../share/extensions/jessyInk_uninstall.inx.h:9 msgid "Please select the parts of JessyInk you want to uninstall/remove." -msgstr "Veuillez sélectionner les parties de JessyInk que vous souhaitez désinstaller ou retirer." +msgstr "" +"Veuillez sélectionner les parties de JessyInk que vous souhaitez " +"désinstaller ou retirer." #: ../share/extensions/jessyInk_uninstall.inx.h:11 -msgid "This extension allows you to uninstall the JessyInk script. Please see code.google.com/p/jessyink for more details." -msgstr "Cette extension vous permet de désinstaller le script JessyInk. Des informations complémentaires sont disponibles sur le site code.google.com/p/jessyink." +msgid "" +"This extension allows you to uninstall the JessyInk script. Please see code." +"google.com/p/jessyink for more details." +msgstr "" +"Cette extension vous permet de désinstaller le script JessyInk. Des " +"informations complémentaires sont disponibles sur le site code.google.com/p/" +"jessyink." #: ../share/extensions/jessyInk_video.inx.h:1 msgid "Video" msgstr "Vidéo" #: ../share/extensions/jessyInk_video.inx.h:3 -msgid "This extension puts a JessyInk video element on the current slide (layer). This element allows you to integrate a video into your JessyInk presentation. Please see code.google.com/p/jessyink for more details." -msgstr "Cette extension dépose un élément vidéo JessyInk sur la diapositive (calque) courant. Cet élément peut ensuite être utilisé pour intégrer une vidéo dans la présentation. Des informations complémentaires sont disponibles sur le site code.google.com/p/jessyink." +msgid "" +"This extension puts a JessyInk video element on the current slide (layer). " +"This element allows you to integrate a video into your JessyInk " +"presentation. Please see code.google.com/p/jessyink for more details." +msgstr "" +"Cette extension dépose un élément vidéo JessyInk sur la diapositive (calque) " +"courant. Cet élément peut ensuite être utilisé pour intégrer une vidéo dans " +"la présentation. Des informations complémentaires sont disponibles sur le " +"site code.google.com/p/jessyink." #: ../share/extensions/jessyInk_view.inx.h:5 msgid "Remove view" @@ -29505,11 +32753,17 @@ msgstr "Retirer la vue" #: ../share/extensions/jessyInk_view.inx.h:6 msgid "Choose order number 0 to set the initial view of a slide." -msgstr "Choisir un numéro d'ordre 0 pour définir la vue initiale d'une diapositive." +msgstr "" +"Choisir un numéro d'ordre 0 pour définir la vue initiale d'une diapositive." #: ../share/extensions/jessyInk_view.inx.h:8 -msgid "This extension allows you to set, update and remove views for a JessyInk presentation. Please see code.google.com/p/jessyink for more details." -msgstr "Cette extension vous permet de définir, mettre à jour ou supprimer des vues de la présentation JessyInk. Des informations complémentaires sont disponibles sur le site code.google.com/p/jessyink." +msgid "" +"This extension allows you to set, update and remove views for a JessyInk " +"presentation. Please see code.google.com/p/jessyink for more details." +msgstr "" +"Cette extension vous permet de définir, mettre à jour ou supprimer des vues " +"de la présentation JessyInk. Des informations complémentaires sont " +"disponibles sur le site code.google.com/p/jessyink." #: ../share/extensions/layers2svgfont.inx.h:1 msgid "3 - Convert Glyph Layers to SVG Font" @@ -29695,7 +32949,9 @@ msgid "" "]: return to remembered point\n" msgstr "" "\n" -"Le chemin est généré en appliquant des règles à un axiome, sur plusieurs générations. Les commandes suivantes sont reconnues dans les champs Axiome et Règles :\n" +"Le chemin est généré en appliquant des règles à un axiome, sur plusieurs " +"générations. Les commandes suivantes sont reconnues dans les champs Axiome " +"et Règles :\n" "\n" "A, B, C, D, E ou F : dessiner d'un pas en avant ;\n" "G, H, I, J, K ou L : déplacer d'un pas en avant ;\n" @@ -29721,8 +32977,14 @@ msgid "Paragraph length fluctuation (sentences):" msgstr "Fluctuation de la longueur des paragraphes (en phrases) :" #: ../share/extensions/lorem_ipsum.inx.h:7 -msgid "This effect creates the standard \"Lorem Ipsum\" pseudolatin placeholder text. If a flowed text is selected, Lorem Ipsum is added to it; otherwise a new flowed text object, the size of the page, is created in a new layer." -msgstr "Cette effet crée un texte bouche-trou « Lorem Ipsum » (du pseudo-latin). Si un cadre de texte est sélectionné, y ajoute Lorem Ipsum; sinon, un nouveau cadre de texte de la taille de la page est créé dans un nouveau calque." +msgid "" +"This effect creates the standard \"Lorem Ipsum\" pseudolatin placeholder " +"text. If a flowed text is selected, Lorem Ipsum is added to it; otherwise a " +"new flowed text object, the size of the page, is created in a new layer." +msgstr "" +"Cette effet crée un texte bouche-trou « Lorem Ipsum » (du pseudo-latin). Si " +"un cadre de texte est sélectionné, y ajoute Lorem Ipsum; sinon, un nouveau " +"cadre de texte de la taille de la page est créé dans un nouveau calque." #: ../share/extensions/markers_strokepaint.inx.h:1 msgid "Color Markers" @@ -29822,21 +33084,35 @@ msgstr "Angle fixe" #: ../share/extensions/measure.inx.h:17 #, no-c-format msgid "" -"This effect measures the length, or area, of the selected paths and adds it as a text object with the selected units.\n" +"This effect measures the length, or area, of the selected paths and adds it " +"as a text object with the selected units.\n" " \n" -" * Display format can be either Text-On-Path, or stand-alone text at a specified angle.\n" -" * The number of significant digits can be controlled by the Precision field.\n" +" * Display format can be either Text-On-Path, or stand-alone text at a " +"specified angle.\n" +" * The number of significant digits can be controlled by the Precision " +"field.\n" " * The Offset field controls the distance from the text to the path.\n" -" * The Scale factor can be used to make measurements in scaled drawings. For example, if 1 cm in the drawing equals 2.5 m in the real world, Scale must be set to 250.\n" -" * When calculating area, the result should be precise for polygons and Bezier curves. If a circle is used, the area may be too high by as much as 0.03%." +" * The Scale factor can be used to make measurements in scaled drawings. " +"For example, if 1 cm in the drawing equals 2.5 m in the real world, Scale " +"must be set to 250.\n" +" * When calculating area, the result should be precise for polygons and " +"Bezier curves. If a circle is used, the area may be too high by as much as " +"0.03%." msgstr "" -"Cet effet mesure la longueur ou l'aire du chemin sélectionné et l'ajoute comme un objet texte avec l'unité sélectionnée.\n" +"Cet effet mesure la longueur ou l'aire du chemin sélectionné et l'ajoute " +"comme un objet texte avec l'unité sélectionnée.\n" "\n" -" * L'affichage peut s'effectuer sur le chemin, ou comme texte indépendant sur un angle choisi.\n" -" * Le nombre de chiffres affichés peut être contrôlé par le champ Précision.\n" +" * L'affichage peut s'effectuer sur le chemin, ou comme texte indépendant " +"sur un angle choisi.\n" +" * Le nombre de chiffres affichés peut être contrôlé par le champ " +"Précision.\n" " * Le champ Décalage contrôle la distance entre le texte et le chemin.\n" -" * Le facteur d'échelle peut être utilisé pour réaliser des mesures dans des dessins à l'échelle. Par exemple, si 1 cm dans le dessin est égal à 2,5 m en réalité, le facteur d'échelle doit être réglé à 250.\n" -" * Lors du calcul de l'aire, le résultat devrait être précis pour les polygones et les courbes de Bézier. Si un cercle est utilisé, l'aire pourrait être jusqu'à 0,03 % supérieure à la valeur attendue." +" * Le facteur d'échelle peut être utilisé pour réaliser des mesures dans " +"des dessins à l'échelle. Par exemple, si 1 cm dans le dessin est égal à 2,5 " +"m en réalité, le facteur d'échelle doit être réglé à 250.\n" +" * Lors du calcul de l'aire, le résultat devrait être précis pour les " +"polygones et les courbes de Bézier. Si un cercle est utilisé, l'aire " +"pourrait être jusqu'à 0,03 % supérieure à la valeur attendue." #: ../share/extensions/motion.inx.h:1 msgid "Motion" @@ -29858,18 +33134,6 @@ msgstr "Caractère Unicode :" msgid "View Next Glyph" msgstr "Voir le glyphe suivant" -#: ../share/extensions/outline2svg.inx.h:1 -msgid "Text Outline Input" -msgstr "Entrée texte outline" - -#: ../share/extensions/outline2svg.inx.h:2 -msgid "Text Outline File (*.outline)" -msgstr "Fichier texte outline (*.outline)" - -#: ../share/extensions/outline2svg.inx.h:3 -msgid "ASCII Text with outline markup" -msgstr "Texte ASCII avec identification de titres (outline)" - #: ../share/extensions/param_curves.inx.h:1 msgid "Parametric Curves" msgstr "Courbes paramétriques" @@ -29912,10 +33176,12 @@ msgstr "Échantillons :" #: ../share/extensions/param_curves.inx.h:14 msgid "" -"Select a rectangle before calling the extension, it will determine X and Y scales.\n" +"Select a rectangle before calling the extension, it will determine X and Y " +"scales.\n" "First derivatives are always determined numerically." msgstr "" -"Sélectionner un rectangle avant de lancer l'extension ; il déterminera les échelles X et Y.\n" +"Sélectionner un rectangle avant de lancer l'extension ; il déterminera les " +"échelles X et Y.\n" "Les dérivées premières sont toujours déterminées numériquement." #: ../share/extensions/param_curves.inx.h:26 @@ -29973,8 +33239,14 @@ msgstr "Ruban" #: ../share/extensions/pathalongpath.inx.h:17 #, fuzzy -msgid "This effect scatters or bends a pattern along arbitrary \"skeleton\" paths. The pattern is the topmost object in the selection. Groups of paths, shapes or clones are allowed." -msgstr "Cet effet disperse un motif le long de chemins « squelettes » arbitraires. Le motif doit être l'objet le plus haut dans la sélection. Les groupes de chemins, formes et clones sont permis." +msgid "" +"This effect scatters or bends a pattern along arbitrary \"skeleton\" paths. " +"The pattern is the topmost object in the selection. Groups of paths, shapes " +"or clones are allowed." +msgstr "" +"Cet effet disperse un motif le long de chemins « squelettes » arbitraires. " +"Le motif doit être l'objet le plus haut dans la sélection. Les groupes de " +"chemins, formes et clones sont permis." #: ../share/extensions/pathscatter.inx.h:3 msgid "Follow path orientation" @@ -30017,8 +33289,14 @@ msgid "Sequentially" msgstr "Séquentiellement" #: ../share/extensions/pathscatter.inx.h:19 -msgid "This effect scatters a pattern along arbitrary \"skeleton\" paths. The pattern must be the topmost object in the selection. Groups of paths, shapes, clones are allowed." -msgstr "Cet effet disperse un motif le long de chemins « squelettes » arbitraires. Le motif doit être l'objet le plus haut dans la sélection. Les groupes de chemins, formes et clones sont permis." +msgid "" +"This effect scatters a pattern along arbitrary \"skeleton\" paths. The " +"pattern must be the topmost object in the selection. Groups of paths, " +"shapes, clones are allowed." +msgstr "" +"Cet effet disperse un motif le long de chemins « squelettes » arbitraires. " +"Le motif doit être l'objet le plus haut dans la sélection. Les groupes de " +"chemins, formes et clones sont permis." #: ../share/extensions/perfectboundcover.inx.h:1 msgid "Perfect-Bound Cover Template" @@ -30061,6 +33339,10 @@ msgstr "Pages par pouce (ppi)" msgid "Caliper (inches)" msgstr "Épaisseur (pouces)" +#: ../share/extensions/perfectboundcover.inx.h:11 +msgid "Points" +msgstr "Points" + #: ../share/extensions/perfectboundcover.inx.h:12 msgid "Bond Weight #" msgstr "Grammage" @@ -30087,7 +33369,8 @@ msgstr "Fond perdu (pouces) :" #: ../share/extensions/perfectboundcover.inx.h:18 msgid "Note: Bond Weight # calculations are a best-guess estimate." -msgstr "Note : le calcul du poids de « bond » est la meilleure estimation possible" +msgstr "" +"Note : le calcul du poids de « bond » est la meilleure estimation possible" #: ../share/extensions/perspective.inx.h:1 msgid "Perspective" @@ -30098,8 +33381,93 @@ msgid "PixelSnap" msgstr "Aligner au pixel" #: ../share/extensions/pixelsnap.inx.h:2 -msgid "Snap all paths in selection to pixels. Snaps borders to half-points and fills to full points." -msgstr "Aligne les chemins de la sélection sur les pixels. Les bordures sont alignées sur des demi-points, et les remplissages sur des points." +msgid "" +"Snap all paths in selection to pixels. Snaps borders to half-points and " +"fills to full points." +msgstr "" +"Aligne les chemins de la sélection sur les pixels. Les bordures sont " +"alignées sur des demi-points, et les remplissages sur des points." + +#: ../share/extensions/plotter.inx.h:1 +msgid "Plot" +msgstr "" + +#: ../share/extensions/plotter.inx.h:2 +msgid "" +"Please make sure that all objects you want to plot are converted to paths. " +"The plot will automatically be aligned to the zero point." +msgstr "" + +#: ../share/extensions/plotter.inx.h:3 +#, fuzzy +msgid "Connection" +msgstr "Connecteurs" + +#: ../share/extensions/plotter.inx.h:4 +#, fuzzy +msgid "Serial Port" +msgstr "Port sériel :" + +#: ../share/extensions/plotter.inx.h:5 +msgid "" +"The port of your serial connection, on Windows something like 'COM1', on " +"Linux something like: '/dev/ttyUSB0' (Default: COM1)" +msgstr "" + +#: ../share/extensions/plotter.inx.h:6 +#, fuzzy +msgid "Serial Baud rate" +msgstr "Port sériel :" + +#: ../share/extensions/plotter.inx.h:7 +msgid "The Baud rate of your serial connection (Default: 9600)" +msgstr "" + +#: ../share/extensions/plotter.inx.h:8 +#, fuzzy +msgid "Flow control" +msgstr "Région d'encadrement" + +#: ../share/extensions/plotter.inx.h:9 +msgid "" +"Software / Hardware flow control - Try different settings to find the one " +"that fits your plotter (Default: None)" +msgstr "" + +#: ../share/extensions/plotter.inx.h:10 +msgid "" +"This can be a physical serial connection or a USB-to-Serial bridge. Ask your " +"plotter manufacturer for drivers if needed." +msgstr "" + +#: ../share/extensions/plotter.inx.h:11 +msgid "Please note that Parallel (LPT) connections are not supported." +msgstr "" + +#: ../share/extensions/plotter.inx.h:12 +msgid "" +"Please note that only the HPGL command language is supported at the moment." +msgstr "" + +#: ../share/extensions/plotter.inx.h:21 +msgid "Check this to mirror the X axis (Default: Unchecked)" +msgstr "" + +#: ../share/extensions/plotter.inx.h:25 +msgid "" +"Rotation of the plot - Try different settings to find the one that fits your " +"plotter (Default: 0°)" +msgstr "" + +#: ../share/extensions/plotter.inx.h:44 +msgid "" +"The offset to move your plot away from the zero point in mm (Default: '0.00')" +msgstr "" + +#: ../share/extensions/plotter.inx.h:46 +#, fuzzy +msgid "Plotter" +msgstr "Motif" #: ../share/extensions/plt_input.inx.h:1 msgid "AutoCAD Plot Input" @@ -30330,10 +33698,6 @@ msgstr "Moyenne" msgid "View Previous Glyph" msgstr "Voir le glyphe précédent" -#: ../share/extensions/print_win32_vector.inx.h:1 -msgid "Win32 Vector Print" -msgstr "Impression Windows 32-bits" - #: ../share/extensions/printing_marks.inx.h:1 msgid "Printing Marks" msgstr "Marques d'impression" @@ -30378,6 +33742,10 @@ msgstr "Zone de travail" msgid "Bleed Margin" msgstr "Marges du fond perdu" +#: ../share/extensions/print_win32_vector.inx.h:1 +msgid "Win32 Vector Print" +msgstr "Impression Windows 32-bits" + #: ../share/extensions/ps_input.inx.h:1 msgid "PostScript Input" msgstr "Entrée PostScript" @@ -30407,18 +33775,35 @@ msgid "Use normal distribution" msgstr "Utiliser une distribution normale" #: ../share/extensions/radiusrand.inx.h:9 -msgid "This effect randomly shifts the nodes (and optionally node handles) of the selected path." -msgstr "Cet effet décale les nœuds du chemin sélectionné. Il peut aussi agir sur les poignées." +msgid "" +"This effect randomly shifts the nodes (and optionally node handles) of the " +"selected path." +msgstr "" +"Cet effet décale les nœuds du chemin sélectionné. Il peut aussi agir sur les " +"poignées." #: ../share/extensions/render_alphabetsoup.inx.h:1 msgid "Alphabet Soup" msgstr "Soupe alphabet" -#: ../share/extensions/render_alphabetsoup.inx.h:2 -#: ../share/extensions/render_barcode_datamatrix.inx.h:2 -#: ../share/extensions/render_barcode_qrcode.inx.h:3 -msgid "Text:" -msgstr "Texte :" +#: ../share/extensions/render_barcode_datamatrix.inx.h:1 +msgid "Datamatrix" +msgstr "Datamatrix" + +#: ../share/extensions/render_barcode_datamatrix.inx.h:3 +#: ../share/extensions/render_barcode_qrcode.inx.h:4 +msgid "Size, in unit squares:" +msgstr "Taille, en nombre de carrés :" + +#: ../share/extensions/render_barcode_datamatrix.inx.h:4 +msgid "Square Size (px):" +msgstr "Taille du carré (px) :" + +#: ../share/extensions/render_barcode_datamatrix.inx.h:6 +#: ../share/extensions/render_barcode.inx.h:6 +#: ../share/extensions/render_barcode_qrcode.inx.h:19 +msgid "Barcode" +msgstr "Code-barres" #: ../share/extensions/render_barcode.inx.h:1 msgid "Classic" @@ -30436,40 +33821,27 @@ msgstr "Données du code-barres :" msgid "Bar Height:" msgstr "Hauteur des barres :" -#: ../share/extensions/render_barcode.inx.h:6 -#: ../share/extensions/render_barcode_datamatrix.inx.h:6 -#: ../share/extensions/render_barcode_qrcode.inx.h:19 -msgid "Barcode" -msgstr "Code-barres" - -#: ../share/extensions/render_barcode_datamatrix.inx.h:1 -msgid "Datamatrix" -msgstr "Datamatrix" - -#: ../share/extensions/render_barcode_datamatrix.inx.h:3 -#: ../share/extensions/render_barcode_qrcode.inx.h:4 -msgid "Size, in unit squares:" -msgstr "Taille, en nombre de carrés :" - -#: ../share/extensions/render_barcode_datamatrix.inx.h:4 -msgid "Square Size (px):" -msgstr "Taille du carré (px) :" - #: ../share/extensions/render_barcode_qrcode.inx.h:1 msgid "QR Code" msgstr "QR Code" #: ../share/extensions/render_barcode_qrcode.inx.h:2 msgid "See http://www.denso-wave.com/qrcode/index-e.html for details" -msgstr "Voir http://www.denso-wave.com/qrcode/index-e.html pour de plus amples détails" +msgstr "" +"Voir http://www.denso-wave.com/qrcode/index-e.html pour de plus amples " +"détails" #: ../share/extensions/render_barcode_qrcode.inx.h:5 msgid "Auto" msgstr "Auto" #: ../share/extensions/render_barcode_qrcode.inx.h:6 -msgid "With \"Auto\", the size of the barcode depends on the length of the text and the error correction level" -msgstr "Avec \"Auto\", la taille du code-barres dépend de la longueur du texte et du niveau de correction d'erreur" +msgid "" +"With \"Auto\", the size of the barcode depends on the length of the text and " +"the error correction level" +msgstr "" +"Avec \"Auto\", la taille du code-barres dépend de la longueur du texte et du " +"niveau de correction d'erreur" #: ../share/extensions/render_barcode_qrcode.inx.h:7 msgid "Error correction level:" @@ -30499,8 +33871,24 @@ msgstr "H (environ 30 %)" msgid "Square size (px):" msgstr "Taille du carré (px) :" -#: ../share/extensions/render_gears.inx.h:1 +#: ../share/extensions/render_gear_rack.inx.h:1 +msgid "Rack Gear" +msgstr "Crémaillère" + +#: ../share/extensions/render_gear_rack.inx.h:2 +msgid "Rack Length:" +msgstr "Longueur de la crémaillère :" + +#: ../share/extensions/render_gear_rack.inx.h:3 +msgid "Tooth Spacing:" +msgstr "Espacement des dents :" + +#: ../share/extensions/render_gear_rack.inx.h:4 +msgid "Contact Angle:" +msgstr "Angle de contact :" + #: ../share/extensions/render_gear_rack.inx.h:6 +#: ../share/extensions/render_gears.inx.h:1 msgid "Gear" msgstr "Engrenage" @@ -30524,22 +33912,6 @@ msgstr "Diamètre du trou central (0 pour aucun) :" msgid "Unit of measurement for both circular pitch and center diameter." msgstr "Unité de mesure pour le pas circulaire et le diamètre du centre." -#: ../share/extensions/render_gear_rack.inx.h:1 -msgid "Rack Gear" -msgstr "Crémaillère" - -#: ../share/extensions/render_gear_rack.inx.h:2 -msgid "Rack Length:" -msgstr "Longueur de la crémaillère :" - -#: ../share/extensions/render_gear_rack.inx.h:3 -msgid "Tooth Spacing:" -msgstr "Espacement des dents :" - -#: ../share/extensions/render_gear_rack.inx.h:4 -msgid "Contact Angle:" -msgstr "Angle de contact :" - #: ../share/extensions/replace_font.inx.h:1 msgid "Replace font" msgstr "Remplacer la police" @@ -30565,8 +33937,11 @@ msgid "List all fonts" msgstr "Lister toutes les polices" #: ../share/extensions/replace_font.inx.h:7 -msgid "Choose this tab if you would like to see a list of the fonts used/found." -msgstr "Choisissez cet onglet pour lister les polices utilisées ou trouvées dans le document." +msgid "" +"Choose this tab if you would like to see a list of the fonts used/found." +msgstr "" +"Choisissez cet onglet pour lister les polices utilisées ou trouvées dans le " +"document." #: ../share/extensions/replace_font.inx.h:8 msgid "Work on:" @@ -30622,6 +33997,7 @@ msgstr "Point horizontal :" #: ../share/extensions/restack.inx.h:13 #: ../share/extensions/text_extract.inx.h:9 +#: ../share/extensions/text_merge.inx.h:9 msgid "Middle" msgstr "Milieu" @@ -30631,11 +34007,13 @@ msgstr "Point vertical :" #: ../share/extensions/restack.inx.h:16 #: ../share/extensions/text_extract.inx.h:12 +#: ../share/extensions/text_merge.inx.h:12 msgid "Top" msgstr "Haut" #: ../share/extensions/restack.inx.h:17 #: ../share/extensions/text_extract.inx.h:13 +#: ../share/extensions/text_merge.inx.h:13 msgid "Bottom" msgstr "Bas" @@ -30747,7 +34125,8 @@ msgstr "Raccourcir les identifiants" #: ../share/extensions/scour.inx.h:22 msgid "Preserve manually created ID names not ending with digits" -msgstr "Préserver les identifiants manuels qui ne se terminent pas par un chiffre" +msgstr "" +"Préserver les identifiants manuels qui ne se terminent pas par un chiffre" #: ../share/extensions/scour.inx.h:23 msgid "Preserve these ID names, comma-separated:" @@ -30766,31 +34145,65 @@ msgstr "Aide (options)" msgid "" "This extension optimizes the SVG file according to the following options:\n" " * Shorten color names: convert all colors to #RRGGBB or #RGB format.\n" -" * Convert CSS attributes to XML attributes: convert styles from style tags and inline style=\"\" declarations into XML attributes.\n" -" * Group collapsing: removes useless g elements, promoting their contents up one level. Requires \"Remove unused ID names for elements\" to be set.\n" -" * Create groups for similar attributes: create g elements for runs of elements having at least one attribute in common (e.g. fill color, stroke opacity, ...).\n" +" * Convert CSS attributes to XML attributes: convert styles from style " +"tags and inline style=\"\" declarations into XML attributes.\n" +" * Group collapsing: removes useless g elements, promoting their contents " +"up one level. Requires \"Remove unused ID names for elements\" to be set.\n" +" * Create groups for similar attributes: create g elements for runs of " +"elements having at least one attribute in common (e.g. fill color, stroke " +"opacity, ...).\n" " * Embed rasters: embed raster images as base64-encoded data URLs.\n" -" * Keep editor data: don't remove Inkscape, Sodipodi or Adobe Illustrator elements and attributes.\n" -" * Remove metadata: remove metadata tags along with all the information in them, which may include license metadata, alternate versions for non-SVG-enabled browsers, etc.\n" +" * Keep editor data: don't remove Inkscape, Sodipodi or Adobe Illustrator " +"elements and attributes.\n" +" * Remove metadata: remove metadata tags along with all the information " +"in them, which may include license metadata, alternate versions for non-SVG-" +"enabled browsers, etc.\n" " * Remove comments: remove comment tags.\n" -" * Work around renderer bugs: emits slightly larger SVG data, but works around a bug in librsvg's renderer, which is used in Eye of GNOME and other various applications.\n" +" * Work around renderer bugs: emits slightly larger SVG data, but works " +"around a bug in librsvg's renderer, which is used in Eye of GNOME and other " +"various applications.\n" " * Enable viewboxing: size image to 100%/100% and introduce a viewBox.\n" -" * Number of significant digits for coords: all coordinates are output with that number of significant digits. For example, if 3 is specified, the coordinate 3.5153 is output as 3.51 and the coordinate 471.55 is output as 472.\n" -" * XML indentation (pretty-printing): either None for no indentation, Space to use one space per nesting level, or Tab to use one tab per nesting level." +" * Number of significant digits for coords: all coordinates are output " +"with that number of significant digits. For example, if 3 is specified, the " +"coordinate 3.5153 is output as 3.51 and the coordinate 471.55 is output as " +"472.\n" +" * XML indentation (pretty-printing): either None for no indentation, " +"Space to use one space per nesting level, or Tab to use one tab per nesting " +"level." msgstr "" "Cette extension optimise le fichier SVG en fonction des options suivantes :\n" -" * Raccourcir les valeurs de couleur : convertit toutes les couleurs au format #RRGGBB ou #RGB.\n" -" * Convertir les attributs CSS en attributs XML : convertit les styles défini à partir de l'étiquette style et des déclarations en ligne style=\"\" en attributs XML.\n" -" * Réduire les groupes : supprime des éléments g inutiles, tout en remontant leur contenu d'un niveau. L'option \"Supprimer les identifiants d'éléments inutilisés\" doit également être activée.\n" -" * Créer des groupes pour les attributs similaires : crée des éléments g pour les séries d'éléments ayant au moins un attribut en commun (couleur de remplissage ou opacité du contour par exemple).\n" -" * Incorporer les images : incorpore les images matricielles sous la forme de données encodées en base 64.\n" -" * Conserver les données d'édition : ne supprime pas les éléments et attributs issus d'Inkscape, Sodipodi ou Adobe Illustrator.\n" -" * Supprimer les métadonnées : supprime les éléments de type metadata ainsi que toutes les informations qu'ils contiennent, ce qui peut inclure les métadonnées de licence, les versions alternatives pour les navigateurs ne supportant pas SVG, etc.\n" -" * Supprimer les commentaires : supprime les éléments de type commentaire.\n" -" * Contourner les défauts de rendu : génère des données SVG légèrement plus volumineuses, mais contourne un défaut du moteur de rendu libsvg, qui est utilisé par Eye of Gnome et diverses autres applications.\n" -" * Activer une viewBox : dimensionne l'image à 100 % et ajoute une viewBox.\n" -" * Nombre de chiffres significatifs pour les coordonnées : toutes les coordonnées sont générées avec une certain nombre de décimales significatives. Si la valeur 3 est choisie, par exemple, la coordonnée 3.5153 sera réduite à 3.51 et la coordonnée 471.55 réduite à 472.\n" -" * Indentation du code XML (impression formatée) : type d'indentation de l'exportation : aucune, espace ou tabulation (espace par défaut)." +" * Raccourcir les valeurs de couleur : convertit toutes les couleurs au " +"format #RRGGBB ou #RGB.\n" +" * Convertir les attributs CSS en attributs XML : convertit les styles " +"défini à partir de l'étiquette style et des déclarations en ligne style=\"\" " +"en attributs XML.\n" +" * Réduire les groupes : supprime des éléments g inutiles, tout en " +"remontant leur contenu d'un niveau. L'option \"Supprimer les identifiants " +"d'éléments inutilisés\" doit également être activée.\n" +" * Créer des groupes pour les attributs similaires : crée des éléments g " +"pour les séries d'éléments ayant au moins un attribut en commun (couleur de " +"remplissage ou opacité du contour par exemple).\n" +" * Incorporer les images : incorpore les images matricielles sous la " +"forme de données encodées en base 64.\n" +" * Conserver les données d'édition : ne supprime pas les éléments et " +"attributs issus d'Inkscape, Sodipodi ou Adobe Illustrator.\n" +" * Supprimer les métadonnées : supprime les éléments de type metadata " +"ainsi que toutes les informations qu'ils contiennent, ce qui peut inclure " +"les métadonnées de licence, les versions alternatives pour les navigateurs " +"ne supportant pas SVG, etc.\n" +" * Supprimer les commentaires : supprime les éléments de type " +"commentaire.\n" +" * Contourner les défauts de rendu : génère des données SVG légèrement " +"plus volumineuses, mais contourne un défaut du moteur de rendu libsvg, qui " +"est utilisé par Eye of Gnome et diverses autres applications.\n" +" * Activer une viewBox : dimensionne l'image à 100 % et ajoute une " +"viewBox.\n" +" * Nombre de chiffres significatifs pour les coordonnées : toutes les " +"coordonnées sont générées avec une certain nombre de décimales " +"significatives. Si la valeur 3 est choisie, par exemple, la coordonnée " +"3.5153 sera réduite à 3.51 et la coordonnée 471.55 réduite à 472.\n" +" * Indentation du code XML (impression formatée) : type d'indentation de " +"l'exportation : aucune, espace ou tabulation (espace par défaut)." #: ../share/extensions/scour.inx.h:40 msgid "Help (Ids)" @@ -30799,18 +34212,38 @@ msgstr "Aide (identifiants)" #: ../share/extensions/scour.inx.h:41 msgid "" "Ids specific options:\n" -" * Remove unused ID names for elements: remove all unreferenced ID attributes.\n" -" * Shorten IDs: reduce the length of all ID attributes, assigning the shortest to the most-referenced elements. For instance, #linearGradient5621, referenced 100 times, can become #a.\n" -" * Preserve manually created ID names not ending with digits: usually, optimised SVG output removes these, but if they're needed for referencing (e.g. #middledot), you may use this option.\n" -" * Preserve these ID names, comma-separated: you can use this in conjunction with the other preserve options if you wish to preserve some more specific ID names.\n" -" * Preserve ID names starting with: usually, optimised SVG output removes all unused ID names, but if all of your preserved ID names start with the same prefix (e.g. #flag-mx, #flag-pt), you may use this option." +" * Remove unused ID names for elements: remove all unreferenced ID " +"attributes.\n" +" * Shorten IDs: reduce the length of all ID attributes, assigning the " +"shortest to the most-referenced elements. For instance, #linearGradient5621, " +"referenced 100 times, can become #a.\n" +" * Preserve manually created ID names not ending with digits: usually, " +"optimised SVG output removes these, but if they're needed for referencing (e." +"g. #middledot), you may use this option.\n" +" * Preserve these ID names, comma-separated: you can use this in " +"conjunction with the other preserve options if you wish to preserve some " +"more specific ID names.\n" +" * Preserve ID names starting with: usually, optimised SVG output removes " +"all unused ID names, but if all of your preserved ID names start with the " +"same prefix (e.g. #flag-mx, #flag-pt), you may use this option." msgstr "" "Options spécifiques aux identifiants :\n" -" * Supprimer les identifiants d'éléments inutilisés : supprimer tous les attributs ID sans référence.\n" -" * Raccourcir les identifiants : réduit la longueur de tous les attributs ID, en assignant les plus courts aux éléments les plus référencés. Par exemple, un attribut #linearGradient5621 référencé 100 fois peut devenir #a.\n" -" * Préserver les identifiants manuels qui ne se terminent pas par un chiffre : normalement supprimés par l'extension, cochez cette option si ces identifiants sont utilisés comme référence (par exemple #pointcentral).\n" -" * Préserver les identifiants suivants (séparés par des virgules) : vous pouvez utiliser cette option en conjonction avec les autres options de préservation si vous souhaitez conserver certain identifiants spécifiques.\n" -" * Préserver les identifiants débutant par : normalement, cette extension supprime tous les identifiants inutilisés, mais si tous vos identifiants à préserver commencent par le même préfixe, (#page-debut, #page-fin, par exemple), vous pouvez utiliser cette option." +" * Supprimer les identifiants d'éléments inutilisés : supprimer tous les " +"attributs ID sans référence.\n" +" * Raccourcir les identifiants : réduit la longueur de tous les attributs " +"ID, en assignant les plus courts aux éléments les plus référencés. Par " +"exemple, un attribut #linearGradient5621 référencé 100 fois peut devenir " +"#a.\n" +" * Préserver les identifiants manuels qui ne se terminent pas par un " +"chiffre : normalement supprimés par l'extension, cochez cette option si ces " +"identifiants sont utilisés comme référence (par exemple #pointcentral).\n" +" * Préserver les identifiants suivants (séparés par des virgules) : vous " +"pouvez utiliser cette option en conjonction avec les autres options de " +"préservation si vous souhaitez conserver certain identifiants spécifiques.\n" +" * Préserver les identifiants débutant par : normalement, cette extension " +"supprime tous les identifiants inutilisés, mais si tous vos identifiants à " +"préserver commencent par le même préfixe, (#page-debut, #page-fin, par " +"exemple), vous pouvez utiliser cette option." #: ../share/extensions/scour.inx.h:47 msgid "Optimized SVG (*.svg)" @@ -30850,12 +34283,14 @@ msgstr "Fichiers d'entrée graphiques vectoriels sK1" #: ../share/extensions/sk1_input.inx.h:2 #: ../share/extensions/sk1_output.inx.h:2 -msgid "sK1 vector graphics files (.sk1)" +#, fuzzy +msgid "sK1 vector graphics files (*.sk1)" msgstr "Fichiers graphiques vectoriels sK1 (.sk1)" #: ../share/extensions/sk1_input.inx.h:3 msgid "Open files saved in sK1 vector graphics editor" -msgstr "Ouvrir des fichiers enregistrés avec l'éditeur de graphismes vectoriels sK1" +msgstr "" +"Ouvrir des fichiers enregistrés avec l'éditeur de graphismes vectoriels sK1" #: ../share/extensions/sk1_output.inx.h:1 msgid "sK1 vector graphics files output" @@ -30972,13 +34407,11 @@ msgstr "Format de fichier graphiques XML d'Adobe" msgid "XAML Output" msgstr "Sortie XAML" -#: ../share/extensions/svg2xaml.inx.h:2 -#: ../share/extensions/xaml2svg.inx.h:2 +#: ../share/extensions/svg2xaml.inx.h:2 ../share/extensions/xaml2svg.inx.h:2 msgid "Microsoft XAML (*.xaml)" msgstr "Microsoft XAML (*.xaml)" -#: ../share/extensions/svg2xaml.inx.h:3 -#: ../share/extensions/xaml2svg.inx.h:3 +#: ../share/extensions/svg2xaml.inx.h:3 ../share/extensions/xaml2svg.inx.h:3 msgid "Microsoft's GUI definition format" msgstr "Format de définition d'interfaces graphiques de Microsoft" @@ -30999,8 +34432,12 @@ msgid "Compressed Inkscape SVG with media (*.zip)" msgstr "SVG Inkscape compressé avec média (*.zip)" #: ../share/extensions/svg_and_media_zip_output.inx.h:5 -msgid "Inkscape's native file format compressed with Zip and including all media files" -msgstr "Format de fichier natif d'Inkscape compressé avec Zip et incluant d'autres fichiers de média" +msgid "" +"Inkscape's native file format compressed with Zip and including all media " +"files" +msgstr "" +"Format de fichier natif d'Inkscape compressé avec Zip et incluant d'autres " +"fichiers de média" #: ../share/extensions/svgcalendar.inx.h:1 msgid "Calendar" @@ -31064,7 +34501,8 @@ msgstr "Marge des mois :" #: ../share/extensions/svgcalendar.inx.h:18 msgid "The options below have no influence when the above is checked." -msgstr "Les options suivantes ne s'appliquent pas si la case précédente est cochée." +msgstr "" +"Les options suivantes ne s'appliquent pas si la case précédente est cochée." #: ../share/extensions/svgcalendar.inx.h:20 msgid "Year color:" @@ -31119,8 +34557,12 @@ msgid "You may change the names for other languages:" msgstr "Ajuster les noms en fonction de votre langue :" #: ../share/extensions/svgcalendar.inx.h:33 -msgid "January February March April May June July August September October November December" -msgstr "Janvier Février Mars Avril Mai Juin Juillet Août Septembre Octobre Novembre Décembre" +msgid "" +"January February March April May June July August September October November " +"December" +msgstr "" +"Janvier Février Mars Avril Mai Juin Juillet Août Septembre Octobre Novembre " +"Décembre" #: ../share/extensions/svgcalendar.inx.h:34 msgid "Sun Mon Tue Wed Thu Fri Sat" @@ -31135,8 +34577,12 @@ msgid "Wk" msgstr "S" #: ../share/extensions/svgcalendar.inx.h:37 -msgid "Select your system encoding. More information at http://docs.python.org/library/codecs.html#standard-encodings." -msgstr "Sélectionnez votre encodage système. De plus amples informations à l'adresse http://docs.python.org/library/codecs.html#standard-encodings." +msgid "" +"Select your system encoding. More information at http://docs.python.org/" +"library/codecs.html#standard-encodings." +msgstr "" +"Sélectionnez votre encodage système. De plus amples informations à l'adresse " +"http://docs.python.org/library/codecs.html#standard-encodings." #: ../share/extensions/svgfont2layers.inx.h:1 msgid "Convert SVG Font to Glyph Layers" @@ -31167,30 +34613,37 @@ msgid "Extract" msgstr "Extraire" #: ../share/extensions/text_extract.inx.h:2 +#: ../share/extensions/text_merge.inx.h:2 msgid "Text direction:" msgstr "Direction du texte :" #: ../share/extensions/text_extract.inx.h:3 +#: ../share/extensions/text_merge.inx.h:3 msgid "Left to right" msgstr "De gauche à droite" #: ../share/extensions/text_extract.inx.h:4 +#: ../share/extensions/text_merge.inx.h:4 msgid "Bottom to top" msgstr "De bas en haut" #: ../share/extensions/text_extract.inx.h:5 +#: ../share/extensions/text_merge.inx.h:5 msgid "Right to left" msgstr "De droite à gauche" #: ../share/extensions/text_extract.inx.h:6 +#: ../share/extensions/text_merge.inx.h:6 msgid "Top to bottom" msgstr "De haut en bas" #: ../share/extensions/text_extract.inx.h:7 +#: ../share/extensions/text_merge.inx.h:7 msgid "Horizontal point:" msgstr "Point horizontal :" #: ../share/extensions/text_extract.inx.h:11 +#: ../share/extensions/text_merge.inx.h:11 msgid "Vertical point:" msgstr "Point vertical :" @@ -31211,6 +34664,16 @@ msgstr "Modifier la casse" msgid "lowercase" msgstr "minuscules" +#: ../share/extensions/text_merge.inx.h:14 +#, fuzzy +msgid "Flow text" +msgstr "Texte encadré" + +#: ../share/extensions/text_merge.inx.h:15 +#, fuzzy +msgid "Keep style" +msgstr "Appliquer un style à un texte" + #: ../share/extensions/text_randomcase.inx.h:1 msgid "rANdOm CasE" msgstr "cAssE ALÉatOIRe" @@ -31275,18 +34738,6 @@ msgstr "À partir du côté a et des angles a et b" msgid "From Side c and Angles a, b" msgstr "À partir du côté c et des angles a et b" -#: ../share/extensions/txt2svg.inx.h:1 -msgid "Text Input" -msgstr "Entrée texte" - -#: ../share/extensions/txt2svg.inx.h:2 -msgid "Text File (*.txt)" -msgstr "Fichier texte (*.txt)" - -#: ../share/extensions/txt2svg.inx.h:3 -msgid "ASCII Text" -msgstr "Texte ASCII" - #: ../share/extensions/voronoi2svg.inx.h:1 msgid "Voronoi Diagram" msgstr "Diagramme de Voronoï" @@ -31320,8 +34771,150 @@ msgid "Automatic from selected objects" msgstr "Automatique à partir des objets sélectionnés" #: ../share/extensions/voronoi2svg.inx.h:12 -msgid "Select a set of objects. Their centroids will be used as the sites of the Voronoi diagram. Text objects are not handled." -msgstr "Sélectionnez un ensemble d'objets. Leurs barycentres seront utilisés comme sites du diagramme de Voronoï. Les objets de type texte ne sont pas supportés." +msgid "" +"Select a set of objects. Their centroids will be used as the sites of the " +"Voronoi diagram. Text objects are not handled." +msgstr "" +"Sélectionnez un ensemble d'objets. Leurs barycentres seront utilisés comme " +"sites du diagramme de Voronoï. Les objets de type texte ne sont pas " +"supportés." + +#: ../share/extensions/web-set-att.inx.h:1 +msgid "Set Attributes" +msgstr "Définir les attributs" + +#: ../share/extensions/web-set-att.inx.h:3 +msgid "Attribute to set:" +msgstr "Attribut à définir :" + +#: ../share/extensions/web-set-att.inx.h:4 +msgid "When should the set be done:" +msgstr "Appliquer la définition :" + +#: ../share/extensions/web-set-att.inx.h:5 +msgid "Value to set:" +msgstr "Valeur à définir :" + +#: ../share/extensions/web-set-att.inx.h:6 +#: ../share/extensions/web-transmit-att.inx.h:5 +msgid "Compatibility with previews code to this event:" +msgstr "Compatibilité avec le code de prévisualisation pour cet événement :" + +#: ../share/extensions/web-set-att.inx.h:7 +msgid "Source and destination of setting:" +msgstr "Source et destination de la définition :" + +#: ../share/extensions/web-set-att.inx.h:8 +#: ../share/extensions/web-transmit-att.inx.h:7 +msgid "on click" +msgstr "on click" + +#: ../share/extensions/web-set-att.inx.h:9 +#: ../share/extensions/web-transmit-att.inx.h:8 +msgid "on focus" +msgstr "on focus" + +#: ../share/extensions/web-set-att.inx.h:10 +#: ../share/extensions/web-transmit-att.inx.h:9 +msgid "on blur" +msgstr "on blur" + +#: ../share/extensions/web-set-att.inx.h:11 +#: ../share/extensions/web-transmit-att.inx.h:10 +msgid "on activate" +msgstr "on activate" + +#: ../share/extensions/web-set-att.inx.h:12 +#: ../share/extensions/web-transmit-att.inx.h:11 +msgid "on mouse down" +msgstr "on mouse down" + +#: ../share/extensions/web-set-att.inx.h:13 +#: ../share/extensions/web-transmit-att.inx.h:12 +msgid "on mouse up" +msgstr "on mouse up" + +#: ../share/extensions/web-set-att.inx.h:14 +#: ../share/extensions/web-transmit-att.inx.h:13 +msgid "on mouse over" +msgstr "on mouse over" + +#: ../share/extensions/web-set-att.inx.h:15 +#: ../share/extensions/web-transmit-att.inx.h:14 +msgid "on mouse move" +msgstr "on mouse move" + +#: ../share/extensions/web-set-att.inx.h:16 +#: ../share/extensions/web-transmit-att.inx.h:15 +msgid "on mouse out" +msgstr "on mouse out" + +#: ../share/extensions/web-set-att.inx.h:17 +#: ../share/extensions/web-transmit-att.inx.h:16 +msgid "on element loaded" +msgstr "on element loaded" + +#: ../share/extensions/web-set-att.inx.h:18 +msgid "The list of values must have the same size as the attributes list." +msgstr "" +"La liste des valeurs doit avoir la même taille que la liste des attributs." + +#: ../share/extensions/web-set-att.inx.h:19 +#: ../share/extensions/web-transmit-att.inx.h:17 +msgid "Run it after" +msgstr "Exécuter après" + +#: ../share/extensions/web-set-att.inx.h:20 +#: ../share/extensions/web-transmit-att.inx.h:18 +msgid "Run it before" +msgstr "Exécuter avant" + +#: ../share/extensions/web-set-att.inx.h:22 +#: ../share/extensions/web-transmit-att.inx.h:20 +msgid "The next parameter is useful when you select more than two elements" +msgstr "" +"Le paramètre suivant est utile si plus de deux éléments sont sélectionnés" + +#: ../share/extensions/web-set-att.inx.h:23 +msgid "All selected ones set an attribute in the last one" +msgstr "Tous les sélectionnés définissent un attribut dans le dernier" + +#: ../share/extensions/web-set-att.inx.h:24 +msgid "The first selected sets an attribute in all others" +msgstr "Le premier sélectionné définit un attribut pour tous les autres" + +#: ../share/extensions/web-set-att.inx.h:26 +#: ../share/extensions/web-transmit-att.inx.h:24 +msgid "" +"This effect adds a feature visible (or usable) only on a SVG enabled web " +"browser (like Firefox)." +msgstr "" +"L'élément ajouté par cet effet sera visible (ou utilisable) seulement avec " +"un navigateur internet supportant SVG (comme Firefox)." + +#: ../share/extensions/web-set-att.inx.h:27 +msgid "" +"This effect sets one or more attributes in the second selected element, when " +"a defined event occurs on the first selected element." +msgstr "" +"Cet effet définit un ou plusieurs attributs sur le deuxième élément " +"sélectionné lorsqu'un événement intervient sur le premier." + +#: ../share/extensions/web-set-att.inx.h:28 +msgid "" +"If you want to set more than one attribute, you must separate this with a " +"space, and only with a space." +msgstr "" +"Si vous souhaitez définir plusieurs attributs, vous devez les séparer avec " +"le caractère « espace »." + +#: ../share/extensions/web-set-att.inx.h:29 +#: ../share/extensions/webslicer_create_group.inx.h:13 +#: ../share/extensions/webslicer_create_rect.inx.h:41 +#: ../share/extensions/webslicer_export.inx.h:8 +#: ../share/extensions/web-transmit-att.inx.h:27 +msgid "Web" +msgstr "Web" #: ../share/extensions/webslicer_create_group.inx.h:1 msgid "Set a layout group" @@ -31363,16 +34956,13 @@ msgid "Undefined (relative to non-floating content size)" msgstr "Indéfini (relatif à une taille de contenu fixe)" #: ../share/extensions/webslicer_create_group.inx.h:12 -msgid "Layout Group is only about to help a better code generation (if you need it). To use this, you must to select some \"Slicer rectangles\" first." -msgstr "Le but du groupe de composants est d'aider à générer un meilleur code (si nécessaire). Pour l'utiliser, vous devez d'abord sélectionner des « Rectangles de découpe »." - -#: ../share/extensions/webslicer_create_group.inx.h:13 -#: ../share/extensions/webslicer_create_rect.inx.h:41 -#: ../share/extensions/webslicer_export.inx.h:8 -#: ../share/extensions/web-set-att.inx.h:29 -#: ../share/extensions/web-transmit-att.inx.h:27 -msgid "Web" -msgstr "Web" +msgid "" +"Layout Group is only about to help a better code generation (if you need " +"it). To use this, you must to select some \"Slicer rectangles\" first." +msgstr "" +"Le but du groupe de composants est d'aider à générer un meilleur code (si " +"nécessaire). Pour l'utiliser, vous devez d'abord sélectionner des " +"« Rectangles de découpe »." #: ../share/extensions/webslicer_create_group.inx.h:14 msgid "Slicer" @@ -31393,7 +34983,8 @@ msgstr "Imposer la dimension :" #. i18n. Description duplicated in a fake value attribute in order to make it translatable #: ../share/extensions/webslicer_create_rect.inx.h:7 msgid "Force Dimension must be set as <width>x<height>" -msgstr "La dimension imposée doit être définie sous la forme « <largeur>x<hauteur> »" +msgstr "" +"La dimension imposée doit être définie sous la forme « <largeur>x<hauteur> »" #: ../share/extensions/webslicer_create_rect.inx.h:8 msgid "If set, this will replace DPI." @@ -31408,8 +34999,13 @@ msgid "Quality:" msgstr "Qualité :" #: ../share/extensions/webslicer_create_rect.inx.h:12 -msgid "0 is the lowest image quality and highest compression, and 100 is the best quality but least effective compression" -msgstr "0 correspond à la plus faible qualité d'image et à la plus forte compression, 100 à la meilleure qualité mais à une compression moins efficace." +msgid "" +"0 is the lowest image quality and highest compression, and 100 is the best " +"quality but least effective compression" +msgstr "" +"0 correspond à la plus faible qualité d'image et à la plus forte " +"compression, 100 à la meilleure qualité mais à une compression moins " +"efficace." #: ../share/extensions/webslicer_create_rect.inx.h:13 msgid "GIF specific options" @@ -31525,123 +35121,12 @@ msgstr "Avec HTML et CSS" #: ../share/extensions/webslicer_export.inx.h:7 #, fuzzy -msgid "All sliced images, and optionally - code, will be generated as you had configured and saved to one directory." -msgstr "Les images découpées, et éventuellement le code, seront générés comme configuré et enregistrés dans un dossier." - -#: ../share/extensions/web-set-att.inx.h:1 -msgid "Set Attributes" -msgstr "Définir les attributs" - -#: ../share/extensions/web-set-att.inx.h:3 -msgid "Attribute to set:" -msgstr "Attribut à définir :" - -#: ../share/extensions/web-set-att.inx.h:4 -msgid "When should the set be done:" -msgstr "Appliquer la définition :" - -#: ../share/extensions/web-set-att.inx.h:5 -msgid "Value to set:" -msgstr "Valeur à définir :" - -#: ../share/extensions/web-set-att.inx.h:6 -#: ../share/extensions/web-transmit-att.inx.h:5 -msgid "Compatibility with previews code to this event:" -msgstr "Compatibilité avec le code de prévisualisation pour cet événement :" - -#: ../share/extensions/web-set-att.inx.h:7 -msgid "Source and destination of setting:" -msgstr "Source et destination de la définition :" - -#: ../share/extensions/web-set-att.inx.h:8 -#: ../share/extensions/web-transmit-att.inx.h:7 -msgid "on click" -msgstr "on click" - -#: ../share/extensions/web-set-att.inx.h:9 -#: ../share/extensions/web-transmit-att.inx.h:8 -msgid "on focus" -msgstr "on focus" - -#: ../share/extensions/web-set-att.inx.h:10 -#: ../share/extensions/web-transmit-att.inx.h:9 -msgid "on blur" -msgstr "on blur" - -#: ../share/extensions/web-set-att.inx.h:11 -#: ../share/extensions/web-transmit-att.inx.h:10 -msgid "on activate" -msgstr "on activate" - -#: ../share/extensions/web-set-att.inx.h:12 -#: ../share/extensions/web-transmit-att.inx.h:11 -msgid "on mouse down" -msgstr "on mouse down" - -#: ../share/extensions/web-set-att.inx.h:13 -#: ../share/extensions/web-transmit-att.inx.h:12 -msgid "on mouse up" -msgstr "on mouse up" - -#: ../share/extensions/web-set-att.inx.h:14 -#: ../share/extensions/web-transmit-att.inx.h:13 -msgid "on mouse over" -msgstr "on mouse over" - -#: ../share/extensions/web-set-att.inx.h:15 -#: ../share/extensions/web-transmit-att.inx.h:14 -msgid "on mouse move" -msgstr "on mouse move" - -#: ../share/extensions/web-set-att.inx.h:16 -#: ../share/extensions/web-transmit-att.inx.h:15 -msgid "on mouse out" -msgstr "on mouse out" - -#: ../share/extensions/web-set-att.inx.h:17 -#: ../share/extensions/web-transmit-att.inx.h:16 -msgid "on element loaded" -msgstr "on element loaded" - -#: ../share/extensions/web-set-att.inx.h:18 -msgid "The list of values must have the same size as the attributes list." -msgstr "La liste des valeurs doit avoir la même taille que la liste des attributs." - -#: ../share/extensions/web-set-att.inx.h:19 -#: ../share/extensions/web-transmit-att.inx.h:17 -msgid "Run it after" -msgstr "Exécuter après" - -#: ../share/extensions/web-set-att.inx.h:20 -#: ../share/extensions/web-transmit-att.inx.h:18 -msgid "Run it before" -msgstr "Exécuter avant" - -#: ../share/extensions/web-set-att.inx.h:22 -#: ../share/extensions/web-transmit-att.inx.h:20 -msgid "The next parameter is useful when you select more than two elements" -msgstr "Le paramètre suivant est utile si plus de deux éléments sont sélectionnés" - -#: ../share/extensions/web-set-att.inx.h:23 -msgid "All selected ones set an attribute in the last one" -msgstr "Tous les sélectionnés définissent un attribut dans le dernier" - -#: ../share/extensions/web-set-att.inx.h:24 -msgid "The first selected sets an attribute in all others" -msgstr "Le premier sélectionné définit un attribut pour tous les autres" - -#: ../share/extensions/web-set-att.inx.h:26 -#: ../share/extensions/web-transmit-att.inx.h:24 -msgid "This effect adds a feature visible (or usable) only on a SVG enabled web browser (like Firefox)." -msgstr "L'élément ajouté par cet effet sera visible (ou utilisable) seulement avec un navigateur internet supportant SVG (comme Firefox)." - -#: ../share/extensions/web-set-att.inx.h:27 -msgid "This effect sets one or more attributes in the second selected element, when a defined event occurs on the first selected element." -msgstr "Cet effet définit un ou plusieurs attributs sur le deuxième élément sélectionné lorsqu'un événement intervient sur le premier." - -#: ../share/extensions/web-set-att.inx.h:28 -msgid "If you want to set more than one attribute, you must separate this with a space, and only with a space." -msgstr "Si vous souhaitez définir plusieurs attributs, vous devez les séparer avec le caractère « espace »." +msgid "" +"All sliced images, and optionally - code, will be generated as you had " +"configured and saved to one directory." +msgstr "" +"Les images découpées, et éventuellement le code, seront générés comme " +"configuré et enregistrés dans un dossier." #: ../share/extensions/web-transmit-att.inx.h:1 msgid "Transmit Attributes" @@ -31668,12 +35153,20 @@ msgid "The first selected transmits to all others" msgstr "Le premier sélectionné transmet à tous les autres" #: ../share/extensions/web-transmit-att.inx.h:25 -msgid "This effect transmits one or more attributes from the first selected element to the second when an event occurs." -msgstr "Cet effet transmet un ou plusieurs attributs du premier élément sélectionné vers le deuxième lorsqu'un événement intervient." +msgid "" +"This effect transmits one or more attributes from the first selected element " +"to the second when an event occurs." +msgstr "" +"Cet effet transmet un ou plusieurs attributs du premier élément sélectionné " +"vers le deuxième lorsqu'un événement intervient." #: ../share/extensions/web-transmit-att.inx.h:26 -msgid "If you want to transmit more than one attribute, you should separate this with a space, and only with a space." -msgstr "Si vous souhaitez transmettre plusieurs attributs, vous devez les séparer avec le caractère « espace »." +msgid "" +"If you want to transmit more than one attribute, you should separate this " +"with a space, and only with a space." +msgstr "" +"Si vous souhaitez transmettre plusieurs attributs, vous devez les séparer " +"avec le caractère « espace »." #: ../share/extensions/whirl.inx.h:1 msgid "Whirl" @@ -31712,11 +35205,6 @@ msgstr "Cacher les lignes derrière la sphère" msgid "Windows Metafile Input" msgstr "Entrée métafichier Windows (*.wmf)" -#: ../share/extensions/wmf_input.inx.h:2 -#: ../share/extensions/wmf_output.inx.h:2 -msgid "Windows Metafile (*.wmf)" -msgstr "Métafichier Windows (*.wmf)" - #: ../share/extensions/wmf_input.inx.h:3 #: ../share/extensions/wmf_output.inx.h:3 msgid "A popular graphics file format for clipart" @@ -31726,6 +35214,326 @@ msgstr "Un format graphique populaire pour les cliparts" msgid "XAML Input" msgstr "Entrée XAML" +#~ msgid "<b>Flowed text</b> (%d character%s)" +#~ msgid_plural "<b>Flowed text</b> (%d characters%s)" +#~ msgstr[0] "<b>Texte encadré</b> (%d caractère%s)" +#~ msgstr[1] "<b>Texte encadré</b> (%d caractères%s)" + +#~ msgid "<b>Linked flowed text</b> (%d character%s)" +#~ msgid_plural "<b>Linked flowed text</b> (%d characters%s)" +#~ msgstr[0] "<b>Texte encadré lié</b> (%d caractère%s)" +#~ msgstr[1] "<b>Texte encadré lié</b> (%d caractères%s)" + +#~ msgid "<b>3D Box</b>" +#~ msgstr "<b>Boîte 3D</b>" + +#~ msgid "Pt" +#~ msgstr "Pt" + +#~ msgid "Picas" +#~ msgstr "Picas" + +#~ msgid "Pc" +#~ msgstr "Pc" + +#~ msgid "Pixels" +#~ msgstr "Pixels" + +#~ msgid "Px" +#~ msgstr "Px" + +#~ msgid "Percent" +#~ msgstr "Pourcent" + +#~ msgid "Percents" +#~ msgstr "Pourcents" + +#~ msgid "Millimeters" +#~ msgstr "Millimètres" + +#~ msgid "Centimeters" +#~ msgstr "Centimètres" + +#~ msgid "Meter" +#~ msgstr "Mètre" + +#~ msgid "Meters" +#~ msgstr "Mètres" + +#~ msgid "Inches" +#~ msgstr "Pouces" + +#~ msgid "Foot" +#~ msgstr "Pied" + +#~ msgid "Feet" +#~ msgstr "Pieds" + +#~ msgid "em" +#~ msgstr "em" + +#~ msgid "Em squares" +#~ msgstr "Em carrés" + +#~ msgid "Ex square" +#~ msgstr "Ex carré" + +#~ msgid "ex" +#~ msgstr "ex" + +#~ msgid "Ex squares" +#~ msgstr "Ex carrés" + +#~ msgid "Name by which this document is formally known" +#~ msgstr "Nom sous lequel le document est formellement connu" + +#~ msgid "Date associated with the creation of this document (YYYY-MM-DD)" +#~ msgstr "Date associée à la création du document (AAAA-MM-JJ)" + +#~ msgid "The physical or digital manifestation of this document (MIME type)" +#~ msgstr "La manifestation physique ou numérique de ce document (type MIME)" + +#~ msgid "Type of document (DCMI Type)" +#~ msgstr "Type du document (type DCMI)" + +#~ msgid "" +#~ "Name of entity with rights to the Intellectual Property of this document" +#~ msgstr "" +#~ "Nom de l'entité possédant les droits de Propriété Intellectuelle sur ce " +#~ "document" + +#~ msgid "Unique URI to reference this document" +#~ msgstr "URI unique pour référencer ce document" + +#~ msgid "Unique URI to reference the source of this document" +#~ msgstr "" +#~ "URI unique pour référencer la ressource dont le document actuel est dérivé" + +#~ msgid "Unique URI to a related document" +#~ msgstr "URI unique vers un document apparenté" + +#~ msgid "" +#~ "Two-letter language tag with optional subtags for the language of this " +#~ "document (e.g. 'en-GB')" +#~ msgstr "" +#~ "Balise de deux lettres spécifiant la langue de ce document, avec une sous-" +#~ "balise optionnelle de spécification régionale (ex. « fr-FR » )" + +#~ msgid "" +#~ "The topic of this document as comma-separated key words, phrases, or " +#~ "classifications" +#~ msgstr "" +#~ "Le sujet de ce document sous forme de mots clés, phrases ou éléments de " +#~ "classification, séparés par des virgules" + +#~ msgid "Extent or scope of this document" +#~ msgstr "Étendue ou portée de ce document" + +#~ msgctxt "Web" +#~ msgid "Link" +#~ msgstr "Lien" + +#~ msgid "Polyline" +#~ msgstr "Polyligne" + +#~ msgctxt "Object" +#~ msgid "Text" +#~ msgstr "Texte" + +#~ msgctxt "Object" +#~ msgid "Clone" +#~ msgstr "Clone" + +#~ msgid "<b>%i</b> object of type <b>%s</b>" +#~ msgid_plural "<b>%i</b> objects of type <b>%s</b>" +#~ msgstr[0] "<b>%i</b> objet de type <b>%s</b>" +#~ msgstr[1] "<b>%i</b> objets de type <b>%s</b>" + +#~ msgid "<b>%i</b> object of types <b>%s</b>, <b>%s</b>" +#~ msgid_plural "<b>%i</b> objects of types <b>%s</b>, <b>%s</b>" +#~ msgstr[0] "<b>%i</b> objets de types <b>%s</b>, <b>%s</b>" +#~ msgstr[1] "<b>%i</b> objets de types <b>%s</b>, <b>%s</b>" + +#~ msgid "<b>%i</b> object of types <b>%s</b>, <b>%s</b>, <b>%s</b>" +#~ msgid_plural "<b>%i</b> objects of types <b>%s</b>, <b>%s</b>, <b>%s</b>" +#~ msgstr[0] "<b>%i</b> objet de types <b>%s</b>, <b>%s</b>, <b>%s</b>" +#~ msgstr[1] "<b>%i</b> objets de types <b>%s</b>, <b>%s</b>, <b>%s</b>" + +#~ msgid "<b>%i</b> object of <b>%i</b> types" +#~ msgid_plural "<b>%i</b> objects of <b>%i</b> types" +#~ msgstr[0] "<b>%i</b> objet de <b>%i</b> types" +#~ msgstr[1] "<b>%i</b> objets de <b>%i</b> types" + +#~ msgid "<b>Link</b> to %s" +#~ msgstr "<b>Lien</b> vers %s" + +#~ msgid "<b>Ellipse</b>" +#~ msgstr "<b>Ellipse</b>" + +#~ msgid "<b>Circle</b>" +#~ msgstr "<b>Cercle</b>" + +#~ msgid "<b>Segment</b>" +#~ msgstr "<b>Camembert</b>" + +#~ msgid "<b>Arc</b>" +#~ msgstr "<b>Arc</b>" + +#~ msgid "<b>Image with bad reference</b>: %s" +#~ msgstr "<b>Image avec une mauvaise référence</b> : %s" + +#~ msgid "<b>Line</b>" +#~ msgstr "<b>Ligne</b>" + +#~ msgid "<b>Linked offset</b>, %s by %f pt" +#~ msgstr "<b>Offset lié</b>, %s de %f pt" + +#~ msgid "<b>Dynamic offset</b>, %s by %f pt" +#~ msgstr "<b>Offset dynamique</b>, %s de %f pt" + +#~ msgid "<b>Path</b> (%i node, path effect: %s)" +#~ msgid_plural "<b>Path</b> (%i nodes, path effect: %s)" +#~ msgstr[0] "<b>Chemin</b> (%i nœud, effet de chemin : %s)" +#~ msgstr[1] "<b>Chemin</b> (%i nœuds, effet de chemin : %s)" + +#~ msgid "<b>Path</b> (%i node)" +#~ msgid_plural "<b>Path</b> (%i nodes)" +#~ msgstr[0] "<b>Chemin</b> (%i nœud)" +#~ msgstr[1] "<b>Chemin</b> (%i nœuds)" + +#~ msgid "<b>Rectangle</b>" +#~ msgstr "<b>Rectangle</b>" + +#~ msgid "<b>Polygon</b> with %d vertex" +#~ msgid_plural "<b>Polygon</b> with %d vertices" +#~ msgstr[0] "<b>Polygone</b> à %d sommet" +#~ msgstr[1] "<b>Polygone</b> à %d sommets" + +#~ msgid "<b>Orphaned cloned character data</b>" +#~ msgstr "<b>Données de caractères clonés orphelines</b>" + +#~ msgid "<b>Text span</b>" +#~ msgstr "<b>Rectangle de texte</b>" + +#~ msgid "<b>'%s' Symbol</b>" +#~ msgstr "<b>'%s' symbole</b>" + +#~ msgid "<b>Clone</b> of: %s" +#~ msgstr "<b>Clone</b> de : %s" + +#~ msgid "<b>Orphaned clone</b>" +#~ msgstr "<b>Clone orphelin</b>" + +#~ msgid "Allow relative coordinates" +#~ msgstr "Autoriser les coordonnées relatives" + +#~ msgid "If set, relative coordinates may be used in path data" +#~ msgstr "" +#~ "Si coché, les coordonnées relatives peuvent être utilisées dans les " +#~ "données du chemin" + +#~ msgid "_Execute Javascript" +#~ msgstr "_Exécuter Javascript" + +#~ msgid "_Execute Python" +#~ msgstr "_Exécuter Python" + +#~ msgid "_Execute Ruby" +#~ msgstr "_Exécuter Ruby" + +#~ msgid "Script" +#~ msgstr "Script" + +#~ msgid "Errors" +#~ msgstr "Erreurs" + +#~ msgid "S_cripts..." +#~ msgstr "S_cripts..." + +#~ msgid "Run scripts" +#~ msgstr "Exécuter des scripts" + +#~ msgid "Preset:" +#~ msgstr "Présélection :" + +#~ msgid "Custom..." +#~ msgstr "Personnalisée..." + +#~ msgid "Golden ratio" +#~ msgstr "Nombre d'or" + +#~ msgid "Rule-of-third" +#~ msgstr "Règle des tiers" + +#~ msgid "Vertical guide each:" +#~ msgstr "Guide vertical tous les :" + +#~ msgid "1/2" +#~ msgstr "1/2" + +#~ msgid "1/3" +#~ msgstr "1/3" + +#~ msgid "1/4" +#~ msgstr "1/4" + +#~ msgid "1/5" +#~ msgstr "1/5" + +#~ msgid "1/6" +#~ msgstr "1/6" + +#~ msgid "1/7" +#~ msgstr "1/7" + +#~ msgid "1/8" +#~ msgstr "1/8" + +#~ msgid "1/9" +#~ msgstr "1/9" + +#~ msgid "1/10" +#~ msgstr "1/10" + +#~ msgid "Horizontal guide each:" +#~ msgstr "Guide horizontal tous les :" + +#, fuzzy +#~ msgid "Correct tool offset" +#~ msgstr "Créer un objet offset lié" + +#, fuzzy +#~ msgid "Return Factor:" +#~ msgstr "Facteur :" + +#~ msgid "Plot invisible layers" +#~ msgstr "Tracer les calques invisibles" + +#~ msgid "Plot invisible layers (Standard: 'False')" +#~ msgstr "Tracer les calques invisibles (en standard à faux)" + +#, fuzzy +#~ msgid "Send to Plotter also" +#~ msgstr "Traceur de fonction" + +#~ msgid "Text Outline Input" +#~ msgstr "Entrée texte outline" + +#~ msgid "Text Outline File (*.outline)" +#~ msgstr "Fichier texte outline (*.outline)" + +#~ msgid "ASCII Text with outline markup" +#~ msgstr "Texte ASCII avec identification de titres (outline)" + +#~ msgid "Text Input" +#~ msgstr "Entrée texte" + +#~ msgid "Text File (*.txt)" +#~ msgstr "Fichier texte (*.txt)" + +#~ msgid "ASCII Text" +#~ msgstr "Texte ASCII" + #~ msgid "Crop:" #~ msgstr "Découpage :" @@ -31852,9 +35660,6 @@ msgstr "Entrée XAML" #~ msgid "Blur type:" #~ msgstr "Type de flou :" -#~ msgid "Blend source:" -#~ msgstr "Source de fondu :" - #~ msgid "Composite:" #~ msgstr "Composite :" @@ -31995,9 +35800,6 @@ msgstr "Entrée XAML" #~ msgid "Edit:" #~ msgstr "Édition :" -#~ msgid "Specifies the shape of the path's corners" -#~ msgstr "Définit la forme des coins du chemin" - #~ msgid "O:%.3g" #~ msgstr "O : %.3g" @@ -32009,8 +35811,8 @@ msgstr "Entrée XAML" #~ msgid "Majenta" #~ msgstr "Magenta" -#~ msgctxt "Filesystem" +#~ msgctxt "Filesystem" #~ msgid "_Path:" #~ msgstr "_Chemin :" @@ -32019,20 +35821,20 @@ msgstr "Entrée XAML" #~ msgid "_Description" #~ msgstr "_Description" -#~ msgctxt "Interpolator" +#~ msgctxt "Interpolator" #~ msgid "Linear" #~ msgstr "Linéaire" -#~ msgctxt "Line cap" +#~ msgctxt "Line cap" #~ msgid "Round" #~ msgstr "Arrondie" -#~ msgctxt "Line join" +#~ msgctxt "Line join" #~ msgid "Rounded" #~ msgstr "Arrondi" -#~ msgctxt "Line join" +#~ msgctxt "Line join" #~ msgid "Spiro" #~ msgstr "Spiro" @@ -32044,10 +35846,6 @@ msgstr "Entrée XAML" #~ msgid "[Unstable!] Clone original path" #~ msgstr "[Instable !] Cloner le chemin original" -#~ msgctxt "Filesystem" - -#~ msgid "Path:" -#~ msgstr "Chemin :" #~ msgid "_Blur:" #~ msgstr "_Flou :" @@ -32084,8 +35882,8 @@ msgstr "Entrée XAML" #~ msgid "_Select Same Fill and Stroke" #~ msgstr "_Sélectionner le même remplissage et contour" -#~ msgctxt "Measurement tool" +#~ msgctxt "Measurement tool" #~ msgid "Measure" #~ msgstr "Mesurer" @@ -32229,9 +36027,6 @@ msgstr "Entrée XAML" #~ msgid "found" #~ msgstr "trouvé" -#~ msgid "Not found" -#~ msgstr "Aucune correspondance" - #~ msgid "Effect list" #~ msgstr "Listes des effets" @@ -32907,9 +36702,6 @@ msgstr "Entrée XAML" #~ msgid "Transluscent" #~ msgstr "Translucide" -#~ msgid "Label:" -#~ msgstr "Étiquette :" - #, fuzzy #~ msgid "Ancestor offset" #~ msgstr "Décalage moyen :" @@ -33043,998 +36835,881 @@ msgstr "Entrée XAML" #~ msgid "_Blend mode:" #~ msgstr "Mode de _fondu :" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "Blue1" #~ msgstr "Bleu1" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "Blue2" #~ msgstr "Bleu2" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "Blue3" #~ msgstr "Bleu3" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "Red1" #~ msgstr "Rouge1" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "Red2" #~ msgstr "Rouge2" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "Red3" #~ msgstr "Rouge3" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "Orange1" #~ msgstr "Orange1" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "Orange2" #~ msgstr "Orange2" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "Orange3" #~ msgstr "Orange3" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "Brown1" #~ msgstr "Brun1" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "Brown2" #~ msgstr "Brun2" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "Brown3" #~ msgstr "Brun3" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "Green1" #~ msgstr "Vert1" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "Green2" #~ msgstr "Vert2" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "Green3" #~ msgstr "Vert3" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "Purple1" #~ msgstr "Violet1" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "Purple2" #~ msgstr "Violet2" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "Purple3" #~ msgstr "Violet3" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "Metalic1" #~ msgstr "Métallique1" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "Metalic2" #~ msgstr "Métallique2" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "Metalic3" #~ msgstr "Métallique3" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "Metalic4" #~ msgstr "Métallique4" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "Grey1" #~ msgstr "Gris1" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "Grey2" #~ msgstr "Gris2" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "Grey3" #~ msgstr "Gris3" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "Grey4" #~ msgstr "Gris4" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "Grey5" #~ msgstr "Gris5" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "default outer 1" #~ msgstr "extérieur 1 (défaut)" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "default outer 2" #~ msgstr "extérieur 2 (défaut)" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "default outer 3" #~ msgstr "extérieur 3 (défaut)" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "default block" #~ msgstr "bloc (défaut)" #, fuzzy #~ msgctxt "Palette" - #~ msgid "default added blue" #~ msgstr "bleu ajouté (défaut)" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "default block header" #~ msgstr "en-tête de bloc (défaut)" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "default alert block" #~ msgstr "bloc d'alerte (défaut)" #, fuzzy #~ msgctxt "Palette" - #~ msgid "default added red" #~ msgstr "rouge ajouté (défaut)" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "default alert block header" #~ msgstr "en-tête de bloc d'alerte (défaut)" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "default example block" #~ msgstr "bloc d'exemple (défaut)" #, fuzzy #~ msgctxt "Palette" - #~ msgid "default added green" #~ msgstr "vert ajouté (défaut)" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "default example block header" #~ msgstr "en-tête de bloc d'exemple (défaut)" #, fuzzy #~ msgctxt "Palette" - #~ msgid "default covered text" #~ msgstr "Créer un texte encadré" #, fuzzy #~ msgctxt "Palette" - #~ msgid "default covered bullet" #~ msgstr "Créer un texte encadré" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "default text" #~ msgstr "texte (défaut)" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "default light outer 1" #~ msgstr "extérieur 1 (default light)" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "default light outer 2" #~ msgstr "extérieur 2 (default light)" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "default light outer 3" #~ msgstr "extérieur 3 (default light)" #, fuzzy #~ msgctxt "Palette" - #~ msgid "default light block" #~ msgstr "Titre par défaut" #, fuzzy #~ msgctxt "Palette" - #~ msgid "default light block header" #~ msgstr "Titre par défaut" #, fuzzy #~ msgctxt "Palette" - #~ msgid "default light block header text" #~ msgstr "Paramètres par défaut de l'interface" #, fuzzy #~ msgctxt "Palette" - #~ msgid "default light alert block" #~ msgstr "Titre par défaut" #, fuzzy #~ msgctxt "Palette" - #~ msgid "default light alert block header" #~ msgstr "Titre par défaut" #, fuzzy #~ msgctxt "Palette" - #~ msgid "default light alert block header text" #~ msgstr "Paramètres par défaut de l'interface" #, fuzzy #~ msgctxt "Palette" - #~ msgid "default light example block" #~ msgstr "Titre par défaut" #, fuzzy #~ msgctxt "Palette" - #~ msgid "default light example block header" #~ msgstr "Titre par défaut" #, fuzzy #~ msgctxt "Palette" - #~ msgid "default light example block header text" #~ msgstr "Paramètres par défaut de l'interface" #, fuzzy #~ msgctxt "Palette" - #~ msgid "default light covered text" #~ msgstr "Paramètres par défaut de l'interface" #, fuzzy #~ msgctxt "Palette" - #~ msgid "default light covered bullet" #~ msgstr "Paramètres par défaut de l'interface" #, fuzzy #~ msgctxt "Palette" - #~ msgid "default light background" #~ msgstr "Retirer l'arrière-plan" #, fuzzy #~ msgctxt "Palette" - #~ msgid "default light text" #~ msgstr "Titre par défaut" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "beetle outer 1" #~ msgstr "extérieur 1 (beetle)" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "beetle outer 2" #~ msgstr "extérieur 2 (beetle)" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "beetle outer 3" #~ msgstr "extérieur 3 (beetle)" #, fuzzy #~ msgctxt "Palette" - #~ msgid "beetle added red" #~ msgstr "Créer et éditer des dégradés" #, fuzzy #~ msgctxt "Palette" - #~ msgid "beetle alert block header text" #~ msgstr "Test en-tête de groupe" #, fuzzy #~ msgctxt "Palette" - #~ msgid "beetle added green" #~ msgstr "Créer et éditer des dégradés" #, fuzzy #~ msgctxt "Palette" - #~ msgid "beetle example block header text" #~ msgstr "Test en-tête de groupe" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "beetle header text" #~ msgstr "en-tête de texte (beetle)" #, fuzzy #~ msgctxt "Palette" - #~ msgid "beetle added grey" #~ msgstr "Créer et éditer des dégradés" #, fuzzy #~ msgctxt "Palette" - #~ msgid "beetle covered bullet" #~ msgstr "Créer un texte encadré" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "beetle background" #~ msgstr "arrière-plan (beetle)" #, fuzzy #~ msgctxt "Palette" - #~ msgid "beetle covered text" #~ msgstr "Créer un texte encadré" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "beetle text" #~ msgstr "texte (beetle)" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "albatross outer 1" #~ msgstr "extérieur 1 (albatross)" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "albatross outer 2" #~ msgstr "extérieur 2 (albatross)" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "albatross outer 3" #~ msgstr "extérieur 3 (albatross)" #, fuzzy #~ msgctxt "Palette" - #~ msgid "albatross background" #~ msgstr "Retirer l'arrière-plan" #, fuzzy #~ msgctxt "Palette" - #~ msgid "albatross block" #~ msgstr "Retirer l'arrière-plan" #, fuzzy #~ msgctxt "Palette" - #~ msgid "albatross block header" #~ msgstr "Test en-tête de groupe" #, fuzzy #~ msgctxt "Palette" - #~ msgid "albatross header text" #~ msgstr "Test en-tête de groupe" #, fuzzy #~ msgctxt "Palette" - #~ msgid "albatross bullet" #~ msgstr "Retirer l'arrière-plan" #, fuzzy #~ msgctxt "Palette" - #~ msgid "albatross covered bullet" #~ msgstr "Test en-tête de groupe" #, fuzzy #~ msgctxt "Palette" - #~ msgid "albatross covered text" #~ msgstr "Test en-tête de groupe" #, fuzzy #~ msgctxt "Palette" - #~ msgid "albatross added red" #~ msgstr "Test en-tête de groupe" #, fuzzy #~ msgctxt "Palette" - #~ msgid "albatross alert block header text" #~ msgstr "Test en-tête de groupe" #, fuzzy #~ msgctxt "Palette" - #~ msgid "albatross added green" #~ msgstr "Créer et éditer des dégradés" #, fuzzy #~ msgctxt "Palette" - #~ msgid "albatross example block header text" #~ msgstr "Test en-tête de groupe" #, fuzzy #~ msgctxt "Palette" - #~ msgid "albatross text" #~ msgstr "Test en-tête de groupe" #, fuzzy #~ msgctxt "Palette" - #~ msgid "albatross added yellow" #~ msgstr "Test en-tête de groupe" #, fuzzy #~ msgctxt "Palette" - #~ msgid "albatross added white" #~ msgstr "Test en-tête de groupe" #, fuzzy #~ msgctxt "Palette" - #~ msgid "fly text" #~ msgstr "Taper du texte" #, fuzzy #~ msgctxt "Palette" - #~ msgid "fly added grey" #~ msgstr "Créer et éditer des dégradés" #, fuzzy #~ msgctxt "Palette" - #~ msgid "fly outer" #~ msgstr "filtre" #, fuzzy #~ msgctxt "Palette" - #~ msgid "fly background" #~ msgstr "Fond" #, fuzzy #~ msgctxt "Palette" - #~ msgid "fly header text" #~ msgstr "Test en-tête de groupe" #, fuzzy #~ msgctxt "Palette" - #~ msgid "fly covered bullet" #~ msgstr "Texte encadré" #, fuzzy #~ msgctxt "Palette" - #~ msgid "fly covered text" #~ msgstr "Texte encadré" #, fuzzy #~ msgctxt "Palette" - #~ msgid "fly added red" #~ msgstr "Créer et éditer des dégradés" #, fuzzy #~ msgctxt "Palette" - #~ msgid "fly alert block header text" #~ msgstr "Test en-tête de groupe" #, fuzzy #~ msgctxt "Palette" - #~ msgid "fly added green" #~ msgstr "Créer et éditer des dégradés" #, fuzzy #~ msgctxt "Palette" - #~ msgid "fly example block header text" #~ msgstr "Test en-tête de groupe" #, fuzzy #~ msgctxt "Palette" - #~ msgid "fly added blue" #~ msgstr "Test en-tête de groupe" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "seagull outer 1" #~ msgstr "extérieur 1 (seagull)" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "seagull outer 2" #~ msgstr "extérieur 2 (seagull)" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "seagull outer 3" #~ msgstr "extérieur 3 (seagull)" #, fuzzy #~ msgctxt "Palette" - #~ msgid "seagull block" #~ msgstr "défaut" #, fuzzy #~ msgctxt "Palette" - #~ msgid "seagull added grey" #~ msgstr "Créer et éditer des dégradés" #, fuzzy #~ msgctxt "Palette" - #~ msgid "seagull block header" #~ msgstr "Déverrouiller le calque" #, fuzzy #~ msgctxt "Palette" - #~ msgid "seagull covered text" #~ msgstr "Créer un texte encadré" #, fuzzy #~ msgctxt "Palette" - #~ msgid "seagull covered bullet" #~ msgstr "Créer un texte encadré" #, fuzzy #~ msgctxt "Palette" - #~ msgid "seagull background" #~ msgstr "Retirer l'arrière-plan" #, fuzzy #~ msgctxt "Palette" - #~ msgid "seagull text" #~ msgstr "Texte vertical" #, fuzzy #~ msgctxt "Palette" - #~ msgid "beaver outer frame" #~ msgstr "Créer un texte encadré" #, fuzzy #~ msgctxt "Palette" - #~ msgid "beaver added red" #~ msgstr "Créer et éditer des dégradés" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "beaver outer 1" #~ msgstr "extérieur 1 (beaver)" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "beaver outer 2" #~ msgstr "extérieur 2 (beaver)" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "beaver outer 3" #~ msgstr "extérieur 3 (beaver)" #, fuzzy #~ msgctxt "Palette" - #~ msgid "beaver added blue" #~ msgstr "Créer et éditer des dégradés" #, fuzzy #~ msgctxt "Palette" - #~ msgid "beaver block header text" #~ msgstr "Test en-tête de groupe" #, fuzzy #~ msgctxt "Palette" - #~ msgid "beaver added green" #~ msgstr "Créer et éditer des dégradés" #, fuzzy #~ msgctxt "Palette" - #~ msgid "beaver example block header text" #~ msgstr "Test en-tête de groupe" #, fuzzy #~ msgctxt "Palette" - #~ msgid "beaver alert block header text" #~ msgstr "Test en-tête de groupe" #, fuzzy #~ msgctxt "Palette" - #~ msgid "beaver covered text" #~ msgstr "Créer un texte encadré" #, fuzzy #~ msgctxt "Palette" - #~ msgid "beaver covered bullet" #~ msgstr "Créer un texte encadré" #, fuzzy #~ msgctxt "Palette" - #~ msgid "beaver background" #~ msgstr "Retirer l'arrière-plan" #, fuzzy #~ msgctxt "Palette" - #~ msgid "beaver text" #~ msgstr "Créer un texte" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "crane outer 1" #~ msgstr "extérieur 1 (crane)" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "crane outer 2" #~ msgstr "extérieur 2 (crane)" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "crane outer 3" #~ msgstr "extérieur 3 (crane)" #, fuzzy #~ msgctxt "Palette" - #~ msgid "crane block" #~ msgstr "Déverrouiller le calque" #, fuzzy #~ msgctxt "Palette" - #~ msgid "crane added orange" #~ msgstr "angle contraint" #, fuzzy #~ msgctxt "Palette" - #~ msgid "crane block header" #~ msgstr "Déverrouiller le calque" #, fuzzy #~ msgctxt "Palette" - #~ msgid "crane alert block" #~ msgstr "défaut" #, fuzzy #~ msgctxt "Palette" - #~ msgid "crane added red" #~ msgstr "Créer et éditer des dégradés" #, fuzzy #~ msgctxt "Palette" - #~ msgid "crane alert block header" #~ msgstr "Déverrouiller le calque" #, fuzzy #~ msgctxt "Palette" - #~ msgid "crane example block header" #~ msgstr "Déverrouiller le calque" #, fuzzy #~ msgctxt "Palette" - #~ msgid "crane covered text" #~ msgstr "Créer un texte encadré" #, fuzzy #~ msgctxt "Palette" - #~ msgid "crane covered bullet" #~ msgstr "Créer un texte encadré" #, fuzzy #~ msgctxt "Palette" - #~ msgid "crane bullet" #~ msgstr "Créer un texte" #, fuzzy #~ msgctxt "Palette" - #~ msgid "crane background" #~ msgstr "Tracer selon le fond" #, fuzzy #~ msgctxt "Palette" - #~ msgid "crane text" #~ msgstr "Créer un texte" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "wolverine outer 1" #~ msgstr "extérieur 1 (wolverine)" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "wolverine outer 2" #~ msgstr "extérieur 2 (wolverine)" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "wolverine outer 3" #~ msgstr "extérieur 3 (wolverine)" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "wolverine outer 4" #~ msgstr "extérieur 4 (wolverine)" #, fuzzy #~ msgctxt "Palette" - #~ msgid "wolverine added yellow" #~ msgstr "Test en-tête de groupe" #, fuzzy #~ msgctxt "Palette" - #~ msgid "wolverine added blue" #~ msgstr "Test en-tête de groupe" #, fuzzy #~ msgctxt "Palette" - #~ msgid "wolverine header text" #~ msgstr "Test en-tête de groupe" #, fuzzy #~ msgctxt "Palette" - #~ msgid "wolverine added green" #~ msgstr "Créer et éditer des dégradés" #, fuzzy #~ msgctxt "Palette" - #~ msgid "wolverine example block title" #~ msgstr "Test en-tête de groupe" #, fuzzy #~ msgctxt "Palette" - #~ msgid "wolverine covered text" #~ msgstr "Créer un texte encadré" #, fuzzy #~ msgctxt "Palette" - #~ msgid "wolverine covered bullet" #~ msgstr "Créer un texte encadré" #, fuzzy #~ msgctxt "Palette" - #~ msgid "wolverine background" #~ msgstr "Retirer l'arrière-plan" #, fuzzy #~ msgctxt "Palette" - #~ msgid "wolverine text" #~ msgstr "Supprimer le texte" #, fuzzy #~ msgctxt "Palette" - #~ msgid "Orange Hilight" #~ msgstr "Hauteur de ligne" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "Orange" #~ msgstr "Orange" #, fuzzy #~ msgctxt "Palette" - #~ msgid "Orange Base" #~ msgstr "Orange 1" #, fuzzy #~ msgctxt "Palette" - #~ msgid "Orange Shadow" #~ msgstr "Ombre interne" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "Yellow" #~ msgstr "Jaune" #, fuzzy #~ msgctxt "Palette" - #~ msgid "Accent Yellow Base" #~ msgstr "Casse des phrases" #, fuzzy #~ msgctxt "Palette" - #~ msgid "Accent Yellow Shadow" #~ msgstr "Ombre interne" #, fuzzy #~ msgctxt "Palette" - #~ msgid "Accent Orange" #~ msgstr "Triangle exinscrit" #, fuzzy #~ msgctxt "Palette" - #~ msgid "Accent Red" #~ msgstr "centre" #, fuzzy #~ msgctxt "Palette" - #~ msgid "Accent Red Base" #~ msgstr "Casse des phrases" #, fuzzy #~ msgctxt "Palette" - #~ msgid "Accent Deep Red" #~ msgstr "centre" #, fuzzy #~ msgctxt "Palette" - #~ msgid "Human Highlight" #~ msgstr "Hauteur de ligne" #, fuzzy #~ msgctxt "Palette" - #~ msgid "Human" #~ msgstr "Han" #, fuzzy #~ msgctxt "Palette" - #~ msgid "Human Base" #~ msgstr "Han" #, fuzzy #~ msgctxt "Palette" - #~ msgid "Environmental Shadow" #~ msgstr "Ombre interne" #, fuzzy #~ msgctxt "Palette" - #~ msgid "Environmental Blue Highlight" #~ msgstr "Ombre interne" #, fuzzy #~ msgctxt "Palette" - #~ msgid "Environmental Blue Medium" #~ msgstr "Ombre interne" #, fuzzy #~ msgctxt "Palette" - #~ msgid "Environmental Blue Base" #~ msgstr "Ombre interne" #, fuzzy #~ msgctxt "Palette" - #~ msgid "Environmental Blue Shadow" #~ msgstr "Ombre interne" #, fuzzy #~ msgctxt "Palette" - #~ msgid "Accent Blue Shadow" #~ msgstr "Ombre interne" #, fuzzy #~ msgctxt "Palette" - #~ msgid "Accent Blue" #~ msgstr "centre" #, fuzzy #~ msgctxt "Palette" - #~ msgid "Accent Blue Base" #~ msgstr "Casse des phrases" #, fuzzy #~ msgctxt "Palette" - #~ msgid "Accent Green Highlight" #~ msgstr "Centre du cercle inscrit" #, fuzzy #~ msgctxt "Palette" - #~ msgid "Accent Green" #~ msgstr "Centre du cercle inscrit" #, fuzzy #~ msgctxt "Palette" - #~ msgid "Accent Green Base" #~ msgstr "Casse des phrases" #, fuzzy #~ msgctxt "Palette" - #~ msgid "Accent Green Shadow" #~ msgstr "Ombre interne" #, fuzzy #~ msgctxt "Palette" - #~ msgid "Accent Magenta Highlight" #~ msgstr "Magenta" #, fuzzy #~ msgctxt "Palette" - #~ msgid "Accent Magenta" #~ msgstr "Magenta" #, fuzzy #~ msgctxt "Palette" - #~ msgid "Accent Dark Violet" #~ msgstr "Magenta" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "Grey 1" #~ msgstr "Gris 1" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "Grey 2" #~ msgstr "Gris 2" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "Grey 3" #~ msgstr "Gris 3" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "Grey 4" #~ msgstr "Gris 4" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "Grey 5" #~ msgstr "Gris 5" -#~ msgctxt "Palette" +#~ msgctxt "Palette" #~ msgid "Grey 6" #~ msgstr "Gris 6" -#~ msgctxt "Node tool tip" +#~ msgctxt "Node tool tip" #~ msgid "" #~ "<b>%u of %u nodes</b> selected. Drag to select nodes, click to edit only " #~ "this object (more: Shift)" #~ msgstr "" #~ "<b>%u sur %u nœuds</b> sélectionnés. Cliquer-glisser pour sélectionner " #~ "des nœuds, cliquer pour éditer seulement cet objet (modificateur : Maj)" -#~ msgctxt "Node tool tip" +#~ msgctxt "Node tool tip" #~ msgid "" #~ "<b>%u of %u nodes</b> selected. Drag to select nodes, click clear the " #~ "selection" diff --git a/po/inkscape.pot b/po/inkscape.pot index ed68432b2..962ce7186 100644 --- a/po/inkscape.pot +++ b/po/inkscape.pot @@ -9,7 +9,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: inkscape-devel@lists.sourceforge.net\n" -"POT-Creation-Date: 2013-10-09 21:08+0200\n" +"POT-Creation-Date: 2013-11-07 15:09+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" @@ -3270,16 +3270,16 @@ msgstr "" msgid "3D Box" msgstr "" -#: ../src/color-profile.cpp:845 +#: ../src/color-profile.cpp:850 #, c-format msgid "Color profiles directory (%s) is unavailable." msgstr "" -#: ../src/color-profile.cpp:904 ../src/color-profile.cpp:921 +#: ../src/color-profile.cpp:909 ../src/color-profile.cpp:926 msgid "(invalid UTF-8 string)" msgstr "" -#: ../src/color-profile.cpp:906 ../src/filter-enums.cpp:94 +#: ../src/color-profile.cpp:911 ../src/filter-enums.cpp:94 #: ../src/live_effects/lpe-ruler.cpp:32 #: ../src/ui/dialog/filter-effects-dialog.cpp:518 #: ../src/ui/dialog/inkscape-preferences.cpp:332 @@ -3346,11 +3346,11 @@ msgstr "" msgid "<b>Current layer is locked</b>. Unlock it to be able to draw on it." msgstr "" -#: ../src/desktop.cpp:924 +#: ../src/desktop.cpp:925 msgid "No previous zoom." msgstr "" -#: ../src/desktop.cpp:945 +#: ../src/desktop.cpp:946 msgid "No next zoom." msgstr "" @@ -3372,92 +3372,92 @@ msgstr "" msgid "<b>Guideline</b>: %s" msgstr "" -#: ../src/display/canvas-axonomgrid.cpp:316 ../src/display/canvas-grid.cpp:693 +#: ../src/display/canvas-axonomgrid.cpp:317 ../src/display/canvas-grid.cpp:693 msgid "Grid _units:" msgstr "" -#: ../src/display/canvas-axonomgrid.cpp:318 ../src/display/canvas-grid.cpp:695 +#: ../src/display/canvas-axonomgrid.cpp:319 ../src/display/canvas-grid.cpp:695 msgid "_Origin X:" msgstr "" -#: ../src/display/canvas-axonomgrid.cpp:318 ../src/display/canvas-grid.cpp:695 +#: ../src/display/canvas-axonomgrid.cpp:319 ../src/display/canvas-grid.cpp:695 #: ../src/ui/dialog/inkscape-preferences.cpp:735 #: ../src/ui/dialog/inkscape-preferences.cpp:760 msgid "X coordinate of grid origin" msgstr "" -#: ../src/display/canvas-axonomgrid.cpp:320 ../src/display/canvas-grid.cpp:697 +#: ../src/display/canvas-axonomgrid.cpp:321 ../src/display/canvas-grid.cpp:697 msgid "O_rigin Y:" msgstr "" -#: ../src/display/canvas-axonomgrid.cpp:320 ../src/display/canvas-grid.cpp:697 +#: ../src/display/canvas-axonomgrid.cpp:321 ../src/display/canvas-grid.cpp:697 #: ../src/ui/dialog/inkscape-preferences.cpp:736 #: ../src/ui/dialog/inkscape-preferences.cpp:761 msgid "Y coordinate of grid origin" msgstr "" -#: ../src/display/canvas-axonomgrid.cpp:322 ../src/display/canvas-grid.cpp:701 +#: ../src/display/canvas-axonomgrid.cpp:323 ../src/display/canvas-grid.cpp:701 msgid "Spacing _Y:" msgstr "" -#: ../src/display/canvas-axonomgrid.cpp:322 +#: ../src/display/canvas-axonomgrid.cpp:323 #: ../src/ui/dialog/inkscape-preferences.cpp:764 msgid "Base length of z-axis" msgstr "" -#: ../src/display/canvas-axonomgrid.cpp:324 +#: ../src/display/canvas-axonomgrid.cpp:325 #: ../src/ui/dialog/inkscape-preferences.cpp:767 #: ../src/widgets/box3d-toolbar.cpp:315 msgid "Angle X:" msgstr "" -#: ../src/display/canvas-axonomgrid.cpp:324 +#: ../src/display/canvas-axonomgrid.cpp:325 #: ../src/ui/dialog/inkscape-preferences.cpp:767 msgid "Angle of x-axis" msgstr "" -#: ../src/display/canvas-axonomgrid.cpp:326 +#: ../src/display/canvas-axonomgrid.cpp:327 #: ../src/ui/dialog/inkscape-preferences.cpp:768 #: ../src/widgets/box3d-toolbar.cpp:394 msgid "Angle Z:" msgstr "" -#: ../src/display/canvas-axonomgrid.cpp:326 +#: ../src/display/canvas-axonomgrid.cpp:327 #: ../src/ui/dialog/inkscape-preferences.cpp:768 msgid "Angle of z-axis" msgstr "" -#: ../src/display/canvas-axonomgrid.cpp:330 ../src/display/canvas-grid.cpp:705 +#: ../src/display/canvas-axonomgrid.cpp:331 ../src/display/canvas-grid.cpp:705 msgid "Minor grid line _color:" msgstr "" -#: ../src/display/canvas-axonomgrid.cpp:330 ../src/display/canvas-grid.cpp:705 +#: ../src/display/canvas-axonomgrid.cpp:331 ../src/display/canvas-grid.cpp:705 #: ../src/ui/dialog/inkscape-preferences.cpp:719 msgid "Minor grid line color" msgstr "" -#: ../src/display/canvas-axonomgrid.cpp:330 ../src/display/canvas-grid.cpp:705 +#: ../src/display/canvas-axonomgrid.cpp:331 ../src/display/canvas-grid.cpp:705 msgid "Color of the minor grid lines" msgstr "" -#: ../src/display/canvas-axonomgrid.cpp:335 ../src/display/canvas-grid.cpp:710 +#: ../src/display/canvas-axonomgrid.cpp:336 ../src/display/canvas-grid.cpp:710 msgid "Ma_jor grid line color:" msgstr "" -#: ../src/display/canvas-axonomgrid.cpp:335 ../src/display/canvas-grid.cpp:710 +#: ../src/display/canvas-axonomgrid.cpp:336 ../src/display/canvas-grid.cpp:710 #: ../src/ui/dialog/inkscape-preferences.cpp:721 msgid "Major grid line color" msgstr "" -#: ../src/display/canvas-axonomgrid.cpp:336 ../src/display/canvas-grid.cpp:711 +#: ../src/display/canvas-axonomgrid.cpp:337 ../src/display/canvas-grid.cpp:711 msgid "Color of the major (highlighted) grid lines" msgstr "" -#: ../src/display/canvas-axonomgrid.cpp:340 ../src/display/canvas-grid.cpp:715 +#: ../src/display/canvas-axonomgrid.cpp:341 ../src/display/canvas-grid.cpp:715 msgid "_Major grid line every:" msgstr "" -#: ../src/display/canvas-axonomgrid.cpp:340 ../src/display/canvas-grid.cpp:715 +#: ../src/display/canvas-axonomgrid.cpp:341 ../src/display/canvas-grid.cpp:715 msgid "lines" msgstr "" @@ -3671,11 +3671,11 @@ msgstr "" msgid "Bounding box side midpoint" msgstr "" -#: ../src/display/snap-indicator.cpp:194 ../src/ui/tool/node.cpp:1316 +#: ../src/display/snap-indicator.cpp:194 ../src/ui/tool/node.cpp:1315 msgid "Smooth node" msgstr "" -#: ../src/display/snap-indicator.cpp:197 ../src/ui/tool/node.cpp:1315 +#: ../src/display/snap-indicator.cpp:197 ../src/ui/tool/node.cpp:1314 msgid "Cusp node" msgstr "" @@ -3731,16 +3731,21 @@ msgstr "" msgid " to " msgstr "" -#: ../src/document.cpp:511 +#: ../src/document.cpp:507 #, c-format msgid "New document %d" msgstr "" -#: ../src/document.cpp:537 +#: ../src/document.cpp:512 +#, c-format +msgid "Memory document %d" +msgstr "" + +#: ../src/document.cpp:541 msgid "Memory document %1" msgstr "" -#: ../src/document.cpp:742 +#: ../src/document.cpp:752 #, c-format msgid "Unnamed document %d" msgstr "" @@ -4636,8 +4641,8 @@ msgstr "" #: ../src/extension/internal/cairo-ps-out.cpp:335 #: ../src/extension/internal/cairo-ps-out.cpp:376 #: ../src/extension/internal/cairo-renderer-pdf-out.cpp:250 -#: ../src/extension/internal/emf-inout.cpp:3543 -#: ../src/extension/internal/wmf-inout.cpp:3231 +#: ../src/extension/internal/emf-inout.cpp:3551 +#: ../src/extension/internal/wmf-inout.cpp:3236 msgid "Convert texts to paths" msgstr "" @@ -4757,118 +4762,118 @@ msgstr "" msgid "Page Selector" msgstr "" -#: ../src/extension/internal/cdr-input.cpp:273 +#: ../src/extension/internal/cdr-input.cpp:274 msgid "Corel DRAW Input" msgstr "" -#: ../src/extension/internal/cdr-input.cpp:278 +#: ../src/extension/internal/cdr-input.cpp:279 msgid "Corel DRAW 7-X4 files (*.cdr)" msgstr "" -#: ../src/extension/internal/cdr-input.cpp:279 +#: ../src/extension/internal/cdr-input.cpp:280 msgid "Open files saved in Corel DRAW 7-X4" msgstr "" -#: ../src/extension/internal/cdr-input.cpp:286 +#: ../src/extension/internal/cdr-input.cpp:287 msgid "Corel DRAW templates input" msgstr "" -#: ../src/extension/internal/cdr-input.cpp:291 +#: ../src/extension/internal/cdr-input.cpp:292 msgid "Corel DRAW 7-13 template files (*.cdt)" msgstr "" -#: ../src/extension/internal/cdr-input.cpp:292 +#: ../src/extension/internal/cdr-input.cpp:293 msgid "Open files saved in Corel DRAW 7-13" msgstr "" -#: ../src/extension/internal/cdr-input.cpp:299 +#: ../src/extension/internal/cdr-input.cpp:300 msgid "Corel DRAW Compressed Exchange files input" msgstr "" -#: ../src/extension/internal/cdr-input.cpp:304 +#: ../src/extension/internal/cdr-input.cpp:305 msgid "Corel DRAW Compressed Exchange files (*.ccx)" msgstr "" -#: ../src/extension/internal/cdr-input.cpp:305 +#: ../src/extension/internal/cdr-input.cpp:306 msgid "Open compressed exchange files saved in Corel DRAW" msgstr "" -#: ../src/extension/internal/cdr-input.cpp:312 +#: ../src/extension/internal/cdr-input.cpp:313 msgid "Corel DRAW Presentation Exchange files input" msgstr "" -#: ../src/extension/internal/cdr-input.cpp:317 +#: ../src/extension/internal/cdr-input.cpp:318 msgid "Corel DRAW Presentation Exchange files (*.cmx)" msgstr "" -#: ../src/extension/internal/cdr-input.cpp:318 +#: ../src/extension/internal/cdr-input.cpp:319 msgid "Open presentation exchange files saved in Corel DRAW" msgstr "" -#: ../src/extension/internal/emf-inout.cpp:3527 +#: ../src/extension/internal/emf-inout.cpp:3535 msgid "EMF Input" msgstr "" -#: ../src/extension/internal/emf-inout.cpp:3532 +#: ../src/extension/internal/emf-inout.cpp:3540 msgid "Enhanced Metafiles (*.emf)" msgstr "" -#: ../src/extension/internal/emf-inout.cpp:3533 +#: ../src/extension/internal/emf-inout.cpp:3541 msgid "Enhanced Metafiles" msgstr "" -#: ../src/extension/internal/emf-inout.cpp:3541 +#: ../src/extension/internal/emf-inout.cpp:3549 msgid "EMF Output" msgstr "" -#: ../src/extension/internal/emf-inout.cpp:3544 -#: ../src/extension/internal/wmf-inout.cpp:3232 +#: ../src/extension/internal/emf-inout.cpp:3552 +#: ../src/extension/internal/wmf-inout.cpp:3237 msgid "Map Unicode to Symbol font" msgstr "" -#: ../src/extension/internal/emf-inout.cpp:3545 -#: ../src/extension/internal/wmf-inout.cpp:3233 +#: ../src/extension/internal/emf-inout.cpp:3553 +#: ../src/extension/internal/wmf-inout.cpp:3238 msgid "Map Unicode to Wingdings" msgstr "" -#: ../src/extension/internal/emf-inout.cpp:3546 -#: ../src/extension/internal/wmf-inout.cpp:3234 +#: ../src/extension/internal/emf-inout.cpp:3554 +#: ../src/extension/internal/wmf-inout.cpp:3239 msgid "Map Unicode to Zapf Dingbats" msgstr "" -#: ../src/extension/internal/emf-inout.cpp:3547 -#: ../src/extension/internal/wmf-inout.cpp:3235 +#: ../src/extension/internal/emf-inout.cpp:3555 +#: ../src/extension/internal/wmf-inout.cpp:3240 msgid "Use MS Unicode PUA (0xF020-0xF0FF) for converted characters" msgstr "" -#: ../src/extension/internal/emf-inout.cpp:3548 -#: ../src/extension/internal/wmf-inout.cpp:3236 +#: ../src/extension/internal/emf-inout.cpp:3556 +#: ../src/extension/internal/wmf-inout.cpp:3241 msgid "Compensate for PPT font bug" msgstr "" -#: ../src/extension/internal/emf-inout.cpp:3549 -#: ../src/extension/internal/wmf-inout.cpp:3237 +#: ../src/extension/internal/emf-inout.cpp:3557 +#: ../src/extension/internal/wmf-inout.cpp:3242 msgid "Convert dashed/dotted lines to single lines" msgstr "" -#: ../src/extension/internal/emf-inout.cpp:3550 -#: ../src/extension/internal/wmf-inout.cpp:3238 +#: ../src/extension/internal/emf-inout.cpp:3558 +#: ../src/extension/internal/wmf-inout.cpp:3243 msgid "Convert gradients to colored polygon series" msgstr "" -#: ../src/extension/internal/emf-inout.cpp:3551 +#: ../src/extension/internal/emf-inout.cpp:3559 msgid "Map all fill patterns to standard EMF hatches" msgstr "" -#: ../src/extension/internal/emf-inout.cpp:3552 +#: ../src/extension/internal/emf-inout.cpp:3560 msgid "Ignore image rotations" msgstr "" -#: ../src/extension/internal/emf-inout.cpp:3556 +#: ../src/extension/internal/emf-inout.cpp:3564 msgid "Enhanced Metafile (*.emf)" msgstr "" -#: ../src/extension/internal/emf-inout.cpp:3557 +#: ../src/extension/internal/emf-inout.cpp:3565 msgid "Enhanced Metafile" msgstr "" @@ -7033,33 +7038,33 @@ msgstr "" msgid "Microsoft Visio 2013 drawing (*.vsdx)" msgstr "" -#: ../src/extension/internal/wmf-inout.cpp:3215 +#: ../src/extension/internal/wmf-inout.cpp:3220 msgid "WMF Input" msgstr "" -#: ../src/extension/internal/wmf-inout.cpp:3220 +#: ../src/extension/internal/wmf-inout.cpp:3225 msgid "Windows Metafiles (*.wmf)" msgstr "" -#: ../src/extension/internal/wmf-inout.cpp:3221 +#: ../src/extension/internal/wmf-inout.cpp:3226 msgid "Windows Metafiles" msgstr "" -#: ../src/extension/internal/wmf-inout.cpp:3229 +#: ../src/extension/internal/wmf-inout.cpp:3234 msgid "WMF Output" msgstr "" -#: ../src/extension/internal/wmf-inout.cpp:3239 +#: ../src/extension/internal/wmf-inout.cpp:3244 msgid "Map all fill patterns to standard WMF hatches" msgstr "" -#: ../src/extension/internal/wmf-inout.cpp:3243 +#: ../src/extension/internal/wmf-inout.cpp:3248 #: ../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:3244 +#: ../src/extension/internal/wmf-inout.cpp:3249 msgid "Windows Metafile" msgstr "" @@ -8497,7 +8502,7 @@ msgstr "" #: ../src/live_effects/lpe-bendpath.cpp:54 #: ../src/live_effects/lpe-patternalongpath.cpp:62 -#: ../src/ui/dialog/export.cpp:287 ../src/ui/dialog/transformation.cpp:80 +#: ../src/ui/dialog/export.cpp:288 ../src/ui/dialog/transformation.cpp:80 #: ../src/ui/widget/page-sizer.cpp:236 msgid "_Width:" msgstr "" @@ -9452,7 +9457,7 @@ msgstr "" #. 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:238 -#: ../src/widgets/stroke-style.cpp:225 +#: ../src/widgets/stroke-style.cpp:226 msgid "Join:" msgstr "" @@ -9465,7 +9470,7 @@ msgid "Miter limit:" msgstr "" #: ../src/live_effects/lpe-powerstroke.cpp:239 -#: ../src/widgets/stroke-style.cpp:276 +#: ../src/widgets/stroke-style.cpp:277 msgid "Maximum length of the miter (in units of stroke width)" msgstr "" @@ -9614,7 +9619,7 @@ msgid "Width at 'bottom' half-turns" msgstr "" #: ../src/live_effects/lpe-rough-hatches.cpp:242 -msgid "at 2nd side:" +msgid "At 2nd side:" msgstr "" #: ../src/live_effects/lpe-rough-hatches.cpp:242 @@ -9623,7 +9628,7 @@ msgstr "" #. #: ../src/live_effects/lpe-rough-hatches.cpp:244 -msgid "from 2nd to 1st side:" +msgid "From 2nd to 1st side:" msgstr "" #: ../src/live_effects/lpe-rough-hatches.cpp:244 @@ -9631,7 +9636,7 @@ msgid "Width from 'top' to 'bottom'" msgstr "" #: ../src/live_effects/lpe-rough-hatches.cpp:245 -msgid "from 1st to 2nd side:" +msgid "From 1st to 2nd side:" msgstr "" #: ../src/live_effects/lpe-rough-hatches.cpp:245 @@ -10060,7 +10065,7 @@ msgstr "" msgid "Change vector parameter" msgstr "" -#: ../src/lpe-tool-context.cpp:205 +#: ../src/lpe-tool-context.cpp:204 msgid "Choose a construction tool from the toolbar." msgstr "" @@ -11123,7 +11128,7 @@ msgstr "" msgid "Select <b>some objects</b> to group." msgstr "" -#: ../src/selection-chemistry.cpp:762 ../src/sp-item-group.cpp:330 +#: ../src/selection-chemistry.cpp:762 ../src/sp-item-group.cpp:331 msgid "Group" msgstr "" @@ -11135,7 +11140,7 @@ msgstr "" msgid "<b>No groups</b> to ungroup in the selection." msgstr "" -#: ../src/selection-chemistry.cpp:820 ../src/sp-item-group.cpp:563 +#: ../src/selection-chemistry.cpp:820 ../src/sp-item-group.cpp:564 msgid "Ungroup" msgstr "" @@ -11431,68 +11436,68 @@ msgstr "" msgid "Select an <b>object with pattern fill</b> to extract objects from." msgstr "" -#: ../src/selection-chemistry.cpp:3256 +#: ../src/selection-chemistry.cpp:3258 msgid "<b>No pattern fills</b> in the selection." msgstr "" -#: ../src/selection-chemistry.cpp:3259 +#: ../src/selection-chemistry.cpp:3261 msgid "Pattern to objects" msgstr "" -#: ../src/selection-chemistry.cpp:3350 +#: ../src/selection-chemistry.cpp:3352 msgid "Select <b>object(s)</b> to make a bitmap copy." msgstr "" -#: ../src/selection-chemistry.cpp:3354 +#: ../src/selection-chemistry.cpp:3356 msgid "Rendering bitmap..." msgstr "" -#: ../src/selection-chemistry.cpp:3533 +#: ../src/selection-chemistry.cpp:3535 msgid "Create bitmap" msgstr "" -#: ../src/selection-chemistry.cpp:3565 +#: ../src/selection-chemistry.cpp:3567 msgid "Select <b>object(s)</b> to create clippath or mask from." msgstr "" -#: ../src/selection-chemistry.cpp:3568 +#: ../src/selection-chemistry.cpp:3570 msgid "Select mask object and <b>object(s)</b> to apply clippath or mask to." msgstr "" -#: ../src/selection-chemistry.cpp:3751 +#: ../src/selection-chemistry.cpp:3753 msgid "Set clipping path" msgstr "" -#: ../src/selection-chemistry.cpp:3753 +#: ../src/selection-chemistry.cpp:3755 msgid "Set mask" msgstr "" -#: ../src/selection-chemistry.cpp:3768 +#: ../src/selection-chemistry.cpp:3770 msgid "Select <b>object(s)</b> to remove clippath or mask from." msgstr "" -#: ../src/selection-chemistry.cpp:3879 +#: ../src/selection-chemistry.cpp:3881 msgid "Release clipping path" msgstr "" -#: ../src/selection-chemistry.cpp:3881 +#: ../src/selection-chemistry.cpp:3883 msgid "Release mask" msgstr "" -#: ../src/selection-chemistry.cpp:3900 +#: ../src/selection-chemistry.cpp:3902 msgid "Select <b>object(s)</b> to fit canvas to." msgstr "" #. Fit Page -#: ../src/selection-chemistry.cpp:3920 ../src/verbs.cpp:2907 +#: ../src/selection-chemistry.cpp:3922 ../src/verbs.cpp:2907 msgid "Fit Page to Selection" msgstr "" -#: ../src/selection-chemistry.cpp:3949 ../src/verbs.cpp:2909 +#: ../src/selection-chemistry.cpp:3951 ../src/verbs.cpp:2909 msgid "Fit Page to Drawing" msgstr "" -#: ../src/selection-chemistry.cpp:3970 ../src/verbs.cpp:2911 +#: ../src/selection-chemistry.cpp:3972 ../src/verbs.cpp:2911 msgid "Fit Page to Selection or Drawing" msgstr "" @@ -11515,60 +11520,65 @@ msgstr "" msgid "layer <b><i>%s</i></b>" msgstr "" -#: ../src/selection-describer.cpp:138 +#: ../src/selection-describer.cpp:140 #, c-format msgid "<i>%s</i>" msgstr "" -#: ../src/selection-describer.cpp:147 +#: ../src/selection-describer.cpp:150 #, c-format msgid " in %s" msgstr "" -#: ../src/selection-describer.cpp:149 +#: ../src/selection-describer.cpp:152 msgid " hidden in definitions" msgstr "" -#: ../src/selection-describer.cpp:151 +#: ../src/selection-describer.cpp:154 #, c-format msgid " in group %s (%s)" msgstr "" -#: ../src/selection-describer.cpp:153 +#: ../src/selection-describer.cpp:156 +#, c-format +msgid " in unnamed group (%s)" +msgstr "" + +#: ../src/selection-describer.cpp:158 #, c-format msgid " in <b>%i</b> parent (%s)" msgid_plural " in <b>%i</b> parents (%s)" msgstr[0] "" msgstr[1] "" -#: ../src/selection-describer.cpp:156 +#: ../src/selection-describer.cpp:161 #, c-format msgid " in <b>%i</b> layer" msgid_plural " in <b>%i</b> layers" msgstr[0] "" msgstr[1] "" -#: ../src/selection-describer.cpp:167 +#: ../src/selection-describer.cpp:172 msgid "Convert symbol to group to edit" msgstr "" -#: ../src/selection-describer.cpp:171 +#: ../src/selection-describer.cpp:176 msgid "Remove from symbols tray to edit symbol" msgstr "" -#: ../src/selection-describer.cpp:175 +#: ../src/selection-describer.cpp:180 msgid "Use <b>Shift+D</b> to look up original" msgstr "" -#: ../src/selection-describer.cpp:179 +#: ../src/selection-describer.cpp:184 msgid "Use <b>Shift+D</b> to look up path" msgstr "" -#: ../src/selection-describer.cpp:183 +#: ../src/selection-describer.cpp:188 msgid "Use <b>Shift+D</b> to look up frame" msgstr "" -#: ../src/selection-describer.cpp:202 +#: ../src/selection-describer.cpp:207 #, c-format msgid "; <i>%d filtered object</i> " msgid_plural "; <i>%d filtered objects</i> " @@ -11657,8 +11667,8 @@ msgstr "" msgid "Keyboard directory (%s) is unavailable." msgstr "" -#: ../src/shortcuts.cpp:337 ../src/ui/dialog/export.cpp:1294 -#: ../src/ui/dialog/export.cpp:1328 +#: ../src/shortcuts.cpp:337 ../src/ui/dialog/export.cpp:1295 +#: ../src/ui/dialog/export.cpp:1329 msgid "Select a filename for exporting" msgstr "" @@ -11675,22 +11685,22 @@ msgstr "" msgid "without URI" msgstr "" -#: ../src/sp-ellipse.cpp:373 +#: ../src/sp-ellipse.cpp:374 msgid "Segment" msgstr "" -#: ../src/sp-ellipse.cpp:375 +#: ../src/sp-ellipse.cpp:376 msgid "Arc" msgstr "" #. Ellipse -#: ../src/sp-ellipse.cpp:378 ../src/sp-ellipse.cpp:385 +#: ../src/sp-ellipse.cpp:379 ../src/sp-ellipse.cpp:386 #: ../src/ui/dialog/inkscape-preferences.cpp:403 #: ../src/widgets/pencil-toolbar.cpp:187 msgid "Ellipse" msgstr "" -#: ../src/sp-ellipse.cpp:382 +#: ../src/sp-ellipse.cpp:383 msgid "Circle" msgstr "" @@ -11723,12 +11733,9 @@ msgstr "" #: ../src/sp-flowtext.cpp:300 #, c-format msgid "(%d character%s)" -msgstr "" - -#: ../src/sp-flowtext.cpp:300 -#, c-format -msgid "(%d characters%s)" -msgstr "" +msgid_plural "(%d characters%s)" +msgstr[0] "" +msgstr[1] "" #: ../src/sp-guide.cpp:301 msgid "Create Guides Around the Page" @@ -11796,36 +11803,36 @@ msgstr "" msgid "Create spiral" msgstr "" -#: ../src/sp-item.cpp:941 ../src/verbs.cpp:213 +#: ../src/sp-item.cpp:940 ../src/verbs.cpp:213 msgid "Object" msgstr "" -#: ../src/sp-item.cpp:959 +#: ../src/sp-item.cpp:957 #, c-format msgid "%s; <i>clipped</i>" msgstr "" -#: ../src/sp-item.cpp:965 +#: ../src/sp-item.cpp:963 #, c-format msgid "%s; <i>masked</i>" msgstr "" -#: ../src/sp-item.cpp:975 +#: ../src/sp-item.cpp:973 #, c-format msgid "%s; <i>filtered (%s)</i>" msgstr "" -#: ../src/sp-item.cpp:977 +#: ../src/sp-item.cpp:975 #, c-format msgid "%s; <i>filtered</i>" msgstr "" -#: ../src/sp-item-group.cpp:336 ../src/sp-switch.cpp:81 +#: ../src/sp-item-group.cpp:337 ../src/sp-switch.cpp:81 #, c-format msgid "of <b>%d</b> object" msgstr "" -#: ../src/sp-item-group.cpp:336 ../src/sp-switch.cpp:81 +#: ../src/sp-item-group.cpp:337 ../src/sp-switch.cpp:81 #, c-format msgid "of <b>%d</b> objects" msgstr "" @@ -12384,14 +12391,21 @@ msgstr "" #: ../src/text-context.cpp:1614 #, c-format msgid "" +"Type or edit flowed text (%d character%s); <b>Enter</b> to start new " +"paragraph." +msgid_plural "" "Type or edit flowed text (%d characters%s); <b>Enter</b> to start new " "paragraph." -msgstr "" +msgstr[0] "" +msgstr[1] "" #: ../src/text-context.cpp:1616 #, c-format -msgid "Type or edit text (%d characters%s); <b>Enter</b> to start new line." -msgstr "" +msgid "Type or edit text (%d character%s); <b>Enter</b> to start new line." +msgid_plural "" +"Type or edit text (%d characters%s); <b>Enter</b> to start new line." +msgstr[0] "" +msgstr[1] "" #: ../src/text-context.cpp:1624 ../src/tools-switch.cpp:103 msgid "" @@ -14190,11 +14204,11 @@ msgstr "" msgid "<b>Defined grids</b>" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:1638 +#: ../src/ui/dialog/document-properties.cpp:1639 msgid "Remove grid" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:1681 +#: ../src/ui/dialog/document-properties.cpp:1707 msgid "Changed document unit" msgstr "" @@ -14214,177 +14228,177 @@ msgstr "" msgid "_Custom" msgstr "" -#: ../src/ui/dialog/export.cpp:167 ../src/widgets/measure-toolbar.cpp:116 +#: ../src/ui/dialog/export.cpp:168 ../src/widgets/measure-toolbar.cpp:116 #: ../src/widgets/measure-toolbar.cpp:124 #: ../share/extensions/render_gears.inx.h:6 msgid "Units:" msgstr "" -#: ../src/ui/dialog/export.cpp:169 +#: ../src/ui/dialog/export.cpp:170 msgid "_Export As..." msgstr "" -#: ../src/ui/dialog/export.cpp:172 +#: ../src/ui/dialog/export.cpp:173 msgid "B_atch export all selected objects" msgstr "" -#: ../src/ui/dialog/export.cpp:172 +#: ../src/ui/dialog/export.cpp:173 msgid "" "Export each selected object into its own PNG file, using export hints if any " "(caution, overwrites without asking!)" msgstr "" -#: ../src/ui/dialog/export.cpp:174 +#: ../src/ui/dialog/export.cpp:175 msgid "Hide a_ll except selected" msgstr "" -#: ../src/ui/dialog/export.cpp:174 +#: ../src/ui/dialog/export.cpp:175 msgid "In the exported image, hide all objects except those that are selected" msgstr "" -#: ../src/ui/dialog/export.cpp:175 +#: ../src/ui/dialog/export.cpp:176 msgid "Close when complete" msgstr "" -#: ../src/ui/dialog/export.cpp:175 +#: ../src/ui/dialog/export.cpp:176 msgid "Once the export completes, close this dialog" msgstr "" -#: ../src/ui/dialog/export.cpp:177 +#: ../src/ui/dialog/export.cpp:178 msgid "_Export" msgstr "" -#: ../src/ui/dialog/export.cpp:195 +#: ../src/ui/dialog/export.cpp:196 msgid "<b>Export area</b>" msgstr "" -#: ../src/ui/dialog/export.cpp:234 +#: ../src/ui/dialog/export.cpp:235 msgid "_x0:" msgstr "" -#: ../src/ui/dialog/export.cpp:238 +#: ../src/ui/dialog/export.cpp:239 msgid "x_1:" msgstr "" -#: ../src/ui/dialog/export.cpp:242 +#: ../src/ui/dialog/export.cpp:243 msgid "Wid_th:" msgstr "" -#: ../src/ui/dialog/export.cpp:246 +#: ../src/ui/dialog/export.cpp:247 msgid "_y0:" msgstr "" -#: ../src/ui/dialog/export.cpp:250 +#: ../src/ui/dialog/export.cpp:251 msgid "y_1:" msgstr "" -#: ../src/ui/dialog/export.cpp:254 +#: ../src/ui/dialog/export.cpp:255 msgid "Hei_ght:" msgstr "" -#: ../src/ui/dialog/export.cpp:269 +#: ../src/ui/dialog/export.cpp:270 msgid "<b>Image size</b>" msgstr "" -#: ../src/ui/dialog/export.cpp:287 ../src/ui/dialog/export.cpp:298 +#: ../src/ui/dialog/export.cpp:288 ../src/ui/dialog/export.cpp:299 msgid "pixels at" msgstr "" -#: ../src/ui/dialog/export.cpp:293 +#: ../src/ui/dialog/export.cpp:294 msgid "dp_i" msgstr "" -#: ../src/ui/dialog/export.cpp:298 ../src/ui/dialog/transformation.cpp:82 +#: ../src/ui/dialog/export.cpp:299 ../src/ui/dialog/transformation.cpp:82 #: ../src/ui/widget/page-sizer.cpp:237 msgid "_Height:" msgstr "" -#: ../src/ui/dialog/export.cpp:306 +#: ../src/ui/dialog/export.cpp:307 #: ../src/ui/dialog/inkscape-preferences.cpp:1436 #: ../src/ui/dialog/inkscape-preferences.cpp:1439 #: ../src/ui/dialog/inkscape-preferences.cpp:1451 msgid "dpi" msgstr "" -#: ../src/ui/dialog/export.cpp:314 +#: ../src/ui/dialog/export.cpp:315 msgid "<b>_Filename</b>" msgstr "" -#: ../src/ui/dialog/export.cpp:356 +#: ../src/ui/dialog/export.cpp:357 msgid "Export the bitmap file with these settings" msgstr "" -#: ../src/ui/dialog/export.cpp:607 +#: ../src/ui/dialog/export.cpp:608 #, c-format msgid "B_atch export %d selected object" msgid_plural "B_atch export %d selected objects" msgstr[0] "" msgstr[1] "" -#: ../src/ui/dialog/export.cpp:923 +#: ../src/ui/dialog/export.cpp:924 msgid "Export in progress" msgstr "" -#: ../src/ui/dialog/export.cpp:1013 +#: ../src/ui/dialog/export.cpp:1014 msgid "No items selected." msgstr "" -#: ../src/ui/dialog/export.cpp:1017 ../src/ui/dialog/export.cpp:1019 +#: ../src/ui/dialog/export.cpp:1018 ../src/ui/dialog/export.cpp:1020 msgid "Exporting %1 files" msgstr "" -#: ../src/ui/dialog/export.cpp:1059 ../src/ui/dialog/export.cpp:1061 +#: ../src/ui/dialog/export.cpp:1060 ../src/ui/dialog/export.cpp:1062 #, c-format msgid "Exporting file <b>%s</b>..." msgstr "" -#: ../src/ui/dialog/export.cpp:1070 ../src/ui/dialog/export.cpp:1161 +#: ../src/ui/dialog/export.cpp:1071 ../src/ui/dialog/export.cpp:1162 #, c-format msgid "Could not export to filename %s.\n" msgstr "" -#: ../src/ui/dialog/export.cpp:1073 +#: ../src/ui/dialog/export.cpp:1074 #, c-format msgid "Could not export to filename <b>%s</b>." msgstr "" -#: ../src/ui/dialog/export.cpp:1088 +#: ../src/ui/dialog/export.cpp:1089 #, c-format msgid "Successfully exported <b>%d</b> files from <b>%d</b> selected items." msgstr "" -#: ../src/ui/dialog/export.cpp:1099 +#: ../src/ui/dialog/export.cpp:1100 msgid "You have to enter a filename." msgstr "" -#: ../src/ui/dialog/export.cpp:1100 +#: ../src/ui/dialog/export.cpp:1101 msgid "You have to enter a filename" msgstr "" -#: ../src/ui/dialog/export.cpp:1114 +#: ../src/ui/dialog/export.cpp:1115 msgid "The chosen area to be exported is invalid." msgstr "" -#: ../src/ui/dialog/export.cpp:1115 +#: ../src/ui/dialog/export.cpp:1116 msgid "The chosen area to be exported is invalid" msgstr "" -#: ../src/ui/dialog/export.cpp:1130 +#: ../src/ui/dialog/export.cpp:1131 #, c-format msgid "Directory %s does not exist or is not a directory.\n" msgstr "" #. TRANSLATORS: %1 will be the filename, %2 the width, and %3 the height of the image -#: ../src/ui/dialog/export.cpp:1144 ../src/ui/dialog/export.cpp:1146 +#: ../src/ui/dialog/export.cpp:1145 ../src/ui/dialog/export.cpp:1147 msgid "Exporting %1 (%2 x %3)" msgstr "" -#: ../src/ui/dialog/export.cpp:1172 +#: ../src/ui/dialog/export.cpp:1173 #, c-format msgid "Drawing exported to <b>%s</b>." msgstr "" -#: ../src/ui/dialog/export.cpp:1176 +#: ../src/ui/dialog/export.cpp:1177 msgid "Export aborted." msgstr "" @@ -17379,6 +17393,8 @@ msgid "_Time of opacity change animation:" msgstr "" #: ../src/ui/dialog/inkscape-preferences.cpp:703 +#: ../share/extensions/hpgl_output.inx.h:30 +#: ../share/extensions/plotter.inx.h:40 msgid "Miscellaneous" msgstr "" @@ -20776,61 +20792,61 @@ msgctxt "Path node tip" msgid "Move node by %s, %s" msgstr "" -#: ../src/ui/tool/node.cpp:1317 +#: ../src/ui/tool/node.cpp:1316 msgid "Symmetric node" msgstr "" -#: ../src/ui/tool/node.cpp:1318 +#: ../src/ui/tool/node.cpp:1317 msgid "Auto-smooth node" msgstr "" -#: ../src/ui/tool/node-tool.cpp:557 +#: ../src/ui/tool/node-tool.cpp:553 msgctxt "Node tool tip" msgid "" "<b>Shift</b>: drag to add nodes to the selection, click to toggle object " "selection" msgstr "" -#: ../src/ui/tool/node-tool.cpp:561 +#: ../src/ui/tool/node-tool.cpp:557 msgctxt "Node tool tip" msgid "<b>Shift</b>: drag to add nodes to the selection" msgstr "" -#: ../src/ui/tool/node-tool.cpp:573 +#: ../src/ui/tool/node-tool.cpp:569 #, 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/tool/node-tool.cpp:579 +#: ../src/ui/tool/node-tool.cpp:575 #, c-format msgctxt "Node tool tip" msgid "%s Drag to select nodes, click to edit only this object (more: Shift)" msgstr "" -#: ../src/ui/tool/node-tool.cpp:585 +#: ../src/ui/tool/node-tool.cpp:581 #, c-format msgctxt "Node tool tip" msgid "%s Drag to select nodes, click clear the selection" msgstr "" -#: ../src/ui/tool/node-tool.cpp:594 +#: ../src/ui/tool/node-tool.cpp:590 msgctxt "Node tool tip" msgid "Drag to select nodes, click to edit only this object" msgstr "" -#: ../src/ui/tool/node-tool.cpp:597 +#: ../src/ui/tool/node-tool.cpp:593 msgctxt "Node tool tip" msgid "Drag to select nodes, click to clear the selection" msgstr "" -#: ../src/ui/tool/node-tool.cpp:602 +#: ../src/ui/tool/node-tool.cpp:598 msgctxt "Node tool tip" msgid "Drag to select objects to edit, click to edit this object (more: Shift)" msgstr "" -#: ../src/ui/tool/node-tool.cpp:605 +#: ../src/ui/tool/node-tool.cpp:601 msgctxt "Node tool tip" msgid "Drag to select objects to edit" msgstr "" @@ -21063,7 +21079,7 @@ msgstr "" msgid "Bottom margin" msgstr "" -#: ../src/ui/widget/page-sizer.cpp:296 ../share/extensions/hpgl_output.inx.h:7 +#: ../src/ui/widget/page-sizer.cpp:296 msgid "Orientation:" msgstr "" @@ -21553,12 +21569,12 @@ msgid "" "to adjust lightness" msgstr "" -#: ../src/ui/widget/selected-style.cpp:1497 -#: ../src/ui/widget/selected-style.cpp:1511 +#: ../src/ui/widget/selected-style.cpp:1495 +#: ../src/ui/widget/selected-style.cpp:1509 msgid "Adjust stroke width" msgstr "" -#: ../src/ui/widget/selected-style.cpp:1498 +#: ../src/ui/widget/selected-style.cpp:1496 #, c-format msgid "Adjusting <b>stroke width</b>: was %.3g, now <b>%.3g</b> (diff %.3g)" msgstr "" @@ -26119,11 +26135,11 @@ msgstr "" msgid "Scatter randomly the corners and angles" msgstr "" -#: ../src/widgets/stroke-style.cpp:190 +#: ../src/widgets/stroke-style.cpp:191 msgid "Stroke width" msgstr "" -#: ../src/widgets/stroke-style.cpp:192 +#: ../src/widgets/stroke-style.cpp:193 msgctxt "Stroke width" msgid "_Width:" msgstr "" @@ -26131,80 +26147,80 @@ msgstr "" #. TRANSLATORS: Miter join: joining lines with a sharp (pointed) corner. #. For an example, draw a triangle with a large stroke width and modify the #. "Join" option (in the Fill and Stroke dialog). -#: ../src/widgets/stroke-style.cpp:237 +#: ../src/widgets/stroke-style.cpp:238 msgid "Miter join" msgstr "" #. TRANSLATORS: Round join: joining lines with a rounded corner. #. For an example, draw a triangle with a large stroke width and modify the #. "Join" option (in the Fill and Stroke dialog). -#: ../src/widgets/stroke-style.cpp:245 +#: ../src/widgets/stroke-style.cpp:246 msgid "Round join" msgstr "" #. TRANSLATORS: Bevel join: joining lines with a blunted (flattened) corner. #. For an example, draw a triangle with a large stroke width and modify the #. "Join" option (in the Fill and Stroke dialog). -#: ../src/widgets/stroke-style.cpp:253 +#: ../src/widgets/stroke-style.cpp:254 msgid "Bevel join" msgstr "" -#: ../src/widgets/stroke-style.cpp:278 +#: ../src/widgets/stroke-style.cpp:279 msgid "Miter _limit:" msgstr "" #. Cap type #. TRANSLATORS: cap type specifies the shape for the ends of lines #. spw_label(t, _("_Cap:"), 0, i); -#: ../src/widgets/stroke-style.cpp:294 +#: ../src/widgets/stroke-style.cpp:295 msgid "Cap:" msgstr "" #. TRANSLATORS: Butt cap: the line shape does not extend beyond the end point #. of the line; the ends of the line are square -#: ../src/widgets/stroke-style.cpp:305 +#: ../src/widgets/stroke-style.cpp:306 msgid "Butt cap" msgstr "" #. TRANSLATORS: Round cap: the line shape extends beyond the end point of the #. line; the ends of the line are rounded -#: ../src/widgets/stroke-style.cpp:312 +#: ../src/widgets/stroke-style.cpp:313 msgid "Round cap" msgstr "" #. TRANSLATORS: Square cap: the line shape extends beyond the end point of the #. line; the ends of the line are square -#: ../src/widgets/stroke-style.cpp:319 +#: ../src/widgets/stroke-style.cpp:320 msgid "Square cap" msgstr "" #. Dash -#: ../src/widgets/stroke-style.cpp:324 +#: ../src/widgets/stroke-style.cpp:325 msgid "Dashes:" msgstr "" #. Drop down marker selectors #. TRANSLATORS: Path markers are an SVG feature that allows you to attach arbitrary shapes #. (arrowheads, bullets, faces, whatever) to the start, end, or middle nodes of a path. -#: ../src/widgets/stroke-style.cpp:350 +#: ../src/widgets/stroke-style.cpp:351 msgid "Markers:" msgstr "" -#: ../src/widgets/stroke-style.cpp:356 +#: ../src/widgets/stroke-style.cpp:357 msgid "Start Markers are drawn on the first node of a path or shape" msgstr "" -#: ../src/widgets/stroke-style.cpp:365 +#: ../src/widgets/stroke-style.cpp:366 msgid "" "Mid Markers are drawn on every node of a path or shape except the first and " "last nodes" msgstr "" -#: ../src/widgets/stroke-style.cpp:374 +#: ../src/widgets/stroke-style.cpp:375 msgid "End Markers are drawn on the last node of a path or shape" msgstr "" -#: ../src/widgets/stroke-style.cpp:492 +#: ../src/widgets/stroke-style.cpp:493 msgid "Set markers" msgstr "" @@ -27190,17 +27206,24 @@ msgstr "" msgid "The sliced bitmaps have been saved as:" msgstr "" -#: ../share/extensions/hpgl_input.py:59 +#: ../share/extensions/hpgl_input.py:58 +msgid "" +"The HPGL data contained unknown (unsupported) commands, there is a " +"possibility that the drawing is missing some content." +msgstr "" + +#. issue error if no hpgl data found +#: ../share/extensions/hpgl_input.py:64 msgid "No HPGL data found." msgstr "" -#: ../share/extensions/hpgl_input.py:111 +#. issue error if no paths found +#: ../share/extensions/hpgl_output.py:59 msgid "" -"The HPGL data contained unknown (unsupported) commands, there is a " -"possibility that the drawing is missing some content." +"No paths where found. Please convert all objects you want to save into paths." msgstr "" -#: ../share/extensions/inkex.py:133 +#: ../share/extensions/inkex.py:109 #, python-format msgid "" "The fantastic lxml wrapper for libxml2 is required by inkex.py and therefore " @@ -27212,7 +27235,7 @@ msgid "" "%s" msgstr "" -#: ../share/extensions/inkex.py:283 +#: ../share/extensions/inkex.py:260 #, python-format msgid "No matching node for expression: %s" msgstr "" @@ -27462,6 +27485,22 @@ msgid "" "Try using the procedure Path->Object to Path." msgstr "" +#: ../share/extensions/plotter.py:62 +msgid "pySerial is not installed." +msgstr "" + +#. issue error if no paths found +#: ../share/extensions/plotter.py:75 +msgid "" +"No paths where found. Please convert all objects you want to plot into paths." +msgstr "" + +#: ../share/extensions/plotter.py:111 +msgid "" +"Could not send data. Please check that your plotter is running, connected " +"and the settings are correct." +msgstr "" + #: ../share/extensions/polyhedron_3d.py:65 msgid "" "Failed to import the numpy module. This module is required by this " @@ -27712,7 +27751,7 @@ msgid "Corel DRAW Compressed Exchange files input (UC)" msgstr "" #: ../share/extensions/ccx_input.inx.h:2 -msgid "Corel DRAW Compressed Exchange files (UC) (.ccx)" +msgid "Corel DRAW Compressed Exchange files (UC) (*.ccx)" msgstr "" #: ../share/extensions/ccx_input.inx.h:3 @@ -27736,7 +27775,7 @@ msgid "Corel DRAW templates input (UC)" msgstr "" #: ../share/extensions/cdt_input.inx.h:2 -msgid "Corel DRAW 7-13 template files (UC) (.cdt)" +msgid "Corel DRAW 7-13 template files (UC) (*.cdt)" msgstr "" #: ../share/extensions/cdt_input.inx.h:3 @@ -27748,7 +27787,7 @@ msgid "Computer Graphics Metafile files input" msgstr "" #: ../share/extensions/cgm_input.inx.h:2 -msgid "Computer Graphics Metafile files (.cgm)" +msgid "Computer Graphics Metafile files (*.cgm)" msgstr "" #: ../share/extensions/cgm_input.inx.h:3 @@ -27760,7 +27799,7 @@ msgid "Corel DRAW Presentation Exchange files input (UC)" msgstr "" #: ../share/extensions/cmx_input.inx.h:2 -msgid "Corel DRAW Presentation Exchange files (UC) (.cmx)" +msgid "Corel DRAW Presentation Exchange files (UC) (*.cmx)" msgstr "" #: ../share/extensions/cmx_input.inx.h:3 @@ -27948,7 +27987,7 @@ msgid "DHW file input" msgstr "" #: ../share/extensions/dhw_input.inx.h:2 -msgid "ACECAD Digimemo File (.dhw)" +msgid "ACECAD Digimemo File (*.dhw)" msgstr "" #: ../share/extensions/dhw_input.inx.h:3 @@ -29825,35 +29864,46 @@ msgid "HPGL Input" msgstr "" #: ../share/extensions/hpgl_input.inx.h:2 -msgid "Resolution X (dpi)" +msgid "" +"Please note that you can only open HPGL files written by Inkscape, to open " +"other HPGL files please change their file extension to .plt, make sure you " +"have UniConverter installed and open them again." msgstr "" #: ../share/extensions/hpgl_input.inx.h:3 -msgid "The amount of steps in one inch on the X axis (Default: 1016.0)" +#: ../share/extensions/hpgl_output.inx.h:6 +#: ../share/extensions/plotter.inx.h:16 +msgid "Resolution X (dpi)" msgstr "" #: ../share/extensions/hpgl_input.inx.h:4 -msgid "Resolution Y (dpi)" +msgid "The amount of steps in one inch on the X axis (Default: 1016.0)" msgstr "" #: ../share/extensions/hpgl_input.inx.h:5 -msgid "The amount of steps in one inch on the Y axis (Default: 1016.0)" +#: ../share/extensions/hpgl_output.inx.h:8 +#: ../share/extensions/plotter.inx.h:18 +msgid "Resolution Y (dpi)" msgstr "" #: ../share/extensions/hpgl_input.inx.h:6 -msgid "Show Movements between paths" +msgid "The amount of steps in one inch on the Y axis (Default: 1016.0)" msgstr "" #: ../share/extensions/hpgl_input.inx.h:7 -msgid "Show movements between paths in a different color (Default: Un-checked)" +msgid "Show Movements between paths" msgstr "" #: ../share/extensions/hpgl_input.inx.h:8 +msgid "Check this to show movements between paths (Default: Unchecked)" +msgstr "" + +#: ../share/extensions/hpgl_input.inx.h:9 #: ../share/extensions/hpgl_output.inx.h:36 msgid "HP Graphics Language file (*.hpgl)" msgstr "" -#: ../share/extensions/hpgl_input.inx.h:9 +#: ../share/extensions/hpgl_input.inx.h:10 msgid "Import HP Graphics Language file" msgstr "" @@ -29863,163 +29913,184 @@ msgstr "" #: ../share/extensions/hpgl_output.inx.h:2 msgid "" -"Please make sure that all objects you want to plot are converted to paths. " -"The plot will automatically be aligned to the zero point." +"Please make sure that all objects you want to save are converted to paths. " +"The drawing will be automatically aligned to the zero point. Please use the " +"plotter extension (Extensions menu) to plot directly on a plotter." msgstr "" #: ../share/extensions/hpgl_output.inx.h:3 -msgid "Resolution (dpi):" +#: ../share/extensions/plotter.inx.h:13 +msgid "Plotter Settings" msgstr "" #: ../share/extensions/hpgl_output.inx.h:4 -msgid "" -"The amount of steps the cutter moves if it moves for 1 inch, either get this " -"value from your plotter manual or learn it by trial and error (Standard: " -"'1016')" +#: ../share/extensions/plotter.inx.h:14 +msgid "Pen number" msgstr "" #: ../share/extensions/hpgl_output.inx.h:5 -msgid "Pen number:" -msgstr "" - -#: ../share/extensions/hpgl_output.inx.h:6 +#: ../share/extensions/plotter.inx.h:15 msgid "The number of the pen (tool) to use, on most plotters 1 (Standard: '1')" msgstr "" -#: ../share/extensions/hpgl_output.inx.h:8 +#: ../share/extensions/hpgl_output.inx.h:7 +#: ../share/extensions/plotter.inx.h:17 msgid "" -"Orientation of the plot, change this if your plotter is plotting horizontal " -"instead of vertical (Standard: '90°')" +"The amount of steps the cutter moves if it moves for 1 inch on the X axis - " +"Try different settings to find the one that fits your plotter (Default: " +"1016.0)" msgstr "" #: ../share/extensions/hpgl_output.inx.h:9 -msgid "Mirror Y-axis" +#: ../share/extensions/plotter.inx.h:19 +msgid "" +"The amount of steps the cutter moves if it moves for 1 inch on the Y axis - " +"Try different settings to find the one that fits your plotter (Default: " +"1016.0)" msgstr "" #: ../share/extensions/hpgl_output.inx.h:10 -msgid "" -"Whether to mirror the Y axis. Some plotters need this, some not. Look in " -"your plotter manual or learn it by trial and error (Standard: 'False')" +#: ../share/extensions/plotter.inx.h:20 +msgid "Mirror X-axis" msgstr "" #: ../share/extensions/hpgl_output.inx.h:11 -msgid "Center Zero Point" +msgid "" +"Check this to mirror the X axis - Try different settings to find the one " +"that fits your plotter (Default: Unchecked)" msgstr "" #: ../share/extensions/hpgl_output.inx.h:12 -msgid "" -"Whether the plotter needs the zero point to be in the center of the drawing. " -"Some plotters need this, some not. Look in your plotter manual or learn it " -"by trial and error (Standard: 'False')" +#: ../share/extensions/plotter.inx.h:22 +msgid "Mirror Y-axis" msgstr "" #: ../share/extensions/hpgl_output.inx.h:13 -msgid "Curve flatness:" +#: ../share/extensions/plotter.inx.h:23 +msgid "" +"Check this to mirror the Y axis - Try different settings to find the one " +"that fits your plotter (Default: Unchecked)" msgstr "" #: ../share/extensions/hpgl_output.inx.h:14 -msgid "" -"Curves are divided into lines, this number controls how fine the curves will " -"be reproduced, the smaller the finer (Standard: '1.2')" +#: ../share/extensions/plotter.inx.h:24 +msgid "Rotation (Clockwise)" msgstr "" #: ../share/extensions/hpgl_output.inx.h:15 -msgid "Use Overcut" +msgid "" +"Rotation of the drawing - Try different settings to find the one that fits " +"your plotter (Default: 0°)" msgstr "" #: ../share/extensions/hpgl_output.inx.h:16 -msgid "" -"Whether the overcut will be used, if not the 'Overcut' parameter is unused " -"(Standard: 'True')" +#: ../share/extensions/plotter.inx.h:26 +msgid "Center zero point" msgstr "" #: ../share/extensions/hpgl_output.inx.h:17 -msgid "Overcut (mm):" +#: ../share/extensions/plotter.inx.h:27 +msgid "" +"Check this if your plotter uses a centered zero point - Try different " +"settings to find the one that fits your plotter (Default: Unchecked)" msgstr "" #: ../share/extensions/hpgl_output.inx.h:18 -msgid "" -"The distance in mm that will be cut over the starting point of the path to " -"prevent open paths (Standard: '1.00')" +#: ../share/extensions/plotter.inx.h:28 +msgid "Overcut & Tool Offset" msgstr "" #: ../share/extensions/hpgl_output.inx.h:19 -msgid "Correct tool offset" +#: ../share/extensions/plotter.inx.h:29 +msgid "Use overcut" msgstr "" #: ../share/extensions/hpgl_output.inx.h:20 +#: ../share/extensions/plotter.inx.h:30 msgid "" -"Whether the tool offset should be corrected, if not the 'Tool offset' and " -"'Return Factor' parameters are unused (Standard: 'True')" +"Check this to use the overcut, if not checked the 'Overcut' parameter is " +"unused (Default: Checked)" msgstr "" #: ../share/extensions/hpgl_output.inx.h:21 -msgid "Tool offset (mm):" +#: ../share/extensions/plotter.inx.h:31 +msgid "Overcut (mm)" msgstr "" #: ../share/extensions/hpgl_output.inx.h:22 -msgid "The offset from the tool tip to the tool axis in mm (Standard: '0.25')" +#: ../share/extensions/plotter.inx.h:32 +msgid "" +"The distance in mm that will be cut over the starting point of the path to " +"prevent open paths (Default: 1.00)" msgstr "" #: ../share/extensions/hpgl_output.inx.h:23 -msgid "Return Factor:" +#: ../share/extensions/plotter.inx.h:33 +msgid "Use tool offset correction" msgstr "" #: ../share/extensions/hpgl_output.inx.h:24 +#: ../share/extensions/plotter.inx.h:34 msgid "" -"The return factor multiplied by the tool offset is the length that is used " -"to guide the tool back to the original path after an overcut is performed, " -"you can only determine this value by experimentation (Standard: '2.50')" +"Check this to use the tool offset correction, if not checked the 'Tool " +"offset' and 'Precut' parameters are unused (Default: Checked)" msgstr "" #: ../share/extensions/hpgl_output.inx.h:25 -msgid "X offset (mm):" +#: ../share/extensions/plotter.inx.h:35 +msgid "Tool offset (mm)" msgstr "" #: ../share/extensions/hpgl_output.inx.h:26 -msgid "" -"The offset to move your plot away from the zero point in mm (Standard: " -"'0.00')" +#: ../share/extensions/plotter.inx.h:36 +msgid "The offset from the tool tip to the tool axis in mm (Default: 0.25)" msgstr "" #: ../share/extensions/hpgl_output.inx.h:27 -msgid "Y offset (mm):" +#: ../share/extensions/plotter.inx.h:37 +msgid "Use precut" msgstr "" #: ../share/extensions/hpgl_output.inx.h:28 -msgid "Plot invisible layers" +#: ../share/extensions/plotter.inx.h:38 +msgid "" +"Check this to cut a small line before the real drawing to align the tool " +"orientation for the first cut (Default: Checked)" msgstr "" #: ../share/extensions/hpgl_output.inx.h:29 -msgid "Plot invisible layers (Standard: 'False')" -msgstr "" - -#: ../share/extensions/hpgl_output.inx.h:30 -msgid "Send to Plotter also" +#: ../share/extensions/plotter.inx.h:39 +msgid "" +"Please note that using the tool offset correction will move your plot away " +"from the zero point by the length in mm specified by the tool offset." msgstr "" #: ../share/extensions/hpgl_output.inx.h:31 -msgid "" -"Sends the generated HPGL data also via serial connection to your plotter " -"(Standard: 'False')" +#: ../share/extensions/plotter.inx.h:41 +msgid "Curve flatness" msgstr "" #: ../share/extensions/hpgl_output.inx.h:32 -msgid "Serial Port:" +#: ../share/extensions/plotter.inx.h:42 +msgid "" +"Curves are divided into lines, this number controls how fine the curves will " +"be reproduced, the smaller the finer (Default: '1.2')" msgstr "" #: ../share/extensions/hpgl_output.inx.h:33 -msgid "" -"The port of your serial connection, on Windows something like 'COM1', on " -"Linux something like: '/dev/ttyUSB0' (Standard: 'COM1')" +#: ../share/extensions/plotter.inx.h:43 +msgid "X offset (mm)" msgstr "" #: ../share/extensions/hpgl_output.inx.h:34 -msgid "Baud Rate:" +msgid "" +"The offset to shift your plot away from the zero point in mm (Default: " +"'0.00')" msgstr "" #: ../share/extensions/hpgl_output.inx.h:35 -msgid "The Baud rate of your serial connection (Standard: '9600')" +#: ../share/extensions/plotter.inx.h:45 +msgid "Y offset (mm)" msgstr "" #: ../share/extensions/hpgl_output.inx.h:37 @@ -31003,18 +31074,6 @@ msgstr "" msgid "View Next Glyph" msgstr "" -#: ../share/extensions/outline2svg.inx.h:1 -msgid "Text Outline Input" -msgstr "" - -#: ../share/extensions/outline2svg.inx.h:2 -msgid "Text Outline File (*.outline)" -msgstr "" - -#: ../share/extensions/outline2svg.inx.h:3 -msgid "ASCII Text with outline markup" -msgstr "" - #: ../share/extensions/param_curves.inx.h:1 msgid "Parametric Curves" msgstr "" @@ -31255,6 +31314,82 @@ msgid "" "fills to full points." msgstr "" +#: ../share/extensions/plotter.inx.h:1 +msgid "Plot" +msgstr "" + +#: ../share/extensions/plotter.inx.h:2 +msgid "" +"Please make sure that all objects you want to plot are converted to paths. " +"The plot will automatically be aligned to the zero point." +msgstr "" + +#: ../share/extensions/plotter.inx.h:3 +msgid "Connection" +msgstr "" + +#: ../share/extensions/plotter.inx.h:4 +msgid "Serial Port" +msgstr "" + +#: ../share/extensions/plotter.inx.h:5 +msgid "" +"The port of your serial connection, on Windows something like 'COM1', on " +"Linux something like: '/dev/ttyUSB0' (Default: COM1)" +msgstr "" + +#: ../share/extensions/plotter.inx.h:6 +msgid "Serial Baud rate" +msgstr "" + +#: ../share/extensions/plotter.inx.h:7 +msgid "The Baud rate of your serial connection (Default: 9600)" +msgstr "" + +#: ../share/extensions/plotter.inx.h:8 +msgid "Flow control" +msgstr "" + +#: ../share/extensions/plotter.inx.h:9 +msgid "" +"Software / Hardware flow control - Try different settings to find the one " +"that fits your plotter (Default: None)" +msgstr "" + +#: ../share/extensions/plotter.inx.h:10 +msgid "" +"This can be a physical serial connection or a USB-to-Serial bridge. Ask your " +"plotter manufacturer for drivers if needed." +msgstr "" + +#: ../share/extensions/plotter.inx.h:11 +msgid "Please note that Parallel (LPT) connections are not supported." +msgstr "" + +#: ../share/extensions/plotter.inx.h:12 +msgid "" +"Please note that only the HPGL command language is supported at the moment." +msgstr "" + +#: ../share/extensions/plotter.inx.h:21 +msgid "Check this to mirror the X axis (Default: Unchecked)" +msgstr "" + +#: ../share/extensions/plotter.inx.h:25 +msgid "" +"Rotation of the plot - Try different settings to find the one that fits your " +"plotter (Default: 0°)" +msgstr "" + +#: ../share/extensions/plotter.inx.h:44 +msgid "" +"The offset to move your plot away from the zero point in mm (Default: '0.00')" +msgstr "" + +#: ../share/extensions/plotter.inx.h:46 +msgid "Plotter" +msgstr "" + #: ../share/extensions/plt_input.inx.h:1 msgid "AutoCAD Plot Input" msgstr "" @@ -32010,7 +32145,7 @@ msgstr "" #: ../share/extensions/sk1_input.inx.h:2 #: ../share/extensions/sk1_output.inx.h:2 -msgid "sK1 vector graphics files (.sk1)" +msgid "sK1 vector graphics files (*.sk1)" msgstr "" #: ../share/extensions/sk1_input.inx.h:3 @@ -32454,18 +32589,6 @@ msgstr "" msgid "From Side c and Angles a, b" msgstr "" -#: ../share/extensions/txt2svg.inx.h:1 -msgid "Text Input" -msgstr "" - -#: ../share/extensions/txt2svg.inx.h:2 -msgid "Text File (*.txt)" -msgstr "" - -#: ../share/extensions/txt2svg.inx.h:3 -msgid "ASCII Text" -msgstr "" - #: ../share/extensions/voronoi2svg.inx.h:1 msgid "Voronoi Diagram" msgstr "" diff --git a/share/extensions/Makefile.am b/share/extensions/Makefile.am index c9a557532..b53446999 100644 --- a/share/extensions/Makefile.am +++ b/share/extensions/Makefile.am @@ -76,9 +76,11 @@ extensions = \ guides_creator.py \ guillotine.py \ handles.py \ - hpgl_input.py \ hershey.py \ hersheydata.py \ + hpgl_decoder.py \ + hpgl_encoder.py \ + hpgl_input.py \ hpgl_output.py \ ink2canvas.py \ inkex.py \ @@ -118,6 +120,7 @@ extensions = \ perfectboundcover.py \ perspective.py \ pixelsnap.py \ + plotter.py \ plt_output.py \ polyhedron_3d.py \ printing_marks.py \ @@ -266,8 +269,8 @@ modules = \ guides_creator.inx \ guillotine.inx \ handles.inx \ - hpgl_input.inx \ hershey.inx \ + hpgl_input.inx \ hpgl_output.inx \ ink2canvas.inx \ inkscape_follow_link.inx \ @@ -310,6 +313,7 @@ modules = \ perfectboundcover.inx \ perspective.inx \ pixelsnap.inx \ + plotter.inx \ plt_input.inx \ plt_output.inx \ polyhedron_3d.inx \ diff --git a/share/extensions/cubicsuperpath.py b/share/extensions/cubicsuperpath.py index da46f8080..925efdb04 100755 --- a/share/extensions/cubicsuperpath.py +++ b/share/extensions/cubicsuperpath.py @@ -46,8 +46,8 @@ def ArcToPath(p1,params): rx,ry,teta,longflag,sweepflag,x2,y2=params[:] teta = teta*pi/180.0 B=[x2,y2] - if rx==0 or ry==0: - return([[A,A,A],[B,B,B]]) + if rx==0 or ry==0 or A==B: + return([[A[:],A[:],A[:]],[B[:],B[:],B[:]]]) mat=matprod((rotmat(teta),[[1/rx,0],[0,1/ry]],rotmat(-teta))) applymat(mat, A) applymat(mat, B) diff --git a/share/extensions/hpgl_decoder.py b/share/extensions/hpgl_decoder.py index 870775cb2..0af2d5f5f 100644 --- a/share/extensions/hpgl_decoder.py +++ b/share/extensions/hpgl_decoder.py @@ -38,17 +38,18 @@ class hpglDecoder: self.options = options self.scaleX = options.resolutionX / 90.0 # dots/inch to dots/pixels self.scaleY = options.resolutionY / 90.0 # dots/inch to dots/pixels - self.warnings = [] + self.warning = '' + self.textMovements = _("Movements") + self.textPenNumber = _("Pen #") def getSvg(self): - # parse hpgl data # prepare document self.doc = inkex.etree.parse(StringIO('<svg xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" width="%s" height="%s"></svg>' % (self.options.docWidth, self.options.docHeight))) actualLayer = 0 self.layers = {} if self.options.showMovements: - self.layers[0] = inkex.etree.SubElement(self.doc.getroot(), 'g', {inkex.addNS('groupmode', 'inkscape'): 'layer', inkex.addNS('label', 'inkscape'): 'Movements'}) + self.layers[0] = inkex.etree.SubElement(self.doc.getroot(), 'g', {inkex.addNS('groupmode', 'inkscape'): 'layer', inkex.addNS('label', 'inkscape'): self.textMovements}) # parse paths hpglData = self.hpglString.split(';') if len(hpglData) < 3: @@ -89,14 +90,14 @@ class hpglDecoder: parameterString = ','.join(parameter) path += ' L %s' % parameterString else: - self.warnings.append('UNKNOWN_COMMANDS') + self.warning = 'UNKNOWN_COMMANDS' if ' L ' in path: self.addPathToLayer(path, actualLayer) - return (self.doc, self.warnings) + return (self.doc, self.warning) def createLayer(self, layerNumber): self.layers[layerNumber] = inkex.etree.SubElement(self.doc.getroot(), 'g', - {inkex.addNS('groupmode', 'inkscape'): 'layer', inkex.addNS('label', 'inkscape'): 'Drawing Pen ' + layerNumber}) + {inkex.addNS('groupmode', 'inkscape'): 'layer', inkex.addNS('label', 'inkscape'): self.textPenNumber + layerNumber}) def addPathToLayer(self, path, layerNumber): lineColor = '000000' diff --git a/share/extensions/hpgl_encoder.py b/share/extensions/hpgl_encoder.py index 90d2734be..f6ad13f60 100644 --- a/share/extensions/hpgl_encoder.py +++ b/share/extensions/hpgl_encoder.py @@ -88,10 +88,10 @@ class hpglEncoder: def getHpgl(self): # dryRun to find edges - self.groupmat = [[[self.mirrorX * self.scaleX * self.viewBoxTransformX, 0.0, 0.0], [0.0, self.mirrorY * self.scaleY * self.viewBoxTransformY, 0.0]]] - self.groupmat[0] = simpletransform.composeTransform(self.groupmat[0], simpletransform.parseTransform('rotate(' + self.options.orientation + ')')) + groupmat = [[self.mirrorX * self.scaleX * self.viewBoxTransformX, 0.0, 0.0], [0.0, self.mirrorY * self.scaleY * self.viewBoxTransformY, 0.0]] + groupmat = simpletransform.composeTransform(groupmat, simpletransform.parseTransform('rotate(' + self.options.orientation + ')')) self.vData = [['', -1.0, -1.0], ['', -1.0, -1.0], ['', -1.0, -1.0], ['', -1.0, -1.0]] - self.process_group(self.doc, self.groupmat) + self.process_groups(self.doc, groupmat) if self.divergenceX == 'False' or self.divergenceY == 'False' or self.sizeX == 'False' or self.sizeY == 'False': raise Exception('NO_PATHS') # live run @@ -102,9 +102,9 @@ class hpglEncoder: elif self.options.useToolOffset: self.options.offsetX += self.options.toolOffset self.options.offsetY += self.options.toolOffset - self.groupmat = [[[self.mirrorX * self.scaleX * self.viewBoxTransformX, 0.0, - self.divergenceX + self.options.offsetX], - [0.0, self.mirrorY * self.scaleY * self.viewBoxTransformY, - self.divergenceY + self.options.offsetY]]] - self.groupmat[0] = simpletransform.composeTransform(self.groupmat[0], simpletransform.parseTransform('rotate(' + self.options.orientation + ')')) + groupmat = [[self.mirrorX * self.scaleX * self.viewBoxTransformX, 0.0, - self.divergenceX + self.options.offsetX], + [0.0, self.mirrorY * self.scaleY * self.viewBoxTransformY, - self.divergenceY + self.options.offsetY]] + groupmat = simpletransform.composeTransform(groupmat, simpletransform.parseTransform('rotate(' + self.options.orientation + ')')) self.vData = [['', -1.0, -1.0], ['', -1.0, -1.0], ['', -1.0, -1.0], ['', -1.0, -1.0]] # store first hpgl commands self.hpgl = 'IN;SP%d' % self.options.pen @@ -113,42 +113,56 @@ class hpglEncoder: self.calcOffset('PU', 0, 0) self.calcOffset('PD', 0, self.options.toolOffset * 8) # start conversion - self.process_group(self.doc, self.groupmat) + self.process_groups(self.doc, groupmat) # shift an empty node in in order to process last node in cache self.calcOffset('PU', 0, 0) # add return to zero point self.hpgl += ';PU0,0;' return self.hpgl - def process_group(self, group, groupmat): - # process groups + def process_groups(self, doc, groupmat): + # flatten groups to avoid recursion + paths = [] + for node in doc: + if (node.tag == inkex.addNS('g', 'svg') and self.isGroupVisible(node)) or node.tag == inkex.addNS('path', 'svg'): + paths.append([node.tag, node, self.mergeTransform(node, groupmat)]) + doc = '' + hasGroups = True + while hasGroups: + hasGroups = False + for i, elm in enumerate(paths): + if paths[i][0] == inkex.addNS('g', 'svg') and self.isGroupVisible(paths[i][1]): + hasGroups = True + for path in paths[i][1]: + if (path.tag == inkex.addNS('g', 'svg') and self.isGroupVisible(path)) or path.tag == inkex.addNS('path', 'svg'): + paths.append([path.tag, path, self.mergeTransform(path, paths[i][2])]) + paths[i][0] = '' + for node in paths: + if node[0] == inkex.addNS('path', 'svg'): + self.process_path(node[1], node[2]) + + def mergeTransform(self, doc, matrix): + # get and merge two matrixes into one + trans = doc.get('transform') + if trans: + return simpletransform.composeTransform(matrix, simpletransform.parseTransform(trans)) + else: + return matrix + + def isGroupVisible(self, group): style = group.get('style') if style: style = simplestyle.parseStyle(style) - if style.has_key('display'): - if style['display'] == 'none': - return - trans = group.get('transform') - if trans: - groupmat.append(simpletransform.composeTransform(groupmat[-1], simpletransform.parseTransform(trans))) - for node in group: - if node.tag == inkex.addNS('path', 'svg'): - self.process_path(node, groupmat[-1]) - if node.tag == inkex.addNS('g', 'svg'): - # TODO: Remove recursion - self.process_group(node, groupmat) - if trans: - groupmat.pop() + if 'display' in style and style['display'] == 'none': + return False + return True def process_path(self, node, mat): # process path - drawing = node.get('d') - if drawing: - # transform path - paths = cubicsuperpath.parsePath(drawing) - trans = node.get('transform') - if trans: - mat = simpletransform.composeTransform(mat, simpletransform.parseTransform(trans)) + paths = node.get('d') + if paths: + # parse and transform path + paths = cubicsuperpath.parsePath(paths) simpletransform.applyTransformToPath(mat, paths) cspsubdiv.cspsubdiv(paths, self.options.flat) # path to HPGL commands diff --git a/share/extensions/hpgl_input.inx b/share/extensions/hpgl_input.inx index 69711d85a..8dd90b3f7 100644 --- a/share/extensions/hpgl_input.inx +++ b/share/extensions/hpgl_input.inx @@ -14,7 +14,7 @@ <extension>.hpgl</extension> <mimetype>image/hpgl</mimetype> <_filetypename>HP Graphics Language file (*.hpgl)</_filetypename> - <_filetypetooltip>Import HP Graphics Language file</_filetypetooltip> + <_filetypetooltip>Import an HP Graphics Language file</_filetypetooltip> </input> <script> <command reldir="extensions" interpreter="python">hpgl_input.py</command> diff --git a/share/extensions/hpgl_input.py b/share/extensions/hpgl_input.py index d1d46c76f..93dd5a6c2 100644 --- a/share/extensions/hpgl_input.py +++ b/share/extensions/hpgl_input.py @@ -53,18 +53,20 @@ hpglString = ';'.join(hpglString) myHpglDecoder = hpgl_decoder.hpglDecoder(hpglString, options) try: doc, warnings = myHpglDecoder.getSvg() - # issue warning if unknown commands where found - if 'UNKNOWN_COMMANDS' in warnings: - inkex.errormsg(_("The HPGL data contained unknown (unsupported) commands, there is a possibility that the drawing is missing some content.")) - # deliver document to inkscape - doc.write(inkex.sys.stdout) except Exception as inst: if inst.args[0] == 'NO_HPGL_DATA': # issue error if no hpgl data found inkex.errormsg(_("No HPGL data found.")) - print 1 + exit(1) else: type, value, traceback = sys.exc_info() raise ValueError, ("", type, value), traceback +# issue warning if unknown commands where found +if 'UNKNOWN_COMMANDS' in warnings: + inkex.errormsg(_("The HPGL data contained unknown (unsupported) commands, there is a possibility that the drawing is missing some content.")) + +# deliver document to inkscape +doc.write(inkex.sys.stdout) + # vim: expandtab shiftwidth=4 tabstop=8 softtabstop=4 fileencoding=utf-8 textwidth=99
\ No newline at end of file diff --git a/share/extensions/hpgl_output.inx b/share/extensions/hpgl_output.inx index 7f8705996..c51215b4c 100644 --- a/share/extensions/hpgl_output.inx +++ b/share/extensions/hpgl_output.inx @@ -42,7 +42,7 @@ <extension>.hpgl</extension> <mimetype>image/hpgl</mimetype> <_filetypename>HP Graphics Language file (*.hpgl)</_filetypename> - <_filetypetooltip>Export to an HP Graphics Language file</_filetypetooltip> + <_filetypetooltip>Export an HP Graphics Language file</_filetypetooltip> <dataloss>true</dataloss> </output> <script> diff --git a/share/extensions/hpgl_output.py b/share/extensions/hpgl_output.py index c5fec0ec8..93be82980 100755 --- a/share/extensions/hpgl_output.py +++ b/share/extensions/hpgl_output.py @@ -35,7 +35,7 @@ class MyEffect(inkex.Effect): self.OptionParser.add_option('--resolutionX', action='store', type='float', dest='resolutionX', default=1016.0, help='Resolution X (dpi)') self.OptionParser.add_option('--resolutionY', action='store', type='float', dest='resolutionY', default=1016.0, help='Resolution Y (dpi)') self.OptionParser.add_option('--pen', action='store', type='int', dest='pen', default=1, help='Pen number') - self.OptionParser.add_option('--orientation', action='store', type='string', dest='orientation', default='90', help='orientation') + self.OptionParser.add_option('--orientation', action='store', type='string', dest='orientation', default='90', help='Rotation (Clockwise)') self.OptionParser.add_option('--mirrorX', action='store', type='inkbool', dest='mirrorX', default='FALSE', help='Mirror X-axis') self.OptionParser.add_option('--mirrorY', action='store', type='inkbool', dest='mirrorY', default='FALSE', help='Mirror Y-axis') self.OptionParser.add_option('--center', action='store', type='inkbool', dest='center', default='FALSE', help='Center zero point') @@ -57,18 +57,18 @@ class MyEffect(inkex.Effect): if inst.args[0] == 'NO_PATHS': # issue error if no paths found inkex.errormsg(_("No paths where found. Please convert all objects you want to save into paths.")) - self.hpgl = 1 + self.hpgl = '' + return else: type, value, traceback = sys.exc_info() raise ValueError, ("", type, value), traceback def output(self): # print to file - print self.hpgl + if self.hpgl != '': + print self.hpgl if __name__ == '__main__': - # Raise recursion limit to avoid exceptions on big documents - sys.setrecursionlimit(20000) # start extension e = MyEffect() e.affect() diff --git a/share/extensions/plotter.inx b/share/extensions/plotter.inx index b950e0246..49bcf837e 100644 --- a/share/extensions/plotter.inx +++ b/share/extensions/plotter.inx @@ -26,10 +26,15 @@ <option value="57600">57600</option> <option value="115200">115200</option> </param> - <param name="flowControl" type="optiongroup" appearance="minimal" _gui-text="Flow control" _gui-description="Software / Hardware flow control - Try different settings to find the one that fits your plotter (Default: None)"> - <option value="0">None</option> - <option value="1">Software (XON/XOFF)</option> - <option value="2">Hardware (RTS/CTS)</option> + <param name="flowControl" type="optiongroup" appearance="minimal" _gui-text="Flow control" _gui-description="Software / Hardware flow control - Try different settings to find the one that fits your plotter (Default: Software)"> + <_option value="xonxoff">Software (XON/XOFF)</_option> + <_option value="rtscts">Hardware (RTS/CTS)</_option> + <_option value="dsrdtrrtscts">Hardware (DSR/DTR + RTS/CTS)</_option> + <_option value="">None</_option> + </param> + <param name="commandLanguage" type="optiongroup" appearance="minimal" _gui-text="Command Language" _gui-description="The command language to use - Try different settings to find the one that fits your plotter (Default: HPGL)"> + <option value="hpgl">HPGL</option> + <option value="dmpl">DMPL</option> </param> <param name="space" type="description"> </param> <_param name="serialHelp" type="description">This can be a physical serial connection or a USB-to-Serial bridge. Ask your plotter manufacturer for drivers if needed.</_param> @@ -37,7 +42,7 @@ <_param name="hpglNote" type="description">Please note that only the HPGL command language is supported at the moment.</_param> </page> <page name="plotter" _gui-text="Plotter Settings"> - <param name="pen" type="int" min="0" max="10" _gui-text="Pen number" _gui-description="The number of the pen (tool) to use, on most plotters 1 (Standard: '1')">1</param> + <param name="pen" type="int" min="0" max="99" _gui-text="Pen number" _gui-description="The number of the pen (tool) to use, on most plotters 1 (Standard: '1')">1</param> <param name="resolutionX" type="float" min="1.0" max="4096.0" precision="1" _gui-text="Resolution X (dpi)" _gui-description="The amount of steps the cutter moves if it moves for 1 inch on the X axis - Try different settings to find the one that fits your plotter (Default: 1016.0)">1016.0</param> <param name="resolutionY" type="float" min="1.0" max="4096.0" precision="1" _gui-text="Resolution Y (dpi)" _gui-description="The amount of steps the cutter moves if it moves for 1 inch on the Y axis - Try different settings to find the one that fits your plotter (Default: 1016.0)">1016.0</param> <param name="mirrorX" type="boolean" _gui-text="Mirror X-axis" _gui-description="Check this to mirror the X axis (Default: Unchecked)">false</param> diff --git a/share/extensions/plotter.py b/share/extensions/plotter.py index aef9e016d..427e9401b 100644 --- a/share/extensions/plotter.py +++ b/share/extensions/plotter.py @@ -19,6 +19,7 @@ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ''' # standard library +import re import sys # local libraries import gettext @@ -29,30 +30,30 @@ inkex.localize() # TODO: Unittests -# TODO: Material feed after plot, plot rectangles class MyEffect(inkex.Effect): def __init__(self): inkex.Effect.__init__(self) - self.OptionParser.add_option('--tab', action='store', type='string', dest='tab') - self.OptionParser.add_option('--resolutionX', action='store', type='float', dest='resolutionX', default=1016.0, help='Resolution X (dpi)') - self.OptionParser.add_option('--resolutionY', action='store', type='float', dest='resolutionY', default=1016.0, help='Resolution Y (dpi)') - self.OptionParser.add_option('--pen', action='store', type='int', dest='pen', default=1, help='Pen number') - self.OptionParser.add_option('--orientation', action='store', type='string', dest='orientation', default='90', help='orientation') - self.OptionParser.add_option('--mirrorX', action='store', type='inkbool', dest='mirrorX', default='FALSE', help='Mirror X-axis') - self.OptionParser.add_option('--mirrorY', action='store', type='inkbool', dest='mirrorY', default='FALSE', help='Mirror Y-axis') - self.OptionParser.add_option('--center', action='store', type='inkbool', dest='center', default='FALSE', help='Center zero point') - self.OptionParser.add_option('--flat', action='store', type='float', dest='flat', default=1.2, help='Curve flatness') - self.OptionParser.add_option('--useOvercut', action='store', type='inkbool', dest='useOvercut', default='TRUE', help='Use overcut') - self.OptionParser.add_option('--overcut', action='store', type='float', dest='overcut', default=1.0, help='Overcut (mm)') - self.OptionParser.add_option('--useToolOffset', action='store', type='inkbool', dest='useToolOffset', default='TRUE', help='Correct tool offset') - self.OptionParser.add_option('--toolOffset', action='store', type='float', dest='toolOffset', default=0.25, help='Tool offset (mm)') - self.OptionParser.add_option('--precut', action='store', type='inkbool', dest='precut', default='TRUE', help='Use precut') - self.OptionParser.add_option('--offsetX', action='store', type='float', dest='offsetX', default=0.0, help='X offset (mm)') - self.OptionParser.add_option('--offsetY', action='store', type='float', dest='offsetY', default=0.0, help='Y offset (mm)') - self.OptionParser.add_option('--serialPort', action='store', type='string', dest='serialPort', default='COM1', help='Serial port') - self.OptionParser.add_option('--serialBaudRate', action='store', type='string', dest='serialBaudRate', default='9600', help='Serial Baud rate') - self.OptionParser.add_option('--flowControl', action='store', type='string', dest='flowControl', default='0', help='Flow control') + self.OptionParser.add_option('--tab', action='store', type='string', dest='tab') + self.OptionParser.add_option('--resolutionX', action='store', type='float', dest='resolutionX', default=1016.0, help='Resolution X (dpi)') + self.OptionParser.add_option('--resolutionY', action='store', type='float', dest='resolutionY', default=1016.0, help='Resolution Y (dpi)') + self.OptionParser.add_option('--pen', action='store', type='int', dest='pen', default=1, help='Pen number') + self.OptionParser.add_option('--orientation', action='store', type='string', dest='orientation', default='90', help='Rotation (Clockwise)') + self.OptionParser.add_option('--mirrorX', action='store', type='inkbool', dest='mirrorX', default='FALSE', help='Mirror X-axis') + self.OptionParser.add_option('--mirrorY', action='store', type='inkbool', dest='mirrorY', default='FALSE', help='Mirror Y-axis') + self.OptionParser.add_option('--center', action='store', type='inkbool', dest='center', default='FALSE', help='Center zero point') + self.OptionParser.add_option('--flat', action='store', type='float', dest='flat', default=1.2, help='Curve flatness') + self.OptionParser.add_option('--useOvercut', action='store', type='inkbool', dest='useOvercut', default='TRUE', help='Use overcut') + self.OptionParser.add_option('--overcut', action='store', type='float', dest='overcut', default=1.0, help='Overcut (mm)') + self.OptionParser.add_option('--useToolOffset', action='store', type='inkbool', dest='useToolOffset', default='TRUE', help='Correct tool offset') + self.OptionParser.add_option('--toolOffset', action='store', type='float', dest='toolOffset', default=0.25, help='Tool offset (mm)') + self.OptionParser.add_option('--precut', action='store', type='inkbool', dest='precut', default='TRUE', help='Use precut') + self.OptionParser.add_option('--offsetX', action='store', type='float', dest='offsetX', default=0.0, help='X offset (mm)') + self.OptionParser.add_option('--offsetY', action='store', type='float', dest='offsetY', default=0.0, help='Y offset (mm)') + self.OptionParser.add_option('--serialPort', action='store', type='string', dest='serialPort', default='COM1', help='Serial port') + self.OptionParser.add_option('--serialBaudRate', action='store', type='string', dest='serialBaudRate', default='9600', help='Serial Baud rate') + self.OptionParser.add_option('--flowControl', action='store', type='string', dest='flowControl', default='0', help='Flow control') + self.OptionParser.add_option('--commandLanguage', action='store', type='string', dest='commandLanguage', default='hpgl', help='Command Language') def effect(self): # gracefully exit script when pySerial is missing @@ -64,7 +65,6 @@ class MyEffect(inkex.Effect): + "\n2. Extract the \"serial\" subfolder from the zip to the following folder: C:\\[Program files]\\inkscape\\python\\Lib\\" + "\n3. Restart Inkscape.")) return - # TODO: Maybe implement DMPL? # get hpgl data myHpglEncoder = hpgl_encoder.hpglEncoder(self) try: @@ -76,7 +76,7 @@ class MyEffect(inkex.Effect): return 1 else: type, value, traceback = sys.exc_info() - raise ValueError, ("", type, value), traceback + raise ValueError, ('', type, value), traceback # TODO: Get preview to work. This requires some work on the C++ side to be able to determine if it is # a preview or a final run. (Remember to set <effect needs-live-preview='false'> to true) ''' @@ -95,30 +95,38 @@ class MyEffect(inkex.Effect): pass else: type, value, traceback = sys.exc_info() - raise ValueError, ("", type, value), traceback + raise ValueError, ('', type, value), traceback ''' + if self.options.commandLanguage == 'dmpl': + # convert HPGL to DMPL + self.hpgl = self.hpgl.replace(';', ',') + self.hpgl = self.hpgl.replace('PU', 'U') + self.hpgl = self.hpgl.replace('PD', 'D') + self.hpgl = re.sub(r'IN,SP([0-9]{1,2}),', r';:HAL0P\1EC1', self.hpgl) + self.hpgl += 'Z' # send data to plotter - if self.options.flowControl == '1': - mySerial = serial.Serial(port=self.options.serialPort, baudrate=self.options.serialBaudRate, timeout=0.1, writeTimeout=10, xonxoff=True) - elif self.options.flowControl == '2': - mySerial = serial.Serial(port=self.options.serialPort, baudrate=self.options.serialBaudRate, timeout=0.1, writeTimeout=10, dsrdtr=None, rtscts=True) - else: - mySerial = serial.Serial(port=self.options.serialPort, baudrate=self.options.serialBaudRate, timeout=0.1, writeTimeout=10) + mySerial = serial.Serial() + mySerial.port = self.options.serialPort + mySerial.baudrate = self.options.serialBaudRate + if self.options.flowControl == 'xonxoff': + mySerial.xonxoff = True + if self.options.flowControl == 'rtscts' or self.options.flowControl == 'dsrdtrrtscts': + mySerial.rtscts = True + if self.options.flowControl == 'dsrdtrrtscts': + mySerial.dsrdtr = True try: - mySerial.write(self.hpgl) + mySerial.open() except Exception as inst: - if inst.args[0] == 'Write timeout': - inkex.errormsg(_("Could not send data. Please check that your plotter is running, connected and the settings are correct.")) + if 'ould not open port' in inst.args[0]: + inkex.errormsg(_("Could not open port. Please check that your plotter is running, connected and the settings are correct.")) + return else: type, value, traceback = sys.exc_info() - raise ValueError, ("", type, value), traceback - # Read back 2 chars to avoid plotter not plotting last command (I have no idea why this is necessary) - mySerial.read(2) + raise ValueError, ('', type, value), traceback + mySerial.write(self.hpgl) mySerial.close() if __name__ == '__main__': - # Raise recursion limit to avoid exceptions on big documents - sys.setrecursionlimit(20000) # start extension e = MyEffect() e.affect() diff --git a/src/2geom/sbasis.h b/src/2geom/sbasis.h index e201f16ec..ca864ac7c 100644 --- a/src/2geom/sbasis.h +++ b/src/2geom/sbasis.h @@ -74,14 +74,16 @@ class SBasis{ public: // As part of our migration away from SBasis isa vector we provide this minimal set of vector interface methods. size_t size() const {return d.size();} + typedef std::vector<Linear>::iterator iterator; + typedef std::vector<Linear>::const_iterator const_iterator; Linear operator[](unsigned i) const { return d[i]; } Linear& operator[](unsigned i) { return d.at(i); } - Linear const* begin() const { return (Linear const*)&*d.begin();} - Linear const* end() const { return (Linear const*)&*d.end();} - Linear* begin() { return (Linear*)&*d.begin();} - Linear* end() { return (Linear*)&*d.end();} + const_iterator begin() const { return d.begin();} + const_iterator end() const { return d.end();} + iterator begin() { return d.begin();} + iterator end() { return d.end();} bool empty() const {return d.empty();} Linear &back() {return d.back();} Linear const &back() const {return d.back();} @@ -90,8 +92,7 @@ public: void resize(unsigned n, Linear const& l) { d.resize(n, l);} void reserve(unsigned n) { d.reserve(n);} void clear() {d.clear();} - void insert(Linear* before, const Linear* src_begin, const Linear* src_end) { d.insert(std::vector<Linear>::iterator(before), src_begin, src_end);} - //void insert(Linear* aa, Linear* bb, Linear* cc} { d.insert(aa, bb, cc);} + void insert(iterator before, const_iterator src_begin, const_iterator src_end) { d.insert(before, src_begin, src_end);} Linear& at(unsigned i) { return d.at(i);} //void insert(Linear* before, int& n, Linear const &l) { d.insert(std::vector<Linear>::iterator(before), n, l);} bool operator==(SBasis const&B) const { return d == B.d;} diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 32bcf19a7..54b15d342 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -77,7 +77,6 @@ set(sp_SRC sp-tspan.cpp sp-use-reference.cpp sp-use.cpp - spiral-context.cpp splivarot.cpp @@ -167,19 +166,15 @@ set(sp_SRC ) set(inkscape_SRC - arc-context.cpp attributes.cpp axis-manip.cpp - box3d-context.cpp box3d-side.cpp box3d.cpp color-profile.cpp color.cpp - common-context.cpp composite-undo-stack-observer.cpp conditions.cpp conn-avoid-ref.cpp - connector-context.cpp console-output-undo-observer.cpp context-fns.cpp desktop-events.cpp @@ -193,26 +188,19 @@ set(inkscape_SRC document.cpp doxygen-main.cpp draw-anchor.cpp - draw-context.cpp - dropper-context.cpp - dyna-draw-context.cpp ege-adjustment-action.cpp ege-color-prof-tracker.cpp ege-output-action.cpp ege-select-one-action.cpp - eraser-context.cpp - event-context.cpp event-log.cpp extract-uri.cpp file.cpp filter-chemistry.cpp filter-enums.cpp - flood-context.cpp gc-anchored.cpp gc-finalized.cpp gc.cpp gradient-chemistry.cpp - gradient-context.cpp gradient-drag.cpp graphlayout.cpp guide-snapper.cpp @@ -232,12 +220,9 @@ set(inkscape_SRC layer-model.cpp line-geometry.cpp line-snapper.cpp - lpe-tool-context.cpp main-cmdlineact.cpp marker.cpp - measure-context.cpp media.cpp - mesh-context.cpp message-context.cpp message-stack.cpp mod360.cpp @@ -245,8 +230,6 @@ set(inkscape_SRC object-hierarchy.cpp object-snapper.cpp path-chemistry.cpp - pen-context.cpp - pencil-context.cpp persp3d-reference.cpp persp3d.cpp perspective-line.cpp @@ -256,13 +239,11 @@ set(inkscape_SRC profile-manager.cpp proj_pt.cpp rdf.cpp - rect-context.cpp removeoverlap.cpp resource-manager.cpp rubberband.cpp satisfied-guide-cns.cpp selcue.cpp - select-context.cpp selection-chemistry.cpp selection-describer.cpp selection.cpp @@ -276,17 +257,13 @@ set(inkscape_SRC snapped-line.cpp snapped-point.cpp snapper.cpp - spray-context.cpp - star-context.cpp style.cpp svg-view-widget.cpp svg-view.cpp text-chemistry.cpp - text-context.cpp text-editing.cpp tools-switch.cpp transf_mat_3x4.cpp - tweak-context.cpp unclump.cpp unicoderange.cpp uri-references.cpp @@ -294,20 +271,16 @@ set(inkscape_SRC vanishing-point.cpp verbs.cpp version.cpp - zoom-context.cpp - # ------- # Headers MultiPrinter.h PylogFormatter.h TRPIFormatter.h - arc-context.h attributes-test.h attributes.h axis-manip.h bad-uri-exception.h - box3d-context.h box3d-side.h box3d.h cms-color-types.h @@ -318,12 +291,10 @@ set(inkscape_SRC color-rgba.h color.h colorspace.h - common-context.h composite-undo-stack-observer.h conditions.h conn-avoid-ref.h connection-pool.h - connector-context.h console-output-undo-observer.h context-fns.h decimal-round.h @@ -339,16 +310,11 @@ set(inkscape_SRC document-undo.h document.h draw-anchor.h - draw-context.h - dropper-context.h - dyna-draw-context.h ege-adjustment-action.h ege-color-prof-tracker.h ege-output-action.h ege-select-one-action.h enums.h - eraser-context.h - event-context.h event-log.h event.h extract-uri-test.h @@ -358,7 +324,6 @@ set(inkscape_SRC fill-or-stroke.h filter-chemistry.h filter-enums.h - flood-context.h gc-alloc.h gc-allocator.h gc-anchored.h @@ -367,7 +332,6 @@ set(inkscape_SRC gc-managed.h gc-soft-ptr.h gradient-chemistry.h - gradient-context.h gradient-drag.h graphlayout.h guide-snapper.h @@ -393,15 +357,12 @@ set(inkscape_SRC layer-model.h line-geometry.h line-snapper.h - lpe-tool-context.h macros.h main-cmdlineact.h marker-test.h marker.h - measure-context.h media.h menus-skeleton.h - mesh-context.h message-context.h message-stack.h message.h @@ -414,8 +375,6 @@ set(inkscape_SRC object-snapper.h path-chemistry.h path-prefix.h - pen-context.h - pencil-context.h persp3d-reference.h persp3d.h perspective-line.h @@ -427,7 +386,6 @@ set(inkscape_SRC profile-manager.h proj_pt.h rdf.h - rect-context.h registrytool.h remove-last.h removeoverlap.h @@ -438,7 +396,6 @@ set(inkscape_SRC rubberband.h satisfied-guide-cns.h selcue.h - select-context.h selection-chemistry.h selection-describer.h selection.h @@ -454,10 +411,7 @@ set(inkscape_SRC snapped-line.h snapped-point.h snapper.h - spiral-context.h splivarot.h - spray-context.h - star-context.h streq.h strneq.h style-test.h @@ -468,13 +422,11 @@ set(inkscape_SRC syseq.h test-helpers.h text-chemistry.h - text-context.h text-editing.h text-tag-attributes.h tool-factory.h tools-switch.h transf_mat_3x4.h - tweak-context.h unclump.h undo-stack-observer.h unicoderange.h @@ -484,7 +436,6 @@ set(inkscape_SRC verbs-test.h verbs.h version.h - zoom-context.h ) if(WIN32) diff --git a/src/Makefile.am b/src/Makefile.am index 411e3cf86..2f91c3c24 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -134,6 +134,7 @@ include ui/Makefile_insert include ui/cache/Makefile_insert include ui/dialog/Makefile_insert include ui/tool/Makefile_insert +include ui/tools/Makefile_insert include ui/view/Makefile_insert include ui/widget/Makefile_insert include util/Makefile_insert diff --git a/src/Makefile_insert b/src/Makefile_insert index e719f8894..5e441560a 100644 --- a/src/Makefile_insert +++ b/src/Makefile_insert @@ -4,14 +4,12 @@ ink_common_sources += \ util/find-last-if.h \ util/longest-common-suffix.h \ remove-last.h \ - arc-context.cpp arc-context.h \ attributes.cpp attributes.h \ attribute-rel-svg.cpp attribute-rel-svg.h \ attribute-rel-css.cpp attribute-rel-css.h \ attribute-rel-util.cpp attribute-rel-util.h \ axis-manip.cpp axis-manip.h \ bad-uri-exception.h \ - box3d-context.cpp box3d-context.h \ box3d.cpp box3d.h \ box3d-side.cpp box3d-side.h \ brokenimage.xpm \ @@ -22,13 +20,11 @@ ink_common_sources += \ color-profile-cms-fns.h \ color-rgba.h \ colorspace.h \ - common-context.cpp common-context.h \ composite-undo-stack-observer.cpp \ composite-undo-stack-observer.h \ conditions.cpp conditions.h \ conn-avoid-ref.cpp conn-avoid-ref.h \ connection-pool.h \ - connector-context.cpp connector-context.h \ console-output-undo-observer.h console-output-undo-observer.cpp \ context-fns.cpp context-fns.h \ decimal-round.h \ @@ -43,16 +39,11 @@ ink_common_sources += \ document-undo.cpp document-undo.h \ doxygen-main.cpp \ draw-anchor.cpp draw-anchor.h \ - draw-context.cpp draw-context.h \ - dropper-context.cpp dropper-context.h \ - dyna-draw-context.cpp dyna-draw-context.h \ ege-adjustment-action.cpp ege-adjustment-action.h \ ege-color-prof-tracker.cpp ege-color-prof-tracker.h \ ege-output-action.cpp ege-output-action.h \ ege-select-one-action.cpp ege-select-one-action.h \ enums.h \ - eraser-context.cpp eraser-context.h \ - event-context.cpp event-context.h \ event-log.cpp event-log.h event.h \ extract-uri.cpp extract-uri.h \ factory.h \ @@ -60,7 +51,6 @@ ink_common_sources += \ fill-or-stroke.h \ filter-chemistry.cpp filter-chemistry.h \ filter-enums.cpp filter-enums.h \ - flood-context.cpp flood-context.h \ gc-alloc.h \ gc-anchored.h gc-anchored.cpp \ gc-core.h \ @@ -69,7 +59,6 @@ ink_common_sources += \ gc-managed.h \ gc-soft-ptr.h \ gradient-chemistry.cpp gradient-chemistry.h \ - gradient-context.cpp gradient-context.h \ gradient-drag.cpp gradient-drag.h \ graphlayout.cpp graphlayout.h \ guide-snapper.cpp guide-snapper.h \ @@ -96,13 +85,11 @@ ink_common_sources += \ layer-model.cpp layer-model.h \ line-geometry.cpp line-geometry.h \ line-snapper.cpp line-snapper.h \ - lpe-tool-context.cpp lpe-tool-context.h \ macros.h \ main-cmdlineact.cpp main-cmdlineact.h \ marker.cpp marker.h \ media.cpp media.h \ menus-skeleton.h \ - mesh-context.cpp mesh-context.h \ message-context.cpp message-context.h \ message.h \ message-stack.cpp message-stack.h \ @@ -113,8 +100,6 @@ ink_common_sources += \ object-snapper.cpp object-snapper.h \ path-chemistry.cpp path-chemistry.h \ path-prefix.h \ - pencil-context.cpp pencil-context.h \ - pen-context.cpp pen-context.h \ persp3d.cpp persp3d.h \ persp3d-reference.cpp persp3d-reference.h \ perspective-line.cpp perspective-line.h \ @@ -126,14 +111,12 @@ ink_common_sources += \ proj_pt.cpp proj_pt.h \ removeoverlap.cpp removeoverlap.h \ rdf.cpp rdf.h \ - rect-context.cpp rect-context.h \ resource-manager.cpp resource-manager.h \ require-config.h \ round.h \ rubberband.cpp rubberband.h \ satisfied-guide-cns.cpp satisfied-guide-cns.h \ selcue.cpp selcue.h \ - select-context.cpp select-context.h \ selection-chemistry.cpp selection-chemistry.h \ selection.cpp selection.h \ selection-describer.cpp selection-describer.h \ @@ -177,7 +160,6 @@ ink_common_sources += \ sp-guide-constraint.h \ sp-guide.cpp sp-guide.h \ sp-image.cpp sp-image.h \ - spiral-context.cpp spiral-context.h \ sp-item.cpp sp-item.h \ sp-item-group.cpp sp-item-group.h \ sp-item-notify-moveto.cpp sp-item-notify-moveto.h \ @@ -226,8 +208,6 @@ ink_common_sources += \ sp-tspan.cpp sp-tspan.h \ sp-use.cpp sp-use.h \ sp-use-reference.cpp sp-use-reference.h \ - spray-context.cpp spray-context.h \ - star-context.cpp star-context.h \ streq.h \ strneq.h \ style.cpp style.h \ @@ -236,13 +216,11 @@ ink_common_sources += \ svg-view-widget.cpp svg-view-widget.h \ syseq.h \ text-chemistry.cpp text-chemistry.h \ - text-context.cpp text-context.h \ text-editing.cpp text-editing.h \ text-tag-attributes.h \ tool-factory.h \ tools-switch.cpp tools-switch.h \ transf_mat_3x4.cpp transf_mat_3x4.h \ - tweak-context.h tweak-context.cpp \ unclump.cpp unclump.h \ undo-stack-observer.h \ unicoderange.cpp unicoderange.h \ @@ -250,9 +228,7 @@ ink_common_sources += \ uri-references.cpp uri-references.h \ vanishing-point.cpp vanishing-point.h \ verbs.cpp verbs.h \ - version.cpp version.h \ - zoom-context.cpp zoom-context.h \ - measure-context.cpp measure-context.h + version.cpp version.h # Additional dependencies diff --git a/src/box3d-side.cpp b/src/box3d-side.cpp index 040b031c6..7b5ddc00e 100644 --- a/src/box3d-side.cpp +++ b/src/box3d-side.cpp @@ -19,7 +19,7 @@ #include "attributes.h" #include "inkscape.h" #include "persp3d.h" -#include "box3d-context.h" +#include "ui/tools/box3d-tool.h" #include "preferences.h" #include "desktop-style.h" #include "box3d.h" diff --git a/src/box3d.cpp b/src/box3d.cpp index 32442746d..13a8d0e3e 100644 --- a/src/box3d.cpp +++ b/src/box3d.cpp @@ -21,7 +21,7 @@ #include "box3d.h" #include "box3d-side.h" -#include "box3d-context.h" +#include "ui/tools/box3d-tool.h" #include "proj_pt.h" #include "transf_mat_3x4.h" #include "perspective-line.h" diff --git a/src/context-fns.cpp b/src/context-fns.cpp index 81eb6fdb5..1e30e51de 100644 --- a/src/context-fns.cpp +++ b/src/context-fns.cpp @@ -9,7 +9,7 @@ #include "message-stack.h" #include "context-fns.h" #include "snap.h" -#include "event-context.h" +#include "ui/tools/tool-base.h" #include "sp-namedview.h" #include "display/snap-indicator.h" @@ -217,14 +217,14 @@ Geom::Rect Inkscape::snap_rectangular_box(SPDesktop const *desktop, SPItem *item -Geom::Point Inkscape::setup_for_drag_start(SPDesktop *desktop, SPEventContext* ec, GdkEvent *ev) +Geom::Point Inkscape::setup_for_drag_start(SPDesktop *desktop, Inkscape::UI::Tools::ToolBase* ec, GdkEvent *ev) { ec->xp = static_cast<gint>(ev->button.x); ec->yp = static_cast<gint>(ev->button.y); ec->within_tolerance = true; Geom::Point const p(ev->button.x, ev->button.y); - ec->item_to_select = sp_event_context_find_item(desktop, p, ev->button.state & GDK_MOD1_MASK, TRUE); + ec->item_to_select = Inkscape::UI::Tools::sp_event_context_find_item(desktop, p, ev->button.state & GDK_MOD1_MASK, TRUE); return ec->desktop->w2d(p); } diff --git a/src/context-fns.h b/src/context-fns.h index 43a45e4c7..bd48e5fb8 100644 --- a/src/context-fns.h +++ b/src/context-fns.h @@ -16,7 +16,16 @@ class SPDesktop; class SPItem; -class SPEventContext; + +namespace Inkscape { +namespace UI { +namespace Tools { + +class ToolBase; + +} +} +} const double goldenratio = 1.61803398874989484820; // golden ratio @@ -30,7 +39,7 @@ extern bool have_viable_layer(SPDesktop *desktop, MessageContext *message); extern bool have_viable_layer(SPDesktop *desktop, MessageStack *message); Geom::Rect snap_rectangular_box(SPDesktop const *desktop, SPItem *item, Geom::Point const &pt, Geom::Point const ¢er, int state); -Geom::Point setup_for_drag_start(SPDesktop *desktop, SPEventContext* ec, GdkEvent *ev); +Geom::Point setup_for_drag_start(SPDesktop *desktop, Inkscape::UI::Tools::ToolBase* ec, GdkEvent *ev); } diff --git a/src/desktop-events.cpp b/src/desktop-events.cpp index 5cb26abc0..4f8f7889f 100644 --- a/src/desktop-events.cpp +++ b/src/desktop-events.cpp @@ -32,7 +32,7 @@ #include "display/snap-indicator.h" #include "document.h" #include "document-undo.h" -#include "event-context.h" +#include "ui/tools/tool-base.h" #include "helper/action.h" #include "message-context.h" #include "preferences.h" @@ -245,7 +245,7 @@ static gint sp_dt_ruler_event(GtkWidget *widget, GdkEvent *event, SPDesktopWidge int sp_dt_hruler_event(GtkWidget *widget, GdkEvent *event, SPDesktopWidget *dtw) { if (event->type == GDK_MOTION_NOTIFY) { - sp_event_context_snap_delay_handler(dtw->desktop->event_context, (gpointer) widget, (gpointer) dtw, (GdkEventMotion *)event, DelayedSnapEvent::GUIDE_HRULER); + sp_event_context_snap_delay_handler(dtw->desktop->event_context, (gpointer) widget, (gpointer) dtw, (GdkEventMotion *)event, Inkscape::UI::Tools::DelayedSnapEvent::GUIDE_HRULER); } return sp_dt_ruler_event(widget, event, dtw, true); } @@ -253,7 +253,7 @@ int sp_dt_hruler_event(GtkWidget *widget, GdkEvent *event, SPDesktopWidget *dtw) int sp_dt_vruler_event(GtkWidget *widget, GdkEvent *event, SPDesktopWidget *dtw) { if (event->type == GDK_MOTION_NOTIFY) { - sp_event_context_snap_delay_handler(dtw->desktop->event_context, (gpointer) widget, (gpointer) dtw, (GdkEventMotion *)event, DelayedSnapEvent::GUIDE_VRULER); + sp_event_context_snap_delay_handler(dtw->desktop->event_context, (gpointer) widget, (gpointer) dtw, (GdkEventMotion *)event, Inkscape::UI::Tools::DelayedSnapEvent::GUIDE_VRULER); } return sp_dt_ruler_event(widget, event, dtw, false); } @@ -324,7 +324,7 @@ gint sp_dt_guide_event(SPCanvasItem *item, GdkEvent *event, gpointer data) event->motion.y); Geom::Point motion_dt(desktop->w2d(motion_w)); - sp_event_context_snap_delay_handler(desktop->event_context, (gpointer) item, data, (GdkEventMotion *)event, DelayedSnapEvent::GUIDE_HANDLER); + sp_event_context_snap_delay_handler(desktop->event_context, (gpointer) item, data, (GdkEventMotion *)event, Inkscape::UI::Tools::DelayedSnapEvent::GUIDE_HANDLER); // This is for snapping while dragging existing guidelines. New guidelines, // which are dragged off the ruler, are being snapped in sp_dt_ruler_event @@ -525,7 +525,7 @@ gint sp_dt_guide_event(SPCanvasItem *item, GdkEvent *event, gpointer data) desktop->guidesMessageContext()->clear(); break; case GDK_KEY_PRESS: - switch (get_group0_keyval (&event->key)) { + switch (Inkscape::UI::Tools::get_group0_keyval (&event->key)) { case GDK_KEY_Delete: case GDK_KEY_KP_Delete: case GDK_KEY_BackSpace: @@ -558,7 +558,7 @@ gint sp_dt_guide_event(SPCanvasItem *item, GdkEvent *event, gpointer data) } break; case GDK_KEY_RELEASE: - switch (get_group0_keyval (&event->key)) { + switch (Inkscape::UI::Tools::get_group0_keyval (&event->key)) { case GDK_KEY_Shift_L: case GDK_KEY_Shift_R: GdkCursor *guide_cursor; diff --git a/src/desktop-handles.cpp b/src/desktop-handles.cpp index ebfa22c3e..8fa7ad986 100644 --- a/src/desktop-handles.cpp +++ b/src/desktop-handles.cpp @@ -15,14 +15,6 @@ #include "desktop.h" #include "desktop-handles.h" -//SPEventContext * -//sp_desktop_event_context (SPDesktop const * desktop) -//{ -// g_return_val_if_fail (desktop != NULL, NULL); -// -// return desktop->event_context; -//} - Inkscape::Selection * sp_desktop_selection (SPDesktop const * desktop) { diff --git a/src/desktop-handles.h b/src/desktop-handles.h index 9413f075b..70a8c8b5f 100644 --- a/src/desktop-handles.h +++ b/src/desktop-handles.h @@ -16,7 +16,17 @@ class SPDesktop; class SPDocument; -class SPEventContext; + +namespace Inkscape { +namespace UI { +namespace Tools { + +class ToolBase; + +} +} +} + class SPNamedView; struct SPCanvas; struct SPCanvasGroup; @@ -34,7 +44,7 @@ namespace Inkscape { #define SP_COORDINATES_UNDERLINE_X (1 << Geom::X) #define SP_COORDINATES_UNDERLINE_Y (1 << Geom::Y) -//SPEventContext * sp_desktop_event_context (SPDesktop const * desktop); +//ToolBase * sp_desktop_event_context (SPDesktop const * desktop); Inkscape::Selection * sp_desktop_selection (SPDesktop const * desktop); SPDocument * sp_desktop_document (SPDesktop const * desktop); SPCanvas * sp_desktop_canvas (SPDesktop const * desktop); diff --git a/src/desktop-style.cpp b/src/desktop-style.cpp index f8fad9711..00b9db7d0 100644 --- a/src/desktop-style.cpp +++ b/src/desktop-style.cpp @@ -42,7 +42,7 @@ #include "xml/sp-css-attr.h" #include "libnrtype/font-style-to-pos.h" #include "sp-path.h" -#include "event-context.h" +#include "ui/tools/tool-base.h" #include "desktop-style.h" #include "svg/svg-icc-color.h" diff --git a/src/desktop.cpp b/src/desktop.cpp index ec446e0f0..e24d7eef0 100644 --- a/src/desktop.cpp +++ b/src/desktop.cpp @@ -33,7 +33,7 @@ #include <2geom/transforms.h> #include <2geom/rect.h> -#include "box3d-context.h" +#include "ui/tools/box3d-tool.h" #include "color.h" #include "desktop-events.h" #include "desktop.h" @@ -64,19 +64,20 @@ #include "message-stack.h" #include "preferences.h" #include "resource-manager.h" -#include "select-context.h" +#include "ui/tools/select-tool.h" #include "selection.h" #include "sp-item-group.h" #include "sp-item-group.h" #include "sp-namedview.h" #include "sp-root.h" #include "sp-defs.h" +#include "tool-factory.h" #include "widgets/desktop-widget.h" #include "xml/repr.h" #include "helper/action.h" //sp_action_perform // TODO those includes are only for node tool quick zoom. Remove them after fixing it. -#include "ui/tool/node-tool.h" +#include "ui/tools/node-tool.h" #include "ui/tool/control-point-selection.h" namespace Inkscape { namespace XML { class Node; }} @@ -229,14 +230,7 @@ SPDesktop::init (SPNamedView *nv, SPCanvas *aCanvas, Inkscape::UI::View::EditWid tempgroup = (SPCanvasGroup *) sp_canvas_item_new (main, SP_TYPE_CANVAS_GROUP, NULL); controls = (SPCanvasGroup *) sp_canvas_item_new (main, SP_TYPE_CANVAS_GROUP, NULL); - /* Push select tool to the bottom of stack */ - /** \todo - * FIXME: this is the only call to this. Everything else seems to just - * call "set" instead of "push". Can we assume that there is only one - * context ever? - */ - //push_event_context (SP_TYPE_SELECT_CONTEXT, "/tools/select", SP_EVENT_CONTEXT_STATIC); - //set_event_context(SP_TYPE_SELECT_CONTEXT, "/tools/select"); + // Set the select tool as the active tool. set_event_context2("/tools/select"); // display rect and zoom are now handled in sp_desktop_widget_realize() @@ -361,18 +355,10 @@ void SPDesktop::destroy() g_signal_handlers_disconnect_by_func(G_OBJECT (main), (gpointer) G_CALLBACK(sp_desktop_root_handler), this); g_signal_handlers_disconnect_by_func(G_OBJECT (drawing), (gpointer) G_CALLBACK(_arena_handler), this); -// while (event_context) { -// SPEventContext *ec = event_context; -// event_context = ec->next; -// sp_event_context_finish (ec); -// g_object_unref (G_OBJECT (ec)); -// } - //sp_event_context_finish(event_context); - event_context->finish(); - //g_object_unref(G_OBJECT(event_context)); if (event_context) { + event_context->finish(); delete event_context; - event_context = 0; + event_context = NULL; } delete layers; @@ -401,7 +387,7 @@ SPDesktop::~SPDesktop() } -SPEventContext* SPDesktop::getEventContext() const { +Inkscape::UI::Tools::ToolBase* SPDesktop::getEventContext() const { return event_context; } @@ -668,92 +654,33 @@ SPDesktop::change_document (SPDocument *theDocument) _document_replaced_signal.emit (this, theDocument); } - -#include "tool-factory.h" - +/** + * Replaces the currently active tool with a new one. + */ void SPDesktop::set_event_context2(const std::string& toolName) { - SPEventContext* ec_old = event_context; - - if (ec_old) { - ec_old->deactivate(); - } - - SPEventContext* ec_new = ToolFactory::instance().createObject(toolName); - ec_new->desktop = this; - ec_new->message_context = new Inkscape::MessageContext(this->messageStack()); + Inkscape::UI::Tools::ToolBase* new_tool = ToolFactory::instance().createObject(toolName); + new_tool->desktop = this; + new_tool->message_context = new Inkscape::MessageContext(this->messageStack()); - event_context = ec_new; + Inkscape::UI::Tools::ToolBase* old_tool = event_context; + event_context = new_tool; - if (ec_old) { - ec_old->finish(); - delete ec_old; + if (old_tool) { + old_tool->finish(); + delete old_tool; } - ec_new->setup(); + new_tool->setup(); - sp_event_context_activate(event_context); + // Make sure no delayed snapping events are carried over after switching tools + // (this is only an additional safety measure against sloppy coding, because each + // tool should take care of this by itself) + sp_event_context_discard_delayed_snap_event(event_context); _event_context_changed_signal.emit(this, event_context); } /** - * Make desktop switch event contexts. - */ -//void -//SPDesktop::set_event_context (GType type, const gchar *config) -//{ -// //SPEventContext *ec; -// //while (event_context) { -// //ec = event_context; -// sp_event_context_deactivate (event_context); -// // we have to keep event_context valid during destruction - otherwise writing -// // destructors is next to impossible -// // SPEventContext *next = ec->next; -// sp_event_context_finish (event_context); -// g_object_unref (G_OBJECT (event_context)); -// // event_context = next; -// //} -// -// // The event_context will be null. This means that it will be impossible -// // to process any event invoked by the lines below. See for example bug -// // LP #622350. Cutting and undoing again in the node tool resets the event -// // context to the node tool. In this bug the line bellow invokes GDK_LEAVE_NOTIFY -// // events which cannot be handled and must be discarded. -// event_context = sp_event_context_new (type, this, config, SP_EVENT_CONTEXT_STATIC); -// // ec->next = event_context; -// //event_context = ec; -// // Now the event_context has been set again and we can process all events again -// sp_event_context_activate (event_context); -// _event_context_changed_signal.emit (this, event_context); -//} - -/** - * Push event context onto desktop's context stack. - */ -//void -//SPDesktop::push_event_context (GType type, const gchar *config, unsigned int key) -//{ -// SPEventContext *ref, *ec; -// -// if (event_context && event_context->key == key) return; -// ref = event_context; -// while (ref && ref->next && ref->next->key != key) ref = ref->next; -// if (ref && ref->next) { -// ec = ref->next; -// ref->next = ec->next; -// sp_event_context_finish (ec); -// g_object_unref (G_OBJECT (ec)); -// } -// -// if (event_context) sp_event_context_deactivate (event_context); -// ec = sp_event_context_new (type, this, config, key); -// ec->next = event_context; -// event_context = ec; -// sp_event_context_activate (ec); -// _event_context_changed_signal.emit (this, ec); -//} - -/** * Sets the coordinate status to a given point */ void @@ -976,7 +903,7 @@ void SPDesktop::zoom_quick(bool enable) // TODO This needs to migrate into the node tool, but currently the design // of this method is sufficiently wrong to prevent this. if (!zoomed && INK_IS_NODE_TOOL(event_context)) { - InkNodeTool *nt = static_cast<InkNodeTool*>(event_context); + Inkscape::UI::Tools::NodeTool *nt = static_cast<Inkscape::UI::Tools::NodeTool*>(event_context); if (!nt->_selected_nodes->empty()) { Geom::Rect nodes = *nt->_selected_nodes->bounds(); double area = nodes.area(); @@ -1945,7 +1872,7 @@ SPDesktop::show_dialogs() // void // SPDesktop::pop_event_context (unsigned int key) // { -// SPEventContext *ec = NULL; +// ToolBase *ec = NULL; // // if (event_context && event_context->key == key) { // g_return_if_fail (event_context); @@ -1957,7 +1884,7 @@ SPDesktop::show_dialogs() // _event_context_changed_signal.emit (this, ec); // } // -// SPEventContext *ref = event_context; +// ToolBase *ref = event_context; // while (ref && ref->next && ref->next->key != key) // ref = ref->next; // diff --git a/src/desktop.h b/src/desktop.h index 938c2153a..faaa7e3a5 100644 --- a/src/desktop.h +++ b/src/desktop.h @@ -41,7 +41,17 @@ class SPCSSAttr; struct SPCanvas; struct SPCanvasItem; struct SPCanvasGroup; -class SPEventContext; + +namespace Inkscape { +namespace UI { +namespace Tools { + +class ToolBase; + +} +} +} + class SPItem; class SPNamedView; class SPObject; @@ -110,7 +120,7 @@ namespace Inkscape { * data, like grid and guideline placement, snapping options and so on. * * Associated with each SPDesktop are the two most important editing - * related objects - SPSelection and SPEventContext. + * related objects - SPSelection and ToolBase. * * Sodipodi keeps track of the active desktop and invokes notification * signals whenever it changes. UI elements can use these to update their @@ -128,14 +138,14 @@ public: Inkscape::LayerModel *layers; /// current selection; will never generally be NULL Inkscape::Selection *selection; - SPEventContext *event_context; + Inkscape::UI::Tools::ToolBase *event_context; Inkscape::LayerManager *layer_manager; Inkscape::EventLog *event_log; DocumentInterface *dbus_document_interface; Inkscape::Display::TemporaryItemList *temporary_item_list; Inkscape::Display::SnapIndicator *snapindicator; - SPEventContext* getEventContext() const; + Inkscape::UI::Tools::ToolBase* getEventContext() const; Inkscape::Selection* getSelection() const; SPDocument* getDocument() const; SPCanvas* getCanvas() const; @@ -207,7 +217,7 @@ public: return _document_replaced_signal.connect (slot); } - sigc::connection connectEventContextChanged (const sigc::slot<void,SPDesktop*,SPEventContext*> & slot) + sigc::connection connectEventContextChanged (const sigc::slot<void,SPDesktop*,Inkscape::UI::Tools::ToolBase*> & slot) { return _event_context_changed_signal.connect (slot); } @@ -425,7 +435,7 @@ private: sigc::signal<void,SPDesktop*,SPDocument*> _document_replaced_signal; sigc::signal<void> _activate_signal; sigc::signal<void> _deactivate_signal; - sigc::signal<void,SPDesktop*,SPEventContext*> _event_context_changed_signal; + sigc::signal<void,SPDesktop*,Inkscape::UI::Tools::ToolBase*> _event_context_changed_signal; sigc::signal<void, gpointer> _tool_subselection_changed; sigc::connection _activate_connection; diff --git a/src/dialogs/dialog-events.cpp b/src/dialogs/dialog-events.cpp index 4fbf26f94..a12e3eafc 100644 --- a/src/dialogs/dialog-events.cpp +++ b/src/dialogs/dialog-events.cpp @@ -27,7 +27,7 @@ #include "desktop.h" #include "inkscape-private.h" #include "preferences.h" -#include "event-context.h" +#include "ui/tools/tool-base.h" #include "dialog-events.h" @@ -107,7 +107,7 @@ sp_dialog_event_handler (GtkWindow *win, GdkEvent *event, gpointer data) case GDK_KEY_PRESS: - switch (get_group0_keyval (&event->key)) { + switch (Inkscape::UI::Tools::get_group0_keyval (&event->key)) { case GDK_KEY_Escape: sp_dialog_defocus (win); ret = TRUE; diff --git a/src/display/drawing-context.h b/src/display/drawing-context.h index d4f0dbfc3..35be9a86b 100644 --- a/src/display/drawing-context.h +++ b/src/display/drawing-context.h @@ -111,6 +111,10 @@ public: void setSource(DrawingSurface *s); void setSourceCheckerboard(); + void patternSetFilter(cairo_filter_t filter) { + cairo_pattern_set_filter(cairo_get_source(_ct), filter); + } + Geom::Rect targetLogicalBounds() const; cairo_t *raw() { return _ct; } diff --git a/src/display/drawing-image.cpp b/src/display/drawing-image.cpp index a9c0499c2..1b9214c49 100644 --- a/src/display/drawing-image.cpp +++ b/src/display/drawing-image.cpp @@ -108,13 +108,6 @@ unsigned DrawingImage::_renderItem(DrawingContext &ct, Geom::IntRect const &/*ar if (!outline) { if (!_pixbuf) return RENDER_OK; - - // if (_style) { - // _style->image_rendering.computed - // See: http://www.w3.org/TR/SVG/painting.html#ImageRenderingProperty - // http://www.w3.org/TR/css4-images/#the-image-rendering - // style.h/style.cpp - // } Inkscape::DrawingContext::Save save(ct); ct.transform(_ctm); @@ -126,6 +119,24 @@ unsigned DrawingImage::_renderItem(DrawingContext &ct, Geom::IntRect const &/*ar ct.scale(_scale); ct.setSource(_pixbuf->getSurfaceRaw(), 0, 0); + if (_style) { + // See: http://www.w3.org/TR/SVG/painting.html#ImageRenderingProperty + // http://www.w3.org/TR/css4-images/#the-image-rendering + // style.h/style.cpp + switch (_style->image_rendering.computed) { + case SP_CSS_COLOR_RENDERING_AUTO: + // Do nothing + break; + case SP_CSS_COLOR_RENDERING_OPTIMIZEQUALITY: + ct.patternSetFilter( CAIRO_FILTER_BEST ); + break; + case SP_CSS_COLOR_RENDERING_OPTIMIZESPEED: + default: + ct.patternSetFilter( CAIRO_FILTER_NEAREST ); + break; + } + } + ct.paint(_opacity); } else { // outline; draw a rect instead diff --git a/src/display/nr-filter-image.cpp b/src/display/nr-filter-image.cpp index 4ca4cd07c..92bb9dcaa 100644 --- a/src/display/nr-filter-image.cpp +++ b/src/display/nr-filter-image.cpp @@ -163,6 +163,10 @@ void FilterImage::render_cairo(FilterSlot &slot) broken_ref = false; } + if (broken_ref) { + return; + } + cairo_surface_t *image_surface = image->getSurfaceRaw(); Geom::Rect sa = slot.get_slot_area(); diff --git a/src/dom/svgimpl.cpp b/src/dom/svgimpl.cpp index 4372e1b87..0f420dc87 100644 --- a/src/dom/svgimpl.cpp +++ b/src/dom/svgimpl.cpp @@ -81,7 +81,7 @@ static double s2d(const DOMString &s) typedef struct { const char *name; - int type; + unsigned int type; } SVGTableEntry; @@ -119,7 +119,7 @@ SVGTableEntry interfaceTable[] = { "SVGUnitTypes", SVG_UNIT_TYPES }, { "SVGURIReference", SVG_URI_REFERENCE }, { "SVGViewSpec", SVG_VIEW_SPEC }, - { "SVGZoomAndPan", static_cast<int>(SVG_ZOOM_AND_PAN)} + { "SVGZoomAndPan", SVG_ZOOM_AND_PAN } }; @@ -266,9 +266,9 @@ int svgInterfaceStrToEnum(const char *str) * Return the string corresponding to a given SVG element type enum * Return "unknown" if not found */ -const char *svgInterfaceEnumToStr(int type) +const char *svgInterfaceEnumToStr(unsigned int type) { - if (type < 1 || type > (int)SVG_ZOOM_AND_PAN) + if (type < 1 || type > SVG_ZOOM_AND_PAN) return "unknown"; SVGTableEntry *entry = interfaceTable; for (int i = 0 ; i < SVG_NR_INTERFACES ; i++) diff --git a/src/doxygen-main.cpp b/src/doxygen-main.cpp index e581b8708..6a5723bfd 100644 --- a/src/doxygen-main.cpp +++ b/src/doxygen-main.cpp @@ -258,27 +258,27 @@ namespace XML {} * * \section Event Context Class Hierarchy * - *- SPEventContext[\ref event-context.cpp, \ref event-context.h] - * - SPArcContext [\ref arc-context.cpp, \ref arc-context.h] + *- ToolBase[\ref event-context.cpp, \ref event-context.h] + * - ArcTool [\ref arc-context.cpp, \ref arc-context.h] * - SPDrawContext [\ref draw-context.cpp, \ref draw-context.h] - * - SPPenContext [\ref pen-context.cpp, \ref pen-context.h] - * - SPPencilContext [\ref pencil-context.cpp, \ref pencil-context.h] - * - SPConnectorContext [\ref connector-context.cpp, \ref connector-context.h, \ref sp-conn-end.cpp, \ref sp-conn-end-pair.cpp] - * - SPGradientContext [\ref gradient-context.cpp, \ref gradient-context.h, \ref gradient-drag.cpp, \ref gradient-toolbar.cpp] - * - SPRectContext [\ref rect-context.cpp, \ref rect-context.h] - * - SPSelectContext [\ref select-context.cpp, \ref select-context.h] - * - SPSpiralContext [\ref spiral-context.cpp, \ref spiral-context.h] - * - SPStarContext [\ref star-context.cpp, \ref star-context.h] + * - PenTool [\ref pen-context.cpp, \ref pen-context.h] + * - PencilTool [\ref pencil-context.cpp, \ref pencil-context.h] + * - ConnectorTool [\ref connector-context.cpp, \ref connector-context.h, \ref sp-conn-end.cpp, \ref sp-conn-end-pair.cpp] + * - GradientTool [\ref gradient-context.cpp, \ref gradient-context.h, \ref gradient-drag.cpp, \ref gradient-toolbar.cpp] + * - RectTool [\ref rect-context.cpp, \ref rect-context.h] + * - SelectTool [\ref select-context.cpp, \ref select-context.h] + * - SpiralTool [\ref spiral-context.cpp, \ref spiral-context.h] + * - StarTool [\ref star-context.cpp, \ref star-context.h] * - FloodContext [\ref flood-context.cpp, \ref flood-context.h] - * - Box3DContext [\ref box3d-context.cpp, \ref box3d-context.h] + * - Box3dTool [\ref box3d-context.cpp, \ref box3d-context.h] * * SPNodeContext [\ref node-context.cpp, \ref node-context.h] * - * SPZoomContext [\ref zoom-context.cpp, \ref zoom-context.h] + * ZoomTool [\ref zoom-context.cpp, \ref zoom-context.h] * - * SPDynaDrawContext [\ref dyna-draw-context.cpp, \ref dyna-draw-context.h] + * CalligraphicTool [\ref dyna-draw-context.cpp, \ref dyna-draw-context.h] * - * SPDropperContext [\ref dropper-context.cpp, \ref dropper-context.h] + * DropperTool [\ref dropper-context.cpp, \ref dropper-context.h] */ /** \page UI User Interface Classes and Files * diff --git a/src/draw-anchor.cpp b/src/draw-anchor.cpp index 2133d5de6..00db936e1 100644 --- a/src/draw-anchor.cpp +++ b/src/draw-anchor.cpp @@ -16,8 +16,8 @@ #include "draw-anchor.h" #include "desktop.h" #include "desktop-handles.h" -#include "event-context.h" -#include "lpe-tool-context.h" +#include "ui/tools/tool-base.h" +#include "ui/tools/lpe-tool.h" #include "display/sodipodi-ctrl.h" #include "display/curve.h" #include "ui/control-manager.h" @@ -30,15 +30,13 @@ using Inkscape::ControlManager; /** * Creates an anchor object and initializes it. */ -SPDrawAnchor *sp_draw_anchor_new(SPDrawContext *dc, SPCurve *curve, gboolean start, Geom::Point delta) +SPDrawAnchor *sp_draw_anchor_new(Inkscape::UI::Tools::FreehandBase *dc, SPCurve *curve, gboolean start, Geom::Point delta) { if (SP_IS_LPETOOL_CONTEXT(dc)) { // suppress all kinds of anchors in LPEToolContext return NULL; } - SPDesktop *dt = SP_EVENT_CONTEXT_DESKTOP(dc); - SPDrawAnchor *a = g_new(SPDrawAnchor, 1); a->dc = dc; @@ -47,7 +45,7 @@ SPDrawAnchor *sp_draw_anchor_new(SPDrawContext *dc, SPCurve *curve, gboolean sta a->start = start; a->active = FALSE; a->dp = delta; - a->ctrl = ControlManager::getManager().createControl(sp_desktop_controls(dt), Inkscape::CTRL_TYPE_ANCHOR); + a->ctrl = ControlManager::getManager().createControl(sp_desktop_controls(&dc->getDesktop()), Inkscape::CTRL_TYPE_ANCHOR); SP_CTRL(a->ctrl)->moveto(delta); @@ -77,10 +75,9 @@ SPDrawAnchor *sp_draw_anchor_destroy(SPDrawAnchor *anchor) */ SPDrawAnchor *sp_draw_anchor_test(SPDrawAnchor *anchor, Geom::Point w, gboolean activate) { - SPDesktop *dt = SP_EVENT_CONTEXT_DESKTOP(anchor->dc); SPCtrl *ctrl = SP_CTRL(anchor->ctrl); - if ( activate && ( Geom::LInfty( w - dt->d2w(anchor->dp) ) <= (ctrl->box.width() / 2.0) ) ) { + if ( activate && ( Geom::LInfty( w - anchor->dc->getDesktop().d2w(anchor->dp) ) <= (ctrl->box.width() / 2.0) ) ) { if (!anchor->active) { g_object_set(anchor->ctrl, "fill_color", FILL_COLOR_MOUSEOVER, NULL); anchor->active = TRUE; diff --git a/src/draw-anchor.h b/src/draw-anchor.h index 1ca2b9888..e7b252186 100644 --- a/src/draw-anchor.h +++ b/src/draw-anchor.h @@ -8,14 +8,23 @@ #include <glib.h> #include <2geom/point.h> -class SPDrawContext; +namespace Inkscape { +namespace UI { +namespace Tools { + +class FreehandBase; + +} +} +} + class SPCurve; struct SPCanvasItem; /// The drawing anchor. /// \todo Make this a regular knot, this will allow to set statusbar tips. struct SPDrawAnchor { - SPDrawContext *dc; + Inkscape::UI::Tools::FreehandBase *dc; SPCurve *curve; guint start : 1; guint active : 1; @@ -24,7 +33,7 @@ struct SPDrawAnchor { }; -SPDrawAnchor *sp_draw_anchor_new(SPDrawContext *dc, SPCurve *curve, gboolean start, +SPDrawAnchor *sp_draw_anchor_new(Inkscape::UI::Tools::FreehandBase *dc, SPCurve *curve, gboolean start, Geom::Point delta); SPDrawAnchor *sp_draw_anchor_destroy(SPDrawAnchor *anchor); SPDrawAnchor *sp_draw_anchor_test(SPDrawAnchor *anchor, Geom::Point w, gboolean activate); diff --git a/src/file.cpp b/src/file.cpp index f978ec66e..cec634c9b 100644 --- a/src/file.cpp +++ b/src/file.cpp @@ -36,7 +36,7 @@ #include "dir-util.h" #include "document-private.h" #include "document-undo.h" -#include "event-context.h" +#include "ui/tools/tool-base.h" #include "extension/db.h" #include "extension/input.h" #include "extension/output.h" diff --git a/src/gradient-chemistry.cpp b/src/gradient-chemistry.cpp index 40260ea66..89b7968fc 100644 --- a/src/gradient-chemistry.cpp +++ b/src/gradient-chemistry.cpp @@ -32,7 +32,7 @@ #include "desktop.h" #include "desktop-style.h" #include "desktop-handles.h" -#include "event-context.h" +#include "ui/tools/tool-base.h" #include "selection.h" #include "verbs.h" #include <glibmm/i18n.h> @@ -1571,7 +1571,7 @@ void sp_gradient_invert_selected_gradients(SPDesktop *desktop, Inkscape::PaintTa void sp_gradient_reverse_selected_gradients(SPDesktop *desktop) { Inkscape::Selection *selection = sp_desktop_selection(desktop); - SPEventContext *ev = desktop->getEventContext(); + Inkscape::UI::Tools::ToolBase *ev = desktop->getEventContext(); if (!ev) { return; diff --git a/src/helper/window.cpp b/src/helper/window.cpp index cf6fb12ec..98fbef170 100644 --- a/src/helper/window.cpp +++ b/src/helper/window.cpp @@ -22,14 +22,14 @@ #include "inkscape.h" #include "shortcuts.h" #include "desktop.h" -#include "event-context.h" +#include "ui/tools/tool-base.h" #include "window.h" #include <gtk/gtk.h> static bool on_window_key_press(GdkEventKey* event) { unsigned int shortcut; - shortcut = get_group0_keyval (event) | + shortcut = Inkscape::UI::Tools::get_group0_keyval (event) | ( event->state & GDK_SHIFT_MASK ? SP_SHORTCUT_SHIFT_MASK : 0 ) | ( event->state & GDK_CONTROL_MASK ? diff --git a/src/inkscape-private.h b/src/inkscape-private.h index 364e3dab6..d28ed223e 100644 --- a/src/inkscape-private.h +++ b/src/inkscape-private.h @@ -43,7 +43,7 @@ void inkscape_trackalt(guint); void inkscape_selection_modified (Inkscape::Selection *selection, guint flags); void inkscape_selection_changed (Inkscape::Selection * selection); void inkscape_selection_set (Inkscape::Selection * selection); -void inkscape_eventcontext_set (SPEventContext * eventcontext); +void inkscape_eventcontext_set (Inkscape::UI::Tools::ToolBase * eventcontext); void inkscape_add_desktop (SPDesktop * desktop); void inkscape_remove_desktop (SPDesktop * desktop); void inkscape_activate_desktop (SPDesktop * desktop); diff --git a/src/inkscape.cpp b/src/inkscape.cpp index 228841362..8c4ba5695 100644 --- a/src/inkscape.cpp +++ b/src/inkscape.cpp @@ -51,7 +51,7 @@ #include "desktop-handles.h" #include "device-manager.h" #include "document.h" -#include "event-context.h" +#include "ui/tools/tool-base.h" #include "extension/db.h" #include "extension/init.h" #include "extension/output.h" @@ -145,7 +145,7 @@ struct Inkscape::ApplicationClass { void (* change_subselection) (Inkscape::Application * inkscape, SPDesktop *desktop); void (* modify_selection) (Inkscape::Application * inkscape, Inkscape::Selection * selection, guint flags); void (* set_selection) (Inkscape::Application * inkscape, Inkscape::Selection * selection); - void (* set_eventcontext) (Inkscape::Application * inkscape, SPEventContext * eventcontext); + void (* set_eventcontext) (Inkscape::Application * inkscape, Inkscape::UI::Tools::ToolBase * eventcontext); void (* activate_desktop) (Inkscape::Application * inkscape, SPDesktop * desktop); void (* deactivate_desktop) (Inkscape::Application * inkscape, SPDesktop * desktop); void (* destroy_document) (Inkscape::Application *inkscape, SPDocument *doc); @@ -991,7 +991,7 @@ inkscape_selection_set (Inkscape::Selection * selection) void -inkscape_eventcontext_set (SPEventContext * eventcontext) +inkscape_eventcontext_set (Inkscape::UI::Tools::ToolBase * eventcontext) { g_return_if_fail (eventcontext != NULL); g_return_if_fail (SP_IS_EVENT_CONTEXT (eventcontext)); @@ -1338,7 +1338,7 @@ bool inkscape_is_sole_desktop_for_document(SPDesktop const &desktop) { return true; } -SPEventContext * +Inkscape::UI::Tools::ToolBase * inkscape_active_event_context (void) { if (SP_ACTIVE_DESKTOP) { diff --git a/src/inkscape.h b/src/inkscape.h index 0effc3c38..823e7524f 100644 --- a/src/inkscape.h +++ b/src/inkscape.h @@ -17,7 +17,16 @@ class SPDesktop; class SPDocument; -class SPEventContext; + +namespace Inkscape { +namespace UI { +namespace Tools { + +class ToolBase; + +} +} +} namespace Inkscape { class ActionContext; @@ -49,7 +58,7 @@ bool inkscapeIsCrashing(); SPDesktop * inkscape_find_desktop_by_dkey (unsigned int dkey); #define SP_ACTIVE_EVENTCONTEXT inkscape_active_event_context () -SPEventContext * inkscape_active_event_context (void); +Inkscape::UI::Tools::ToolBase * inkscape_active_event_context (void); #define SP_ACTIVE_DOCUMENT inkscape_active_document () SPDocument * inkscape_active_document (void); diff --git a/src/interface.cpp b/src/interface.cpp index f411989ce..5d4022e7b 100644 --- a/src/interface.cpp +++ b/src/interface.cpp @@ -67,7 +67,7 @@ #include "svg/svg-color.h" #include "desktop-style.h" #include "style.h" -#include "event-context.h" +#include "ui/tools/tool-base.h" #include "gradient-drag.h" #include "widgets/ege-paint-def.h" #include "document-undo.h" @@ -1300,7 +1300,7 @@ sp_ui_drag_data_received(GtkWidget *widget, } } -#include "gradient-context.h" +#include "ui/tools/gradient-tool.h" void sp_ui_drag_motion( GtkWidget */*widget*/, GdkDragContext */*drag_context*/, diff --git a/src/knot.cpp b/src/knot.cpp index 2b67440dc..2179bc3d5 100644 --- a/src/knot.cpp +++ b/src/knot.cpp @@ -27,7 +27,7 @@ #include "preferences.h" #include "message-stack.h" #include "message-context.h" -#include "event-context.h" +#include "ui/tools/tool-base.h" using Inkscape::DocumentUndo; @@ -396,7 +396,7 @@ static int sp_knot_handler(SPCanvasItem */*item*/, GdkEvent *event, SPKnot *knot SP_KNOT_DRAGGING, TRUE); } - sp_event_context_snap_delay_handler(knot->desktop->event_context, NULL, (gpointer) knot, (GdkEventMotion *)event, DelayedSnapEvent::KNOT_HANDLER); + sp_event_context_snap_delay_handler(knot->desktop->event_context, NULL, (gpointer) knot, (GdkEventMotion *)event, Inkscape::UI::Tools::DelayedSnapEvent::KNOT_HANDLER); sp_knot_handler_request_position(event, knot); moved = TRUE; } @@ -426,7 +426,7 @@ static int sp_knot_handler(SPCanvasItem */*item*/, GdkEvent *event, SPKnot *knot consumed = TRUE; break; case GDK_KEY_PRESS: // keybindings for knot - switch (get_group0_keyval(&event->key)) { + switch (Inkscape::UI::Tools::get_group0_keyval(&event->key)) { case GDK_KEY_Escape: sp_knot_set_flag(knot, SP_KNOT_GRABBED, FALSE); if (!nograb) { @@ -471,7 +471,7 @@ void sp_knot_handler_request_position(GdkEvent *event, SPKnot *knot) knot->desktop->scroll_to_point (motion_dt); knot->desktop->set_coordinate_status(knot->pos); // display the coordinate of knot, not cursor - they may be different! if (event->motion.state & GDK_BUTTON1_MASK) - gobble_motion_events(GDK_BUTTON1_MASK); + Inkscape::UI::Tools::gobble_motion_events(GDK_BUTTON1_MASK); } SPKnot *sp_knot_new(SPDesktop *desktop, const gchar *tip) diff --git a/src/knotholder.cpp b/src/knotholder.cpp index 7129348c2..71bccca16 100644 --- a/src/knotholder.cpp +++ b/src/knotholder.cpp @@ -20,13 +20,13 @@ #include "knot.h" #include "knotholder.h" #include "knot-holder-entity.h" -#include "rect-context.h" +#include "ui/tools/rect-tool.h" #include "sp-rect.h" -#include "arc-context.h" +#include "ui/tools/arc-tool.h" #include "sp-ellipse.h" -#include "star-context.h" +#include "ui/tools/tweak-tool.h" #include "sp-star.h" -#include "spiral-context.h" +#include "ui/tools/spiral-tool.h" #include "sp-spiral.h" #include "sp-offset.h" #include "box3d.h" diff --git a/src/libnrtype/Layout-TNG-OutIter.cpp b/src/libnrtype/Layout-TNG-OutIter.cpp index 4e61c10a0..8d8621d64 100644 --- a/src/libnrtype/Layout-TNG-OutIter.cpp +++ b/src/libnrtype/Layout-TNG-OutIter.cpp @@ -168,7 +168,7 @@ Layout::iterator Layout::getLetterAt(double x, double y) const return end(); } -Layout::iterator Layout::sourceToIterator(void *source_cookie, Glib::ustring::const_iterator text_iterator) const +Layout::iterator Layout::sourceToIterator(void *source_cookie /*, Glib::ustring::const_iterator text_iterator*/) const { unsigned source_index; if (_characters.empty()) return end(); @@ -182,6 +182,8 @@ Layout::iterator Layout::sourceToIterator(void *source_cookie, Glib::ustring::co return iterator(this, char_index); InputStreamTextSource const *text_source = static_cast<InputStreamTextSource const *>(_input_stream[source_index]); + return iterator(this, char_index); + /* This code was never used, the text_iterator argument was "NULL" in all calling code if (text_iterator <= text_source->text_begin) return iterator(this, char_index); if (text_iterator >= text_source->text_end) { if (source_index == _input_stream.size() - 1) return end(); @@ -194,11 +196,7 @@ Layout::iterator Layout::sourceToIterator(void *source_cookie, Glib::ustring::co iter_text++; } return end(); // never happens -} - -Layout::iterator Layout::sourceToIterator(void *source_cookie) const -{ - return sourceToIterator(source_cookie, Glib::ustring::const_iterator(std::string::const_iterator(NULL))); + */ } Geom::OptRect Layout::glyphBoundingBox(iterator const &it, double *rotation) const @@ -534,19 +532,24 @@ void Layout::getSourceOfCharacter(iterator const &it, void **source_cookie, Glib InputStreamItem *stream_item = _input_stream[_spans[_characters[it._char_index].in_span].in_input_stream_item]; *source_cookie = stream_item->source_cookie; if (text_iterator && stream_item->Type() == TEXT_SOURCE) { - InputStreamTextSource const *text_source = static_cast<InputStreamTextSource const *>(stream_item); - Glib::ustring::const_iterator text_iter_const = text_source->text_begin; + InputStreamTextSource *text_source = dynamic_cast<InputStreamTextSource *>(stream_item); + + // In order to return a non-const iterator in text_iterator, do the const_cast here. + // Note that, although ugly, it is safe because we do not write to *iterator anywhere. + Glib::ustring::iterator text_iter = const_cast<Glib::ustring *>(text_source->text)->begin(); + unsigned char_index = it._char_index; unsigned original_input_source_index = _spans[_characters[char_index].in_span].in_input_stream_item; // confusing algorithm because the iterator goes forwards while the index goes backwards. // It's just that it's faster doing it that way while (char_index && _spans[_characters[char_index - 1].in_span].in_input_stream_item == original_input_source_index) { - ++text_iter_const; + ++text_iter; char_index--; } - text_source->text->begin().base() + (text_iter_const.base() - text_source->text->begin().base()); - *text_iterator = Glib::ustring::iterator(std::string::iterator(const_cast<char*>(&*text_source->text->begin().base() + (text_iter_const.base() - text_source->text->begin().base())))); - // the caller owns the string, so they're going to want a non-const iterator + + if (text_iterator) { + *text_iterator = text_iter; + } } } diff --git a/src/livarot/PathOutline.cpp b/src/livarot/PathOutline.cpp index fbfaa98aa..f15da4af7 100644 --- a/src/livarot/PathOutline.cpp +++ b/src/livarot/PathOutline.cpp @@ -1183,7 +1183,7 @@ Path::OutlineJoin (Path * dest, Geom::Point pos, Geom::Point stNor, Geom::Point const double angSi = cross (enNor,stNor); const double angCo = dot (stNor, enNor); - if (angSi == 0 && angCo > 0) { // The join is straight -> nothing to do. + if (fabs(angSi < .0000001) && angCo > 0) { // The join is straight -> nothing to do. } else { if ((angSi > 0 && width >= 0) || (angSi < 0 && width < 0)) { // This is an inside join -> join is independent of chosen JoinType. diff --git a/src/live_effects/effect.cpp b/src/live_effects/effect.cpp index 623879ac5..70ce1e89d 100644 --- a/src/live_effects/effect.cpp +++ b/src/live_effects/effect.cpp @@ -58,7 +58,7 @@ #include "document-private.h" #include "xml/document.h" #include <glibmm/i18n.h> -#include "pen-context.h" +#include "ui/tools/pen-tool.h" #include "tools-switch.h" #include "message-stack.h" #include "desktop.h" @@ -343,8 +343,8 @@ Effect::doAcceptPathPreparations(SPLPEItem *lpeitem) tools_switch(desktop, TOOLS_FREEHAND_PEN); } - SPEventContext *ec = desktop->event_context; - SPPenContext *pc = SP_PEN_CONTEXT(ec); + Inkscape::UI::Tools::ToolBase *ec = desktop->event_context; + Inkscape::UI::Tools::PenTool *pc = SP_PEN_CONTEXT(ec); pc->expecting_clicks_for_LPE = this->acceptsNumClicks(); pc->waiting_LPE = this; pc->waiting_item = lpeitem; diff --git a/src/live_effects/lpe-line_segment.cpp b/src/live_effects/lpe-line_segment.cpp index 2e7240e25..78d286143 100644 --- a/src/live_effects/lpe-line_segment.cpp +++ b/src/live_effects/lpe-line_segment.cpp @@ -12,7 +12,7 @@ */ #include "live_effects/lpe-line_segment.h" -#include "lpe-tool-context.h" +#include "ui/tools/lpe-tool.h" #include <2geom/pathvector.h> #include <2geom/geom.h> @@ -45,7 +45,7 @@ LPELineSegment::~LPELineSegment() void LPELineSegment::doBeforeEffect (SPLPEItem const* lpeitem) { - lpetool_get_limiting_bbox_corners(lpeitem->document, bboxA, bboxB); + Inkscape::UI::Tools::lpetool_get_limiting_bbox_corners(lpeitem->document, bboxA, bboxB); } std::vector<Geom::Path> diff --git a/src/live_effects/lpe-perp_bisector.h b/src/live_effects/lpe-perp_bisector.h index 4ff9909a4..3a2278de3 100644 --- a/src/live_effects/lpe-perp_bisector.h +++ b/src/live_effects/lpe-perp_bisector.h @@ -27,7 +27,7 @@ namespace PB { class KnotHolderEntityEnd; class KnotHolderEntityLeftEnd; class KnotHolderEntityRightEnd; - void bisector_end_set(SPItem *item, Geom::Point const &p, guint state, bool left); + void bisector_end_set(SPItem *item, Geom::Point const &p, guint state, bool left = true); } class LPEPerpBisector : public Effect { @@ -46,7 +46,7 @@ public: friend class PB::KnotHolderEntityEnd; friend class PB::KnotHolderEntityLeftEnd; friend class PB::KnotHolderEntityRightEnd; - friend void PB::bisector_end_set(SPItem *item, Geom::Point const &p, guint state, bool left = true); + friend void PB::bisector_end_set(SPItem *item, Geom::Point const &p, guint state, bool left); void addKnotHolderEntities(KnotHolder *knotholder, SPDesktop *desktop, SPItem *item); private: diff --git a/src/live_effects/parameter/path.cpp b/src/live_effects/parameter/path.cpp index e5648dc68..77f7eabcc 100644 --- a/src/live_effects/parameter/path.cpp +++ b/src/live_effects/parameter/path.cpp @@ -40,7 +40,7 @@ #include "sp-text.h" #include "display/curve.h" -#include "ui/tool/node-tool.h" +#include "ui/tools/node-tool.h" #include "ui/tool/multi-path-manipulator.h" #include "ui/tool/shape-record.h" @@ -208,7 +208,7 @@ PathParam::param_editOncanvas(SPItem *item, SPDesktop * dt) tools_switch(dt, TOOLS_NODES); } - InkNodeTool *nt = static_cast<InkNodeTool*>(dt->event_context); + Inkscape::UI::Tools::NodeTool *nt = static_cast<Inkscape::UI::Tools::NodeTool*>(dt->event_context); std::set<ShapeRecord> shapes; ShapeRecord r; diff --git a/src/main.cpp b/src/main.cpp index 1c0f4cee7..29bc7f7e9 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -917,6 +917,16 @@ static int sp_common_main( int argc, char const **argv, GSList **flDest ) return 0; } +namespace Inkscape { +namespace UI { +namespace Tools { + +guint get_group0_keyval(GdkEventKey* event); + +} +} +} + static void snooper(GdkEvent *event, gpointer /*data*/) { if (inkscape_mapalt()) /* returns the map of the keyboard modifier to map to Alt, zero if no mapping */ @@ -959,7 +969,7 @@ snooper(GdkEvent *event, gpointer /*data*/) { static gboolean altL_pressed = FALSE; static gboolean altR_pressed = FALSE; static gboolean alt_pressed = FALSE; - guint get_group0_keyval(GdkEventKey* event); + guint keyval = 0; switch (event->type) { case GDK_MOTION_NOTIFY: @@ -969,7 +979,7 @@ snooper(GdkEvent *event, gpointer /*data*/) { alt_pressed = TRUE && (event->button.state & GDK_MOD1_MASK); break; case GDK_KEY_PRESS: - keyval = get_group0_keyval(&event->key); + keyval = Inkscape::UI::Tools::get_group0_keyval(&event->key); if (keyval == GDK_KEY_Alt_L) altL_pressed = TRUE; if (keyval == GDK_KEY_Alt_R) altR_pressed = TRUE; alt_pressed = alt_pressed || altL_pressed || altR_pressed; @@ -980,7 +990,7 @@ snooper(GdkEvent *event, gpointer /*data*/) { event->key.state &= ~GDK_MOD1_MASK; break; case GDK_KEY_RELEASE: - keyval = get_group0_keyval(&event->key); + keyval = Inkscape::UI::Tools::get_group0_keyval(&event->key); if (keyval == GDK_KEY_Alt_L) altL_pressed = FALSE; if (keyval == GDK_KEY_Alt_R) altR_pressed = FALSE; if (!altL_pressed && !altR_pressed) diff --git a/src/persp3d.cpp b/src/persp3d.cpp index 530da0799..b10e5f23b 100644 --- a/src/persp3d.cpp +++ b/src/persp3d.cpp @@ -17,7 +17,7 @@ #include "document-private.h" #include "document-undo.h" #include "vanishing-point.h" -#include "box3d-context.h" +#include "ui/tools/box3d-tool.h" #include "box3d.h" #include "xml/document.h" #include "xml/node-event-vector.h" @@ -140,9 +140,9 @@ void Persp3D::set(unsigned key, gchar const *value) { } // FIXME: Is this the right place for resetting the draggers? - SPEventContext *ec = inkscape_active_event_context(); + Inkscape::UI::Tools::ToolBase *ec = inkscape_active_event_context(); if (SP_IS_BOX3D_CONTEXT(ec)) { - Box3DContext *bc = SP_BOX3D_CONTEXT(ec); + Inkscape::UI::Tools::Box3dTool *bc = SP_BOX3D_CONTEXT(ec); bc->_vpdrag->updateDraggers(); bc->_vpdrag->updateLines(); bc->_vpdrag->updateBoxHandles(); diff --git a/src/persp3d.h b/src/persp3d.h index cb7e7f900..4690c0582 100644 --- a/src/persp3d.h +++ b/src/persp3d.h @@ -24,7 +24,17 @@ #include "inkscape.h" class SPBox3D; -class Box3DContext; + +namespace Inkscape { +namespace UI { +namespace Tools { + +class Box3dTool; + +} +} +} + class Persp3DImpl { public: diff --git a/src/proofs b/src/proofs index 05f27daea..d1922647e 100644 --- a/src/proofs +++ b/src/proofs @@ -23,7 +23,7 @@ in which case we'd have filled in pc->red_curve to a non-empty curve. Expansion of the above claim of at least 3 distinct points: We know n_segs <= 0 || unsigned(dc->npoints) >= G_N_ELEMENTS(pc->p) from the negation of the containing `if' condition. -G_N_ELEMENTS(pc->p) is greater than 3 (in int arithmetic), from SPPencilContext::p array definition +G_N_ELEMENTS(pc->p) is greater than 3 (in int arithmetic), from PencilTool::p array definition in pencil-context.h. npoints grows by no more than one per fit_and_split invocation; we should be able to establish that dc->npoints == G_N_ELEMENTS(pc->p) if unsigned(dc->npoints) >= G_N_ELEMENTS(pc->p), in which case 3 <= dc->npoints in int arithmetic. We know that dc->npoints >= diff --git a/src/remove-last.h b/src/remove-last.h index a5bbd89f8..8c84d0ed4 100644 --- a/src/remove-last.h +++ b/src/remove-last.h @@ -8,12 +8,9 @@ template<class T> inline void remove_last(std::vector<T> &seq, T const &elem) { - using std::vector; - - typename vector<T>::reverse_iterator i(find(seq.rbegin(), seq.rend(), elem)); + typename std::vector<T>::reverse_iterator i(find(seq.rbegin(), seq.rend(), elem)); g_assert( i != seq.rend() ); - typename vector<T>::iterator ii(&*i); - seq.erase(ii); + seq.erase(i.base()); } diff --git a/src/selection-chemistry.cpp b/src/selection-chemistry.cpp index e68feb188..26e575439 100644 --- a/src/selection-chemistry.cpp +++ b/src/selection-chemistry.cpp @@ -56,11 +56,11 @@ SPCycleType SP_CYCLING = SP_CYCLE_FOCUS; #include "sp-polyline.h" #include "sp-line.h" #include "text-editing.h" -#include "text-context.h" -#include "connector-context.h" +#include "ui/tools/text-tool.h" +#include "ui/tools/connector-tool.h" #include "sp-path.h" #include "sp-conn-end.h" -#include "dropper-context.h" +#include "ui/tools/dropper-tool.h" #include <glibmm/i18n.h> #include <2geom/transforms.h> #include "xml/repr.h" @@ -74,7 +74,7 @@ SPCycleType SP_CYCLING = SP_CYCLE_FOCUS; #include "sp-pattern.h" #include "sp-symbol.h" #include "sp-radial-gradient.h" -#include "gradient-context.h" +#include "ui/tools/gradient-tool.h" #include "sp-namedview.h" #include "preferences.h" #include "sp-offset.h" @@ -111,7 +111,7 @@ SPCycleType SP_CYCLING = SP_CYCLE_FOCUS; // For clippath editing #include "tools-switch.h" -#include "ui/tool/node-tool.h" +#include "ui/tools/node-tool.h" #include "ui/clipboard.h" #include "verbs.h" @@ -119,6 +119,7 @@ SPCycleType SP_CYCLING = SP_CYCLE_FOCUS; using Inkscape::DocumentUndo; using Geom::X; using Geom::Y; +using Inkscape::UI::Tools::NodeTool; /* The clipboard handling is in ui/clipboard.cpp now. There are some legacy functions left here, because the layer manipulation code uses them. It should be rewritten specifically @@ -146,7 +147,7 @@ namespace Inkscape { void SelectionHelper::selectAll(SPDesktop *dt) { if (tools_isactive(dt, TOOLS_NODES)) { - InkNodeTool *nt = static_cast<InkNodeTool*>(dt->event_context); + NodeTool *nt = static_cast<NodeTool*>(dt->event_context); if (!nt->_multipath->empty()) { nt->_multipath->selectSubpaths(); return; @@ -158,7 +159,7 @@ void SelectionHelper::selectAll(SPDesktop *dt) void SelectionHelper::selectAllInAll(SPDesktop *dt) { if (tools_isactive(dt, TOOLS_NODES)) { - InkNodeTool *nt = static_cast<InkNodeTool*>(dt->event_context); + NodeTool *nt = static_cast<NodeTool*>(dt->event_context); nt->_selected_nodes->selectAll(); } else { sp_edit_select_all_in_all_layers(dt); @@ -167,9 +168,9 @@ void SelectionHelper::selectAllInAll(SPDesktop *dt) void SelectionHelper::selectNone(SPDesktop *dt) { - InkNodeTool *nt = NULL; + NodeTool *nt = NULL; if (tools_isactive(dt, TOOLS_NODES)) { - nt = static_cast<InkNodeTool*>(dt->event_context); + nt = static_cast<NodeTool*>(dt->event_context); } if (nt && !nt->_selected_nodes->empty()) { @@ -210,7 +211,7 @@ void SelectionHelper::selectSameObjectType(SPDesktop *dt) void SelectionHelper::invert(SPDesktop *dt) { if (tools_isactive(dt, TOOLS_NODES)) { - InkNodeTool *nt = static_cast<InkNodeTool*>(dt->event_context); + NodeTool *nt = static_cast<NodeTool*>(dt->event_context); nt->_multipath->invertSelectionInSubpaths(); } else { sp_edit_invert(dt); @@ -220,7 +221,7 @@ void SelectionHelper::invert(SPDesktop *dt) void SelectionHelper::invertAllInAll(SPDesktop *dt) { if (tools_isactive(dt, TOOLS_NODES)) { - InkNodeTool *nt = static_cast<InkNodeTool*>(dt->event_context); + NodeTool *nt = static_cast<NodeTool*>(dt->event_context); nt->_selected_nodes->invertSelection(); } else { sp_edit_invert_in_all_layers(dt); @@ -231,7 +232,7 @@ void SelectionHelper::reverse(SPDesktop *dt) { // TODO make this a virtual method of event context! if (tools_isactive(dt, TOOLS_NODES)) { - InkNodeTool *nt = static_cast<InkNodeTool*>(dt->event_context); + NodeTool *nt = static_cast<NodeTool*>(dt->event_context); nt->_multipath->reverseSubpaths(); } else { sp_selected_path_reverse(dt); @@ -240,13 +241,13 @@ void SelectionHelper::reverse(SPDesktop *dt) void SelectionHelper::selectNext(SPDesktop *dt) { - SPEventContext *ec = dt->event_context; + Inkscape::UI::Tools::ToolBase *ec = dt->event_context; if (tools_isactive(dt, TOOLS_NODES)) { - InkNodeTool *nt = static_cast<InkNodeTool*>(dt->event_context); + NodeTool *nt = static_cast<NodeTool*>(dt->event_context); nt->_multipath->shiftSelection(1); } else if (tools_isactive(dt, TOOLS_GRADIENT) && ec->_grdrag->isNonEmpty()) { - sp_gradient_context_select_next(ec); + Inkscape::UI::Tools::sp_gradient_context_select_next(ec); } else { sp_selection_item_next(dt); } @@ -254,13 +255,13 @@ void SelectionHelper::selectNext(SPDesktop *dt) void SelectionHelper::selectPrev(SPDesktop *dt) { - SPEventContext *ec = dt->event_context; + Inkscape::UI::Tools::ToolBase *ec = dt->event_context; if (tools_isactive(dt, TOOLS_NODES)) { - InkNodeTool *nt = static_cast<InkNodeTool*>(dt->event_context); + NodeTool *nt = static_cast<NodeTool*>(dt->event_context); nt->_multipath->shiftSelection(-1); } else if (tools_isactive(dt, TOOLS_GRADIENT) && ec->_grdrag->isNonEmpty()) { - sp_gradient_context_select_prev(ec); + Inkscape::UI::Tools::sp_gradient_context_select_prev(ec); } else { sp_selection_item_prev(dt); } @@ -388,7 +389,7 @@ void sp_selection_delete(SPDesktop *desktop) } if (tools_isactive(desktop, TOOLS_TEXT)) - if (sp_text_delete_selection(desktop->event_context)) { + if (Inkscape::UI::Tools::sp_text_delete_selection(desktop->event_context)) { DocumentUndo::done(sp_desktop_document(desktop), SP_VERB_CONTEXT_TEXT, _("Delete text")); return; @@ -1471,7 +1472,7 @@ void sp_selection_apply_affine(Inkscape::Selection *selection, Geom::Affine cons // If we're moving a connector, we want to detach it // from shapes that aren't part of the selection, but // leave it attached if they are - if (cc_item_is_connector(item)) { + if (Inkscape::UI::Tools::cc_item_is_connector(item)) { SPItem *attItem[2]; SP_PATH(item)->connEndPair.getAttachedItems(attItem); diff --git a/src/seltrans.cpp b/src/seltrans.cpp index ed0fd3a08..f961e309d 100644 --- a/src/seltrans.cpp +++ b/src/seltrans.cpp @@ -31,7 +31,7 @@ #include "knot.h" #include "snap.h" #include "selection.h" -#include "select-context.h" +#include "ui/tools/select-tool.h" #include "sp-item.h" #include "sp-item-transform.h" #include "seltrans-handles.h" @@ -66,7 +66,7 @@ static gboolean sp_sel_trans_handle_event(SPKnot *knot, GdkEvent *event, gpointe case GDK_MOTION_NOTIFY: break; case GDK_KEY_PRESS: - if (get_group0_keyval (&event->key) == GDK_KEY_space) { + if (Inkscape::UI::Tools::get_group0_keyval (&event->key) == GDK_KEY_space) { /* stamping mode: both mode(show content and outline) operation with knot */ if (!SP_KNOT_IS_GRABBED(knot)) { return FALSE; diff --git a/src/shortcuts.cpp b/src/shortcuts.cpp index 231e33e4a..1e43c98c6 100644 --- a/src/shortcuts.cpp +++ b/src/shortcuts.cpp @@ -43,7 +43,7 @@ #include "xml/repr.h" #include "document.h" #include "preferences.h" -#include "event-context.h" +#include "ui/tools/tool-base.h" #include "inkscape.h" #include "desktop.h" #include "path-prefix.h" @@ -121,7 +121,7 @@ unsigned int sp_gdkmodifier_to_shortcut(guint accel_key, Gdk::ModifierType gdkmo event.state = gdkmodifier; event.keyval = accel_key; event.hardware_keycode = hardware_keycode; - guint keyval = get_group0_keyval (&event); + guint keyval = Inkscape::UI::Tools::get_group0_keyval (&event); shortcut = accel_key | ( (gdkmodifier & GDK_SHIFT_MASK) || ( accel_key != keyval) ? diff --git a/src/snap.cpp b/src/snap.cpp index 15f24ef53..ecf799cdc 100644 --- a/src/snap.cpp +++ b/src/snap.cpp @@ -32,7 +32,7 @@ #include "selection.h" #include "sp-guide.h" #include "preferences.h" -#include "event-context.h" +#include "ui/tools/tool-base.h" #include "util/mathfns.h" using std::vector; using Inkscape::Util::round_to_upper_multiple_plus; diff --git a/src/sp-flowtext.cpp b/src/sp-flowtext.cpp index fee320e90..0cadb4345 100644 --- a/src/sp-flowtext.cpp +++ b/src/sp-flowtext.cpp @@ -297,7 +297,7 @@ gchar* SPFlowtext::description() const { int const nChars = layout.iteratorToCharIndex(layout.end()); char const *trunc = (layout.inputTruncated()) ? _(" [truncated]") : ""; - return g_strdup_printf(ngettext(_("(%d character%s)"), _("(%d characters%s)"), nChars), nChars, trunc); + return g_strdup_printf(ngettext("(%d character%s)", "(%d characters%s)", nChars), nChars, trunc); } void SPFlowtext::snappoints(std::vector<Inkscape::SnapCandidatePoint> &p, Inkscape::SnapPreferences const *snapprefs) const { diff --git a/src/sp-item-group.h b/src/sp-item-group.h index deb80a641..2004a72b8 100644 --- a/src/sp-item-group.h +++ b/src/sp-item-group.h @@ -55,7 +55,7 @@ public: void scaleChildItemsRec(Geom::Scale const &sc, Geom::Point const &p); gint getItemCount() const; - void _showChildren (Inkscape::Drawing &drawing, Inkscape::DrawingItem *ai, unsigned int key, unsigned int flags); + virtual void _showChildren (Inkscape::Drawing &drawing, Inkscape::DrawingItem *ai, unsigned int key, unsigned int flags); private: void _updateLayerMode(unsigned int display_key=0); diff --git a/src/sp-item-rm-unsatisfied-cns.cpp b/src/sp-item-rm-unsatisfied-cns.cpp index 8fb171c08..7a712b083 100644 --- a/src/sp-item-rm-unsatisfied-cns.cpp +++ b/src/sp-item-rm-unsatisfied-cns.cpp @@ -24,10 +24,12 @@ void sp_item_rm_unsatisfied_cns(SPItem &item) g_assert( snappoint_ix < int(snappoints.size()) ); if (!Geom::are_near(cn.g->getDistanceFrom(snappoints[snappoint_ix].getPoint()), 0, 1e-2)) { + remove_last(cn.g->attached_items, SPGuideAttachment(&item, cn.snappoint_ix)); + g_assert( i < item.constraints.size() ); - vector<SPGuideConstraint>::iterator const ei(&item.constraints[i]); - item.constraints.erase(ei); + + item.constraints.erase(item.constraints.begin() + i); } } } diff --git a/src/sp-path.cpp b/src/sp-path.cpp index 563c5b326..cbb61b0f6 100644 --- a/src/sp-path.cpp +++ b/src/sp-path.cpp @@ -43,7 +43,7 @@ #include "desktop.h" #include "desktop-handles.h" #include "desktop-style.h" -#include "event-context.h" +#include "ui/tools/tool-base.h" #include "inkscape.h" #include "style.h" #include "message-stack.h" diff --git a/src/sp-switch.cpp b/src/sp-switch.cpp index 5c88d7af8..b4841c0d0 100644 --- a/src/sp-switch.cpp +++ b/src/sp-switch.cpp @@ -40,6 +40,7 @@ SPSwitch::SPSwitch() : SPGroup() { } SPSwitch::~SPSwitch() { + _releaseLastItem(_cached_item); } SPObject *SPSwitch::_evaluateFirst() { diff --git a/src/sp-switch.h b/src/sp-switch.h index 3ccc9e3b7..c35982860 100644 --- a/src/sp-switch.h +++ b/src/sp-switch.h @@ -28,7 +28,7 @@ public: void resetChildEvaluated() { _reevaluate(); } GSList *_childList(bool add_ref, SPObject::Action action); - void _showChildren (Inkscape::Drawing &drawing, Inkscape::DrawingItem *ai, unsigned int key, unsigned int flags); + virtual void _showChildren (Inkscape::Drawing &drawing, Inkscape::DrawingItem *ai, unsigned int key, unsigned int flags); SPObject *_evaluateFirst(); void _reevaluate(bool add_to_arena = false); diff --git a/src/splivarot.cpp b/src/splivarot.cpp index ad40178fb..7bf556aa1 100644 --- a/src/splivarot.cpp +++ b/src/splivarot.cpp @@ -338,6 +338,8 @@ sp_selected_path_boolop(Inkscape::Selection *selection, SPDesktop *desktop, bool return; } + g_assert(il != NULL); + if (g_slist_length(il) > 2) { if (bop == bool_op_diff || bop == bool_op_cut || bop == bool_op_slice ) { boolop_display_error_message(desktop, _("Select <b>exactly 2 paths</b> to perform difference, division, or path cut.")); @@ -352,8 +354,8 @@ sp_selected_path_boolop(Inkscape::Selection *selection, SPDesktop *desktop, bool if (bop == bool_op_diff || bop == bool_op_cut || bop == bool_op_slice) { // check in the tree to find which element of the selection list is topmost (for 2-operand commands only) - Inkscape::XML::Node *a = reinterpret_cast<SPObject *>(il->data)->getRepr(); - Inkscape::XML::Node *b = reinterpret_cast<SPObject *>(il->next->data)->getRepr(); + Inkscape::XML::Node *a = SP_OBJECT(il->data)->getRepr(); + Inkscape::XML::Node *b = SP_OBJECT(il->next->data)->getRepr(); if (a == NULL || b == NULL) { boolop_display_error_message(desktop, _("Unable to determine the <b>z-order</b> of the objects selected for difference, XOR, division, or path cut.")); @@ -393,6 +395,7 @@ sp_selected_path_boolop(Inkscape::Selection *selection, SPDesktop *desktop, bool } il = g_slist_copy(il); + g_assert(il != NULL); // first check if all the input objects have shapes // otherwise bail out @@ -1160,7 +1163,7 @@ sp_selected_path_outline(SPDesktop *desktop) items != NULL; items = items->next) { - SPItem *item = (SPItem *) items->data; + SPItem *item = SP_ITEM(items->data); if (!SP_IS_SHAPE(item) && !SP_IS_TEXT(item)) continue; @@ -1177,6 +1180,8 @@ sp_selected_path_outline(SPDesktop *desktop) continue; } + g_assert(curve != NULL); + if (curve->get_pathvector().empty()) { continue; } @@ -1595,6 +1600,8 @@ void sp_selected_path_create_offset_object(SPDesktop *desktop, int expand, bool } } + g_assert(curve != NULL); + Geom::Affine const transform(item->transform); item->doWriteTransform(item->getRepr(), Geom::identity()); @@ -1610,9 +1617,6 @@ void sp_selected_path_create_offset_object(SPDesktop *desktop, int expand, bool float o_width = 0; { - SPStyle *i_style = item->style; - - o_width = i_style->stroke_width.computed; { Inkscape::Preferences *prefs = Inkscape::Preferences::get(); o_width = prefs->getDouble("/options/defaultoffsetwidth/value", 1.0, "px"); @@ -1774,7 +1778,7 @@ sp_selected_path_do_offset(SPDesktop *desktop, bool expand, double prefOffset) items != NULL; items = items->next) { - SPItem *item = (SPItem *) items->data; + SPItem *item = SP_ITEM(items->data); if (!SP_IS_SHAPE(item) && !SP_IS_TEXT(item)) continue; @@ -1791,6 +1795,9 @@ sp_selected_path_do_offset(SPDesktop *desktop, bool expand, double prefOffset) continue; } + // We've now checked that there is a curve for this item + g_assert(curve != NULL); + Geom::Affine const transform(item->transform); item->doWriteTransform(item->getRepr(), Geom::identity()); @@ -1805,9 +1812,6 @@ sp_selected_path_do_offset(SPDesktop *desktop, bool expand, double prefOffset) { SPStyle *i_style = item->style; int jointype = i_style->stroke_linejoin.value; - //int captype = i_style->stroke_linecap.value; - - o_width = i_style->stroke_width.computed; switch (jointype) { case SP_STROKE_LINEJOIN_MITER: @@ -1821,18 +1825,6 @@ sp_selected_path_do_offset(SPDesktop *desktop, bool expand, double prefOffset) break; } - /*switch (captype) { - case SP_STROKE_LINECAP_SQUARE: - o_butt = butt_square; - break; - case SP_STROKE_LINECAP_ROUND: - o_butt = butt_round; - break; - default: - o_butt = butt_straight; - break; - }*/ - o_width = prefOffset; if (o_width < 0.1) diff --git a/src/tool-factory.h b/src/tool-factory.h index d8aeb5f04..726706732 100644 --- a/src/tool-factory.h +++ b/src/tool-factory.h @@ -1,5 +1,5 @@ /** @file - * Factory for SPEventContext tree + * Factory for ToolBase tree *//* * Authors: * Markus Engel @@ -13,8 +13,17 @@ #include "factory.h" -class SPEventContext; -typedef Singleton< Factory<SPEventContext> > ToolFactory; +namespace Inkscape { +namespace UI { +namespace Tools { + +class ToolBase; + +} +} +} + +typedef Singleton< Factory<Inkscape::UI::Tools::ToolBase> > ToolFactory; #endif diff --git a/src/tools-switch.cpp b/src/tools-switch.cpp index 5f54ad15a..fe9d32f43 100644 --- a/src/tools-switch.cpp +++ b/src/tools-switch.cpp @@ -25,36 +25,36 @@ #include <xml/repr.h> -#include "select-context.h" -#include "ui/tool/node-tool.h" -#include "tweak-context.h" -#include "spray-context.h" +#include "ui/tools/select-tool.h" +#include "ui/tools/node-tool.h" +#include "ui/tools/tweak-tool.h" +#include "ui/tools/spray-tool.h" #include "sp-path.h" -#include "rect-context.h" +#include "ui/tools/rect-tool.h" #include "sp-rect.h" -#include "box3d-context.h" +#include "ui/tools/box3d-tool.h" #include "box3d.h" -#include "arc-context.h" +#include "ui/tools/arc-tool.h" #include "sp-ellipse.h" -#include "star-context.h" +#include "ui/tools/tweak-tool.h" #include "sp-star.h" -#include "spiral-context.h" +#include "ui/tools/spiral-tool.h" #include "sp-spiral.h" -#include "dyna-draw-context.h" -#include "eraser-context.h" -#include "pen-context.h" -#include "pencil-context.h" -#include "lpe-tool-context.h" -#include "text-context.h" +#include "ui/tools/calligraphic-tool.h" +#include "ui/tools/eraser-tool.h" +#include "ui/tools/pen-tool.h" +#include "ui/tools/pencil-tool.h" +#include "ui/tools/lpe-tool.h" +#include "ui/tools/text-tool.h" #include "sp-text.h" #include "sp-flowtext.h" -#include "gradient-context.h" -#include "mesh-context.h" -#include "zoom-context.h" -#include "measure-context.h" -#include "dropper-context.h" -#include "connector-context.h" -#include "flood-context.h" +#include "ui/tools/gradient-tool.h" +#include "ui/tools/mesh-tool.h" +#include "ui/tools/zoom-tool.h" +#include "ui/tools/measure-tool.h" +#include "ui/tools/dropper-tool.h" +#include "ui/tools/connector-tool.h" +#include "ui/tools/flood-tool.h" #include "sp-offset.h" #include "message-context.h" @@ -169,7 +169,7 @@ void tools_switch_by_item(SPDesktop *dt, SPItem *item, Geom::Point const p) } else if (SP_IS_SPIRAL(item)) { tools_switch(dt, TOOLS_SHAPES_SPIRAL); } else if (SP_IS_PATH(item)) { - if (cc_item_is_connector(item)) { + if (Inkscape::UI::Tools::cc_item_is_connector(item)) { tools_switch(dt, TOOLS_CONNECTOR); } else { diff --git a/src/trace/siox.cpp b/src/trace/siox.cpp index 92992d440..0706cfed1 100644 --- a/src/trace/siox.cpp +++ b/src/trace/siox.cpp @@ -11,6 +11,7 @@ #include <stdarg.h> #include <map> #include <algorithm> +#include <cstdlib> namespace org diff --git a/src/ui/CMakeLists.txt b/src/ui/CMakeLists.txt index 24324c874..c3e406e3f 100644 --- a/src/ui/CMakeLists.txt +++ b/src/ui/CMakeLists.txt @@ -14,13 +14,38 @@ set(ui_SRC tool/manipulator.cpp tool/modifier-tracker.cpp tool/multi-path-manipulator.cpp - tool/node-tool.cpp tool/node.cpp tool/path-manipulator.cpp tool/selectable-control-point.cpp tool/selector.cpp tool/transform-handle-set.cpp + tools/arc-tool.cpp + tools/box3d-tool.cpp + tools/calligraphic-tool.cpp + tools/connector-tool.cpp + tools/dropper-tool.cpp + tools/dynamic-base.cpp + tools/eraser-tool.cpp + tools/flood-tool.cpp + tools/freehand-base.cpp + tools/gradient-tool.cpp + tools/lpe-tool.cpp + tools/measure-tool.cpp + tools/mesh-tool.cpp + tools/node-tool.cpp + tools/pencil-tool.cpp + tools/pen-tool.cpp + tools/rect-tool.cpp + tools/select-tool.cpp + tools/spiral-tool.cpp + tools/spray-tool.cpp + tools/star-tool.cpp + tools/text-tool.cpp + tools/tool-base.cpp + tools/tweak-tool.cpp + tools/zoom-tool.cpp + dialog/aboutbox.cpp dialog/align-and-distribute.cpp dialog/calligraphic-profile-rename.cpp @@ -200,7 +225,6 @@ set(ui_SRC tool/manipulator.h tool/modifier-tracker.h tool/multi-path-manipulator.h - tool/node-tool.h tool/node-types.h tool/node.h tool/path-manipulator.h @@ -209,6 +233,32 @@ set(ui_SRC tool/shape-record.h tool/transform-handle-set.h + tools/arc-tool.h + tools/box3d-tool.h + tools/calligraphic-tool.h + tools/connector-tool.h + tools/dropper-tool.h + tools/dynamic-base.h + tools/eraser-tool.h + tools/flood-tool.h + tools/freehand-base.h + tools/gradient-tool.h + tools/lpe-tool.h + tools/measure-tool.h + tools/mesh-tool.h + tools/node-tool.h + tools/pencil-tool.h + tools/pen-tool.h + tools/rect-tool.h + tools/select-tool.h + tools/spiral-tool.h + tools/spray-tool.h + tools/star-tool.h + tools/text-tool.h + tools/tool-base.h + tools/tweak-tool.h + tools/zoom-tool.h + widget/attr-widget.h widget/button.h widget/color-picker.h diff --git a/src/ui/clipboard.cpp b/src/ui/clipboard.cpp index da6fed86b..8e2502545 100644 --- a/src/ui/clipboard.cpp +++ b/src/ui/clipboard.cpp @@ -44,7 +44,7 @@ #include "selection.h" #include "message-stack.h" #include "context-fns.h" -#include "dropper-context.h" // used in copy() +#include "ui/tools/dropper-tool.h" // used in copy() #include "style.h" #include "extension/db.h" // extension database #include "extension/input.h" @@ -74,7 +74,7 @@ #include "live_effects/parameter/path.h" #include "svg/svg.h" // for sp_svg_transform_write, used in _copySelection #include "svg/css-ostringstream.h" // used in copy -#include "text-context.h" +#include "ui/tools/text-tool.h" #include "text-editing.h" #include "tools-switch.h" #include "path-chemistry.h" @@ -247,13 +247,13 @@ void ClipboardManagerImpl::copy(SPDesktop *desktop) // not the object that holds it; also copy the style at cursor into if (tools_isactive(desktop, TOOLS_TEXT)) { _discardInternalClipboard(); - Glib::ustring selected_text = sp_text_get_selected_text(desktop->event_context); + Glib::ustring selected_text = Inkscape::UI::Tools::sp_text_get_selected_text(desktop->event_context); _clipboard->set_text(selected_text); if (_text_style) { sp_repr_css_attr_unref(_text_style); _text_style = NULL; } - _text_style = sp_text_get_style_at_cursor(desktop->event_context); + _text_style = Inkscape::UI::Tools::sp_text_get_style_at_cursor(desktop->event_context); return; } @@ -908,7 +908,7 @@ bool ClipboardManagerImpl::_pasteText(SPDesktop *desktop) // if the text editing tool is active, paste the text into the active text object if (tools_isactive(desktop, TOOLS_TEXT)) { - return sp_text_paste_inline(desktop->event_context); + return Inkscape::UI::Tools::sp_text_paste_inline(desktop->event_context); } // try to parse the text as a color and, if successful, apply it as the current style diff --git a/src/ui/dialog/align-and-distribute.cpp b/src/ui/dialog/align-and-distribute.cpp index 38f10c59c..6b4aeebb9 100644 --- a/src/ui/dialog/align-and-distribute.cpp +++ b/src/ui/dialog/align-and-distribute.cpp @@ -40,7 +40,7 @@ #include "text-editing.h" #include "tools-switch.h" #include "ui/icon-names.h" -#include "ui/tool/node-tool.h" +#include "ui/tools/node-tool.h" #include "ui/tool/multi-path-manipulator.h" #include "util/glib-list-iterators.h" #include "verbs.h" @@ -374,13 +374,13 @@ private : return; } - SPEventContext *event_context = _dialog.getDesktop()->getEventContext(); + Inkscape::UI::Tools::ToolBase *event_context = _dialog.getDesktop()->getEventContext(); if (!INK_IS_NODE_TOOL(event_context)) { return; } - InkNodeTool *nt = INK_NODE_TOOL(event_context); + Inkscape::UI::Tools::NodeTool *nt = INK_NODE_TOOL(event_context); if (_distribute) { nt->_multipath->distributeNodes(_orientation); @@ -829,7 +829,7 @@ private : -static void on_tool_changed(Inkscape::Application */*inkscape*/, SPEventContext */*context*/, AlignAndDistribute *daad) +static void on_tool_changed(Inkscape::Application */*inkscape*/, Inkscape::UI::Tools::ToolBase */*context*/, AlignAndDistribute *daad) { SPDesktop *desktop = SP_ACTIVE_DESKTOP; if (desktop && desktop->getEventContext()) diff --git a/src/ui/dialog/dialog.cpp b/src/ui/dialog/dialog.cpp index f27d344fa..3cc3f3d88 100644 --- a/src/ui/dialog/dialog.cpp +++ b/src/ui/dialog/dialog.cpp @@ -23,7 +23,7 @@ #include <gdk/gdkkeysyms.h> #include "inkscape.h" -#include "event-context.h" +#include "ui/tools/tool-base.h" #include "desktop.h" #include "desktop-handles.h" #include "modifier-fns.h" @@ -270,7 +270,7 @@ bool Dialog::_onEvent(GdkEvent *event) switch (event->type) { case GDK_KEY_PRESS: { - switch (get_group0_keyval (&event->key)) { + switch (Inkscape::UI::Tools::get_group0_keyval (&event->key)) { case GDK_KEY_Escape: { _defocus(); ret = true; @@ -300,7 +300,7 @@ bool Dialog::_onEvent(GdkEvent *event) bool Dialog::_onKeyPress(GdkEventKey *event) { unsigned int shortcut; - shortcut = get_group0_keyval(event) | + shortcut = Inkscape::UI::Tools::get_group0_keyval(event) | ( event->state & GDK_SHIFT_MASK ? SP_SHORTCUT_SHIFT_MASK : 0 ) | ( event->state & GDK_CONTROL_MASK ? diff --git a/src/ui/dialog/guides.cpp b/src/ui/dialog/guides.cpp index 5dfafa78d..e84f25733 100644 --- a/src/ui/dialog/guides.cpp +++ b/src/ui/dialog/guides.cpp @@ -25,7 +25,7 @@ #include "sp-guide.h" #include "sp-namedview.h" #include "desktop-handles.h" -#include "event-context.h" +#include "ui/tools/tool-base.h" #include "widgets/desktop-widget.h" #include <glibmm/i18n.h> #include "dialogs/dialog-events.h" diff --git a/src/ui/dialog/layer-properties.cpp b/src/ui/dialog/layer-properties.cpp index b9e5d4883..f19828b1f 100644 --- a/src/ui/dialog/layer-properties.cpp +++ b/src/ui/dialog/layer-properties.cpp @@ -31,7 +31,7 @@ #include "selection-chemistry.h" #include "ui/icon-names.h" #include "ui/widget/imagetoggler.h" -#include "event-context.h" +#include "ui/tools/tool-base.h" namespace Inkscape { namespace UI { @@ -318,7 +318,7 @@ SPObject* LayerPropertiesDialog::_selectedLayer() bool LayerPropertiesDialog::_handleKeyEvent(GdkEventKey *event) { - switch (get_group0_keyval(event)) { + switch (Inkscape::UI::Tools::get_group0_keyval(event)) { case GDK_KEY_Return: case GDK_KEY_KP_Enter: { _strategy->perform(*this); diff --git a/src/ui/dialog/layers.cpp b/src/ui/dialog/layers.cpp index c01903f94..12fdf6b7d 100644 --- a/src/ui/dialog/layers.cpp +++ b/src/ui/dialog/layers.cpp @@ -41,7 +41,7 @@ #include "widgets/icon.h" #include "xml/repr.h" #include "sp-root.h" -#include "event-context.h" +#include "ui/tools/tool-base.h" #include "selection-chemistry.h" //#define DUMP_LAYERS 1 @@ -544,7 +544,7 @@ void LayersPanel::_toggled( Glib::ustring const& str, int targetCol ) bool LayersPanel::_handleKeyEvent(GdkEventKey *event) { - switch (get_group0_keyval(event)) { + switch (Inkscape::UI::Tools::get_group0_keyval(event)) { case GDK_KEY_Return: case GDK_KEY_KP_Enter: case GDK_KEY_F2: { diff --git a/src/ui/dialog/spellcheck.cpp b/src/ui/dialog/spellcheck.cpp index 45106755c..00bd445bf 100644 --- a/src/ui/dialog/spellcheck.cpp +++ b/src/ui/dialog/spellcheck.cpp @@ -24,7 +24,7 @@ #include "desktop.h" #include "desktop-handles.h" #include "tools-switch.h" -#include "text-context.h" +#include "ui/tools/text-tool.h" #include "interface.h" #include "preferences.h" #include "sp-text.h" diff --git a/src/ui/dialog/xml-tree.cpp b/src/ui/dialog/xml-tree.cpp index a537b7fca..0e1e9f7a6 100644 --- a/src/ui/dialog/xml-tree.cpp +++ b/src/ui/dialog/xml-tree.cpp @@ -27,7 +27,7 @@ #include "dialogs/dialog-events.h" #include "document.h" #include "document-undo.h" -#include "event-context.h" +#include "ui/tools/tool-base.h" #include "helper/window.h" #include "inkscape.h" #include "interface.h" @@ -328,7 +328,7 @@ void XmlTree::attr_reset_context(gint attr) bool XmlTree::sp_xml_tree_key_press(GdkEventKey *event) { - unsigned int shortcut = get_group0_keyval (event) | + unsigned int shortcut = Inkscape::UI::Tools::get_group0_keyval (event) | ( event->state & GDK_SHIFT_MASK ? SP_SHORTCUT_SHIFT_MASK : 0 ) | ( event->state & GDK_CONTROL_MASK ? @@ -842,7 +842,7 @@ void XmlTree::on_document_uri_set(gchar const * /*uri*/, SPDocument * /*document gboolean XmlTree::quit_on_esc (GtkWidget *w, GdkEventKey *event, GObject */*tbl*/) { - switch (get_group0_keyval (event)) { + switch (Inkscape::UI::Tools::get_group0_keyval (event)) { case GDK_KEY_Escape: // defocus gtk_widget_destroy(w); return TRUE; diff --git a/src/ui/tool/Makefile_insert b/src/ui/tool/Makefile_insert index 2a72dd645..f46f48b72 100644 --- a/src/ui/tool/Makefile_insert +++ b/src/ui/tool/Makefile_insert @@ -19,8 +19,6 @@ ink_common_sources += \ ui/tool/node.cpp \ ui/tool/node.h \ ui/tool/node-types.h \ - ui/tool/node-tool.cpp \ - ui/tool/node-tool.h \ ui/tool/path-manipulator.cpp \ ui/tool/path-manipulator.h \ ui/tool/selectable-control-point.cpp \ diff --git a/src/ui/tool/control-point-selection.cpp b/src/ui/tool/control-point-selection.cpp index 1c42c5d90..b5ee0a597 100644 --- a/src/ui/tool/control-point-selection.cpp +++ b/src/ui/tool/control-point-selection.cpp @@ -582,7 +582,7 @@ void ControlPointSelection::_commitHandlesTransform(CommitEvent ce) signal_commit.emit(ce); } -bool ControlPointSelection::event(SPEventContext * /*event_context*/, GdkEvent *event) +bool ControlPointSelection::event(Inkscape::UI::Tools::ToolBase * /*event_context*/, GdkEvent *event) { // implement generic event handling that should apply for all control point selections here; // for example, keyboard moves and transformations. This way this functionality doesn't need diff --git a/src/ui/tool/control-point-selection.h b/src/ui/tool/control-point-selection.h index f5eb47026..a087e0455 100644 --- a/src/ui/tool/control-point-selection.h +++ b/src/ui/tool/control-point-selection.h @@ -90,7 +90,7 @@ public: void invertSelection(); void spatialGrow(SelectableControlPoint *origin, int dir); - virtual bool event(SPEventContext *, GdkEvent *); + virtual bool event(Inkscape::UI::Tools::ToolBase *, GdkEvent *); void transform(Geom::Affine const &m); void align(Geom::Dim2 d); diff --git a/src/ui/tool/control-point.cpp b/src/ui/tool/control-point.cpp index 069dcc67b..e98c7b2a2 100644 --- a/src/ui/tool/control-point.cpp +++ b/src/ui/tool/control-point.cpp @@ -14,7 +14,7 @@ #include "desktop-handles.h" #include "display/sp-canvas.h" #include "display/snap-indicator.h" -#include "event-context.h" +#include "ui/tools/tool-base.h" #include "message-context.h" #include "preferences.h" #include "snap-preferences.h" @@ -218,7 +218,7 @@ int ControlPoint::_event_handler(SPCanvasItem */*item*/, GdkEvent *event, Contro } // main event callback, which emits all other callbacks. -bool ControlPoint::_eventHandler(SPEventContext *event_context, GdkEvent *event) +bool ControlPoint::_eventHandler(Inkscape::UI::Tools::ToolBase *event_context, GdkEvent *event) { // NOTE the static variables below are shared for all points! // TODO handle clicks and drags from other buttons too @@ -310,7 +310,7 @@ bool ControlPoint::_eventHandler(SPEventContext *event_context, GdkEvent *event) _desktop->set_coordinate_status(_position); sp_event_context_snap_delay_handler(event_context, NULL, (gpointer) this, &event->motion, - DelayedSnapEvent::CONTROL_POINT_HANDLER); + Inkscape::UI::Tools::DelayedSnapEvent::CONTROL_POINT_HANDLER); } return true; } @@ -375,7 +375,7 @@ bool ControlPoint::_eventHandler(SPEventContext *event_context, GdkEvent *event) // update tips on modifier state change // TODO add ESC keybinding as drag cancel case GDK_KEY_PRESS: - switch (get_group0_keyval(&event->key)) + switch (Inkscape::UI::Tools::get_group0_keyval(&event->key)) { case GDK_KEY_Escape: { // ignore Escape if this is not a drag diff --git a/src/ui/tool/control-point.h b/src/ui/tool/control-point.h index 30efe8a27..b3ed9545e 100644 --- a/src/ui/tool/control-point.h +++ b/src/ui/tool/control-point.h @@ -23,7 +23,16 @@ #include "enums.h" class SPDesktop; -class SPEventContext; + +namespace Inkscape { +namespace UI { +namespace Tools { + +class ToolBase; + +} +} +} namespace Inkscape { namespace UI { @@ -181,7 +190,7 @@ public: static Glib::ustring format_tip(char const *format, ...) G_GNUC_PRINTF(1,2); // temporarily public, until snap delay is refactored a little - virtual bool _eventHandler(SPEventContext *event_context, GdkEvent *event); + virtual bool _eventHandler(Inkscape::UI::Tools::ToolBase *event_context, GdkEvent *event); SPDesktop *const _desktop; ///< The desktop this control point resides on. protected: diff --git a/src/ui/tool/curve-drag-point.cpp b/src/ui/tool/curve-drag-point.cpp index b83ce1b3c..4ca736f80 100644 --- a/src/ui/tool/curve-drag-point.cpp +++ b/src/ui/tool/curve-drag-point.cpp @@ -32,7 +32,7 @@ CurveDragPoint::CurveDragPoint(PathManipulator &pm) : setVisible(false); } -bool CurveDragPoint::_eventHandler(SPEventContext *event_context, GdkEvent *event) +bool CurveDragPoint::_eventHandler(Inkscape::UI::Tools::ToolBase *event_context, GdkEvent *event) { // do not process any events when the manipulator is empty if (_pm.empty()) { diff --git a/src/ui/tool/curve-drag-point.h b/src/ui/tool/curve-drag-point.h index 73e4cd969..ea83978e0 100644 --- a/src/ui/tool/curve-drag-point.h +++ b/src/ui/tool/curve-drag-point.h @@ -35,7 +35,7 @@ public: void setSize(double sz) { _setSize(sz); } void setTimeValue(double t) { _t = t; } void setIterator(NodeList::iterator i) { first = i; } - virtual bool _eventHandler(SPEventContext *event_context, GdkEvent *event); + virtual bool _eventHandler(Inkscape::UI::Tools::ToolBase *event_context, GdkEvent *event); protected: diff --git a/src/ui/tool/manipulator.h b/src/ui/tool/manipulator.h index ffed370d3..07e01a656 100644 --- a/src/ui/tool/manipulator.h +++ b/src/ui/tool/manipulator.h @@ -18,7 +18,7 @@ #include <glib.h> #include <gdk/gdk.h> #include <boost/shared_ptr.hpp> -#include "event-context.h" +#include "ui/tools/tool-base.h" class SPDesktop; namespace Inkscape { @@ -40,7 +40,7 @@ public: virtual ~Manipulator() {} /// Handle input event. Returns true if handled. - virtual bool event(SPEventContext *, GdkEvent *)=0; + virtual bool event(Inkscape::UI::Tools::ToolBase *, GdkEvent *)=0; SPDesktop *const _desktop; }; @@ -145,7 +145,7 @@ public: } } - virtual bool event(SPEventContext *event_context, GdkEvent *event) { + virtual bool event(Inkscape::UI::Tools::ToolBase *event_context, GdkEvent *event) { for (typename MapType::iterator i = _mmap.begin(); i != _mmap.end(); ++i) { if ((*i).second->event(event_context, event)) return true; } diff --git a/src/ui/tool/multi-path-manipulator.cpp b/src/ui/tool/multi-path-manipulator.cpp index 5d5ea2adc..519c4ac6a 100644 --- a/src/ui/tool/multi-path-manipulator.cpp +++ b/src/ui/tool/multi-path-manipulator.cpp @@ -557,7 +557,7 @@ void MultiPathManipulator::updateHandles() invokeForAll(&PathManipulator::updateHandles); } -bool MultiPathManipulator::event(SPEventContext *event_context, GdkEvent *event) +bool MultiPathManipulator::event(Inkscape::UI::Tools::ToolBase *event_context, GdkEvent *event) { _tracker.event(event); guint key = 0; diff --git a/src/ui/tool/multi-path-manipulator.h b/src/ui/tool/multi-path-manipulator.h index 54a9b5753..1328372c6 100644 --- a/src/ui/tool/multi-path-manipulator.h +++ b/src/ui/tool/multi-path-manipulator.h @@ -36,7 +36,7 @@ class MultiPathManipulator : public PointManipulator { public: MultiPathManipulator(PathSharedData &data, sigc::connection &chg); virtual ~MultiPathManipulator(); - virtual bool event(SPEventContext *, GdkEvent *event); + virtual bool event(Inkscape::UI::Tools::ToolBase *, GdkEvent *event); bool empty() { return _mmap.empty(); } unsigned size() { return _mmap.empty(); } diff --git a/src/ui/tool/node.cpp b/src/ui/tool/node.cpp index 76ec68c3e..e246bf997 100644 --- a/src/ui/tool/node.cpp +++ b/src/ui/tool/node.cpp @@ -250,7 +250,7 @@ char const *Handle::handle_type_to_localized_string(NodeType type) } } -bool Handle::_eventHandler(SPEventContext *event_context, GdkEvent *event) +bool Handle::_eventHandler(Inkscape::UI::Tools::ToolBase *event_context, GdkEvent *event) { switch (event->type) { @@ -834,7 +834,7 @@ NodeType Node::parse_nodetype(char x) } } -bool Node::_eventHandler(SPEventContext *event_context, GdkEvent *event) +bool Node::_eventHandler(Inkscape::UI::Tools::ToolBase *event_context, GdkEvent *event) { int dir = 0; diff --git a/src/ui/tool/node.h b/src/ui/tool/node.h index 591dd8532..b874949f5 100644 --- a/src/ui/tool/node.h +++ b/src/ui/tool/node.h @@ -16,7 +16,13 @@ #include <iosfwd> #include <stdexcept> #include <cstddef> + +#if __cplusplus >= 201103L +#include <functional> +#else #include <tr1/functional> +#endif + #include <boost/enable_shared_from_this.hpp> #include <boost/shared_ptr.hpp> #include "ui/tool/selectable-control-point.h" @@ -31,11 +37,13 @@ template <typename> class NodeIterator; } } +#if __cplusplus < 201103L namespace std { namespace tr1 { template <typename N> struct hash< Inkscape::UI::NodeIterator<N> >; } } +#endif namespace Inkscape { namespace UI { @@ -106,7 +114,7 @@ protected: Handle(NodeSharedData const &data, Geom::Point const &initial_pos, Node *parent); - virtual bool _eventHandler(SPEventContext *event_context, GdkEvent *event); + virtual bool _eventHandler(Inkscape::UI::Tools::ToolBase *event_context, GdkEvent *event); virtual void dragged(Geom::Point &new_pos, GdkEventMotion *event); virtual bool grabbed(GdkEventMotion *event); virtual void ungrabbed(GdkEventButton *event); @@ -217,7 +225,7 @@ public: // temporarily public /** Customized event handler to catch scroll events needed for selection grow/shrink. */ - virtual bool _eventHandler(SPEventContext *event_context, GdkEvent *event); + virtual bool _eventHandler(Inkscape::UI::Tools::ToolBase *event_context, GdkEvent *event); Inkscape::SnapCandidatePoint snapCandidatePoint(); diff --git a/src/ui/tool/path-manipulator.cpp b/src/ui/tool/path-manipulator.cpp index d12e2958b..ec58e2141 100644 --- a/src/ui/tool/path-manipulator.cpp +++ b/src/ui/tool/path-manipulator.cpp @@ -157,7 +157,7 @@ PathManipulator::~PathManipulator() } /** Handle motion events to update the position of the curve drag point. */ -bool PathManipulator::event(SPEventContext * /*event_context*/, GdkEvent *event) +bool PathManipulator::event(Inkscape::UI::Tools::ToolBase * /*event_context*/, GdkEvent *event) { if (empty()) return false; diff --git a/src/ui/tool/path-manipulator.h b/src/ui/tool/path-manipulator.h index e01e8617f..7a13ce723 100644 --- a/src/ui/tool/path-manipulator.h +++ b/src/ui/tool/path-manipulator.h @@ -56,7 +56,7 @@ public: PathManipulator(MultiPathManipulator &mpm, SPPath *path, Geom::Affine const &edit_trans, guint32 outline_color, Glib::ustring lpe_key); ~PathManipulator(); - virtual bool event(SPEventContext *, GdkEvent *); + virtual bool event(Inkscape::UI::Tools::ToolBase *, GdkEvent *); bool empty(); void writeXML(); diff --git a/src/ui/tool/selector.cpp b/src/ui/tool/selector.cpp index 2b3ba837c..bdeacadc9 100644 --- a/src/ui/tool/selector.cpp +++ b/src/ui/tool/selector.cpp @@ -13,7 +13,7 @@ #include "desktop.h" #include "desktop-handles.h" #include "display/sodipodi-ctrlrect.h" -#include "event-context.h" +#include "ui/tools/tool-base.h" #include "preferences.h" #include "ui/tool/event-utils.h" #include "ui/tool/selector.h" @@ -48,12 +48,12 @@ public: SPDesktop *desktop() { return _desktop; } - bool event(SPEventContext *ec, GdkEvent *e) { + bool event(Inkscape::UI::Tools::ToolBase *ec, GdkEvent *e) { return _eventHandler(ec, e); } protected: - virtual bool _eventHandler(SPEventContext *event_context, GdkEvent *event) { + virtual bool _eventHandler(Inkscape::UI::Tools::ToolBase *event_context, GdkEvent *event) { if (event->type == GDK_KEY_PRESS && shortcut_key(event->key) == GDK_KEY_Escape && sp_canvas_item_is_visible(_rubber)) { @@ -110,7 +110,7 @@ Selector::~Selector() delete _dragger; } -bool Selector::event(SPEventContext *event_context, GdkEvent *event) +bool Selector::event(Inkscape::UI::Tools::ToolBase *event_context, GdkEvent *event) { // The hidden control point will capture all events after it obtains the grab, // but it relies on this function to initiate it. If we pass only first button @@ -118,7 +118,7 @@ bool Selector::event(SPEventContext *event_context, GdkEvent *event) switch (event->type) { case GDK_BUTTON_PRESS: // Do not pass button presses other than left button to the control point. - // This way middle click and right click can be handled in SPEventContext. + // This way middle click and right click can be handled in ToolBase. if (event->button.button == 1 && !event_context->space_panning) { _dragger->setPosition(_desktop->w2d(event_point(event->motion))); return _dragger->event(event_context, event); diff --git a/src/ui/tool/selector.h b/src/ui/tool/selector.h index 7e2759b69..dbe751ede 100644 --- a/src/ui/tool/selector.h +++ b/src/ui/tool/selector.h @@ -28,7 +28,7 @@ class Selector : public Manipulator { public: Selector(SPDesktop *d); virtual ~Selector(); - virtual bool event(SPEventContext *, GdkEvent *); + virtual bool event(Inkscape::UI::Tools::ToolBase *, GdkEvent *); sigc::signal<void, Geom::Rect const &, GdkEventButton*> signal_area; sigc::signal<void, Geom::Point const &, GdkEventButton*> signal_point; diff --git a/src/ui/tool/transform-handle-set.cpp b/src/ui/tool/transform-handle-set.cpp index daed3a523..f21e1661a 100644 --- a/src/ui/tool/transform-handle-set.cpp +++ b/src/ui/tool/transform-handle-set.cpp @@ -26,7 +26,7 @@ #include "ui/tool/selectable-control-point.h" #include "ui/tool/event-utils.h" #include "ui/tool/transform-handle-set.h" -#include "ui/tool/node-tool.h" +#include "ui/tools/node-tool.h" #include "ui/tool/node.h" #include "seltrans.h" @@ -128,7 +128,7 @@ bool TransformHandle::grabbed(GdkEventMotion *) _setState(_state); // Collect the snap-candidates, one for each selected node. These will be stored in the _snap_points vector. - InkNodeTool *nt = INK_NODE_TOOL(_th._desktop->event_context); + Inkscape::UI::Tools::NodeTool *nt = INK_NODE_TOOL(_th._desktop->event_context); //ControlPointSelection *selection = nt->_selected_nodes.get(); ControlPointSelection* selection = nt->_selected_nodes; @@ -754,7 +754,7 @@ void TransformHandleSet::setBounds(Geom::Rect const &r, bool preserve_center) } } -bool TransformHandleSet::event(SPEventContext *, GdkEvent*) +bool TransformHandleSet::event(Inkscape::UI::Tools::ToolBase *, GdkEvent*) { return false; } diff --git a/src/ui/tool/transform-handle-set.h b/src/ui/tool/transform-handle-set.h index ce949cbb2..54f81adf5 100644 --- a/src/ui/tool/transform-handle-set.h +++ b/src/ui/tool/transform-handle-set.h @@ -40,7 +40,7 @@ public: TransformHandleSet(SPDesktop *d, SPCanvasGroup *th_group); virtual ~TransformHandleSet(); - virtual bool event(SPEventContext *, GdkEvent *); + virtual bool event(Inkscape::UI::Tools::ToolBase *, GdkEvent *); bool visible() const { return _visible; } Mode mode() const { return _mode; } diff --git a/src/ui/tools/Makefile_insert b/src/ui/tools/Makefile_insert new file mode 100644 index 000000000..cd09a3230 --- /dev/null +++ b/src/ui/tools/Makefile_insert @@ -0,0 +1,28 @@ +## Makefile.am fragment sourced by src/Makefile.am. + +ink_common_sources += \ + ui/tools/arc-tool.cpp ui/tools/arc-tool.h \ + ui/tools/box3d-tool.cpp ui/tools/box3d-tool.h \ + ui/tools/calligraphic-tool.cpp ui/tools/calligraphic-tool.h \ + ui/tools/connector-tool.cpp ui/tools/connector-tool.h \ + ui/tools/dropper-tool.cpp ui/tools/dropper-tool.h \ + ui/tools/dynamic-base.cpp ui/tools/dynamic-base.h \ + ui/tools/eraser-tool.cpp ui/tools/eraser-tool.h \ + ui/tools/flood-tool.cpp ui/tools/flood-tool.h \ + ui/tools/freehand-base.cpp ui/tools/freehand-base.h \ + ui/tools/gradient-tool.cpp ui/tools/gradient-tool.h \ + ui/tools/lpe-tool.cpp ui/tools/lpe-tool.h \ + ui/tools/measure-tool.cpp ui/tools/measure-tool.h \ + ui/tools/mesh-tool.cpp ui/tools/mesh-tool.h \ + ui/tools/node-tool.cpp ui/tools/node-tool.h \ + ui/tools/pen-tool.cpp ui/tools/pen-tool.h \ + ui/tools/pencil-tool.cpp ui/tools/pencil-tool.h \ + ui/tools/rect-tool.cpp ui/tools/rect-tool.h \ + ui/tools/select-tool.cpp ui/tools/select-tool.h \ + ui/tools/spiral-tool.cpp ui/tools/spiral-tool.h \ + ui/tools/spray-tool.cpp ui/tools/spray-tool.h \ + ui/tools/star-tool.cpp ui/tools/star-tool.h \ + ui/tools/text-tool.cpp ui/tools/text-tool.h \ + ui/tools/tool-base.cpp ui/tools/tool-base.h \ + ui/tools/tweak-tool.cpp ui/tools/tweak-tool.h \ + ui/tools/zoom-tool.cpp ui/tools/zoom-tool.h
\ No newline at end of file diff --git a/src/arc-context.cpp b/src/ui/tools/arc-tool.cpp index a14562a32..bb7dfa21c 100644 --- a/src/arc-context.cpp +++ b/src/ui/tools/arc-tool.cpp @@ -41,31 +41,35 @@ #include "context-fns.h" #include "verbs.h" #include "shape-editor.h" -#include "event-context.h" +#include "ui/tools/tool-base.h" -#include "arc-context.h" +#include "ui/tools/arc-tool.h" #include "display/sp-canvas-item.h" using Inkscape::DocumentUndo; #include "tool-factory.h" +namespace Inkscape { +namespace UI { +namespace Tools { + namespace { - SPEventContext* createArcContext() { - return new SPArcContext(); + ToolBase* createArcContext() { + return new ArcTool(); } bool arcContextRegistered = ToolFactory::instance().registerObject("/tools/shapes/arc", createArcContext); } -const std::string& SPArcContext::getPrefsPath() { - return SPArcContext::prefsPath; +const std::string& ArcTool::getPrefsPath() { + return ArcTool::prefsPath; } -const std::string SPArcContext::prefsPath = "/tools/shapes/arc"; +const std::string ArcTool::prefsPath = "/tools/shapes/arc"; -SPArcContext::SPArcContext() : SPEventContext() { +ArcTool::ArcTool() : ToolBase() { this->cursor_shape = cursor_ellipse_xpm; this->hot_x = 4; this->hot_y = 4; @@ -79,15 +83,15 @@ SPArcContext::SPArcContext() : SPEventContext() { this->arc = NULL; } -void SPArcContext::finish() { +void ArcTool::finish() { sp_canvas_item_ungrab(SP_CANVAS_ITEM(desktop->acetate), GDK_CURRENT_TIME); this->finishItem(); this->sel_changed_connection.disconnect(); - SPEventContext::finish(); + ToolBase::finish(); } -SPArcContext::~SPArcContext() { +ArcTool::~ArcTool() { this->enableGrDrag(false); this->sel_changed_connection.disconnect(); @@ -105,13 +109,13 @@ SPArcContext::~SPArcContext() { * Callback that processes the "changed" signal on the selection; * destroys old and creates new knotholder. */ -void SPArcContext::selection_changed(Inkscape::Selection* selection) { +void ArcTool::selection_changed(Inkscape::Selection* selection) { this->shape_editor->unset_item(SH_KNOTHOLDER); this->shape_editor->set_item(selection->singleItem(), SH_KNOTHOLDER); } -void SPArcContext::setup() { - SPEventContext::setup(); +void ArcTool::setup() { + ToolBase::setup(); Inkscape::Selection *selection = sp_desktop_selection(this->desktop); @@ -124,7 +128,7 @@ void SPArcContext::setup() { this->sel_changed_connection.disconnect(); this->sel_changed_connection = selection->connectChanged( - sigc::mem_fun(this, &SPArcContext::selection_changed) + sigc::mem_fun(this, &ArcTool::selection_changed) ); Inkscape::Preferences *prefs = Inkscape::Preferences::get(); @@ -137,7 +141,7 @@ void SPArcContext::setup() { } } -bool SPArcContext::item_handler(SPItem* item, GdkEvent* event) { +bool ArcTool::item_handler(SPItem* item, GdkEvent* event) { gint ret = FALSE; switch (event->type) { @@ -156,12 +160,12 @@ bool SPArcContext::item_handler(SPItem* item, GdkEvent* event) { // ret = (SP_EVENT_CONTEXT_CLASS(sp_arc_context_parent_class))->item_handler(event_context, item, event); // } // CPPIFY: ret is overwritten... - ret = SPEventContext::item_handler(item, event); + ret = ToolBase::item_handler(item, event); return ret; } -bool SPArcContext::root_handler(GdkEvent* event) { +bool ArcTool::root_handler(GdkEvent* event) { static bool dragging; Inkscape::Selection *selection = sp_desktop_selection(desktop); @@ -343,13 +347,13 @@ bool SPArcContext::root_handler(GdkEvent* event) { } if (!ret) { - ret = SPEventContext::root_handler(event); + ret = ToolBase::root_handler(event); } return ret; } -void SPArcContext::drag(Geom::Point pt, guint state) { +void ArcTool::drag(Geom::Point pt, guint state) { if (!this->arc) { if (Inkscape::have_viable_layer(desktop, this->message_context) == false) { return; @@ -441,7 +445,7 @@ void SPArcContext::drag(Geom::Point pt, guint state) { g_string_free(ys, FALSE); } -void SPArcContext::finishItem() { +void ArcTool::finishItem() { this->message_context->clear(); if (this->arc != NULL) { @@ -463,7 +467,7 @@ void SPArcContext::finishItem() { } } -void SPArcContext::cancel() { +void ArcTool::cancel() { sp_desktop_selection(desktop)->clear(); sp_canvas_item_ungrab(SP_CANVAS_ITEM(desktop->acetate), 0); @@ -482,6 +486,10 @@ void SPArcContext::cancel() { DocumentUndo::cancel(sp_desktop_document(desktop)); } +} +} +} + /* Local Variables: diff --git a/src/arc-context.h b/src/ui/tools/arc-tool.h index 6a0a6c071..eaa50f2b9 100644 --- a/src/arc-context.h +++ b/src/ui/tools/arc-tool.h @@ -19,17 +19,21 @@ #include <sigc++/connection.h> #include <2geom/point.h> -#include "event-context.h" +#include "ui/tools/tool-base.h" #include "sp-ellipse.h" -#define SP_ARC_CONTEXT(obj) (dynamic_cast<SPArcContext*>((SPEventContext*)obj)) -#define SP_IS_ARC_CONTEXT(obj) (dynamic_cast<const SPArcContext*>(const SPEventContext*(obj)) != NULL) +#define SP_ARC_CONTEXT(obj) (dynamic_cast<Inkscape::UI::Tools::ArcTool*>((Inkscape::UI::Tools::ToolBase*)obj)) +#define SP_IS_ARC_CONTEXT(obj) (dynamic_cast<const Inkscape::UI::Tools::ArcTool*>(const Inkscape::UI::Tools::ToolBase*(obj)) != NULL) -class SPArcContext : public SPEventContext { +namespace Inkscape { +namespace UI { +namespace Tools { + +class ArcTool : public ToolBase { public: - SPArcContext(); - virtual ~SPArcContext(); + ArcTool(); + virtual ~ArcTool(); static const std::string prefsPath; @@ -54,6 +58,10 @@ private: void cancel(); }; +} +} +} + #endif /* !SEEN_ARC_CONTEXT_H */ /* diff --git a/src/box3d-context.cpp b/src/ui/tools/box3d-tool.cpp index f270fa244..80cc75e79 100644 --- a/src/box3d-context.cpp +++ b/src/ui/tools/box3d-tool.cpp @@ -34,7 +34,7 @@ #include "message-context.h" #include "pixmaps/cursor-3dbox.xpm" #include "box3d.h" -#include "box3d-context.h" +#include "ui/tools/box3d-tool.h" #include <glibmm/i18n.h> #include "xml/repr.h" #include "xml/node-event-vector.h" @@ -54,21 +54,25 @@ using Inkscape::DocumentUndo; #include "tool-factory.h" +namespace Inkscape { +namespace UI { +namespace Tools { + namespace { - SPEventContext* createBox3dContext() { - return new Box3DContext(); + ToolBase* createBox3dTool() { + return new Box3dTool(); } - bool box3dContextRegistered = ToolFactory::instance().registerObject("/tools/shapes/3dbox", createBox3dContext); + bool Box3dToolRegistered = ToolFactory::instance().registerObject("/tools/shapes/3dbox", createBox3dTool); } -const std::string& Box3DContext::getPrefsPath() { - return Box3DContext::prefsPath; +const std::string& Box3dTool::getPrefsPath() { + return Box3dTool::prefsPath; } -const std::string Box3DContext::prefsPath = "/tools/shapes/3dbox"; +const std::string Box3dTool::prefsPath = "/tools/shapes/3dbox"; -Box3DContext::Box3DContext() : SPEventContext() { +Box3dTool::Box3dTool() : ToolBase() { this->cursor_shape = cursor_3dbox_xpm; this->hot_x = 4; this->hot_y = 4; @@ -86,16 +90,16 @@ Box3DContext::Box3DContext() : SPEventContext() { this->_vpdrag = NULL; } -void Box3DContext::finish() { +void Box3dTool::finish() { sp_canvas_item_ungrab(SP_CANVAS_ITEM(desktop->acetate), GDK_CURRENT_TIME); this->finishItem(); this->sel_changed_connection.disconnect(); - SPEventContext::finish(); + ToolBase::finish(); } -Box3DContext::~Box3DContext() { +Box3dTool::~Box3dTool() { this->enableGrDrag(false); delete (this->_vpdrag); @@ -116,7 +120,7 @@ Box3DContext::~Box3DContext() { * Callback that processes the "changed" signal on the selection; * destroys old and creates new knotholder. */ -void Box3DContext::selection_changed(Inkscape::Selection* selection) { +void Box3dTool::selection_changed(Inkscape::Selection* selection) { this->shape_editor->unset_item(SH_KNOTHOLDER); this->shape_editor->set_item(selection->singleItem(), SH_KNOTHOLDER); @@ -145,8 +149,8 @@ static void sp_box3d_context_ensure_persp_in_defs(SPDocument *document) { } } -void Box3DContext::setup() { - SPEventContext::setup(); +void Box3dTool::setup() { + ToolBase::setup(); this->shape_editor = new ShapeEditor(this->desktop); @@ -157,7 +161,7 @@ void Box3DContext::setup() { this->sel_changed_connection.disconnect(); this->sel_changed_connection = sp_desktop_selection(this->desktop)->connectChanged( - sigc::mem_fun(this, &Box3DContext::selection_changed) + sigc::mem_fun(this, &Box3dTool::selection_changed) ); this->_vpdrag = new Box3D::VPDrag(sp_desktop_document(this->desktop)); @@ -173,7 +177,7 @@ void Box3DContext::setup() { } } -bool Box3DContext::item_handler(SPItem* item, GdkEvent* event) { +bool Box3dTool::item_handler(SPItem* item, GdkEvent* event) { gint ret = FALSE; switch (event->type) { @@ -188,16 +192,16 @@ bool Box3DContext::item_handler(SPItem* item, GdkEvent* event) { break; } -// if (((SPEventContextClass *) sp_box3d_context_parent_class)->item_handler) { -// ret = ((SPEventContextClass *) sp_box3d_context_parent_class)->item_handler(event_context, item, event); +// if (((ToolBaseClass *) sp_box3d_context_parent_class)->item_handler) { +// ret = ((ToolBaseClass *) sp_box3d_context_parent_class)->item_handler(event_context, item, event); // } // CPPIFY: ret is always overwritten... - ret = SPEventContext::item_handler(item, event); + ret = ToolBase::item_handler(item, event); return ret; } -bool Box3DContext::root_handler(GdkEvent* event) { +bool Box3dTool::root_handler(GdkEvent* event) { static bool dragging; SPDocument *document = sp_desktop_document (desktop); @@ -505,13 +509,13 @@ bool Box3DContext::root_handler(GdkEvent* event) { } if (!ret) { - ret = SPEventContext::root_handler(event); + ret = ToolBase::root_handler(event); } return ret; } -void Box3DContext::drag(guint state) { +void Box3dTool::drag(guint state) { if (!this->box3d) { if (Inkscape::have_viable_layer(desktop, this->message_context) == false) { return; @@ -588,7 +592,7 @@ void Box3DContext::drag(guint state) { this->message_context->setF(Inkscape::NORMAL_MESSAGE, "%s", _("<b>3D Box</b>; with <b>Shift</b> to extrude along the Z axis")); } -void Box3DContext::finishItem() { +void Box3dTool::finishItem() { this->message_context->clear(); this->ctrl_dragged = false; this->extruded = false; @@ -617,6 +621,10 @@ void Box3DContext::finishItem() { } } +} +} +} + /* Local Variables: mode:c++ diff --git a/src/box3d-context.h b/src/ui/tools/box3d-tool.h index 044d79d7d..99bf99a7a 100644 --- a/src/box3d-context.h +++ b/src/ui/tools/box3d-tool.h @@ -17,19 +17,23 @@ #include <stddef.h> #include <sigc++/sigc++.h> -#include "event-context.h" +#include "ui/tools/tool-base.h" #include "proj_pt.h" #include "vanishing-point.h" #include "box3d.h" -#define SP_BOX3D_CONTEXT(obj) (dynamic_cast<Box3DContext*>((SPEventContext*)obj)) -#define SP_IS_BOX3D_CONTEXT(obj) (dynamic_cast<const Box3DContext*>((const SPEventContext*)obj) != NULL) +#define SP_BOX3D_CONTEXT(obj) (dynamic_cast<Inkscape::UI::Tools::Box3dTool*>((Inkscape::UI::Tools::ToolBase*)obj)) +#define SP_IS_BOX3D_CONTEXT(obj) (dynamic_cast<const Inkscape::UI::Tools::Box3dTool*>((const Inkscape::UI::Tools::ToolBase*)obj) != NULL) -class Box3DContext : public SPEventContext { +namespace Inkscape { +namespace UI { +namespace Tools { + +class Box3dTool : public ToolBase { public: - Box3DContext(); - virtual ~Box3DContext(); + Box3dTool(); + virtual ~Box3dTool(); Box3D::VPDrag * _vpdrag; @@ -73,6 +77,10 @@ private: void finishItem(); }; +} +} +} + #endif /* __SP_BOX3D_CONTEXT_H__ */ /* diff --git a/src/dyna-draw-context.cpp b/src/ui/tools/calligraphic-tool.cpp index f8980e218..2c5e6561c 100644 --- a/src/dyna-draw-context.cpp +++ b/src/ui/tools/calligraphic-tool.cpp @@ -68,7 +68,7 @@ #include "livarot/Shape.h" #include "verbs.h" -#include "dyna-draw-context.h" +#include "ui/tools/calligraphic-tool.h" using Inkscape::DocumentUndo; @@ -82,27 +82,30 @@ using Inkscape::DocumentUndo; #define DYNA_MIN_WIDTH 1.0e-6 -static void add_cap(SPCurve *curve, Geom::Point const &from, Geom::Point const &to, double rounding); +#include "tool-factory.h" +namespace Inkscape { +namespace UI { +namespace Tools { -#include "tool-factory.h" +static void add_cap(SPCurve *curve, Geom::Point const &from, Geom::Point const &to, double rounding); namespace { - SPEventContext* createCalligraphicContext() { - return new SPDynaDrawContext(); + ToolBase* createCalligraphicContext() { + return new CalligraphicTool(); } bool calligraphicContextRegistered = ToolFactory::instance().registerObject("/tools/calligraphic", createCalligraphicContext); } -const std::string& SPDynaDrawContext::getPrefsPath() { - return SPDynaDrawContext::prefsPath; +const std::string& CalligraphicTool::getPrefsPath() { + return CalligraphicTool::prefsPath; } -const std::string SPDynaDrawContext::prefsPath = "/tools/calligraphic"; +const std::string CalligraphicTool::prefsPath = "/tools/calligraphic"; -SPDynaDrawContext::SPDynaDrawContext() : SPCommonContext() { +CalligraphicTool::CalligraphicTool() : DynamicBase() { this->cursor_shape = cursor_calligraphy_xpm; this->hot_x = 4; this->hot_y = 4; @@ -128,15 +131,15 @@ SPDynaDrawContext::SPDynaDrawContext() : SPCommonContext() { this->just_started_drawing = false; } -SPDynaDrawContext::~SPDynaDrawContext() { +CalligraphicTool::~CalligraphicTool() { if (this->hatch_area) { sp_canvas_item_destroy(this->hatch_area); this->hatch_area = NULL; } } -void SPDynaDrawContext::setup() { - SPCommonContext::setup(); +void CalligraphicTool::setup() { + DynamicBase::setup(); this->accumulated = new SPCurve(); this->currentcurve = new SPCurve(); @@ -152,7 +155,7 @@ void SPDynaDrawContext::setup() { g_signal_connect(G_OBJECT(this->currentshape), "event", G_CALLBACK(sp_desktop_root_handler), this->desktop); { - /* TODO: have a look at SPDropperContext::setup where the same is done.. generalize? */ + /* TODO: have a look at DropperTool::setup where the same is done.. generalize? */ Geom::PathVector path; Geom::Circle(0, 0, 1).getPath(path); @@ -189,7 +192,7 @@ void SPDynaDrawContext::setup() { } } -void SPDynaDrawContext::set(const Inkscape::Preferences::Entry& val) { +void CalligraphicTool::set(const Inkscape::Preferences::Entry& val) { Glib::ustring path = val.getEntryName(); if (path == "tracebackground") { @@ -198,7 +201,7 @@ void SPDynaDrawContext::set(const Inkscape::Preferences::Entry& val) { this->keep_selected = val.getBool(); } else { //pass on up to parent class to handle common attributes. - SPCommonContext::set(val); + DynamicBase::set(val); } //g_print("DDC: %g %g %g %g\n", ddc->mass, ddc->drag, ddc->angle, ddc->width); @@ -211,7 +214,7 @@ flerp(double f0, double f1, double p) } ///* Get normalized point */ -//Geom::Point SPDynaDrawContext::getNormalizedPoint(Geom::Point v) const { +//Geom::Point CalligraphicTool::getNormalizedPoint(Geom::Point v) const { // Geom::Rect drect = desktop->get_display_area(); // // double const max = MAX ( drect.dimensions()[Geom::X], drect.dimensions()[Geom::Y] ); @@ -220,7 +223,7 @@ flerp(double f0, double f1, double p) //} // ///* Get view point */ -//Geom::Point SPDynaDrawContext::getViewPoint(Geom::Point n) const { +//Geom::Point CalligraphicTool::getViewPoint(Geom::Point n) const { // Geom::Rect drect = desktop->get_display_area(); // // double const max = MAX ( drect.dimensions()[Geom::X], drect.dimensions()[Geom::Y] ); @@ -228,7 +231,7 @@ flerp(double f0, double f1, double p) // return Geom::Point(n[Geom::X] * max + drect.min()[Geom::X], n[Geom::Y] * max + drect.min()[Geom::Y]); //} -void SPDynaDrawContext::reset(Geom::Point p) { +void CalligraphicTool::reset(Geom::Point p) { this->last = this->cur = this->getNormalizedPoint(p); this->vel = Geom::Point(0,0); @@ -238,7 +241,7 @@ void SPDynaDrawContext::reset(Geom::Point p) { this->del = Geom::Point(0,0); } -void SPDynaDrawContext::extinput(GdkEvent *event) { +void CalligraphicTool::extinput(GdkEvent *event) { if (gdk_event_get_axis (event, GDK_AXIS_PRESSURE, &this->pressure)) { this->pressure = CLAMP (this->pressure, DDC_MIN_PRESSURE, DDC_MAX_PRESSURE); } else { @@ -259,7 +262,7 @@ void SPDynaDrawContext::extinput(GdkEvent *event) { } -bool SPDynaDrawContext::apply(Geom::Point p) { +bool CalligraphicTool::apply(Geom::Point p) { Geom::Point n = this->getNormalizedPoint(p); /* Calculate mass and drag */ @@ -356,7 +359,7 @@ bool SPDynaDrawContext::apply(Geom::Point p) { return TRUE; } -void SPDynaDrawContext::brush() { +void CalligraphicTool::brush() { g_assert( this->npoints >= 0 && this->npoints < SAMPLING_SIZE ); // How much velocity thins strokestyle @@ -436,7 +439,7 @@ sp_ddc_update_toolbox (SPDesktop *desktop, const gchar *id, double value) desktop->setToolboxAdjustmentValue (id, value); } -void SPDynaDrawContext::cancel() { +void CalligraphicTool::cancel() { this->dragging = false; this->is_drawing = false; @@ -457,7 +460,7 @@ void SPDynaDrawContext::cancel() { } } -bool SPDynaDrawContext::root_handler(GdkEvent* event) { +bool CalligraphicTool::root_handler(GdkEvent* event) { gint ret = FALSE; switch (event->type) { @@ -900,14 +903,14 @@ bool SPDynaDrawContext::root_handler(GdkEvent* event) { // if ((SP_EVENT_CONTEXT_CLASS(sp_dyna_draw_context_parent_class))->root_handler) { // ret = (SP_EVENT_CONTEXT_CLASS(sp_dyna_draw_context_parent_class))->root_handler(event_context, event); // } - ret = SPCommonContext::root_handler(event); + ret = DynamicBase::root_handler(event); } return ret; } -void SPDynaDrawContext::clear_current() { +void CalligraphicTool::clear_current() { /* reset bpath */ sp_canvas_bpath_set_bpath(SP_CANVAS_BPATH(this->currentshape), NULL); /* reset curve */ @@ -918,7 +921,7 @@ void SPDynaDrawContext::clear_current() { this->npoints = 0; } -void SPDynaDrawContext::set_to_accumulated(bool unionize, bool subtract) { +void CalligraphicTool::set_to_accumulated(bool unionize, bool subtract) { if (!this->accumulated->is_empty()) { if (!this->repr) { /* Create object */ @@ -995,7 +998,7 @@ add_cap(SPCurve *curve, } } -bool SPDynaDrawContext::accumulate() { +bool CalligraphicTool::accumulate() { if ( this->cal1->is_empty() || this->cal2->is_empty() || @@ -1050,7 +1053,7 @@ static double square(double const x) return x * x; } -void SPDynaDrawContext::fit_and_split(bool release) { +void CalligraphicTool::fit_and_split(bool release) { double const tolerance_sq = square( desktop->w2d().descrim() * TOLERANCE_CALLIGRAPHIC ); #ifdef DYNA_DRAW_VERBOSE @@ -1175,7 +1178,7 @@ void SPDynaDrawContext::fit_and_split(bool release) { } } -void SPDynaDrawContext::draw_temporary_box() { +void CalligraphicTool::draw_temporary_box() { this->currentcurve->reset(); this->currentcurve->moveto(this->point2[this->npoints-1]); @@ -1196,6 +1199,11 @@ void SPDynaDrawContext::draw_temporary_box() { sp_canvas_bpath_set_bpath(SP_CANVAS_BPATH(this->currentshape), this->currentcurve); } +} +} +} + + /* Local Variables: mode:c++ diff --git a/src/dyna-draw-context.h b/src/ui/tools/calligraphic-tool.h index 36a429a8d..926e9d126 100644 --- a/src/dyna-draw-context.h +++ b/src/ui/tools/calligraphic-tool.h @@ -18,7 +18,7 @@ * Released under GNU GPL, read the file 'COPYING' for more information */ -#include "common-context.h" +#include "ui/tools/dynamic-base.h" #include "splivarot.h" #define DDC_MIN_PRESSURE 0.0 @@ -29,10 +29,14 @@ #define DDC_MAX_TILT 1.0 #define DDC_DEFAULT_TILT 0.0 -class SPDynaDrawContext : public SPCommonContext { +namespace Inkscape { +namespace UI { +namespace Tools { + +class CalligraphicTool : public DynamicBase { public: - SPDynaDrawContext(); - virtual ~SPDynaDrawContext(); + CalligraphicTool(); + virtual ~CalligraphicTool(); static const std::string prefsPath; @@ -72,6 +76,10 @@ private: void reset(Geom::Point p); }; +} +} +} + #endif // SP_DYNA_DRAW_CONTEXT_H_SEEN /* diff --git a/src/connector-context.cpp b/src/ui/tools/connector-tool.cpp index 99239533d..62d52f6af 100644 --- a/src/connector-context.cpp +++ b/src/ui/tools/connector-tool.cpp @@ -72,7 +72,7 @@ #include <string> #include <cstring> -#include "connector-context.h" +#include "ui/tools/connector-tool.h" #include "pixmaps/cursor-connector.xpm" #include "xml/node-event-vector.h" #include "xml/repr.h" @@ -109,32 +109,38 @@ using Inkscape::DocumentUndo; +#include "tool-factory.h" + +namespace Inkscape { +namespace UI { +namespace Tools { + // Stuff borrowed from DrawContext -static void spcc_connector_set_initial_point(SPConnectorContext *cc, Geom::Point const p); -static void spcc_connector_set_subsequent_point(SPConnectorContext *cc, Geom::Point const p); -static void spcc_connector_finish_segment(SPConnectorContext *cc, Geom::Point p); -static void spcc_reset_colors(SPConnectorContext *cc); -static void spcc_connector_finish(SPConnectorContext *cc); -static void spcc_concat_colors_and_flush(SPConnectorContext *cc); -static void spcc_flush_white(SPConnectorContext *cc, SPCurve *gc); +static void spcc_connector_set_initial_point(ConnectorTool *cc, Geom::Point const p); +static void spcc_connector_set_subsequent_point(ConnectorTool *cc, Geom::Point const p); +static void spcc_connector_finish_segment(ConnectorTool *cc, Geom::Point p); +static void spcc_reset_colors(ConnectorTool *cc); +static void spcc_connector_finish(ConnectorTool *cc); +static void spcc_concat_colors_and_flush(ConnectorTool *cc); +static void spcc_flush_white(ConnectorTool *cc, SPCurve *gc); // Context event handlers -static gint connector_handle_button_press(SPConnectorContext *const cc, GdkEventButton const &bevent); -static gint connector_handle_motion_notify(SPConnectorContext *const cc, GdkEventMotion const &mevent); -static gint connector_handle_button_release(SPConnectorContext *const cc, GdkEventButton const &revent); -static gint connector_handle_key_press(SPConnectorContext *const cc, guint const keyval); +static gint connector_handle_button_press(ConnectorTool *const cc, GdkEventButton const &bevent); +static gint connector_handle_motion_notify(ConnectorTool *const cc, GdkEventMotion const &mevent); +static gint connector_handle_button_release(ConnectorTool *const cc, GdkEventButton const &revent); +static gint connector_handle_key_press(ConnectorTool *const cc, guint const keyval); -static void cc_active_shape_add_knot(SPConnectorContext *cc, SPItem* item); -static void cc_set_active_shape(SPConnectorContext *cc, SPItem *item); +static void cc_active_shape_add_knot(ConnectorTool *cc, SPItem* item); +static void cc_set_active_shape(ConnectorTool *cc, SPItem *item); static void cc_clear_active_knots(SPKnotList k); -static void cc_clear_active_shape(SPConnectorContext *cc); -static void cc_set_active_conn(SPConnectorContext *cc, SPItem *item); -static void cc_clear_active_conn(SPConnectorContext *cc); -static bool conn_pt_handle_test(SPConnectorContext *cc, Geom::Point& p, gchar **href); +static void cc_clear_active_shape(ConnectorTool *cc); +static void cc_set_active_conn(ConnectorTool *cc, SPItem *item); +static void cc_clear_active_conn(ConnectorTool *cc); +static bool conn_pt_handle_test(ConnectorTool *cc, Geom::Point& p, gchar **href); static void cc_select_handle(SPKnot* knot); static void cc_deselect_handle(SPKnot* knot); static bool cc_item_is_shape(SPItem *item); -static void cc_connector_rerouting_finish(SPConnectorContext *const cc, +static void cc_connector_rerouting_finish(ConnectorTool *const cc, Geom::Point *const p); static void shape_event_attr_deleted(Inkscape::XML::Node *repr, @@ -162,24 +168,21 @@ static Inkscape::XML::NodeEventVector layer_repr_events = { NULL /* order_changed */ }; - -#include "tool-factory.h" - namespace { - SPEventContext* createConnectorContext() { - return new SPConnectorContext(); + ToolBase* createConnectorContext() { + return new ConnectorTool(); } bool connectorContextRegistered = ToolFactory::instance().registerObject("/tools/connector", createConnectorContext); } -const std::string& SPConnectorContext::getPrefsPath() { - return SPConnectorContext::prefsPath; +const std::string& ConnectorTool::getPrefsPath() { + return ConnectorTool::prefsPath; } -const std::string SPConnectorContext::prefsPath = "/tools/connector"; +const std::string ConnectorTool::prefsPath = "/tools/connector"; -SPConnectorContext::SPConnectorContext() : SPEventContext() { +ConnectorTool::ConnectorTool() : ToolBase() { this->red_curve = 0; this->isOrthogonal = false; this->c1 = 0; @@ -229,7 +232,7 @@ SPConnectorContext::SPConnectorContext() : SPEventContext() { this->state = SP_CONNECTOR_CONTEXT_IDLE; } -SPConnectorContext::~SPConnectorContext() { +ConnectorTool::~ConnectorTool() { this->sel_changed_connection.disconnect(); for (int i = 0; i < 2; ++i) { @@ -252,14 +255,14 @@ SPConnectorContext::~SPConnectorContext() { g_assert( this->newConnRef == NULL ); } -void SPConnectorContext::setup() { - SPEventContext::setup(); +void ConnectorTool::setup() { + ToolBase::setup(); this->selection = sp_desktop_selection(this->desktop); this->sel_changed_connection.disconnect(); this->sel_changed_connection = this->selection->connectChanged( - sigc::mem_fun(this, &SPConnectorContext::selection_changed) + sigc::mem_fun(this, &ConnectorTool::selection_changed) ); /* Create red bpath */ @@ -292,7 +295,7 @@ void SPConnectorContext::setup() { this->desktop->canvas->gen_all_enter_events = true; } -void SPConnectorContext::set(const Inkscape::Preferences::Entry& val) { +void ConnectorTool::set(const Inkscape::Preferences::Entry& val) { /* fixme: Proper error handling for non-numeric data. Use a locale-independent function like * g_ascii_strtod (or a thin wrapper that does the right thing for invalid values inf/nan). */ Glib::ustring name = val.getEntryName(); @@ -304,11 +307,11 @@ void SPConnectorContext::set(const Inkscape::Preferences::Entry& val) { } } -void SPConnectorContext::finish() { +void ConnectorTool::finish() { spcc_connector_finish(this); this->state = SP_CONNECTOR_CONTEXT_IDLE; - SPEventContext::finish(); + ToolBase::finish(); if (this->selection) { this->selection = NULL; @@ -325,7 +328,7 @@ void SPConnectorContext::finish() { static void -cc_clear_active_shape(SPConnectorContext *cc) +cc_clear_active_shape(ConnectorTool *cc) { if (cc->active_shape == NULL) { return; @@ -360,7 +363,7 @@ cc_clear_active_knots(SPKnotList k) } static void -cc_clear_active_conn(SPConnectorContext *cc) +cc_clear_active_conn(ConnectorTool *cc) { if (cc->active_conn == NULL) { return; @@ -385,7 +388,7 @@ cc_clear_active_conn(SPConnectorContext *cc) static bool -conn_pt_handle_test(SPConnectorContext *cc, Geom::Point& p, gchar **href) +conn_pt_handle_test(ConnectorTool *cc, Geom::Point& p, gchar **href) { if (cc->active_handle && (cc->knots.find(cc->active_handle) != cc->knots.end())) { @@ -417,7 +420,7 @@ cc_deselect_handle(SPKnot* knot) sp_knot_update_ctrl(knot); } -bool SPConnectorContext::item_handler(SPItem* item, GdkEvent* event) { +bool ConnectorTool::item_handler(SPItem* item, GdkEvent* event) { gint ret = FALSE; Geom::Point p(event->button.x, event->button.y); @@ -472,7 +475,7 @@ bool SPConnectorContext::item_handler(SPItem* item, GdkEvent* event) { return ret; } -bool SPConnectorContext::root_handler(GdkEvent* event) { +bool ConnectorTool::root_handler(GdkEvent* event) { gint ret = FALSE; switch (event->type) { @@ -497,7 +500,7 @@ bool SPConnectorContext::root_handler(GdkEvent* event) { } if (!ret) { - ret = SPEventContext::root_handler(event); + ret = ToolBase::root_handler(event); } return ret; @@ -505,18 +508,18 @@ bool SPConnectorContext::root_handler(GdkEvent* event) { static gint -connector_handle_button_press(SPConnectorContext *const cc, GdkEventButton const &bevent) +connector_handle_button_press(ConnectorTool *const cc, GdkEventButton const &bevent) { Geom::Point const event_w(bevent.x, bevent.y); /* Find desktop coordinates */ Geom::Point p = cc->desktop->w2d(event_w); - SPEventContext *event_context = SP_EVENT_CONTEXT(cc); + ToolBase *event_context = SP_EVENT_CONTEXT(cc); gint ret = FALSE; if ( bevent.button == 1 && !event_context->space_panning ) { - SPDesktop *desktop = SP_EVENT_CONTEXT_DESKTOP(cc); + SPDesktop *desktop = cc->desktop; if (Inkscape::have_viable_layer(desktop, cc->message_context) == false) { return TRUE; @@ -541,7 +544,7 @@ connector_handle_button_press(SPConnectorContext *const cc, GdkEventButton const if ( cc->npoints == 0 ) { cc_clear_active_conn(cc); - SP_EVENT_CONTEXT_DESKTOP(cc)->messageStack()->flash(Inkscape::NORMAL_MESSAGE, _("Creating new connector")); + cc->desktop->messageStack()->flash(Inkscape::NORMAL_MESSAGE, _("Creating new connector")); /* Set start anchor */ /* Create green anchor */ @@ -612,10 +615,10 @@ connector_handle_button_press(SPConnectorContext *const cc, GdkEventButton const } static gint -connector_handle_motion_notify(SPConnectorContext *const cc, GdkEventMotion const &mevent) +connector_handle_motion_notify(ConnectorTool *const cc, GdkEventMotion const &mevent) { gint ret = FALSE; - SPEventContext *event_context = SP_EVENT_CONTEXT(cc); + ToolBase *event_context = SP_EVENT_CONTEXT(cc); Inkscape::Preferences *prefs = Inkscape::Preferences::get(); if (event_context->space_panning || mevent.state & GDK_BUTTON2_MASK || mevent.state & GDK_BUTTON3_MASK) { @@ -706,13 +709,13 @@ connector_handle_motion_notify(SPConnectorContext *const cc, GdkEventMotion cons } static gint -connector_handle_button_release(SPConnectorContext *const cc, GdkEventButton const &revent) +connector_handle_button_release(ConnectorTool *const cc, GdkEventButton const &revent) { gint ret = FALSE; - SPEventContext *event_context = SP_EVENT_CONTEXT(cc); + ToolBase *event_context = SP_EVENT_CONTEXT(cc); if ( revent.button == 1 && !event_context->space_panning ) { - SPDesktop *desktop = SP_EVENT_CONTEXT_DESKTOP(cc); + SPDesktop *desktop = cc->desktop; SPDocument *doc = sp_desktop_document(desktop); SnapManager &m = desktop->namedview->snap_manager; @@ -771,7 +774,7 @@ connector_handle_button_release(SPConnectorContext *const cc, GdkEventButton con } static gint -connector_handle_key_press(SPConnectorContext *const cc, guint const keyval) +connector_handle_key_press(ConnectorTool *const cc, guint const keyval) { gint ret = FALSE; @@ -787,7 +790,7 @@ connector_handle_key_press(SPConnectorContext *const cc, guint const keyval) case GDK_KEY_Escape: if (cc->state == SP_CONNECTOR_CONTEXT_REROUTING) { - SPDesktop *desktop = SP_EVENT_CONTEXT_DESKTOP(cc); + SPDesktop *desktop = cc->desktop; SPDocument *doc = sp_desktop_document(desktop); cc_connector_rerouting_finish(cc, NULL); @@ -814,9 +817,9 @@ connector_handle_key_press(SPConnectorContext *const cc, guint const keyval) static void -cc_connector_rerouting_finish(SPConnectorContext *const cc, Geom::Point *const p) +cc_connector_rerouting_finish(ConnectorTool *const cc, Geom::Point *const p) { - SPDesktop *desktop = SP_EVENT_CONTEXT_DESKTOP(cc); + SPDesktop *desktop = cc->desktop; SPDocument *doc = sp_desktop_document(desktop); // Clear the temporary path: @@ -849,7 +852,7 @@ cc_connector_rerouting_finish(SPConnectorContext *const cc, Geom::Point *const p static void -spcc_reset_colors(SPConnectorContext *cc) +spcc_reset_colors(ConnectorTool *cc) { /* Red */ cc->red_curve->reset(); @@ -861,7 +864,7 @@ spcc_reset_colors(SPConnectorContext *cc) static void -spcc_connector_set_initial_point(SPConnectorContext *const cc, Geom::Point const p) +spcc_connector_set_initial_point(ConnectorTool *const cc, Geom::Point const p) { g_assert( cc->npoints == 0 ); @@ -873,7 +876,7 @@ spcc_connector_set_initial_point(SPConnectorContext *const cc, Geom::Point const static void -spcc_connector_set_subsequent_point(SPConnectorContext *const cc, Geom::Point const p) +spcc_connector_set_subsequent_point(ConnectorTool *const cc, Geom::Point const p) { g_assert( cc->npoints != 0 ); @@ -910,7 +913,7 @@ spcc_connector_set_subsequent_point(SPConnectorContext *const cc, Geom::Point co * Invoke _flush_white to write result back to object. */ static void -spcc_concat_colors_and_flush(SPConnectorContext *cc) +spcc_concat_colors_and_flush(ConnectorTool *cc) { SPCurve *c = cc->green_curve; cc->green_curve = new SPCurve(); @@ -938,7 +941,7 @@ spcc_concat_colors_and_flush(SPConnectorContext *cc) */ static void -spcc_flush_white(SPConnectorContext *cc, SPCurve *gc) +spcc_flush_white(ConnectorTool *cc, SPCurve *gc) { SPCurve *c; @@ -950,9 +953,9 @@ spcc_flush_white(SPConnectorContext *cc, SPCurve *gc) } /* Now we have to go back to item coordinates at last */ - c->transform(SP_EVENT_CONTEXT_DESKTOP(cc)->dt2doc()); + c->transform(cc->desktop->dt2doc()); - SPDesktop *desktop = SP_EVENT_CONTEXT_DESKTOP(cc); + SPDesktop *desktop = cc->desktop; SPDocument *doc = sp_desktop_document(desktop); Inkscape::XML::Document *xml_doc = doc->getReprDoc(); @@ -1015,7 +1018,7 @@ spcc_flush_white(SPConnectorContext *cc, SPCurve *gc) static void -spcc_connector_finish_segment(SPConnectorContext *const cc, Geom::Point const /*p*/) +spcc_connector_finish_segment(ConnectorTool *const cc, Geom::Point const /*p*/) { if (!cc->red_curve->is_empty()) { cc->green_curve->append_continuous(cc->red_curve, 0.0625); @@ -1030,7 +1033,7 @@ spcc_connector_finish_segment(SPConnectorContext *const cc, Geom::Point const /* static void -spcc_connector_finish(SPConnectorContext *const cc) +spcc_connector_finish(ConnectorTool *const cc) { SPDesktop *const desktop = cc->desktop; desktop->messageStack()->flash(Inkscape::NORMAL_MESSAGE, _("Finishing connector")); @@ -1055,7 +1058,7 @@ cc_generic_knot_handler(SPCanvasItem *, GdkEvent *event, SPKnot *knot) g_object_ref(knot); - SPConnectorContext *cc = SP_CONNECTOR_CONTEXT( + ConnectorTool *cc = SP_CONNECTOR_CONTEXT( knot->desktop->event_context); gboolean consumed = FALSE; @@ -1096,7 +1099,7 @@ cc_generic_knot_handler(SPCanvasItem *, GdkEvent *event, SPKnot *knot) static gboolean -endpt_handler(SPKnot */*knot*/, GdkEvent *event, SPConnectorContext *cc) +endpt_handler(SPKnot */*knot*/, GdkEvent *event, ConnectorTool *cc) { //g_assert( SP_IS_CONNECTOR_CONTEXT(cc) ); @@ -1144,7 +1147,7 @@ endpt_handler(SPKnot */*knot*/, GdkEvent *event, SPConnectorContext *cc) return consumed; } -static void cc_active_shape_add_knot(SPConnectorContext *cc, SPItem* item) +static void cc_active_shape_add_knot(ConnectorTool *cc, SPItem* item) { SPDesktop *desktop = cc->desktop; SPKnot *knot = sp_knot_new(desktop, 0); @@ -1168,7 +1171,7 @@ static void cc_active_shape_add_knot(SPConnectorContext *cc, SPItem* item) cc->knots[knot] = 1; } -static void cc_set_active_shape(SPConnectorContext *cc, SPItem *item) +static void cc_set_active_shape(ConnectorTool *cc, SPItem *item) { g_assert(item != NULL ); @@ -1219,7 +1222,7 @@ static void cc_set_active_shape(SPConnectorContext *cc, SPItem *item) static void -cc_set_active_conn(SPConnectorContext *cc, SPItem *item) +cc_set_active_conn(ConnectorTool *cc, SPItem *item) { g_assert( SP_IS_PATH(item) ); @@ -1323,7 +1326,7 @@ cc_set_active_conn(SPConnectorContext *cc, SPItem *item) sp_knot_show(cc->endpt_handle[1]); } -void cc_create_connection_point(SPConnectorContext* cc) +void cc_create_connection_point(ConnectorTool* cc) { if (cc->active_shape && cc->state == SP_CONNECTOR_CONTEXT_IDLE) { @@ -1419,7 +1422,7 @@ void cc_selection_set_avoid(bool const set_avoid) DocumentUndo::done(document, SP_VERB_CONTEXT_CONNECTOR, event_desc); } -void SPConnectorContext::selection_changed(Inkscape::Selection *selection) { +void ConnectorTool::selection_changed(Inkscape::Selection *selection) { SPItem *item = selection->singleItem(); if (this->active_conn == item) { @@ -1442,7 +1445,7 @@ shape_event_attr_deleted(Inkscape::XML::Node */*repr*/, Inkscape::XML::Node *chi Inkscape::XML::Node */*ref*/, gpointer data) { g_assert(data); - SPConnectorContext *cc = SP_CONNECTOR_CONTEXT(data); + ConnectorTool *cc = SP_CONNECTOR_CONTEXT(data); if (child == cc->active_shape_repr) { // The active shape has been deleted. Clear active shape. @@ -1457,7 +1460,7 @@ shape_event_attr_changed(Inkscape::XML::Node *repr, gchar const *name, bool /*is_interactive*/, gpointer data) { g_assert(data); - SPConnectorContext *cc = SP_CONNECTOR_CONTEXT(data); + ConnectorTool *cc = SP_CONNECTOR_CONTEXT(data); // Look for changes that result in onscreen movement. if (!strcmp(name, "d") || !strcmp(name, "x") || !strcmp(name, "y") || @@ -1476,6 +1479,10 @@ shape_event_attr_changed(Inkscape::XML::Node *repr, gchar const *name, } } +} +} +} + /* Local Variables: diff --git a/src/connector-context.h b/src/ui/tools/connector-tool.h index 1c4bfc34d..7cd6a6dad 100644 --- a/src/connector-context.h +++ b/src/ui/tools/connector-tool.h @@ -15,13 +15,13 @@ #include <stddef.h> #include <sigc++/sigc++.h> #include <sigc++/connection.h> -#include "event-context.h" +#include "ui/tools/tool-base.h" #include <2geom/point.h> #include "libavoid/connector.h" #include <glibmm/i18n.h> -#define SP_CONNECTOR_CONTEXT(obj) (dynamic_cast<SPConnectorContext*>((SPEventContext*)obj)) -//#define SP_IS_CONNECTOR_CONTEXT(obj) (dynamic_cast<const SPConnectorContext*>((const SPEventContext*)obj) != NULL) +#define SP_CONNECTOR_CONTEXT(obj) (dynamic_cast<Inkscape::UI::Tools::ConnectorTool*>((Inkscape::UI::Tools::ToolBase*)obj)) +//#define SP_IS_CONNECTOR_CONTEXT(obj) (dynamic_cast<const ConnectorTool*>((const ToolBase*)obj) != NULL) struct SPKnot; class SPCurve; @@ -42,10 +42,14 @@ enum { typedef std::map<SPKnot *, int> SPKnotList; -class SPConnectorContext : public SPEventContext { +namespace Inkscape { +namespace UI { +namespace Tools { + +class ConnectorTool : public ToolBase { public: - SPConnectorContext(); - virtual ~SPConnectorContext(); + ConnectorTool(); + virtual ~ConnectorTool(); Inkscape::Selection *selection; Geom::Point p[5]; @@ -109,10 +113,13 @@ private: }; void cc_selection_set_avoid(bool const set_ignore); -void cc_create_connection_point(SPConnectorContext* cc); -void cc_remove_connection_point(SPConnectorContext* cc); +void cc_create_connection_point(ConnectorTool* cc); +void cc_remove_connection_point(ConnectorTool* cc); bool cc_item_is_connector(SPItem *item); +} +} +} #endif /* !SEEN_CONNECTOR_CONTEXT_H */ diff --git a/src/dropper-context.cpp b/src/ui/tools/dropper-tool.cpp index dcb1ab66c..9c47b50e9 100644 --- a/src/dropper-context.cpp +++ b/src/ui/tools/dropper-tool.cpp @@ -42,10 +42,10 @@ #include "pixmaps/cursor-dropper-f.xpm" #include "pixmaps/cursor-dropper-s.xpm" -#include "dropper-context.h" +#include "ui/tools/dropper-tool.h" #include "message-context.h" #include "verbs.h" -#include "event-context.h" +#include "ui/tools/tool-base.h" using Inkscape::DocumentUndo; @@ -54,21 +54,25 @@ static GdkCursor *cursor_dropper_stroke = NULL; #include "tool-factory.h" +namespace Inkscape { +namespace UI { +namespace Tools { + namespace { - SPEventContext* createDropperContext() { - return new SPDropperContext(); + ToolBase* createDropperContext() { + return new DropperTool(); } bool dropperContextRegistered = ToolFactory::instance().registerObject("/tools/dropper", createDropperContext); } -const std::string& SPDropperContext::getPrefsPath() { - return SPDropperContext::prefsPath; +const std::string& DropperTool::getPrefsPath() { + return DropperTool::prefsPath; } -const std::string SPDropperContext::prefsPath = "/tools/dropper"; +const std::string DropperTool::prefsPath = "/tools/dropper"; -SPDropperContext::SPDropperContext() : SPEventContext() { +DropperTool::DropperTool() : ToolBase() { this->R = 0; this->G = 0; this->B = 0; @@ -87,13 +91,13 @@ SPDropperContext::SPDropperContext() : SPEventContext() { cursor_dropper_stroke = sp_cursor_new_from_xpm(cursor_dropper_s_xpm , 7, 7); } -SPDropperContext::~SPDropperContext() { +DropperTool::~DropperTool() { } -void SPDropperContext::setup() { - SPEventContext::setup(); +void DropperTool::setup() { + ToolBase::setup(); - /* TODO: have a look at SPDynaDrawContext::setup where the same is done.. generalize? */ + /* TODO: have a look at CalligraphicTool::setup where the same is done.. generalize? */ Geom::PathVector path; Geom::Circle(0, 0, 1).getPath(path); @@ -118,7 +122,7 @@ void SPDropperContext::setup() { } } -void SPDropperContext::finish() { +void DropperTool::finish() { this->enableGrDrag(false); if (this->grabbed) { @@ -153,7 +157,7 @@ void SPDropperContext::finish() { /** * Returns the current dropper context color. */ -guint32 SPDropperContext::get_color() { +guint32 DropperTool::get_color() { Inkscape::Preferences *prefs = Inkscape::Preferences::get(); int pick = prefs->getInt("/tools/dropper/pick", SP_DROPPER_PICK_VISIBLE); @@ -165,7 +169,7 @@ guint32 SPDropperContext::get_color() { (pick == SP_DROPPER_PICK_ACTUAL && setalpha) ? this->alpha : 1.0); } -bool SPDropperContext::root_handler(GdkEvent* event) { +bool DropperTool::root_handler(GdkEvent* event) { Inkscape::Preferences *prefs = Inkscape::Preferences::get(); int ret = FALSE; @@ -387,12 +391,16 @@ bool SPDropperContext::root_handler(GdkEvent* event) { } if (!ret) { - ret = SPEventContext::root_handler(event); + ret = ToolBase::root_handler(event); } return ret; } +} +} +} + /* Local Variables: diff --git a/src/dropper-context.h b/src/ui/tools/dropper-tool.h index 6e1015644..dd6f25bb6 100644 --- a/src/dropper-context.h +++ b/src/ui/tools/dropper-tool.h @@ -12,20 +12,24 @@ * Released under GNU GPL, read the file 'COPYING' for more information */ -#include "event-context.h" +#include "ui/tools/tool-base.h" -#define SP_DROPPER_CONTEXT(obj) (dynamic_cast<SPDropperContext*>((SPEventContext*)obj)) -#define SP_IS_DROPPER_CONTEXT(obj) (dynamic_cast<const SPDropperContext*>((const SPEventContext*)obj) != NULL) +#define SP_DROPPER_CONTEXT(obj) (dynamic_cast<Inkscape::UI::Tools::DropperTool*>((Inkscape::UI::Tools::ToolBase*)obj)) +#define SP_IS_DROPPER_CONTEXT(obj) (dynamic_cast<const Inkscape::UI::Tools::DropperTool*>((const Inkscape::UI::Tools::ToolBase*)obj) != NULL) enum { SP_DROPPER_PICK_VISIBLE, SP_DROPPER_PICK_ACTUAL }; -class SPDropperContext : public SPEventContext { +namespace Inkscape { +namespace UI { +namespace Tools { + +class DropperTool : public ToolBase { public: - SPDropperContext(); - virtual ~SPDropperContext(); + DropperTool(); + virtual ~DropperTool(); static const std::string prefsPath; @@ -51,6 +55,10 @@ private: Geom::Point centre; }; +} +} +} + #endif /* diff --git a/src/common-context.cpp b/src/ui/tools/dynamic-base.cpp index 2155f9739..cec58dce9 100644 --- a/src/common-context.cpp +++ b/src/ui/tools/dynamic-base.cpp @@ -1,5 +1,5 @@ -#include "common-context.h" +#include "ui/tools/dynamic-base.h" #include <gtk/gtk.h> @@ -19,8 +19,12 @@ #define DRAG_DEFAULT 1.0 #define DRAG_MAX 1.0 -SPCommonContext::SPCommonContext() : - SPEventContext(), +namespace Inkscape { +namespace UI { +namespace Tools { + +DynamicBase::DynamicBase() : + ToolBase(), accumulated(NULL), segments(NULL), currentshape(NULL), @@ -56,7 +60,7 @@ SPCommonContext::SPCommonContext() : { } -SPCommonContext::~SPCommonContext() { +DynamicBase::~DynamicBase() { if (this->accumulated) { this->accumulated = this->accumulated->unref(); this->accumulated = 0; @@ -88,7 +92,7 @@ SPCommonContext::~SPCommonContext() { } } -void SPCommonContext::set(const Inkscape::Preferences::Entry& value) { +void DynamicBase::set(const Inkscape::Preferences::Entry& value) { Glib::ustring path = value.getEntryName(); // ignore preset modifications @@ -125,7 +129,7 @@ void SPCommonContext::set(const Inkscape::Preferences::Entry& value) { } /* Get normalized point */ -Geom::Point SPCommonContext::getNormalizedPoint(Geom::Point v) const { +Geom::Point DynamicBase::getNormalizedPoint(Geom::Point v) const { Geom::Rect drect = this->desktop->get_display_area(); double const max = MAX ( drect.dimensions()[Geom::X], drect.dimensions()[Geom::Y] ); @@ -134,7 +138,7 @@ Geom::Point SPCommonContext::getNormalizedPoint(Geom::Point v) const { } /* Get view point */ -Geom::Point SPCommonContext::getViewPoint(Geom::Point n) const { +Geom::Point DynamicBase::getViewPoint(Geom::Point n) const { Geom::Rect drect = this->desktop->get_display_area(); double const max = MAX ( drect.dimensions()[Geom::X], drect.dimensions()[Geom::Y] ); @@ -142,6 +146,10 @@ Geom::Point SPCommonContext::getViewPoint(Geom::Point n) const { return Geom::Point(n[Geom::X] * max + drect.min()[Geom::X], n[Geom::Y] * max + drect.min()[Geom::Y]); } +} +} +} + /* Local Variables: mode:c++ diff --git a/src/common-context.h b/src/ui/tools/dynamic-base.h index dc4c82251..9218eabd3 100644 --- a/src/common-context.h +++ b/src/ui/tools/dynamic-base.h @@ -19,16 +19,20 @@ * Released under GNU GPL, read the file 'COPYING' for more information */ -#include "event-context.h" +#include "ui/tools/tool-base.h" #include "display/curve.h" #include <2geom/point.h> #define SAMPLING_SIZE 8 /* fixme: ?? */ -class SPCommonContext : public SPEventContext { +namespace Inkscape { +namespace UI { +namespace Tools { + +class DynamicBase : public ToolBase { public: - SPCommonContext(); - virtual ~SPCommonContext(); + DynamicBase(); + virtual ~DynamicBase(); virtual void set(const Inkscape::Preferences::Entry& val); @@ -100,6 +104,10 @@ protected: Geom::Point getNormalizedPoint(Geom::Point v) const; }; +} +} +} + #endif // COMMON_CONTEXT_H_SEEN /* diff --git a/src/eraser-context.cpp b/src/ui/tools/eraser-tool.cpp index b2df86434..270987d27 100644 --- a/src/eraser-context.cpp +++ b/src/ui/tools/eraser-tool.cpp @@ -67,7 +67,7 @@ #include <2geom/math-utils.h> #include <2geom/pathvector.h> -#include "eraser-context.h" +#include "ui/tools/eraser-tool.h" using Inkscape::DocumentUndo; @@ -85,31 +85,35 @@ using Inkscape::DocumentUndo; #include "tool-factory.h" +namespace Inkscape { +namespace UI { +namespace Tools { + namespace { - SPEventContext* createEraserContext() { - return new SPEraserContext(); + ToolBase* createEraserContext() { + return new EraserTool(); } bool eraserContextRegistered = ToolFactory::instance().registerObject("/tools/eraser", createEraserContext); } -const std::string& SPEraserContext::getPrefsPath() { - return SPEraserContext::prefsPath; +const std::string& EraserTool::getPrefsPath() { + return EraserTool::prefsPath; } -const std::string SPEraserContext::prefsPath = "/tools/eraser"; +const std::string EraserTool::prefsPath = "/tools/eraser"; -SPEraserContext::SPEraserContext() : SPCommonContext() { +EraserTool::EraserTool() : DynamicBase() { this->cursor_shape = cursor_eraser_xpm; this->hot_x = 4; this->hot_y = 4; } -SPEraserContext::~SPEraserContext() { +EraserTool::~EraserTool() { } -void SPEraserContext::setup() { - SPCommonContext::setup(); +void EraserTool::setup() { + DynamicBase::setup(); this->accumulated = new SPCurve(); this->currentcurve = new SPCurve(); @@ -167,7 +171,7 @@ flerp(double f0, double f1, double p) return f0 + ( f1 - f0 ) * p; } -void SPEraserContext::reset(Geom::Point p) { +void EraserTool::reset(Geom::Point p) { this->last = this->cur = getNormalizedPoint(p); this->vel = Geom::Point(0,0); this->vel_max = 0; @@ -176,7 +180,7 @@ void SPEraserContext::reset(Geom::Point p) { this->del = Geom::Point(0,0); } -void SPEraserContext::extinput(GdkEvent *event) { +void EraserTool::extinput(GdkEvent *event) { if (gdk_event_get_axis (event, GDK_AXIS_PRESSURE, &this->pressure)) this->pressure = CLAMP (this->pressure, ERC_MIN_PRESSURE, ERC_MAX_PRESSURE); else @@ -194,7 +198,7 @@ void SPEraserContext::extinput(GdkEvent *event) { } -bool SPEraserContext::apply(Geom::Point p) { +bool EraserTool::apply(Geom::Point p) { Geom::Point n = getNormalizedPoint(p); /* Calculate mass and drag */ @@ -291,7 +295,7 @@ bool SPEraserContext::apply(Geom::Point p) { return TRUE; } -void SPEraserContext::brush() { +void EraserTool::brush() { g_assert( this->npoints >= 0 && this->npoints < SAMPLING_SIZE ); // How much velocity thins strokestyle @@ -357,7 +361,7 @@ sp_erc_update_toolbox (SPDesktop *desktop, const gchar *id, double value) desktop->setToolboxAdjustmentValue (id, value); } -void SPEraserContext::cancel() { +void EraserTool::cancel() { SPDesktop *desktop = SP_EVENT_CONTEXT(this)->desktop; this->dragging = FALSE; this->is_drawing = false; @@ -375,7 +379,7 @@ void SPEraserContext::cancel() { } } -bool SPEraserContext::root_handler(GdkEvent* event) { +bool EraserTool::root_handler(GdkEvent* event) { gint ret = FALSE; switch (event->type) { @@ -614,13 +618,13 @@ bool SPEraserContext::root_handler(GdkEvent* event) { } if (!ret) { - ret = SPCommonContext::root_handler(event); + ret = DynamicBase::root_handler(event); } return ret; } -void SPEraserContext::clear_current() { +void EraserTool::clear_current() { // reset bpath sp_canvas_bpath_set_bpath(SP_CANVAS_BPATH(this->currentshape), NULL); @@ -633,7 +637,7 @@ void SPEraserContext::clear_current() { this->npoints = 0; } -void SPEraserContext::set_to_accumulated() { +void EraserTool::set_to_accumulated() { bool workDone = false; if (!this->accumulated->is_empty()) { @@ -801,7 +805,7 @@ add_cap(SPCurve *curve, } } -void SPEraserContext::accumulate() { +void EraserTool::accumulate() { if ( !this->cal1->is_empty() && !this->cal2->is_empty() ) { this->accumulated->reset(); /* Is this required ?? */ SPCurve *rev_cal2 = this->cal2->create_reverse(); @@ -843,7 +847,7 @@ static double square(double const x) return x * x; } -void SPEraserContext::fit_and_split(bool release) { +void EraserTool::fit_and_split(bool release) { double const tolerance_sq = square( desktop->w2d().descrim() * TOLERANCE_ERASER ); #ifdef ERASER_VERBOSE @@ -978,7 +982,7 @@ void SPEraserContext::fit_and_split(bool release) { } } -void SPEraserContext::draw_temporary_box() { +void EraserTool::draw_temporary_box() { this->currentcurve->reset(); this->currentcurve->moveto(this->point1[this->npoints-1]); @@ -999,6 +1003,10 @@ void SPEraserContext::draw_temporary_box() { sp_canvas_bpath_set_bpath(SP_CANVAS_BPATH(this->currentshape), this->currentcurve); } +} +} +} + /* Local Variables: mode:c++ diff --git a/src/eraser-context.h b/src/ui/tools/eraser-tool.h index 7ff1cf712..eb7eb16e8 100644 --- a/src/eraser-context.h +++ b/src/ui/tools/eraser-tool.h @@ -19,7 +19,7 @@ * Released under GNU GPL, read the file 'COPYING' for more information */ -#include "common-context.h" +#include "ui/tools/dynamic-base.h" #define ERC_MIN_PRESSURE 0.0 #define ERC_MAX_PRESSURE 1.0 @@ -29,10 +29,14 @@ #define ERC_MAX_TILT 1.0 #define ERC_DEFAULT_TILT 0.0 -class SPEraserContext : public SPCommonContext { +namespace Inkscape { +namespace UI { +namespace Tools { + +class EraserTool : public DynamicBase { public: - SPEraserContext(); - virtual ~SPEraserContext(); + EraserTool(); + virtual ~EraserTool(); static const std::string prefsPath; @@ -54,6 +58,10 @@ private: void draw_temporary_box(); }; +} +} +} + #endif // SP_ERASER_CONTEXT_H_SEEN /* diff --git a/src/flood-context.cpp b/src/ui/tools/flood-tool.cpp index dc89fb0a9..0b72bc9f2 100644 --- a/src/flood-context.cpp +++ b/src/ui/tools/flood-tool.cpp @@ -41,7 +41,7 @@ #include "display/sp-canvas.h" #include "document.h" #include "document-undo.h" -#include "flood-context.h" +#include "ui/tools/flood-tool.h" #include "livarot/Path.h" #include "livarot/Shape.h" #include "macros.h" @@ -76,21 +76,25 @@ using Inkscape::Display::AssembleARGB32; #include "tool-factory.h" +namespace Inkscape { +namespace UI { +namespace Tools { + namespace { - SPEventContext* createPaintbucketContext() { - return new SPFloodContext(); + ToolBase* createPaintbucketContext() { + return new FloodTool(); } bool paintbucketContextRegistered = ToolFactory::instance().registerObject("/tools/paintbucket", createPaintbucketContext); } -const std::string& SPFloodContext::getPrefsPath() { - return SPFloodContext::prefsPath; +const std::string& FloodTool::getPrefsPath() { + return FloodTool::prefsPath; } -const std::string SPFloodContext::prefsPath = "/tools/paintbucket"; +const std::string FloodTool::prefsPath = "/tools/paintbucket"; -SPFloodContext::SPFloodContext() : SPEventContext() { +FloodTool::FloodTool() : ToolBase() { this->cursor_shape = cursor_paintbucket_xpm; this->hot_x = 11; this->hot_y = 30; @@ -103,7 +107,7 @@ SPFloodContext::SPFloodContext() : SPEventContext() { this->item = NULL; } -SPFloodContext::~SPFloodContext() { +FloodTool::~FloodTool() { this->sel_changed_connection.disconnect(); delete this->shape_editor; @@ -119,13 +123,13 @@ SPFloodContext::~SPFloodContext() { * Callback that processes the "changed" signal on the selection; * destroys old and creates new knotholder. */ -void SPFloodContext::selection_changed(Inkscape::Selection* selection) { +void FloodTool::selection_changed(Inkscape::Selection* selection) { this->shape_editor->unset_item(SH_KNOTHOLDER); this->shape_editor->set_item(selection->singleItem(), SH_KNOTHOLDER); } -void SPFloodContext::setup() { - SPEventContext::setup(); +void FloodTool::setup() { + ToolBase::setup(); this->shape_editor = new ShapeEditor(this->desktop); @@ -136,7 +140,7 @@ void SPFloodContext::setup() { this->sel_changed_connection.disconnect(); this->sel_changed_connection = sp_desktop_selection(this->desktop)->connectChanged( - sigc::mem_fun(this, &SPFloodContext::selection_changed) + sigc::mem_fun(this, &FloodTool::selection_changed) ); Inkscape::Preferences *prefs = Inkscape::Preferences::get(); @@ -739,7 +743,7 @@ static bool sort_fill_queue_horizontal(Geom::Point a, Geom::Point b) { * @param is_point_fill If false, use the Rubberband "touch selection" to get the initial points for the fill. * @param is_touch_fill If true, use only the initial contact point in the Rubberband "touch selection" as the fill target color. */ -static void sp_flood_do_flood_fill(SPEventContext *event_context, GdkEvent *event, bool union_with_selection, bool is_point_fill, bool is_touch_fill) { +static void sp_flood_do_flood_fill(ToolBase *event_context, GdkEvent *event, bool union_with_selection, bool is_point_fill, bool is_touch_fill) { SPDesktop *desktop = event_context->desktop; SPDocument *document = sp_desktop_document(desktop); @@ -1084,7 +1088,7 @@ static void sp_flood_do_flood_fill(SPEventContext *event_context, GdkEvent *even DocumentUndo::done(document, SP_VERB_CONTEXT_PAINTBUCKET, _("Fill bounded area")); } -bool SPFloodContext::item_handler(SPItem* item, GdkEvent* event) { +bool FloodTool::item_handler(SPItem* item, GdkEvent* event) { gint ret = FALSE; switch (event->type) { @@ -1107,16 +1111,16 @@ bool SPFloodContext::item_handler(SPItem* item, GdkEvent* event) { break; } -// if (((SPEventContextClass *) sp_flood_context_parent_class)->item_handler) { -// ret = ((SPEventContextClass *) sp_flood_context_parent_class)->item_handler(event_context, item, event); +// if (((ToolBaseClass *) sp_flood_context_parent_class)->item_handler) { +// ret = ((ToolBaseClass *) sp_flood_context_parent_class)->item_handler(event_context, item, event); // } // CPPIFY: ret is overwritten... - ret = SPEventContext::item_handler(item, event); + ret = ToolBase::item_handler(item, event); return ret; } -bool SPFloodContext::root_handler(GdkEvent* event) { +bool FloodTool::root_handler(GdkEvent* event) { static bool dragging; gint ret = FALSE; @@ -1216,13 +1220,13 @@ bool SPFloodContext::root_handler(GdkEvent* event) { } if (!ret) { - ret = SPEventContext::root_handler(event); + ret = ToolBase::root_handler(event); } return ret; } -void SPFloodContext::finishItem() { +void FloodTool::finishItem() { this->message_context->clear(); if (this->item != NULL) { @@ -1238,11 +1242,15 @@ void SPFloodContext::finishItem() { } } -void SPFloodContext::set_channels(gint channels) { +void FloodTool::set_channels(gint channels) { Inkscape::Preferences *prefs = Inkscape::Preferences::get(); prefs->setInt("/tools/paintbucket/channels", channels); } +} +} +} + /* Local Variables: mode:c++ diff --git a/src/flood-context.h b/src/ui/tools/flood-tool.h index 48bf36f85..3ed670e8b 100644 --- a/src/flood-context.h +++ b/src/ui/tools/flood-tool.h @@ -14,21 +14,19 @@ #include <stddef.h> #include <sigc++/sigc++.h> #include <gtk/gtk.h> -#include "event-context.h" +#include "ui/tools/tool-base.h" -#define SP_FLOOD_CONTEXT(obj) (dynamic_cast<SPFloodContext*>((SPEventContext*)obj)) -#define SP_IS_FLOOD_CONTEXT(obj) (dynamic_cast<const SPFloodContext*>((const SPEventContext*)obj) != NULL) +#define SP_FLOOD_CONTEXT(obj) (dynamic_cast<Inkscape::UI::Tools::FloodTool*>((Inkscape::UI::Tools::ToolBase*)obj)) +#define SP_IS_FLOOD_CONTEXT(obj) (dynamic_cast<const Inkscape::UI::Tools::FloodTool*>((const Inkscape::UI::Tools::ToolBase*)obj) != NULL) +namespace Inkscape { +namespace UI { +namespace Tools { -#define FLOOD_COLOR_CHANNEL_R 1 -#define FLOOD_COLOR_CHANNEL_G 2 -#define FLOOD_COLOR_CHANNEL_B 4 -#define FLOOD_COLOR_CHANNEL_A 8 - -class SPFloodContext : public SPEventContext { +class FloodTool : public ToolBase { public: - SPFloodContext(); - virtual ~SPFloodContext(); + FloodTool(); + virtual ~FloodTool(); SPItem *item; @@ -63,4 +61,8 @@ enum PaintBucketChannels { FLOOD_CHANNELS_ALPHA }; +} +} +} + #endif diff --git a/src/draw-context.cpp b/src/ui/tools/freehand-base.cpp index a73d4b715..6e3a04b59 100644 --- a/src/draw-context.cpp +++ b/src/ui/tools/freehand-base.cpp @@ -34,8 +34,8 @@ #include "draw-anchor.h" #include "macros.h" #include "message-stack.h" -#include "pen-context.h" -#include "lpe-tool-context.h" +#include "ui/tools/pen-tool.h" +#include "ui/tools/lpe-tool.h" #include "preferences.h" #include "selection.h" #include "selection-chemistry.h" @@ -45,16 +45,21 @@ #include "live_effects/lpe-powerstroke.h" #include "style.h" #include "ui/control-manager.h" -#include "draw-context.h" #include "ui/clipboard.h" +#include "ui/tools/freehand-base.h" + #include <gdk/gdkkeysyms.h> using Inkscape::DocumentUndo; -static void spdc_selection_changed(Inkscape::Selection *sel, SPDrawContext *dc); -static void spdc_selection_modified(Inkscape::Selection *sel, guint flags, SPDrawContext *dc); +namespace Inkscape { +namespace UI { +namespace Tools { + +static void spdc_selection_changed(Inkscape::Selection *sel, FreehandBase *dc); +static void spdc_selection_modified(Inkscape::Selection *sel, guint flags, FreehandBase *dc); -static void spdc_attach_selection(SPDrawContext *dc, Inkscape::Selection *sel); +static void spdc_attach_selection(FreehandBase *dc, Inkscape::Selection *sel); /** * Flushes white curve(s) and additional curve into object. @@ -62,12 +67,12 @@ static void spdc_attach_selection(SPDrawContext *dc, Inkscape::Selection *sel); * No cleaning of colored curves - this has to be done by caller * No rereading of white data, so if you cannot rely on ::modified, do it in caller */ -static void spdc_flush_white(SPDrawContext *dc, SPCurve *gc); +static void spdc_flush_white(FreehandBase *dc, SPCurve *gc); -static void spdc_reset_white(SPDrawContext *dc); -static void spdc_free_colors(SPDrawContext *dc); +static void spdc_reset_white(FreehandBase *dc); +static void spdc_free_colors(FreehandBase *dc); -SPDrawContext::SPDrawContext() : SPEventContext() { +FreehandBase::FreehandBase() : ToolBase() { this->selection = 0; this->grab = 0; this->anchor_statusbar = false; @@ -100,7 +105,7 @@ SPDrawContext::SPDrawContext() : SPEventContext() { this->waiting_LPE_type = Inkscape::LivePathEffect::INVALID_LPE; } -SPDrawContext::~SPDrawContext() { +FreehandBase::~FreehandBase() { if (this->grab) { sp_canvas_item_ungrab(this->grab, GDK_CURRENT_TIME); this->grab = NULL; @@ -113,8 +118,8 @@ SPDrawContext::~SPDrawContext() { spdc_free_colors(this); } -void SPDrawContext::setup() { - SPEventContext::setup(); +void FreehandBase::setup() { + ToolBase::setup(); this->selection = sp_desktop_selection(desktop); @@ -151,7 +156,7 @@ void SPDrawContext::setup() { spdc_attach_selection(this, this->selection); } -void SPDrawContext::finish() { +void FreehandBase::finish() { this->sel_changed_connection.disconnect(); this->sel_modified_connection.disconnect(); @@ -166,10 +171,10 @@ void SPDrawContext::finish() { spdc_free_colors(this); } -void SPDrawContext::set(const Inkscape::Preferences::Entry& /*value*/) { +void FreehandBase::set(const Inkscape::Preferences::Entry& /*value*/) { } -bool SPDrawContext::root_handler(GdkEvent* event) { +bool FreehandBase::root_handler(GdkEvent* event) { gint ret = FALSE; switch (event->type) { @@ -193,20 +198,20 @@ bool SPDrawContext::root_handler(GdkEvent* event) { } if (!ret) { - ret = SPEventContext::root_handler(event); + ret = ToolBase::root_handler(event); } return ret; } -static Glib::ustring const tool_name(SPDrawContext *dc) +static Glib::ustring const tool_name(FreehandBase *dc) { return ( SP_IS_PEN_CONTEXT(dc) ? "/tools/freehand/pen" : "/tools/freehand/pencil" ); } -static void spdc_paste_curve_as_freehand_shape(const SPCurve *c, SPDrawContext *dc, SPItem *item) +static void spdc_paste_curve_as_freehand_shape(const SPCurve *c, FreehandBase *dc, SPItem *item) { using namespace Inkscape::LivePathEffect; @@ -218,7 +223,7 @@ static void spdc_paste_curve_as_freehand_shape(const SPCurve *c, SPDrawContext * static_cast<LPEPatternAlongPath*>(lpe)->pattern.paste_param_path(svgd); } -static void spdc_apply_powerstroke_shape(const std::vector<Geom::Point> & points, SPDrawContext *dc, SPItem *item) +static void spdc_apply_powerstroke_shape(const std::vector<Geom::Point> & points, FreehandBase *dc, SPItem *item) { using namespace Inkscape::LivePathEffect; @@ -235,6 +240,7 @@ static void spdc_apply_powerstroke_shape(const std::vector<Geom::Point> & points lpe->getRepr()->setAttribute("interpolator_beta", "0.2"); } +<<<<<<< TREE static void spdc_apply_bend_shape(gchar const *svgd, SPDrawContext *dc, SPItem *item) { using namespace Inkscape::LivePathEffect; @@ -251,6 +257,9 @@ static void spdc_apply_bend_shape(gchar const *svgd, SPDrawContext *dc, SPItem * static bool bend; static void spdc_check_for_and_apply_waiting_LPE(SPDrawContext *dc, SPItem *item, SPCurve *curve) +======= +static void spdc_check_for_and_apply_waiting_LPE(FreehandBase *dc, SPItem *item, SPCurve *curve) +>>>>>>> MERGE-SOURCE { using namespace Inkscape::LivePathEffect; Inkscape::Preferences *prefs = Inkscape::Preferences::get(); @@ -472,7 +481,7 @@ static void spdc_check_for_and_apply_waiting_LPE(SPDrawContext *dc, SPItem *item * Selection handlers */ -static void spdc_selection_changed(Inkscape::Selection *sel, SPDrawContext *dc) +static void spdc_selection_changed(Inkscape::Selection *sel, FreehandBase *dc) { if (dc->attach) { spdc_attach_selection(dc, sel); @@ -481,14 +490,14 @@ static void spdc_selection_changed(Inkscape::Selection *sel, SPDrawContext *dc) /* fixme: We have to ensure this is not delayed (Lauris) */ -static void spdc_selection_modified(Inkscape::Selection *sel, guint /*flags*/, SPDrawContext *dc) +static void spdc_selection_modified(Inkscape::Selection *sel, guint /*flags*/, FreehandBase *dc) { if (dc->attach) { spdc_attach_selection(dc, sel); } } -static void spdc_attach_selection(SPDrawContext *dc, Inkscape::Selection */*sel*/) +static void spdc_attach_selection(FreehandBase *dc, Inkscape::Selection */*sel*/) { // We reset white and forget white/start/end anchors spdc_reset_white(dc); @@ -530,14 +539,14 @@ static void spdc_attach_selection(SPDrawContext *dc, Inkscape::Selection */*sel* } -void spdc_endpoint_snap_rotation(SPEventContext const *const ec, Geom::Point &p, Geom::Point const &o, +void spdc_endpoint_snap_rotation(ToolBase const *const ec, Geom::Point &p, Geom::Point const &o, guint state) { Inkscape::Preferences *prefs = Inkscape::Preferences::get(); unsigned const snaps = abs(prefs->getInt("/options/rotationsnapsperpi/value", 12)); - SnapManager &m = SP_EVENT_CONTEXT_DESKTOP(ec)->namedview->snap_manager; - m.setup(SP_EVENT_CONTEXT_DESKTOP(ec)); + SnapManager &m = ec->desktop->namedview->snap_manager; + m.setup(ec->desktop); bool snap_enabled = m.snapprefs.getSnapEnabledGlobally(); if (state & GDK_SHIFT_MASK) { @@ -559,9 +568,9 @@ void spdc_endpoint_snap_rotation(SPEventContext const *const ec, Geom::Point &p, } -void spdc_endpoint_snap_free(SPEventContext const * const ec, Geom::Point& p, boost::optional<Geom::Point> &start_of_line, guint const /*state*/) +void spdc_endpoint_snap_free(ToolBase const * const ec, Geom::Point& p, boost::optional<Geom::Point> &start_of_line, guint const /*state*/) { - SPDesktop *dt = SP_EVENT_CONTEXT_DESKTOP(ec); + SPDesktop *dt = ec->desktop; SnapManager &m = dt->namedview->snap_manager; Inkscape::Selection *selection = sp_desktop_selection (dt); @@ -587,7 +596,7 @@ static SPCurve *reverse_then_unref(SPCurve *orig) return ret; } -void spdc_concat_colors_and_flush(SPDrawContext *dc, gboolean forceclosed) +void spdc_concat_colors_and_flush(FreehandBase *dc, gboolean forceclosed) { // Concat RBG SPCurve *c = dc->green_curve; @@ -619,7 +628,7 @@ void spdc_concat_colors_and_flush(SPDrawContext *dc, gboolean forceclosed) // Step A - test, whether we ended on green anchor if ( forceclosed || ( dc->green_anchor && dc->green_anchor->active ) ) { // We hit green anchor, closing Green-Blue-Red - SP_EVENT_CONTEXT_DESKTOP(dc)->messageStack()->flash(Inkscape::NORMAL_MESSAGE, _("Path is closed.")); + dc->desktop->messageStack()->flash(Inkscape::NORMAL_MESSAGE, _("Path is closed.")); c->closepath_current(); // Closed path, just flush spdc_flush_white(dc, c); @@ -634,7 +643,7 @@ void spdc_concat_colors_and_flush(SPDrawContext *dc, gboolean forceclosed) || dc->sa->curve->is_closed() ) ) { // We hit bot start and end of single curve, closing paths - SP_EVENT_CONTEXT_DESKTOP(dc)->messageStack()->flash(Inkscape::NORMAL_MESSAGE, _("Closing path.")); + dc->desktop->messageStack()->flash(Inkscape::NORMAL_MESSAGE, _("Closing path.")); if (dc->sa->start && !(dc->sa->curve->is_closed()) ) { c = reverse_then_unref(c); } @@ -671,7 +680,7 @@ void spdc_concat_colors_and_flush(SPDrawContext *dc, gboolean forceclosed) c->unref(); } -static void spdc_flush_white(SPDrawContext *dc, SPCurve *gc) +static void spdc_flush_white(FreehandBase *dc, SPCurve *gc) { SPCurve *c; @@ -693,9 +702,9 @@ static void spdc_flush_white(SPDrawContext *dc, SPCurve *gc) // Now we have to go back to item coordinates at last c->transform( dc->white_item ? (dc->white_item)->dt2i_affine() - : SP_EVENT_CONTEXT_DESKTOP(dc)->dt2doc() ); + : dc->desktop->dt2doc() ); - SPDesktop *desktop = SP_EVENT_CONTEXT_DESKTOP(dc); + SPDesktop *desktop = dc->desktop; SPDocument *doc = sp_desktop_document(desktop); Inkscape::XML::Document *xml_doc = doc->getReprDoc(); @@ -752,7 +761,7 @@ static void spdc_flush_white(SPDrawContext *dc, SPCurve *gc) doc->ensureUpToDate(); } -SPDrawAnchor *spdc_test_inside(SPDrawContext *dc, Geom::Point p) +SPDrawAnchor *spdc_test_inside(FreehandBase *dc, Geom::Point p) { SPDrawAnchor *active = NULL; @@ -771,7 +780,7 @@ SPDrawAnchor *spdc_test_inside(SPDrawContext *dc, Geom::Point p) return active; } -static void spdc_reset_white(SPDrawContext *dc) +static void spdc_reset_white(FreehandBase *dc) { if (dc->white_item) { // We do not hold refcount @@ -787,7 +796,7 @@ static void spdc_reset_white(SPDrawContext *dc) } } -static void spdc_free_colors(SPDrawContext *dc) +static void spdc_free_colors(FreehandBase *dc) { // Red if (dc->red_bpath) { @@ -834,11 +843,11 @@ static void spdc_free_colors(SPDrawContext *dc) } } -void spdc_create_single_dot(SPEventContext *ec, Geom::Point const &pt, char const *tool, guint event_state) { +void spdc_create_single_dot(ToolBase *ec, Geom::Point const &pt, char const *tool, guint event_state) { g_return_if_fail(!strcmp(tool, "/tools/freehand/pen") || !strcmp(tool, "/tools/freehand/pencil")); Glib::ustring tool_path = tool; - SPDesktop *desktop = SP_EVENT_CONTEXT_DESKTOP(ec); + SPDesktop *desktop = ec->desktop; Inkscape::XML::Document *xml_doc = desktop->doc()->getReprDoc(); Inkscape::XML::Node *repr = xml_doc->createElement("svg:path"); repr->setAttribute("sodipodi:type", "arc"); @@ -897,6 +906,10 @@ void spdc_create_single_dot(SPEventContext *ec, Geom::Point const &pt, char cons DocumentUndo::done(sp_desktop_document(desktop), SP_VERB_NONE, _("Create single dot")); } +} +} +} + /* Local Variables: mode:c++ diff --git a/src/draw-context.h b/src/ui/tools/freehand-base.h index 534c706d6..7e53684e3 100644 --- a/src/draw-context.h +++ b/src/ui/tools/freehand-base.h @@ -17,13 +17,13 @@ #include <stddef.h> #include <sigc++/sigc++.h> #include <2geom/point.h> -#include "event-context.h" +#include "ui/tools/tool-base.h" #include "live_effects/effect.h" /* Freehand context */ -#define SP_DRAW_CONTEXT(obj) (dynamic_cast<SPDrawContext*>((SPEventContext*)obj)) -#define SP_IS_DRAW_CONTEXT(obj) (dynamic_cast<const SPDrawContext*>((const SPEventContext*)obj) != NULL) +#define SP_DRAW_CONTEXT(obj) (dynamic_cast<Inkscape::UI::Tools::FreehandBase*>((Inkscape::UI::Tools::ToolBase*)obj)) +#define SP_IS_DRAW_CONTEXT(obj) (dynamic_cast<const Inkscape::UI::Tools::FreehandBase*>((const Inkscape::UI::Tools::ToolBase*)obj) != NULL) struct SPDrawAnchor; namespace Inkscape @@ -31,10 +31,14 @@ namespace Inkscape class Selection; } -class SPDrawContext : public SPEventContext { +namespace Inkscape { +namespace UI { +namespace Tools { + +class FreehandBase : public ToolBase { public: - SPDrawContext(); - virtual ~SPDrawContext(); + FreehandBase(); + virtual ~FreehandBase(); Inkscape::Selection *selection; SPCanvasItem *grab; @@ -90,14 +94,14 @@ protected: /** * Returns FIRST active anchor (the activated one). */ -SPDrawAnchor *spdc_test_inside(SPDrawContext *dc, Geom::Point p); +SPDrawAnchor *spdc_test_inside(FreehandBase *dc, Geom::Point p); /** * Concats red, blue and green. * If any anchors are defined, process these, optionally removing curves from white list * Invoke _flush_white to write result back to object. */ -void spdc_concat_colors_and_flush(SPDrawContext *dc, gboolean forceclosed); +void spdc_concat_colors_and_flush(FreehandBase *dc, gboolean forceclosed); /** * Snaps node or handle to PI/rotationsnapsperpi degree increments. @@ -107,20 +111,24 @@ void spdc_concat_colors_and_flush(SPDrawContext *dc, gboolean forceclosed); * @param o origin point. * @param state keyboard state to check if ctrl or shift was pressed. */ -void spdc_endpoint_snap_rotation(SPEventContext const *const ec, Geom::Point &p, Geom::Point const &o, guint state); +void spdc_endpoint_snap_rotation(ToolBase const *const ec, Geom::Point &p, Geom::Point const &o, guint state); -void spdc_endpoint_snap_free(SPEventContext const *ec, Geom::Point &p, boost::optional<Geom::Point> &start_of_line, guint state); +void spdc_endpoint_snap_free(ToolBase const *ec, Geom::Point &p, boost::optional<Geom::Point> &start_of_line, guint state); /** * If we have an item and a waiting LPE, apply the effect to the item * (spiro spline mode is treated separately). */ -void spdc_check_for_and_apply_waiting_LPE(SPDrawContext *dc, SPItem *item); +void spdc_check_for_and_apply_waiting_LPE(FreehandBase *dc, SPItem *item); /** * Create a single dot represented by a circle. */ -void spdc_create_single_dot(SPEventContext *ec, Geom::Point const &pt, char const *tool, guint event_state); +void spdc_create_single_dot(ToolBase *ec, Geom::Point const &pt, char const *tool, guint event_state); + +} +} +} #endif // SEEN_SP_DRAW_CONTEXT_H diff --git a/src/gradient-context.cpp b/src/ui/tools/gradient-tool.cpp index 3456f33c3..e4ab7b424 100644 --- a/src/gradient-context.cpp +++ b/src/ui/tools/gradient-tool.cpp @@ -28,7 +28,7 @@ #include "message-stack.h" #include "pixmaps/cursor-gradient.xpm" #include "pixmaps/cursor-gradient-add.xpm" -#include "gradient-context.h" +#include "ui/tools/gradient-tool.h" #include "gradient-chemistry.h" #include <glibmm/i18n.h> #include "preferences.h" @@ -51,27 +51,30 @@ using Inkscape::DocumentUndo; -static void sp_gradient_drag(SPGradientContext &rc, Geom::Point const pt, guint state, guint32 etime); +#include "tool-factory.h" +namespace Inkscape { +namespace UI { +namespace Tools { -#include "tool-factory.h" +static void sp_gradient_drag(GradientTool &rc, Geom::Point const pt, guint state, guint32 etime); namespace { - SPEventContext* createGradientContext() { - return new SPGradientContext(); + ToolBase* createGradientContext() { + return new GradientTool(); } bool gradientContextRegistered = ToolFactory::instance().registerObject("/tools/gradient", createGradientContext); } -const std::string& SPGradientContext::getPrefsPath() { - return SPGradientContext::prefsPath; +const std::string& GradientTool::getPrefsPath() { + return GradientTool::prefsPath; } -const std::string SPGradientContext::prefsPath = "/tools/gradient"; +const std::string GradientTool::prefsPath = "/tools/gradient"; -SPGradientContext::SPGradientContext() : SPEventContext() { +GradientTool::GradientTool() : ToolBase() { this->node_added = false; this->subselcon = 0; this->selcon = 0; @@ -87,7 +90,7 @@ SPGradientContext::SPGradientContext() : SPEventContext() { this->item_to_select = NULL; } -SPGradientContext::~SPGradientContext() { +GradientTool::~GradientTool() { this->enableGrDrag(false); this->selcon->disconnect(); @@ -109,8 +112,8 @@ const gchar *gr_handle_descr [] = { N_("Radial gradient <b>mid stop</b>") }; -void SPGradientContext::selection_changed(Inkscape::Selection*) { - SPGradientContext *rc = (SPGradientContext *) this; +void GradientTool::selection_changed(Inkscape::Selection*) { + GradientTool *rc = (GradientTool *) this; GrDrag *drag = rc->_grdrag; Inkscape::Selection *selection = sp_desktop_selection(SP_EVENT_CONTEXT(rc)->desktop); @@ -158,8 +161,8 @@ void SPGradientContext::selection_changed(Inkscape::Selection*) { } } -void SPGradientContext::setup() { - SPEventContext::setup(); +void GradientTool::setup() { + ToolBase::setup(); Inkscape::Preferences *prefs = Inkscape::Preferences::get(); @@ -171,12 +174,12 @@ void SPGradientContext::setup() { Inkscape::Selection *selection = sp_desktop_selection(this->desktop); this->selcon = new sigc::connection(selection->connectChanged( - sigc::mem_fun(this, &SPGradientContext::selection_changed) + sigc::mem_fun(this, &GradientTool::selection_changed) )); this->subselcon = new sigc::connection(this->desktop->connectToolSubselectionChanged( sigc::hide(sigc::bind( - sigc::mem_fun(this, &SPGradientContext::selection_changed), + sigc::mem_fun(this, &GradientTool::selection_changed), (Inkscape::Selection*)NULL )) )); @@ -185,7 +188,7 @@ void SPGradientContext::setup() { } void -sp_gradient_context_select_next (SPEventContext *event_context) +sp_gradient_context_select_next (ToolBase *event_context) { GrDrag *drag = event_context->_grdrag; g_assert (drag); @@ -196,7 +199,7 @@ sp_gradient_context_select_next (SPEventContext *event_context) } void -sp_gradient_context_select_prev (SPEventContext *event_context) +sp_gradient_context_select_prev (ToolBase *event_context) { GrDrag *drag = event_context->_grdrag; g_assert (drag); @@ -207,7 +210,7 @@ sp_gradient_context_select_prev (SPEventContext *event_context) } static bool -sp_gradient_context_is_over_line (SPGradientContext *rc, SPItem *item, Geom::Point event_p) +sp_gradient_context_is_over_line (GradientTool *rc, SPItem *item, Geom::Point event_p) { SPDesktop *desktop = SP_EVENT_CONTEXT (rc)->desktop; @@ -311,7 +314,7 @@ sp_gradient_context_get_stop_intervals (GrDrag *drag, GSList **these_stops, GSLi } void -sp_gradient_context_add_stops_between_selected_stops (SPGradientContext *rc) +sp_gradient_context_add_stops_between_selected_stops (GradientTool *rc) { SPDocument *doc = NULL; GrDrag *drag = rc->_grdrag; @@ -383,7 +386,7 @@ sp_gradient_context_add_stops_between_selected_stops (SPGradientContext *rc) static double sqr(double x) {return x*x;} static void -sp_gradient_simplify(SPGradientContext *rc, double tolerance) +sp_gradient_simplify(GradientTool *rc, double tolerance) { SPDocument *doc = NULL; GrDrag *drag = rc->_grdrag; @@ -449,11 +452,11 @@ sp_gradient_simplify(SPGradientContext *rc, double tolerance) static void -sp_gradient_context_add_stop_near_point (SPGradientContext *rc, SPItem *item, Geom::Point mouse_p, guint32 /*etime*/) +sp_gradient_context_add_stop_near_point (GradientTool *rc, SPItem *item, Geom::Point mouse_p, guint32 /*etime*/) { // item is the selected item. mouse_p the location in doc coordinates of where to add the stop - SPEventContext *ec = SP_EVENT_CONTEXT(rc); + ToolBase *ec = SP_EVENT_CONTEXT(rc); SPDesktop *desktop = SP_EVENT_CONTEXT (rc)->desktop; double tolerance = (double) ec->tolerance; @@ -468,7 +471,7 @@ sp_gradient_context_add_stop_near_point (SPGradientContext *rc, SPItem *item, G ec->get_drag()->selectByStop(newstop); } -bool SPGradientContext::root_handler(GdkEvent* event) { +bool GradientTool::root_handler(GdkEvent* event) { static bool dragging; Inkscape::Selection *selection = sp_desktop_selection (desktop); @@ -879,18 +882,18 @@ bool SPGradientContext::root_handler(GdkEvent* event) { } if (!ret) { - ret = SPEventContext::root_handler(event); + ret = ToolBase::root_handler(event); } return ret; } -static void sp_gradient_drag(SPGradientContext &rc, Geom::Point const pt, guint /*state*/, guint32 etime) +static void sp_gradient_drag(GradientTool &rc, Geom::Point const pt, guint /*state*/, guint32 etime) { SPDesktop *desktop = SP_EVENT_CONTEXT(&rc)->desktop; Inkscape::Selection *selection = sp_desktop_selection(desktop); SPDocument *document = sp_desktop_document(desktop); - SPEventContext *ec = SP_EVENT_CONTEXT(&rc); + ToolBase *ec = SP_EVENT_CONTEXT(&rc); if (!selection->isEmpty()) { Inkscape::Preferences *prefs = Inkscape::Preferences::get(); @@ -957,6 +960,10 @@ static void sp_gradient_drag(SPGradientContext &rc, Geom::Point const pt, guint } } +} +} +} + /* Local Variables: diff --git a/src/gradient-context.h b/src/ui/tools/gradient-tool.h index 7a2918f3d..6fe3bca9f 100644 --- a/src/gradient-context.h +++ b/src/ui/tools/gradient-tool.h @@ -17,15 +17,19 @@ #include <stddef.h> #include <sigc++/sigc++.h> -#include "event-context.h" +#include "ui/tools/tool-base.h" -#define SP_GRADIENT_CONTEXT(obj) (dynamic_cast<SPGradientContext*>((SPEventContext*)obj)) -#define SP_IS_GRADIENT_CONTEXT(obj) (dynamic_cast<const SPGradientContext*>((const SPEventContext*)obj) != NULL) +#define SP_GRADIENT_CONTEXT(obj) (dynamic_cast<Inkscape::UI::Tools::GradientTool*>((Inkscape::UI::Tools::ToolBase*)obj)) +#define SP_IS_GRADIENT_CONTEXT(obj) (dynamic_cast<const Inkscape::UI::Tools::GradientTool*>((const Inkscape::UI::Tools::ToolBase*)obj) != NULL) -class SPGradientContext : public SPEventContext { +namespace Inkscape { +namespace UI { +namespace Tools { + +class GradientTool : public ToolBase { public: - SPGradientContext(); - virtual ~SPGradientContext(); + GradientTool(); + virtual ~GradientTool(); Geom::Point origin; @@ -49,9 +53,13 @@ private: void selection_changed(Inkscape::Selection*); }; -void sp_gradient_context_select_next (SPEventContext *event_context); -void sp_gradient_context_select_prev (SPEventContext *event_context); -void sp_gradient_context_add_stops_between_selected_stops (SPGradientContext *rc); +void sp_gradient_context_select_next (ToolBase *event_context); +void sp_gradient_context_select_prev (ToolBase *event_context); +void sp_gradient_context_add_stops_between_selected_stops (GradientTool *rc); + +} +} +} #endif diff --git a/src/lpe-tool-context.cpp b/src/ui/tools/lpe-tool.cpp index bf912746e..a5406f1c5 100644 --- a/src/lpe-tool-context.cpp +++ b/src/ui/tools/lpe-tool.cpp @@ -39,11 +39,10 @@ #include "sp-path.h" #include "util/units.h" -#include "lpe-tool-context.h" +#include "ui/tools/lpe-tool.h" using Inkscape::Util::unit_table; - -void sp_lpetool_context_selection_changed(Inkscape::Selection *selection, gpointer data); +using Inkscape::UI::Tools::PenTool; const int num_subtools = 8; @@ -62,21 +61,27 @@ SubtoolEntry lpesubtools[] = { #include "tool-factory.h" +namespace Inkscape { +namespace UI { +namespace Tools { + +void sp_lpetool_context_selection_changed(Inkscape::Selection *selection, gpointer data); + namespace { - SPEventContext* createLPEToolContext() { - return new SPLPEToolContext(); + ToolBase* createLPEToolContext() { + return new LpeTool(); } bool lpetoolContextRegistered = ToolFactory::instance().registerObject("/tools/lpetool", createLPEToolContext); } -const std::string& SPLPEToolContext::getPrefsPath() { - return SPLPEToolContext::prefsPath; +const std::string& LpeTool::getPrefsPath() { + return LpeTool::prefsPath; } -const std::string SPLPEToolContext::prefsPath = "/tools/lpetool"; +const std::string LpeTool::prefsPath = "/tools/lpetool"; -SPLPEToolContext::SPLPEToolContext() : SPPenContext() { +LpeTool::LpeTool() : PenTool() { this->mode = Inkscape::LivePathEffect::BEND_PATH; this->shape_editor = 0; @@ -88,7 +93,7 @@ SPLPEToolContext::SPLPEToolContext() : SPPenContext() { this->measuring_items = new std::map<SPPath *, SPCanvasItem*>; } -SPLPEToolContext::~SPLPEToolContext() { +LpeTool::~LpeTool() { delete this->shape_editor; this->shape_editor = NULL; @@ -104,8 +109,8 @@ SPLPEToolContext::~SPLPEToolContext() { this->sel_changed_connection.disconnect(); } -void SPLPEToolContext::setup() { - SPPenContext::setup(); +void LpeTool::setup() { + PenTool::setup(); Inkscape::Selection *selection = sp_desktop_selection (this->desktop); SPItem *item = selection->singleItem(); @@ -141,21 +146,21 @@ void SPLPEToolContext::setup() { */ void sp_lpetool_context_selection_changed(Inkscape::Selection *selection, gpointer data) { - SPLPEToolContext *lc = SP_LPETOOL_CONTEXT(data); + LpeTool *lc = SP_LPETOOL_CONTEXT(data); lc->shape_editor->unset_item(SH_KNOTHOLDER); SPItem *item = selection->singleItem(); lc->shape_editor->set_item(item, SH_KNOTHOLDER); } -void SPLPEToolContext::set(const Inkscape::Preferences::Entry& val) { +void LpeTool::set(const Inkscape::Preferences::Entry& val) { if (val.getEntryName() == "mode") { Inkscape::Preferences::get()->setString("/tools/geometric/mode", "drag"); - SP_PEN_CONTEXT(this)->mode = SPPenContext::MODE_DRAG; + SP_PEN_CONTEXT(this)->mode = PenTool::MODE_DRAG; } } -bool SPLPEToolContext::item_handler(SPItem* item, GdkEvent* event) { +bool LpeTool::item_handler(SPItem* item, GdkEvent* event) { gint ret = FALSE; switch (event->type) { @@ -177,21 +182,21 @@ bool SPLPEToolContext::item_handler(SPItem* item, GdkEvent* event) { } if (!ret) { - ret = SPPenContext::item_handler(item, event); + ret = PenTool::item_handler(item, event); } return ret; } -bool SPLPEToolContext::root_handler(GdkEvent* event) { +bool LpeTool::root_handler(GdkEvent* event) { Inkscape::Selection *selection = sp_desktop_selection (desktop); bool ret = false; if (sp_pen_context_has_waiting_LPE(this)) { // quit when we are waiting for a LPE to be applied - //ret = ((SPEventContextClass *) sp_lpetool_context_parent_class)->root_handler(event_context, event); - return SPPenContext::root_handler(event); + //ret = ((ToolBaseClass *) sp_lpetool_context_parent_class)->root_handler(event_context, event); + return PenTool::root_handler(event); } switch (event->type) { @@ -222,8 +227,8 @@ bool SPLPEToolContext::root_handler(GdkEvent* event) { sp_pen_context_wait_for_LPE_mouse_clicks(this, type, Inkscape::LivePathEffect::Effect::acceptsNumClicks(type)); // we pass the mouse click on to pen tool as the first click which it should collect - //ret = ((SPEventContextClass *) sp_lpetool_context_parent_class)->root_handler(event_context, event); - ret = SPPenContext::root_handler(event); + //ret = ((ToolBaseClass *) sp_lpetool_context_parent_class)->root_handler(event_context, event); + ret = PenTool::root_handler(event); } break; @@ -259,7 +264,7 @@ bool SPLPEToolContext::root_handler(GdkEvent* event) { } if (!ret) { - ret = SPPenContext::root_handler(event); + ret = PenTool::root_handler(event); } return ret; @@ -283,7 +288,7 @@ lpetool_mode_to_index(Inkscape::LivePathEffect::EffectType const type) { * Checks whether an item has a construction applied as LPE and if so returns the index in * lpesubtools of this construction */ -int lpetool_item_has_construction(SPLPEToolContext */*lc*/, SPItem *item) +int lpetool_item_has_construction(LpeTool */*lc*/, SPItem *item) { if (!SP_IS_LPE_ITEM(item)) { return -1; @@ -301,7 +306,7 @@ int lpetool_item_has_construction(SPLPEToolContext */*lc*/, SPItem *item) * a single selected item. Returns whether we succeeded. */ bool -lpetool_try_construction(SPLPEToolContext *lc, Inkscape::LivePathEffect::EffectType const type) +lpetool_try_construction(LpeTool *lc, Inkscape::LivePathEffect::EffectType const type) { Inkscape::Selection *selection = sp_desktop_selection(lc->desktop); SPItem *item = selection->singleItem(); @@ -315,7 +320,7 @@ lpetool_try_construction(SPLPEToolContext *lc, Inkscape::LivePathEffect::EffectT } void -lpetool_context_switch_mode(SPLPEToolContext *lc, Inkscape::LivePathEffect::EffectType const type) +lpetool_context_switch_mode(LpeTool *lc, Inkscape::LivePathEffect::EffectType const type) { int index = lpetool_mode_to_index(type); if (index != -1) { @@ -347,7 +352,7 @@ lpetool_get_limiting_bbox_corners(SPDocument *document, Geom::Point &A, Geom::Po */ // TODO: Note that currently the bbox is not user-settable; we simply use the page borders void -lpetool_context_reset_limiting_bbox(SPLPEToolContext *lc) +lpetool_context_reset_limiting_bbox(LpeTool *lc) { if (lc->canvas_bbox) { sp_canvas_item_destroy(lc->canvas_bbox); @@ -391,7 +396,7 @@ set_pos_and_anchor(SPCanvasText *canvas_text, const Geom::Piecewise<Geom::D2<Geo } void -lpetool_create_measuring_items(SPLPEToolContext *lc, Inkscape::Selection *selection) +lpetool_create_measuring_items(LpeTool *lc, Inkscape::Selection *selection) { if (!selection) { selection = sp_desktop_selection(lc->desktop); @@ -434,7 +439,7 @@ lpetool_create_measuring_items(SPLPEToolContext *lc, Inkscape::Selection *select } void -lpetool_delete_measuring_items(SPLPEToolContext *lc) +lpetool_delete_measuring_items(LpeTool *lc) { std::map<SPPath *, SPCanvasItem*>::iterator i; for (i = lc->measuring_items->begin(); i != lc->measuring_items->end(); ++i) { @@ -444,7 +449,7 @@ lpetool_delete_measuring_items(SPLPEToolContext *lc) } void -lpetool_update_measuring_items(SPLPEToolContext *lc) +lpetool_update_measuring_items(LpeTool *lc) { Inkscape::Preferences *prefs = Inkscape::Preferences::get(); for ( std::map<SPPath *, SPCanvasItem*>::iterator i = lc->measuring_items->begin(); @@ -470,7 +475,7 @@ lpetool_update_measuring_items(SPLPEToolContext *lc) } void -lpetool_show_measuring_info(SPLPEToolContext *lc, bool show) +lpetool_show_measuring_info(LpeTool *lc, bool show) { std::map<SPPath *, SPCanvasItem*>::iterator i; for (i = lc->measuring_items->begin(); i != lc->measuring_items->end(); ++i) { @@ -482,6 +487,10 @@ lpetool_show_measuring_info(SPLPEToolContext *lc, bool show) } } +} +} +} + /* Local Variables: mode:c++ diff --git a/src/lpe-tool-context.h b/src/ui/tools/lpe-tool.h index 0e9851cdb..df78c205c 100644 --- a/src/lpe-tool-context.h +++ b/src/ui/tools/lpe-tool.h @@ -15,10 +15,10 @@ * Released under GNU GPL, read the file 'COPYING' for more information */ -#include "pen-context.h" +#include "ui/tools/pen-tool.h" -#define SP_LPETOOL_CONTEXT(obj) (dynamic_cast<SPLPEToolContext*>((SPEventContext*)obj)) -#define SP_IS_LPETOOL_CONTEXT(obj) (dynamic_cast<const SPLPEToolContext*>((const SPEventContext*)obj) != NULL) +#define SP_LPETOOL_CONTEXT(obj) (dynamic_cast<Inkscape::UI::Tools::LpeTool*>((Inkscape::UI::Tools::ToolBase*)obj)) +#define SP_IS_LPETOOL_CONTEXT(obj) (dynamic_cast<const Inkscape::UI::Tools::LpeTool*>((const Inkscape::UI::Tools::ToolBase*)obj) != NULL) /* This is the list of subtools from which the toolbar of the LPETool is built automatically */ extern const int num_subtools; @@ -41,10 +41,14 @@ class Selection; class ShapeEditor; -class SPLPEToolContext : public SPPenContext { +namespace Inkscape { +namespace UI { +namespace Tools { + +class LpeTool : public PenTool { public: - SPLPEToolContext(); - virtual ~SPLPEToolContext(); + LpeTool(); + virtual ~LpeTool(); ShapeEditor* shape_editor; SPCanvasItem *canvas_bbox; @@ -67,15 +71,19 @@ protected: }; int lpetool_mode_to_index(Inkscape::LivePathEffect::EffectType const type); -int lpetool_item_has_construction(SPLPEToolContext *lc, SPItem *item); -bool lpetool_try_construction(SPLPEToolContext *lc, Inkscape::LivePathEffect::EffectType const type); -void lpetool_context_switch_mode(SPLPEToolContext *lc, Inkscape::LivePathEffect::EffectType const type); +int lpetool_item_has_construction(LpeTool *lc, SPItem *item); +bool lpetool_try_construction(LpeTool *lc, Inkscape::LivePathEffect::EffectType const type); +void lpetool_context_switch_mode(LpeTool *lc, Inkscape::LivePathEffect::EffectType const type); void lpetool_get_limiting_bbox_corners(SPDocument *document, Geom::Point &A, Geom::Point &B); -void lpetool_context_reset_limiting_bbox(SPLPEToolContext *lc); -void lpetool_create_measuring_items(SPLPEToolContext *lc, Inkscape::Selection *selection = NULL); -void lpetool_delete_measuring_items(SPLPEToolContext *lc); -void lpetool_update_measuring_items(SPLPEToolContext *lc); -void lpetool_show_measuring_info(SPLPEToolContext *lc, bool show = true); +void lpetool_context_reset_limiting_bbox(LpeTool *lc); +void lpetool_create_measuring_items(LpeTool *lc, Inkscape::Selection *selection = NULL); +void lpetool_delete_measuring_items(LpeTool *lc); +void lpetool_update_measuring_items(LpeTool *lc); +void lpetool_show_measuring_info(LpeTool *lc, bool show = true); + +} +} +} #endif // SP_LPETOOL_CONTEXT_H_SEEN diff --git a/src/measure-context.cpp b/src/ui/tools/measure-tool.cpp index 7570e36e7..0d823dfda 100644 --- a/src/measure-context.cpp +++ b/src/ui/tools/measure-tool.cpp @@ -30,8 +30,8 @@ #include "preferences.h" #include "inkscape.h" #include "desktop-handles.h" -#include "measure-context.h" -#include "draw-context.h" +#include "ui/tools/measure-tool.h" +#include "ui/tools/freehand-base.h" #include "display/canvas-text.h" #include "path-chemistry.h" #include "2geom/line.h" @@ -48,24 +48,27 @@ using Inkscape::ControlManager; using Inkscape::CTLINE_SECONDARY; using Inkscape::Util::unit_table; -std::vector<Inkscape::Display::TemporaryItem*> measure_tmp_items; +#include "tool-factory.h" +namespace Inkscape { +namespace UI { +namespace Tools { -#include "tool-factory.h" +std::vector<Inkscape::Display::TemporaryItem*> measure_tmp_items; namespace { - SPEventContext* createMeasureContext() { - return new SPMeasureContext(); + ToolBase* createMeasureContext() { + return new MeasureTool(); } bool measureContextRegistered = ToolFactory::instance().registerObject("/tools/measure", createMeasureContext); } -const std::string& SPMeasureContext::getPrefsPath() { - return SPMeasureContext::prefsPath; +const std::string& MeasureTool::getPrefsPath() { + return MeasureTool::prefsPath; } -const std::string SPMeasureContext::prefsPath = "/tools/measure"; +const std::string MeasureTool::prefsPath = "/tools/measure"; namespace { @@ -233,7 +236,7 @@ void createAngleDisplayCurve(SPDesktop *desktop, Geom::Point const ¢er, Geom } // namespace -SPMeasureContext::SPMeasureContext() : SPEventContext() { +MeasureTool::MeasureTool() : ToolBase() { this->grabbed = 0; this->cursor_shape = cursor_measure_xpm; @@ -241,10 +244,10 @@ SPMeasureContext::SPMeasureContext() : SPEventContext() { this->hot_y = 4; } -SPMeasureContext::~SPMeasureContext() { +MeasureTool::~MeasureTool() { } -void SPMeasureContext::finish() { +void MeasureTool::finish() { this->enableGrDrag(false); if (this->grabbed) { @@ -253,22 +256,22 @@ void SPMeasureContext::finish() { } } -//void SPMeasureContext::setup() { -// SPEventContext* ec = this; +//void MeasureTool::setup() { +// ToolBase* ec = this; // //// if (SP_EVENT_CONTEXT_CLASS(sp_measure_context_parent_class)->setup) { //// SP_EVENT_CONTEXT_CLASS(sp_measure_context_parent_class)->setup(ec); //// } -// SPEventContext::setup(); +// ToolBase::setup(); //} -//gint SPMeasureContext::item_handler(SPItem* item, GdkEvent* event) { +//gint MeasureTool::item_handler(SPItem* item, GdkEvent* event) { // gint ret = FALSE; // //// if (SP_EVENT_CONTEXT_CLASS(sp_measure_context_parent_class)->item_handler) { //// ret = SP_EVENT_CONTEXT_CLASS(sp_measure_context_parent_class)->item_handler(event_context, item, event); //// } -// ret = SPEventContext::item_handler(item, event); +// ret = ToolBase::item_handler(item, event); // // return ret; //} @@ -308,7 +311,7 @@ static void calculate_intersections(SPDesktop * /*desktop*/, SPItem* item, Geom: } } -bool SPMeasureContext::root_handler(GdkEvent* event) { +bool MeasureTool::root_handler(GdkEvent* event) { Inkscape::Preferences *prefs = Inkscape::Preferences::get(); tolerance = prefs->getIntLimited("/options/dragtolerance/value", 0, 0, 100); @@ -752,12 +755,16 @@ bool SPMeasureContext::root_handler(GdkEvent* event) { } if (!ret) { - ret = SPEventContext::root_handler(event); + ret = ToolBase::root_handler(event); } return ret; } +} +} +} + /* Local Variables: mode:c++ diff --git a/src/measure-context.h b/src/ui/tools/measure-tool.h index 7d5a88ab7..9701ba6ea 100644 --- a/src/measure-context.h +++ b/src/ui/tools/measure-tool.h @@ -12,17 +12,21 @@ * Released under GNU GPL, read the file 'COPYING' for more information */ -#include "event-context.h" +#include "ui/tools/tool-base.h" #include <2geom/point.h> #include <boost/optional.hpp> -#define SP_MEASURE_CONTEXT(obj) (dynamic_cast<SPMeasureContext*>((SPEventContext*)obj)) -#define SP_IS_MEASURE_CONTEXT(obj) (dynamic_cast<const SPMeasureContext*>((const SPEventContext*)obj) != NULL) +#define SP_MEASURE_CONTEXT(obj) (dynamic_cast<Inkscape::UI::Tools::MeasureTool*>((Inkscape::UI::Tools::ToolBase*)obj)) +#define SP_IS_MEASURE_CONTEXT(obj) (dynamic_cast<const Inkscape::UI::Tools::MeasureTool*>((const Inkscape::UI::Tools::ToolBase*)obj) != NULL) -class SPMeasureContext : public SPEventContext { +namespace Inkscape { +namespace UI { +namespace Tools { + +class MeasureTool : public ToolBase { public: - SPMeasureContext(); - virtual ~SPMeasureContext(); + MeasureTool(); + virtual ~MeasureTool(); static const std::string prefsPath; @@ -39,4 +43,8 @@ private: boost::optional<Geom::Point> lastEnd; }; +} +} +} + #endif // SEEN_SP_MEASURING_CONTEXT_H diff --git a/src/mesh-context.cpp b/src/ui/tools/mesh-tool.cpp index 142c3d2b1..4e7617f44 100644 --- a/src/mesh-context.cpp +++ b/src/ui/tools/mesh-tool.cpp @@ -47,32 +47,35 @@ #include "pixmaps/cursor-gradient-add.xpm" // Mesh specific -#include "mesh-context.h" +#include "ui/tools/mesh-tool.h" #include "sp-mesh-gradient.h" #include "display/sp-ctrlcurve.h" using Inkscape::DocumentUndo; -static void sp_mesh_drag(SPMeshContext &rc, Geom::Point const pt, guint state, guint32 etime); +#include "tool-factory.h" +namespace Inkscape { +namespace UI { +namespace Tools { -#include "tool-factory.h" +static void sp_mesh_drag(MeshTool &rc, Geom::Point const pt, guint state, guint32 etime); namespace { - SPEventContext* createMeshContext() { - return new SPMeshContext(); + ToolBase* createMeshContext() { + return new MeshTool(); } bool meshContextRegistered = ToolFactory::instance().registerObject("/tools/mesh", createMeshContext); } -const std::string& SPMeshContext::getPrefsPath() { - return SPMeshContext::prefsPath; +const std::string& MeshTool::getPrefsPath() { + return MeshTool::prefsPath; } -const std::string SPMeshContext::prefsPath = "/tools/mesh"; +const std::string MeshTool::prefsPath = "/tools/mesh"; -SPMeshContext::SPMeshContext() : SPEventContext() { +MeshTool::MeshTool() : ToolBase() { this->selcon = 0; this->node_added = false; this->subselcon = 0; @@ -88,7 +91,7 @@ SPMeshContext::SPMeshContext() : SPEventContext() { this->item_to_select = NULL; } -SPMeshContext::~SPMeshContext() { +MeshTool::~MeshTool() { this->enableGrDrag(false); this->selcon->disconnect(); @@ -104,7 +107,7 @@ const gchar *ms_handle_descr [] = { N_("Mesh gradient <b>tensor</b>") }; -void SPMeshContext::selection_changed(Inkscape::Selection* /*sel*/) { +void MeshTool::selection_changed(Inkscape::Selection* /*sel*/) { GrDrag *drag = this->_grdrag; Inkscape::Selection *selection = sp_desktop_selection(this->desktop); @@ -224,8 +227,8 @@ void SPMeshContext::selection_changed(Inkscape::Selection* /*sel*/) { // } } -void SPMeshContext::setup() { - SPEventContext::setup(); +void MeshTool::setup() { + ToolBase::setup(); Inkscape::Preferences *prefs = Inkscape::Preferences::get(); if (prefs->getBool("/tools/mesh/selcue", true)) { @@ -236,12 +239,12 @@ void SPMeshContext::setup() { Inkscape::Selection *selection = sp_desktop_selection(this->desktop); this->selcon = new sigc::connection(selection->connectChanged( - sigc::mem_fun(this, &SPMeshContext::selection_changed) + sigc::mem_fun(this, &MeshTool::selection_changed) )); this->subselcon = new sigc::connection(this->desktop->connectToolSubselectionChanged( sigc::hide(sigc::bind( - sigc::mem_fun(*this, &SPMeshContext::selection_changed), + sigc::mem_fun(*this, &MeshTool::selection_changed), (Inkscape::Selection*)NULL) ) )); @@ -250,7 +253,7 @@ void SPMeshContext::setup() { } void -sp_mesh_context_select_next (SPEventContext *event_context) +sp_mesh_context_select_next (ToolBase *event_context) { GrDrag *drag = event_context->_grdrag; g_assert (drag); @@ -261,7 +264,7 @@ sp_mesh_context_select_next (SPEventContext *event_context) } void -sp_mesh_context_select_prev (SPEventContext *event_context) +sp_mesh_context_select_prev (ToolBase *event_context) { GrDrag *drag = event_context->_grdrag; g_assert (drag); @@ -275,7 +278,7 @@ sp_mesh_context_select_prev (SPEventContext *event_context) Returns true if mouse cursor over mesh edge. */ static bool -sp_mesh_context_is_over_line (SPMeshContext *rc, SPItem *item, Geom::Point event_p) +sp_mesh_context_is_over_line (MeshTool *rc, SPItem *item, Geom::Point event_p) { SPDesktop *desktop = SP_EVENT_CONTEXT (rc)->desktop; @@ -300,7 +303,7 @@ sp_mesh_context_is_over_line (SPMeshContext *rc, SPItem *item, Geom::Point event /** Split row/column near the mouse point. */ -static void sp_mesh_context_split_near_point(SPMeshContext *rc, SPItem *item, Geom::Point mouse_p, guint32 /*etime*/) +static void sp_mesh_context_split_near_point(MeshTool *rc, SPItem *item, Geom::Point mouse_p, guint32 /*etime*/) { #ifdef DEBUG_MESH @@ -309,7 +312,7 @@ static void sp_mesh_context_split_near_point(SPMeshContext *rc, SPItem *item, G // item is the selected item. mouse_p the location in doc coordinates of where to add the stop - SPEventContext *ec = SP_EVENT_CONTEXT(rc); + ToolBase *ec = SP_EVENT_CONTEXT(rc); SPDesktop *desktop = SP_EVENT_CONTEXT (rc)->desktop; double tolerance = (double) ec->tolerance; @@ -326,7 +329,7 @@ static void sp_mesh_context_split_near_point(SPMeshContext *rc, SPItem *item, G Wrapper for various mesh operations that require a list of selected corner nodes. */ static void -sp_mesh_context_corner_operation (SPMeshContext *rc, MeshCornerOperation operation ) +sp_mesh_context_corner_operation (MeshTool *rc, MeshCornerOperation operation ) { #ifdef DEBUG_MESH @@ -436,7 +439,7 @@ sp_mesh_context_corner_operation (SPMeshContext *rc, MeshCornerOperation operati /** Handles all keyboard and mouse input for meshs. */ -bool SPMeshContext::root_handler(GdkEvent* event) { +bool MeshTool::root_handler(GdkEvent* event) { static bool dragging; Inkscape::Selection *selection = sp_desktop_selection (desktop); @@ -924,17 +927,17 @@ bool SPMeshContext::root_handler(GdkEvent* event) { } if (!ret) { - ret = SPEventContext::root_handler(event); + ret = ToolBase::root_handler(event); } return ret; } -static void sp_mesh_drag(SPMeshContext &rc, Geom::Point const /*pt*/, guint /*state*/, guint32 /*etime*/) { +static void sp_mesh_drag(MeshTool &rc, Geom::Point const /*pt*/, guint /*state*/, guint32 /*etime*/) { SPDesktop *desktop = SP_EVENT_CONTEXT(&rc)->desktop; Inkscape::Selection *selection = sp_desktop_selection(desktop); SPDocument *document = sp_desktop_document(desktop); - SPEventContext *ec = SP_EVENT_CONTEXT(&rc); + ToolBase *ec = SP_EVENT_CONTEXT(&rc); if (!selection->isEmpty()) { @@ -998,6 +1001,9 @@ static void sp_mesh_drag(SPMeshContext &rc, Geom::Point const /*pt*/, guint /*st } +} +} +} /* Local Variables: diff --git a/src/mesh-context.h b/src/ui/tools/mesh-tool.h index 531587654..d952c9010 100644 --- a/src/mesh-context.h +++ b/src/ui/tools/mesh-tool.h @@ -19,15 +19,19 @@ #include <stddef.h> #include <sigc++/sigc++.h> -#include "event-context.h" +#include "ui/tools/tool-base.h" -#define SP_MESH_CONTEXT(obj) (dynamic_cast<SPMeshContext*>((SPEventContext*)obj)) -#define SP_IS_MESH_CONTEXT(obj) (dynamic_cast<const SPMeshContext*>((const SPEventContext*)obj) != NULL) +#define SP_MESH_CONTEXT(obj) (dynamic_cast<Inkscape::UI::Tools::MeshTool*>((Inkscape::UI::Tools::ToolBase*)obj)) +#define SP_IS_MESH_CONTEXT(obj) (dynamic_cast<const Inkscape::UI::Tools::MeshTool*>((const Inkscape::UI::Tools::ToolBase*)obj) != NULL) -class SPMeshContext : public SPEventContext { +namespace Inkscape { +namespace UI { +namespace Tools { + +class MeshTool : public ToolBase { public: - SPMeshContext(); - virtual ~SPMeshContext(); + MeshTool(); + virtual ~MeshTool(); Geom::Point origin; @@ -51,8 +55,12 @@ private: void selection_changed(Inkscape::Selection* sel); }; -void sp_mesh_context_select_next(SPEventContext *event_context); -void sp_mesh_context_select_prev(SPEventContext *event_context); +void sp_mesh_context_select_next(ToolBase *event_context); +void sp_mesh_context_select_prev(ToolBase *event_context); + +} +} +} #endif // SEEN_SP_MESH_CONTEXT_H diff --git a/src/ui/tool/node-tool.cpp b/src/ui/tools/node-tool.cpp index 76e33e506..8a950b528 100644 --- a/src/ui/tool/node-tool.cpp +++ b/src/ui/tools/node-tool.cpp @@ -10,7 +10,7 @@ * Released under GNU GPL, read the file 'COPYING' for more information */ -#include "curve-drag-point.h" +#include "ui/tool/curve-drag-point.h" #include <glib/gi18n.h> #include "desktop.h" #include "desktop-handles.h" @@ -30,7 +30,7 @@ #include "sp-path.h" #include "sp-text.h" #include "ui/control-manager.h" -#include "ui/tool/node-tool.h" +#include "ui/tools/node-tool.h" #include "ui/tool/control-point-selection.h" #include "ui/tool/event-utils.h" #include "ui/tool/manipulator.h" @@ -45,7 +45,7 @@ #include <gdk/gdkkeysyms.h> -/** @struct InkNodeTool +/** @struct NodeTool * * Node tool event context. * @@ -104,25 +104,29 @@ using Inkscape::ControlManager; -SPCanvasGroup *create_control_group(SPDesktop *d); - #include "tool-factory.h" +namespace Inkscape { +namespace UI { +namespace Tools { + namespace { - SPEventContext* createNodesContext() { - return new InkNodeTool(); + ToolBase* createNodesContext() { + return new NodeTool(); } bool nodesContextRegistered = ToolFactory::instance().registerObject("/tools/nodes", createNodesContext); } -const std::string& InkNodeTool::getPrefsPath() { - return InkNodeTool::prefsPath; +const std::string& NodeTool::getPrefsPath() { + return NodeTool::prefsPath; } -const std::string InkNodeTool::prefsPath = "/tools/nodes"; +const std::string NodeTool::prefsPath = "/tools/nodes"; + +SPCanvasGroup *create_control_group(SPDesktop *d); -InkNodeTool::InkNodeTool() : SPEventContext() { +NodeTool::NodeTool() : ToolBase() { this->show_handles = false; this->single_node_transform_handles = false; this->show_transform_handles = false; @@ -159,7 +163,7 @@ void destroy_group(SPCanvasGroup *g) sp_canvas_item_destroy(SP_CANVAS_ITEM(g)); } -InkNodeTool::~InkNodeTool() { +NodeTool::~NodeTool() { this->enableGrDrag(false); if (this->flash_tempitem) { @@ -184,8 +188,8 @@ InkNodeTool::~InkNodeTool() { destroy_group(this->_transform_handle_group); } -void InkNodeTool::setup() { - SPEventContext::setup(); +void NodeTool::setup() { + ToolBase::setup(); this->_path_data = new Inkscape::UI::PathSharedData(); @@ -208,14 +212,14 @@ void InkNodeTool::setup() { this->_selection_changed_connection.disconnect(); this->_selection_changed_connection = - selection->connectChanged(sigc::mem_fun(this, &InkNodeTool::selection_changed)); + selection->connectChanged(sigc::mem_fun(this, &NodeTool::selection_changed)); this->_mouseover_changed_connection.disconnect(); this->_mouseover_changed_connection = - Inkscape::UI::ControlPoint::signal_mouseover_change.connect(sigc::mem_fun(this, &InkNodeTool::mouseover_changed)); + Inkscape::UI::ControlPoint::signal_mouseover_change.connect(sigc::mem_fun(this, &NodeTool::mouseover_changed)); this->_sizeUpdatedConn = ControlManager::getManager().connectCtrlSizeChanged( - sigc::mem_fun(this, &InkNodeTool::handleControlUiStyleChange) + sigc::mem_fun(this, &NodeTool::handleControlUiStyleChange) ); this->_selected_nodes = new Inkscape::UI::ControlPointSelection(this->desktop, this->_transform_handle_group); @@ -224,8 +228,8 @@ void InkNodeTool::setup() { this->_multipath = new Inkscape::UI::MultiPathManipulator(data, this->_selection_changed_connection); - this->_selector->signal_point.connect(sigc::mem_fun(this, &InkNodeTool::select_point)); - this->_selector->signal_area.connect(sigc::mem_fun(this, &InkNodeTool::select_area)); + this->_selector->signal_point.connect(sigc::mem_fun(this, &NodeTool::select_point)); + this->_selector->signal_area.connect(sigc::mem_fun(this, &NodeTool::select_area)); this->_multipath->signal_coords_changed.connect( sigc::bind( @@ -240,7 +244,7 @@ void InkNodeTool::setup() { // <=> // void update_tip(GdkEvent *event) sigc::hide(sigc::hide(sigc::bind( - sigc::mem_fun(this, &InkNodeTool::update_tip), + sigc::mem_fun(this, &NodeTool::update_tip), (GdkEvent*)NULL ))) ); @@ -279,7 +283,7 @@ void InkNodeTool::setup() { this->desktop->emitToolSubselectionChanged(NULL); // sets the coord entry fields to inactive } -void InkNodeTool::set(const Inkscape::Preferences::Entry& value) { +void NodeTool::set(const Inkscape::Preferences::Entry& value) { Glib::ustring entry_name = value.getEntryName(); if (entry_name == "show_handles") { @@ -312,12 +316,12 @@ void InkNodeTool::set(const Inkscape::Preferences::Entry& value) { this->edit_masks = value.getBool(); this->selection_changed(this->desktop->selection); } else { - SPEventContext::set(value); + ToolBase::set(value); } } /** Recursively collect ShapeRecords */ -void gather_items(InkNodeTool *nt, SPItem *base, SPObject *obj, Inkscape::UI::ShapeRole role, +void gather_items(NodeTool *nt, SPItem *base, SPObject *obj, Inkscape::UI::ShapeRole role, std::set<Inkscape::UI::ShapeRecord> &s) { using namespace Inkscape::UI; @@ -358,7 +362,7 @@ void gather_items(InkNodeTool *nt, SPItem *base, SPObject *obj, Inkscape::UI::Sh } } -void InkNodeTool::selection_changed(Inkscape::Selection *sel) { +void NodeTool::selection_changed(Inkscape::Selection *sel) { using namespace Inkscape::UI; std::set<ShapeRecord> shapes; @@ -405,7 +409,7 @@ void InkNodeTool::selection_changed(Inkscape::Selection *sel) { this->desktop->updateNow(); } -bool InkNodeTool::root_handler(GdkEvent* event) { +bool NodeTool::root_handler(GdkEvent* event) { /* things to handle here: * 1. selection of items * 2. passing events to manipulators @@ -534,10 +538,10 @@ bool InkNodeTool::root_handler(GdkEvent* event) { break; } - return SPEventContext::root_handler(event); + return ToolBase::root_handler(event); } -void InkNodeTool::update_tip(GdkEvent *event) { +void NodeTool::update_tip(GdkEvent *event) { using namespace Inkscape::UI; if (event && (event->type == GDK_KEY_PRESS || event->type == GDK_KEY_RELEASE)) { @@ -603,7 +607,7 @@ void InkNodeTool::update_tip(GdkEvent *event) { } } -void InkNodeTool::select_area(Geom::Rect const &sel, GdkEventButton *event) { +void NodeTool::select_area(Geom::Rect const &sel, GdkEventButton *event) { using namespace Inkscape::UI; if (this->_multipath->empty()) { @@ -621,7 +625,7 @@ void InkNodeTool::select_area(Geom::Rect const &sel, GdkEventButton *event) { } } -void InkNodeTool::select_point(Geom::Point const &sel, GdkEventButton *event) { +void NodeTool::select_point(Geom::Point const &sel, GdkEventButton *event) { using namespace Inkscape::UI; // pull in event helpers if (!event) { @@ -659,7 +663,7 @@ void InkNodeTool::select_point(Geom::Point const &sel, GdkEventButton *event) { } } -void InkNodeTool::mouseover_changed(Inkscape::UI::ControlPoint *p) { +void NodeTool::mouseover_changed(Inkscape::UI::ControlPoint *p) { using Inkscape::UI::CurveDragPoint; CurveDragPoint *cdp = dynamic_cast<CurveDragPoint*>(p); @@ -679,10 +683,14 @@ void InkNodeTool::mouseover_changed(Inkscape::UI::ControlPoint *p) { } } -void InkNodeTool::handleControlUiStyleChange() { +void NodeTool::handleControlUiStyleChange() { this->_multipath->updateHandles(); } +} +} +} + //} // anonymous namespace /* diff --git a/src/ui/tool/node-tool.h b/src/ui/tools/node-tool.h index c41f50650..4d15ab70e 100644 --- a/src/ui/tool/node-tool.h +++ b/src/ui/tools/node-tool.h @@ -13,7 +13,7 @@ #include <boost/ptr_container/ptr_map.hpp> #include <glib.h> -#include "event-context.h" +#include "ui/tools/tool-base.h" namespace Inkscape { namespace Display { @@ -30,13 +30,17 @@ namespace Inkscape { } } -#define INK_NODE_TOOL(obj) (dynamic_cast<InkNodeTool*>((SPEventContext*)obj)) -#define INK_IS_NODE_TOOL(obj) (dynamic_cast<const InkNodeTool*>((const SPEventContext*)obj)) +#define INK_NODE_TOOL(obj) (dynamic_cast<Inkscape::UI::Tools::NodeTool*>((Inkscape::UI::Tools::ToolBase*)obj)) +#define INK_IS_NODE_TOOL(obj) (dynamic_cast<const Inkscape::UI::Tools::NodeTool*>((const Inkscape::UI::Tools::ToolBase*)obj)) -class InkNodeTool : public SPEventContext { +namespace Inkscape { +namespace UI { +namespace Tools { + +class NodeTool : public ToolBase { public: - InkNodeTool(); - virtual ~InkNodeTool(); + NodeTool(); + virtual ~NodeTool(); Inkscape::UI::ControlPointSelection* _selected_nodes; Inkscape::UI::MultiPathManipulator* _multipath; @@ -83,6 +87,10 @@ private: void handleControlUiStyleChange(); }; +} +} +} + #endif /* diff --git a/src/pen-context.cpp b/src/ui/tools/pen-tool.cpp index 428ebd6d9..dc5e801c0 100644 --- a/src/pen-context.cpp +++ b/src/ui/tools/pen-tool.cpp @@ -20,7 +20,7 @@ #include <cstring> #include <string> -#include "pen-context.h" +#include "ui/tools/pen-tool.h" #include "sp-namedview.h" #include "desktop.h" #include "desktop-handles.h" @@ -42,52 +42,54 @@ #include "context-fns.h" #include "tools-switch.h" #include "ui/control-manager.h" +#include "tool-factory.h" using Inkscape::ControlManager; -static void spdc_pen_set_initial_point(SPPenContext *pc, Geom::Point const p); -static void spdc_pen_set_subsequent_point(SPPenContext *const pc, Geom::Point const p, bool statusbar, guint status = 0); -static void spdc_pen_set_ctrl(SPPenContext *pc, Geom::Point const p, guint state); -static void spdc_pen_finish_segment(SPPenContext *pc, Geom::Point p, guint state); +namespace Inkscape { +namespace UI { +namespace Tools { + +static void spdc_pen_set_initial_point(PenTool *pc, Geom::Point const p); +static void spdc_pen_set_subsequent_point(PenTool *const pc, Geom::Point const p, bool statusbar, guint status = 0); +static void spdc_pen_set_ctrl(PenTool *pc, Geom::Point const p, guint state); +static void spdc_pen_finish_segment(PenTool *pc, Geom::Point p, guint state); -static void spdc_pen_finish(SPPenContext *pc, gboolean closed); +static void spdc_pen_finish(PenTool *pc, gboolean closed); -static gint pen_handle_button_press(SPPenContext *const pc, GdkEventButton const &bevent); -static gint pen_handle_motion_notify(SPPenContext *const pc, GdkEventMotion const &mevent); -static gint pen_handle_button_release(SPPenContext *const pc, GdkEventButton const &revent); -static gint pen_handle_2button_press(SPPenContext *const pc, GdkEventButton const &bevent); -static gint pen_handle_key_press(SPPenContext *const pc, GdkEvent *event); -static void spdc_reset_colors(SPPenContext *pc); +static gint pen_handle_button_press(PenTool *const pc, GdkEventButton const &bevent); +static gint pen_handle_motion_notify(PenTool *const pc, GdkEventMotion const &mevent); +static gint pen_handle_button_release(PenTool *const pc, GdkEventButton const &revent); +static gint pen_handle_2button_press(PenTool *const pc, GdkEventButton const &bevent); +static gint pen_handle_key_press(PenTool *const pc, GdkEvent *event); +static void spdc_reset_colors(PenTool *pc); -static void pen_disable_events(SPPenContext *const pc); -static void pen_enable_events(SPPenContext *const pc); +static void pen_disable_events(PenTool *const pc); +static void pen_enable_events(PenTool *const pc); static Geom::Point pen_drag_origin_w(0, 0); static bool pen_within_tolerance = false; -static int pen_next_paraxial_direction(const SPPenContext *const pc, Geom::Point const &pt, Geom::Point const &origin, guint state); -static void pen_set_to_nearest_horiz_vert(const SPPenContext *const pc, Geom::Point &pt, guint const state, bool snap); +static int pen_next_paraxial_direction(const PenTool *const pc, Geom::Point const &pt, Geom::Point const &origin, guint state); +static void pen_set_to_nearest_horiz_vert(const PenTool *const pc, Geom::Point &pt, guint const state, bool snap); static int pen_last_paraxial_dir = 0; // last used direction in horizontal/vertical mode; 0 = horizontal, 1 = vertical - -#include "tool-factory.h" - namespace { - SPEventContext* createPenContext() { - return new SPPenContext(); + ToolBase* createPenContext() { + return new PenTool(); } bool penContextRegistered = ToolFactory::instance().registerObject("/tools/freehand/pen", createPenContext); } -const std::string& SPPenContext::getPrefsPath() { - return SPPenContext::prefsPath; +const std::string& PenTool::getPrefsPath() { + return PenTool::prefsPath; } -const std::string SPPenContext::prefsPath = "/tools/freehand/pen"; +const std::string PenTool::prefsPath = "/tools/freehand/pen"; -SPPenContext::SPPenContext() : SPDrawContext() { +PenTool::PenTool() : FreehandBase() { this->polylines_only = false; this->polylines_paraxial = false; this->expecting_clicks_for_LPE = 0; @@ -112,7 +114,7 @@ SPPenContext::SPPenContext() : SPDrawContext() { this->waiting_item = NULL; } -SPPenContext::~SPPenContext() { +PenTool::~PenTool() { if (this->c0) { sp_canvas_item_destroy(this->c0); this->c0 = NULL; @@ -136,7 +138,7 @@ SPPenContext::~SPPenContext() { } } -void sp_pen_context_set_polyline_mode(SPPenContext *const pc) { +void sp_pen_context_set_polyline_mode(PenTool *const pc) { Inkscape::Preferences *prefs = Inkscape::Preferences::get(); guint mode = prefs->getInt("/tools/freehand/pen/freehand-mode", 0); pc->polylines_only = (mode == 2 || mode == 3); @@ -144,22 +146,22 @@ void sp_pen_context_set_polyline_mode(SPPenContext *const pc) { } /** - * Callback to initialize SPPenContext object. + * Callback to initialize PenTool object. */ -void SPPenContext::setup() { - SPDrawContext::setup(); +void PenTool::setup() { + FreehandBase::setup(); ControlManager &mgr = ControlManager::getManager(); // Pen indicators - this->c0 = mgr.createControl(sp_desktop_controls(SP_EVENT_CONTEXT_DESKTOP(this)), Inkscape::CTRL_TYPE_ADJ_HANDLE); + this->c0 = mgr.createControl(sp_desktop_controls(this->desktop), Inkscape::CTRL_TYPE_ADJ_HANDLE); mgr.track(this->c0); - this->c1 = mgr.createControl(sp_desktop_controls(SP_EVENT_CONTEXT_DESKTOP(this)), Inkscape::CTRL_TYPE_ADJ_HANDLE); + this->c1 = mgr.createControl(sp_desktop_controls(this->desktop), Inkscape::CTRL_TYPE_ADJ_HANDLE); mgr.track(this->c1); - this->cl0 = mgr.createControlLine(sp_desktop_controls(SP_EVENT_CONTEXT_DESKTOP(this))); - this->cl1 = mgr.createControlLine(sp_desktop_controls(SP_EVENT_CONTEXT_DESKTOP(this))); + this->cl0 = mgr.createControlLine(sp_desktop_controls(this->desktop)); + this->cl1 = mgr.createControlLine(sp_desktop_controls(this->desktop)); sp_canvas_item_hide(this->c0); sp_canvas_item_hide(this->c1); @@ -178,10 +180,10 @@ void SPPenContext::setup() { } } -static void pen_cancel (SPPenContext *const pc) +static void pen_cancel (PenTool *const pc) { pc->num_clicks = 0; - pc->state = SPPenContext::STOP; + pc->state = PenTool::STOP; spdc_reset_colors(pc); sp_canvas_item_hide(pc->c0); sp_canvas_item_hide(pc->c1); @@ -196,20 +198,20 @@ static void pen_cancel (SPPenContext *const pc) /** * Finalization callback. */ -void SPPenContext::finish() { +void PenTool::finish() { sp_event_context_discard_delayed_snap_event(this); if (this->npoints != 0) { pen_cancel(this); } - SPDrawContext::finish(); + FreehandBase::finish(); } /** * Callback that sets key to value in pen context. */ -void SPPenContext::set(const Inkscape::Preferences::Entry& val) { +void PenTool::set(const Inkscape::Preferences::Entry& val) { Glib::ustring name = val.getEntryName(); if (name == "mode") { @@ -224,7 +226,7 @@ void SPPenContext::set(const Inkscape::Preferences::Entry& val) { /** * Snaps new node relative to the previous node. */ -static void spdc_endpoint_snap(SPPenContext const *const pc, Geom::Point &p, guint const state) +static void spdc_endpoint_snap(PenTool const *const pc, Geom::Point &p, guint const state) { if ((state & GDK_CONTROL_MASK) && !pc->polylines_paraxial) { //CTRL enables angular snapping if (pc->npoints > 0) { @@ -248,7 +250,7 @@ static void spdc_endpoint_snap(SPPenContext const *const pc, Geom::Point &p, gui /** * Snaps new node's handle relative to the new node. */ -static void spdc_endpoint_snap_handle(SPPenContext const *const pc, Geom::Point &p, guint const state) +static void spdc_endpoint_snap_handle(PenTool const *const pc, Geom::Point &p, guint const state) { g_return_if_fail(( pc->npoints == 2 || pc->npoints == 5 )); @@ -263,7 +265,7 @@ static void spdc_endpoint_snap_handle(SPPenContext const *const pc, Geom::Point } } -bool SPPenContext::item_handler(SPItem* item, GdkEvent* event) { +bool PenTool::item_handler(SPItem* item, GdkEvent* event) { gint ret = FALSE; switch (event->type) { @@ -278,7 +280,7 @@ bool SPPenContext::item_handler(SPItem* item, GdkEvent* event) { } if (!ret) { - ret = SPDrawContext::item_handler(item, event); + ret = FreehandBase::item_handler(item, event); } return ret; @@ -287,7 +289,7 @@ bool SPPenContext::item_handler(SPItem* item, GdkEvent* event) { /** * Callback to handle all pen events. */ -bool SPPenContext::root_handler(GdkEvent* event) { +bool PenTool::root_handler(GdkEvent* event) { gint ret = FALSE; switch (event->type) { @@ -316,7 +318,7 @@ bool SPPenContext::root_handler(GdkEvent* event) { } if (!ret) { - ret = SPDrawContext::root_handler(event); + ret = FreehandBase::root_handler(event); } return ret; @@ -325,18 +327,18 @@ bool SPPenContext::root_handler(GdkEvent* event) { /** * Handle mouse button press event. */ -static gint pen_handle_button_press(SPPenContext *const pc, GdkEventButton const &bevent) +static gint pen_handle_button_press(PenTool *const pc, GdkEventButton const &bevent) { if (pc->events_disabled) { // skip event processing if events are disabled return FALSE; } - SPDrawContext * const dc = SP_DRAW_CONTEXT(pc); - SPDesktop * const desktop = SP_EVENT_CONTEXT_DESKTOP(dc); + FreehandBase * const dc = SP_DRAW_CONTEXT(pc); + SPDesktop * const desktop = dc->desktop; Geom::Point const event_w(bevent.x, bevent.y); Geom::Point event_dt(desktop->w2d(event_w)); - SPEventContext *event_context = SP_EVENT_CONTEXT(pc); + ToolBase *event_context = SP_EVENT_CONTEXT(pc); gint ret = FALSE; if (bevent.button == 1 && !event_context->space_panning @@ -363,26 +365,26 @@ static gint pen_handle_button_press(SPPenContext *const pc, GdkEventButton const SPDrawAnchor * const anchor = spdc_test_inside(pc, event_w); switch (pc->mode) { - case SPPenContext::MODE_CLICK: + case PenTool::MODE_CLICK: // In click mode we add point on release switch (pc->state) { - case SPPenContext::POINT: - case SPPenContext::CONTROL: - case SPPenContext::CLOSE: + case PenTool::POINT: + case PenTool::CONTROL: + case PenTool::CLOSE: break; - case SPPenContext::STOP: + case PenTool::STOP: // This is allowed, if we just canceled curve - pc->state = SPPenContext::POINT; + pc->state = PenTool::POINT; break; default: break; } break; - case SPPenContext::MODE_DRAG: + case PenTool::MODE_DRAG: switch (pc->state) { - case SPPenContext::STOP: + case PenTool::STOP: // This is allowed, if we just canceled curve - case SPPenContext::POINT: + case PenTool::POINT: if (pc->npoints == 0) { Geom::Point p; @@ -438,7 +440,7 @@ static gint pen_handle_button_press(SPPenContext *const pc, GdkEventButton const p = anchor->dp; // we hit an anchor, will finish the curve (either with or without closing) // in release handler - pc->state = SPPenContext::CLOSE; + pc->state = PenTool::CLOSE; if (pc->green_anchor && pc->green_anchor->active) { // we clicked on the current curve start, so close it even if @@ -455,13 +457,13 @@ static gint pen_handle_button_press(SPPenContext *const pc, GdkEventButton const } } - pc->state = pc->polylines_only ? SPPenContext::POINT : SPPenContext::CONTROL; + pc->state = pc->polylines_only ? PenTool::POINT : PenTool::CONTROL; ret = TRUE; break; - case SPPenContext::CONTROL: + case PenTool::CONTROL: g_warning("Button down in CONTROL state"); break; - case SPPenContext::CLOSE: + case PenTool::CLOSE: g_warning("Button down in CLOSE state"); break; default: @@ -499,12 +501,12 @@ static gint pen_handle_button_press(SPPenContext *const pc, GdkEventButton const /** * Handle motion_notify event. */ -static gint pen_handle_motion_notify(SPPenContext *const pc, GdkEventMotion const &mevent) +static gint pen_handle_motion_notify(PenTool *const pc, GdkEventMotion const &mevent) { gint ret = FALSE; - SPEventContext *event_context = SP_EVENT_CONTEXT(pc); - SPDesktop * const dt = SP_EVENT_CONTEXT_DESKTOP(event_context); + ToolBase *event_context = SP_EVENT_CONTEXT(pc); + SPDesktop * const dt = event_context->desktop; if (event_context->space_panning || mevent.state & GDK_BUTTON2_MASK || mevent.state & GDK_BUTTON3_MASK) { // allow scrolling @@ -537,9 +539,9 @@ static gint pen_handle_motion_notify(SPPenContext *const pc, GdkEventMotion cons SPDrawAnchor *anchor = spdc_test_inside(pc, event_w); switch (pc->mode) { - case SPPenContext::MODE_CLICK: + case PenTool::MODE_CLICK: switch (pc->state) { - case SPPenContext::POINT: + case PenTool::POINT: if ( pc->npoints != 0 ) { // Only set point, if we are already appending spdc_endpoint_snap(pc, p, mevent.state); @@ -552,23 +554,23 @@ static gint pen_handle_motion_notify(SPPenContext *const pc, GdkEventMotion cons m.unSetup(); } break; - case SPPenContext::CONTROL: - case SPPenContext::CLOSE: + case PenTool::CONTROL: + case PenTool::CLOSE: // Placing controls is last operation in CLOSE state spdc_endpoint_snap(pc, p, mevent.state); spdc_pen_set_ctrl(pc, p, mevent.state); ret = TRUE; break; - case SPPenContext::STOP: + case PenTool::STOP: // This is perfectly valid break; default: break; } break; - case SPPenContext::MODE_DRAG: + case PenTool::MODE_DRAG: switch (pc->state) { - case SPPenContext::POINT: + case PenTool::POINT: if ( pc->npoints > 0 ) { // Only set point, if we are already appending @@ -604,8 +606,8 @@ static gint pen_handle_motion_notify(SPPenContext *const pc, GdkEventMotion cons } } break; - case SPPenContext::CONTROL: - case SPPenContext::CLOSE: + case PenTool::CONTROL: + case PenTool::CLOSE: // Placing controls is last operation in CLOSE state // snap the handle @@ -619,7 +621,7 @@ static gint pen_handle_motion_notify(SPPenContext *const pc, GdkEventMotion cons gobble_motion_events(GDK_BUTTON1_MASK); ret = TRUE; break; - case SPPenContext::STOP: + case PenTool::STOP: // This is perfectly valid break; default: @@ -641,7 +643,7 @@ static gint pen_handle_motion_notify(SPPenContext *const pc, GdkEventMotion cons /** * Handle mouse button release event. */ -static gint pen_handle_button_release(SPPenContext *const pc, GdkEventButton const &revent) +static gint pen_handle_button_release(PenTool *const pc, GdkEventButton const &revent) { if (pc->events_disabled) { // skip event processing if events are disabled @@ -649,10 +651,10 @@ static gint pen_handle_button_release(SPPenContext *const pc, GdkEventButton con } gint ret = FALSE; - SPEventContext *event_context = SP_EVENT_CONTEXT(pc); + ToolBase *event_context = SP_EVENT_CONTEXT(pc); if ( revent.button == 1 && !event_context->space_panning) { - SPDrawContext *dc = SP_DRAW_CONTEXT (pc); + FreehandBase *dc = SP_DRAW_CONTEXT (pc); Geom::Point const event_w(revent.x, revent.y); @@ -663,9 +665,9 @@ static gint pen_handle_button_release(SPPenContext *const pc, GdkEventButton con SPDrawAnchor *anchor = spdc_test_inside(pc, event_w); switch (pc->mode) { - case SPPenContext::MODE_CLICK: + case PenTool::MODE_CLICK: switch (pc->state) { - case SPPenContext::POINT: + case PenTool::POINT: if ( pc->npoints == 0 ) { // Start new thread only with button release if (anchor) { @@ -680,43 +682,43 @@ static gint pen_handle_button_release(SPPenContext *const pc, GdkEventButton con p = anchor->dp; } } - pc->state = SPPenContext::CONTROL; + pc->state = PenTool::CONTROL; ret = TRUE; break; - case SPPenContext::CONTROL: + case PenTool::CONTROL: // End current segment spdc_endpoint_snap(pc, p, revent.state); spdc_pen_finish_segment(pc, p, revent.state); - pc->state = SPPenContext::POINT; + pc->state = PenTool::POINT; ret = TRUE; break; - case SPPenContext::CLOSE: + case PenTool::CLOSE: // End current segment if (!anchor) { // Snap node only if not hitting anchor spdc_endpoint_snap(pc, p, revent.state); } spdc_pen_finish_segment(pc, p, revent.state); spdc_pen_finish(pc, TRUE); - pc->state = SPPenContext::POINT; + pc->state = PenTool::POINT; ret = TRUE; break; - case SPPenContext::STOP: + case PenTool::STOP: // This is allowed, if we just canceled curve - pc->state = SPPenContext::POINT; + pc->state = PenTool::POINT; ret = TRUE; break; default: break; } break; - case SPPenContext::MODE_DRAG: + case PenTool::MODE_DRAG: switch (pc->state) { - case SPPenContext::POINT: - case SPPenContext::CONTROL: + case PenTool::POINT: + case PenTool::CONTROL: spdc_endpoint_snap(pc, p, revent.state); spdc_pen_finish_segment(pc, p, revent.state); break; - case SPPenContext::CLOSE: + case PenTool::CLOSE: spdc_endpoint_snap(pc, p, revent.state); spdc_pen_finish_segment(pc, p, revent.state); if (pc->green_closed) { @@ -727,13 +729,13 @@ static gint pen_handle_button_release(SPPenContext *const pc, GdkEventButton con spdc_pen_finish(pc, FALSE); } break; - case SPPenContext::STOP: + case PenTool::STOP: // This is allowed, if we just cancelled curve break; default: break; } - pc->state = SPPenContext::POINT; + pc->state = PenTool::POINT; ret = TRUE; break; default: @@ -756,7 +758,7 @@ static gint pen_handle_button_release(SPPenContext *const pc, GdkEventButton con if (pc->expecting_clicks_for_LPE == 0 && sp_pen_context_has_waiting_LPE(pc)) { sp_pen_context_set_polyline_mode(pc); - SPEventContext *ec = SP_EVENT_CONTEXT(pc); + ToolBase *ec = SP_EVENT_CONTEXT(pc); Inkscape::Selection *selection = sp_desktop_selection (ec->desktop); if (pc->waiting_LPE) { @@ -773,7 +775,7 @@ static gint pen_handle_button_release(SPPenContext *const pc, GdkEventButton con return ret; } -static gint pen_handle_2button_press(SPPenContext *const pc, GdkEventButton const &bevent) +static gint pen_handle_2button_press(PenTool *const pc, GdkEventButton const &bevent) { gint ret = FALSE; // only end on LMB double click. Otherwise horizontal scrolling causes ending of the path @@ -784,7 +786,7 @@ static gint pen_handle_2button_press(SPPenContext *const pc, GdkEventButton cons return ret; } -static void pen_redraw_all (SPPenContext *const pc) +static void pen_redraw_all (PenTool *const pc) { // green if (pc->green_bpaths) { @@ -838,7 +840,7 @@ static void pen_redraw_all (SPPenContext *const pc) } } -static void pen_lastpoint_move (SPPenContext *const pc, gdouble x, gdouble y) +static void pen_lastpoint_move (PenTool *const pc, gdouble x, gdouble y) { if (pc->npoints != 5) return; @@ -859,12 +861,12 @@ static void pen_lastpoint_move (SPPenContext *const pc, gdouble x, gdouble y) pen_redraw_all(pc); } -static void pen_lastpoint_move_screen (SPPenContext *const pc, gdouble x, gdouble y) +static void pen_lastpoint_move_screen (PenTool *const pc, gdouble x, gdouble y) { pen_lastpoint_move (pc, x / pc->desktop->current_zoom(), y / pc->desktop->current_zoom()); } -static void pen_lastpoint_tocurve (SPPenContext *const pc) +static void pen_lastpoint_tocurve (PenTool *const pc) { if (pc->npoints != 5) return; @@ -879,7 +881,7 @@ static void pen_lastpoint_tocurve (SPPenContext *const pc) pen_redraw_all(pc); } -static void pen_lastpoint_toline (SPPenContext *const pc) +static void pen_lastpoint_toline (PenTool *const pc) { if (pc->npoints != 5) return; @@ -890,7 +892,7 @@ static void pen_lastpoint_toline (SPPenContext *const pc) } -static gint pen_handle_key_press(SPPenContext *const pc, GdkEvent *event) +static gint pen_handle_key_press(PenTool *const pc, GdkEvent *event) { gint ret = FALSE; @@ -1075,7 +1077,7 @@ static gint pen_handle_key_press(SPPenContext *const pc, GdkEvent *event) sp_canvas_item_hide(pc->c1); sp_canvas_item_hide(pc->cl0); sp_canvas_item_hide(pc->cl1); - pc->state = SPPenContext::POINT; + pc->state = PenTool::POINT; spdc_pen_set_subsequent_point(pc, pt, true); pen_last_paraxial_dir = !pen_last_paraxial_dir; ret = TRUE; @@ -1087,7 +1089,7 @@ static gint pen_handle_key_press(SPPenContext *const pc, GdkEvent *event) return ret; } -static void spdc_reset_colors(SPPenContext *pc) +static void spdc_reset_colors(PenTool *pc) { // Red pc->red_curve->reset(); @@ -1111,7 +1113,7 @@ static void spdc_reset_colors(SPPenContext *pc) } -static void spdc_pen_set_initial_point(SPPenContext *const pc, Geom::Point const p) +static void spdc_pen_set_initial_point(PenTool *const pc, Geom::Point const p) { g_assert( pc->npoints == 0 ); @@ -1128,7 +1130,7 @@ static void spdc_pen_set_initial_point(SPPenContext *const pc, Geom::Point const * This type of message always shows angle/distance as the last * two parameters ("angle %3.2f°, distance %s"). */ -static void spdc_pen_set_angle_distance_status_message(SPPenContext *const pc, Geom::Point const p, int pc_point_to_compare, gchar const *message) +static void spdc_pen_set_angle_distance_status_message(PenTool *const pc, Geom::Point const p, int pc_point_to_compare, gchar const *message) { g_assert(pc != NULL); g_assert((pc_point_to_compare == 0) || (pc_point_to_compare == 3)); // exclude control handles @@ -1151,7 +1153,7 @@ static void spdc_pen_set_angle_distance_status_message(SPPenContext *const pc, G g_string_free(dist, FALSE); } -static void spdc_pen_set_subsequent_point(SPPenContext *const pc, Geom::Point const p, bool statusbar, guint status) +static void spdc_pen_set_subsequent_point(PenTool *const pc, Geom::Point const p, bool statusbar, guint status) { g_assert( pc->npoints != 0 ); // todo: Check callers to see whether 2 <= npoints is guaranteed. @@ -1196,7 +1198,7 @@ static void spdc_pen_set_subsequent_point(SPPenContext *const pc, Geom::Point co } } -static void spdc_pen_set_ctrl(SPPenContext *const pc, Geom::Point const p, guint const state) +static void spdc_pen_set_ctrl(PenTool *const pc, Geom::Point const p, guint const state) { sp_canvas_item_show(pc->c1); sp_canvas_item_show(pc->cl1); @@ -1214,8 +1216,8 @@ static void spdc_pen_set_ctrl(SPPenContext *const pc, Geom::Point const p, guint sp_canvas_item_show(pc->c0); sp_canvas_item_show(pc->cl0); bool is_symm = false; - if ( ( ( pc->mode == SPPenContext::MODE_CLICK ) && ( state & GDK_CONTROL_MASK ) ) || - ( ( pc->mode == SPPenContext::MODE_DRAG ) && !( state & GDK_SHIFT_MASK ) ) ) { + if ( ( ( pc->mode == PenTool::MODE_CLICK ) && ( state & GDK_CONTROL_MASK ) ) || + ( ( pc->mode == PenTool::MODE_DRAG ) && !( state & GDK_SHIFT_MASK ) ) ) { Geom::Point delta = p - pc->p[3]; pc->p[2] = pc->p[3] - delta; is_symm = true; @@ -1238,7 +1240,7 @@ static void spdc_pen_set_ctrl(SPPenContext *const pc, Geom::Point const p, guint } } -static void spdc_pen_finish_segment(SPPenContext *const pc, Geom::Point const p, guint const state) +static void spdc_pen_finish_segment(PenTool *const pc, Geom::Point const p, guint const state) { if (pc->polylines_paraxial) { pen_last_paraxial_dir = pen_next_paraxial_direction(pc, p, pc->p[0], state); @@ -1264,7 +1266,7 @@ static void spdc_pen_finish_segment(SPPenContext *const pc, Geom::Point const p, } } -static void spdc_pen_finish(SPPenContext *const pc, gboolean const closed) +static void spdc_pen_finish(PenTool *const pc, gboolean const closed) { if (pc->expecting_clicks_for_LPE > 1) { // don't let the path be finished before we have collected the required number of mouse clicks @@ -1285,7 +1287,7 @@ static void spdc_pen_finish(SPPenContext *const pc, gboolean const closed) pc->ea = NULL; pc->npoints = 0; - pc->state = SPPenContext::POINT; + pc->state = PenTool::POINT; sp_canvas_item_hide(pc->c0); sp_canvas_item_hide(pc->c1); @@ -1302,17 +1304,17 @@ static void spdc_pen_finish(SPPenContext *const pc, gboolean const closed) pen_enable_events(pc); } -static void pen_disable_events(SPPenContext *const pc) { +static void pen_disable_events(PenTool *const pc) { pc->events_disabled++; } -static void pen_enable_events(SPPenContext *const pc) { +static void pen_enable_events(PenTool *const pc) { g_return_if_fail(pc->events_disabled != 0); pc->events_disabled--; } -void sp_pen_context_wait_for_LPE_mouse_clicks(SPPenContext *pc, Inkscape::LivePathEffect::EffectType effect_type, +void sp_pen_context_wait_for_LPE_mouse_clicks(PenTool *pc, Inkscape::LivePathEffect::EffectType effect_type, unsigned int num_clicks, bool use_polylines) { if (effect_type == Inkscape::LivePathEffect::INVALID_LPE) @@ -1324,14 +1326,14 @@ void sp_pen_context_wait_for_LPE_mouse_clicks(SPPenContext *pc, Inkscape::LivePa pc->polylines_paraxial = false; // TODO: think if this is correct for all cases } -void sp_pen_context_cancel_waiting_for_LPE(SPPenContext *pc) +void sp_pen_context_cancel_waiting_for_LPE(PenTool *pc) { pc->waiting_LPE_type = Inkscape::LivePathEffect::INVALID_LPE; pc->expecting_clicks_for_LPE = 0; sp_pen_context_set_polyline_mode(pc); } -static int pen_next_paraxial_direction(const SPPenContext *const pc, +static int pen_next_paraxial_direction(const PenTool *const pc, Geom::Point const &pt, Geom::Point const &origin, guint state) { // // after the first mouse click we determine whether the mouse pointer is closest to a @@ -1355,7 +1357,7 @@ static int pen_next_paraxial_direction(const SPPenContext *const pc, } } -void pen_set_to_nearest_horiz_vert(const SPPenContext *const pc, Geom::Point &pt, guint const state, bool snap) +void pen_set_to_nearest_horiz_vert(const PenTool *const pc, Geom::Point &pt, guint const state, bool snap) { Geom::Point const origin = pc->p[0]; @@ -1386,6 +1388,10 @@ void pen_set_to_nearest_horiz_vert(const SPPenContext *const pc, Geom::Point &pt } } +} +} +} + /* Local Variables: mode:c++ diff --git a/src/pen-context.h b/src/ui/tools/pen-tool.h index c096865f1..4452dbd68 100644 --- a/src/pen-context.h +++ b/src/ui/tools/pen-tool.h @@ -2,24 +2,28 @@ #define SEEN_PEN_CONTEXT_H /** \file - * SPPenContext: a context for pen tool events. + * PenTool: a context for pen tool events. */ -#include "draw-context.h" +#include "ui/tools/freehand-base.h" #include "live_effects/effect.h" -#define SP_PEN_CONTEXT(obj) (dynamic_cast<SPPenContext*>((SPEventContext*)obj)) -#define SP_IS_PEN_CONTEXT(obj) (dynamic_cast<const SPPenContext*>((const SPEventContext*)obj) != NULL) +#define SP_PEN_CONTEXT(obj) (dynamic_cast<Inkscape::UI::Tools::PenTool*>((Inkscape::UI::Tools::ToolBase*)obj)) +#define SP_IS_PEN_CONTEXT(obj) (dynamic_cast<const Inkscape::UI::Tools::PenTool*>((const Inkscape::UI::Tools::ToolBase*)obj) != NULL) struct SPCtrlLine; +namespace Inkscape { +namespace UI { +namespace Tools { + /** - * SPPenContext: a context for pen tool events. + * PenTool: a context for pen tool events. */ -class SPPenContext : public SPDrawContext { +class PenTool : public FreehandBase { public: - SPPenContext(); - virtual ~SPPenContext(); + PenTool(); + virtual ~PenTool(); enum Mode { MODE_CLICK, @@ -70,19 +74,23 @@ protected: virtual bool item_handler(SPItem* item, GdkEvent* event); }; -inline bool sp_pen_context_has_waiting_LPE(SPPenContext *pc) { +inline bool sp_pen_context_has_waiting_LPE(PenTool *pc) { // note: waiting_LPE_type is defined in SPDrawContext return (pc->waiting_LPE != NULL || pc->waiting_LPE_type != Inkscape::LivePathEffect::INVALID_LPE); } -void sp_pen_context_set_polyline_mode(SPPenContext *const pc); -void sp_pen_context_wait_for_LPE_mouse_clicks(SPPenContext *pc, Inkscape::LivePathEffect::EffectType effect_type, +void sp_pen_context_set_polyline_mode(PenTool *const pc); +void sp_pen_context_wait_for_LPE_mouse_clicks(PenTool *pc, Inkscape::LivePathEffect::EffectType effect_type, unsigned int num_clicks, bool use_polylines = true); -void sp_pen_context_cancel_waiting_for_LPE(SPPenContext *pc); +void sp_pen_context_cancel_waiting_for_LPE(PenTool *pc); void sp_pen_context_put_into_waiting_mode(SPDesktop *desktop, Inkscape::LivePathEffect::EffectType effect_type, unsigned int num_clicks, bool use_polylines = true); +} +} +} + #endif /* !SEEN_PEN_CONTEXT_H */ /* diff --git a/src/pencil-context.cpp b/src/ui/tools/pencil-tool.cpp index abd9af1d3..52779d551 100644 --- a/src/pencil-context.cpp +++ b/src/ui/tools/pencil-tool.cpp @@ -18,7 +18,7 @@ #include <gdk/gdkkeysyms.h> -#include "pencil-context.h" +#include "ui/tools/pencil-tool.h" #include "desktop.h" #include "desktop-handles.h" #include "selection.h" @@ -44,51 +44,54 @@ #include "display/sp-canvas.h" #include "display/curve.h" #include "livarot/Path.h" +#include "tool-factory.h" + +namespace Inkscape { +namespace UI { +namespace Tools { -static gint pencil_handle_button_press(SPPencilContext *const pc, GdkEventButton const &bevent); -static gint pencil_handle_motion_notify(SPPencilContext *const pc, GdkEventMotion const &mevent); -static gint pencil_handle_button_release(SPPencilContext *const pc, GdkEventButton const &revent); -static gint pencil_handle_key_press(SPPencilContext *const pc, guint const keyval, guint const state); -static gint pencil_handle_key_release(SPPencilContext *const pc, guint const keyval, guint const state); +static gint pencil_handle_button_press(PencilTool *const pc, GdkEventButton const &bevent); +static gint pencil_handle_motion_notify(PencilTool *const pc, GdkEventMotion const &mevent); +static gint pencil_handle_button_release(PencilTool *const pc, GdkEventButton const &revent); +static gint pencil_handle_key_press(PencilTool *const pc, guint const keyval, guint const state); +static gint pencil_handle_key_release(PencilTool *const pc, guint const keyval, guint const state); -static void spdc_set_startpoint(SPPencilContext *pc, Geom::Point const &p); -static void spdc_set_endpoint(SPPencilContext *pc, Geom::Point const &p); -static void spdc_finish_endpoint(SPPencilContext *pc); -static void spdc_add_freehand_point(SPPencilContext *pc, Geom::Point const &p, guint state); -static void fit_and_split(SPPencilContext *pc); -static void interpolate(SPPencilContext *pc); -static void sketch_interpolate(SPPencilContext *pc); +static void spdc_set_startpoint(PencilTool *pc, Geom::Point const &p); +static void spdc_set_endpoint(PencilTool *pc, Geom::Point const &p); +static void spdc_finish_endpoint(PencilTool *pc); +static void spdc_add_freehand_point(PencilTool *pc, Geom::Point const &p, guint state); +static void fit_and_split(PencilTool *pc); +static void interpolate(PencilTool *pc); +static void sketch_interpolate(PencilTool *pc); static Geom::Point pencil_drag_origin_w(0, 0); static bool pencil_within_tolerance = false; static bool in_svg_plane(Geom::Point const &p) { return Geom::LInfty(p) < 1e18; } -#include "tool-factory.h" - namespace { - SPEventContext* createPencilContext() { - return new SPPencilContext(); + ToolBase* createPencilContext() { + return new PencilTool(); } bool pencilContextRegistered = ToolFactory::instance().registerObject("/tools/freehand/pencil", createPencilContext); } -const std::string& SPPencilContext::getPrefsPath() { - return SPPencilContext::prefsPath; +const std::string& PencilTool::getPrefsPath() { + return PencilTool::prefsPath; } -const std::string SPPencilContext::prefsPath = "/tools/freehand/pencil"; +const std::string PencilTool::prefsPath = "/tools/freehand/pencil"; -SPPencilContext::SPPencilContext() : - SPDrawContext(), +PencilTool::PencilTool() : + FreehandBase(), p(), npoints(0), state(SP_PENCIL_CONTEXT_IDLE), req_tangent(0,0), is_drawing(false), ps(), - sketch_interpolation(Geom::Piecewise<Geom::D2<Geom::SBasis> >())// since SPPencilContext is not properly constructed... + sketch_interpolation(Geom::Piecewise<Geom::D2<Geom::SBasis> >())// since PencilTool is not properly constructed... { this->cursor_shape = cursor_pencil_xpm; this->hot_x = 4; @@ -96,24 +99,24 @@ SPPencilContext::SPPencilContext() : this->sketch_n = 0; } -void SPPencilContext::setup() { +void PencilTool::setup() { Inkscape::Preferences *prefs = Inkscape::Preferences::get(); if (prefs->getBool("/tools/freehand/pencil/selcue")) { this->enableSelectionCue(); } - SPDrawContext::setup(); + FreehandBase::setup(); this->is_drawing = false; this->anchor_statusbar = false; } -SPPencilContext::~SPPencilContext() { +PencilTool::~PencilTool() { } /** Snaps new node relative to the previous node. */ static void -spdc_endpoint_snap(SPPencilContext const *pc, Geom::Point &p, guint const state) +spdc_endpoint_snap(PencilTool const *pc, Geom::Point &p, guint const state) { if ((state & GDK_CONTROL_MASK)) { //CTRL enables constrained snapping if (pc->npoints > 0) { @@ -132,7 +135,7 @@ spdc_endpoint_snap(SPPencilContext const *pc, Geom::Point &p, guint const state) /** * Callback for handling all pencil context events. */ -bool SPPencilContext::root_handler(GdkEvent* event) { +bool PencilTool::root_handler(GdkEvent* event) { gint ret = FALSE; switch (event->type) { @@ -161,21 +164,21 @@ bool SPPencilContext::root_handler(GdkEvent* event) { } if (!ret) { - ret = SPDrawContext::root_handler(event); + ret = FreehandBase::root_handler(event); } return ret; } static gint -pencil_handle_button_press(SPPencilContext *const pc, GdkEventButton const &bevent) +pencil_handle_button_press(PencilTool *const pc, GdkEventButton const &bevent) { gint ret = FALSE; - SPEventContext *event_context = SP_EVENT_CONTEXT(pc); + ToolBase *event_context = SP_EVENT_CONTEXT(pc); if ( bevent.button == 1 && !event_context->space_panning) { - SPDrawContext *dc = SP_DRAW_CONTEXT (pc); - SPDesktop *desktop = SP_EVENT_CONTEXT_DESKTOP(dc); + FreehandBase *dc = SP_DRAW_CONTEXT (pc); + SPDesktop *desktop = dc->desktop; Inkscape::Selection *selection = sp_desktop_selection(desktop); if (Inkscape::have_viable_layer(desktop, dc->message_context) == false) { @@ -251,7 +254,7 @@ pencil_handle_button_press(SPPencilContext *const pc, GdkEventButton const &beve } static gint -pencil_handle_motion_notify(SPPencilContext *const pc, GdkEventMotion const &mevent) +pencil_handle_motion_notify(PencilTool *const pc, GdkEventMotion const &mevent) { SPDesktop *const dt = pc->desktop; @@ -263,7 +266,7 @@ pencil_handle_motion_notify(SPPencilContext *const pc, GdkEventMotion const &mev } gint ret = FALSE; - SPEventContext *event_context = SP_EVENT_CONTEXT(pc); + ToolBase *event_context = SP_EVENT_CONTEXT(pc); if (event_context->space_panning || mevent.state & GDK_BUTTON2_MASK || mevent.state & GDK_BUTTON3_MASK) { // allow scrolling return FALSE; @@ -373,11 +376,11 @@ pencil_handle_motion_notify(SPPencilContext *const pc, GdkEventMotion const &mev } static gint -pencil_handle_button_release(SPPencilContext *const pc, GdkEventButton const &revent) +pencil_handle_button_release(PencilTool *const pc, GdkEventButton const &revent) { gint ret = FALSE; - SPEventContext *event_context = SP_EVENT_CONTEXT(pc); + ToolBase *event_context = SP_EVENT_CONTEXT(pc); if ( revent.button == 1 && pc->is_drawing && !event_context->space_panning) { SPDesktop *const dt = pc->desktop; @@ -474,7 +477,7 @@ pencil_handle_button_release(SPPencilContext *const pc, GdkEventButton const &re } static void -pencil_cancel (SPPencilContext *const pc) +pencil_cancel (PencilTool *const pc) { if (pc->grab) { /* Release grab now */ @@ -504,7 +507,7 @@ pencil_cancel (SPPencilContext *const pc) } static gint -pencil_handle_key_press(SPPencilContext *const pc, guint const keyval, guint const state) +pencil_handle_key_press(PencilTool *const pc, guint const keyval, guint const state) { gint ret = FALSE; switch (keyval) { @@ -558,7 +561,7 @@ pencil_handle_key_press(SPPencilContext *const pc, guint const keyval, guint con } static gint -pencil_handle_key_release(SPPencilContext *const pc, guint const keyval, guint const /*state*/) +pencil_handle_key_release(PencilTool *const pc, guint const keyval, guint const /*state*/) { gint ret = FALSE; switch (keyval) { @@ -590,7 +593,7 @@ pencil_handle_key_release(SPPencilContext *const pc, guint const keyval, guint c * Reset points and set new starting point. */ static void -spdc_set_startpoint(SPPencilContext *const pc, Geom::Point const &p) +spdc_set_startpoint(PencilTool *const pc, Geom::Point const &p) { pc->npoints = 0; pc->red_curve_is_valid = false; @@ -610,7 +613,7 @@ spdc_set_startpoint(SPPencilContext *const pc, Geom::Point const &p) * We change RED curve. */ static void -spdc_set_endpoint(SPPencilContext *const pc, Geom::Point const &p) +spdc_set_endpoint(PencilTool *const pc, Geom::Point const &p) { if (pc->npoints == 0) { return; @@ -645,7 +648,7 @@ spdc_set_endpoint(SPPencilContext *const pc, Geom::Point const &p) * Still not sure, how it will make most sense. */ static void -spdc_finish_endpoint(SPPencilContext *const pc) +spdc_finish_endpoint(PencilTool *const pc) { if ( ( pc->red_curve->is_empty() ) || ( *(pc->red_curve->first_point()) == *(pc->red_curve->second_point()) ) ) @@ -662,7 +665,7 @@ spdc_finish_endpoint(SPPencilContext *const pc) static void -spdc_add_freehand_point(SPPencilContext *pc, Geom::Point const &p, guint /*state*/) +spdc_add_freehand_point(PencilTool *pc, Geom::Point const &p, guint /*state*/) { g_assert( pc->npoints > 0 ); g_return_if_fail(unsigned(pc->npoints) < G_N_ELEMENTS(pc->p)); @@ -683,7 +686,7 @@ square(double const x) } static void -interpolate(SPPencilContext *pc) +interpolate(PencilTool *pc) { if ( pc->ps.size() <= 1 ) { return; @@ -749,7 +752,7 @@ interpolate(SPPencilContext *pc) /* interpolates the sketched curve and tweaks the current sketch interpolation*/ static void -sketch_interpolate(SPPencilContext *pc) +sketch_interpolate(PencilTool *pc) { if ( pc->ps.size() <= 1 ) { return; @@ -841,7 +844,7 @@ sketch_interpolate(SPPencilContext *pc) } static void -fit_and_split(SPPencilContext *pc) +fit_and_split(PencilTool *pc) { g_assert( pc->npoints > 1 ); @@ -897,6 +900,9 @@ fit_and_split(SPPencilContext *pc) } } +} +} +} /* Local Variables: diff --git a/src/pencil-context.h b/src/ui/tools/pencil-tool.h index b3ded0242..6ced9eb56 100644 --- a/src/pencil-context.h +++ b/src/ui/tools/pencil-tool.h @@ -2,13 +2,17 @@ #define SEEN_PENCIL_CONTEXT_H /** \file - * SPPencilContext: a context for pencil tool events + * PencilTool: a context for pencil tool events */ -#include "draw-context.h" +#include "ui/tools/freehand-base.h" -#define SP_PENCIL_CONTEXT(obj) (dynamic_cast<SPPencilContext*>((SPEventContext*)obj)) -#define SP_IS_PENCIL_CONTEXT(obj) (dynamic_cast<const SPPencilContext*>((const SPEventContext*)obj) != NULL) +#define SP_PENCIL_CONTEXT(obj) (dynamic_cast<Inkscape::UI::Tools::PencilTool*>((ToolBase*)obj)) +#define SP_IS_PENCIL_CONTEXT(obj) (dynamic_cast<const Inkscape::UI::Tools::PencilTool*>((const ToolBase*)obj) != NULL) + +namespace Inkscape { +namespace UI { +namespace Tools { enum PencilState { SP_PENCIL_CONTEXT_IDLE, @@ -18,12 +22,12 @@ enum PencilState { }; /** - * SPPencilContext: a context for pencil tool events + * PencilTool: a context for pencil tool events */ -class SPPencilContext : public SPDrawContext { +class PencilTool : public FreehandBase { public: - SPPencilContext(); - virtual ~SPPencilContext(); + PencilTool(); + virtual ~PencilTool(); Geom::Point p[16]; gint npoints; @@ -46,6 +50,10 @@ protected: virtual bool root_handler(GdkEvent* event); }; +} +} +} + #endif /* !SEEN_PENCIL_CONTEXT_H */ /* diff --git a/src/rect-context.cpp b/src/ui/tools/rect-tool.cpp index a0e751359..263fdea84 100644 --- a/src/rect-context.cpp +++ b/src/ui/tools/rect-tool.cpp @@ -34,7 +34,7 @@ #include "desktop-style.h" #include "message-context.h" #include "pixmaps/cursor-rect.xpm" -#include "rect-context.h" +#include "ui/tools/rect-tool.h" #include <glibmm/i18n.h> #include "xml/repr.h" #include "xml/node-event-vector.h" @@ -48,21 +48,25 @@ using Inkscape::DocumentUndo; #include "tool-factory.h" +namespace Inkscape { +namespace UI { +namespace Tools { + namespace { - SPEventContext* createRectContext() { - return new SPRectContext(); + ToolBase* createRectContext() { + return new RectTool(); } bool rectContextRegistered = ToolFactory::instance().registerObject("/tools/shapes/rect", createRectContext); } -const std::string& SPRectContext::getPrefsPath() { - return SPRectContext::prefsPath; +const std::string& RectTool::getPrefsPath() { + return RectTool::prefsPath; } -const std::string SPRectContext::prefsPath = "/tools/shapes/rect"; +const std::string RectTool::prefsPath = "/tools/shapes/rect"; -SPRectContext::SPRectContext() : SPEventContext() { +RectTool::RectTool() : ToolBase() { this->cursor_shape = cursor_rect_xpm; this->hot_x = 4; this->hot_y = 4; @@ -78,16 +82,16 @@ SPRectContext::SPRectContext() : SPEventContext() { this->ry = 0.0; } -void SPRectContext::finish() { +void RectTool::finish() { sp_canvas_item_ungrab(SP_CANVAS_ITEM(this->desktop->acetate), GDK_CURRENT_TIME); this->finishItem(); this->sel_changed_connection.disconnect(); - SPEventContext::finish(); + ToolBase::finish(); } -SPRectContext::~SPRectContext() { +RectTool::~RectTool() { this->enableGrDrag(false); this->sel_changed_connection.disconnect(); @@ -105,13 +109,13 @@ SPRectContext::~SPRectContext() { * Callback that processes the "changed" signal on the selection; * destroys old and creates new knotholder. */ -void SPRectContext::selection_changed(Inkscape::Selection* selection) { +void RectTool::selection_changed(Inkscape::Selection* selection) { this->shape_editor->unset_item(SH_KNOTHOLDER); this->shape_editor->set_item(selection->singleItem(), SH_KNOTHOLDER); } -void SPRectContext::setup() { - SPEventContext::setup(); +void RectTool::setup() { + ToolBase::setup(); this->shape_editor = new ShapeEditor(this->desktop); @@ -122,7 +126,7 @@ void SPRectContext::setup() { this->sel_changed_connection.disconnect(); this->sel_changed_connection = sp_desktop_selection(this->desktop)->connectChanged( - sigc::mem_fun(this, &SPRectContext::selection_changed) + sigc::mem_fun(this, &RectTool::selection_changed) ); sp_event_context_read(this, "rx"); @@ -138,7 +142,7 @@ void SPRectContext::setup() { } } -void SPRectContext::set(const Inkscape::Preferences::Entry& val) { +void RectTool::set(const Inkscape::Preferences::Entry& val) { /* fixme: Proper error handling for non-numeric data. Use a locale-independent function like * g_ascii_strtod (or a thin wrapper that does the right thing for invalid values inf/nan). */ Glib::ustring name = val.getEntryName(); @@ -150,7 +154,7 @@ void SPRectContext::set(const Inkscape::Preferences::Entry& val) { } } -bool SPRectContext::item_handler(SPItem* item, GdkEvent* event) { +bool RectTool::item_handler(SPItem* item, GdkEvent* event) { gint ret = FALSE; switch (event->type) { @@ -165,12 +169,12 @@ bool SPRectContext::item_handler(SPItem* item, GdkEvent* event) { break; } - ret = SPEventContext::item_handler(item, event); + ret = ToolBase::item_handler(item, event); return ret; } -bool SPRectContext::root_handler(GdkEvent* event) { +bool RectTool::root_handler(GdkEvent* event) { static bool dragging; SPDesktop *desktop = this->desktop; @@ -375,13 +379,13 @@ bool SPRectContext::root_handler(GdkEvent* event) { } if (!ret) { - ret = SPEventContext::root_handler(event); + ret = ToolBase::root_handler(event); } return ret; } -void SPRectContext::drag(Geom::Point const pt, guint state) { +void RectTool::drag(Geom::Point const pt, guint state) { SPDesktop *desktop = this->desktop; if (!this->rect) { @@ -466,7 +470,7 @@ void SPRectContext::drag(Geom::Point const pt, guint state) { g_string_free(ys, FALSE); } -void SPRectContext::finishItem() { +void RectTool::finishItem() { this->message_context->clear(); if (this->rect != NULL) { @@ -488,7 +492,7 @@ void SPRectContext::finishItem() { } } -void SPRectContext::cancel(){ +void RectTool::cancel(){ sp_desktop_selection(this->desktop)->clear(); sp_canvas_item_ungrab(SP_CANVAS_ITEM(this->desktop->acetate), 0); @@ -507,6 +511,9 @@ void SPRectContext::cancel(){ DocumentUndo::cancel(sp_desktop_document(this->desktop)); } +} +} +} /* Local Variables: diff --git a/src/rect-context.h b/src/ui/tools/rect-tool.h index a85968b1c..a50fd7b24 100644 --- a/src/rect-context.h +++ b/src/ui/tools/rect-tool.h @@ -17,17 +17,21 @@ #include <stddef.h> #include <sigc++/sigc++.h> #include <2geom/point.h> -#include "event-context.h" +#include "ui/tools/tool-base.h" #include "sp-rect.h" -#define SP_RECT_CONTEXT(obj) (dynamic_cast<SPRectContext*>((SPEventContext*)obj)) -#define SP_IS_RECT_CONTEXT(obj) (dynamic_cast<const SPRectContext*>((const SPEventContext*)obj) != NULL) +#define SP_RECT_CONTEXT(obj) (dynamic_cast<Inkscape::UI::Tools::RectTool*>((Inkscape::UI::Tools::ToolBase*)obj)) +#define SP_IS_RECT_CONTEXT(obj) (dynamic_cast<const Inkscape::UI::Tools::RectTool*>((const Inkscape::UI::Tools::ToolBase*)obj) != NULL) -class SPRectContext : public SPEventContext { +namespace Inkscape { +namespace UI { +namespace Tools { + +class RectTool : public ToolBase { public: - SPRectContext(); - virtual ~SPRectContext(); + RectTool(); + virtual ~RectTool(); static const std::string prefsPath; @@ -54,4 +58,8 @@ private: void selection_changed(Inkscape::Selection* selection); }; +} +} +} + #endif diff --git a/src/select-context.cpp b/src/ui/tools/select-tool.cpp index 99eb01fea..498882417 100644 --- a/src/select-context.cpp +++ b/src/ui/tools/select-tool.cpp @@ -32,7 +32,7 @@ #include "pixmaps/handles.xpm" #include <glibmm/i18n.h> -#include "select-context.h" +#include "ui/tools/select-tool.h" #include "selection-chemistry.h" #ifdef WITH_DBUS #include "extension/dbus/document-interface.h" @@ -49,30 +49,35 @@ #include "display/sp-canvas.h" #include "display/sp-canvas-item.h" #include "display/drawing-item.h" +#include "tool-factory.h" using Inkscape::DocumentUndo; +GdkPixbuf *handles[13]; + +namespace Inkscape { +namespace UI { +namespace Tools { + static GdkCursor *CursorSelectMouseover = NULL; static GdkCursor *CursorSelectDragging = NULL; -GdkPixbuf *handles[13]; static gint rb_escaped = 0; // if non-zero, rubberband was canceled by esc, so the next button release should not deselect static gint drag_escaped = 0; // if non-zero, drag was canceled by esc -#include "tool-factory.h" namespace { - SPEventContext* createSelectContext() { - return new SPSelectContext(); + ToolBase* createSelectContext() { + return new SelectTool(); } bool selectContextRegistered = ToolFactory::instance().registerObject("/tools/select", createSelectContext); } -const std::string& SPSelectContext::getPrefsPath() { - return SPSelectContext::prefsPath; +const std::string& SelectTool::getPrefsPath() { + return SelectTool::prefsPath; } -const std::string SPSelectContext::prefsPath = "/tools/select"; +const std::string SelectTool::prefsPath = "/tools/select"; //Creates rotated variations for handles @@ -85,7 +90,7 @@ sp_load_handles(int start, int count, char const **xpm) { } } -SPSelectContext::SPSelectContext() : SPEventContext() { +SelectTool::SelectTool() : ToolBase() { this->grabbed = 0; this->item = 0; @@ -120,10 +125,10 @@ SPSelectContext::SPSelectContext() : SPEventContext() { //static bool within_tolerance = false; static bool is_cycling = false; static bool moved_while_cycling = false; -SPEventContext *prev_event_context = NULL; +ToolBase *prev_event_context = NULL; -SPSelectContext::~SPSelectContext() { +SelectTool::~SelectTool() { this->enableGrDrag(false); if (this->grabbed) { @@ -156,8 +161,8 @@ SPSelectContext::~SPSelectContext() { } } -void SPSelectContext::setup() { - SPEventContext::setup(); +void SelectTool::setup() { + ToolBase::setup(); this->_describer = new Inkscape::SelectionDescriber( desktop->selection, @@ -178,7 +183,7 @@ void SPSelectContext::setup() { } } -void SPSelectContext::set(const Inkscape::Preferences::Entry& val) { +void SelectTool::set(const Inkscape::Preferences::Entry& val) { Glib::ustring path = val.getEntryName(); if (path == "show") { @@ -190,7 +195,7 @@ void SPSelectContext::set(const Inkscape::Preferences::Entry& val) { } } -bool SPSelectContext::sp_select_context_abort() { +bool SelectTool::sp_select_context_abort() { Inkscape::SelTrans *seltrans = this->_seltrans; if (this->dragging) { @@ -273,7 +278,7 @@ sp_select_context_up_one_layer(SPDesktop *desktop) } } -bool SPSelectContext::item_handler(SPItem* item, GdkEvent* event) { +bool SelectTool::item_handler(SPItem* item, GdkEvent* event) { gint ret = FALSE; Inkscape::Preferences *prefs = Inkscape::Preferences::get(); @@ -387,13 +392,13 @@ bool SPSelectContext::item_handler(SPItem* item, GdkEvent* event) { } if (!ret) { - ret = SPEventContext::item_handler(item, event); + ret = ToolBase::item_handler(item, event); } return ret; } -void SPSelectContext::sp_select_context_cycle_through_items(Inkscape::Selection *selection, GdkEventScroll *scroll_event, bool shift_pressed) { +void SelectTool::sp_select_context_cycle_through_items(Inkscape::Selection *selection, GdkEventScroll *scroll_event, bool shift_pressed) { if (!this->cycling_cur_item) { return; } @@ -438,10 +443,10 @@ void SPSelectContext::sp_select_context_cycle_through_items(Inkscape::Selection static void -sp_select_context_reset_opacities(SPEventContext *event_context) +sp_select_context_reset_opacities(ToolBase *event_context) { // SPDesktop *desktop = event_context->desktop; - SPSelectContext *sc = SP_SELECT_CONTEXT(event_context); + SelectTool *sc = SP_SELECT_CONTEXT(event_context); Inkscape::DrawingItem *arenaitem; for (GList *l = sc->cycling_items; l != NULL; l = g_list_next(l)) { arenaitem = SP_ITEM(l->data)->get_arenaitem(event_context->desktop->dkey); @@ -456,7 +461,7 @@ sp_select_context_reset_opacities(SPEventContext *event_context) sc->cycling_items_cmp = NULL; } -bool SPSelectContext::root_handler(GdkEvent* event) { +bool SelectTool::root_handler(GdkEvent* event) { SPItem *item = NULL; SPItem *item_at_point = NULL, *group_at_point = NULL, *item_in_group = NULL; gint ret = FALSE; @@ -1225,12 +1230,16 @@ bool SPSelectContext::root_handler(GdkEvent* event) { } if (!ret) { - ret = SPEventContext::root_handler(event); + ret = ToolBase::root_handler(event); } return ret; } +} +} +} + /* Local Variables: mode:c++ diff --git a/src/select-context.h b/src/ui/tools/select-tool.h index bcea8537a..b26fc03bc 100644 --- a/src/select-context.h +++ b/src/ui/tools/select-tool.h @@ -12,11 +12,11 @@ * Released under GNU GPL, read the file 'COPYING' for more information */ -#include "event-context.h" +#include "ui/tools/tool-base.h" #include <gtk/gtk.h> -#define SP_SELECT_CONTEXT(obj) (dynamic_cast<SPSelectContext*>((SPEventContext*)obj)) -#define SP_IS_SELECT_CONTEXT(obj) (dynamic_cast<const SPSelectContext*>((const SPEventContext*)obj) != NULL) +#define SP_SELECT_CONTEXT(obj) (dynamic_cast<Inkscape::UI::Tools::SelectTool*>((Inkscape::UI::Tools::ToolBase*)obj)) +#define SP_IS_SELECT_CONTEXT(obj) (dynamic_cast<const Inkscape::UI::Tools::SelectTool*>((const Inkscape::UI::Tools::ToolBase*)obj) != NULL) struct SPCanvasItem; @@ -26,10 +26,14 @@ namespace Inkscape { class SelectionDescriber; } -class SPSelectContext : public SPEventContext { +namespace Inkscape { +namespace UI { +namespace Tools { + +class SelectTool : public ToolBase { public: - SPSelectContext(); - virtual ~SPSelectContext(); + SelectTool(); + virtual ~SelectTool(); guint dragging : 1; guint moved : 1; @@ -62,4 +66,8 @@ private: void sp_select_context_cycle_through_items(Inkscape::Selection *selection, GdkEventScroll *scroll_event, bool shift_pressed); }; +} +} +} + #endif diff --git a/src/spiral-context.cpp b/src/ui/tools/spiral-tool.cpp index 9d44b5adb..005b2d239 100644 --- a/src/spiral-context.cpp +++ b/src/ui/tools/spiral-tool.cpp @@ -33,7 +33,7 @@ #include "desktop-style.h" #include "message-context.h" #include "pixmaps/cursor-spiral.xpm" -#include "spiral-context.h" +#include "ui/tools/spiral-tool.h" #include <glibmm/i18n.h> #include "xml/repr.h" #include "xml/node-event-vector.h" @@ -47,21 +47,25 @@ using Inkscape::DocumentUndo; #include "tool-factory.h" +namespace Inkscape { +namespace UI { +namespace Tools { + namespace { - SPEventContext* createSpiralContext() { - return new SPSpiralContext(); + ToolBase* createSpiralContext() { + return new SpiralTool(); } bool spiralContextRegistered = ToolFactory::instance().registerObject("/tools/shapes/spiral", createSpiralContext); } -const std::string& SPSpiralContext::getPrefsPath() { - return SPSpiralContext::prefsPath; +const std::string& SpiralTool::getPrefsPath() { + return SpiralTool::prefsPath; } -const std::string SPSpiralContext::prefsPath = "/tools/shapes/spiral"; +const std::string SpiralTool::prefsPath = "/tools/shapes/spiral"; -SPSpiralContext::SPSpiralContext() : SPEventContext() { +SpiralTool::SpiralTool() : ToolBase() { this->cursor_shape = cursor_spiral_xpm; this->hot_x = 4; this->hot_y = 4; @@ -78,7 +82,7 @@ SPSpiralContext::SPSpiralContext() : SPEventContext() { this->t0 = 0.0; } -void SPSpiralContext::finish() { +void SpiralTool::finish() { SPDesktop *desktop = this->desktop; sp_canvas_item_ungrab(SP_CANVAS_ITEM(desktop->acetate), GDK_CURRENT_TIME); @@ -86,10 +90,10 @@ void SPSpiralContext::finish() { this->finishItem(); this->sel_changed_connection.disconnect(); - SPEventContext::finish(); + ToolBase::finish(); } -SPSpiralContext::~SPSpiralContext() { +SpiralTool::~SpiralTool() { this->enableGrDrag(false); this->sel_changed_connection.disconnect(); @@ -107,13 +111,13 @@ SPSpiralContext::~SPSpiralContext() { * Callback that processes the "changed" signal on the selection; * destroys old and creates new knotholder. */ -void SPSpiralContext::selection_changed(Inkscape::Selection *selection) { +void SpiralTool::selection_changed(Inkscape::Selection *selection) { this->shape_editor->unset_item(SH_KNOTHOLDER); this->shape_editor->set_item(selection->singleItem(), SH_KNOTHOLDER); } -void SPSpiralContext::setup() { - SPEventContext::setup(); +void SpiralTool::setup() { + ToolBase::setup(); sp_event_context_read(this, "expansion"); sp_event_context_read(this, "revolution"); @@ -129,7 +133,7 @@ void SPSpiralContext::setup() { Inkscape::Selection *selection = sp_desktop_selection(this->desktop); this->sel_changed_connection.disconnect(); - this->sel_changed_connection = selection->connectChanged(sigc::mem_fun(this, &SPSpiralContext::selection_changed)); + this->sel_changed_connection = selection->connectChanged(sigc::mem_fun(this, &SpiralTool::selection_changed)); Inkscape::Preferences *prefs = Inkscape::Preferences::get(); @@ -142,7 +146,7 @@ void SPSpiralContext::setup() { } } -void SPSpiralContext::set(const Inkscape::Preferences::Entry& val) { +void SpiralTool::set(const Inkscape::Preferences::Entry& val) { Glib::ustring name = val.getEntryName(); if (name == "expansion") { @@ -154,7 +158,7 @@ void SPSpiralContext::set(const Inkscape::Preferences::Entry& val) { } } -bool SPSpiralContext::root_handler(GdkEvent* event) { +bool SpiralTool::root_handler(GdkEvent* event) { static gboolean dragging; SPDesktop *desktop = this->desktop; @@ -340,13 +344,13 @@ bool SPSpiralContext::root_handler(GdkEvent* event) { } if (!ret) { - ret = SPEventContext::root_handler(event); + ret = ToolBase::root_handler(event); } return ret; } -void SPSpiralContext::drag(Geom::Point const &p, guint state) { +void SpiralTool::drag(Geom::Point const &p, guint state) { SPDesktop *desktop = SP_EVENT_CONTEXT(this)->desktop; Inkscape::Preferences *prefs = Inkscape::Preferences::get(); @@ -358,7 +362,7 @@ void SPSpiralContext::drag(Geom::Point const &p, guint state) { } // Create object - Inkscape::XML::Document *xml_doc = SP_EVENT_CONTEXT_DOCUMENT(this)->getReprDoc(); + Inkscape::XML::Document *xml_doc = this->desktop->doc()->getReprDoc(); Inkscape::XML::Node *repr = xml_doc->createElement("svg:path"); repr->setAttribute("sodipodi:type", "spiral"); @@ -406,7 +410,7 @@ void SPSpiralContext::drag(Geom::Point const &p, guint state) { g_string_free(rads, FALSE); } -void SPSpiralContext::finishItem() { +void SpiralTool::finishItem() { this->message_context->clear(); if (this->spiral != NULL) { @@ -428,7 +432,7 @@ void SPSpiralContext::finishItem() { } } -void SPSpiralContext::cancel() { +void SpiralTool::cancel() { sp_desktop_selection(this->desktop)->clear(); sp_canvas_item_ungrab(SP_CANVAS_ITEM(this->desktop->acetate), 0); @@ -447,6 +451,10 @@ void SPSpiralContext::cancel() { DocumentUndo::cancel(sp_desktop_document(this->desktop)); } +} +} +} + /* Local Variables: mode:c++ diff --git a/src/spiral-context.h b/src/ui/tools/spiral-tool.h index d5bd15941..416aeb7e4 100644 --- a/src/spiral-context.h +++ b/src/ui/tools/spiral-tool.h @@ -19,17 +19,21 @@ #include <stddef.h> #include <sigc++/sigc++.h> #include <2geom/point.h> -#include "event-context.h" +#include "ui/tools/tool-base.h" #include "sp-spiral.h" -#define SP_SPIRAL_CONTEXT(obj) (dynamic_cast<SPSpiralContext*>((SPEventContext*)obj)) -#define SP_IS_SPIRAL_CONTEXT(obj) (dynamic_cast<const SPSpiralContext*>((const SPEventContext*)obj) != NULL) +#define SP_SPIRAL_CONTEXT(obj) (dynamic_cast<Inkscape::UI::Tools::SpiralTool*>((Inkscape::UI::Tools::ToolBase*)obj)) +#define SP_IS_SPIRAL_CONTEXT(obj) (dynamic_cast<const Inkscape::UI::Tools::SpiralTool*>((const Inkscape::UI::Tools::ToolBase*)obj) != NULL) -class SPSpiralContext : public SPEventContext { +namespace Inkscape { +namespace UI { +namespace Tools { + +class SpiralTool : public ToolBase { public: - SPSpiralContext(); - virtual ~SPSpiralContext(); + SpiralTool(); + virtual ~SpiralTool(); static const std::string prefsPath; @@ -55,4 +59,8 @@ private: void selection_changed(Inkscape::Selection *selection); }; +} +} +} + #endif diff --git a/src/spray-context.cpp b/src/ui/tools/spray-tool.cpp index 6b97dcc17..0ded1e44b 100644 --- a/src/spray-context.cpp +++ b/src/ui/tools/spray-tool.cpp @@ -63,7 +63,7 @@ #include "sp-item-transform.h" #include "filter-chemistry.h" -#include "spray-context.h" +#include "ui/tools/spray-tool.h" #include "helper/action.h" #include "verbs.h" @@ -81,19 +81,23 @@ using namespace std; #include "tool-factory.h" +namespace Inkscape { +namespace UI { +namespace Tools { + namespace { - SPEventContext* createSprayContext() { - return new SPSprayContext(); + ToolBase* createSprayContext() { + return new SprayTool(); } bool sprayContextRegistered = ToolFactory::instance().registerObject("/tools/spray", createSprayContext); } -const std::string& SPSprayContext::getPrefsPath() { - return SPSprayContext::prefsPath; +const std::string& SprayTool::getPrefsPath() { + return SprayTool::prefsPath; } -const std::string SPSprayContext::prefsPath = "/tools/spray"; +const std::string SprayTool::prefsPath = "/tools/spray"; /** * This function returns pseudo-random numbers from a normal distribution @@ -130,7 +134,7 @@ static void sp_spray_scale_rel(Geom::Point c, SPDesktop */*desktop*/, SPItem *it item->doWriteTransform(item->getRepr(), item->transform); } -SPSprayContext::SPSprayContext() : SPEventContext() { +SprayTool::SprayTool() : ToolBase() { this->usetilt = 0; this->dilate_area = 0; this->usetext = false; @@ -161,7 +165,7 @@ SPSprayContext::SPSprayContext() : SPEventContext() { this->has_dilated = false; } -SPSprayContext::~SPSprayContext() { +SprayTool::~SprayTool() { this->enableGrDrag(false); this->style_set_connection.disconnect(); @@ -179,7 +183,7 @@ static bool is_transform_modes(gint mode) mode == SPRAY_OPTION); } -void SPSprayContext::update_cursor(bool /*with_shift*/) { +void SprayTool::update_cursor(bool /*with_shift*/) { guint num = 0; gchar *sel_message = NULL; @@ -208,8 +212,8 @@ void SPSprayContext::update_cursor(bool /*with_shift*/) { g_free(sel_message); } -void SPSprayContext::setup() { - SPEventContext::setup(); +void SprayTool::setup() { + ToolBase::setup(); { /* TODO: have a look at sp_dyna_draw_context_setup where the same is done.. generalize? at least make it an arcto! */ @@ -250,7 +254,7 @@ void SPSprayContext::setup() { } } -void SPSprayContext::set(const Inkscape::Preferences::Entry& val) { +void SprayTool::set(const Inkscape::Preferences::Entry& val) { Glib::ustring path = val.getEntryName(); if (path == "mode") { @@ -282,7 +286,7 @@ void SPSprayContext::set(const Inkscape::Preferences::Entry& val) { } } -static void sp_spray_extinput(SPSprayContext *tc, GdkEvent *event) +static void sp_spray_extinput(SprayTool *tc, GdkEvent *event) { if (gdk_event_get_axis(event, GDK_AXIS_PRESSURE, &tc->pressure)) { tc->pressure = CLAMP(tc->pressure, TC_MIN_PRESSURE, TC_MAX_PRESSURE); @@ -291,12 +295,12 @@ static void sp_spray_extinput(SPSprayContext *tc, GdkEvent *event) } } -static double get_dilate_radius(SPSprayContext *tc) +static double get_dilate_radius(SprayTool *tc) { return 250 * tc->width/SP_EVENT_CONTEXT(tc)->desktop->current_zoom(); } -static double get_path_force(SPSprayContext *tc) +static double get_path_force(SprayTool *tc) { double force = 8 * (tc->usepressure? tc->pressure : TC_DEFAULT_PRESSURE) /sqrt(SP_EVENT_CONTEXT(tc)->desktop->current_zoom()); @@ -306,28 +310,28 @@ static double get_path_force(SPSprayContext *tc) return force * tc->force; } -static double get_path_mean(SPSprayContext *tc) +static double get_path_mean(SprayTool *tc) { return tc->mean; } -static double get_path_standard_deviation(SPSprayContext *tc) +static double get_path_standard_deviation(SprayTool *tc) { return tc->standard_deviation; } -static double get_move_force(SPSprayContext *tc) +static double get_move_force(SprayTool *tc) { double force = (tc->usepressure? tc->pressure : TC_DEFAULT_PRESSURE); return force * tc->force; } -static double get_move_mean(SPSprayContext *tc) +static double get_move_mean(SprayTool *tc) { return tc->mean; } -static double get_move_standard_deviation(SPSprayContext *tc) +static double get_move_standard_deviation(SprayTool *tc) { return tc->standard_deviation; } @@ -523,7 +527,7 @@ static bool sp_spray_recursive(SPDesktop *desktop, return did; } -static bool sp_spray_dilate(SPSprayContext *tc, Geom::Point /*event_p*/, Geom::Point p, Geom::Point vector, bool reverse) +static bool sp_spray_dilate(SprayTool *tc, Geom::Point /*event_p*/, Geom::Point p, Geom::Point vector, bool reverse) { Inkscape::Selection *selection = sp_desktop_selection(SP_EVENT_CONTEXT(tc)->desktop); SPDesktop *desktop = SP_EVENT_CONTEXT(tc)->desktop; @@ -568,7 +572,7 @@ static bool sp_spray_dilate(SPSprayContext *tc, Geom::Point /*event_p*/, Geom::P return did; } -static void sp_spray_update_area(SPSprayContext *tc) +static void sp_spray_update_area(SprayTool *tc) { double radius = get_dilate_radius(tc); Geom::Affine const sm ( Geom::Scale(radius/(1-tc->ratio), radius/(1+tc->ratio)) ); @@ -576,7 +580,7 @@ static void sp_spray_update_area(SPSprayContext *tc) sp_canvas_item_show(tc->dilate_area); } -static void sp_spray_switch_mode(SPSprayContext *tc, gint mode, bool with_shift) +static void sp_spray_switch_mode(SprayTool *tc, gint mode, bool with_shift) { // select the button mode SP_EVENT_CONTEXT(tc)->desktop->setToolboxSelectOneValue("spray_tool_mode", mode); @@ -585,7 +589,7 @@ static void sp_spray_switch_mode(SPSprayContext *tc, gint mode, bool with_shift) tc->update_cursor(with_shift); } -bool SPSprayContext::root_handler(GdkEvent* event) { +bool SprayTool::root_handler(GdkEvent* event) { gint ret = FALSE; switch (event->type) { @@ -863,12 +867,16 @@ bool SPSprayContext::root_handler(GdkEvent* event) { // if ((SP_EVENT_CONTEXT_CLASS(sp_spray_context_parent_class))->root_handler) { // ret = (SP_EVENT_CONTEXT_CLASS(sp_spray_context_parent_class))->root_handler(event_context, event); // } - ret = SPEventContext::root_handler(event); + ret = ToolBase::root_handler(event); } return ret; } +} +} +} + /* Local Variables: mode:c++ diff --git a/src/spray-context.h b/src/ui/tools/spray-tool.h index 4e1ab9dc0..e7362fd50 100644 --- a/src/spray-context.h +++ b/src/ui/tools/spray-tool.h @@ -19,10 +19,10 @@ */ #include <2geom/point.h> -#include "event-context.h" +#include "ui/tools/tool-base.h" -#define SP_SPRAY_CONTEXT(obj) (dynamic_cast<SPSprayContext*>((SPEventContext*)obj)) -#define SP_IS_SPRAY_CONTEXT(obj) (dynamic_cast<const SPSprayContext*>((const SPEventContext*)obj) != NULL) +#define SP_SPRAY_CONTEXT(obj) (dynamic_cast<Inkscape::UI::Tools::SprayTool*>((Inkscape::UI::Tools::ToolBase*)obj)) +#define SP_IS_SPRAY_CONTEXT(obj) (dynamic_cast<const Inkscape::UI::Tools::SprayTool*>((const Inkscape::UI::Tools::ToolBase*)obj) != NULL) namespace Inkscape { namespace UI { @@ -39,6 +39,10 @@ namespace Inkscape { #define TC_MAX_PRESSURE 1.0 #define TC_DEFAULT_PRESSURE 0.35 +namespace Inkscape { +namespace UI { +namespace Tools { + enum { SPRAY_MODE_COPY, SPRAY_MODE_CLONE, @@ -46,12 +50,12 @@ enum { SPRAY_OPTION, }; -class SPSprayContext : public SPEventContext { +class SprayTool : public ToolBase { public: - SPSprayContext(); - virtual ~SPSprayContext(); + SprayTool(); + virtual ~SprayTool(); - //SPEventContext event_context; + //ToolBase event_context; //Inkscape::UI::Dialog::Dialog *dialog_option;//Attribut de type SprayOptionClass, localisé dans scr/ui/dialog /* extended input data */ gdouble pressure; @@ -98,6 +102,10 @@ public: void update_cursor(bool /*with_shift*/); }; +} +} +} + #endif /* diff --git a/src/star-context.cpp b/src/ui/tools/star-tool.cpp index d801ad0a0..b5d8c4418 100644 --- a/src/star-context.cpp +++ b/src/ui/tools/star-tool.cpp @@ -45,27 +45,31 @@ #include "verbs.h" #include "display/sp-canvas-item.h" -#include "star-context.h" +#include "ui/tools/star-tool.h" using Inkscape::DocumentUndo; #include "tool-factory.h" +namespace Inkscape { +namespace UI { +namespace Tools { + namespace { - SPEventContext* createStarContext() { - return new SPStarContext(); + ToolBase* createStarContext() { + return new StarTool(); } bool starContextRegistered = ToolFactory::instance().registerObject("/tools/shapes/star", createStarContext); } -const std::string& SPStarContext::getPrefsPath() { - return SPStarContext::prefsPath; +const std::string& StarTool::getPrefsPath() { + return StarTool::prefsPath; } -const std::string SPStarContext::prefsPath = "/tools/shapes/star"; +const std::string StarTool::prefsPath = "/tools/shapes/star"; -SPStarContext::SPStarContext() : SPEventContext() { +StarTool::StarTool() : ToolBase() { this->randomized = 0; this->rounded = 0; @@ -86,16 +90,16 @@ SPStarContext::SPStarContext() : SPEventContext() { this->isflatsided = false; } -void SPStarContext::finish() { +void StarTool::finish() { sp_canvas_item_ungrab(SP_CANVAS_ITEM(desktop->acetate), GDK_CURRENT_TIME); this->finishItem(); this->sel_changed_connection.disconnect(); - SPEventContext::finish(); + ToolBase::finish(); } -SPStarContext::~SPStarContext() { +StarTool::~StarTool() { this->enableGrDrag(false); this->sel_changed_connection.disconnect(); @@ -115,15 +119,15 @@ SPStarContext::~SPStarContext() { * * @param selection Should not be NULL. */ -void SPStarContext::selection_changed(Inkscape::Selection* selection) { +void StarTool::selection_changed(Inkscape::Selection* selection) { g_assert (selection != NULL); this->shape_editor->unset_item(SH_KNOTHOLDER); this->shape_editor->set_item(selection->singleItem(), SH_KNOTHOLDER); } -void SPStarContext::setup() { - SPEventContext::setup(); +void StarTool::setup() { + ToolBase::setup(); sp_event_context_read(this, "magnitude"); sp_event_context_read(this, "proportion"); @@ -142,7 +146,7 @@ void SPStarContext::setup() { this->sel_changed_connection.disconnect(); - this->sel_changed_connection = selection->connectChanged(sigc::mem_fun(this, &SPStarContext::selection_changed)); + this->sel_changed_connection = selection->connectChanged(sigc::mem_fun(this, &StarTool::selection_changed)); Inkscape::Preferences *prefs = Inkscape::Preferences::get(); if (prefs->getBool("/tools/shapes/selcue")) { @@ -154,7 +158,7 @@ void SPStarContext::setup() { } } -void SPStarContext::set(const Inkscape::Preferences::Entry& val) { +void StarTool::set(const Inkscape::Preferences::Entry& val) { Glib::ustring path = val.getEntryName(); if (path == "magnitude") { @@ -170,7 +174,7 @@ void SPStarContext::set(const Inkscape::Preferences::Entry& val) { } } -bool SPStarContext::root_handler(GdkEvent* event) { +bool StarTool::root_handler(GdkEvent* event) { static bool dragging; SPDesktop *desktop = this->desktop; @@ -356,13 +360,13 @@ bool SPStarContext::root_handler(GdkEvent* event) { } if (!ret) { - ret = SPEventContext::root_handler(event); + ret = ToolBase::root_handler(event); } return ret; } -void SPStarContext::drag(Geom::Point p, guint state) +void StarTool::drag(Geom::Point p, guint state) { SPDesktop *desktop = this->desktop; @@ -427,7 +431,7 @@ void SPStarContext::drag(Geom::Point p, guint state) g_string_free(rads, FALSE); } -void SPStarContext::finishItem() { +void StarTool::finishItem() { this->message_context->clear(); if (this->star != NULL) { @@ -455,7 +459,7 @@ void SPStarContext::finishItem() { } } -void SPStarContext::cancel() { +void StarTool::cancel() { sp_desktop_selection(desktop)->clear(); sp_canvas_item_ungrab(SP_CANVAS_ITEM(desktop->acetate), 0); @@ -474,6 +478,10 @@ void SPStarContext::cancel() { DocumentUndo::cancel(sp_desktop_document(desktop)); } +} +} +} + /* Local Variables: mode:c++ diff --git a/src/star-context.h b/src/ui/tools/star-tool.h index af66f3201..da3774e68 100644 --- a/src/star-context.h +++ b/src/ui/tools/star-tool.h @@ -17,14 +17,18 @@ #include <stddef.h> #include <sigc++/sigc++.h> #include <2geom/point.h> -#include "event-context.h" +#include "ui/tools/tool-base.h" #include "sp-star.h" -class SPStarContext : public SPEventContext { +namespace Inkscape { +namespace UI { +namespace Tools { + +class StarTool : public ToolBase { public: - SPStarContext(); - virtual ~SPStarContext(); + StarTool(); + virtual ~StarTool(); static const std::string prefsPath; @@ -63,4 +67,8 @@ private: void selection_changed(Inkscape::Selection* selection); }; +} +} +} + #endif diff --git a/src/text-context.cpp b/src/ui/tools/text-tool.cpp index 7d9b9848f..2927606a7 100644 --- a/src/text-context.cpp +++ b/src/ui/tools/text-tool.cpp @@ -1,5 +1,5 @@ /* - * SPTextContext + * TextTool * * Authors: * Lauris Kaplinski <lauris@kaplinski.com> @@ -45,51 +45,53 @@ #include "sp-namedview.h" #include "sp-text.h" #include "style.h" -#include "text-context.h" +#include "ui/tools/text-tool.h" #include "text-editing.h" #include "ui/control-manager.h" #include "verbs.h" #include "xml/node-event-vector.h" #include "xml/repr.h" #include <gtk/gtk.h> +#include "tool-factory.h" using Inkscape::ControlManager; using Inkscape::DocumentUndo; -static void sp_text_context_selection_changed(Inkscape::Selection *selection, SPTextContext *tc); -static void sp_text_context_selection_modified(Inkscape::Selection *selection, guint flags, SPTextContext *tc); -static bool sp_text_context_style_set(SPCSSAttr const *css, SPTextContext *tc); -static int sp_text_context_style_query(SPStyle *style, int property, SPTextContext *tc); - -static void sp_text_context_validate_cursor_iterators(SPTextContext *tc); -static void sp_text_context_update_cursor(SPTextContext *tc, bool scroll_to_see = true); -static void sp_text_context_update_text_selection(SPTextContext *tc); -static gint sp_text_context_timeout(SPTextContext *tc); -static void sp_text_context_forget_text(SPTextContext *tc); +namespace Inkscape { +namespace UI { +namespace Tools { -static gint sptc_focus_in(GtkWidget *widget, GdkEventFocus *event, SPTextContext *tc); -static gint sptc_focus_out(GtkWidget *widget, GdkEventFocus *event, SPTextContext *tc); -static void sptc_commit(GtkIMContext *imc, gchar *string, SPTextContext *tc); +static void sp_text_context_selection_changed(Inkscape::Selection *selection, TextTool *tc); +static void sp_text_context_selection_modified(Inkscape::Selection *selection, guint flags, TextTool *tc); +static bool sp_text_context_style_set(SPCSSAttr const *css, TextTool *tc); +static int sp_text_context_style_query(SPStyle *style, int property, TextTool *tc); +static void sp_text_context_validate_cursor_iterators(TextTool *tc); +static void sp_text_context_update_cursor(TextTool *tc, bool scroll_to_see = true); +static void sp_text_context_update_text_selection(TextTool *tc); +static gint sp_text_context_timeout(TextTool *tc); +static void sp_text_context_forget_text(TextTool *tc); -#include "tool-factory.h" +static gint sptc_focus_in(GtkWidget *widget, GdkEventFocus *event, TextTool *tc); +static gint sptc_focus_out(GtkWidget *widget, GdkEventFocus *event, TextTool *tc); +static void sptc_commit(GtkIMContext *imc, gchar *string, TextTool *tc); namespace { - SPEventContext* createTextContext() { - return new SPTextContext(); + ToolBase* createTextContext() { + return new TextTool(); } bool textContextRegistered = ToolFactory::instance().registerObject("/tools/text", createTextContext); } -const std::string& SPTextContext::getPrefsPath() { - return SPTextContext::prefsPath; +const std::string& TextTool::getPrefsPath() { + return TextTool::prefsPath; } -const std::string SPTextContext::prefsPath = "/tools/text"; +const std::string TextTool::prefsPath = "/tools/text"; -SPTextContext::SPTextContext() : SPEventContext() { +TextTool::TextTool() : ToolBase() { this->preedit_string = 0; this->unipos = 0; @@ -122,7 +124,7 @@ SPTextContext::SPTextContext() : SPEventContext() { this->creating = 0; } -SPTextContext::~SPTextContext() { +TextTool::~TextTool() { delete this->shape_editor; this->shape_editor = NULL; @@ -134,7 +136,7 @@ SPTextContext::~SPTextContext() { Inkscape::Rubberband::get(this->desktop)->stop(); } -void SPTextContext::setup() { +void TextTool::setup() { GtkSettings* settings = gtk_settings_get_default(); gint timeout = 0; g_object_get( settings, "gtk-cursor-blink-time", &timeout, NULL ); @@ -184,7 +186,7 @@ void SPTextContext::setup() { } } - SPEventContext::setup(); + ToolBase::setup(); this->shape_editor = new ShapeEditor(this->desktop); @@ -217,7 +219,7 @@ void SPTextContext::setup() { } } -void SPTextContext::finish() { +void TextTool::finish() { if (this->desktop) { sp_signal_disconnect_by_data(sp_desktop_canvas(this->desktop), this); } @@ -265,7 +267,7 @@ void SPTextContext::finish() { this->text_selection_quads.clear(); } -bool SPTextContext::item_handler(SPItem* item, GdkEvent* event) { +bool TextTool::item_handler(SPItem* item, GdkEvent* event) { SPItem *item_ungrouped; gint ret = FALSE; @@ -402,23 +404,23 @@ bool SPTextContext::item_handler(SPItem* item, GdkEvent* event) { } if (!ret) { - ret = SPEventContext::item_handler(item, event); + ret = ToolBase::item_handler(item, event); } return ret; } -static void sp_text_context_setup_text(SPTextContext *tc) +static void sp_text_context_setup_text(TextTool *tc) { - SPEventContext *ec = SP_EVENT_CONTEXT(tc); + ToolBase *ec = SP_EVENT_CONTEXT(tc); /* Create <text> */ - Inkscape::XML::Document *xml_doc = SP_EVENT_CONTEXT_DESKTOP(ec)->doc()->getReprDoc(); + Inkscape::XML::Document *xml_doc = ec->desktop->doc()->getReprDoc(); Inkscape::XML::Node *rtext = xml_doc->createElement("svg:text"); rtext->setAttribute("xml:space", "preserve"); // we preserve spaces in the text objects we create /* Set style */ - sp_desktop_apply_style_tool(SP_EVENT_CONTEXT_DESKTOP(ec), rtext, "/tools/text", true); + sp_desktop_apply_style_tool(ec->desktop, rtext, "/tools/text", true); sp_repr_set_svg_double(rtext, "x", tc->pdoc[Geom::X]); sp_repr_set_svg_double(rtext, "y", tc->pdoc[Geom::Y]); @@ -452,7 +454,7 @@ static void sp_text_context_setup_text(SPTextContext *tc) * * \pre tc.uni/tc.unipos non-empty. */ -static void insert_uni_char(SPTextContext *const tc) +static void insert_uni_char(TextTool *const tc) { g_return_if_fail(tc->unipos && tc->unipos < sizeof(tc->uni) @@ -500,7 +502,7 @@ static void hex_to_printable_utf8_buf(char const *const ehex, char *utf8) utf8[len] = '\0'; } -static void show_curr_uni_char(SPTextContext *const tc) +static void show_curr_uni_char(TextTool *const tc) { g_return_if_fail(tc->unipos < sizeof(tc->uni) && tc->uni[tc->unipos] == '\0'); @@ -524,7 +526,7 @@ static void show_curr_uni_char(SPTextContext *const tc) } } -bool SPTextContext::root_handler(GdkEvent* event) { +bool TextTool::root_handler(GdkEvent* event) { sp_canvas_item_hide(this->indicator); sp_text_context_validate_cursor_iterators(this); @@ -1290,19 +1292,19 @@ bool SPTextContext::root_handler(GdkEvent* event) { // } else { // return FALSE; // return "I did nothing" value so that global shortcuts can be activated // } - return SPEventContext::root_handler(event); + return ToolBase::root_handler(event); } /** Attempts to paste system clipboard into the currently edited text, returns true on success */ -bool sp_text_paste_inline(SPEventContext *ec) +bool sp_text_paste_inline(ToolBase *ec) { if (!SP_IS_TEXT_CONTEXT(ec)) return false; - SPTextContext *tc = SP_TEXT_CONTEXT(ec); + TextTool *tc = SP_TEXT_CONTEXT(ec); if ((tc->text) || (tc->nascent_object)) { // there is an active text object in this context, or a new object was just created @@ -1370,22 +1372,22 @@ bool sp_text_paste_inline(SPEventContext *ec) Gets the raw characters that comprise the currently selected text, converting line breaks into lf characters. */ -Glib::ustring sp_text_get_selected_text(SPEventContext const *ec) +Glib::ustring sp_text_get_selected_text(ToolBase const *ec) { if (!SP_IS_TEXT_CONTEXT(ec)) return ""; - SPTextContext const *tc = SP_TEXT_CONTEXT(ec); + TextTool const *tc = SP_TEXT_CONTEXT(ec); if (tc->text == NULL) return ""; return sp_te_get_string_multiline(tc->text, tc->text_sel_start, tc->text_sel_end); } -SPCSSAttr *sp_text_get_style_at_cursor(SPEventContext const *ec) +SPCSSAttr *sp_text_get_style_at_cursor(ToolBase const *ec) { if (!SP_IS_TEXT_CONTEXT(ec)) return NULL; - SPTextContext const *tc = SP_TEXT_CONTEXT(ec); + TextTool const *tc = SP_TEXT_CONTEXT(ec); if (tc->text == NULL) return NULL; @@ -1402,11 +1404,11 @@ SPCSSAttr *sp_text_get_style_at_cursor(SPEventContext const *ec) Deletes the currently selected characters. Returns false if there is no text selection currently. */ -bool sp_text_delete_selection(SPEventContext *ec) +bool sp_text_delete_selection(ToolBase *ec) { if (!SP_IS_TEXT_CONTEXT(ec)) return false; - SPTextContext *tc = SP_TEXT_CONTEXT(ec); + TextTool *tc = SP_TEXT_CONTEXT(ec); if (tc->text == NULL) return false; @@ -1434,11 +1436,11 @@ bool sp_text_delete_selection(SPEventContext *ec) * \param selection Should not be NULL. */ static void -sp_text_context_selection_changed(Inkscape::Selection *selection, SPTextContext *tc) +sp_text_context_selection_changed(Inkscape::Selection *selection, TextTool *tc) { g_assert(selection != NULL); - SPEventContext *ec = SP_EVENT_CONTEXT(tc); + ToolBase *ec = SP_EVENT_CONTEXT(tc); ec->shape_editor->unset_item(SH_KNOTHOLDER); SPItem *item = selection->singleItem(); @@ -1467,13 +1469,13 @@ sp_text_context_selection_changed(Inkscape::Selection *selection, SPTextContext } static void -sp_text_context_selection_modified(Inkscape::Selection */*selection*/, guint /*flags*/, SPTextContext *tc) +sp_text_context_selection_modified(Inkscape::Selection */*selection*/, guint /*flags*/, TextTool *tc) { sp_text_context_update_cursor(tc); sp_text_context_update_text_selection(tc); } -static bool sp_text_context_style_set(SPCSSAttr const *css, SPTextContext *tc) +static bool sp_text_context_style_set(SPCSSAttr const *css, TextTool *tc) { if (tc->text == NULL) return false; @@ -1490,7 +1492,7 @@ static bool sp_text_context_style_set(SPCSSAttr const *css, SPTextContext *tc) } static int -sp_text_context_style_query(SPStyle *style, int property, SPTextContext *tc) +sp_text_context_style_query(SPStyle *style, int property, TextTool *tc) { if (tc->text == NULL) { return QUERY_STYLE_NOTHING; @@ -1536,7 +1538,7 @@ sp_text_context_style_query(SPStyle *style, int property, SPTextContext *tc) return result; } -static void sp_text_context_validate_cursor_iterators(SPTextContext *tc) +static void sp_text_context_validate_cursor_iterators(TextTool *tc) { if (tc->text == NULL) return; @@ -1547,7 +1549,7 @@ static void sp_text_context_validate_cursor_iterators(SPTextContext *tc) } } -static void sp_text_context_update_cursor(SPTextContext *tc, bool scroll_to_see) +static void sp_text_context_update_cursor(TextTool *tc, bool scroll_to_see) { // due to interruptible display, tc may already be destroyed during a display update before // the cursor update (can't do both atomically, alas) @@ -1611,9 +1613,9 @@ static void sp_text_context_update_cursor(SPTextContext *tc, bool scroll_to_see } } - SP_EVENT_CONTEXT(tc)->message_context->setF(Inkscape::NORMAL_MESSAGE, _("Type or edit flowed text (%d characters%s); <b>Enter</b> to start new paragraph."), nChars, trunc); + SP_EVENT_CONTEXT(tc)->message_context->setF(Inkscape::NORMAL_MESSAGE, ngettext("Type or edit flowed text (%d character%s); <b>Enter</b> to start new paragraph.", "Type or edit flowed text (%d characters%s); <b>Enter</b> to start new paragraph.", nChars), nChars, trunc); } else { - SP_EVENT_CONTEXT(tc)->message_context->setF(Inkscape::NORMAL_MESSAGE, _("Type or edit text (%d characters%s); <b>Enter</b> to start new line."), nChars, trunc); + SP_EVENT_CONTEXT(tc)->message_context->setF(Inkscape::NORMAL_MESSAGE, ngettext("Type or edit text (%d character%s); <b>Enter</b> to start new line.", "Type or edit text (%d characters%s); <b>Enter</b> to start new line.", nChars), nChars, trunc); } } else { @@ -1628,7 +1630,7 @@ static void sp_text_context_update_cursor(SPTextContext *tc, bool scroll_to_see SP_EVENT_CONTEXT(tc)->desktop->emitToolSubselectionChanged((gpointer)tc); } -static void sp_text_context_update_text_selection(SPTextContext *tc) +static void sp_text_context_update_text_selection(TextTool *tc) { // due to interruptible display, tc may already be destroyed during a display update before // the selection update (can't do both atomically, alas) @@ -1655,7 +1657,7 @@ static void sp_text_context_update_text_selection(SPTextContext *tc) } } -static gint sp_text_context_timeout(SPTextContext *tc) +static gint sp_text_context_timeout(TextTool *tc) { if (tc->show) { sp_canvas_item_show(tc->cursor); @@ -1671,7 +1673,7 @@ static gint sp_text_context_timeout(SPTextContext *tc) return TRUE; } -static void sp_text_context_forget_text(SPTextContext *tc) +static void sp_text_context_forget_text(TextTool *tc) { if (! tc->text) return; SPItem *ti = tc->text; @@ -1699,19 +1701,19 @@ static void sp_text_context_forget_text(SPTextContext *tc) */ } -gint sptc_focus_in(GtkWidget */*widget*/, GdkEventFocus */*event*/, SPTextContext *tc) +gint sptc_focus_in(GtkWidget */*widget*/, GdkEventFocus */*event*/, TextTool *tc) { gtk_im_context_focus_in(tc->imc); return FALSE; } -gint sptc_focus_out(GtkWidget */*widget*/, GdkEventFocus */*event*/, SPTextContext *tc) +gint sptc_focus_out(GtkWidget */*widget*/, GdkEventFocus */*event*/, TextTool *tc) { gtk_im_context_focus_out(tc->imc); return FALSE; } -static void sptc_commit(GtkIMContext */*imc*/, gchar *string, SPTextContext *tc) +static void sptc_commit(GtkIMContext */*imc*/, gchar *string, TextTool *tc) { if (!tc->text) { sp_text_context_setup_text(tc); @@ -1726,27 +1728,30 @@ static void sptc_commit(GtkIMContext */*imc*/, gchar *string, SPTextContext *tc) _("Type text")); } -void sp_text_context_place_cursor (SPTextContext *tc, SPObject *text, Inkscape::Text::Layout::iterator where) +void sp_text_context_place_cursor (TextTool *tc, SPObject *text, Inkscape::Text::Layout::iterator where) { - SP_EVENT_CONTEXT_DESKTOP (tc)->selection->set (text); + tc->desktop->selection->set (text); tc->text_sel_start = tc->text_sel_end = where; sp_text_context_update_cursor(tc); sp_text_context_update_text_selection(tc); } -void sp_text_context_place_cursor_at (SPTextContext *tc, SPObject *text, Geom::Point const p) +void sp_text_context_place_cursor_at (TextTool *tc, SPObject *text, Geom::Point const p) { - SP_EVENT_CONTEXT_DESKTOP (tc)->selection->set (text); + tc->desktop->selection->set (text); sp_text_context_place_cursor (tc, text, sp_te_get_position_by_coords(tc->text, p)); } -Inkscape::Text::Layout::iterator *sp_text_context_get_cursor_position(SPTextContext *tc, SPObject *text) +Inkscape::Text::Layout::iterator *sp_text_context_get_cursor_position(TextTool *tc, SPObject *text) { if (text != tc->text) return NULL; return &(tc->text_sel_end); } +} +} +} /* Local Variables: diff --git a/src/text-context.h b/src/ui/tools/text-tool.h index 95b812c2b..ef8a67984 100644 --- a/src/text-context.h +++ b/src/ui/tools/text-tool.h @@ -2,7 +2,7 @@ #define __SP_TEXT_CONTEXT_H__ /* - * SPTextContext + * TextTool * * Authors: * Lauris Kaplinski <lauris@kaplinski.com> @@ -19,19 +19,23 @@ #include <sigc++/sigc++.h> #include <gtk/gtk.h> -#include "event-context.h" +#include "ui/tools/tool-base.h" #include <2geom/point.h> #include "libnrtype/Layout-TNG.h" -#define SP_TEXT_CONTEXT(obj) (dynamic_cast<SPTextContext*>((SPEventContext*)obj)) -#define SP_IS_TEXT_CONTEXT(obj) (dynamic_cast<const SPTextContext*>((const SPEventContext*)obj) != NULL) +#define SP_TEXT_CONTEXT(obj) (dynamic_cast<Inkscape::UI::Tools::TextTool*>((Inkscape::UI::Tools::ToolBase*)obj)) +#define SP_IS_TEXT_CONTEXT(obj) (dynamic_cast<const Inkscape::UI::Tools::TextTool*>((const Inkscape::UI::Tools::ToolBase*)obj) != NULL) struct SPCtrlLine; -class SPTextContext : public SPEventContext { +namespace Inkscape { +namespace UI { +namespace Tools { + +class TextTool : public ToolBase { public: - SPTextContext(); - virtual ~SPTextContext(); + TextTool(); + virtual ~TextTool(); sigc::connection sel_changed_connection; sigc::connection sel_modified_connection; @@ -82,12 +86,16 @@ public: virtual const std::string& getPrefsPath(); }; -bool sp_text_paste_inline(SPEventContext *ec); -Glib::ustring sp_text_get_selected_text(SPEventContext const *ec); -SPCSSAttr *sp_text_get_style_at_cursor(SPEventContext const *ec); -bool sp_text_delete_selection(SPEventContext *ec); -void sp_text_context_place_cursor (SPTextContext *tc, SPObject *text, Inkscape::Text::Layout::iterator where); -void sp_text_context_place_cursor_at (SPTextContext *tc, SPObject *text, Geom::Point const p); -Inkscape::Text::Layout::iterator *sp_text_context_get_cursor_position(SPTextContext *tc, SPObject *text); +bool sp_text_paste_inline(ToolBase *ec); +Glib::ustring sp_text_get_selected_text(ToolBase const *ec); +SPCSSAttr *sp_text_get_style_at_cursor(ToolBase const *ec); +bool sp_text_delete_selection(ToolBase *ec); +void sp_text_context_place_cursor (TextTool *tc, SPObject *text, Inkscape::Text::Layout::iterator where); +void sp_text_context_place_cursor_at (TextTool *tc, SPObject *text, Geom::Point const p); +Inkscape::Text::Layout::iterator *sp_text_context_get_cursor_position(TextTool *tc, SPObject *text); + +} +} +} #endif diff --git a/src/event-context.cpp b/src/ui/tools/tool-base.cpp index 398d3b0e3..6c7867633 100644 --- a/src/event-context.cpp +++ b/src/ui/tools/tool-base.cpp @@ -24,7 +24,7 @@ #include "shortcuts.h" #include "file.h" -#include "event-context.h" +#include "ui/tools/tool-base.h" #include <string.h> #include <gdk/gdkkeysyms.h> @@ -52,14 +52,12 @@ #include "attributes.h" #include "rubberband.h" #include "selcue.h" -#include "lpe-tool-context.h" +#include "ui/tools/lpe-tool.h" #include "ui/tool/control-point.h" #include "shape-editor.h" #include "sp-guide.h" #include "color.h" -static void set_event_location(SPDesktop * desktop, GdkEvent * event); - // globals for temporary switching to selector by space static bool selector_toggled = FALSE; static int switch_selector_to = 0; @@ -68,29 +66,31 @@ static int switch_selector_to = 0; static bool dropper_toggled = FALSE; static int switch_dropper_to = 0; -//static gint xp = 0, yp = 0; // where drag started -//static gint tolerance = 0; -//static bool within_tolerance = false; - // globals for keeping track of keyboard scroll events in order to accelerate static guint32 scroll_event_time = 0; static gdouble scroll_multiply = 1; static guint scroll_keyval = 0; -void SPEventContext::set(const Inkscape::Preferences::Entry& /*val*/) { -} -void SPEventContext::activate() { -} +namespace Inkscape { +namespace UI { +namespace Tools { -void SPEventContext::deactivate() { +static void set_event_location(SPDesktop * desktop, GdkEvent * event); + + +void ToolBase::set(const Inkscape::Preferences::Entry& /*val*/) { } -void SPEventContext::finish() { +void ToolBase::finish() { this->enableSelectionCue(false); } -SPEventContext::SPEventContext() { +SPDesktop const& ToolBase::getDesktop() const { + return *desktop; +} + +ToolBase::ToolBase() { this->hot_y = 0; this->xp = 0; this->cursor_shape = 0; @@ -114,7 +114,7 @@ SPEventContext::SPEventContext() { //this->tool_url = NULL; } -SPEventContext::~SPEventContext() { +ToolBase::~ToolBase() { if (this->message_context) { delete this->message_context; } @@ -145,7 +145,7 @@ SPEventContext::~SPEventContext() { /** * Set the cursor to a standard GDK cursor */ -static void sp_event_context_set_cursor(SPEventContext *event_context, GdkCursorType cursor_type) { +static void sp_event_context_set_cursor(ToolBase *event_context, GdkCursorType cursor_type) { GtkWidget *w = GTK_WIDGET(sp_desktop_canvas(event_context->desktop)); GdkDisplay *display = gdk_display_get_default(); @@ -164,9 +164,9 @@ static void sp_event_context_set_cursor(SPEventContext *event_context, GdkCursor } /** - * Recreates and draws cursor on desktop related to SPEventContext. + * Recreates and draws cursor on desktop related to ToolBase. */ -void SPEventContext::sp_event_context_update_cursor() { +void ToolBase::sp_event_context_update_cursor() { GtkWidget *w = GTK_WIDGET(sp_desktop_canvas(this->desktop)); if (gtk_widget_get_window (w)) { @@ -223,14 +223,12 @@ void SPEventContext::sp_event_context_update_cursor() { } /** - * Callback that gets called on initialization of SPEventContext object. + * Callback that gets called on initialization of ToolBase object. * Redraws mouse cursor, at the moment. - */ - -/** + * * When you override it, call this method first. */ -void SPEventContext::setup() { +void ToolBase::setup() { this->pref_observer = new ToolPrefObserver(this->getPrefsPath(), this); Inkscape::Preferences::get()->addObserver(*(this->pref_observer)); @@ -352,16 +350,7 @@ static gdouble accelerate_scroll(GdkEvent *event, gdouble acceleration, return scroll_multiply; } -/** - * Main event dispatch, gets called from Gdk. - */ -//static gint sp_event_context_private_root_handler( -// SPEventContext *event_context, GdkEvent *event) { -// -// return event_context->ceventcontext->root_handler(event); -//} - -bool SPEventContext::root_handler(GdkEvent* event) { +bool ToolBase::root_handler(GdkEvent* event) { static Geom::Point button_w; static unsigned int panning = 0; static unsigned int panning_cursor = 0; @@ -866,13 +855,7 @@ bool SPEventContext::root_handler(GdkEvent* event) { * Only reacts to right mouse button at the moment. * \todo Fixme: do context sensitive popup menu on items. */ -//gint sp_event_context_private_item_handler(SPEventContext *ec, SPItem *item, -// GdkEvent *event) { -// -// return ec->ceventcontext->item_handler(item, event); -//} - -bool SPEventContext::item_handler(SPItem* item, GdkEvent* event) { +bool ToolBase::item_handler(SPItem* item, GdkEvent* event) { int ret = FALSE; switch (event->type) { @@ -893,7 +876,7 @@ bool SPEventContext::item_handler(SPItem* item, GdkEvent* event) { /** * Returns true if we're hovering above a knot (needed because we don't want to pre-snap in that case). */ -bool sp_event_context_knot_mouseover(SPEventContext *ec) +bool sp_event_context_knot_mouseover(ToolBase *ec) { if (ec->shape_editor) { return ec->shape_editor->knot_mouseover(); @@ -903,61 +886,9 @@ bool sp_event_context_knot_mouseover(SPEventContext *ec) } /** - * Creates new SPEventContext object and calls its virtual setup() function. - * @todo This is bogus. pref_path should be a private property of the inheriting objects. - */ -//SPEventContext * -//sp_event_context_new(GType type, SPDesktop *desktop, gchar const *pref_path, -// unsigned int key) { -// g_return_val_if_fail(g_type_is_a(type, SP_TYPE_EVENT_CONTEXT), NULL); -// g_return_val_if_fail(desktop != NULL, NULL); -// -// SPEventContext * const ec = static_cast<SPEventContext*>(g_object_new(type, NULL)); -// -// ec->desktop = desktop; -// ec->_message_context -// = new Inkscape::MessageContext(desktop->messageStack()); -// ec->key = key; -// ec->pref_observer = NULL; -// -// if (pref_path) { -// ec->pref_observer = new ToolPrefObserver(pref_path, ec); -// -// Inkscape::Preferences *prefs = Inkscape::Preferences::get(); -// prefs->addObserver(*(ec->pref_observer)); -// } -// -//// if ((SP_EVENT_CONTEXT_CLASS(G_OBJECT_GET_CLASS(ec)))->setup) -//// (SP_EVENT_CONTEXT_CLASS(G_OBJECT_GET_CLASS(ec)))->setup(ec); -// ec->ceventcontext->setup(); -// -// return ec; -//} - -/** - * Finishes SPEventContext. + * Enables/disables the ToolBase's SelCue. */ -//void sp_event_context_finish(SPEventContext *ec) { -// g_return_if_fail(ec != NULL); -// g_return_if_fail(SP_IS_EVENT_CONTEXT(ec)); -// -// ec->enableSelectionCue(false); -// -//// if (ec->next) { -//// g_warning("Finishing event context with active link\n"); -//// } -// -//// if ((SP_EVENT_CONTEXT_CLASS(G_OBJECT_GET_CLASS(ec)))->finish) -//// (SP_EVENT_CONTEXT_CLASS(G_OBJECT_GET_CLASS(ec)))->finish(ec); -// ec->finish(); -//} - -//-------------------------------member functions - -/** - * Enables/disables the SPEventContext's SelCue. - */ -void SPEventContext::enableSelectionCue(bool enable) { +void ToolBase::enableSelectionCue(bool enable) { if (enable) { if (!_selcue) { _selcue = new Inkscape::SelCue(desktop); @@ -969,9 +900,9 @@ void SPEventContext::enableSelectionCue(bool enable) { } /** - * Enables/disables the SPEventContext's GrDrag. + * Enables/disables the ToolBase's GrDrag. */ -void SPEventContext::enableGrDrag(bool enable) { +void ToolBase::enableGrDrag(bool enable) { if (enable) { if (!_grdrag) { _grdrag = new GrDrag(desktop); @@ -987,7 +918,7 @@ void SPEventContext::enableGrDrag(bool enable) { /** * Delete a selected GrDrag point */ -bool SPEventContext::deleteSelectedDrag(bool just_one) { +bool ToolBase::deleteSelectedDrag(bool just_one) { if (_grdrag && _grdrag->selected) { _grdrag->deleteSelected(just_one); @@ -998,58 +929,22 @@ bool SPEventContext::deleteSelectedDrag(bool just_one) { } /** - * Calls virtual set() function of SPEventContext. + * Calls virtual set() function of ToolBase. */ -void sp_event_context_read(SPEventContext *ec, gchar const *key) { +void sp_event_context_read(ToolBase *ec, gchar const *key) { g_return_if_fail(ec != NULL); g_return_if_fail(SP_IS_EVENT_CONTEXT(ec)); g_return_if_fail(key != NULL); -// if ((SP_EVENT_CONTEXT_CLASS(G_OBJECT_GET_CLASS(ec)))->set) { -// Inkscape::Preferences *prefs = Inkscape::Preferences::get(); -// Inkscape::Preferences::Entry val = prefs->getEntry( -// ec->pref_observer->observed_path + '/' + key); -// (SP_EVENT_CONTEXT_CLASS(G_OBJECT_GET_CLASS(ec)))->set(ec, &val); -// } - Inkscape::Preferences *prefs = Inkscape::Preferences::get(); Inkscape::Preferences::Entry val = prefs->getEntry(ec->pref_observer->observed_path + '/' + key); ec->set(val); } /** - * Calls virtual activate() function of SPEventContext. - */ -void sp_event_context_activate(SPEventContext *ec) { - g_return_if_fail(ec != NULL); - g_return_if_fail(SP_IS_EVENT_CONTEXT(ec)); - - // Make sure no delayed snapping events are carried over after switching contexts - // (this is only an additional safety measure against sloppy coding, because each - // context should take care of this by itself. - sp_event_context_discard_delayed_snap_event(ec); - -// if ((SP_EVENT_CONTEXT_CLASS(G_OBJECT_GET_CLASS(ec)))->activate) -// (SP_EVENT_CONTEXT_CLASS(G_OBJECT_GET_CLASS(ec)))->activate(ec); - ec->activate(); -} - -/** - * Calls virtual deactivate() function of SPEventContext. - */ -//void sp_event_context_deactivate(SPEventContext *ec) { -// g_return_if_fail(ec != NULL); -// g_return_if_fail(SP_IS_EVENT_CONTEXT(ec)); -// -//// if ((SP_EVENT_CONTEXT_CLASS(G_OBJECT_GET_CLASS(ec)))->deactivate) -//// (SP_EVENT_CONTEXT_CLASS(G_OBJECT_GET_CLASS(ec)))->deactivate(ec); -// ec->deactivate(); -//} - -/** * Calls virtual root_handler(), the main event handling function. */ -gint sp_event_context_root_handler(SPEventContext * event_context, +gint sp_event_context_root_handler(ToolBase * event_context, GdkEvent * event) { switch (event->type) { @@ -1080,7 +975,7 @@ gint sp_event_context_root_handler(SPEventContext * event_context, return sp_event_context_virtual_root_handler(event_context, event); } -gint sp_event_context_virtual_root_handler(SPEventContext * event_context, GdkEvent * event) { +gint sp_event_context_virtual_root_handler(ToolBase * event_context, GdkEvent * event) { gint ret = false; if (event_context) { // If no event-context is available then do nothing, otherwise Inkscape would crash // (see the comment in SPDesktop::set_event_context, and bug LP #622350) @@ -1095,7 +990,7 @@ gint sp_event_context_virtual_root_handler(SPEventContext * event_context, GdkEv /** * Calls virtual item_handler(), the item event handling function. */ -gint sp_event_context_item_handler(SPEventContext * event_context, +gint sp_event_context_item_handler(ToolBase * event_context, SPItem * item, GdkEvent * event) { switch (event->type) { case GDK_MOTION_NOTIFY: @@ -1121,7 +1016,7 @@ gint sp_event_context_item_handler(SPEventContext * event_context, return sp_event_context_virtual_item_handler(event_context, item, event); } -gint sp_event_context_virtual_item_handler(SPEventContext * event_context, SPItem * item, GdkEvent * event) { +gint sp_event_context_virtual_item_handler(ToolBase * event_context, SPItem * item, GdkEvent * event) { gint ret = false; if (event_context) { // If no event-context is available then do nothing, otherwise Inkscape would crash // (see the comment in SPDesktop::set_event_context, and bug LP #622350) @@ -1269,7 +1164,7 @@ sp_event_context_over_item(SPDesktop *desktop, SPItem *item, } ShapeEditor * -sp_event_context_get_shape_editor(SPEventContext *ec) { +sp_event_context_get_shape_editor(ToolBase *ec) { return ec->shape_editor; } @@ -1326,7 +1221,7 @@ void event_context_print_event_info(GdkEvent *event, bool print_return) { * @param event Pointer to the motion event. * @param origin Identifier (enum) specifying where the delay (and the call to this method) were initiated. */ -void sp_event_context_snap_delay_handler(SPEventContext *ec, +void sp_event_context_snap_delay_handler(ToolBase *ec, gpointer const dse_item, gpointer const dse_item2, GdkEventMotion *event, DelayedSnapEvent::DelayedSnapEventOrigin origin) { @@ -1415,7 +1310,7 @@ gboolean sp_event_context_snap_watchdog_callback(gpointer data) { return FALSE; } - SPEventContext *ec = dse->getEventContext(); + ToolBase *ec = dse->getEventContext(); if (ec == NULL) { delete dse; return false; @@ -1513,12 +1408,16 @@ gboolean sp_event_context_snap_watchdog_callback(gpointer data) { return FALSE; //Kills the timer and stops it from executing this callback over and over again. } -void sp_event_context_discard_delayed_snap_event(SPEventContext *ec) { +void sp_event_context_discard_delayed_snap_event(ToolBase *ec) { delete ec->_delayed_snap_event; ec->_delayed_snap_event = NULL; ec->desktop->namedview->snap_manager.snapprefs.setSnapPostponedGlobally(false); } +} +} +} + /* Local Variables: mode:c++ diff --git a/src/event-context.h b/src/ui/tools/tool-base.h index 33bab5e3e..7ed5875b1 100644 --- a/src/event-context.h +++ b/src/ui/tools/tool-base.h @@ -23,7 +23,6 @@ class GrDrag; class SPDesktop; class SPItem; class ShapeEditor; -class SPEventContext; namespace Inkscape { class MessageContext; @@ -33,11 +32,17 @@ namespace Inkscape { } } -#define SP_EVENT_CONTEXT(obj) (dynamic_cast<SPEventContext*>((SPEventContext*)obj)) -#define SP_IS_EVENT_CONTEXT(obj) (dynamic_cast<const SPEventContext*>((const SPEventContext*)obj) != NULL) +#define SP_EVENT_CONTEXT(obj) (dynamic_cast<Inkscape::UI::Tools::ToolBase*>((Inkscape::UI::Tools::ToolBase*)obj)) +#define SP_IS_EVENT_CONTEXT(obj) (dynamic_cast<const Inkscape::UI::Tools::ToolBase*>((const Inkscape::UI::Tools::ToolBase*)obj) != NULL) + +namespace Inkscape { +namespace UI { +namespace Tools { + +class ToolBase; gboolean sp_event_context_snap_watchdog_callback(gpointer data); -void sp_event_context_discard_delayed_snap_event(SPEventContext *ec); +void sp_event_context_discard_delayed_snap_event(ToolBase *ec); class DelayedSnapEvent { @@ -53,7 +58,7 @@ public: GUIDE_VRULER }; - DelayedSnapEvent(SPEventContext *event_context, gpointer const dse_item, gpointer dse_item2, GdkEventMotion const *event, DelayedSnapEvent::DelayedSnapEventOrigin const origin) + DelayedSnapEvent(ToolBase *event_context, gpointer const dse_item, gpointer dse_item2, GdkEventMotion const *event, DelayedSnapEvent::DelayedSnapEventOrigin const origin) : _timer_id(0), _event(NULL), _item(dse_item), _item2(dse_item2), _origin(origin), _event_context(event_context) { Inkscape::Preferences *prefs = Inkscape::Preferences::get(); @@ -68,7 +73,7 @@ public: if (_event != NULL) gdk_event_free(_event); // Remove the copy of the original event } - SPEventContext* getEventContext() {return _event_context;} + ToolBase* getEventContext() {return _event_context;} DelayedSnapEventOrigin getOrigin() {return _origin;} GdkEvent* getEvent() {return _event;} gpointer getItem() {return _item;} @@ -80,10 +85,10 @@ private: gpointer _item; gpointer _item2; DelayedSnapEventOrigin _origin; - SPEventContext* _event_context; + ToolBase* _event_context; }; -void sp_event_context_snap_delay_handler(SPEventContext *ec, gpointer const dse_item, gpointer const dse_item2, GdkEventMotion *event, DelayedSnapEvent::DelayedSnapEventOrigin origin); +void sp_event_context_snap_delay_handler(ToolBase *ec, gpointer const dse_item, gpointer const dse_item2, GdkEventMotion *event, DelayedSnapEvent::DelayedSnapEventOrigin origin); /** @@ -92,26 +97,23 @@ void sp_event_context_snap_delay_handler(SPEventContext *ec, gpointer const dse_ * This is per desktop object, which (its derivatives) implements * different actions bound to mouse events. * - * SPEventContext is an abstract base class of all tools. As the name + * ToolBase is an abstract base class of all tools. As the name * indicates, event context implementations process UI events (mouse * movements and keypresses) and take actions (like creating or modifying * objects). There is one event context implementation for each tool, * plus few abstract base classes. Writing a new tool involves - * subclassing SPEventContext. + * subclassing ToolBase. */ -class SPEventContext { +class ToolBase { public: void enableSelectionCue (bool enable=true); void enableGrDrag (bool enable=true); bool deleteSelectedDrag(bool just_one); - SPEventContext(); - virtual ~SPEventContext(); + ToolBase(); + virtual ~ToolBase(); - SPDesktop *desktop; Inkscape::Preferences::Observer *pref_observer; - gchar const *const *cursor_shape; - gint hot_x, hot_y; ///< indicates the cursor's hot spot GdkCursor *cursor; gint xp, yp; ///< where drag started @@ -145,9 +147,6 @@ public: // Is called by our pref_observer if a preference has been changed. virtual void set(const Inkscape::Preferences::Entry& val); - virtual void activate(); - virtual void deactivate(); - virtual bool root_handler(GdkEvent* event); virtual bool item_handler(SPItem* item, GdkEvent* event); @@ -158,7 +157,7 @@ public: */ class ToolPrefObserver: public Inkscape::Preferences::Observer { public: - ToolPrefObserver(Glib::ustring const &path, SPEventContext *ec) : + ToolPrefObserver(Glib::ustring const &path, ToolBase *ec) : Inkscape::Preferences::Observer(path), ec(ec) { } @@ -167,40 +166,38 @@ public: } private: - SPEventContext * const ec; + ToolBase * const ec; }; + SPDesktop const& getDesktop() const; + + //protected: void sp_event_context_update_cursor(); -private: - SPEventContext(const SPEventContext&); - SPEventContext& operator=(const SPEventContext&); -}; + SPDesktop *desktop; -#define SP_EVENT_CONTEXT_DESKTOP(e) (SP_EVENT_CONTEXT(e)->desktop) -#define SP_EVENT_CONTEXT_DOCUMENT(e) ((SP_EVENT_CONTEXT_DESKTOP(e))->doc()) +protected: + gchar const *const *cursor_shape; + gint hot_x, hot_y; ///< indicates the cursor's hot spot -#define SP_EVENT_CONTEXT_STATIC 0 +private: + ToolBase(const ToolBase&); + ToolBase& operator=(const ToolBase&); +}; -//SPEventContext *sp_event_context_new(GType type, SPDesktop *desktop, gchar const *pref_path, unsigned key); -//void sp_event_context_finish(SPEventContext *ec); -void sp_event_context_read(SPEventContext *ec, gchar const *key); -void sp_event_context_activate(SPEventContext *ec); -//void sp_event_context_deactivate(SPEventContext *ec); +void sp_event_context_read(ToolBase *ec, gchar const *key); -gint sp_event_context_root_handler(SPEventContext *ec, GdkEvent *event); -gint sp_event_context_virtual_root_handler(SPEventContext *ec, GdkEvent *event); -gint sp_event_context_item_handler(SPEventContext *ec, SPItem *item, GdkEvent *event); -gint sp_event_context_virtual_item_handler(SPEventContext *ec, SPItem *item, GdkEvent *event); +gint sp_event_context_root_handler(ToolBase *ec, GdkEvent *event); +gint sp_event_context_virtual_root_handler(ToolBase *ec, GdkEvent *event); +gint sp_event_context_item_handler(ToolBase *ec, SPItem *item, GdkEvent *event); +gint sp_event_context_virtual_item_handler(ToolBase *ec, SPItem *item, GdkEvent *event); void sp_event_root_menu_popup(SPDesktop *desktop, SPItem *item, GdkEvent *event); gint gobble_key_events(guint keyval, gint mask); gint gobble_motion_events(gint mask); -//void sp_event_context_update_cursor(SPEventContext *ec); - void sp_event_show_modifier_tip(Inkscape::MessageContext *message_context, GdkEvent *event, gchar const *ctrl_tip, gchar const *shift_tip, gchar const *alt_tip); @@ -211,14 +208,11 @@ SPItem *sp_event_context_over_item (SPDesktop *desktop, SPItem *item, Geom::Poin void sp_toggle_dropper(SPDesktop *dt); -//ShapeEditor *sp_event_context_get_shape_editor (SPEventContext *ec); -bool sp_event_context_knot_mouseover(SPEventContext *ec); +bool sp_event_context_knot_mouseover(ToolBase *ec); -//void ec_shape_event_attr_changed(Inkscape::XML::Node *shape_repr, -// gchar const *name, gchar const *old_value, gchar const *new_value, -// bool const is_interactive, gpointer const data); -// -//void event_context_print_event_info(GdkEvent *event, bool print_return = true); +} +} +} #endif // SEEN_SP_EVENT_CONTEXT_H diff --git a/src/tweak-context.cpp b/src/ui/tools/tweak-tool.cpp index a8841985d..0791eff5a 100644 --- a/src/tweak-context.cpp +++ b/src/ui/tools/tweak-tool.cpp @@ -83,7 +83,7 @@ #include "filters/gaussian-blur.h" #include "verbs.h" -#include "tweak-context.h" +#include "ui/tools/tweak-tool.h" using Inkscape::DocumentUndo; @@ -93,21 +93,25 @@ using Inkscape::DocumentUndo; #include "tool-factory.h" +namespace Inkscape { +namespace UI { +namespace Tools { + namespace { - SPEventContext* createTweakContext() { - return new SPTweakContext(); + ToolBase* createTweakContext() { + return new TweakTool(); } bool tweakContextRegistered = ToolFactory::instance().registerObject("/tools/tweak", createTweakContext); } -const std::string& SPTweakContext::getPrefsPath() { - return SPTweakContext::prefsPath; +const std::string& TweakTool::getPrefsPath() { + return TweakTool::prefsPath; } -const std::string SPTweakContext::prefsPath = "/tools/tweak"; +const std::string TweakTool::prefsPath = "/tools/tweak"; -SPTweakContext::SPTweakContext() : SPEventContext() { +TweakTool::TweakTool() : ToolBase() { this->mode = 0; this->dilate_area = 0; this->usetilt = 0; @@ -135,7 +139,7 @@ SPTweakContext::SPTweakContext() : SPEventContext() { this->do_o = false; } -SPTweakContext::~SPTweakContext() { +TweakTool::~TweakTool() { this->enableGrDrag(false); this->style_set_connection.disconnect(); @@ -161,7 +165,7 @@ static bool is_color_mode (gint mode) return (mode == TWEAK_MODE_COLORPAINT || mode == TWEAK_MODE_COLORJITTER || mode == TWEAK_MODE_BLUR); } -void SPTweakContext::update_cursor (bool with_shift) { +void TweakTool::update_cursor (bool with_shift) { guint num = 0; gchar *sel_message = NULL; @@ -255,7 +259,7 @@ void SPTweakContext::update_cursor (bool with_shift) { g_free(sel_message); } -bool SPTweakContext::set_style(const SPCSSAttr* css) { +bool TweakTool::set_style(const SPCSSAttr* css) { if (this->mode == TWEAK_MODE_COLORPAINT) { // intercept color setting only in this mode // we cannot store properties with uris css = sp_css_attr_unset_uris(const_cast<SPCSSAttr *>(css)); @@ -267,8 +271,8 @@ bool SPTweakContext::set_style(const SPCSSAttr* css) { return false; } -void SPTweakContext::setup() { - SPEventContext::setup(); +void TweakTool::setup() { + ToolBase::setup(); { /* TODO: have a look at sp_dyna_draw_context_setup where the same is done.. generalize? at least make it an arcto! */ @@ -298,7 +302,7 @@ void SPTweakContext::setup() { this->style_set_connection = this->desktop->connectSetStyle( // catch style-setting signal in this tool //sigc::bind(sigc::ptr_fun(&sp_tweak_context_style_set), this) - sigc::mem_fun(this, &SPTweakContext::set_style) + sigc::mem_fun(this, &TweakTool::set_style) ); Inkscape::Preferences *prefs = Inkscape::Preferences::get(); @@ -310,7 +314,7 @@ void SPTweakContext::setup() { } } -void SPTweakContext::set(const Inkscape::Preferences::Entry& val) { +void TweakTool::set(const Inkscape::Preferences::Entry& val) { Glib::ustring path = val.getEntryName(); if (path == "width") { @@ -336,7 +340,7 @@ void SPTweakContext::set(const Inkscape::Preferences::Entry& val) { } static void -sp_tweak_extinput(SPTweakContext *tc, GdkEvent *event) +sp_tweak_extinput(TweakTool *tc, GdkEvent *event) { if (gdk_event_get_axis (event, GDK_AXIS_PRESSURE, &tc->pressure)) { tc->pressure = CLAMP (tc->pressure, TC_MIN_PRESSURE, TC_MAX_PRESSURE); @@ -346,14 +350,14 @@ sp_tweak_extinput(SPTweakContext *tc, GdkEvent *event) } static double -get_dilate_radius (SPTweakContext *tc) +get_dilate_radius (TweakTool *tc) { // 10 times the pen width: return 500 * tc->width/SP_EVENT_CONTEXT(tc)->desktop->current_zoom(); } static double -get_path_force (SPTweakContext *tc) +get_path_force (TweakTool *tc) { double force = 8 * (tc->usepressure? tc->pressure : TC_DEFAULT_PRESSURE) /sqrt(SP_EVENT_CONTEXT(tc)->desktop->current_zoom()); @@ -364,7 +368,7 @@ get_path_force (SPTweakContext *tc) } static double -get_move_force (SPTweakContext *tc) +get_move_force (TweakTool *tc) { double force = (tc->usepressure? tc->pressure : TC_DEFAULT_PRESSURE); return force * tc->force; @@ -1021,7 +1025,7 @@ sp_tweak_color_recursive (guint mode, SPItem *item, SPItem *item_at_point, static bool -sp_tweak_dilate (SPTweakContext *tc, Geom::Point event_p, Geom::Point p, Geom::Point vector, bool reverse) +sp_tweak_dilate (TweakTool *tc, Geom::Point event_p, Geom::Point p, Geom::Point vector, bool reverse) { Inkscape::Selection *selection = sp_desktop_selection(SP_EVENT_CONTEXT(tc)->desktop); SPDesktop *desktop = SP_EVENT_CONTEXT(tc)->desktop; @@ -1111,7 +1115,7 @@ sp_tweak_dilate (SPTweakContext *tc, Geom::Point event_p, Geom::Point p, Geom::P } static void -sp_tweak_update_area (SPTweakContext *tc) +sp_tweak_update_area (TweakTool *tc) { double radius = get_dilate_radius(tc); Geom::Affine const sm (Geom::Scale(radius, radius) * Geom::Translate(SP_EVENT_CONTEXT(tc)->desktop->point())); @@ -1120,7 +1124,7 @@ sp_tweak_update_area (SPTweakContext *tc) } static void -sp_tweak_switch_mode (SPTweakContext *tc, gint mode, bool with_shift) +sp_tweak_switch_mode (TweakTool *tc, gint mode, bool with_shift) { SP_EVENT_CONTEXT(tc)->desktop->setToolboxSelectOneValue ("tweak_tool_mode", mode); // need to set explicitly, because the prefs may not have changed by the previous @@ -1129,7 +1133,7 @@ sp_tweak_switch_mode (SPTweakContext *tc, gint mode, bool with_shift) } static void -sp_tweak_switch_mode_temporarily (SPTweakContext *tc, gint mode, bool with_shift) +sp_tweak_switch_mode_temporarily (TweakTool *tc, gint mode, bool with_shift) { Inkscape::Preferences *prefs = Inkscape::Preferences::get(); // Juggling about so that prefs have the old value but tc->mode and the button show new mode: @@ -1142,7 +1146,7 @@ sp_tweak_switch_mode_temporarily (SPTweakContext *tc, gint mode, bool with_shift tc->update_cursor(with_shift); } -bool SPTweakContext::root_handler(GdkEvent* event) { +bool TweakTool::root_handler(GdkEvent* event) { gint ret = FALSE; switch (event->type) { @@ -1498,12 +1502,15 @@ bool SPTweakContext::root_handler(GdkEvent* event) { } if (!ret) { - ret = SPEventContext::root_handler(event); + ret = ToolBase::root_handler(event); } return ret; } +} +} +} /* Local Variables: diff --git a/src/tweak-context.h b/src/ui/tools/tweak-tool.h index da1a50a79..6cbb9aded 100644 --- a/src/tweak-context.h +++ b/src/ui/tools/tweak-tool.h @@ -12,7 +12,7 @@ * Released under GNU GPL, read the file 'COPYING' for more information */ -#include "event-context.h" +#include "ui/tools/tool-base.h" #include <2geom/point.h> #define SAMPLING_SIZE 8 /* fixme: ?? */ @@ -21,6 +21,10 @@ #define TC_MAX_PRESSURE 1.0 #define TC_DEFAULT_PRESSURE 0.35 +namespace Inkscape { +namespace UI { +namespace Tools { + enum { TWEAK_MODE_MOVE, TWEAK_MODE_MOVE_IN_OUT, @@ -37,10 +41,10 @@ enum { TWEAK_MODE_BLUR }; -class SPTweakContext : public SPEventContext { +class TweakTool : public ToolBase { public: - SPTweakContext(); - virtual ~SPTweakContext(); + TweakTool(); + virtual ~TweakTool(); /* extended input data */ gdouble pressure; @@ -84,6 +88,10 @@ private: bool set_style(const SPCSSAttr* css); }; +} +} +} + #endif /* diff --git a/src/zoom-context.cpp b/src/ui/tools/zoom-tool.cpp index 6efc122f7..d4ede1053 100644 --- a/src/zoom-context.cpp +++ b/src/ui/tools/zoom-tool.cpp @@ -24,24 +24,28 @@ #include "preferences.h" #include "selection-chemistry.h" -#include "zoom-context.h" +#include "ui/tools/zoom-tool.h" #include "tool-factory.h" +namespace Inkscape { +namespace UI { +namespace Tools { + namespace { - SPEventContext* createZoomContext() { - return new SPZoomContext(); + ToolBase* createZoomContext() { + return new ZoomTool(); } bool zoomContextRegistered = ToolFactory::instance().registerObject("/tools/zoom", createZoomContext); } -const std::string& SPZoomContext::getPrefsPath() { - return SPZoomContext::prefsPath; +const std::string& ZoomTool::getPrefsPath() { + return ZoomTool::prefsPath; } -const std::string SPZoomContext::prefsPath = "/tools/zoom"; +const std::string ZoomTool::prefsPath = "/tools/zoom"; -SPZoomContext::SPZoomContext() : SPEventContext() { +ZoomTool::ZoomTool() : ToolBase() { this->grabbed = 0; this->cursor_shape = cursor_zoom_xpm; this->hot_x = 6; @@ -49,10 +53,10 @@ SPZoomContext::SPZoomContext() : SPEventContext() { this->escaped = false; } -SPZoomContext::~SPZoomContext() { +ZoomTool::~ZoomTool() { } -void SPZoomContext::finish() { +void ZoomTool::finish() { this->enableGrDrag(false); if (this->grabbed) { @@ -61,7 +65,7 @@ void SPZoomContext::finish() { } } -void SPZoomContext::setup() { +void ZoomTool::setup() { Inkscape::Preferences *prefs = Inkscape::Preferences::get(); if (prefs->getBool("/tools/zoom/selcue")) { @@ -72,10 +76,10 @@ void SPZoomContext::setup() { this->enableGrDrag(); } - SPEventContext::setup(); + ToolBase::setup(); } -bool SPZoomContext::root_handler(GdkEvent* event) { +bool ZoomTool::root_handler(GdkEvent* event) { Inkscape::Preferences *prefs = Inkscape::Preferences::get(); tolerance = prefs->getIntLimited("/options/dragtolerance/value", 0, 0, 100); @@ -224,12 +228,16 @@ bool SPZoomContext::root_handler(GdkEvent* event) { } if (!ret) { - ret = SPEventContext::root_handler(event); + ret = ToolBase::root_handler(event); } return ret; } +} +} +} + /* Local Variables: mode:c++ diff --git a/src/zoom-context.h b/src/ui/tools/zoom-tool.h index 3e98915af..6e5cca7aa 100644 --- a/src/zoom-context.h +++ b/src/ui/tools/zoom-tool.h @@ -13,15 +13,19 @@ * Released under GNU GPL, read the file 'COPYING' for more information */ -#include "event-context.h" +#include "ui/tools/tool-base.h" -#define SP_ZOOM_CONTEXT(obj) (dynamic_cast<SPZoomContext*>((SPEventContext*)obj)) -#define SP_IS_ZOOM_CONTEXT(obj) (dynamic_cast<const SPZoomContext*>((const SPEventContext*)obj) != NULL) +#define SP_ZOOM_CONTEXT(obj) (dynamic_cast<Inkscape::UI::Tools::ZoomTool*>((Inkscape::UI::Tools::ToolBase*)obj)) +#define SP_IS_ZOOM_CONTEXT(obj) (dynamic_cast<const Inkscape::UI::Tools::ZoomTool*>((const Inkscape::UI::Tools::ToolBase*)obj) != NULL) -class SPZoomContext : public SPEventContext { +namespace Inkscape { +namespace UI { +namespace Tools { + +class ZoomTool : public ToolBase { public: - SPZoomContext(); - virtual ~SPZoomContext(); + ZoomTool(); + virtual ~ZoomTool(); static const std::string prefsPath; @@ -36,4 +40,8 @@ private: bool escaped; }; +} +} +} + #endif diff --git a/src/ui/widget/rotateable.cpp b/src/ui/widget/rotateable.cpp index 18d53bf5c..72ec69362 100644 --- a/src/ui/widget/rotateable.cpp +++ b/src/ui/widget/rotateable.cpp @@ -19,7 +19,7 @@ #include <gtkmm/eventbox.h> #include <glibmm/i18n.h> #include <2geom/point.h> -#include "event-context.h" +#include "ui/tools/tool-base.h" #include "rotateable.h" namespace Inkscape { @@ -111,7 +111,7 @@ bool Rotateable::on_motion(GdkEventMotion *event) { do_motion(force, modifier); } } - gobble_motion_events(GDK_BUTTON1_MASK); + Inkscape::UI::Tools::gobble_motion_events(GDK_BUTTON1_MASK); return true; } return false; diff --git a/src/ui/widget/selected-style.cpp b/src/ui/widget/selected-style.cpp index 3a6b0c7df..aa617353c 100644 --- a/src/ui/widget/selected-style.cpp +++ b/src/ui/widget/selected-style.cpp @@ -39,7 +39,7 @@ #include "sp-gradient.h" #include "svg/svg-color.h" #include "svg/css-ostringstream.h" -#include "event-context.h" +#include "ui/tools/tool-base.h" #include "message-context.h" #include "verbs.h" #include "color.h" @@ -1439,9 +1439,7 @@ RotateableStrokeWidth::RotateableStrokeWidth(SelectedStyle *parent) : parent(parent), startvalue(0), startvalue_set(false), - undokey("swrot1"), - cr(0), - cr_set(false) + undokey("swrot1") { } diff --git a/src/ui/widget/selected-style.h b/src/ui/widget/selected-style.h index 21e5575ed..9557a8d74 100644 --- a/src/ui/widget/selected-style.h +++ b/src/ui/widget/selected-style.h @@ -115,9 +115,6 @@ private: bool startvalue_set; gchar const *undokey; - - GdkCursor *cr; - bool cr_set; }; /** diff --git a/src/ui/widget/spinbutton.cpp b/src/ui/widget/spinbutton.cpp index 6cbc15c1b..7709a837b 100644 --- a/src/ui/widget/spinbutton.cpp +++ b/src/ui/widget/spinbutton.cpp @@ -16,7 +16,7 @@ #include "unit-menu.h" #include "unit-tracker.h" #include "util/expression-evaluator.h" -#include "event-context.h" +#include "ui/tools/tool-base.h" namespace Inkscape { namespace UI { @@ -71,7 +71,7 @@ bool SpinButton::on_my_focus_in_event(GdkEventFocus* /*event*/) bool SpinButton::on_my_key_press_event(GdkEventKey* event) { - switch (get_group0_keyval (event)) { + switch (Inkscape::UI::Tools::get_group0_keyval (event)) { case GDK_KEY_Escape: undo(); return true; // I consumed the event diff --git a/src/vanishing-point.cpp b/src/vanishing-point.cpp index 3adcfbb40..361a7a0de 100644 --- a/src/vanishing-point.cpp +++ b/src/vanishing-point.cpp @@ -19,7 +19,7 @@ #include "desktop.h" #include "display/sp-canvas-item.h" #include "display/sp-ctrlline.h" -#include "event-context.h" +#include "ui/tools/tool-base.h" #include "xml/repr.h" #include "perspective-line.h" #include "shape-editor.h" @@ -632,7 +632,7 @@ VPDrag::updateBoxHandles () return; } - SPEventContext *ec = inkscape_active_event_context(); + Inkscape::UI::Tools::ToolBase *ec = inkscape_active_event_context(); g_assert (ec != NULL); if (ec->shape_editor != NULL) { ec->shape_editor->update_knotholder(); diff --git a/src/verbs.cpp b/src/verbs.cpp index bdef0526a..329e63115 100644 --- a/src/verbs.cpp +++ b/src/verbs.cpp @@ -44,9 +44,9 @@ #include "desktop-handles.h" #include "display/curve.h" #include "document.h" -#include "draw-context.h" +#include "ui/tools/freehand-base.h" #include "extension/effect.h" -#include "event-context.h" +#include "ui/tools/tool-base.h" #include "file.h" #include "gradient-drag.h" #include "helper/action.h" @@ -59,7 +59,7 @@ #include "message-stack.h" #include "path-chemistry.h" #include "preferences.h" -#include "select-context.h" +#include "ui/tools/select-tool.h" #include "selection-chemistry.h" #include "seltrans.h" #include "shape-editor.h" @@ -86,7 +86,7 @@ #include "ui/dialog/symbols.h" #include "ui/dialog/spellcheck.h" #include "ui/icon-names.h" -#include "ui/tool/node-tool.h" +#include "ui/tools/node-tool.h" #include "selection.h" #include <gtk/gtk.h> @@ -1473,7 +1473,7 @@ void ObjectVerb::perform( SPAction *action, void *data) g_return_if_fail(ensure_desktop_valid(action)); - SPEventContext *ec = dt->event_context; + Inkscape::UI::Tools::ToolBase *ec = dt->event_context; if (sel->isEmpty()) return; @@ -1622,7 +1622,7 @@ void ContextVerb::perform(SPAction *action, void *data) tools_switch(dt, TOOLS_MEASURE); break; case SP_VERB_CONTEXT_DROPPER: - sp_toggle_dropper(dt); // Functionality defined in event-context.cpp + Inkscape::UI::Tools::sp_toggle_dropper(dt); // Functionality defined in event-context.cpp break; case SP_VERB_CONTEXT_CONNECTOR: tools_switch(dt, TOOLS_CONNECTOR); @@ -1767,7 +1767,7 @@ void ZoomVerb::perform(SPAction *action, void *data) { g_return_if_fail(ensure_desktop_valid(action)); SPDesktop *dt = sp_action_get_desktop(action); - SPEventContext *ec = dt->event_context; + Inkscape::UI::Tools::ToolBase *ec = dt->event_context; SPDocument *doc = sp_desktop_document(dt); @@ -1780,7 +1780,7 @@ void ZoomVerb::perform(SPAction *action, void *data) switch (reinterpret_cast<std::size_t>(data)) { case SP_VERB_ZOOM_IN: { - gint mul = 1 + gobble_key_events( + gint mul = 1 + Inkscape::UI::Tools::gobble_key_events( GDK_KEY_KP_Add, 0); // with any mask // While drawing with the pen/pencil tool, zoom towards the end of the unfinished path if (tools_isactive(dt, TOOLS_FREEHAND_PENCIL) || tools_isactive(dt, TOOLS_FREEHAND_PEN)) { @@ -1798,7 +1798,7 @@ void ZoomVerb::perform(SPAction *action, void *data) } case SP_VERB_ZOOM_OUT: { - gint mul = 1 + gobble_key_events( + gint mul = 1 + Inkscape::UI::Tools::gobble_key_events( GDK_KEY_KP_Subtract, 0); // with any mask // While drawing with the pen/pencil tool, zoom away from the end of the unfinished path if (tools_isactive(dt, TOOLS_FREEHAND_PENCIL) || tools_isactive(dt, TOOLS_FREEHAND_PEN)) { diff --git a/src/widgets/arc-toolbar.cpp b/src/widgets/arc-toolbar.cpp index 5569780e7..69b540762 100644 --- a/src/widgets/arc-toolbar.cpp +++ b/src/widgets/arc-toolbar.cpp @@ -56,7 +56,7 @@ #include "../xml/repr.h" #include "ui/uxmanager.h" #include "../ui/icon-names.h" -#include "../pen-context.h" +#include "ui/tools/pen-tool.h" #include "../sp-ellipse.h" #include "../mod360.h" diff --git a/src/widgets/box3d-toolbar.cpp b/src/widgets/box3d-toolbar.cpp index 91d4ebdec..32516bbfb 100644 --- a/src/widgets/box3d-toolbar.cpp +++ b/src/widgets/box3d-toolbar.cpp @@ -58,9 +58,9 @@ #include "../ui/icon-names.h" -#include "../pen-context.h" +#include "ui/tools/pen-tool.h" -#include "../box3d-context.h" +#include "ui/tools/box3d-tool.h" #include "../box3d.h" using Inkscape::UI::UXManager; diff --git a/src/widgets/calligraphy-toolbar.cpp b/src/widgets/calligraphy-toolbar.cpp index 12228ce56..9f08d3462 100644 --- a/src/widgets/calligraphy-toolbar.cpp +++ b/src/widgets/calligraphy-toolbar.cpp @@ -57,7 +57,7 @@ #include "ui/uxmanager.h" #include "../ui/icon-names.h" -#include "../pen-context.h" +#include "ui/tools/pen-tool.h" using Inkscape::UI::UXManager; using Inkscape::DocumentUndo; diff --git a/src/widgets/connector-toolbar.cpp b/src/widgets/connector-toolbar.cpp index 2e5c2ade1..7230f521c 100644 --- a/src/widgets/connector-toolbar.cpp +++ b/src/widgets/connector-toolbar.cpp @@ -55,10 +55,10 @@ #include "../xml/repr.h" #include "ui/uxmanager.h" #include "../ui/icon-names.h" -#include "../pen-context.h" +#include "ui/tools/pen-tool.h" #include "../sp-namedview.h" #include "../conn-avoid-ref.h" -#include "../connector-context.h" +#include "ui/tools/connector-tool.h" #include "../graphlayout.h" #include "../sp-path.h" @@ -76,13 +76,13 @@ using Inkscape::UI::PrefPusher; static void sp_connector_path_set_avoid(void) { - cc_selection_set_avoid(true); + Inkscape::UI::Tools::cc_selection_set_avoid(true); } static void sp_connector_path_set_ignore(void) { - cc_selection_set_avoid(false); + Inkscape::UI::Tools::cc_selection_set_avoid(false); } static void sp_connector_orthogonal_toggled( GtkToggleAction* act, GObject *tbl ) @@ -114,7 +114,7 @@ static void sp_connector_orthogonal_toggled( GtkToggleAction* act, GObject *tbl while (l) { SPItem *item = SP_ITEM(l->data); - if (cc_item_is_connector(item)) { + if (Inkscape::UI::Tools::cc_item_is_connector(item)) { item->setAttribute( "inkscape:connector-type", value, NULL); item->avoidRef->handleSettingChange(); @@ -163,7 +163,7 @@ static void connector_curvature_changed(GtkAdjustment *adj, GObject* tbl) while (l) { SPItem *item = SP_ITEM(l->data); - if (cc_item_is_connector(item)) { + if (Inkscape::UI::Tools::cc_item_is_connector(item)) { item->setAttribute( "inkscape:connector-curvature", value, NULL); item->avoidRef->handleSettingChange(); diff --git a/src/widgets/desktop-widget.cpp b/src/widgets/desktop-widget.cpp index 3ca433586..7e254cdcd 100644 --- a/src/widgets/desktop-widget.cpp +++ b/src/widgets/desktop-widget.cpp @@ -27,7 +27,7 @@ #include <2geom/rect.h> #include "ui/dialog/dialog-manager.h" -#include "box3d-context.h" +#include "ui/tools/box3d-tool.h" #include "cms-system.h" #include "conn-avoid-ref.h" #include "desktop.h" diff --git a/src/widgets/dropper-toolbar.cpp b/src/widgets/dropper-toolbar.cpp index 054955d8f..991489b86 100644 --- a/src/widgets/dropper-toolbar.cpp +++ b/src/widgets/dropper-toolbar.cpp @@ -54,7 +54,7 @@ #include "../xml/repr.h" #include "ui/uxmanager.h" #include "../ui/icon-names.h" -#include "../pen-context.h" +#include "ui/tools/pen-tool.h" #include "../tools-switch.h" using Inkscape::UI::UXManager; diff --git a/src/widgets/eraser-toolbar.cpp b/src/widgets/eraser-toolbar.cpp index 1af574ed6..5e09521c9 100644 --- a/src/widgets/eraser-toolbar.cpp +++ b/src/widgets/eraser-toolbar.cpp @@ -55,7 +55,7 @@ #include "../xml/repr.h" #include "ui/uxmanager.h" #include "../ui/icon-names.h" -#include "../pen-context.h" +#include "ui/tools/pen-tool.h" using Inkscape::UI::UXManager; diff --git a/src/widgets/fill-style.cpp b/src/widgets/fill-style.cpp index d9d62d3ec..d1d318abe 100644 --- a/src/widgets/fill-style.cpp +++ b/src/widgets/fill-style.cpp @@ -88,7 +88,7 @@ private: static void fillruleChangedCB( SPPaintSelector *psel, SPPaintSelector::FillRule mode, FillNStroke *self ); void selectionModifiedCB(guint flags); - void eventContextCB(SPDesktop *desktop, SPEventContext *eventcontext); + void eventContextCB(SPDesktop *desktop, Inkscape::UI::Tools::ToolBase *eventcontext); void dragFromPaint(); void updateFromPaint(); @@ -211,7 +211,7 @@ void FillNStroke::setDesktop(SPDesktop *desktop) if (desktop && desktop->selection) { selectChangedConn = desktop->selection->connectChanged(sigc::hide(sigc::mem_fun(*this, &FillNStroke::performUpdate))); subselChangedConn = desktop->connectToolSubselectionChanged(sigc::hide(sigc::mem_fun(*this, &FillNStroke::performUpdate))); - eventContextConn = desktop->connectEventContextChanged(sigc::hide(sigc::bind(sigc::mem_fun(*this, &FillNStroke::eventContextCB), (SPEventContext *)NULL))); + eventContextConn = desktop->connectEventContextChanged(sigc::hide(sigc::bind(sigc::mem_fun(*this, &FillNStroke::eventContextCB), (Inkscape::UI::Tools::ToolBase *)NULL))); // Must check flags, so can't call performUpdate() directly. selectModifiedConn = desktop->selection->connectModified(sigc::hide<0>(sigc::mem_fun(*this, &FillNStroke::selectionModifiedCB))); @@ -224,7 +224,7 @@ void FillNStroke::setDesktop(SPDesktop *desktop) * Listen to this "change in tool" event, in case a subselection tool (such as Gradient or Node) selection * is changed back to a selection tool - especially needed for selected gradient stops. */ -void FillNStroke::eventContextCB(SPDesktop * /*desktop*/, SPEventContext * /*eventcontext*/) +void FillNStroke::eventContextCB(SPDesktop * /*desktop*/, Inkscape::UI::Tools::ToolBase * /*eventcontext*/) { performUpdate(); } diff --git a/src/widgets/gradient-toolbar.cpp b/src/widgets/gradient-toolbar.cpp index f7d2b2bd5..f02185a15 100644 --- a/src/widgets/gradient-toolbar.cpp +++ b/src/widgets/gradient-toolbar.cpp @@ -35,7 +35,7 @@ #include "desktop-handles.h" #include <glibmm/i18n.h> -#include "gradient-context.h" +#include "ui/tools/gradient-tool.h" #include "gradient-drag.h" #include "sp-linear-gradient.h" #include "sp-radial-gradient.h" @@ -54,13 +54,14 @@ #include "svg/css-ostringstream.h" #include "svg/svg-color.h" #include "desktop-style.h" -#include "gradient-context.h" +#include "ui/tools/gradient-tool.h" #include "gradient-toolbar.h" #include "toolbox.h" using Inkscape::DocumentUndo; using Inkscape::UI::ToolboxFactory; +using Inkscape::UI::Tools::ToolBase; void gr_apply_gradient_to_item( SPItem *item, SPGradient *gr, SPGradientType initialType, Inkscape::PaintTarget initialMode, Inkscape::PaintTarget mode ); void gr_apply_gradient(Inkscape::Selection *selection, GrDrag *drag, SPGradient *gr); @@ -70,8 +71,8 @@ void gr_read_selection( Inkscape::Selection *selection, GrDrag *drag, SPGradient static gboolean update_stop_list( GtkWidget *stop_combo, SPGradient *gradient, SPStop *new_stop, GtkWidget *widget, bool gr_multi); static void sp_gradient_vector_widget_load_gradient(GtkWidget *widget, SPGradient *gradient); static void select_stop_in_list( GtkWidget *combo_box, SPGradient *gradient, SPStop *new_stop, GtkWidget *data, gboolean block); -static void select_stop_by_drag( GtkWidget *combo_box, SPGradient *gradient, SPEventContext *ev, GtkWidget *data); -static void select_drag_by_stop( GtkWidget *combo_box, SPGradient *gradient, SPEventContext *ev); +static void select_stop_by_drag( GtkWidget *combo_box, SPGradient *gradient, ToolBase *ev, GtkWidget *data); +static void select_drag_by_stop( GtkWidget *combo_box, SPGradient *gradient, ToolBase *ev); static SPGradient *gr_get_selected_gradient(GtkWidget *widget); static void gr_stop_set_offset(GtkComboBox *widget, GtkWidget *data); void add_toolbar_widget(GtkWidget *tbl, GtkWidget *widget); @@ -373,7 +374,7 @@ static void gr_tb_selection_changed(Inkscape::Selection * /*selection*/, gpointe Inkscape::Selection *selection = sp_desktop_selection(desktop); // take from desktop, not from args if (selection) { - SPEventContext *ev = desktop->getEventContext(); + ToolBase *ev = desktop->getEventContext(); GrDrag *drag = NULL; if (ev) { drag = ev->get_drag(); @@ -585,8 +586,8 @@ static void gr_add_stop(GtkWidget * /*button*/, GtkWidget *vb) return; } - SPEventContext *ev = desktop->getEventContext(); - SPGradientContext *rc = SP_GRADIENT_CONTEXT(ev); + ToolBase *ev = desktop->getEventContext(); + Inkscape::UI::Tools::GradientTool *rc = SP_GRADIENT_CONTEXT(ev); if (rc) { sp_gradient_context_add_stops_between_selected_stops(rc); @@ -607,7 +608,7 @@ static void gr_remove_stop(GtkWidget * /*button*/, GtkWidget *vb) return; } - SPEventContext *ev = desktop->getEventContext(); + ToolBase *ev = desktop->getEventContext(); GrDrag *drag = NULL; if (ev) { drag = ev->get_drag(); @@ -641,7 +642,7 @@ static void gr_reverse(GtkWidget * /*button*/, gpointer data) /* * Change desktop drag selection to this stop */ -static void select_drag_by_stop( GtkWidget *data, SPGradient *gradient, SPEventContext *ev) +static void select_drag_by_stop( GtkWidget *data, SPGradient *gradient, ToolBase *ev) { if (blocked || !ev || !gradient) return; @@ -657,7 +658,7 @@ static void select_drag_by_stop( GtkWidget *data, SPGradient *gradient, SPEventC blocked = FALSE; } -static void select_stop_by_drag(GtkWidget *combo_box, SPGradient *gradient, SPEventContext *ev, GtkWidget *data) +static void select_stop_by_drag(GtkWidget *combo_box, SPGradient *gradient, ToolBase *ev, GtkWidget *data) { if (blocked || !ev || !gradient) return; @@ -939,7 +940,7 @@ static void gr_gradient_combo_changed(EgeSelectOneAction *act, gpointer data) SPDesktop *desktop = static_cast<SPDesktop *>(data); Inkscape::Selection *selection = sp_desktop_selection(desktop); - SPEventContext *ev = desktop->getEventContext(); + ToolBase *ev = desktop->getEventContext(); gr_apply_gradient(selection, ev? ev->get_drag() : NULL, gr); @@ -981,7 +982,7 @@ static void gr_stop_combo_changed(GtkComboBox * /*widget*/, GtkWidget *data) } SPDesktop *desktop = static_cast<SPDesktop *>(g_object_get_data(G_OBJECT(data), "desktop")); - SPEventContext *ev = desktop->getEventContext(); + ToolBase *ev = desktop->getEventContext(); SPGradient *gr = gr_get_selected_gradient(data); select_drag_by_stop(data, gr, ev); diff --git a/src/widgets/lpe-toolbar.cpp b/src/widgets/lpe-toolbar.cpp index 045d7aa78..559f3fc3c 100644 --- a/src/widgets/lpe-toolbar.cpp +++ b/src/widgets/lpe-toolbar.cpp @@ -59,12 +59,12 @@ #include "../helper/action-context.h" #include "util/units.h" #include "ui/widget/unit-tracker.h" -#include "../pen-context.h" +#include "ui/tools/pen-tool.h" #include "../sp-namedview.h" #include "../tools-switch.h" #include "../live_effects/effect.h" #include "../live_effects/lpe-angle_bisector.h" -#include "../lpe-tool-context.h" +#include "ui/tools/lpe-tool.h" using Inkscape::UI::Widget::UnitTracker; using Inkscape::Util::Unit; @@ -73,6 +73,8 @@ using Inkscape::UI::UXManager; using Inkscape::DocumentUndo; using Inkscape::UI::ToolboxFactory; using Inkscape::UI::PrefPusher; +using Inkscape::UI::Tools::ToolBase; +using Inkscape::UI::Tools::LpeTool; //######################## @@ -87,7 +89,7 @@ static void sp_lpetool_mode_changed(EgeSelectOneAction *act, GObject *tbl) using namespace Inkscape::LivePathEffect; SPDesktop *desktop = static_cast<SPDesktop *>(g_object_get_data(tbl, "desktop")); - SPEventContext *ec = desktop->event_context; + ToolBase *ec = desktop->event_context; if (!SP_IS_LPETOOL_CONTEXT(ec)) { return; } @@ -100,7 +102,7 @@ static void sp_lpetool_mode_changed(EgeSelectOneAction *act, GObject *tbl) gint mode = ege_select_one_action_get_active(act); EffectType type = lpesubtools[mode].type; - SPLPEToolContext *lc = SP_LPETOOL_CONTEXT(desktop->event_context); + LpeTool *lc = SP_LPETOOL_CONTEXT(desktop->event_context); bool success = lpetool_try_construction(lc, type); if (success) { // since the construction was already performed, we set the state back to inactive @@ -122,7 +124,7 @@ static void sp_lpetool_mode_changed(EgeSelectOneAction *act, GObject *tbl) static void sp_lpetool_toolbox_sel_modified(Inkscape::Selection *selection, guint /*flags*/, GObject * /*tbl*/) { - SPEventContext *ec = selection->desktop()->event_context; + ToolBase *ec = selection->desktop()->event_context; if (SP_IS_LPETOOL_CONTEXT(ec)) { lpetool_update_measuring_items(SP_LPETOOL_CONTEXT(ec)); } @@ -131,11 +133,11 @@ static void sp_lpetool_toolbox_sel_modified(Inkscape::Selection *selection, guin static void sp_lpetool_toolbox_sel_changed(Inkscape::Selection *selection, GObject *tbl) { using namespace Inkscape::LivePathEffect; - SPEventContext *ec = selection->desktop()->event_context; + ToolBase *ec = selection->desktop()->event_context; if (!SP_IS_LPETOOL_CONTEXT(ec)) { return; } - SPLPEToolContext *lc = SP_LPETOOL_CONTEXT(ec); + LpeTool *lc = SP_LPETOOL_CONTEXT(ec); lpetool_delete_measuring_items(lc); lpetool_create_measuring_items(lc, selection); @@ -172,7 +174,7 @@ static void lpetool_toggle_show_bbox(GtkToggleAction *act, gpointer data) { prefs->setBool("/tools/lpetool/show_bbox", show); if (tools_isactive(desktop, TOOLS_LPETOOL)) { - SPLPEToolContext *lc = SP_LPETOOL_CONTEXT(desktop->event_context); + LpeTool *lc = SP_LPETOOL_CONTEXT(desktop->event_context); lpetool_context_reset_limiting_bbox(lc); } } @@ -185,7 +187,7 @@ static void lpetool_toggle_show_measuring_info(GtkToggleAction *act, GObject *tb } GtkAction *unitact = static_cast<GtkAction*>(g_object_get_data(tbl, "lpetool_units_action")); - SPLPEToolContext *lc = SP_LPETOOL_CONTEXT(desktop->event_context); + LpeTool *lc = SP_LPETOOL_CONTEXT(desktop->event_context); if (tools_isactive(desktop, TOOLS_LPETOOL)) { Inkscape::Preferences *prefs = Inkscape::Preferences::get(); bool show = gtk_toggle_action_get_active( act ); @@ -204,7 +206,7 @@ static void lpetool_unit_changed(GtkAction* /*act*/, GObject* tbl) SPDesktop *desktop = static_cast<SPDesktop *>(g_object_get_data( tbl, "desktop" )); if (SP_IS_LPETOOL_CONTEXT(desktop->event_context)) { - SPLPEToolContext *lc = SP_LPETOOL_CONTEXT(desktop->event_context); + LpeTool *lc = SP_LPETOOL_CONTEXT(desktop->event_context); lpetool_delete_measuring_items(lc); lpetool_create_measuring_items(lc); } diff --git a/src/widgets/measure-toolbar.cpp b/src/widgets/measure-toolbar.cpp index 58244566d..a75dd7600 100644 --- a/src/widgets/measure-toolbar.cpp +++ b/src/widgets/measure-toolbar.cpp @@ -52,7 +52,7 @@ #include "../xml/repr.h" #include "ui/uxmanager.h" #include "../ui/icon-names.h" -#include "../pen-context.h" +#include "ui/tools/pen-tool.h" #include "../sp-namedview.h" #include "ui/widget/unit-tracker.h" diff --git a/src/widgets/mesh-toolbar.cpp b/src/widgets/mesh-toolbar.cpp index 582243870..15dda94f0 100644 --- a/src/widgets/mesh-toolbar.cpp +++ b/src/widgets/mesh-toolbar.cpp @@ -41,7 +41,7 @@ #include "desktop-handles.h" #include <glibmm/i18n.h> -#include "gradient-context.h" +#include "ui/tools/gradient-tool.h" #include "gradient-drag.h" #include "sp-mesh-gradient.h" #include "gradient-chemistry.h" @@ -59,7 +59,7 @@ #include "svg/css-ostringstream.h" #include "svg/svg-color.h" #include "desktop-style.h" -#include "gradient-context.h" +#include "ui/tools/gradient-tool.h" #include "toolbox.h" @@ -94,7 +94,7 @@ static void ms_tb_selection_changed(Inkscape::Selection * /*selection*/, gpointe // Inkscape::Selection *selection = sp_desktop_selection(desktop); // take from desktop, not from args // if (selection) { - // SPEventContext *ev = sp_desktop_event_context(desktop); + // ToolBase *ev = sp_desktop_event_context(desktop); // GrDrag *drag = NULL; // if (ev) { // drag = ev->get_drag(); diff --git a/src/widgets/node-toolbar.cpp b/src/widgets/node-toolbar.cpp index 0d4868642..6a0968424 100644 --- a/src/widgets/node-toolbar.cpp +++ b/src/widgets/node-toolbar.cpp @@ -55,12 +55,12 @@ #include "../xml/repr.h" #include "ui/uxmanager.h" #include "../ui/tool/control-point-selection.h" -#include "../ui/tool/node-tool.h" +#include "ui/tools/node-tool.h" #include "../ui/tool/multi-path-manipulator.h" #include "../ui/icon-names.h" #include "util/units.h" #include "ui/widget/unit-tracker.h" -#include "../lpe-tool-context.h" +#include "ui/tools/lpe-tool.h" #include "../sp-namedview.h" using Inkscape::UI::Widget::UnitTracker; @@ -71,6 +71,7 @@ using Inkscape::DocumentUndo; using Inkscape::UI::ToolboxFactory; using Inkscape::UI::PrefPusher; using Inkscape::Util::unit_table; +using Inkscape::UI::Tools::NodeTool; //#################################### //# node editing callbacks @@ -78,13 +79,13 @@ using Inkscape::Util::unit_table; /** Temporary hack: Returns the node tool in the active desktop. * Will go away during tool refactoring. */ -static InkNodeTool *get_node_tool() +static NodeTool *get_node_tool() { - InkNodeTool *tool = 0; + NodeTool *tool = 0; if (SP_ACTIVE_DESKTOP ) { - SPEventContext *ec = SP_ACTIVE_DESKTOP->event_context; + Inkscape::UI::Tools::ToolBase *ec = SP_ACTIVE_DESKTOP->event_context; if (INK_IS_NODE_TOOL(ec)) { - tool = static_cast<InkNodeTool*>(ec); + tool = static_cast<NodeTool*>(ec); } } return tool; @@ -92,7 +93,7 @@ static InkNodeTool *get_node_tool() static void sp_node_path_edit_add(void) { - InkNodeTool *nt = get_node_tool(); + NodeTool *nt = get_node_tool(); if (nt) { nt->_multipath->insertNodes(); } @@ -100,28 +101,28 @@ static void sp_node_path_edit_add(void) static void sp_node_path_edit_add_min_x(void) { - InkNodeTool *nt = get_node_tool(); + NodeTool *nt = get_node_tool(); if (nt) { nt->_multipath->insertNodesAtExtrema(Inkscape::UI::PointManipulator::EXTR_MIN_X); } } static void sp_node_path_edit_add_max_x(void) { - InkNodeTool *nt = get_node_tool(); + NodeTool *nt = get_node_tool(); if (nt) { nt->_multipath->insertNodesAtExtrema(Inkscape::UI::PointManipulator::EXTR_MAX_X); } } static void sp_node_path_edit_add_min_y(void) { - InkNodeTool *nt = get_node_tool(); + NodeTool *nt = get_node_tool(); if (nt) { nt->_multipath->insertNodesAtExtrema(Inkscape::UI::PointManipulator::EXTR_MIN_Y); } } static void sp_node_path_edit_add_max_y(void) { - InkNodeTool *nt = get_node_tool(); + NodeTool *nt = get_node_tool(); if (nt) { nt->_multipath->insertNodesAtExtrema(Inkscape::UI::PointManipulator::EXTR_MAX_Y); } @@ -129,7 +130,7 @@ static void sp_node_path_edit_add_max_y(void) static void sp_node_path_edit_delete(void) { - InkNodeTool *nt = get_node_tool(); + NodeTool *nt = get_node_tool(); if (nt) { Inkscape::Preferences *prefs = Inkscape::Preferences::get(); nt->_multipath->deleteNodes(prefs->getBool("/tools/nodes/delete_preserves_shape", true)); @@ -138,7 +139,7 @@ static void sp_node_path_edit_delete(void) static void sp_node_path_edit_delete_segment(void) { - InkNodeTool *nt = get_node_tool(); + NodeTool *nt = get_node_tool(); if (nt) { nt->_multipath->deleteSegments(); } @@ -146,7 +147,7 @@ static void sp_node_path_edit_delete_segment(void) static void sp_node_path_edit_break(void) { - InkNodeTool *nt = get_node_tool(); + NodeTool *nt = get_node_tool(); if (nt) { nt->_multipath->breakNodes(); } @@ -154,7 +155,7 @@ static void sp_node_path_edit_break(void) static void sp_node_path_edit_join(void) { - InkNodeTool *nt = get_node_tool(); + NodeTool *nt = get_node_tool(); if (nt) { nt->_multipath->joinNodes(); } @@ -162,7 +163,7 @@ static void sp_node_path_edit_join(void) static void sp_node_path_edit_join_segment(void) { - InkNodeTool *nt = get_node_tool(); + NodeTool *nt = get_node_tool(); if (nt) { nt->_multipath->joinSegments(); } @@ -170,7 +171,7 @@ static void sp_node_path_edit_join_segment(void) static void sp_node_path_edit_toline(void) { - InkNodeTool *nt = get_node_tool(); + NodeTool *nt = get_node_tool(); if (nt) { nt->_multipath->setSegmentType(Inkscape::UI::SEGMENT_STRAIGHT); } @@ -178,7 +179,7 @@ static void sp_node_path_edit_toline(void) static void sp_node_path_edit_tocurve(void) { - InkNodeTool *nt = get_node_tool(); + NodeTool *nt = get_node_tool(); if (nt) { nt->_multipath->setSegmentType(Inkscape::UI::SEGMENT_CUBIC_BEZIER); } @@ -186,7 +187,7 @@ static void sp_node_path_edit_tocurve(void) static void sp_node_path_edit_cusp(void) { - InkNodeTool *nt = get_node_tool(); + NodeTool *nt = get_node_tool(); if (nt) { nt->_multipath->setNodeType(Inkscape::UI::NODE_CUSP); } @@ -194,7 +195,7 @@ static void sp_node_path_edit_cusp(void) static void sp_node_path_edit_smooth(void) { - InkNodeTool *nt = get_node_tool(); + NodeTool *nt = get_node_tool(); if (nt) { nt->_multipath->setNodeType(Inkscape::UI::NODE_SMOOTH); } @@ -202,7 +203,7 @@ static void sp_node_path_edit_smooth(void) static void sp_node_path_edit_symmetrical(void) { - InkNodeTool *nt = get_node_tool(); + NodeTool *nt = get_node_tool(); if (nt) { nt->_multipath->setNodeType(Inkscape::UI::NODE_SYMMETRIC); } @@ -210,7 +211,7 @@ static void sp_node_path_edit_symmetrical(void) static void sp_node_path_edit_auto(void) { - InkNodeTool *nt = get_node_tool(); + NodeTool *nt = get_node_tool(); if (nt) { nt->_multipath->setNodeType(Inkscape::UI::NODE_AUTO); } @@ -242,7 +243,7 @@ static void sp_node_toolbox_coord_changed(gpointer /*shape_editor*/, GObject *tb } Unit const *unit = tracker->getActiveUnit(); - InkNodeTool *nt = get_node_tool(); + NodeTool *nt = get_node_tool(); if (!nt || nt->_selected_nodes->empty()) { // no path selected gtk_action_set_sensitive(xact, FALSE); @@ -289,7 +290,7 @@ static void sp_node_path_value_changed(GtkAdjustment *adj, GObject *tbl, Geom::D // in turn, prevent listener from responding g_object_set_data( tbl, "freeze", GINT_TO_POINTER(TRUE)); - InkNodeTool *nt = get_node_tool(); + NodeTool *nt = get_node_tool(); if (nt && !nt->_selected_nodes->empty()) { double val = Quantity::convert(gtk_adjustment_get_value(adj), unit, "px"); double oldval = nt->_selected_nodes->pointwiseBounds()->midpoint()[d]; diff --git a/src/widgets/paintbucket-toolbar.cpp b/src/widgets/paintbucket-toolbar.cpp index 363fadd3d..8c4de2b32 100644 --- a/src/widgets/paintbucket-toolbar.cpp +++ b/src/widgets/paintbucket-toolbar.cpp @@ -56,9 +56,9 @@ #include "../ui/icon-names.h" #include "util/units.h" #include "ui/widget/unit-tracker.h" -#include "../pen-context.h" +#include "ui/tools/pen-tool.h" #include "../sp-namedview.h" -#include "../flood-context.h" +#include "ui/tools/flood-tool.h" #include <gtk/gtk.h> @@ -80,7 +80,7 @@ static void paintbucket_channels_changed(EgeSelectOneAction* act, GObject* /*tbl { gint channels = ege_select_one_action_get_active( act ); //flood_channels_set_channels( channels ); - SPFloodContext::set_channels(channels); + Inkscape::UI::Tools::FloodTool::set_channels(channels); } static void paintbucket_threshold_changed(GtkAdjustment *adj, GObject * /*tbl*/) @@ -127,7 +127,7 @@ static void paintbucket_defaults(GtkWidget *, GObject *tbl) } EgeSelectOneAction* channels_action = EGE_SELECT_ONE_ACTION( g_object_get_data (tbl, "channels_action" ) ); - ege_select_one_action_set_active( channels_action, FLOOD_CHANNELS_RGB ); + ege_select_one_action_set_active( channels_action, Inkscape::UI::Tools::FLOOD_CHANNELS_RGB ); EgeSelectOneAction* autogap_action = EGE_SELECT_ONE_ACTION( g_object_get_data (tbl, "autogap_action" ) ); ege_select_one_action_set_active( autogap_action, 0 ); } @@ -142,7 +142,7 @@ void sp_paintbucket_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions GList* items = 0; gint count = 0; - for ( items = flood_channels_dropdown_items_list(); items ; items = g_list_next(items) ) + for ( items = Inkscape::UI::Tools::flood_channels_dropdown_items_list(); items ; items = g_list_next(items) ) { GtkTreeIter iter; gtk_list_store_append( model, &iter ); @@ -209,7 +209,7 @@ void sp_paintbucket_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions GList* items = 0; gint count = 0; - for ( items = flood_autogap_dropdown_items_list(); items ; items = g_list_next(items) ) + for ( items = Inkscape::UI::Tools::flood_autogap_dropdown_items_list(); items ; items = g_list_next(items) ) { GtkTreeIter iter; gtk_list_store_append( model, &iter ); diff --git a/src/widgets/pencil-toolbar.cpp b/src/widgets/pencil-toolbar.cpp index 783d8dd4d..8abf35fb3 100644 --- a/src/widgets/pencil-toolbar.cpp +++ b/src/widgets/pencil-toolbar.cpp @@ -63,11 +63,11 @@ #include "ui/uxmanager.h" //#include "../ui/tool/control-point-selection.h" -//#include "../ui/tool/node-tool.h" +//#include "ui/tools/node-tool.h" //#include "../ui/tool/multi-path-manipulator.h" #include "../ui/icon-names.h" -#include "../pen-context.h" +#include "ui/tools/pen-tool.h" //#include "../sp-namedview.h" #include "../tools-switch.h" @@ -103,7 +103,7 @@ static void freehand_mode_changed(EgeSelectOneAction* act, GObject* tbl) // in pen tool we have more options than in pencil tool; if one of them was chosen, we do any // preparatory work here if (SP_IS_PEN_CONTEXT(desktop->event_context)) { - SPPenContext *pc = SP_PEN_CONTEXT(desktop->event_context); + Inkscape::UI::Tools::PenTool *pc = SP_PEN_CONTEXT(desktop->event_context); sp_pen_context_set_polyline_mode(pc); } } diff --git a/src/widgets/rect-toolbar.cpp b/src/widgets/rect-toolbar.cpp index 0287a9aeb..f5a509db3 100644 --- a/src/widgets/rect-toolbar.cpp +++ b/src/widgets/rect-toolbar.cpp @@ -55,7 +55,7 @@ #include "../ui/icon-names.h" #include "util/units.h" #include "ui/widget/unit-tracker.h" -#include "../pen-context.h" +#include "ui/tools/pen-tool.h" #include "../sp-namedview.h" #include "../sp-rect.h" diff --git a/src/widgets/sp-color-notebook.cpp b/src/widgets/sp-color-notebook.cpp index c709e9775..e081f98e0 100644 --- a/src/widgets/sp-color-notebook.cpp +++ b/src/widgets/sp-color-notebook.cpp @@ -39,7 +39,7 @@ #include "color-profile.h" #include "cms-system.h" #include "tools-switch.h" -#include "event-context.h" +#include "ui/tools/tool-base.h" using Inkscape::CMSSystem; @@ -542,7 +542,7 @@ void ColorNotebook::_picker_clicked(GtkWidget * /*widget*/, SPColorNotebook * /* // Set the dropper into a "one click" mode, so it reverts to the previous tool after a click Inkscape::Preferences *prefs = Inkscape::Preferences::get(); prefs->setBool("/tools/dropper/onetimepick", true); - sp_toggle_dropper(SP_ACTIVE_DESKTOP); + Inkscape::UI::Tools::sp_toggle_dropper(SP_ACTIVE_DESKTOP); } void ColorNotebook::_rgbaEntryChangedHook(GtkEntry *entry, SPColorNotebook *colorbook) diff --git a/src/widgets/spinbutton-events.cpp b/src/widgets/spinbutton-events.cpp index 7a481aea8..0280694f6 100644 --- a/src/widgets/spinbutton-events.cpp +++ b/src/widgets/spinbutton-events.cpp @@ -18,7 +18,7 @@ #include <gtk/gtk.h> #include <gdk/gdkkeysyms.h> -#include "../event-context.h" +#include "ui/tools/tool-base.h" #include "sp-widget.h" #include "widget-sizes.h" @@ -67,7 +67,7 @@ gboolean spinbutton_keypress(GtkWidget *w, GdkEventKey *event, gpointer /*data*/ { gboolean result = FALSE; // I didn't consume the event - switch (get_group0_keyval(event)) { + switch (Inkscape::UI::Tools::get_group0_keyval(event)) { case GDK_KEY_Escape: // defocus spinbutton_undo(w); spinbutton_defocus(w); diff --git a/src/widgets/spiral-toolbar.cpp b/src/widgets/spiral-toolbar.cpp index b4e8e68a7..6b10bfce9 100644 --- a/src/widgets/spiral-toolbar.cpp +++ b/src/widgets/spiral-toolbar.cpp @@ -53,7 +53,7 @@ #include "../xml/repr.h" #include "ui/uxmanager.h" #include "../ui/icon-names.h" -#include "../pen-context.h" +#include "ui/tools/pen-tool.h" #include "../sp-spiral.h" using Inkscape::UI::UXManager; diff --git a/src/widgets/spray-toolbar.cpp b/src/widgets/spray-toolbar.cpp index 247df53e2..2a8c85475 100644 --- a/src/widgets/spray-toolbar.cpp +++ b/src/widgets/spray-toolbar.cpp @@ -52,8 +52,8 @@ #include "../xml/repr.h" #include "ui/uxmanager.h" #include "../ui/icon-names.h" -#include "../pen-context.h" -#include "../spray-context.h" +#include "ui/tools/pen-tool.h" +#include "ui/tools/spray-tool.h" using Inkscape::UI::UXManager; using Inkscape::DocumentUndo; diff --git a/src/widgets/star-toolbar.cpp b/src/widgets/star-toolbar.cpp index 9e26988ff..bac0271db 100644 --- a/src/widgets/star-toolbar.cpp +++ b/src/widgets/star-toolbar.cpp @@ -53,7 +53,7 @@ #include "../xml/repr.h" #include "ui/uxmanager.h" #include "../ui/icon-names.h" -#include "../pen-context.h" +#include "ui/tools/pen-tool.h" #include "../sp-star.h" diff --git a/src/widgets/text-toolbar.cpp b/src/widgets/text-toolbar.cpp index 6b9fc900c..750fa1de6 100644 --- a/src/widgets/text-toolbar.cpp +++ b/src/widgets/text-toolbar.cpp @@ -56,7 +56,7 @@ #include "../xml/repr.h" #include "ui/uxmanager.h" #include "../ui/icon-names.h" -#include "../pen-context.h" +#include "ui/tools/pen-tool.h" #include "../sp-namedview.h" #include "../svg/css-ostringstream.h" #include "../sp-flowtext.h" @@ -64,7 +64,7 @@ #include "../style.h" #include "../libnrtype/font-lister.h" #include "../libnrtype/font-instance.h" -#include "../text-context.h" +#include "ui/tools/text-tool.h" #include "../text-editing.h" #include "widgets/font-selector.h" @@ -652,7 +652,7 @@ static void sp_text_dx_value_changed( GtkAdjustment *adj, GObject *tbl ) bool modmade = false; if( SP_IS_TEXT_CONTEXT((SP_ACTIVE_DESKTOP)->event_context) ) { - SPTextContext *const tc = SP_TEXT_CONTEXT((SP_ACTIVE_DESKTOP)->event_context); + Inkscape::UI::Tools::TextTool *const tc = SP_TEXT_CONTEXT((SP_ACTIVE_DESKTOP)->event_context); if( tc ) { unsigned char_index = -1; TextTagAttributes *attributes = @@ -686,7 +686,7 @@ static void sp_text_dy_value_changed( GtkAdjustment *adj, GObject *tbl ) bool modmade = false; if( SP_IS_TEXT_CONTEXT((SP_ACTIVE_DESKTOP)->event_context) ) { - SPTextContext *const tc = SP_TEXT_CONTEXT((SP_ACTIVE_DESKTOP)->event_context); + Inkscape::UI::Tools::TextTool *const tc = SP_TEXT_CONTEXT((SP_ACTIVE_DESKTOP)->event_context); if( tc ) { unsigned char_index = -1; TextTagAttributes *attributes = @@ -721,7 +721,7 @@ static void sp_text_rotation_value_changed( GtkAdjustment *adj, GObject *tbl ) bool modmade = false; if( SP_IS_TEXT_CONTEXT((SP_ACTIVE_DESKTOP)->event_context) ) { - SPTextContext *const tc = SP_TEXT_CONTEXT((SP_ACTIVE_DESKTOP)->event_context); + Inkscape::UI::Tools::TextTool *const tc = SP_TEXT_CONTEXT((SP_ACTIVE_DESKTOP)->event_context); if( tc ) { unsigned char_index = -1; TextTagAttributes *attributes = @@ -1091,7 +1091,7 @@ static void sp_text_toolbox_selection_changed(Inkscape::Selection */*selection*/ // Kerning (xshift), yshift, rotation. NB: These are not CSS attributes. if( SP_IS_TEXT_CONTEXT((SP_ACTIVE_DESKTOP)->event_context) ) { - SPTextContext *const tc = SP_TEXT_CONTEXT((SP_ACTIVE_DESKTOP)->event_context); + Inkscape::UI::Tools::TextTool *const tc = SP_TEXT_CONTEXT((SP_ACTIVE_DESKTOP)->event_context); if( tc ) { unsigned char_index = -1; TextTagAttributes *attributes = diff --git a/src/widgets/toolbox.cpp b/src/widgets/toolbox.cpp index ddbe77fbb..02da805bf 100644 --- a/src/widgets/toolbox.cpp +++ b/src/widgets/toolbox.cpp @@ -96,7 +96,7 @@ #include "toolbox.h" #include <gtk/gtk.h> -#include "event-context.h" +#include "ui/tools/tool-base.h" //#define DEBUG_TEXT @@ -104,9 +104,10 @@ using Inkscape::UI::UXManager; using Inkscape::DocumentUndo; using Inkscape::UI::PrefPusher; using Inkscape::UI::ToolboxFactory; +using Inkscape::UI::Tools::ToolBase; typedef void (*SetupFunction)(GtkWidget *toolbox, SPDesktop *desktop); -typedef void (*UpdateFunction)(SPDesktop *desktop, SPEventContext *eventcontext, GtkWidget *toolbox); +typedef void (*UpdateFunction)(SPDesktop *desktop, ToolBase *eventcontext, GtkWidget *toolbox); enum BarId { BAR_TOOL = 0, @@ -550,13 +551,13 @@ static Glib::RefPtr<Gtk::ActionGroup> create_or_fetch_actions( SPDesktop* deskto static void setup_snap_toolbox(GtkWidget *toolbox, SPDesktop *desktop); static void setup_tool_toolbox(GtkWidget *toolbox, SPDesktop *desktop); -static void update_tool_toolbox(SPDesktop *desktop, SPEventContext *eventcontext, GtkWidget *toolbox); +static void update_tool_toolbox(SPDesktop *desktop, ToolBase *eventcontext, GtkWidget *toolbox); static void setup_aux_toolbox(GtkWidget *toolbox, SPDesktop *desktop); -static void update_aux_toolbox(SPDesktop *desktop, SPEventContext *eventcontext, GtkWidget *toolbox); +static void update_aux_toolbox(SPDesktop *desktop, ToolBase *eventcontext, GtkWidget *toolbox); static void setup_commands_toolbox(GtkWidget *toolbox, SPDesktop *desktop); -static void update_commands_toolbox(SPDesktop *desktop, SPEventContext *eventcontext, GtkWidget *toolbox); +static void update_commands_toolbox(SPDesktop *desktop, ToolBase *eventcontext, GtkWidget *toolbox); static GtkToolItem * sp_toolbox_button_item_new_from_verb_with_doubleclick( GtkWidget *t, Inkscape::IconSize size, SPButtonType type, Inkscape::Verb *verb, Inkscape::Verb *doubleclick_verb, @@ -1310,7 +1311,7 @@ void setup_tool_toolbox(GtkWidget *toolbox, SPDesktop *desktop) "/toolbox/tools/small"); } -void update_tool_toolbox( SPDesktop *desktop, SPEventContext *eventcontext, GtkWidget * /*toolbox*/ ) +void update_tool_toolbox( SPDesktop *desktop, ToolBase *eventcontext, GtkWidget * /*toolbox*/ ) { gchar const *const tname = ( eventcontext ? eventcontext->getPrefsPath().c_str() //g_type_name(G_OBJECT_TYPE(eventcontext)) @@ -1432,7 +1433,7 @@ void setup_aux_toolbox(GtkWidget *toolbox, SPDesktop *desktop) g_object_unref( G_OBJECT(grouper) ); } -void update_aux_toolbox(SPDesktop * /*desktop*/, SPEventContext *eventcontext, GtkWidget *toolbox) +void update_aux_toolbox(SPDesktop * /*desktop*/, ToolBase *eventcontext, GtkWidget *toolbox) { gchar const *tname = ( eventcontext ? eventcontext->getPrefsPath().c_str() //g_type_name(G_OBJECT_TYPE(eventcontext)) @@ -1495,7 +1496,7 @@ void setup_commands_toolbox(GtkWidget *toolbox, SPDesktop *desktop) "/toolbox/small" ); } -void update_commands_toolbox(SPDesktop * /*desktop*/, SPEventContext * /*eventcontext*/, GtkWidget * /*toolbox*/) +void update_commands_toolbox(SPDesktop * /*desktop*/, ToolBase * /*eventcontext*/, GtkWidget * /*toolbox*/) { } @@ -1864,7 +1865,7 @@ Glib::ustring ToolboxFactory::getToolboxName(GtkWidget* toolbox) return name; } -void ToolboxFactory::updateSnapToolbox(SPDesktop *desktop, SPEventContext * /*eventcontext*/, GtkWidget *toolbox) +void ToolboxFactory::updateSnapToolbox(SPDesktop *desktop, ToolBase * /*eventcontext*/, GtkWidget *toolbox) { g_assert(desktop != NULL); g_assert(toolbox != NULL); diff --git a/src/widgets/toolbox.h b/src/widgets/toolbox.h index e9ffcda4a..fb749bfb5 100644 --- a/src/widgets/toolbox.h +++ b/src/widgets/toolbox.h @@ -23,7 +23,16 @@ #define TOOLBAR_SLIDER_HINT "full" class SPDesktop; -class SPEventContext; + +namespace Inkscape { +namespace UI { +namespace Tools { + +class ToolBase; + +} +} +} namespace Inkscape { namespace UI { @@ -50,7 +59,7 @@ public: static Glib::ustring getToolboxName(GtkWidget* toolbox); - static void updateSnapToolbox(SPDesktop *desktop, SPEventContext *eventcontext, GtkWidget *toolbox); + static void updateSnapToolbox(SPDesktop *desktop, Inkscape::UI::Tools::ToolBase *eventcontext, GtkWidget *toolbox); static Inkscape::IconSize prefToSize(Glib::ustring const &path, int base = 0 ); diff --git a/src/widgets/tweak-toolbar.cpp b/src/widgets/tweak-toolbar.cpp index 6da7608bd..6999b057d 100644 --- a/src/widgets/tweak-toolbar.cpp +++ b/src/widgets/tweak-toolbar.cpp @@ -52,8 +52,8 @@ #include "../xml/repr.h" #include "ui/uxmanager.h" #include "../ui/icon-names.h" -#include "../pen-context.h" -#include "../tweak-context.h" +#include "ui/tools/pen-tool.h" +#include "ui/tools/tweak-tool.h" using Inkscape::UI::UXManager; using Inkscape::DocumentUndo; @@ -92,7 +92,7 @@ static void sp_tweak_mode_changed( EgeSelectOneAction *act, GObject *tbl ) prefs->setInt("/tools/tweak/mode", mode); static gchar const* names[] = {"tweak_doh", "tweak_dos", "tweak_dol", "tweak_doo", "tweak_channels_label"}; - bool flag = ((mode == TWEAK_MODE_COLORPAINT) || (mode == TWEAK_MODE_COLORJITTER)); + bool flag = ((mode == Inkscape::UI::Tools::TWEAK_MODE_COLORPAINT) || (mode == Inkscape::UI::Tools::TWEAK_MODE_COLORJITTER)); for (size_t i = 0; i < G_N_ELEMENTS(names); ++i) { GtkAction *act = GTK_ACTION(g_object_get_data( tbl, names[i] )); if (act) { @@ -289,7 +289,7 @@ void sp_tweak_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObj EgeOutputAction* act = ege_output_action_new( "TweakChannelsLabel", _("Channels:"), "", 0 ); ege_output_action_set_use_markup( act, TRUE ); gtk_action_group_add_action( mainActions, GTK_ACTION( act ) ); - if (mode != TWEAK_MODE_COLORPAINT && mode != TWEAK_MODE_COLORJITTER) { + if (mode != Inkscape::UI::Tools::TWEAK_MODE_COLORPAINT && mode != Inkscape::UI::Tools::TWEAK_MODE_COLORJITTER) { gtk_action_set_sensitive (GTK_ACTION(act), FALSE); } g_object_set_data( holder, "tweak_channels_label", act); @@ -306,7 +306,7 @@ void sp_tweak_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObj gtk_action_group_add_action( mainActions, GTK_ACTION( act ) ); g_signal_connect_after( G_OBJECT(act), "toggled", G_CALLBACK(tweak_toggle_doh), desktop ); gtk_toggle_action_set_active( GTK_TOGGLE_ACTION(act), prefs->getBool("/tools/tweak/doh", true) ); - if (mode != TWEAK_MODE_COLORPAINT && mode != TWEAK_MODE_COLORJITTER) { + if (mode != Inkscape::UI::Tools::TWEAK_MODE_COLORPAINT && mode != Inkscape::UI::Tools::TWEAK_MODE_COLORJITTER) { gtk_action_set_sensitive (GTK_ACTION(act), FALSE); } g_object_set_data( holder, "tweak_doh", act); @@ -322,7 +322,7 @@ void sp_tweak_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObj gtk_action_group_add_action( mainActions, GTK_ACTION( act ) ); g_signal_connect_after( G_OBJECT(act), "toggled", G_CALLBACK(tweak_toggle_dos), desktop ); gtk_toggle_action_set_active( GTK_TOGGLE_ACTION(act), prefs->getBool("/tools/tweak/dos", true) ); - if (mode != TWEAK_MODE_COLORPAINT && mode != TWEAK_MODE_COLORJITTER) { + if (mode != Inkscape::UI::Tools::TWEAK_MODE_COLORPAINT && mode != Inkscape::UI::Tools::TWEAK_MODE_COLORJITTER) { gtk_action_set_sensitive (GTK_ACTION(act), FALSE); } g_object_set_data( holder, "tweak_dos", act ); @@ -338,7 +338,7 @@ void sp_tweak_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObj gtk_action_group_add_action( mainActions, GTK_ACTION( act ) ); g_signal_connect_after( G_OBJECT(act), "toggled", G_CALLBACK(tweak_toggle_dol), desktop ); gtk_toggle_action_set_active( GTK_TOGGLE_ACTION(act), prefs->getBool("/tools/tweak/dol", true) ); - if (mode != TWEAK_MODE_COLORPAINT && mode != TWEAK_MODE_COLORJITTER) { + if (mode != Inkscape::UI::Tools::TWEAK_MODE_COLORPAINT && mode != Inkscape::UI::Tools::TWEAK_MODE_COLORJITTER) { gtk_action_set_sensitive (GTK_ACTION(act), FALSE); } g_object_set_data( holder, "tweak_dol", act ); @@ -354,7 +354,7 @@ void sp_tweak_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObj gtk_action_group_add_action( mainActions, GTK_ACTION( act ) ); g_signal_connect_after( G_OBJECT(act), "toggled", G_CALLBACK(tweak_toggle_doo), desktop ); gtk_toggle_action_set_active( GTK_TOGGLE_ACTION(act), prefs->getBool("/tools/tweak/doo", true) ); - if (mode != TWEAK_MODE_COLORPAINT && mode != TWEAK_MODE_COLORJITTER) { + if (mode != Inkscape::UI::Tools::TWEAK_MODE_COLORPAINT && mode != Inkscape::UI::Tools::TWEAK_MODE_COLORJITTER) { gtk_action_set_sensitive (GTK_ACTION(act), FALSE); } g_object_set_data( holder, "tweak_doo", act ); @@ -373,7 +373,7 @@ void sp_tweak_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObj sp_tweak_fidelity_value_changed, NULL /*unit tracker*/, 0.01, 0, 100 ); gtk_action_group_add_action( mainActions, GTK_ACTION(eact) ); gtk_action_set_sensitive( GTK_ACTION(eact), TRUE ); - if (mode == TWEAK_MODE_COLORPAINT || mode == TWEAK_MODE_COLORJITTER) { + if (mode == Inkscape::UI::Tools::TWEAK_MODE_COLORPAINT || mode == Inkscape::UI::Tools::TWEAK_MODE_COLORJITTER) { gtk_action_set_sensitive (GTK_ACTION(eact), FALSE); } g_object_set_data( holder, "tweak_fidelity", eact ); diff --git a/src/widgets/zoom-toolbar.cpp b/src/widgets/zoom-toolbar.cpp index 9cdbc3d6a..a5ab6e211 100644 --- a/src/widgets/zoom-toolbar.cpp +++ b/src/widgets/zoom-toolbar.cpp @@ -51,8 +51,8 @@ #include "../xml/repr.h" #include "ui/uxmanager.h" #include "../ui/icon-names.h" -#include "../pen-context.h" -#include "../tweak-context.h" +#include "ui/tools/pen-tool.h" +#include "ui/tools/tweak-tool.h" using Inkscape::UI::UXManager; |
