[TASK] Add SVG Icons for document save actions 58/43058/3
authorBenjamin Kott <benjamin.kott@outlook.com>
Sat, 5 Sep 2015 18:58:20 +0000 (20:58 +0200)
committerBenjamin Kott <info@bk2k.info>
Sat, 5 Sep 2015 20:28:16 +0000 (22:28 +0200)
Resolves: #69554
Releases: master
Change-Id: I0564f908ecebf0e6b317b299b43e1b4d4f9af576
Reviewed-on: http://review.typo3.org/43058
Reviewed-by: Mathias Schreiber <mathias.schreiber@wmdb.de>
Tested-by: Mathias Schreiber <mathias.schreiber@wmdb.de>
Reviewed-by: Frans Saris <franssaris@gmail.com>
Tested-by: Frans Saris <franssaris@gmail.com>
18 files changed:
Build/Gruntfile.js
Build/Resources/Private/Icons/Action/actions-document-save-cleartranslationcache.svg [new file with mode: 0644]
Build/Resources/Private/Icons/Action/actions-document-save-close.svg [new file with mode: 0644]
Build/Resources/Private/Icons/Action/actions-document-save-new.svg [new file with mode: 0644]
Build/Resources/Private/Icons/Action/actions-document-save-translation.svg [new file with mode: 0644]
Build/Resources/Private/Icons/Action/actions-document-save-view.svg [new file with mode: 0644]
Build/Resources/Private/Icons/Action/actions-document-save.svg [new file with mode: 0644]
typo3/sysext/backend/Classes/Controller/EditDocumentController.php
typo3/sysext/backend/Classes/Controller/PageLayoutController.php
typo3/sysext/backend/Classes/Controller/Wizard/RteController.php
typo3/sysext/backend/Resources/Public/Icons/Action/actions-document-save-cleartranslationcache.svg [new file with mode: 0644]
typo3/sysext/backend/Resources/Public/Icons/Action/actions-document-save-close.svg [new file with mode: 0644]
typo3/sysext/backend/Resources/Public/Icons/Action/actions-document-save-new.svg [new file with mode: 0644]
typo3/sysext/backend/Resources/Public/Icons/Action/actions-document-save-translation.svg [new file with mode: 0644]
typo3/sysext/backend/Resources/Public/Icons/Action/actions-document-save-view.svg [new file with mode: 0644]
typo3/sysext/backend/Resources/Public/Icons/Action/actions-document-save.svg [new file with mode: 0644]
typo3/sysext/core/Classes/Imaging/IconRegistry.php
typo3/sysext/core/ext_tables.php

index eb893eb..fc106a3 100644 (file)
@@ -130,6 +130,12 @@ module.exports = function(grunt) {
                        // Action Icons
                        icons_action: {
                                files: {
+                                       '<%= paths.backend %>Public/Icons/Action/actions-document-save-cleartranslationcache.svg': '<%= paths.icons %>Action/actions-document-save-cleartranslationcache.svg',
+                                       '<%= paths.backend %>Public/Icons/Action/actions-document-save-close.svg': '<%= paths.icons %>Action/actions-document-save-close.svg',
+                                       '<%= paths.backend %>Public/Icons/Action/actions-document-save-new.svg': '<%= paths.icons %>Action/actions-document-save-new.svg',
+                                       '<%= paths.backend %>Public/Icons/Action/actions-document-save-translation.svg': '<%= paths.icons %>Action/actions-document-save-translation.svg',
+                                       '<%= paths.backend %>Public/Icons/Action/actions-document-save-view.svg': '<%= paths.icons %>Action/actions-document-save-view.svg',
+                                       '<%= paths.backend %>Public/Icons/Action/actions-document-save.svg': '<%= paths.icons %>Action/actions-document-save.svg',
                                        '<%= paths.backend %>Public/Icons/Action/actions-system-cache-clear-impact-high.svg': '<%= paths.icons %>Action/actions-system-cache-clear-impact-high.svg',
                                        '<%= paths.backend %>Public/Icons/Action/actions-system-cache-clear-impact-low.svg': '<%= paths.icons %>Action/actions-system-cache-clear-impact-low.svg',
                                        '<%= paths.backend %>Public/Icons/Action/actions-system-cache-clear-impact-medium.svg': '<%= paths.icons %>Action/actions-system-cache-clear-impact-medium.svg'
diff --git a/Build/Resources/Private/Icons/Action/actions-document-save-cleartranslationcache.svg b/Build/Resources/Private/Icons/Action/actions-document-save-cleartranslationcache.svg
new file mode 100644 (file)
index 0000000..bdbcd62
--- /dev/null
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 19.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0)  -->
+<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+        viewBox="0 0 16 16" enable-background="new 0 0 16 16" xml:space="preserve">
+<g id="save-cleartranslationcache">
+       <path d="M15.79,8.07C15.72,8.02,15.64,8,15.57,8c-0.07,0-0.13,0.02-0.2,0.05c-0.05,0.03-0.12,0.08-0.21,0.13
+               c-0.23,0.16-0.59,0.39-1,0.58c0.22,0.28,0.31,0.64,0.23,0.99C14.6,9.67,14.81,9.57,15,9.47v4.73c-0.4,0.24-1.18,0.68-1.86,0.68
+               c-0.22,0-0.41-0.05-0.57-0.14l-0.19-0.11c-0.06-0.03-0.12-0.07-0.17-0.1l-0.42,0.91c0.03,0.02,0.06,0.03,0.1,0.05l0.19,0.11
+               c0.31,0.18,0.67,0.27,1.07,0.27c1.05,0,2.07-0.64,2.51-0.91c0.05-0.03,0.09-0.05,0.12-0.07C15.9,14.82,16,14.65,16,14.46V8.5
+               C16,8.33,15.92,8.16,15.79,8.07z"/>
+       <path d="M9.45,13.82C8.66,13.9,7.76,14.19,7,14.57V9.95c0.33-0.21,0.71-0.41,1.1-0.58L8.39,8.2C7.4,8.51,6.52,9.06,6.21,9.27
+               C6.08,9.37,6,9.53,6,9.7v5.8c0,0.18,0.08,0.34,0.22,0.44C6.29,15.98,6.36,16,6.43,16c0.07,0,0.16-0.02,0.22-0.07
+               c0.64-0.45,1.65-0.9,2.54-1.06L9.45,13.82z"/>
+       <path d="M13.4,9.61l-2.92,6.26C10.44,15.95,10.35,16,10.25,16c-0.02,0-0.05-0.01-0.08-0.01c-0.12-0.04-0.19-0.15-0.16-0.26
+               l1.07-4.37l-2.2,0.55c-0.02,0.01-0.04,0.01-0.07,0.01c-0.06,0-0.12-0.02-0.17-0.06c-0.07-0.05-0.09-0.14-0.07-0.21l1.09-4.46
+               C9.7,7.07,9.79,7,9.91,7h1.77c0.13,0,0.24,0.1,0.24,0.23c0,0.03-0.01,0.07-0.03,0.1l-0.92,2.5l2.14-0.53
+               c0.02-0.01,0.04-0.01,0.07-0.01c0.07,0,0.13,0.03,0.18,0.08C13.42,9.43,13.44,9.53,13.4,9.61z"/>
+       <path d="M5,14v-3.75V9.7C5,9.46,5.06,9.22,5.17,9H4.5C4.22,9,4,9.22,4,9.5V14H2V2h2v3.5C4,5.78,4.22,6,4.5,6h5
+               C9.78,6,10,5.78,10,5.5V2h0.8c0.28,0,0.55,0.12,0.74,0.32l1.91,2C13.8,4.69,14,5.19,14,5.7v2.03c0.18-0.1,0.38-0.22,0.59-0.36
+               c0.01-0.01,0.03-0.02,0.04-0.03c0.08-0.05,0.14-0.09,0.18-0.12c0.02-0.01,0.03-0.02,0.05-0.03c0.04-0.02,0.09-0.03,0.13-0.05V5.41
+               c0-0.52-0.2-1.02-0.56-1.39l-2.35-2.43C11.71,1.21,11.2,1,10.67,1H1.5C1.22,1,1,1.22,1,1.5v13C1,14.78,1.22,15,1.5,15H5V14z
+                M7,2.25C7,2.11,7.11,2,7.25,2h1.5C8.89,2,9,2.11,9,2.25v2.5C9,4.89,8.89,5,8.75,5h-1.5C7.11,5,7,4.89,7,4.75V2.25z"/>
+</g>
+</svg>
diff --git a/Build/Resources/Private/Icons/Action/actions-document-save-close.svg b/Build/Resources/Private/Icons/Action/actions-document-save-close.svg
new file mode 100644 (file)
index 0000000..a0df599
--- /dev/null
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 19.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0)  -->
+<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+        viewBox="0 0 16 16" enable-background="new 0 0 16 16" xml:space="preserve">
+<g id="save-close">
+       <path d="M15.2,10.2L13.4,12l1.8,1.8c0.2,0.2,0.2,0.5,0,0.7l-0.7,0.7c-0.2,0.2-0.5,0.2-0.7,0L12,13.4l-1.8,1.8
+               c-0.2,0.2-0.5,0.2-0.7,0l-0.7-0.7c-0.2-0.2-0.2-0.5,0-0.7l1.8-1.8l-1.8-1.8c-0.2-0.2-0.2-0.5,0-0.7l0.7-0.7c0.2-0.2,0.5-0.2,0.7,0
+               l1.8,1.8l1.8-1.8c0.2-0.2,0.5-0.2,0.7,0l0.7,0.7C15.4,9.7,15.4,10,15.2,10.2z"/>
+       <path d="M7.7,14H5v-3.8C5,10.1,5.1,10,5.3,10h2.4c0-0.4,0.1-0.7,0.3-1H4.5C4.2,9,4,9.2,4,9.5V14H2V2h2v3.5C4,5.8,4.2,6,4.5,6h5
+               C9.8,6,10,5.8,10,5.5V2h0.8c0.3,0,0.5,0.1,0.7,0.3l1.9,2C13.8,4.7,14,5.2,14,5.7v2c0,0,0.1,0,0.1,0c0.3,0,0.6,0.1,0.9,0.3V5.4
+               c0-0.5-0.2-1-0.6-1.4l-2.4-2.4C11.7,1.2,11.2,1,10.7,1H1.5C1.2,1,1,1.2,1,1.5v13C1,14.8,1.2,15,1.5,15H8C7.8,14.7,7.7,14.4,7.7,14z
+                M7,2.3C7,2.1,7.1,2,7.3,2h1.5C8.9,2,9,2.1,9,2.3v2.5C9,4.9,8.9,5,8.8,5H7.3C7.1,5,7,4.9,7,4.8V2.3z"/>
+</g>
+</svg>
diff --git a/Build/Resources/Private/Icons/Action/actions-document-save-new.svg b/Build/Resources/Private/Icons/Action/actions-document-save-new.svg
new file mode 100644 (file)
index 0000000..2f7f15e
--- /dev/null
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 19.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0)  -->
+<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+        viewBox="0 0 16 16" enable-background="new 0 0 16 16" xml:space="preserve">
+<g id="save-new">
+       <path d="M15.5,13H13v2.5c0,0.3-0.2,0.5-0.5,0.5h-1c-0.3,0-0.5-0.2-0.5-0.5V13H8.5C8.2,13,8,12.8,8,12.5v-1C8,11.2,8.2,11,8.5,11H11
+               V8.5C11,8.2,11.2,8,11.5,8h1C12.8,8,13,8.2,13,8.5V11h2.5c0.3,0,0.5,0.2,0.5,0.5v1C16,12.8,15.8,13,15.5,13z"/>
+       <path d="M14,14v1h0.5c0.3,0,0.5-0.2,0.5-0.5V14H14z"/>
+       <path d="M10,14H8.5H5v-3.8C5,10.1,5.1,10,5.3,10h3.3H10V9H4.5C4.2,9,4,9.2,4,9.5V14H2V2h2v3.5C4,5.8,4.2,6,4.5,6h5
+               C9.8,6,10,5.8,10,5.5V2h0.8c0.3,0,0.5,0.1,0.7,0.3l1.9,2C13.8,4.7,14,5.2,14,5.7v2.8V10h1V5.4c0-0.5-0.2-1-0.6-1.4l-2.4-2.4
+               C11.7,1.2,11.2,1,10.7,1H1.5C1.2,1,1,1.2,1,1.5v13C1,14.8,1.2,15,1.5,15H10V14z M7,2.3C7,2.1,7.1,2,7.3,2h1.5C8.9,2,9,2.1,9,2.3
+               v2.5C9,4.9,8.9,5,8.8,5H7.3C7.1,5,7,4.9,7,4.8V2.3z"/>
+</g>
+</svg>
diff --git a/Build/Resources/Private/Icons/Action/actions-document-save-translation.svg b/Build/Resources/Private/Icons/Action/actions-document-save-translation.svg
new file mode 100644 (file)
index 0000000..5efeede
--- /dev/null
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 19.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0)  -->
+<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+        viewBox="0 0 16 16" enable-background="new 0 0 16 16" xml:space="preserve">
+<g id="save-translation">
+       <path d="M15.79,8.07C15.72,8.02,15.64,8,15.57,8c-0.07,0-0.13,0.02-0.2,0.05c-0.05,0.03-0.12,0.08-0.21,0.13
+               c-0.42,0.29-1.3,0.88-2.11,0.88c-0.22,0-0.43-0.05-0.6-0.15C11.67,8.48,10.74,8,9.61,8c-1.43,0-2.96,0.98-3.4,1.27
+               C6.08,9.37,6,9.53,6,9.7v5.8c0,0.18,0.08,0.34,0.22,0.44C6.29,15.98,6.36,16,6.43,16c0.07,0,0.16-0.02,0.22-0.07
+               c0.79-0.56,2.17-1.14,3.15-1.14c0.84,0,1.38,0.31,2.07,0.71l0.19,0.11c0.31,0.18,0.67,0.27,1.07,0.27c1.05,0,2.07-0.64,2.51-0.91
+               c0.05-0.03,0.09-0.05,0.12-0.07C15.9,14.82,16,14.65,16,14.46V8.5C16,8.33,15.92,8.16,15.79,8.07z M15,14.2
+               c-0.4,0.24-1.18,0.68-1.86,0.68c-0.22,0-0.41-0.05-0.57-0.14l-0.19-0.11c-0.72-0.42-1.46-0.85-2.57-0.85
+               c-0.87,0-1.93,0.35-2.81,0.78V9.95C7.76,9.47,8.79,9,9.61,9c0.87,0,1.61,0.37,2.34,0.78c0.33,0.19,0.7,0.28,1.1,0.28
+               c0.7,0,1.38-0.28,1.95-0.6V14.2z"/>
+       <path d="M5,14v-3.75V9.7C5,9.46,5.06,9.22,5.17,9H4.5C4.22,9,4,9.22,4,9.5V14H2V2h2v3.5C4,5.78,4.22,6,4.5,6h5
+               C9.78,6,10,5.78,10,5.5V2h0.8c0.28,0,0.55,0.12,0.74,0.32l1.91,2C13.8,4.69,14,5.19,14,5.7v2.03c0.18-0.1,0.38-0.22,0.59-0.36
+               c0.01-0.01,0.03-0.02,0.04-0.03c0.08-0.05,0.14-0.09,0.18-0.12c0.02-0.01,0.03-0.02,0.05-0.03c0.04-0.02,0.09-0.03,0.13-0.05V5.41
+               c0-0.52-0.2-1.02-0.56-1.39l-2.35-2.43C11.71,1.21,11.2,1,10.67,1H1.5C1.22,1,1,1.22,1,1.5v13C1,14.78,1.22,15,1.5,15H5V14z
+                M7,2.25C7,2.11,7.11,2,7.25,2h1.5C8.89,2,9,2.11,9,2.25v2.5C9,4.89,8.89,5,8.75,5h-1.5C7.11,5,7,4.89,7,4.75V2.25z"/>
+</g>
+</svg>
diff --git a/Build/Resources/Private/Icons/Action/actions-document-save-view.svg b/Build/Resources/Private/Icons/Action/actions-document-save-view.svg
new file mode 100644 (file)
index 0000000..9559696
--- /dev/null
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 19.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0)  -->
+<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+        viewBox="0 0 16 16" enable-background="new 0 0 16 16" xml:space="preserve">
+<g id="save-view">
+       <path display="inline" d="M11.2,9c0,0-0.1,0-0.1,0c0,0,0,0,0,0c0,0,0,0,0,0c-2.8,0-5,1.6-5,3.5S8.2,16,11,16s5-1.6,5-3.5
+               C16,10.6,13.8,9.1,11.2,9z M11.1,9.8c0.1,0,0.3,0.1,0.3,0.2c0,0.1-0.1,0.2-0.3,0.2c-0.6,0-1.2,0.5-1.2,1.1c0,0.1-0.1,0.2-0.3,0.2
+               s-0.3-0.1-0.3-0.2C9.4,10.5,10.2,9.8,11.1,9.8z M11,15c-2.2,0-4-1.1-4-2.5c0-0.9,0.7-1.6,1.8-2.1c-0.2,0.3-0.2,0.7-0.2,1.1
+               c0,1.4,1.1,2.5,2.5,2.5s2.5-1.1,2.5-2.5c0-0.4-0.1-0.7-0.2-1c1,0.5,1.7,1.2,1.7,2C15,13.9,13.2,15,11,15z"/>
+       <path d="M5.3,14H5v-3.8C5,10.1,5.1,10,5.3,10H6c0.3-0.4,0.7-0.7,1.2-1H4.5C4.2,9,4,9.2,4,9.5V14H2V2h2v3.5C4,5.8,4.2,6,4.5,6h5
+               C9.8,6,10,5.8,10,5.5V2h0.8c0.3,0,0.5,0.1,0.7,0.3l1.9,2C13.8,4.7,14,5.2,14,5.7v2.9c0.4,0.2,0.7,0.3,1,0.5V5.4
+               c0-0.5-0.2-1-0.6-1.4l-2.4-2.4C11.7,1.2,11.2,1,10.7,1H1.5C1.2,1,1,1.2,1,1.5v13C1,14.8,1.2,15,1.5,15H6C5.7,14.7,5.5,14.4,5.3,14
+               z M7,2.3C7,2.1,7.1,2,7.3,2h1.5C8.9,2,9,2.1,9,2.3v2.5C9,4.9,8.9,5,8.8,5H7.3C7.1,5,7,4.9,7,4.8V2.3z"/>
+</g>
+</svg>
diff --git a/Build/Resources/Private/Icons/Action/actions-document-save.svg b/Build/Resources/Private/Icons/Action/actions-document-save.svg
new file mode 100644 (file)
index 0000000..8202cc2
--- /dev/null
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 19.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0)  -->
+<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+        viewBox="0 0 16 16" enable-background="new 0 0 16 16" xml:space="preserve">
+<g id="save">
+       <path d="M10.7,1H1.5C1.2,1,1,1.2,1,1.5v13C1,14.8,1.2,15,1.5,15h13c0.3,0,0.5-0.2,0.5-0.5V5.4c0-0.5-0.2-1-0.6-1.4l-2.4-2.4
+               C11.7,1.2,11.2,1,10.7,1z M7.3,2h1.5C8.9,2,9,2.1,9,2.3v2.5C9,4.9,8.9,5,8.8,5H7.3C7.1,5,7,4.9,7,4.8V2.3C7,2.1,7.1,2,7.3,2z
+                M11,14H5v-3.8C5,10.1,5.1,10,5.3,10h5.5c0.1,0,0.3,0.1,0.3,0.3V14z M14,14h-2V9.5C12,9.2,11.8,9,11.5,9h-7C4.2,9,4,9.2,4,9.5V14H2
+               V2h2v3.5C4,5.8,4.2,6,4.5,6h5C9.8,6,10,5.8,10,5.5V2h0.8c0.3,0,0.5,0.1,0.7,0.3l1.9,2C13.8,4.7,14,5.2,14,5.7V14z"/>
+</g>
+</svg>
index 378a1fa..38ec1b6 100644 (file)
@@ -1132,8 +1132,9 @@ class EditDocumentController implements \TYPO3\CMS\Core\Http\ControllerInterface
                // The action of each button is decided by its name attribute. (See doProcessData())
                if (!$this->errorC && !$GLOBALS['TCA'][$this->firstEl['table']]['ctrl']['readOnly']) {
                        // SAVE button:
-                       $iconSave = $iconFactory->getIcon('actions-document-save', Icon::SIZE_SMALL);
-                       $buttons['save'] = '<button name="_savedok" class="c-inputButton" value="1" title="' . $lang->sL('LLL:EXT:lang/locallang_core.xlf:rm.saveDoc', TRUE) . '">' . $iconSave . '</button>';
+                       $buttons['save'] = '<button name="_savedok" class="c-inputButton" value="1" title="' . $lang->sL('LLL:EXT:lang/locallang_core.xlf:rm.saveDoc', TRUE) . '">'
+                               . $iconFactory->getIcon('actions-document-save', Icon::SIZE_SMALL)
+                               . '</button>';
                        // SAVE / VIEW button:
                        if ($this->viewId && !$this->noView && $this->getNewIconMode($this->firstEl['table'], 'saveDocView')) {
                                $pagesTSconfig = BackendUtility::getPagesTSconfig($this->pageinfo['uid']);
@@ -1144,21 +1145,29 @@ class EditDocumentController implements \TYPO3\CMS\Core\Http\ControllerInterface
                                        $excludeDokTypes = array(PageRepository::DOKTYPE_RECYCLER, PageRepository::DOKTYPE_SYSFOLDER, PageRepository::DOKTYPE_SPACER);
                                }
                                if (!in_array((int)$this->pageinfo['doktype'], $excludeDokTypes, TRUE) || isset($pagesTSconfig['TCEMAIN.']['preview.'][$this->firstEl['table'].'.']['previewPageId'])) {
-                                       $buttons['save_view'] = IconUtility::getSpriteIcon('actions-document-save-view', array('html' => '<input onclick="window.open(\'\', \'newTYPO3frontendWindow\');" type="submit" class="c-inputButton t3js-editform-submitButton" name="_savedokview" value="1" title="' . $lang->sL('LLL:EXT:lang/locallang_core.xlf:rm.saveDocShow', TRUE) . '" />'));
+                                       $buttons['save_view'] = '<button name="_savedokview" class="c-inputButton t3js-editform-submitButton" value="1" title="' . $lang->sL('LLL:EXT:lang/locallang_core.xlf:rm.saveDocShow', TRUE) . '" onclick="window.open(\'\', \'newTYPO3frontendWindow\');">'
+                                               . $iconFactory->getIcon('actions-document-save-view', Icon::SIZE_SMALL)
+                                               . '</button>';
                                }
                        }
                        // SAVE / NEW button:
                        if (count($this->elementsData) === 1 && $this->getNewIconMode($this->firstEl['table'])) {
-                               $iconSaveNew = $iconFactory->getIcon('actions-document-save-new', Icon::SIZE_SMALL);
-                               $buttons['save_new'] = '<button name="_savedoknew" class="c-inputButton t3js-editform-submitButton" value="1" title="' . $lang->sL('LLL:EXT:lang/locallang_core.xlf:rm.saveNewDoc', TRUE) . '">' . $iconSaveNew . '</button>';
+                               $buttons['save_new'] = '<button name="_savedoknew" class="c-inputButton t3js-editform-submitButton" value="1" title="' . $lang->sL('LLL:EXT:lang/locallang_core.xlf:rm.saveNewDoc', TRUE) . '">'
+                                       . $iconFactory->getIcon('actions-document-save-new', Icon::SIZE_SMALL)
+                                       . '</button>';
                        }
                        // SAVE / CLOSE
-                       $iconSaveClose = $iconFactory->getIcon('actions-document-save-close', Icon::SIZE_SMALL);
-                       $buttons['save_close'] = '<button name="_saveandclosedok" class="c-inputButton t3js-editform-submitButton" value="1" title="' . $lang->sL('LLL:EXT:lang/locallang_core.xlf:rm.saveCloseDoc', TRUE) . '">' . $iconSaveClose . '</button>';
+                       $buttons['save_close'] = '<button name="_saveandclosedok" class="c-inputButton t3js-editform-submitButton" value="1" title="' . $lang->sL('LLL:EXT:lang/locallang_core.xlf:rm.saveCloseDoc', TRUE) . '">'
+                               . $iconFactory->getIcon('actions-document-save-close', Icon::SIZE_SMALL)
+                               . '</button>';
                        // FINISH TRANSLATION / SAVE / CLOSE
                        if ($GLOBALS['TYPO3_CONF_VARS']['BE']['explicitConfirmationOfTranslation']) {
-                               $buttons['translation_save'] = '<input type="image" class="c-inputButton" name="_translation_savedok" src="sysext/t3skin/images/icons/actions/document-save-translation.png" title="' . $lang->sL('LLL:EXT:lang/locallang_core.xlf:rm.translationSaveDoc', TRUE) . '" /> ';
-                               $buttons['translation_saveclear'] = '<input type="image" class="c-inputButton" name="_translation_savedokclear" src="sysext/t3skin/images/icons/actions/document-save-cleartranslationcache.png" title="' . $lang->sL('LLL:EXT:lang/locallang_core.xlf:rm.translationSaveDocClear', TRUE) . '" />';
+                               $buttons['translation_save'] = '<button name="_translation_savedok" class="c-inputButton" value="1" title="' . $lang->sL('LLL:EXT:lang/locallang_core.xlf:rm.translationSaveDoc', TRUE) . '">'
+                                       . $iconFactory->getIcon('actions-document-save-translation', Icon::SIZE_SMALL)
+                                       . '</button>';
+                               $buttons['translation_saveclear'] = '<button name="_translation_savedokclear" class="c-inputButton" value="1" title="' . $lang->sL('LLL:EXT:lang/locallang_core.xlf:rm.translationSaveDocClear', TRUE) . '">'
+                                       . $iconFactory->getIcon('actions-document-save-cleartranslationcache', Icon::SIZE_SMALL)
+                                       . '</button>';
                        }
                }
                // CLOSE button:
index 5595071..1bbdfcc 100755 (executable)
@@ -1215,12 +1215,18 @@ class PageLayoutController {
                                        . $this->iconFactory->getIcon('actions-document-save-close', Icon::SIZE_SMALL)
                                        . '</button>';
                                // Save record and show page
-                               $buttons['savedokshow'] = '<a href="#" onclick="' . htmlspecialchars('document.editform.redirect.value+=\'&popView=1\'; TBE_EDITOR.checkAndDoSubmit(1); return false;') . '" title="' . $lang->sL('LLL:EXT:lang/locallang_core.xlf:rm.saveDocShow', TRUE) . '">' . IconUtility::getSpriteIcon('actions-document-save-view') . '</a>';
+                               $buttons['savedokshow'] = '<a href="#" onclick="' . htmlspecialchars('document.editform.redirect.value+=\'&popView=1\'; TBE_EDITOR.checkAndDoSubmit(1); return false;') . '" title="' . $lang->sL('LLL:EXT:lang/locallang_core.xlf:rm.saveDocShow', TRUE) . '">'
+                                       . $this->iconFactory->getIcon('actions-document-save-view', Icon::SIZE_SMALL)
+                                       . '</a>';
                                // Close record
-                               $buttons['closedok'] = '<a href="#" onclick="' . htmlspecialchars('jumpToUrl(' . GeneralUtility::quoteJSvalue($this->closeUrl) . '); return false;') . '" title="' . $lang->sL('LLL:EXT:lang/locallang_core.xlf:rm.closeDoc', TRUE) . '">' . $this->iconFactory->getIcon('actions-document-close', Icon::SIZE_SMALL) . '</a>';
+                               $buttons['closedok'] = '<a href="#" onclick="' . htmlspecialchars('jumpToUrl(' . GeneralUtility::quoteJSvalue($this->closeUrl) . '); return false;') . '" title="' . $lang->sL('LLL:EXT:lang/locallang_core.xlf:rm.closeDoc', TRUE) . '">'
+                                       . $this->iconFactory->getIcon('actions-document-close', Icon::SIZE_SMALL)
+                                       . '</a>';
                                // Delete record
                                if ($this->deleteButton) {
-                                       $buttons['deletedok'] = '<a href="#" onclick="' . htmlspecialchars('return deleteRecord(' . GeneralUtility::quoteJSvalue($this->eRParts[0]) . ',' . GeneralUtility::quoteJSvalue($this->eRParts[1]) . ',' . GeneralUtility::quoteJSvalue(GeneralUtility::getIndpEnv('SCRIPT_NAME') . '?id=' . $this->id) . ');') . '" title="' . $lang->getLL('deleteItem', TRUE) . '">' . $this->iconFactory->getIcon('actions-edit-delete', Icon::SIZE_SMALL) . '</a>';
+                                       $buttons['deletedok'] = '<a href="#" onclick="' . htmlspecialchars('return deleteRecord(' . GeneralUtility::quoteJSvalue($this->eRParts[0]) . ',' . GeneralUtility::quoteJSvalue($this->eRParts[1]) . ',' . GeneralUtility::quoteJSvalue(GeneralUtility::getIndpEnv('SCRIPT_NAME') . '?id=' . $this->id) . ');') . '" title="' . $lang->getLL('deleteItem', TRUE) . '">'
+                                               . $this->iconFactory->getIcon('actions-edit-delete', Icon::SIZE_SMALL)
+                                               . '</a>';
                                }
                                if ($this->undoButton) {
                                        // Undo button
index a7ce5b3..9489e7a 100644 (file)
@@ -255,8 +255,9 @@ class RteController extends AbstractWizardController implements \TYPO3\CMS\Core\
                                . $this->iconFactory->getIcon('actions-document-save', Icon::SIZE_SMALL)
                                . '</button>';
                        // Save & View
-                       $buttons['save_view'] = '<button class="c-inputButton" name="_savedokview_x" onclick="' . htmlspecialchars('document.editform.redirect.value+=\'&popView=1\'; TBE_EDITOR.checkAndDoSubmit(1); return false;') . '">'
-                               . IconUtility::getSpriteIcon('actions-document-save-view', array('title' => $this->getLanguageService()->sL('LLL:EXT:lang/locallang_core.xlf:rm.saveDocShow', TRUE)))
+                       $buttons['save_view'] = '<button class="c-inputButton" name="_savedokview_x" onclick="' . htmlspecialchars('document.editform.redirect.value+=\'&popView=1\'; TBE_EDITOR.checkAndDoSubmit(1); return false;') . '"  title="'
+                               . $this->getLanguageService()->sL('LLL:EXT:lang/locallang_core.xlf:rm.saveDocShow', TRUE) . '">'
+                               . $this->iconFactory->getIcon('actions-document-save-view', Icon::SIZE_SMALL)
                                . '</button>';
                        // Save & Close
                        $buttons['save_close'] = '<button class="c-inputButton" name="_saveandclosedok_x" onclick="' . htmlspecialchars('document.editform.redirect.value=' . GeneralUtility::quoteJSvalue($closeUrl) . '; TBE_EDITOR.checkAndDoSubmit(1); return false;') . '" title="'
diff --git a/typo3/sysext/backend/Resources/Public/Icons/Action/actions-document-save-cleartranslationcache.svg b/typo3/sysext/backend/Resources/Public/Icons/Action/actions-document-save-cleartranslationcache.svg
new file mode 100644 (file)
index 0000000..b1851b2
--- /dev/null
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><path d="M15.79 8.07c-.07-.05-.15-.07-.22-.07s-.13.02-.2.05c-.05.03-.12.08-.21.13-.23.16-.59.39-1 .58.22.28.31.64.23.99.21-.08.42-.18.61-.28v4.73c-.4.24-1.18.68-1.86.68-.22 0-.41-.05-.57-.14l-.19-.11c-.06-.03-.12-.07-.17-.1l-.42.91c.03.02.06.03.1.05l.19.11c.31.18.67.27 1.07.27 1.05 0 2.07-.64 2.51-.91.05-.03.09-.05.12-.07.12-.07.22-.24.22-.43V8.5c0-.17-.08-.34-.21-.43zM9.45 13.82c-.79.08-1.69.37-2.45.75V9.95c.33-.21.71-.41 1.1-.58l.29-1.17c-.99.31-1.87.86-2.18 1.07-.13.1-.21.26-.21.43v5.8c0 .18.08.34.22.44.07.04.14.06.21.06.07 0 .16-.02.22-.07.64-.45 1.65-.9 2.54-1.06l.26-1.05z"/><path d="M13.4 9.61l-2.92 6.26c-.04.08-.13.13-.23.13-.02 0-.05-.01-.08-.01-.12-.04-.19-.15-.16-.26l1.07-4.37-2.2.55c-.02.01-.04.01-.07.01-.06 0-.12-.02-.17-.06-.07-.05-.09-.14-.07-.21l1.09-4.46c.04-.12.13-.19.25-.19h1.77c.13 0 .24.1.24.23 0 .03-.01.07-.03.1l-.92 2.5 2.14-.53c.02-.01.04-.01.07-.01.07 0 .13.03.18.08.06.06.08.16.04.24z"/><path d="M5 14V9.7c0-.24.06-.48.17-.7H4.5c-.28 0-.5.22-.5.5V14H2V2h2v3.5c0 .28.22.5.5.5h5c.28 0 .5-.22.5-.5V2h.8c.28 0 .55.12.74.32l1.91 2c.35.37.55.87.55 1.38v2.03c.18-.1.38-.22.59-.36.01-.01.03-.02.04-.03.08-.05.14-.09.18-.12.02-.01.03-.02.05-.03.04-.02.09-.03.13-.05V5.41c0-.52-.2-1.02-.56-1.39l-2.35-2.43c-.37-.38-.88-.59-1.41-.59H1.5c-.28 0-.5.22-.5.5v13c0 .28.22.5.5.5H5v-1zM7 2.25c0-.14.11-.25.25-.25h1.5c.14 0 .25.11.25.25v2.5c0 .14-.11.25-.25.25h-1.5C7.11 5 7 4.89 7 4.75v-2.5z"/></svg>
\ No newline at end of file
diff --git a/typo3/sysext/backend/Resources/Public/Icons/Action/actions-document-save-close.svg b/typo3/sysext/backend/Resources/Public/Icons/Action/actions-document-save-close.svg
new file mode 100644 (file)
index 0000000..7ef06a8
--- /dev/null
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><path d="M15.2 10.2L13.4 12l1.8 1.8c.2.2.2.5 0 .7l-.7.7c-.2.2-.5.2-.7 0L12 13.4l-1.8 1.8c-.2.2-.5.2-.7 0l-.7-.7c-.2-.2-.2-.5 0-.7l1.8-1.8-1.8-1.8c-.2-.2-.2-.5 0-.7l.7-.7c.2-.2.5-.2.7 0l1.8 1.8 1.8-1.8c.2-.2.5-.2.7 0l.7.7c.2.2.2.5 0 .7z"/><path d="M7.7 14H5v-3.8c0-.1.1-.2.3-.2h2.4c0-.4.1-.7.3-1H4.5c-.3 0-.5.2-.5.5V14H2V2h2v3.5c0 .3.2.5.5.5h5c.3 0 .5-.2.5-.5V2h.8c.3 0 .5.1.7.3l1.9 2c.4.4.6.9.6 1.4v2h.1c.3 0 .6.1.9.3V5.4c0-.5-.2-1-.6-1.4L12 1.6c-.3-.4-.8-.6-1.3-.6H1.5c-.3 0-.5.2-.5.5v13c0 .3.2.5.5.5H8c-.2-.3-.3-.6-.3-1zM7 2.3c0-.2.1-.3.3-.3h1.5c.1 0 .2.1.2.3v2.5c0 .1-.1.2-.2.2H7.3c-.2 0-.3-.1-.3-.2V2.3z"/></svg>
\ No newline at end of file
diff --git a/typo3/sysext/backend/Resources/Public/Icons/Action/actions-document-save-new.svg b/typo3/sysext/backend/Resources/Public/Icons/Action/actions-document-save-new.svg
new file mode 100644 (file)
index 0000000..0bbdd94
--- /dev/null
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><path d="M15.5 13H13v2.5c0 .3-.2.5-.5.5h-1c-.3 0-.5-.2-.5-.5V13H8.5c-.3 0-.5-.2-.5-.5v-1c0-.3.2-.5.5-.5H11V8.5c0-.3.2-.5.5-.5h1c.3 0 .5.2.5.5V11h2.5c.3 0 .5.2.5.5v1c0 .3-.2.5-.5.5z"/><path d="M14 14v1h.5c.3 0 .5-.2.5-.5V14h-1zM10 14H5v-3.8c0-.1.1-.2.3-.2H10V9H4.5c-.3 0-.5.2-.5.5V14H2V2h2v3.5c0 .3.2.5.5.5h5c.3 0 .5-.2.5-.5V2h.8c.3 0 .5.1.7.3l1.9 2c.4.4.6.9.6 1.4V10h1V5.4c0-.5-.2-1-.6-1.4L12 1.6c-.3-.4-.8-.6-1.3-.6H1.5c-.3 0-.5.2-.5.5v13c0 .3.2.5.5.5H10v-1zM7 2.3c0-.2.1-.3.3-.3h1.5c.1 0 .2.1.2.3v2.5c0 .1-.1.2-.2.2H7.3c-.2 0-.3-.1-.3-.2V2.3z"/></svg>
\ No newline at end of file
diff --git a/typo3/sysext/backend/Resources/Public/Icons/Action/actions-document-save-translation.svg b/typo3/sysext/backend/Resources/Public/Icons/Action/actions-document-save-translation.svg
new file mode 100644 (file)
index 0000000..7fa5a5a
--- /dev/null
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><path d="M15.79 8.07c-.07-.05-.15-.07-.22-.07s-.13.02-.2.05c-.05.03-.12.08-.21.13-.42.29-1.3.88-2.11.88-.22 0-.43-.05-.6-.15-.78-.43-1.71-.91-2.84-.91-1.43 0-2.96.98-3.4 1.27-.13.1-.21.26-.21.43v5.8c0 .18.08.34.22.44.07.04.14.06.21.06.07 0 .16-.02.22-.07.79-.56 2.17-1.14 3.15-1.14.84 0 1.38.31 2.07.71l.19.11c.31.18.67.27 1.07.27 1.05 0 2.07-.64 2.51-.91.05-.03.09-.05.12-.07.14-.08.24-.25.24-.44V8.5c0-.17-.08-.34-.21-.43zM15 14.2c-.4.24-1.18.68-1.86.68-.22 0-.41-.05-.57-.14l-.19-.11c-.72-.42-1.46-.85-2.57-.85-.87 0-1.93.35-2.81.78V9.95C7.76 9.47 8.79 9 9.61 9c.87 0 1.61.37 2.34.78.33.19.7.28 1.1.28.7 0 1.38-.28 1.95-.6v4.74z"/><path d="M5 14V9.7c0-.24.06-.48.17-.7H4.5c-.28 0-.5.22-.5.5V14H2V2h2v3.5c0 .28.22.5.5.5h5c.28 0 .5-.22.5-.5V2h.8c.28 0 .55.12.74.32l1.91 2c.35.37.55.87.55 1.38v2.03c.18-.1.38-.22.59-.36.01-.01.03-.02.04-.03.08-.05.14-.09.18-.12.02-.01.03-.02.05-.03.04-.02.09-.03.13-.05V5.41c0-.52-.2-1.02-.56-1.39l-2.35-2.43c-.37-.38-.88-.59-1.41-.59H1.5c-.28 0-.5.22-.5.5v13c0 .28.22.5.5.5H5v-1zM7 2.25c0-.14.11-.25.25-.25h1.5c.14 0 .25.11.25.25v2.5c0 .14-.11.25-.25.25h-1.5C7.11 5 7 4.89 7 4.75v-2.5z"/></svg>
\ No newline at end of file
diff --git a/typo3/sysext/backend/Resources/Public/Icons/Action/actions-document-save-view.svg b/typo3/sysext/backend/Resources/Public/Icons/Action/actions-document-save-view.svg
new file mode 100644 (file)
index 0000000..2d379ff
--- /dev/null
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><path d="M11.2 9h-.1c-2.8 0-5 1.6-5 3.5S8.2 16 11 16s5-1.6 5-3.5-2.2-3.4-4.8-3.5zm-.1.8c.1 0 .3.1.3.2s-.1.2-.3.2c-.6 0-1.2.5-1.2 1.1 0 .1-.1.2-.3.2s-.3-.1-.3-.2c.1-.8.9-1.5 1.8-1.5zM11 15c-2.2 0-4-1.1-4-2.5 0-.9.7-1.6 1.8-2.1-.2.3-.2.7-.2 1.1 0 1.4 1.1 2.5 2.5 2.5s2.5-1.1 2.5-2.5c0-.4-.1-.7-.2-1 1 .5 1.7 1.2 1.7 2C15 13.9 13.2 15 11 15z"/><path d="M5.3 14H5v-3.8c0-.1.1-.2.3-.2H6c.3-.4.7-.7 1.2-1H4.5c-.3 0-.5.2-.5.5V14H2V2h2v3.5c0 .3.2.5.5.5h5c.3 0 .5-.2.5-.5V2h.8c.3 0 .5.1.7.3l1.9 2c.4.4.6.9.6 1.4v2.9c.4.2.7.3 1 .5V5.4c0-.5-.2-1-.6-1.4L12 1.6c-.3-.4-.8-.6-1.3-.6H1.5c-.3 0-.5.2-.5.5v13c0 .3.2.5.5.5H6c-.3-.3-.5-.6-.7-1zM7 2.3c0-.2.1-.3.3-.3h1.5c.1 0 .2.1.2.3v2.5c0 .1-.1.2-.2.2H7.3c-.2 0-.3-.1-.3-.2V2.3z"/></svg>
\ No newline at end of file
diff --git a/typo3/sysext/backend/Resources/Public/Icons/Action/actions-document-save.svg b/typo3/sysext/backend/Resources/Public/Icons/Action/actions-document-save.svg
new file mode 100644 (file)
index 0000000..9f292a4
--- /dev/null
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><path d="M10.7 1H1.5c-.3 0-.5.2-.5.5v13c0 .3.2.5.5.5h13c.3 0 .5-.2.5-.5V5.4c0-.5-.2-1-.6-1.4L12 1.6c-.3-.4-.8-.6-1.3-.6zM7.3 2h1.5c.1 0 .2.1.2.3v2.5c0 .1-.1.2-.2.2H7.3c-.2 0-.3-.1-.3-.2V2.3c0-.2.1-.3.3-.3zM11 14H5v-3.8c0-.1.1-.2.3-.2h5.5c.1 0 .3.1.3.3V14zm3 0h-2V9.5c0-.3-.2-.5-.5-.5h-7c-.3 0-.5.2-.5.5V14H2V2h2v3.5c0 .3.2.5.5.5h5c.3 0 .5-.2.5-.5V2h.8c.3 0 .5.1.7.3l1.9 2c.4.4.6.9.6 1.4V14z"/></svg>
\ No newline at end of file
index bb37db5..977196e 100644 (file)
@@ -137,21 +137,39 @@ class IconRegistry implements \TYPO3\CMS\Core\SingletonInterface {
                        )
                ),
                'actions-document-save' => array(
-                       'provider' => BitmapIconProvider::class,
+                       'provider' => SvgIconProvider::class,
                        'options' => array(
-                               'source' => 'EXT:t3skin/images/icons/actions/document-save.png'
+                               'source' => 'EXT:backend/Resources/Public/Icons/Action/actions-document-save.svg',
+                       )
+               ),
+               'actions-document-save-cleartranslationcache' => array(
+                       'provider' => SvgIconProvider::class,
+                       'options' => array(
+                               'source' => 'EXT:backend/Resources/Public/Icons/Action/actions-document-save-cleartranslationcache.svg',
                        )
                ),
                'actions-document-save-close' => array(
-                       'provider' => BitmapIconProvider::class,
+                       'provider' => SvgIconProvider::class,
                        'options' => array(
-                               'source' => 'EXT:t3skin/images/icons/actions/document-save-close.png'
+                               'source' => 'EXT:backend/Resources/Public/Icons/Action/actions-document-save-close.svg',
                        )
                ),
                'actions-document-save-new' => array(
-                       'provider' => BitmapIconProvider::class,
+                       'provider' => SvgIconProvider::class,
+                       'options' => array(
+                               'source' => 'EXT:backend/Resources/Public/Icons/Action/actions-document-save-new.svg',
+                       )
+               ),
+               'actions-document-save-translation' => array(
+                       'provider' => SvgIconProvider::class,
+                       'options' => array(
+                               'source' => 'EXT:backend/Resources/Public/Icons/Action/actions-document-save-translation.svg',
+                       )
+               ),
+               'actions-document-save-view' => array(
+                       'provider' => SvgIconProvider::class,
                        'options' => array(
-                               'source' => 'EXT:t3skin/images/icons/actions/document-save-new.png'
+                               'source' => 'EXT:backend/Resources/Public/Icons/Action/actions-document-save-view.svg',
                        )
                ),
                'actions-document-synchronize' => array(
index 7076853..9647143 100644 (file)
@@ -166,10 +166,10 @@ $GLOBALS['TBE_STYLES']['spriteIconApi']['coreSpriteImageNames'] = array(
        'actions-document-paste-after',
        'actions-document-paste-into',
        'actions-document-save',
-       'actions-document-save-cleartranslationcache', // Not used in core!
+       'actions-document-save-cleartranslationcache',
        'actions-document-save-close',
        'actions-document-save-new',
-       'actions-document-save-translation', // Not used in core!
+       'actions-document-save-translation',
        'actions-document-save-view',
        'actions-document-select',
        'actions-document-synchronize',