diff --git a/app/src/gambas3/.lang/.pot b/app/src/gambas3/.lang/.pot index cecc0bf82..fe74c2e61 100644 --- a/app/src/gambas3/.lang/.pot +++ b/app/src/gambas3/.lang/.pot @@ -2117,6 +2117,22 @@ msgstr "" msgid "Zoom fit" msgstr "" +#: FImageEditor.form:345 +msgid "Save as JPEG" +msgstr "" + +#: FImageEditor.form:351 +msgid "Save as PNG" +msgstr "" + +#: FImageEditor.form:356 +msgid "Save as BMP" +msgstr "" + +#: FImageEditor.form:363 +msgid "Save as TIFF" +msgstr "" + #: FImageEditor.form:370 msgid "Image editor" msgstr "" @@ -3447,11 +3463,11 @@ msgstr "" msgid "Bad group name !" msgstr "" -#: FMenu.class:588 +#: FMenu.class:589 msgid "This menu is too deep !" msgstr "" -#: FMenu.class:958 Project.module:5170 +#: FMenu.class:959 Project.module:5170 msgid "modified" msgstr "" diff --git a/app/src/gambas3/.lang/fr.mo b/app/src/gambas3/.lang/fr.mo index 58046ec7e..3068e32ae 100644 Binary files a/app/src/gambas3/.lang/fr.mo and b/app/src/gambas3/.lang/fr.mo differ diff --git a/app/src/gambas3/.lang/fr.po b/app/src/gambas3/.lang/fr.po index 381d9c9f5..b3c3ce149 100644 --- a/app/src/gambas3/.lang/fr.po +++ b/app/src/gambas3/.lang/fr.po @@ -255,87 +255,87 @@ msgstr "Signet précédent" msgid "Next bookmark" msgstr "Signet suivant" -#: CClassInfo.class:557 FMain.form:1421 FProperty.form:23 +#: CClassInfo.class:571 FMain.form:1421 FProperty.form:23 msgid "Properties" msgstr "Propriétés" -#: CClassInfo.class:558 +#: CClassInfo.class:572 msgid "Variables" msgstr "Variables" -#: CClassInfo.class:559 +#: CClassInfo.class:573 msgid "Methods" msgstr "Méthodes" -#: CClassInfo.class:560 +#: CClassInfo.class:574 msgid "Events" msgstr "Evènements" -#: CClassInfo.class:588 +#: CClassInfo.class:602 msgid "This class is static." msgstr "Cette classe est statique." -#: CClassInfo.class:590 +#: CClassInfo.class:604 msgid "This class can be used like an object by creating an hidden instance on demand." msgstr "Cette classe peut être utilisée comme un objet en créant une instance cachée à la demande." -#: CClassInfo.class:594 +#: CClassInfo.class:608 msgid "This class is &1." msgstr "Cette class est &1." -#: CClassInfo.class:594 +#: CClassInfo.class:608 msgid "creatable" msgstr "instanciable" -#: CClassInfo.class:603 +#: CClassInfo.class:617 msgid "This class can be used as a &1." msgstr "Cette classe peut être utilisée comme &1." -#: CClassInfo.class:603 +#: CClassInfo.class:617 msgid "function" msgstr "fonction" -#: CClassInfo.class:608 +#: CClassInfo.class:622 msgid "This class acts like a &1 / &2 array." msgstr "Cette classe se comporte comme un tableau accessible en &1 / &2." -#: CClassInfo.class:608 +#: CClassInfo.class:622 msgid "read" msgstr "lecture" -#: CClassInfo.class:608 +#: CClassInfo.class:622 msgid "write" msgstr "écriture" -#: CClassInfo.class:610 +#: CClassInfo.class:624 msgid "This class acts like a &1 array." msgstr "Cette classe se comporte comme un tableau accessible en &1." -#: CClassInfo.class:610 +#: CClassInfo.class:624 msgid "write-only" msgstr "écriture seule" -#: CClassInfo.class:613 Project.module:1630 +#: CClassInfo.class:627 Project.module:1630 msgid "read-only" msgstr "lecture seule" -#: CClassInfo.class:618 +#: CClassInfo.class:632 msgid "This class is &1 with the FOR EACH keyword." msgstr "Cette classe est &1 à l'aide du mot-clef FOR EACH." -#: CClassInfo.class:618 +#: CClassInfo.class:632 msgid "enumerable" msgstr "énumérable" -#: CClassInfo.class:643 +#: CClassInfo.class:657 msgid "This class inherits &1." msgstr "Cette class hérite de &1." -#: CClassInfo.class:658 MTheme.module:6 +#: CClassInfo.class:672 MTheme.module:6 msgid "Symbols" msgstr "Symboles" -#: CClassInfo.class:659 +#: CClassInfo.class:673 msgid "Constants" msgstr "Constantes" @@ -982,31 +982,31 @@ msgid "Open" msgstr "Ouvrir" #: FConflict.form:53 FConnectionEditor.form:358 FEditor.form:144 -#: FForm.form:239 FImageEditor.form:118 FMenu.form:105 FOutput.form:58 +#: FForm.form:239 FImageEditor.form:123 FMenu.form:105 FOutput.form:58 #: FProjectVersion.form:234 FTextEditor.form:108 msgid "Cut" msgstr "Couper" #: FConflict.form:59 FConnectionEditor.form:147 FEditor.form:150 -#: FForm.form:246 FImageEditor.form:126 FMenu.form:111 FOutput.form:65 +#: FForm.form:246 FImageEditor.form:131 FMenu.form:111 FOutput.form:65 #: FProjectVersion.form:240 FTextEditor.form:115 msgid "Copy" msgstr "Copier" #: FConflict.form:65 FConnectionEditor.form:379 FEditor.form:157 -#: FForm.form:259 FImageEditor.form:133 FMenu.form:117 FOutput.form:72 +#: FForm.form:259 FImageEditor.form:138 FMenu.form:117 FOutput.form:72 #: FPasteTable.form:101 FProjectVersion.form:246 FTextEditor.form:122 msgid "Paste" msgstr "Coller" #: FConflict.form:71 FConnectionEditor.form:386 FEditor.form:128 -#: FForm.form:222 FImageEditor.form:99 FOption.form:561 FOutput.form:41 +#: FForm.form:222 FImageEditor.form:104 FOption.form:561 FOutput.form:41 #: FProjectVersion.form:252 FTextEditor.form:91 msgid "Undo" msgstr "Annuler" #: FConflict.form:77 FConnectionEditor.form:393 FEditor.form:135 -#: FForm.form:229 FImageEditor.form:107 FOutput.form:48 +#: FForm.form:229 FImageEditor.form:112 FOutput.form:48 #: FProjectVersion.form:258 FTextEditor.form:98 msgid "Redo" msgstr "Rétablir" @@ -1051,7 +1051,7 @@ msgid "Sol&ve" msgstr "&Résoudre" #: FConflict.form:184 FDebugInfo.form:270 FEditor.form:310 -#: FFileProperty.form:75 FForm.form:408 FImageEditor.form:330 +#: FFileProperty.form:75 FForm.form:408 FImageEditor.form:335 #: FImportTable.form:222 FProjectVersion.form:323 FSystemInfo.form:83 #: FTextEditor.form:244 FTips.form:83 msgid "Close" @@ -1207,12 +1207,12 @@ msgid "Connection editor" msgstr "Editeur de connexion" #: FConnectionEditor.form:100 FEditor.form:323 FForm.form:421 -#: FImageEditor.form:323 FMenu.class:68 FTextEditor.form:237 +#: FImageEditor.form:328 FMenu.class:68 FTextEditor.form:237 msgid "Save" msgstr "Enregistrer" #: FConnectionEditor.form:108 FEditor.form:317 FForm.form:415 -#: FHelpBrowser.form:67 FImageEditor.form:316 FTextEditor.form:231 +#: FHelpBrowser.form:67 FImageEditor.form:321 FTextEditor.form:231 #: FTranslate.class:650 msgid "Reload" msgstr "Recharger" @@ -1572,7 +1572,7 @@ msgstr "Expression" msgid "Function" msgstr "Fonction" -#: FDebugInfo.class:55 FImageEditor.form:489 FImportTable.class:56 +#: FDebugInfo.class:55 FImageEditor.form:522 FImportTable.class:56 #: FOption.form:642 msgid "Line" msgstr "Ligne" @@ -1597,7 +1597,7 @@ msgstr "Message" msgid "native code" msgstr "code natif" -#: FDebugInfo.class:570 FImageEditor.form:576 FList.class:153 +#: FDebugInfo.class:570 FImageEditor.form:609 FList.class:153 #: FOption.class:675 FOutput.form:79 msgid "Clear" msgstr "Effacer" @@ -1744,7 +1744,7 @@ msgstr "Ouvrir le formulaire" msgid "&Startup class" msgstr "Cla&sse de démarrage" -#: FEditor.form:167 FImageEditor.form:143 FTextEditor.form:132 +#: FEditor.form:167 FImageEditor.form:148 FTextEditor.form:132 msgid "Select &All" msgstr "&Tout sélectionner" @@ -1808,7 +1808,7 @@ msgstr "Formater le code" msgid "Sort procedures..." msgstr "Trier les procédures..." -#: FEditor.form:281 FImageEditor.form:276 FTextEditor.form:202 +#: FEditor.form:281 FImageEditor.form:281 FTextEditor.form:202 msgid "View" msgstr "Affichage" @@ -2265,11 +2265,11 @@ msgstr "Aller en avant" msgid "Show help tree" msgstr "Afficher l'arborescence de l'aide" -#: FHelpBrowser.form:85 FImageEditor.form:281 +#: FHelpBrowser.form:85 FImageEditor.form:286 msgid "Zoom in" msgstr "Zoom avant" -#: FHelpBrowser.form:91 FImageEditor.form:289 +#: FHelpBrowser.form:91 FImageEditor.form:294 msgid "Zoom out" msgstr "Zoom arrière" @@ -2285,119 +2285,135 @@ msgstr "Imprimer" msgid "Modify documentation..." msgstr "Modifier la documentation..." -#: FImageEditor.form:149 +#: FImageEditor.form:154 msgid "Hide selection" msgstr "Cacher le sélection" -#: FImageEditor.form:154 MTheme.module:6 +#: FImageEditor.form:159 MTheme.module:6 msgid "Selection" msgstr "Sélection" -#: FImageEditor.form:159 +#: FImageEditor.form:164 msgid "Invert selection" msgstr "Inverser la sélection" -#: FImageEditor.form:167 +#: FImageEditor.form:172 msgid "Duplicate selection" msgstr "Dupliquer la sélection" -#: FImageEditor.form:175 FImageOffsetSelection.form:12 +#: FImageEditor.form:180 FImageOffsetSelection.form:12 msgid "Offset selection" msgstr "Agrandir ou rétrécir la sélection" -#: FImageEditor.form:182 +#: FImageEditor.form:187 msgid "Shape grid" msgstr "Grille de la forme" -#: FImageEditor.form:220 +#: FImageEditor.form:225 msgid "Action" msgstr "Action" -#: FImageEditor.form:225 +#: FImageEditor.form:230 msgid "Crop" msgstr "Découper" -#: FImageEditor.form:233 FImageProperty.form:279 +#: FImageEditor.form:238 FImageProperty.form:279 msgid "Horizontal flip" msgstr "Miroir horizontal" -#: FImageEditor.form:240 FImageProperty.form:273 +#: FImageEditor.form:245 FImageProperty.form:273 msgid "Vertical flip" msgstr "Miroir vertical" -#: FImageEditor.form:247 FImageProperty.form:267 +#: FImageEditor.form:252 FImageProperty.form:267 msgid "Rotate counter-clockwise" msgstr "Rotation de 90° vers la gauche" -#: FImageEditor.form:255 FImageProperty.form:261 +#: FImageEditor.form:260 FImageProperty.form:261 msgid "Rotate clockwise" msgstr "Rotation de 90° vers la droite" -#: FImageEditor.form:263 +#: FImageEditor.form:268 msgid "Resize..." msgstr "Redimensionner..." -#: FImageEditor.form:270 +#: FImageEditor.form:275 msgid "Rotate..." msgstr "Rotation..." -#: FImageEditor.form:297 +#: FImageEditor.form:302 msgid "Zoom normal" msgstr "Zoom normal" -#: FImageEditor.form:305 +#: FImageEditor.form:310 msgid "Zoom fit" msgstr "Zoom ajusté" -#: FImageEditor.form:339 +#: FImageEditor.form:345 +msgid "Save as JPEG" +msgstr "Enregistrer comme JPEG" + +#: FImageEditor.form:351 +msgid "Save as PNG" +msgstr "Enregistrer comme PNG" + +#: FImageEditor.form:356 +msgid "Save as BMP" +msgstr "Enregistrer comme BMP" + +#: FImageEditor.form:363 +msgid "Save as TIFF" +msgstr "Enregistrer comme TIFF" + +#: FImageEditor.form:370 msgid "Image editor" msgstr "Editeur d'image" -#: FImageEditor.form:439 +#: FImageEditor.form:472 msgid "Drawing grid" msgstr "Grille de dessin" -#: FImageEditor.form:454 +#: FImageEditor.form:487 msgid "Move" msgstr "Déplacer" -#: FImageEditor.form:465 +#: FImageEditor.form:498 msgid "Draw" msgstr "Dessiner" -#: FImageEditor.form:475 +#: FImageEditor.form:508 msgid "Erase" msgstr "Gommer" -#: FImageEditor.form:499 +#: FImageEditor.form:532 msgid "Rectangle" msgstr "Rectangle" -#: FImageEditor.form:509 +#: FImageEditor.form:542 msgid "Ellipse" msgstr "Ellipse" -#: FImageEditor.form:519 +#: FImageEditor.form:552 msgid "Magic wand" msgstr "Baguette magique" -#: FImageEditor.form:529 +#: FImageEditor.form:562 msgid "Edit selection" msgstr "Modifier la sélection" -#: FImageEditor.form:562 +#: FImageEditor.form:595 msgid "Stroke" msgstr "Tracer" -#: FImageEditor.form:569 +#: FImageEditor.form:602 msgid "Fill" msgstr "Remplir" -#: FImageEditor.form:625 +#: FImageEditor.form:658 msgid "Resize or stretch image" msgstr "Redimensionner ou étirer l'image" -#: FImageEditor.form:634 FImageRotate.form:11 +#: FImageEditor.form:667 FImageRotate.form:11 msgid "Rotate image" msgstr "Rotation de l'image" @@ -3669,11 +3685,11 @@ msgstr "Nom de menu incorrect !" msgid "Bad group name !" msgstr "Nom de groupe incorrect !" -#: FMenu.class:588 +#: FMenu.class:589 msgid "This menu is too deep !" msgstr "Ce menu est trop profond !" -#: FMenu.class:958 Project.module:5170 +#: FMenu.class:959 Project.module:5170 msgid "modified" msgstr "modifié" @@ -5194,9 +5210,8 @@ msgid "Irish (Ireland)" msgstr "Irlandais (Irlande)" #: Language.module:66 -#, fuzzy msgid "Icelandic (Iceland)" -msgstr "Irlandais (Irlande)" +msgstr "Islandais (Islande)" #: Language.module:68 msgid "Italian (Italy)" diff --git a/app/src/gambas3/.src/Editor/Form/FMenu.class b/app/src/gambas3/.src/Editor/Form/FMenu.class index f499a5310..ea26eda26 100644 --- a/app/src/gambas3/.src/Editor/Form/FMenu.class +++ b/app/src/gambas3/.src/Editor/Form/FMenu.class @@ -455,6 +455,7 @@ Public Sub btnInsert_Click() hCMenu = New CMenu hCMenu.Name = GetName() hCMenu.Caption = hCMenu.Name + hCMenu.Translate = True If iIndex > 0 Then hCMenu.Level = $aMenu[iIndex - 1].Level $cName[hCMenu.Name] = True diff --git a/app/src/gambas3/.src/Editor/Image/FImageEditor.class b/app/src/gambas3/.src/Editor/Image/FImageEditor.class index ed8b537f0..4370b2d38 100644 --- a/app/src/gambas3/.src/Editor/Image/FImageEditor.class +++ b/app/src/gambas3/.src/Editor/Image/FImageEditor.class @@ -1254,8 +1254,10 @@ Public Sub imvImage_MouseUp() SetMagnet(Null) Case "paste" - $hPasteCurrent = $hPasteSelect.Copy() - $hChangeRect = $hPasteCurrent.GetExtents() + If $hPaste Then + $hPasteCurrent = $hPasteSelect.Copy() + $hChangeRect = $hPasteCurrent.GetExtents() + Endif End Select diff --git a/app/src/gambas3/.src/Editor/Image/FImageEditor.form b/app/src/gambas3/.src/Editor/Image/FImageEditor.form index 5eb19614d..09aa60c89 100644 --- a/app/src/gambas3/.src/Editor/Image/FImageEditor.form +++ b/app/src/gambas3/.src/Editor/Image/FImageEditor.form @@ -217,26 +217,22 @@ #Translate = False { mnuFormatJPEG Menu mnuSaveAs Name = "mnuFormatJPEG" - #Translate = False - Text = "Save as JPEG" + Text = ("Save as JPEG") Tag = "jpeg" } { mnuFormatPNG Menu mnuSaveAs Name = "mnuFormatPNG" - #Translate = False - Text = "Save as PNG" + Text = ("Save as PNG") Tag = "png" } { mnuFormatBMP Menu - #Translate = False - Text = "Save as BMP" + Text = ("Save as BMP") Tag = "bmp" } { mnuFormatTIFF Menu mnuSaveAs Name = "mnuFormatTIFF" - #Translate = False Action = "tiff" - Text = "Save as TIFF" + Text = ("Save as TIFF") } } { panToolBar ToolBar @@ -331,9 +327,9 @@ { btnGrid ToolButton MoveScaled(49,0,4,4) ToolTip = ("Drawing grid") - Action = ".grid" + Action = ".draw-grid" AutoResize = True - Picture = Picture["icon:/small/grid"] + Picture = Picture["img/draw/grid.png"] Toggle = True } { Separator2 Separator @@ -562,6 +558,10 @@ Shortcut = "Ctrl+X" Picture = "icon:/small/cut" } + { Action draw-grid + Text = "Drawing grid" + Picture = "img/draw/grid.png" + } { Action duplicate Text = "Duplicate selection" Shortcut = "Ctrl+D" @@ -581,10 +581,6 @@ Shortcut = "" Picture = "img/draw/vflip.png" } - { Action grid - Text = "Drawing grid" - Picture = "icon:/small/grid" - } { Action hide-selection Text = "Hide selection" Shortcut = "Esc" @@ -729,7 +725,7 @@ { Toolbars { Toolbar image Text = "Image editor" - List = "save,reload,undo,redo,copy,cut,tool-paste,zoom-in,zoom,zoom-out,zoom-normal,zoom-fit,grid,tool-move,tool-draw,tool-erase,tool-line,tool-rectangle,tool-ellipse,tool-magic,tool-change,invert,duplicate,offset,stroke,fill,clear,crop,flip-h,flip-v,rotate-r,rotate-l,resize,rotate" - Default = "save,reload,undo,redo,|,copy,cut,tool-paste,|,zoom-in,zoom,zoom-out,zoom-normal,zoom-fit,grid,|,tool-move,tool-draw,tool-erase,|,tool-line,tool-rectangle,tool-ellipse,tool-magic,tool-change,invert,duplicate,offset,|,stroke,fill,clear,|,rotate-r,rotate-l,resize,rotate" + List = "save,reload,undo,redo,copy,cut,tool-paste,zoom-in,zoom,zoom-out,zoom-normal,zoom-fit,draw-grid,tool-move,tool-draw,tool-erase,tool-line,tool-rectangle,tool-ellipse,tool-magic,tool-change,invert,duplicate,offset,stroke,fill,clear,crop,flip-h,flip-v,rotate-r,rotate-l,resize,rotate" + Default = "save,reload,undo,redo,|,copy,cut,tool-paste,|,zoom-in,zoom,zoom-out,zoom-normal,zoom-fit,draw-grid,|,tool-move,tool-draw,tool-erase,|,tool-line,tool-rectangle,tool-ellipse,tool-magic,tool-change,invert,duplicate,offset,|,stroke,fill,clear,|,rotate-r,rotate-l,resize,rotate" } } diff --git a/app/src/gambas3/img/draw/grid.png b/app/src/gambas3/img/draw/grid.png new file mode 100644 index 000000000..0dd91ced7 Binary files /dev/null and b/app/src/gambas3/img/draw/grid.png differ