[neon/backports-jammy/kimageannotator/Neon/release] /: New upstream version 0.6.1

Boyuan Yang null at kde.org
Tue Jan 16 14:14:20 GMT 2024


Git commit e64511a76e8d9577dff0733525eddf56d55ba8ec by Boyuan Yang.
Committed on 23/03/2023 at 19:15.
Pushed by jriddell into branch 'Neon/release'.

New upstream version 0.6.1

M  +6    -0    CHANGELOG.md
M  +2    -2    CMakeLists.txt
M  +1    -1    README.md
M  +8    -0    src/CMakeLists.txt
M  +2    -1    src/annotations/items/AnnotationSticker.cpp
A  +34   -0    src/common/enum/DesktopEnvironmentType.h     [License: LGPL (v3+)]
A  +42   -0    src/common/helper/DesktopEnvironmentChecker.cpp     [License: LGPL (v3+)]
C  +12   -29   src/common/helper/DesktopEnvironmentChecker.h [from: src/common/provider/ScaledSizeProvider.h - 051% similarity]
M  +8    -21   src/common/provider/ScaledSizeProvider.cpp
M  +2    -6    src/common/provider/ScaledSizeProvider.h
M  +11   -3    src/gui/annotator/AnnotationWidget.cpp
M  +1    -0    src/gui/annotator/AnnotationWidget.h
M  +17   -3    src/gui/annotator/tabs/AnnotationTabWidget.cpp
M  +1    -0    src/gui/annotator/tabs/AnnotationTabWidget.h
M  +1    -0    translations/CMakeLists.txt
M  +77   -0    translations/kImageAnnotator_ar.ts
C  +172  -95   translations/kImageAnnotator_bg.ts [from: translations/kImageAnnotator_ru.ts - 050% similarity]
M  +77   -0    translations/kImageAnnotator_ca.ts
M  +77   -0    translations/kImageAnnotator_cs.ts
M  +77   -0    translations/kImageAnnotator_da.ts
M  +77   -0    translations/kImageAnnotator_de.ts
M  +77   -0    translations/kImageAnnotator_el.ts
M  +77   -0    translations/kImageAnnotator_es.ts
M  +77   -0    translations/kImageAnnotator_eu.ts
M  +78   -1    translations/kImageAnnotator_fr.ts
M  +77   -0    translations/kImageAnnotator_fr_CA.ts
M  +77   -0    translations/kImageAnnotator_gl.ts
M  +77   -0    translations/kImageAnnotator_hr.ts
M  +77   -0    translations/kImageAnnotator_hu.ts
M  +77   -0    translations/kImageAnnotator_id.ts
M  +77   -0    translations/kImageAnnotator_it.ts
M  +176  -97   translations/kImageAnnotator_ja.ts
M  +77   -0    translations/kImageAnnotator_ko.ts
M  +77   -0    translations/kImageAnnotator_nl.ts
M  +77   -0    translations/kImageAnnotator_no.ts
M  +77   -0    translations/kImageAnnotator_pl.ts
M  +77   -0    translations/kImageAnnotator_pt.ts
M  +77   -0    translations/kImageAnnotator_pt_BR.ts
M  +77   -0    translations/kImageAnnotator_ro.ts
M  +77   -0    translations/kImageAnnotator_ru.ts
M  +77   -0    translations/kImageAnnotator_si.ts
M  +77   -0    translations/kImageAnnotator_sq.ts
M  +77   -0    translations/kImageAnnotator_sv.ts
M  +77   -0    translations/kImageAnnotator_tr.ts
M  +77   -0    translations/kImageAnnotator_uk.ts
M  +82   -4    translations/kImageAnnotator_zh_CN.ts

https://invent.kde.org/neon/backports-jammy/kimageannotator/-/commit/e64511a76e8d9577dff0733525eddf56d55ba8ec

diff --git a/CHANGELOG.md b/CHANGELOG.md
index afbbd7d..221a444 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,11 @@
 # Change log
 
+## Release 0.6.1
+* Fixed: Fix for unnecessary scrollbars when a screenshot has a smaller size than the previous one. ([#303](https://github.com/ksnip/kImageAnnotator/issues/303))
+* Fixed: Add KDE support for scale factor. ([#302](https://github.com/ksnip/kImageAnnotator/issues/302))
+* Fixed: Show tab tooltips on initial tabs.
+* Fixed: Sticker resizing is broken when bounding rect flipped. ([#306](https://github.com/ksnip/kImageAnnotator/issues/306))
+
 ## Release 0.6.0
 * New: Add optional undo, redo, crop, scale and modify canvas buttons to dock widgets. ([#263](https://github.com/ksnip/kImageAnnotator/issues/263))
 * New: Cut out vertical or horizontal slice of an image. ([#236](https://github.com/ksnip/kImageAnnotator/issues/236))
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 58e33fa..99c89f5 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,5 +1,5 @@
 cmake_minimum_required(VERSION 3.5)
-project(kImageAnnotator LANGUAGES CXX VERSION 0.6.0)
+project(kImageAnnotator LANGUAGES CXX VERSION 0.6.1)
 
 set(CMAKE_CXX_STANDARD 11)
 set(CMAKE_CXX_STANDARD_REQUIRED ON)
@@ -56,7 +56,7 @@ add_library(kImageAnnotator
 			${KIMAGEANNOTATOR_SRCS}
 			${CMAKE_CURRENT_SOURCE_DIR}/include/kImageAnnotator/KImageAnnotator.h
 			${CMAKE_CURRENT_SOURCE_DIR}/resources/kImageAnnotator_resources.qrc
-			)
+        src/common/helper/DesktopEnvironmentChecker.cpp src/common/helper/DesktopEnvironmentChecker.h src/common/enum/DesktopEnvironmentType.h)
 
 add_library(kImageAnnotator::kImageAnnotator ALIAS kImageAnnotator)
 
diff --git a/README.md b/README.md
index 2d36c5b..9bd3fad 100644
--- a/README.md
+++ b/README.md
@@ -1,7 +1,7 @@
 # kImageAnnotator [![Linux Build Status][github-badge-linux]][github-url-linux] [![Windows Build Status][github-badge-windows]][github-url-windows] [![Translation status][weblate-badge]][weblate-url]
 Tool for annotating images
 
-Version 0.6.0
+Version 0.6.1
 
 ![kImageAnnotator](https://i.imgur.com/4vlPDUn.png "kImageAnnotator")
 
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index e0636d0..12a48fc 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -169,4 +169,12 @@ set(KIMAGEANNOTATOR_SRCS
 	${CMAKE_CURRENT_SOURCE_DIR}/widgets/misc/AttachedSeparator.cpp
 	)
 
+
+
+if (UNIX AND NOT APPLE)
+	list(APPEND KIMAGEANNOTATOR_SRCS
+		${CMAKE_CURRENT_SOURCE_DIR}/common/helper/DesktopEnvironmentChecker.cpp
+		)
+endif ()
+
 set(KIMAGEANNOTATOR_SRCS ${KIMAGEANNOTATOR_SRCS} PARENT_SCOPE)
diff --git a/src/annotations/items/AnnotationSticker.cpp b/src/annotations/items/AnnotationSticker.cpp
index 0e5ceca..d86391d 100644
--- a/src/annotations/items/AnnotationSticker.cpp
+++ b/src/annotations/items/AnnotationSticker.cpp
@@ -65,7 +65,8 @@ void AnnotationSticker::updateShape()
 
 void AnnotationSticker::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget)
 {
-	mSvgRenderer.render(painter, mRect->toRect());
+    auto boundingRect = mRect->toRect().normalized();
+    mSvgRenderer.render(painter, boundingRect);
 }
 
 void AnnotationSticker::updateRect()
diff --git a/src/common/enum/DesktopEnvironmentType.h b/src/common/enum/DesktopEnvironmentType.h
new file mode 100644
index 0000000..23f2ce1
--- /dev/null
+++ b/src/common/enum/DesktopEnvironmentType.h
@@ -0,0 +1,34 @@
+/*
+ * Copyright (C) 2022 Damir Porobic <damir.porobic at gmx.com>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor,
+ * Boston, MA 02110-1301, USA.
+ */
+
+#ifndef KIMAGEANNOTATOR_DESKTOPENVIRONMENTTYPE_H
+#define KIMAGEANNOTATOR_DESKTOPENVIRONMENTTYPE_H
+
+namespace kImageAnnotator {
+
+    enum class DesktopEnvironmentType
+    {
+        Unknown,
+        Kde,
+        Gnome
+    };
+
+} // namespace kImageAnnotator
+
+#endif //KIMAGEANNOTATOR_DESKTOPENVIRONMENTTYPE_H
diff --git a/src/common/helper/DesktopEnvironmentChecker.cpp b/src/common/helper/DesktopEnvironmentChecker.cpp
new file mode 100644
index 0000000..02becea
--- /dev/null
+++ b/src/common/helper/DesktopEnvironmentChecker.cpp
@@ -0,0 +1,42 @@
+/*
+ * Copyright (C) 2022 Damir Porobic <damir.porobic at gmx.com>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor,
+ * Boston, MA 02110-1301, USA.
+ */
+
+#include "DesktopEnvironmentChecker.h"
+
+namespace kImageAnnotator {
+    
+DesktopEnvironmentType DesktopEnvironmentChecker::getDesktopEnvironment() 
+{
+    auto currentDesktop = QString(qgetenv("XDG_CURRENT_DESKTOP"));
+
+    if (contains(currentDesktop, QLatin1String("gnome")) || contains(currentDesktop, QLatin1String("unity"))) {
+        return DesktopEnvironmentType::Gnome;
+    } else if (contains(currentDesktop, QLatin1String("kde"))) {
+        return DesktopEnvironmentType::Kde;
+    } else {
+        return DesktopEnvironmentType::Unknown;
+    }
+}
+
+bool DesktopEnvironmentChecker::contains(const QString &value1, const QLatin1String &value2)
+{ 
+    return value1.contains(value2, Qt::CaseInsensitive);
+}
+
+} // namespace kImageAnnotator
\ No newline at end of file
diff --git a/src/common/provider/ScaledSizeProvider.h b/src/common/helper/DesktopEnvironmentChecker.h
similarity index 51%
copy from src/common/provider/ScaledSizeProvider.h
copy to src/common/helper/DesktopEnvironmentChecker.h
index 2791718..777fa1b 100644
--- a/src/common/provider/ScaledSizeProvider.h
+++ b/src/common/helper/DesktopEnvironmentChecker.h
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2021 Damir Porobic <damir.porobic at gmx.com>
+ * Copyright (C) 2022 Damir Porobic <damir.porobic at gmx.com>
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU Lesser General Public License as published by
@@ -17,43 +17,26 @@
  * Boston, MA 02110-1301, USA.
  */
 
-#ifndef KIMAGEANNOTATOR_SCALEDSIZEPROVIDER_H
-#define KIMAGEANNOTATOR_SCALEDSIZEPROVIDER_H
+#ifndef KIMAGEANNOTATOR_DESKTOPENVIRONMENTCHECKER_H
+#define KIMAGEANNOTATOR_DESKTOPENVIRONMENTCHECKER_H
 
-#include <QSize>
-
-#if defined(__linux__)
 #include <QApplication>
-#include <QScreen>
-#endif
 
-#include "src/common/constants/Constants.h"
+#include "src/common/enum/DesktopEnvironmentType.h"
 
 namespace kImageAnnotator {
 
-class ScaledSizeProvider
+class DesktopEnvironmentChecker
 {
 public:
-	static int scaledWidth(int width);
-	static QSize scaledSize(const QSize &size);
-	static QSize toolButtonIconSize();
-	static QSize settingsWidgetSize();
-	static QSize settingsWidgetIconSize();
-	static QSize menuItemIconSize();
-	static int resizeHandleSize();
-
-private:
-	static qreal scaleFactor();
-	static qreal getScaleFactor();
-
-#if defined(__linux__)
-	static bool isGnomeEnvironment();
-#endif
-
-	ScaledSizeProvider() = default;
-	~ScaledSizeProvider() = default;
+    DesktopEnvironmentChecker() = default;
+    ~DesktopEnvironmentChecker() = default;
+
+    DesktopEnvironmentType getDesktopEnvironment();
+
+    static bool contains(const QString &value1, const QLatin1String &value2) ;
 };
 
 } // namespace kImageAnnotator
 
-#endif //KIMAGEANNOTATOR_SCALEDSIZEPROVIDER_H
+#endif //KIMAGEANNOTATOR_DESKTOPENVIRONMENTCHECKER_H
diff --git a/src/common/provider/ScaledSizeProvider.cpp b/src/common/provider/ScaledSizeProvider.cpp
index af573a3..cb2a163 100644
--- a/src/common/provider/ScaledSizeProvider.cpp
+++ b/src/common/provider/ScaledSizeProvider.cpp
@@ -31,16 +31,6 @@ QSize ScaledSizeProvider::scaledSize(const QSize &size)
 	return size * scaleFactor();
 }
 
-QSize ScaledSizeProvider::toolButtonIconSize()
-{
-	return scaledSize(Constants::ToolButtonIconSize);
-}
-
-QSize ScaledSizeProvider::settingsWidgetSize()
-{
-	return scaledSize(Constants::SettingsWidgetSize);
-}
-
 QSize ScaledSizeProvider::settingsWidgetIconSize()
 {
 	return scaledSize(Constants::SettingsWidgetIconSize);
@@ -65,24 +55,21 @@ qreal ScaledSizeProvider::scaleFactor()
 qreal ScaledSizeProvider::getScaleFactor()
 {
 #if defined(__linux__)
-	if(isGnomeEnvironment()) {
+    DesktopEnvironmentChecker desktopEnvironmentChecker;
+	auto environment = desktopEnvironmentChecker.getDesktopEnvironment();
+
+	if (environment == DesktopEnvironmentType::Gnome) {
 		auto screen = QApplication::primaryScreen();
 		auto logicalDotsPerInch = (int) screen->logicalDotsPerInch();
 		auto physicalDotsPerInch = (int) screen->physicalDotsPerInch();
 		return (qreal)logicalDotsPerInch / (qreal)physicalDotsPerInch;
+	} else if (environment == DesktopEnvironmentType::Kde) {
+		auto screen = QApplication::primaryScreen();
+		return screen->devicePixelRatio();
 	}
 #endif
 
 	return 1;
 }
 
-#if defined(__linux__)
-bool ScaledSizeProvider::isGnomeEnvironment()
-{
-	auto currentDesktop = QString(qgetenv("XDG_CURRENT_DESKTOP"));
-	return currentDesktop.contains(QLatin1String("gnome"), Qt::CaseInsensitive)
-		|| currentDesktop.contains(QLatin1String("unity"), Qt::CaseInsensitive);
-}
-#endif
-
-} // namespace kImageAnnotator
\ No newline at end of file
+} // namespace kImageAnnotator
diff --git a/src/common/provider/ScaledSizeProvider.h b/src/common/provider/ScaledSizeProvider.h
index 2791718..e66f58a 100644
--- a/src/common/provider/ScaledSizeProvider.h
+++ b/src/common/provider/ScaledSizeProvider.h
@@ -25,6 +25,8 @@
 #if defined(__linux__)
 #include <QApplication>
 #include <QScreen>
+
+#include "src/common/helper/DesktopEnvironmentChecker.h"
 #endif
 
 #include "src/common/constants/Constants.h"
@@ -36,8 +38,6 @@ class ScaledSizeProvider
 public:
 	static int scaledWidth(int width);
 	static QSize scaledSize(const QSize &size);
-	static QSize toolButtonIconSize();
-	static QSize settingsWidgetSize();
 	static QSize settingsWidgetIconSize();
 	static QSize menuItemIconSize();
 	static int resizeHandleSize();
@@ -46,10 +46,6 @@ private:
 	static qreal scaleFactor();
 	static qreal getScaleFactor();
 
-#if defined(__linux__)
-	static bool isGnomeEnvironment();
-#endif
-
 	ScaledSizeProvider() = default;
 	~ScaledSizeProvider() = default;
 };
diff --git a/src/gui/annotator/AnnotationWidget.cpp b/src/gui/annotator/AnnotationWidget.cpp
index 94cd9b2..fbedadb 100644
--- a/src/gui/annotator/AnnotationWidget.cpp
+++ b/src/gui/annotator/AnnotationWidget.cpp
@@ -103,10 +103,13 @@ QImage AnnotationWidget::imageAt(int index) const
 void AnnotationWidget::loadImage(const QPixmap &pixmap)
 {
 	auto currentAnnotationArea = annotationArea();
-	if(currentAnnotationArea == nullptr) {
-		addTab(pixmap, QString(), QString());
+	auto currentIndex = mAnnotationTabWidget->currentIndex();
+
+	if (currentIndex <= 0 && currentAnnotationArea == nullptr) {
+		insertTab(0, pixmap, QString(), QString());
 	} else {
-		currentAnnotationArea->loadImage(pixmap);
+		removeTab(currentIndex);
+		addTab(pixmap, QString(), QString());
 	}
 }
 
@@ -115,6 +118,11 @@ int AnnotationWidget::addTab(const QPixmap &pixmap, const QString &title, const
 	return mAnnotationTabWidget->addTab(pixmap, title, toolTip);
 }
 
+int AnnotationWidget::insertTab(int index, const QPixmap &pixmap, const QString &title, const QString &toolTip)
+{
+	return mAnnotationTabWidget->insertTab(index, pixmap, title, toolTip);
+}
+
 void AnnotationWidget::updateTabInfo(int index, const QString &title, const QString &toolTip)
 {
 	mAnnotationTabWidget->updateTabInfo(index, title, toolTip);
diff --git a/src/gui/annotator/AnnotationWidget.h b/src/gui/annotator/AnnotationWidget.h
index 20ecf9e..bfca863 100644
--- a/src/gui/annotator/AnnotationWidget.h
+++ b/src/gui/annotator/AnnotationWidget.h
@@ -44,6 +44,7 @@ public:
 	QImage imageAt(int index) const;
 	void loadImage(const QPixmap &pixmap);
 	int addTab(const QPixmap &pixmap, const QString &title, const QString &toolTip);
+	int insertTab(int index, const QPixmap &pixmap, const QString &title, const QString &toolTip);
 	void updateTabInfo(int index, const QString &title, const QString &toolTip);
 	void insertImageItem(const QPointF &position, const QPixmap &pixmap) const;
 	void removeTab(int index);
diff --git a/src/gui/annotator/tabs/AnnotationTabWidget.cpp b/src/gui/annotator/tabs/AnnotationTabWidget.cpp
index 6346ec7..edccaae 100644
--- a/src/gui/annotator/tabs/AnnotationTabWidget.cpp
+++ b/src/gui/annotator/tabs/AnnotationTabWidget.cpp
@@ -25,8 +25,8 @@ AnnotationTabWidget::AnnotationTabWidget(Config *config, AbstractSettingsProvide
 	mConfig(config),
 	mTabBar(tabBar()),
 	mSettingsProvider(settingsProvider),
-	mRedoAction(new QAction(this)),
 	mUndoAction(new QAction(this)),
+	mRedoAction(new QAction(this)),
 	mTabContextMenu(new AnnotationTabContextMenu(this)),
 	mTabCloser(new AnnotationTabCloser(this)),
 	mTabClickFilter(new AnnotationTabClickEventFilter(mTabBar, this))
@@ -56,7 +56,21 @@ int AnnotationTabWidget::addTab(const QPixmap &image, const QString &title, cons
 	auto content = new AnnotationTabContent(image, mConfig, mSettingsProvider);
 	connect(content->annotationArea(), &AnnotationArea::imageChanged, this, &AnnotationTabWidget::imageChanged);
 
-	return QTabWidget::addTab(content, title);
+    auto newTabIndex = QTabWidget::addTab(content, title);
+    setTabToolTip(newTabIndex, toolTip);
+    
+    return newTabIndex;
+}
+
+int AnnotationTabWidget::insertTab(int index, const QPixmap &image, const QString &title, const QString &toolTip)
+{
+	auto content = new AnnotationTabContent(image, mConfig, mSettingsProvider);
+    connect(content->annotationArea(), &AnnotationArea::imageChanged, this, &AnnotationTabWidget::imageChanged);
+
+    auto newTabIndex = QTabWidget::insertTab(index, content, title);
+    setTabToolTip(newTabIndex, toolTip);
+
+    return newTabIndex;
 }
 
 AnnotationArea* AnnotationTabWidget::currentAnnotationArea() const
@@ -148,4 +162,4 @@ void AnnotationTabWidget::addContextMenuActions(const QList<QAction *> &actions)
 	mTabContextMenu->addCustomActions(actions);
 }
 
-} // namespace kImageAnnotator
\ No newline at end of file
+} // namespace kImageAnnotator
diff --git a/src/gui/annotator/tabs/AnnotationTabWidget.h b/src/gui/annotator/tabs/AnnotationTabWidget.h
index 0f93c76..ab49945 100644
--- a/src/gui/annotator/tabs/AnnotationTabWidget.h
+++ b/src/gui/annotator/tabs/AnnotationTabWidget.h
@@ -37,6 +37,7 @@ public:
 	AnnotationTabWidget(Config *config, AbstractSettingsProvider *settingsProvider);
 	~AnnotationTabWidget() override = default;
 	int addTab(const QPixmap &image, const QString &title, const QString &toolTip);
+	int insertTab(int index, const QPixmap &image, const QString &title, const QString &toolTip);
 	AnnotationArea* currentAnnotationArea() const;
 	AnnotationArea *annotationAreaAt(int index) const;
 	ZoomValueProvider* currentZoomValueProvider() const;
diff --git a/translations/CMakeLists.txt b/translations/CMakeLists.txt
index e492b15..4dc5e88 100644
--- a/translations/CMakeLists.txt
+++ b/translations/CMakeLists.txt
@@ -2,6 +2,7 @@ find_package(Qt5LinguistTools)
 
 set(KIMAGEANNOTATOR_LANG_TS
 	kImageAnnotator_ar.ts
+	kImageAnnotator_bg.ts
 	kImageAnnotator_ca.ts
 	kImageAnnotator_cs.ts
 	kImageAnnotator_da.ts
diff --git a/translations/kImageAnnotator_ar.ts b/translations/kImageAnnotator_ar.ts
index 694e5bc..d395b8a 100644
--- a/translations/kImageAnnotator_ar.ts
+++ b/translations/kImageAnnotator_ar.ts
@@ -44,6 +44,13 @@
         <translation>احذف</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::AnnotationControlsWidget</name>
+    <message>
+        <source>Controls</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::AnnotationGeneralSettings</name>
     <message>
@@ -88,6 +95,14 @@
         <source>Item Settings</source>
         <translation>إعدادات العنصر</translation>
     </message>
+    <message>
+        <source>Scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Opacity</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>kImageAnnotator::AnnotationTabContextMenu</name>
@@ -130,6 +145,37 @@
         <translation>معطل</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::Controls</name>
+    <message>
+        <source>Undo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Crop</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Rotate</source>
+        <translation type="unfinished">دور</translation>
+    </message>
+    <message>
+        <source>Modify canvas</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::CropWidget</name>
     <message>
@@ -157,6 +203,25 @@
         <translation>طبق</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::CutWidget</name>
+    <message>
+        <source>Vertical</source>
+        <translation type="unfinished">رأسي</translation>
+    </message>
+    <message>
+        <source>Horizontal</source>
+        <translation type="unfinished">أفقي</translation>
+    </message>
+    <message>
+        <source>Apply</source>
+        <translation type="unfinished">طبق</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="unfinished">ألغ</translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::FillModePicker</name>
     <message>
@@ -459,5 +524,17 @@ Rotating by non 90° multipliers might introduce loss of quality.</source>
         <source>Reset Zoom (%1)</source>
         <translation>صفر التكبير (%1)</translation>
     </message>
+    <message>
+        <source>Reset Zoom</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Fit Image</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Fit image to view (%1)</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 </TS>
diff --git a/translations/kImageAnnotator_ru.ts b/translations/kImageAnnotator_bg.ts
similarity index 50%
copy from translations/kImageAnnotator_ru.ts
copy to translations/kImageAnnotator_bg.ts
index 0fd8a01..1ae855e 100644
--- a/translations/kImageAnnotator_ru.ts
+++ b/translations/kImageAnnotator_bg.ts
@@ -1,144 +1,190 @@
 <?xml version="1.0" encoding="utf-8"?>
 <!DOCTYPE TS>
-<TS version="2.1" language="ru_RU">
+<TS version="2.1" language="bg">
 <context>
     <name>kImageAnnotator::AnnotationContextMenu</name>
     <message>
         <source>Arrange</source>
-        <translation>Упорядочить</translation>
+        <translation>Подреждане</translation>
     </message>
     <message>
         <source>Bring to Front</source>
-        <translation>На верхний слой</translation>
+        <translation>Преместване на преден план</translation>
     </message>
     <message>
         <source>Bring Forward</source>
-        <translation>На слой выше</translation>
+        <translation>Преместване напред</translation>
     </message>
     <message>
         <source>Send Backward</source>
-        <translation>На слой ниже</translation>
+        <translation>Преместване назад</translation>
     </message>
     <message>
         <source>Send to Back</source>
-        <translation>На нижний слой</translation>
+        <translation>Преместване на заден план</translation>
     </message>
     <message>
         <source>Select This</source>
-        <translation>Выбрать этот</translation>
+        <translation>Избиране</translation>
     </message>
     <message>
         <source>Copy</source>
-        <translation>Копировать</translation>
+        <translation>Копиране</translation>
     </message>
     <message>
         <source>Paste</source>
-        <translation>Вставить</translation>
+        <translation>Поставяне</translation>
     </message>
     <message>
         <source>Edit</source>
-        <translation>Изменить</translation>
+        <translation>Промяна</translation>
     </message>
     <message>
         <source>Delete</source>
-        <translation>Удалить</translation>
+        <translation>Изтриване</translation>
+    </message>
+</context>
+<context>
+    <name>kImageAnnotator::AnnotationControlsWidget</name>
+    <message>
+        <source>Controls</source>
+        <translation>Основни настройки</translation>
     </message>
 </context>
 <context>
     <name>kImageAnnotator::AnnotationGeneralSettings</name>
     <message>
         <source>General Settings</source>
-        <translation>Общие настройки</translation>
+        <translation>Основни настройки</translation>
     </message>
 </context>
 <context>
     <name>kImageAnnotator::AnnotationImageSettings</name>
     <message>
         <source>Image Settings</source>
-        <translation>Настройки изображения</translation>
+        <translation>Настройки на изображение</translation>
     </message>
 </context>
 <context>
     <name>kImageAnnotator::AnnotationItemSettings</name>
     <message>
         <source>Color</source>
-        <translation>Цвет</translation>
+        <translation>Цвят</translation>
     </message>
     <message>
         <source>Text Color</source>
-        <translation>Цвет текста</translation>
+        <translation>Цвят на текст</translation>
     </message>
     <message>
         <source>Width</source>
-        <translation>Ширина</translation>
+        <translation>Широчина</translation>
     </message>
     <message>
         <source>Number Seed</source>
-        <translation>Нумератор</translation>
+        <translation>Произволна начална стойност</translation>
     </message>
     <message>
         <source>Obfuscation Factor</source>
-        <translation>Уровень обфускации</translation>
+        <translation>Коефициент на обфускация</translation>
     </message>
     <message>
         <source>Item Shadow</source>
-        <translation>Тень элемента</translation>
+        <translation>Сянка на елемент</translation>
     </message>
     <message>
         <source>Item Settings</source>
-        <translation>Настройки элемента</translation>
+        <translation>Настройки на елемент</translation>
+    </message>
+    <message>
+        <source>Scale</source>
+        <translation>Мащаб</translation>
+    </message>
+    <message>
+        <source>Opacity</source>
+        <translation>Прозрачност</translation>
     </message>
 </context>
 <context>
     <name>kImageAnnotator::AnnotationTabContextMenu</name>
     <message>
         <source>Close</source>
-        <translation>Закрыть</translation>
+        <translation>Затваряне</translation>
     </message>
     <message>
         <source>Close Other</source>
-        <translation>Закрыть остальные</translation>
+        <translation>Затвори Други</translation>
     </message>
     <message>
         <source>Close All</source>
-        <translation>Закрыть все</translation>
+        <translation>Затвори всички</translation>
     </message>
     <message>
         <source>Close All to the Left</source>
-        <translation>Закрыть все слева</translation>
+        <translation>Затваряне на всичко отляво</translation>
     </message>
     <message>
         <source>Close All to the Right</source>
-        <translation>Закрыть все справа</translation>
+        <translation>Затваряне на всичко отдясно</translation>
     </message>
 </context>
 <context>
     <name>kImageAnnotator::AnnotationToolSelection</name>
     <message>
         <source>Tool Selection</source>
-        <translation>Выбор инструмента</translation>
+        <translation>Избор на инструмент</translation>
     </message>
 </context>
 <context>
     <name>kImageAnnotator::BoolPicker</name>
     <message>
         <source>Enabled</source>
-        <translation>Включено</translation>
+        <translation>Активирано</translation>
     </message>
     <message>
         <source>Disabled</source>
-        <translation>Отключено</translation>
+        <translation>Изключено</translation>
+    </message>
+</context>
+<context>
+    <name>kImageAnnotator::Controls</name>
+    <message>
+        <source>Undo</source>
+        <translation>Отмяна</translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <translation>Повтаряне</translation>
+    </message>
+    <message>
+        <source>Crop</source>
+        <translation>Изрязване</translation>
+    </message>
+    <message>
+        <source>Scale</source>
+        <translation>Мащаб</translation>
+    </message>
+    <message>
+        <source>Rotate</source>
+        <translation>Завъртане</translation>
+    </message>
+    <message>
+        <source>Modify canvas</source>
+        <translation>Промяна на платното</translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <translation>Изрязване</translation>
     </message>
 </context>
 <context>
     <name>kImageAnnotator::CropWidget</name>
     <message>
         <source>Cancel</source>
-        <translation>Отмена</translation>
+        <translation>Отказ</translation>
     </message>
     <message>
         <source>X:</source>
-        <translation>X:</translation>
+        <translation>Х:</translation>
     </message>
     <message>
         <source>Y:</source>
@@ -146,45 +192,64 @@
     </message>
     <message>
         <source>W:</source>
-        <translation>Ш:</translation>
+        <translation>W:</translation>
     </message>
     <message>
         <source>H:</source>
-        <translation>В:</translation>
+        <translation>H:</translation>
+    </message>
+    <message>
+        <source>Apply</source>
+        <translation>Приложи</translation>
+    </message>
+</context>
+<context>
+    <name>kImageAnnotator::CutWidget</name>
+    <message>
+        <source>Vertical</source>
+        <translation>Вертикално</translation>
+    </message>
+    <message>
+        <source>Horizontal</source>
+        <translation>Хоризонтално</translation>
     </message>
     <message>
         <source>Apply</source>
-        <translation>Применить</translation>
+        <translation>Приложи</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation>Отказ</translation>
     </message>
 </context>
 <context>
     <name>kImageAnnotator::FillModePicker</name>
     <message>
         <source>Border And Fill Visibility</source>
-        <translation>Видимость обводки и заливки</translation>
+        <translation>Видимост на граница и пълнеж</translation>
     </message>
     <message>
         <source>Border and Fill</source>
-        <translation>Обводка и заливка</translation>
+        <translation>Граница и пълнеж</translation>
     </message>
     <message>
         <source>Border and No Fill</source>
-        <translation>Обводка без заливки</translation>
+        <translation>Граница без пълнеж</translation>
     </message>
     <message>
         <source>No Border and No Fill</source>
-        <translation>Без обводки и заливки</translation>
+        <translation>Без граница и без пълнеж</translation>
     </message>
 </context>
 <context>
     <name>kImageAnnotator::FontPicker</name>
     <message>
         <source>Font Size</source>
-        <translation>Размер шрифта</translation>
+        <translation>Размер на шрифта</translation>
     </message>
     <message>
         <source>Bold</source>
-        <translation>Жирный</translation>
+        <translation>Удебелен</translation>
     </message>
     <message>
         <source>Italic</source>
@@ -192,51 +257,51 @@
     </message>
     <message>
         <source>Underline</source>
-        <translation>Подчёркнутый</translation>
+        <translation>Подчертаване</translation>
     </message>
 </context>
 <context>
     <name>kImageAnnotator::ImageEffectPicker</name>
     <message>
         <source>Image Effects</source>
-        <translation>Графические эффекты</translation>
+        <translation>Ефекти на изображението</translation>
     </message>
     <message>
         <source>No Effect</source>
-        <translation>Без эффекта</translation>
+        <translation>Без ефект</translation>
     </message>
     <message>
         <source>Drop Shadow</source>
-        <translation>Отбросить тень</translation>
+        <translation>Падаща сянка</translation>
     </message>
     <message>
         <source>Grayscale</source>
-        <translation>Оттенки серого</translation>
+        <translation>Сива скала</translation>
     </message>
     <message>
         <source>Border</source>
-        <translation>Рамка</translation>
+        <translation>Граница</translation>
     </message>
     <message>
         <source>Invert Color</source>
-        <translation>Инвертировать цвет</translation>
+        <translation>Инвертиране на цвета</translation>
     </message>
 </context>
 <context>
     <name>kImageAnnotator::ModifyCanvasWidget</name>
     <message>
         <source>Restricted</source>
-        <translation>Ограничено</translation>
+        <translation>Ограничен</translation>
     </message>
     <message>
         <source>When enabled enforces the canvas
 to include the background image.</source>
-        <translation>Включить принудительный захват
-фонового изображения.</translation>
+        <translation>Когато е активирано, се налага платното
+да включи фоновото изображение.</translation>
     </message>
     <message>
         <source>X:</source>
-        <translation>X:</translation>
+        <translation>Х:</translation>
     </message>
     <message>
         <source>Y:</source>
@@ -244,34 +309,34 @@ to include the background image.</source>
     </message>
     <message>
         <source>W:</source>
-        <translation>Ширина:</translation>
+        <translation>W:</translation>
     </message>
     <message>
         <source>H:</source>
-        <translation>Высота:</translation>
+        <translation>H:</translation>
     </message>
     <message>
         <source>Apply</source>
-        <translation>Применить</translation>
+        <translation>Приложи</translation>
     </message>
     <message>
         <source>Cancel</source>
-        <translation>Отменить</translation>
+        <translation>Отказ</translation>
     </message>
     <message>
         <source>Color:</source>
-        <translation>Цвет:</translation>
+        <translation>Цвят:</translation>
     </message>
     <message>
         <source>Canvas Background Color</source>
-        <translation>Цвет фона</translation>
+        <translation>Цвят на фона на платното</translation>
     </message>
 </context>
 <context>
     <name>kImageAnnotator::RotateDialog</name>
     <message>
         <source>Rotate Image</source>
-        <translation>Повернуть изображение</translation>
+        <translation>Завъртане на изображението</translation>
     </message>
     <message>
         <source>180°</source>
@@ -279,80 +344,80 @@ to include the background image.</source>
     </message>
     <message>
         <source>90° Clockwise</source>
-        <translation>90° по часовой стрелке</translation>
+        <translation>90° по посока на часовниковата стрелка</translation>
     </message>
     <message>
         <source>90° Counter Clockwise</source>
-        <translation>90° против часовой стрелки</translation>
+        <translation>90° обратно на часовниковата стрелка</translation>
     </message>
     <message>
         <source>Arbitrary</source>
-        <translation>Задать угол</translation>
+        <translation>Произволно</translation>
     </message>
     <message>
         <source>Positive values rotate clockwise, negative values counter clockwise.
 Rotating by non 90° multipliers might introduce loss of quality.</source>
-        <translation>Положительные значения — по часовой стрелке, отрицательные — против.
-Поворот на некратный 90° угол может привести к потере качества.</translation>
+        <translation>Положителните стойности се въртят по посока на часовниковата стрелка, отрицателните – обратно на часовниковата стрелка.
+Завъртането с множители, различни от 90°, може да доведе до загуба на качество.</translation>
     </message>
     <message>
         <source>Horizontal</source>
-        <translation>Горизонально</translation>
+        <translation>Хоризонтално</translation>
     </message>
     <message>
         <source>Vertical</source>
-        <translation>Вертикально</translation>
+        <translation>Вертикално</translation>
     </message>
     <message>
         <source>OK</source>
-        <translation>Применить</translation>
+        <translation>OK</translation>
     </message>
     <message>
         <source>Cancel</source>
-        <translation>Отменить</translation>
+        <translation>Отказ</translation>
     </message>
     <message>
         <source>Rotate</source>
-        <translation>Повернуть</translation>
+        <translation>Завъртане</translation>
     </message>
     <message>
         <source>Flip</source>
-        <translation>Отразить</translation>
+        <translation>Обръщане</translation>
     </message>
 </context>
 <context>
     <name>kImageAnnotator::ScaleDialog</name>
     <message>
         <source>Scale Image</source>
-        <translation>Масштабировать изображение</translation>
+        <translation>Мащабиране на изображението</translation>
     </message>
     <message>
         <source>Keep Aspect Ratio</source>
-        <translation>Сохранять пропорции</translation>
+        <translation>Запазване на пропорциите</translation>
     </message>
     <message>
         <source>Width:</source>
-        <translation>Ширина:</translation>
+        <translation>Широчина:</translation>
     </message>
     <message>
         <source>Height:</source>
-        <translation>Высота:</translation>
+        <translation>Височина:</translation>
     </message>
     <message>
         <source>OK</source>
-        <translation>Применить</translation>
+        <translation>OK</translation>
     </message>
     <message>
         <source>Cancel</source>
-        <translation>Отмена</translation>
+        <translation>Отказ</translation>
     </message>
     <message>
         <source>Pixel</source>
-        <translation>Пиксели</translation>
+        <translation>Пиксел</translation>
     </message>
     <message>
         <source>Percent</source>
-        <translation>Проценты</translation>
+        <translation>Процент</translation>
     </message>
 </context>
 <context>
@@ -366,27 +431,27 @@ Rotating by non 90° multipliers might introduce loss of quality.</source>
     <name>kImageAnnotator::ToolPicker</name>
     <message>
         <source>Select</source>
-        <translation>Выбор</translation>
+        <translation>Избиране</translation>
     </message>
     <message>
         <source>Pen</source>
-        <translation>Карандаш</translation>
+        <translation>Химилка</translation>
     </message>
     <message>
         <source>Number</source>
-        <translation>Число</translation>
+        <translation>Номер</translation>
     </message>
     <message>
         <source>Marker Rectangle</source>
-        <translation>Маркер прямоугольный</translation>
+        <translation>Маркер правоъгълник</translation>
     </message>
     <message>
         <source>Marker Ellipse</source>
-        <translation>Маркер эллипсом</translation>
+        <translation>Маркер елипса</translation>
     </message>
     <message>
         <source>Marker Pen</source>
-        <translation>Маркер карандаш</translation>
+        <translation>Маркер химикалка</translation>
     </message>
     <message>
         <source>Text</source>
@@ -398,7 +463,7 @@ Rotating by non 90° multipliers might introduce loss of quality.</source>
     </message>
     <message>
         <source>Double Arrow</source>
-        <translation>Двойная стрелка</translation>
+        <translation>Двойна стрелка</translation>
     </message>
     <message>
         <source>Line</source>
@@ -406,19 +471,19 @@ Rotating by non 90° multipliers might introduce loss of quality.</source>
     </message>
     <message>
         <source>Blur</source>
-        <translation>Размытие</translation>
+        <translation>Размазване</translation>
     </message>
     <message>
         <source>Rectangle</source>
-        <translation>Прямоугольник</translation>
+        <translation>Правоъгълник</translation>
     </message>
     <message>
         <source>Ellipse</source>
-        <translation>Эллипс</translation>
+        <translation>Елипса</translation>
     </message>
     <message>
         <source>Number Pointer</source>
-        <translation>Числовой указатель</translation>
+        <translation>Показалец - цифри</translation>
     </message>
     <message>
         <source>Sticker</source>
@@ -426,38 +491,50 @@ Rotating by non 90° multipliers might introduce loss of quality.</source>
     </message>
     <message>
         <source>Pixelate</source>
-        <translation>Пикселизовать</translation>
+        <translation>Пикселизиране</translation>
     </message>
     <message>
         <source>Text Pointer</source>
-        <translation>Текстовый указатель</translation>
+        <translation>Текстов указател</translation>
     </message>
     <message>
         <source>Text Arrow</source>
-        <translation>Стрелка с текстом</translation>
+        <translation>Текстова стрелка</translation>
     </message>
     <message>
         <source>Number Arrow</source>
-        <translation>Стрелка с цифрой</translation>
+        <translation>Числова стрелка</translation>
     </message>
     <message>
         <source>Duplicate</source>
-        <translation>Дублировать</translation>
+        <translation>Дубликиране</translation>
     </message>
 </context>
 <context>
     <name>kImageAnnotator::ZoomPicker</name>
     <message>
         <source>Zoom In (%1)</source>
-        <translation>Увеличить (%1)</translation>
+        <translation>Мащабиране (% 1)</translation>
     </message>
     <message>
         <source>Zoom Out (%1)</source>
-        <translation>Уменьшить (%1)</translation>
+        <translation>Намаляване (%1)</translation>
     </message>
     <message>
         <source>Reset Zoom (%1)</source>
-        <translation>Исходный масштаб (%1)</translation>
+        <translation>Нулиране на мащаба (% 1)</translation>
+    </message>
+    <message>
+        <source>Reset Zoom</source>
+        <translation>Нулиране на мащаба</translation>
+    </message>
+    <message>
+        <source>Fit Image</source>
+        <translation>Вместване на изображение</translation>
+    </message>
+    <message>
+        <source>Fit image to view (%1)</source>
+        <translation>Побиране на изображението за преглед (%1)</translation>
     </message>
 </context>
 </TS>
diff --git a/translations/kImageAnnotator_ca.ts b/translations/kImageAnnotator_ca.ts
index a82d9fd..f0270d9 100644
--- a/translations/kImageAnnotator_ca.ts
+++ b/translations/kImageAnnotator_ca.ts
@@ -44,6 +44,13 @@
         <translation>Suprimeix</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::AnnotationControlsWidget</name>
+    <message>
+        <source>Controls</source>
+        <translation>Controls</translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::AnnotationGeneralSettings</name>
     <message>
@@ -88,6 +95,14 @@
         <source>Item Settings</source>
         <translation>Configuració d'element</translation>
     </message>
+    <message>
+        <source>Scale</source>
+        <translation>Escala</translation>
+    </message>
+    <message>
+        <source>Opacity</source>
+        <translation>Opacitat</translation>
+    </message>
 </context>
 <context>
     <name>kImageAnnotator::AnnotationTabContextMenu</name>
@@ -130,6 +145,37 @@
         <translation>Desactivat</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::Controls</name>
+    <message>
+        <source>Undo</source>
+        <translation>Desfés</translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <translation>Refés</translation>
+    </message>
+    <message>
+        <source>Crop</source>
+        <translation>Escapça</translation>
+    </message>
+    <message>
+        <source>Scale</source>
+        <translation>Escala</translation>
+    </message>
+    <message>
+        <source>Rotate</source>
+        <translation>Gira</translation>
+    </message>
+    <message>
+        <source>Modify canvas</source>
+        <translation>Modifica el llenç</translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <translation>Tallar</translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::CropWidget</name>
     <message>
@@ -157,6 +203,25 @@
         <translation>Aplica</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::CutWidget</name>
+    <message>
+        <source>Vertical</source>
+        <translation>Vertical</translation>
+    </message>
+    <message>
+        <source>Horizontal</source>
+        <translation>Horitzontal</translation>
+    </message>
+    <message>
+        <source>Apply</source>
+        <translation>Aplica</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation>Cancel·la</translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::FillModePicker</name>
     <message>
@@ -459,5 +524,17 @@ Els girs que no són múltiples de 90° poden presentar pèrdues de qualitat.</t
         <source>Reset Zoom (%1)</source>
         <translation>Reinicia el zoom (%1)</translation>
     </message>
+    <message>
+        <source>Reset Zoom</source>
+        <translation>Reinicia el zoom</translation>
+    </message>
+    <message>
+        <source>Fit Image</source>
+        <translation>Ajusta la imatge</translation>
+    </message>
+    <message>
+        <source>Fit image to view (%1)</source>
+        <translation>Ajusta la imatge a la vista (%1)</translation>
+    </message>
 </context>
 </TS>
diff --git a/translations/kImageAnnotator_cs.ts b/translations/kImageAnnotator_cs.ts
index 19ca1ce..468db19 100644
--- a/translations/kImageAnnotator_cs.ts
+++ b/translations/kImageAnnotator_cs.ts
@@ -44,6 +44,13 @@
         <translation>Smazat</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::AnnotationControlsWidget</name>
+    <message>
+        <source>Controls</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::AnnotationGeneralSettings</name>
     <message>
@@ -88,6 +95,14 @@
         <source>Item Settings</source>
         <translation>Nastavení prvku</translation>
     </message>
+    <message>
+        <source>Scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Opacity</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>kImageAnnotator::AnnotationTabContextMenu</name>
@@ -130,6 +145,37 @@
         <translation>Zakázáno</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::Controls</name>
+    <message>
+        <source>Undo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Crop</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Rotate</source>
+        <translation type="unfinished">Otočit</translation>
+    </message>
+    <message>
+        <source>Modify canvas</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::CropWidget</name>
     <message>
@@ -157,6 +203,25 @@
         <translation>Aplikovat</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::CutWidget</name>
+    <message>
+        <source>Vertical</source>
+        <translation type="unfinished">Vertikální</translation>
+    </message>
+    <message>
+        <source>Horizontal</source>
+        <translation type="unfinished">Horizontální</translation>
+    </message>
+    <message>
+        <source>Apply</source>
+        <translation type="unfinished">Aplikovat</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="unfinished">Zrušit</translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::FillModePicker</name>
     <message>
@@ -458,5 +523,17 @@ Otáčení jinými násobky než 90°může způsobit ztrátu kvality.</translat
         <source>Reset Zoom (%1)</source>
         <translation>Resetovat přiblížení (%1)</translation>
     </message>
+    <message>
+        <source>Reset Zoom</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Fit Image</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Fit image to view (%1)</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 </TS>
diff --git a/translations/kImageAnnotator_da.ts b/translations/kImageAnnotator_da.ts
index 2e3829f..f3081af 100644
--- a/translations/kImageAnnotator_da.ts
+++ b/translations/kImageAnnotator_da.ts
@@ -44,6 +44,13 @@
         <translation>Slet</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::AnnotationControlsWidget</name>
+    <message>
+        <source>Controls</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::AnnotationGeneralSettings</name>
     <message>
@@ -88,6 +95,14 @@
         <source>Item Settings</source>
         <translation>Elementets Indstillinger</translation>
     </message>
+    <message>
+        <source>Scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Opacity</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>kImageAnnotator::AnnotationTabContextMenu</name>
@@ -130,6 +145,37 @@
         <translation>Deaktiveret</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::Controls</name>
+    <message>
+        <source>Undo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Crop</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Rotate</source>
+        <translation type="unfinished">Roter</translation>
+    </message>
+    <message>
+        <source>Modify canvas</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::CropWidget</name>
     <message>
@@ -157,6 +203,25 @@
         <translation>Anvend</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::CutWidget</name>
+    <message>
+        <source>Vertical</source>
+        <translation type="unfinished">Lodret</translation>
+    </message>
+    <message>
+        <source>Horizontal</source>
+        <translation type="unfinished">Vandret</translation>
+    </message>
+    <message>
+        <source>Apply</source>
+        <translation type="unfinished">Anvend</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="unfinished">Fortryd</translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::FillModePicker</name>
     <message>
@@ -459,5 +524,17 @@ Rotering af ikke-90° gangefaktorer kan forårsage tab af kvalitet.</translation
         <source>Reset Zoom (%1)</source>
         <translation>Nulstil Zoomen (%1)</translation>
     </message>
+    <message>
+        <source>Reset Zoom</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Fit Image</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Fit image to view (%1)</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 </TS>
diff --git a/translations/kImageAnnotator_de.ts b/translations/kImageAnnotator_de.ts
index 43ae2ac..917c9d9 100644
--- a/translations/kImageAnnotator_de.ts
+++ b/translations/kImageAnnotator_de.ts
@@ -44,6 +44,13 @@
         <translation>Löschen</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::AnnotationControlsWidget</name>
+    <message>
+        <source>Controls</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::AnnotationGeneralSettings</name>
     <message>
@@ -88,6 +95,14 @@
         <source>Item Settings</source>
         <translation>Objekt-Einstellungen</translation>
     </message>
+    <message>
+        <source>Scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Opacity</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>kImageAnnotator::AnnotationTabContextMenu</name>
@@ -130,6 +145,37 @@
         <translation>Deaktiviert</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::Controls</name>
+    <message>
+        <source>Undo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Crop</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Rotate</source>
+        <translation type="unfinished">Drehen</translation>
+    </message>
+    <message>
+        <source>Modify canvas</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::CropWidget</name>
     <message>
@@ -157,6 +203,25 @@
         <translation>Anwenden</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::CutWidget</name>
+    <message>
+        <source>Vertical</source>
+        <translation type="unfinished">Vertikal</translation>
+    </message>
+    <message>
+        <source>Horizontal</source>
+        <translation type="unfinished">Horizontal</translation>
+    </message>
+    <message>
+        <source>Apply</source>
+        <translation type="unfinished">Anwenden</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="unfinished">Abbrechen</translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::FillModePicker</name>
     <message>
@@ -459,5 +524,17 @@ Das Drehen um nicht 90°-Multiplikatoren kann zu Qualitätsverlusten führen.</t
         <source>Reset Zoom (%1)</source>
         <translation>Zoom zurücksetzen (%1)</translation>
     </message>
+    <message>
+        <source>Reset Zoom</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Fit Image</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Fit image to view (%1)</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 </TS>
diff --git a/translations/kImageAnnotator_el.ts b/translations/kImageAnnotator_el.ts
index e9225a6..a6b3eb8 100644
--- a/translations/kImageAnnotator_el.ts
+++ b/translations/kImageAnnotator_el.ts
@@ -44,6 +44,13 @@
         <translation>Διαγραφή</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::AnnotationControlsWidget</name>
+    <message>
+        <source>Controls</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::AnnotationGeneralSettings</name>
     <message>
@@ -88,6 +95,14 @@
         <source>Item Settings</source>
         <translation>Ρυθμίσεις αντικειμένου</translation>
     </message>
+    <message>
+        <source>Scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Opacity</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>kImageAnnotator::AnnotationTabContextMenu</name>
@@ -130,6 +145,37 @@
         <translation>Απενεργοποιημένο</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::Controls</name>
+    <message>
+        <source>Undo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Crop</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Rotate</source>
+        <translation type="unfinished">Περιστροφή</translation>
+    </message>
+    <message>
+        <source>Modify canvas</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::CropWidget</name>
     <message>
@@ -157,6 +203,25 @@
         <translation>Εφαρμογή</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::CutWidget</name>
+    <message>
+        <source>Vertical</source>
+        <translation type="unfinished">Κατακόρυφα</translation>
+    </message>
+    <message>
+        <source>Horizontal</source>
+        <translation type="unfinished">Οριζόντια</translation>
+    </message>
+    <message>
+        <source>Apply</source>
+        <translation type="unfinished">Εφαρμογή</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::FillModePicker</name>
     <message>
@@ -459,5 +524,17 @@ Rotating by non 90° multipliers might introduce loss of quality.</source>
         <source>Reset Zoom (%1)</source>
         <translation>Επαναφορά εστίασης (%1)</translation>
     </message>
+    <message>
+        <source>Reset Zoom</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Fit Image</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Fit image to view (%1)</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 </TS>
diff --git a/translations/kImageAnnotator_es.ts b/translations/kImageAnnotator_es.ts
index f5f193c..3665310 100644
--- a/translations/kImageAnnotator_es.ts
+++ b/translations/kImageAnnotator_es.ts
@@ -44,6 +44,13 @@
         <translation>Eliminar</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::AnnotationControlsWidget</name>
+    <message>
+        <source>Controls</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::AnnotationGeneralSettings</name>
     <message>
@@ -88,6 +95,14 @@
         <source>Item Settings</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Opacity</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>kImageAnnotator::AnnotationTabContextMenu</name>
@@ -130,6 +145,37 @@
         <translation type="unfinished"></translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::Controls</name>
+    <message>
+        <source>Undo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Crop</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Rotate</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Modify canvas</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::CropWidget</name>
     <message>
@@ -157,6 +203,25 @@
         <translation type="unfinished"></translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::CutWidget</name>
+    <message>
+        <source>Vertical</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Horizontal</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Apply</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="unfinished">Cancelar</translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::FillModePicker</name>
     <message>
@@ -457,5 +522,17 @@ Rotating by non 90° multipliers might introduce loss of quality.</source>
         <source>Reset Zoom (%1)</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Reset Zoom</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Fit Image</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Fit image to view (%1)</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 </TS>
diff --git a/translations/kImageAnnotator_eu.ts b/translations/kImageAnnotator_eu.ts
index 91bbd9b..365f09b 100644
--- a/translations/kImageAnnotator_eu.ts
+++ b/translations/kImageAnnotator_eu.ts
@@ -44,6 +44,13 @@
         <translation>Ezabatu</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::AnnotationControlsWidget</name>
+    <message>
+        <source>Controls</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::AnnotationGeneralSettings</name>
     <message>
@@ -88,6 +95,14 @@
         <source>Item Settings</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Opacity</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>kImageAnnotator::AnnotationTabContextMenu</name>
@@ -130,6 +145,37 @@
         <translation>Desgaituta</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::Controls</name>
+    <message>
+        <source>Undo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Crop</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Rotate</source>
+        <translation type="unfinished">Biratu</translation>
+    </message>
+    <message>
+        <source>Modify canvas</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::CropWidget</name>
     <message>
@@ -157,6 +203,25 @@
         <translation>Ezarri</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::CutWidget</name>
+    <message>
+        <source>Vertical</source>
+        <translation type="unfinished">Bertikala</translation>
+    </message>
+    <message>
+        <source>Horizontal</source>
+        <translation type="unfinished">Horizontala</translation>
+    </message>
+    <message>
+        <source>Apply</source>
+        <translation type="unfinished">Ezarri</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="unfinished">Utzi</translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::FillModePicker</name>
     <message>
@@ -458,5 +523,17 @@ Rotating by non 90° multipliers might introduce loss of quality.</source>
         <source>Reset Zoom (%1)</source>
         <translation>Berrezarri zooma (% 1)</translation>
     </message>
+    <message>
+        <source>Reset Zoom</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Fit Image</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Fit image to view (%1)</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 </TS>
diff --git a/translations/kImageAnnotator_fr.ts b/translations/kImageAnnotator_fr.ts
index 9918160..c78352b 100644
--- a/translations/kImageAnnotator_fr.ts
+++ b/translations/kImageAnnotator_fr.ts
@@ -44,6 +44,13 @@
         <translation>Supprimer</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::AnnotationControlsWidget</name>
+    <message>
+        <source>Controls</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::AnnotationGeneralSettings</name>
     <message>
@@ -74,7 +81,7 @@
     </message>
     <message>
         <source>Number Seed</source>
-        <translation type="unfinished">Graine aléatoire</translation>
+        <translation>Graine aléatoire</translation>
     </message>
     <message>
         <source>Obfuscation Factor</source>
@@ -88,6 +95,14 @@
         <source>Item Settings</source>
         <translation>Préférences de l'élément</translation>
     </message>
+    <message>
+        <source>Scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Opacity</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>kImageAnnotator::AnnotationTabContextMenu</name>
@@ -130,6 +145,37 @@
         <translation>Inactif</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::Controls</name>
+    <message>
+        <source>Undo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Crop</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Rotate</source>
+        <translation type="unfinished">Pivoter</translation>
+    </message>
+    <message>
+        <source>Modify canvas</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::CropWidget</name>
     <message>
@@ -157,6 +203,25 @@
         <translation>Appliquer</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::CutWidget</name>
+    <message>
+        <source>Vertical</source>
+        <translation type="unfinished">Verticale</translation>
+    </message>
+    <message>
+        <source>Horizontal</source>
+        <translation type="unfinished">Horizontale</translation>
+    </message>
+    <message>
+        <source>Apply</source>
+        <translation type="unfinished">Appliquer</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="unfinished">Annuler</translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::FillModePicker</name>
     <message>
@@ -459,5 +524,17 @@ La rotation par des multiplicateurs autres que 90° peut entraîner une perte de
         <source>Reset Zoom (%1)</source>
         <translation>Réinitialiser le zoom (%1)</translation>
     </message>
+    <message>
+        <source>Reset Zoom</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Fit Image</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Fit image to view (%1)</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 </TS>
diff --git a/translations/kImageAnnotator_fr_CA.ts b/translations/kImageAnnotator_fr_CA.ts
index a315901..a718034 100644
--- a/translations/kImageAnnotator_fr_CA.ts
+++ b/translations/kImageAnnotator_fr_CA.ts
@@ -44,6 +44,13 @@
         <translation type="unfinished"></translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::AnnotationControlsWidget</name>
+    <message>
+        <source>Controls</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::AnnotationGeneralSettings</name>
     <message>
@@ -88,6 +95,14 @@
         <source>Item Settings</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Opacity</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>kImageAnnotator::AnnotationTabContextMenu</name>
@@ -130,6 +145,37 @@
         <translation type="unfinished"></translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::Controls</name>
+    <message>
+        <source>Undo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Crop</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Rotate</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Modify canvas</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::CropWidget</name>
     <message>
@@ -157,6 +203,25 @@
         <translation type="unfinished"></translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::CutWidget</name>
+    <message>
+        <source>Vertical</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Horizontal</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Apply</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::FillModePicker</name>
     <message>
@@ -457,5 +522,17 @@ Rotating by non 90° multipliers might introduce loss of quality.</source>
         <source>Reset Zoom (%1)</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Reset Zoom</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Fit Image</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Fit image to view (%1)</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 </TS>
diff --git a/translations/kImageAnnotator_gl.ts b/translations/kImageAnnotator_gl.ts
index 6111dd8..cefe421 100644
--- a/translations/kImageAnnotator_gl.ts
+++ b/translations/kImageAnnotator_gl.ts
@@ -44,6 +44,13 @@
         <translation type="unfinished"></translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::AnnotationControlsWidget</name>
+    <message>
+        <source>Controls</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::AnnotationGeneralSettings</name>
     <message>
@@ -88,6 +95,14 @@
         <source>Item Settings</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Opacity</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>kImageAnnotator::AnnotationTabContextMenu</name>
@@ -130,6 +145,37 @@
         <translation type="unfinished"></translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::Controls</name>
+    <message>
+        <source>Undo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Crop</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Rotate</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Modify canvas</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::CropWidget</name>
     <message>
@@ -157,6 +203,25 @@
         <translation type="unfinished"></translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::CutWidget</name>
+    <message>
+        <source>Vertical</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Horizontal</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Apply</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::FillModePicker</name>
     <message>
@@ -457,5 +522,17 @@ Rotating by non 90° multipliers might introduce loss of quality.</source>
         <source>Reset Zoom (%1)</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Reset Zoom</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Fit Image</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Fit image to view (%1)</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 </TS>
diff --git a/translations/kImageAnnotator_hr.ts b/translations/kImageAnnotator_hr.ts
index c53947b..14fa1ac 100644
--- a/translations/kImageAnnotator_hr.ts
+++ b/translations/kImageAnnotator_hr.ts
@@ -44,6 +44,13 @@
         <translation>Izbriši</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::AnnotationControlsWidget</name>
+    <message>
+        <source>Controls</source>
+        <translation>Kontrole</translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::AnnotationGeneralSettings</name>
     <message>
@@ -88,6 +95,14 @@
         <source>Item Settings</source>
         <translation>Postavke elementa</translation>
     </message>
+    <message>
+        <source>Scale</source>
+        <translation>Omjer</translation>
+    </message>
+    <message>
+        <source>Opacity</source>
+        <translation>Neprozirnost</translation>
+    </message>
 </context>
 <context>
     <name>kImageAnnotator::AnnotationTabContextMenu</name>
@@ -130,6 +145,37 @@
         <translation>Deaktivirano</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::Controls</name>
+    <message>
+        <source>Undo</source>
+        <translation>Poništi</translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <translation>Ponovi</translation>
+    </message>
+    <message>
+        <source>Crop</source>
+        <translation>Izreži</translation>
+    </message>
+    <message>
+        <source>Scale</source>
+        <translation>Omjer</translation>
+    </message>
+    <message>
+        <source>Rotate</source>
+        <translation>Okreni</translation>
+    </message>
+    <message>
+        <source>Modify canvas</source>
+        <translation>Promijeni platno</translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <translation>Izreži</translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::CropWidget</name>
     <message>
@@ -157,6 +203,25 @@
         <translation>Primijeni</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::CutWidget</name>
+    <message>
+        <source>Vertical</source>
+        <translation>Okomito</translation>
+    </message>
+    <message>
+        <source>Horizontal</source>
+        <translation>Vodoravno</translation>
+    </message>
+    <message>
+        <source>Apply</source>
+        <translation>Primijeni</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation>Odustani</translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::FillModePicker</name>
     <message>
@@ -459,5 +524,17 @@ Okretanje množiteljima koji nisu 90° može smanjiti kvalitetu slike.</translat
         <source>Reset Zoom (%1)</source>
         <translation>Poništi zumiranje (%1)</translation>
     </message>
+    <message>
+        <source>Reset Zoom</source>
+        <translation>Resetiraj zumiranje</translation>
+    </message>
+    <message>
+        <source>Fit Image</source>
+        <translation>Prilagodi sliku</translation>
+    </message>
+    <message>
+        <source>Fit image to view (%1)</source>
+        <translation>Prilagodi sliku za prikaz (%1)</translation>
+    </message>
 </context>
 </TS>
diff --git a/translations/kImageAnnotator_hu.ts b/translations/kImageAnnotator_hu.ts
index 17d19dd..fb9fe11 100644
--- a/translations/kImageAnnotator_hu.ts
+++ b/translations/kImageAnnotator_hu.ts
@@ -44,6 +44,13 @@
         <translation type="unfinished"></translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::AnnotationControlsWidget</name>
+    <message>
+        <source>Controls</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::AnnotationGeneralSettings</name>
     <message>
@@ -88,6 +95,14 @@
         <source>Item Settings</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Opacity</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>kImageAnnotator::AnnotationTabContextMenu</name>
@@ -130,6 +145,37 @@
         <translation type="unfinished"></translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::Controls</name>
+    <message>
+        <source>Undo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Crop</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Rotate</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Modify canvas</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::CropWidget</name>
     <message>
@@ -157,6 +203,25 @@
         <translation type="unfinished"></translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::CutWidget</name>
+    <message>
+        <source>Vertical</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Horizontal</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Apply</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::FillModePicker</name>
     <message>
@@ -457,5 +522,17 @@ Rotating by non 90° multipliers might introduce loss of quality.</source>
         <source>Reset Zoom (%1)</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Reset Zoom</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Fit Image</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Fit image to view (%1)</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 </TS>
diff --git a/translations/kImageAnnotator_id.ts b/translations/kImageAnnotator_id.ts
index c666bd3..063d783 100644
--- a/translations/kImageAnnotator_id.ts
+++ b/translations/kImageAnnotator_id.ts
@@ -44,6 +44,13 @@
         <translation>Hapus</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::AnnotationControlsWidget</name>
+    <message>
+        <source>Controls</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::AnnotationGeneralSettings</name>
     <message>
@@ -88,6 +95,14 @@
         <source>Item Settings</source>
         <translation>Pengaturan item</translation>
     </message>
+    <message>
+        <source>Scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Opacity</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>kImageAnnotator::AnnotationTabContextMenu</name>
@@ -130,6 +145,37 @@
         <translation>Nonaktifkan</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::Controls</name>
+    <message>
+        <source>Undo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Crop</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Rotate</source>
+        <translation type="unfinished">Putar</translation>
+    </message>
+    <message>
+        <source>Modify canvas</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::CropWidget</name>
     <message>
@@ -157,6 +203,25 @@
         <translation>Terapkan</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::CutWidget</name>
+    <message>
+        <source>Vertical</source>
+        <translation type="unfinished">Vertikal</translation>
+    </message>
+    <message>
+        <source>Horizontal</source>
+        <translation type="unfinished">Horisontal</translation>
+    </message>
+    <message>
+        <source>Apply</source>
+        <translation type="unfinished">Terapkan</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="unfinished">Batal</translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::FillModePicker</name>
     <message>
@@ -459,5 +524,17 @@ Memutar dengan pengganda non 90° mungkin mengurangi kualitasnya.</translation>
         <source>Reset Zoom (%1)</source>
         <translation>Setel Ulang Zoom (%1)</translation>
     </message>
+    <message>
+        <source>Reset Zoom</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Fit Image</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Fit image to view (%1)</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 </TS>
diff --git a/translations/kImageAnnotator_it.ts b/translations/kImageAnnotator_it.ts
index 6b64f22..ad5fda3 100644
--- a/translations/kImageAnnotator_it.ts
+++ b/translations/kImageAnnotator_it.ts
@@ -44,6 +44,13 @@
         <translation>Elimina</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::AnnotationControlsWidget</name>
+    <message>
+        <source>Controls</source>
+        <translation>Controlli</translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::AnnotationGeneralSettings</name>
     <message>
@@ -88,6 +95,14 @@
         <source>Item Settings</source>
         <translation>Impostazione elemento</translation>
     </message>
+    <message>
+        <source>Scale</source>
+        <translation>Scala</translation>
+    </message>
+    <message>
+        <source>Opacity</source>
+        <translation>Opacità</translation>
+    </message>
 </context>
 <context>
     <name>kImageAnnotator::AnnotationTabContextMenu</name>
@@ -130,6 +145,37 @@
         <translation>Disabilitato</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::Controls</name>
+    <message>
+        <source>Undo</source>
+        <translation>Annulla</translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <translation>Rifare</translation>
+    </message>
+    <message>
+        <source>Crop</source>
+        <translation>Ritaglia</translation>
+    </message>
+    <message>
+        <source>Scale</source>
+        <translation>Scala</translation>
+    </message>
+    <message>
+        <source>Rotate</source>
+        <translation>Ruota</translation>
+    </message>
+    <message>
+        <source>Modify canvas</source>
+        <translation>Modifica tela</translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <translation>Taglia</translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::CropWidget</name>
     <message>
@@ -157,6 +203,25 @@
         <translation>Applica</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::CutWidget</name>
+    <message>
+        <source>Vertical</source>
+        <translation>Verticale</translation>
+    </message>
+    <message>
+        <source>Horizontal</source>
+        <translation>Orizzontale</translation>
+    </message>
+    <message>
+        <source>Apply</source>
+        <translation>Applica</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation>Annulla</translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::FillModePicker</name>
     <message>
@@ -459,5 +524,17 @@ La rotazione di moltiplicatori diversi da 90° potrebbe introdurre una perdita d
         <source>Reset Zoom (%1)</source>
         <translation>Reimposta zoom (%1)</translation>
     </message>
+    <message>
+        <source>Reset Zoom</source>
+        <translation>Ripristina zoom</translation>
+    </message>
+    <message>
+        <source>Fit Image</source>
+        <translation>Adatta immagine</translation>
+    </message>
+    <message>
+        <source>Fit image to view (%1)</source>
+        <translation>Adatta immagine alla visualizzazione (%1)</translation>
+    </message>
 </context>
 </TS>
diff --git a/translations/kImageAnnotator_ja.ts b/translations/kImageAnnotator_ja.ts
index 5b746f5..d5aab6b 100644
--- a/translations/kImageAnnotator_ja.ts
+++ b/translations/kImageAnnotator_ja.ts
@@ -5,136 +5,182 @@
     <name>kImageAnnotator::AnnotationContextMenu</name>
     <message>
         <source>Arrange</source>
-        <translation type="unfinished"></translation>
+        <translation>重なり</translation>
     </message>
     <message>
         <source>Bring to Front</source>
-        <translation type="unfinished"></translation>
+        <translation>最前面へ</translation>
     </message>
     <message>
         <source>Bring Forward</source>
-        <translation type="unfinished"></translation>
+        <translation>前面へ</translation>
     </message>
     <message>
         <source>Send Backward</source>
-        <translation type="unfinished"></translation>
+        <translation>背面へ</translation>
     </message>
     <message>
         <source>Send to Back</source>
-        <translation type="unfinished"></translation>
+        <translation>最背面へ</translation>
     </message>
     <message>
         <source>Select This</source>
-        <translation type="unfinished"></translation>
+        <translation>これを選択</translation>
     </message>
     <message>
         <source>Copy</source>
-        <translation type="unfinished"></translation>
+        <translation>コピー</translation>
     </message>
     <message>
         <source>Paste</source>
-        <translation type="unfinished"></translation>
+        <translation>貼り付け</translation>
     </message>
     <message>
         <source>Edit</source>
-        <translation type="unfinished"></translation>
+        <translation>編集</translation>
     </message>
     <message>
         <source>Delete</source>
-        <translation type="unfinished"></translation>
+        <translation>削除</translation>
+    </message>
+</context>
+<context>
+    <name>kImageAnnotator::AnnotationControlsWidget</name>
+    <message>
+        <source>Controls</source>
+        <translation>操作</translation>
     </message>
 </context>
 <context>
     <name>kImageAnnotator::AnnotationGeneralSettings</name>
     <message>
         <source>General Settings</source>
-        <translation type="unfinished"></translation>
+        <translation>一般設定</translation>
     </message>
 </context>
 <context>
     <name>kImageAnnotator::AnnotationImageSettings</name>
     <message>
         <source>Image Settings</source>
-        <translation type="unfinished"></translation>
+        <translation>画像の設定</translation>
     </message>
 </context>
 <context>
     <name>kImageAnnotator::AnnotationItemSettings</name>
     <message>
         <source>Color</source>
-        <translation type="unfinished"></translation>
+        <translation>色</translation>
     </message>
     <message>
         <source>Text Color</source>
-        <translation type="unfinished"></translation>
+        <translation>文字色</translation>
     </message>
     <message>
         <source>Width</source>
-        <translation type="unfinished"></translation>
+        <translation>幅</translation>
     </message>
     <message>
         <source>Number Seed</source>
-        <translation type="unfinished"></translation>
+        <translation>シード番号</translation>
     </message>
     <message>
         <source>Obfuscation Factor</source>
-        <translation type="unfinished"></translation>
+        <translation>不明化係数</translation>
     </message>
     <message>
         <source>Item Shadow</source>
-        <translation type="unfinished"></translation>
+        <translation>アイテムの影</translation>
     </message>
     <message>
         <source>Item Settings</source>
-        <translation type="unfinished"></translation>
+        <translation>アイテムの設定</translation>
+    </message>
+    <message>
+        <source>Scale</source>
+        <translation>拡大率</translation>
+    </message>
+    <message>
+        <source>Opacity</source>
+        <translation>不透明度</translation>
     </message>
 </context>
 <context>
     <name>kImageAnnotator::AnnotationTabContextMenu</name>
     <message>
         <source>Close</source>
-        <translation type="unfinished"></translation>
+        <translation>閉じる</translation>
     </message>
     <message>
         <source>Close Other</source>
-        <translation type="unfinished"></translation>
+        <translation>ほかを閉じる</translation>
     </message>
     <message>
         <source>Close All</source>
-        <translation type="unfinished"></translation>
+        <translation>すべて閉じる</translation>
     </message>
     <message>
         <source>Close All to the Left</source>
-        <translation type="unfinished"></translation>
+        <translation>左側のタブをすべて閉じる</translation>
     </message>
     <message>
         <source>Close All to the Right</source>
-        <translation type="unfinished"></translation>
+        <translation>右側のタブをすべて閉じる</translation>
     </message>
 </context>
 <context>
     <name>kImageAnnotator::AnnotationToolSelection</name>
     <message>
         <source>Tool Selection</source>
-        <translation type="unfinished"></translation>
+        <translation>ツールの選択</translation>
     </message>
 </context>
 <context>
     <name>kImageAnnotator::BoolPicker</name>
     <message>
         <source>Enabled</source>
-        <translation type="unfinished"></translation>
+        <translation>有効</translation>
     </message>
     <message>
         <source>Disabled</source>
-        <translation type="unfinished"></translation>
+        <translation>無効</translation>
+    </message>
+</context>
+<context>
+    <name>kImageAnnotator::Controls</name>
+    <message>
+        <source>Undo</source>
+        <translation>元に戻す</translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <translation>やり直し</translation>
+    </message>
+    <message>
+        <source>Crop</source>
+        <translation>切り取り</translation>
+    </message>
+    <message>
+        <source>Scale</source>
+        <translation>拡大縮小</translation>
+    </message>
+    <message>
+        <source>Rotate</source>
+        <translation>回転</translation>
+    </message>
+    <message>
+        <source>Modify canvas</source>
+        <translation>キャンバスの修正</translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <translation>切り抜き削除</translation>
     </message>
 </context>
 <context>
     <name>kImageAnnotator::CropWidget</name>
     <message>
         <source>Cancel</source>
-        <translation type="unfinished"></translation>
+        <translation>キャンセル</translation>
     </message>
     <message>
         <source>X:</source>
@@ -146,92 +192,112 @@
     </message>
     <message>
         <source>W:</source>
-        <translation type="unfinished"></translation>
+        <translation>幅:</translation>
     </message>
     <message>
         <source>H:</source>
-        <translation type="unfinished"></translation>
+        <translation>高さ:</translation>
     </message>
     <message>
         <source>Apply</source>
-        <translation type="unfinished"></translation>
+        <translation>適応</translation>
+    </message>
+</context>
+<context>
+    <name>kImageAnnotator::CutWidget</name>
+    <message>
+        <source>Vertical</source>
+        <translation>縦</translation>
+    </message>
+    <message>
+        <source>Horizontal</source>
+        <translation>横</translation>
+    </message>
+    <message>
+        <source>Apply</source>
+        <translation>適応</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation>キャンセル</translation>
     </message>
 </context>
 <context>
     <name>kImageAnnotator::FillModePicker</name>
     <message>
         <source>Border And Fill Visibility</source>
-        <translation type="unfinished"></translation>
+        <translation>枠と塗りつぶし</translation>
     </message>
     <message>
         <source>Border and Fill</source>
-        <translation type="unfinished"></translation>
+        <translation>枠あり/塗りつぶし</translation>
     </message>
     <message>
         <source>Border and No Fill</source>
-        <translation type="unfinished"></translation>
+        <translation>枠のみ</translation>
     </message>
     <message>
         <source>No Border and No Fill</source>
-        <translation type="unfinished"></translation>
+        <translation>なし</translation>
     </message>
 </context>
 <context>
     <name>kImageAnnotator::FontPicker</name>
     <message>
         <source>Font Size</source>
-        <translation type="unfinished"></translation>
+        <translation>フォントの大きさ</translation>
     </message>
     <message>
         <source>Bold</source>
-        <translation type="unfinished"></translation>
+        <translation>太字</translation>
     </message>
     <message>
         <source>Italic</source>
-        <translation type="unfinished"></translation>
+        <translation>斜字</translation>
     </message>
     <message>
         <source>Underline</source>
-        <translation type="unfinished"></translation>
+        <translation>下線</translation>
     </message>
 </context>
 <context>
     <name>kImageAnnotator::ImageEffectPicker</name>
     <message>
         <source>Image Effects</source>
-        <translation type="unfinished"></translation>
+        <translation>画像エフェクト</translation>
     </message>
     <message>
         <source>No Effect</source>
-        <translation type="unfinished"></translation>
+        <translation>エフェクトなし</translation>
     </message>
     <message>
         <source>Drop Shadow</source>
-        <translation type="unfinished"></translation>
+        <translation>ドロップシャドー</translation>
     </message>
     <message>
         <source>Grayscale</source>
-        <translation type="unfinished"></translation>
+        <translation>グレースケール</translation>
     </message>
     <message>
         <source>Border</source>
-        <translation type="unfinished"></translation>
+        <translation>枠線</translation>
     </message>
     <message>
         <source>Invert Color</source>
-        <translation type="unfinished"></translation>
+        <translation>色の反転</translation>
     </message>
 </context>
 <context>
     <name>kImageAnnotator::ModifyCanvasWidget</name>
     <message>
         <source>Restricted</source>
-        <translation type="unfinished"></translation>
+        <translation>制限</translation>
     </message>
     <message>
         <source>When enabled enforces the canvas
 to include the background image.</source>
-        <translation type="unfinished"></translation>
+        <translation>有効なら、キャンバスは背景画像を
+含めたサイズに制限されます。</translation>
     </message>
     <message>
         <source>X:</source>
@@ -243,219 +309,232 @@ to include the background image.</source>
     </message>
     <message>
         <source>W:</source>
-        <translation type="unfinished"></translation>
+        <translation>幅:</translation>
     </message>
     <message>
         <source>H:</source>
-        <translation type="unfinished"></translation>
+        <translation>高さ:</translation>
     </message>
     <message>
         <source>Apply</source>
-        <translation type="unfinished"></translation>
+        <translation>適応</translation>
     </message>
     <message>
         <source>Cancel</source>
-        <translation type="unfinished"></translation>
+        <translation>キャンセル</translation>
     </message>
     <message>
         <source>Color:</source>
-        <translation type="unfinished"></translation>
+        <translation>色:</translation>
     </message>
     <message>
         <source>Canvas Background Color</source>
-        <translation type="unfinished"></translation>
+        <translation>キャンバスの背景色</translation>
     </message>
 </context>
 <context>
     <name>kImageAnnotator::RotateDialog</name>
     <message>
         <source>Rotate Image</source>
-        <translation type="unfinished"></translation>
+        <translation>画像の回転</translation>
     </message>
     <message>
         <source>180°</source>
-        <translation type="unfinished"></translation>
+        <translation>180°</translation>
     </message>
     <message>
         <source>90° Clockwise</source>
-        <translation type="unfinished"></translation>
+        <translation>90° 時計回り</translation>
     </message>
     <message>
         <source>90° Counter Clockwise</source>
-        <translation type="unfinished"></translation>
+        <translation>90° 反時計回り</translation>
     </message>
     <message>
         <source>Arbitrary</source>
-        <translation type="unfinished"></translation>
+        <translation>指定</translation>
     </message>
     <message>
         <source>Positive values rotate clockwise, negative values counter clockwise.
 Rotating by non 90° multipliers might introduce loss of quality.</source>
-        <translation type="unfinished"></translation>
+        <translation>正の値で時計回りに回転し、負の値では反時計回りです。
+90° 以外の倍数で回転すると、画質が低下することがあります。</translation>
     </message>
     <message>
         <source>Horizontal</source>
-        <translation type="unfinished"></translation>
+        <translation>横</translation>
     </message>
     <message>
         <source>Vertical</source>
-        <translation type="unfinished"></translation>
+        <translation>縦</translation>
     </message>
     <message>
         <source>OK</source>
-        <translation type="unfinished"></translation>
+        <translation>OK</translation>
     </message>
     <message>
         <source>Cancel</source>
-        <translation type="unfinished"></translation>
+        <translation>キャンセル</translation>
     </message>
     <message>
         <source>Rotate</source>
-        <translation type="unfinished"></translation>
+        <translation>回転</translation>
     </message>
     <message>
         <source>Flip</source>
-        <translation type="unfinished"></translation>
+        <translation>反転</translation>
     </message>
 </context>
 <context>
     <name>kImageAnnotator::ScaleDialog</name>
     <message>
         <source>Scale Image</source>
-        <translation type="unfinished"></translation>
+        <translation>画像の拡大縮小</translation>
     </message>
     <message>
         <source>Keep Aspect Ratio</source>
-        <translation type="unfinished"></translation>
+        <translation>アスペクト比を固定</translation>
     </message>
     <message>
         <source>Width:</source>
-        <translation type="unfinished"></translation>
+        <translation>幅:</translation>
     </message>
     <message>
         <source>Height:</source>
-        <translation type="unfinished"></translation>
+        <translation>高さ:</translation>
     </message>
     <message>
         <source>OK</source>
-        <translation type="unfinished"></translation>
+        <translation>OK</translation>
     </message>
     <message>
         <source>Cancel</source>
-        <translation type="unfinished"></translation>
+        <translation>キャンセル</translation>
     </message>
     <message>
         <source>Pixel</source>
-        <translation type="unfinished"></translation>
+        <translation>ピクセル</translation>
     </message>
     <message>
         <source>Percent</source>
-        <translation type="unfinished"></translation>
+        <translation>パーセント</translation>
     </message>
 </context>
 <context>
     <name>kImageAnnotator::StickerPicker</name>
     <message>
         <source>Sticker</source>
-        <translation type="unfinished"></translation>
+        <translation>ステッカー</translation>
     </message>
 </context>
 <context>
     <name>kImageAnnotator::ToolPicker</name>
     <message>
         <source>Select</source>
-        <translation type="unfinished"></translation>
+        <translation>選択</translation>
     </message>
     <message>
         <source>Pen</source>
-        <translation type="unfinished"></translation>
+        <translation>ペン</translation>
     </message>
     <message>
         <source>Number</source>
-        <translation type="unfinished"></translation>
+        <translation>番号</translation>
     </message>
     <message>
         <source>Marker Rectangle</source>
-        <translation type="unfinished"></translation>
+        <translation>マーカー四角形</translation>
     </message>
     <message>
         <source>Marker Ellipse</source>
-        <translation type="unfinished"></translation>
+        <translation>マーカー円形</translation>
     </message>
     <message>
         <source>Marker Pen</source>
-        <translation type="unfinished"></translation>
+        <translation>マーカーペン</translation>
     </message>
     <message>
         <source>Text</source>
-        <translation type="unfinished"></translation>
+        <translation>文字</translation>
     </message>
     <message>
         <source>Arrow</source>
-        <translation type="unfinished"></translation>
+        <translation>矢印</translation>
     </message>
     <message>
         <source>Double Arrow</source>
-        <translation type="unfinished"></translation>
+        <translation>両矢印</translation>
     </message>
     <message>
         <source>Line</source>
-        <translation type="unfinished"></translation>
+        <translation>線</translation>
     </message>
     <message>
         <source>Blur</source>
-        <translation type="unfinished"></translation>
+        <translation>ぼやけ</translation>
     </message>
     <message>
         <source>Rectangle</source>
-        <translation type="unfinished"></translation>
+        <translation>四角形</translation>
     </message>
     <message>
         <source>Ellipse</source>
-        <translation type="unfinished"></translation>
+        <translation>円形</translation>
     </message>
     <message>
         <source>Number Pointer</source>
-        <translation type="unfinished"></translation>
+        <translation>数字とポイント</translation>
     </message>
     <message>
         <source>Sticker</source>
-        <translation type="unfinished"></translation>
+        <translation>ステッカー</translation>
     </message>
     <message>
         <source>Pixelate</source>
-        <translation type="unfinished"></translation>
+        <translation>モザイク</translation>
     </message>
     <message>
         <source>Text Pointer</source>
-        <translation type="unfinished"></translation>
+        <translation>文字とポイント</translation>
     </message>
     <message>
         <source>Text Arrow</source>
-        <translation type="unfinished"></translation>
+        <translation>文字と矢印</translation>
     </message>
     <message>
         <source>Number Arrow</source>
-        <translation type="unfinished"></translation>
+        <translation>番号と矢印</translation>
     </message>
     <message>
         <source>Duplicate</source>
-        <translation type="unfinished"></translation>
+        <translation>複製</translation>
     </message>
 </context>
 <context>
     <name>kImageAnnotator::ZoomPicker</name>
     <message>
         <source>Zoom In (%1)</source>
-        <translation type="unfinished"></translation>
+        <translation>拡大 (%1)</translation>
     </message>
     <message>
         <source>Zoom Out (%1)</source>
-        <translation type="unfinished"></translation>
+        <translation>縮小 (%1)</translation>
     </message>
     <message>
         <source>Reset Zoom (%1)</source>
-        <translation type="unfinished"></translation>
+        <translation>拡大を初期化 (%1)</translation>
+    </message>
+    <message>
+        <source>Reset Zoom</source>
+        <translation>拡大を初期化</translation>
+    </message>
+    <message>
+        <source>Fit Image</source>
+        <translation>画像に適合</translation>
+    </message>
+    <message>
+        <source>Fit image to view (%1)</source>
+        <translation>表示を画像に適合 (%1)</translation>
     </message>
 </context>
 </TS>
diff --git a/translations/kImageAnnotator_ko.ts b/translations/kImageAnnotator_ko.ts
index 136b07d..5d8de1d 100644
--- a/translations/kImageAnnotator_ko.ts
+++ b/translations/kImageAnnotator_ko.ts
@@ -44,6 +44,13 @@
         <translation>삭제</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::AnnotationControlsWidget</name>
+    <message>
+        <source>Controls</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::AnnotationGeneralSettings</name>
     <message>
@@ -88,6 +95,14 @@
         <source>Item Settings</source>
         <translation>항목 설정</translation>
     </message>
+    <message>
+        <source>Scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Opacity</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>kImageAnnotator::AnnotationTabContextMenu</name>
@@ -130,6 +145,37 @@
         <translation>사용 안 함</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::Controls</name>
+    <message>
+        <source>Undo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Crop</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Rotate</source>
+        <translation type="unfinished">회전</translation>
+    </message>
+    <message>
+        <source>Modify canvas</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::CropWidget</name>
     <message>
@@ -157,6 +203,25 @@
         <translation>적용</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::CutWidget</name>
+    <message>
+        <source>Vertical</source>
+        <translation type="unfinished">수직</translation>
+    </message>
+    <message>
+        <source>Horizontal</source>
+        <translation type="unfinished">수평</translation>
+    </message>
+    <message>
+        <source>Apply</source>
+        <translation type="unfinished">적용</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="unfinished">취소</translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::FillModePicker</name>
     <message>
@@ -459,5 +524,17 @@ Rotating by non 90° multipliers might introduce loss of quality.</source>
         <source>Reset Zoom (%1)</source>
         <translation>배율 초기화(%1)</translation>
     </message>
+    <message>
+        <source>Reset Zoom</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Fit Image</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Fit image to view (%1)</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 </TS>
diff --git a/translations/kImageAnnotator_nl.ts b/translations/kImageAnnotator_nl.ts
index fce9b43..ac8fd89 100644
--- a/translations/kImageAnnotator_nl.ts
+++ b/translations/kImageAnnotator_nl.ts
@@ -44,6 +44,13 @@
         <translation>Verwijderen</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::AnnotationControlsWidget</name>
+    <message>
+        <source>Controls</source>
+        <translation>Bediening</translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::AnnotationGeneralSettings</name>
     <message>
@@ -88,6 +95,14 @@
         <source>Item Settings</source>
         <translation>Iteminstellingen</translation>
     </message>
+    <message>
+        <source>Scale</source>
+        <translation>Schaal</translation>
+    </message>
+    <message>
+        <source>Opacity</source>
+        <translation>Doorzichtigheid</translation>
+    </message>
 </context>
 <context>
     <name>kImageAnnotator::AnnotationTabContextMenu</name>
@@ -130,6 +145,37 @@
         <translation>Uitgeschakeld</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::Controls</name>
+    <message>
+        <source>Undo</source>
+        <translation>Ongedaan maken</translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <translation>Opnieuw uitvoeren</translation>
+    </message>
+    <message>
+        <source>Crop</source>
+        <translation>Bijsnijden</translation>
+    </message>
+    <message>
+        <source>Scale</source>
+        <translation>Vergroten/Verkleinen</translation>
+    </message>
+    <message>
+        <source>Rotate</source>
+        <translation>Draaien</translation>
+    </message>
+    <message>
+        <source>Modify canvas</source>
+        <translation>Canvas aanpassen</translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <translation>Knippen</translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::CropWidget</name>
     <message>
@@ -157,6 +203,25 @@
         <translation>Toepassen</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::CutWidget</name>
+    <message>
+        <source>Vertical</source>
+        <translation>Verticaal</translation>
+    </message>
+    <message>
+        <source>Horizontal</source>
+        <translation>Horizontaal</translation>
+    </message>
+    <message>
+        <source>Apply</source>
+        <translation>Toepassen</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation>Annuleren</translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::FillModePicker</name>
     <message>
@@ -459,5 +524,17 @@ Een waarde die afwijkt van 90° kan kwaliteitsverlies veroorzaken.</translation>
         <source>Reset Zoom (%1)</source>
         <translation>Standaard zoomniveau (%1)</translation>
     </message>
+    <message>
+        <source>Reset Zoom</source>
+        <translation>Oorspronkelijk zoomniveau</translation>
+    </message>
+    <message>
+        <source>Fit Image</source>
+        <translation>Afbeelding inpassen</translation>
+    </message>
+    <message>
+        <source>Fit image to view (%1)</source>
+        <translation>Afbeelding aanpassen aan weergave (%1)</translation>
+    </message>
 </context>
 </TS>
diff --git a/translations/kImageAnnotator_no.ts b/translations/kImageAnnotator_no.ts
index 90359ee..67cbd3d 100644
--- a/translations/kImageAnnotator_no.ts
+++ b/translations/kImageAnnotator_no.ts
@@ -44,6 +44,13 @@
         <translation>Slett</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::AnnotationControlsWidget</name>
+    <message>
+        <source>Controls</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::AnnotationGeneralSettings</name>
     <message>
@@ -88,6 +95,14 @@
         <source>Item Settings</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Opacity</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>kImageAnnotator::AnnotationTabContextMenu</name>
@@ -130,6 +145,37 @@
         <translation type="unfinished"></translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::Controls</name>
+    <message>
+        <source>Undo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Crop</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Rotate</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Modify canvas</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::CropWidget</name>
     <message>
@@ -157,6 +203,25 @@
         <translation type="unfinished">Bruk</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::CutWidget</name>
+    <message>
+        <source>Vertical</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Horizontal</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Apply</source>
+        <translation type="unfinished">Bruk</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="unfinished">Avbryt</translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::FillModePicker</name>
     <message>
@@ -458,5 +523,17 @@ Rotating by non 90° multipliers might introduce loss of quality.</source>
         <source>Reset Zoom (%1)</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Reset Zoom</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Fit Image</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Fit image to view (%1)</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 </TS>
diff --git a/translations/kImageAnnotator_pl.ts b/translations/kImageAnnotator_pl.ts
index caf5513..8aefcab 100644
--- a/translations/kImageAnnotator_pl.ts
+++ b/translations/kImageAnnotator_pl.ts
@@ -44,6 +44,13 @@
         <translation>Usuń</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::AnnotationControlsWidget</name>
+    <message>
+        <source>Controls</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::AnnotationGeneralSettings</name>
     <message>
@@ -88,6 +95,14 @@
         <source>Item Settings</source>
         <translation>Ustawienia elementów</translation>
     </message>
+    <message>
+        <source>Scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Opacity</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>kImageAnnotator::AnnotationTabContextMenu</name>
@@ -130,6 +145,37 @@
         <translation>Wyłączone</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::Controls</name>
+    <message>
+        <source>Undo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Crop</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Rotate</source>
+        <translation type="unfinished">Obróć</translation>
+    </message>
+    <message>
+        <source>Modify canvas</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::CropWidget</name>
     <message>
@@ -157,6 +203,25 @@
         <translation>Zastosuj</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::CutWidget</name>
+    <message>
+        <source>Vertical</source>
+        <translation type="unfinished">Pionowo</translation>
+    </message>
+    <message>
+        <source>Horizontal</source>
+        <translation type="unfinished">Poziomo</translation>
+    </message>
+    <message>
+        <source>Apply</source>
+        <translation type="unfinished">Zastosuj</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="unfinished">Anuluj</translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::FillModePicker</name>
     <message>
@@ -459,5 +524,17 @@ Obracanie przez mnożniki inne niż 90° może spowodować utratę jakości.</tr
         <source>Reset Zoom (%1)</source>
         <translation>Resetuj powiększenie (%1)</translation>
     </message>
+    <message>
+        <source>Reset Zoom</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Fit Image</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Fit image to view (%1)</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 </TS>
diff --git a/translations/kImageAnnotator_pt.ts b/translations/kImageAnnotator_pt.ts
index e7518cc..d91f5a7 100644
--- a/translations/kImageAnnotator_pt.ts
+++ b/translations/kImageAnnotator_pt.ts
@@ -44,6 +44,13 @@
         <translation>Apagar</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::AnnotationControlsWidget</name>
+    <message>
+        <source>Controls</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::AnnotationGeneralSettings</name>
     <message>
@@ -88,6 +95,14 @@
         <source>Item Settings</source>
         <translation>Configurações do item</translation>
     </message>
+    <message>
+        <source>Scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Opacity</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>kImageAnnotator::AnnotationTabContextMenu</name>
@@ -130,6 +145,37 @@
         <translation>Desativado</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::Controls</name>
+    <message>
+        <source>Undo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Crop</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Rotate</source>
+        <translation type="unfinished">Rotacionar</translation>
+    </message>
+    <message>
+        <source>Modify canvas</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::CropWidget</name>
     <message>
@@ -157,6 +203,25 @@
         <translation>Aplicar</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::CutWidget</name>
+    <message>
+        <source>Vertical</source>
+        <translation type="unfinished">Vertical</translation>
+    </message>
+    <message>
+        <source>Horizontal</source>
+        <translation type="unfinished">Horizontal</translation>
+    </message>
+    <message>
+        <source>Apply</source>
+        <translation type="unfinished">Aplicar</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="unfinished">Cancelar</translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::FillModePicker</name>
     <message>
@@ -459,5 +524,17 @@ Rotacionar por multiplicadores diferentes de 90° pode causar perda de qualidade
         <source>Reset Zoom (%1)</source>
         <translation>Redefinir Zoom (%1)</translation>
     </message>
+    <message>
+        <source>Reset Zoom</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Fit Image</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Fit image to view (%1)</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 </TS>
diff --git a/translations/kImageAnnotator_pt_BR.ts b/translations/kImageAnnotator_pt_BR.ts
index 6a2a508..f8a637d 100644
--- a/translations/kImageAnnotator_pt_BR.ts
+++ b/translations/kImageAnnotator_pt_BR.ts
@@ -44,6 +44,13 @@
         <translation>Excluir</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::AnnotationControlsWidget</name>
+    <message>
+        <source>Controls</source>
+        <translation>Controles</translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::AnnotationGeneralSettings</name>
     <message>
@@ -88,6 +95,14 @@
         <source>Item Settings</source>
         <translation>Configurações do item</translation>
     </message>
+    <message>
+        <source>Scale</source>
+        <translation>Escala</translation>
+    </message>
+    <message>
+        <source>Opacity</source>
+        <translation>Opacidade</translation>
+    </message>
 </context>
 <context>
     <name>kImageAnnotator::AnnotationTabContextMenu</name>
@@ -130,6 +145,37 @@
         <translation>Desabilitado</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::Controls</name>
+    <message>
+        <source>Undo</source>
+        <translation>Desfazer</translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <translation>Refazer</translation>
+    </message>
+    <message>
+        <source>Crop</source>
+        <translation>Recortar</translation>
+    </message>
+    <message>
+        <source>Scale</source>
+        <translation>Escala</translation>
+    </message>
+    <message>
+        <source>Rotate</source>
+        <translation>Rotacionar</translation>
+    </message>
+    <message>
+        <source>Modify canvas</source>
+        <translation>Modificar tela</translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <translation>Cortar</translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::CropWidget</name>
     <message>
@@ -157,6 +203,25 @@
         <translation>Aplicar</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::CutWidget</name>
+    <message>
+        <source>Vertical</source>
+        <translation>Vertical</translation>
+    </message>
+    <message>
+        <source>Horizontal</source>
+        <translation>Horizontal</translation>
+    </message>
+    <message>
+        <source>Apply</source>
+        <translation>Aplicar</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation>Cancelar</translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::FillModePicker</name>
     <message>
@@ -459,5 +524,17 @@ Rotacionar por multiplicadores diferentes de 90° pode causar perda de qualidade
         <source>Reset Zoom (%1)</source>
         <translation>Redefinir Zoom (%1)</translation>
     </message>
+    <message>
+        <source>Reset Zoom</source>
+        <translation>Redefinir zoom</translation>
+    </message>
+    <message>
+        <source>Fit Image</source>
+        <translation>Ajustar a imagem</translation>
+    </message>
+    <message>
+        <source>Fit image to view (%1)</source>
+        <translation>Ajustar imagem para visualização (%1)</translation>
+    </message>
 </context>
 </TS>
diff --git a/translations/kImageAnnotator_ro.ts b/translations/kImageAnnotator_ro.ts
index c03d4fb..b9d7766 100644
--- a/translations/kImageAnnotator_ro.ts
+++ b/translations/kImageAnnotator_ro.ts
@@ -44,6 +44,13 @@
         <translation>Șterge</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::AnnotationControlsWidget</name>
+    <message>
+        <source>Controls</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::AnnotationGeneralSettings</name>
     <message>
@@ -88,6 +95,14 @@
         <source>Item Settings</source>
         <translation>Configurări element</translation>
     </message>
+    <message>
+        <source>Scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Opacity</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>kImageAnnotator::AnnotationTabContextMenu</name>
@@ -130,6 +145,37 @@
         <translation>Dezactivat</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::Controls</name>
+    <message>
+        <source>Undo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Crop</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Rotate</source>
+        <translation type="unfinished">Rotește</translation>
+    </message>
+    <message>
+        <source>Modify canvas</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::CropWidget</name>
     <message>
@@ -157,6 +203,25 @@
         <translation>Aplică</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::CutWidget</name>
+    <message>
+        <source>Vertical</source>
+        <translation type="unfinished">Vertical</translation>
+    </message>
+    <message>
+        <source>Horizontal</source>
+        <translation type="unfinished">Orizontal</translation>
+    </message>
+    <message>
+        <source>Apply</source>
+        <translation type="unfinished">Aplică</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="unfinished">Renunță</translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::FillModePicker</name>
     <message>
@@ -459,5 +524,17 @@ Rotirea cu non-multiplu de 90° poate introduce pierderi de calitate.</translati
         <source>Reset Zoom (%1)</source>
         <translation>Reinițializează apropierea (%1)</translation>
     </message>
+    <message>
+        <source>Reset Zoom</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Fit Image</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Fit image to view (%1)</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 </TS>
diff --git a/translations/kImageAnnotator_ru.ts b/translations/kImageAnnotator_ru.ts
index 0fd8a01..6b6f25d 100644
--- a/translations/kImageAnnotator_ru.ts
+++ b/translations/kImageAnnotator_ru.ts
@@ -44,6 +44,13 @@
         <translation>Удалить</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::AnnotationControlsWidget</name>
+    <message>
+        <source>Controls</source>
+        <translation>Элементы управления</translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::AnnotationGeneralSettings</name>
     <message>
@@ -88,6 +95,14 @@
         <source>Item Settings</source>
         <translation>Настройки элемента</translation>
     </message>
+    <message>
+        <source>Scale</source>
+        <translation>Масштаб</translation>
+    </message>
+    <message>
+        <source>Opacity</source>
+        <translation>Прозрачность</translation>
+    </message>
 </context>
 <context>
     <name>kImageAnnotator::AnnotationTabContextMenu</name>
@@ -130,6 +145,37 @@
         <translation>Отключено</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::Controls</name>
+    <message>
+        <source>Undo</source>
+        <translation>Отменить</translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <translation>Повторить</translation>
+    </message>
+    <message>
+        <source>Crop</source>
+        <translation>Обрезать</translation>
+    </message>
+    <message>
+        <source>Scale</source>
+        <translation>Масштабировать</translation>
+    </message>
+    <message>
+        <source>Rotate</source>
+        <translation>Повернуть</translation>
+    </message>
+    <message>
+        <source>Modify canvas</source>
+        <translation>Изменить холст</translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <translation>Вырезать</translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::CropWidget</name>
     <message>
@@ -157,6 +203,25 @@
         <translation>Применить</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::CutWidget</name>
+    <message>
+        <source>Vertical</source>
+        <translation>Вертикально</translation>
+    </message>
+    <message>
+        <source>Horizontal</source>
+        <translation>Горизонально</translation>
+    </message>
+    <message>
+        <source>Apply</source>
+        <translation>Применить</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation>Отменить</translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::FillModePicker</name>
     <message>
@@ -459,5 +524,17 @@ Rotating by non 90° multipliers might introduce loss of quality.</source>
         <source>Reset Zoom (%1)</source>
         <translation>Исходный масштаб (%1)</translation>
     </message>
+    <message>
+        <source>Reset Zoom</source>
+        <translation>Исходный масштаб</translation>
+    </message>
+    <message>
+        <source>Fit Image</source>
+        <translation>Изображение целиком</translation>
+    </message>
+    <message>
+        <source>Fit image to view (%1)</source>
+        <translation>Изображение целиком (%1)</translation>
+    </message>
 </context>
 </TS>
diff --git a/translations/kImageAnnotator_si.ts b/translations/kImageAnnotator_si.ts
index ae7f986..3909d5b 100644
--- a/translations/kImageAnnotator_si.ts
+++ b/translations/kImageAnnotator_si.ts
@@ -44,6 +44,13 @@
         <translation type="unfinished"></translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::AnnotationControlsWidget</name>
+    <message>
+        <source>Controls</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::AnnotationGeneralSettings</name>
     <message>
@@ -88,6 +95,14 @@
         <source>Item Settings</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Opacity</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>kImageAnnotator::AnnotationTabContextMenu</name>
@@ -130,6 +145,37 @@
         <translation>අබල කර ඇත</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::Controls</name>
+    <message>
+        <source>Undo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Crop</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Rotate</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Modify canvas</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::CropWidget</name>
     <message>
@@ -157,6 +203,25 @@
         <translation>යොදන්න</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::CutWidget</name>
+    <message>
+        <source>Vertical</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Horizontal</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Apply</source>
+        <translation type="unfinished">යොදන්න</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="unfinished">අවලංගු</translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::FillModePicker</name>
     <message>
@@ -457,5 +522,17 @@ Rotating by non 90° multipliers might introduce loss of quality.</source>
         <source>Reset Zoom (%1)</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Reset Zoom</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Fit Image</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Fit image to view (%1)</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 </TS>
diff --git a/translations/kImageAnnotator_sq.ts b/translations/kImageAnnotator_sq.ts
index 7d52c54..b2a6962 100644
--- a/translations/kImageAnnotator_sq.ts
+++ b/translations/kImageAnnotator_sq.ts
@@ -44,6 +44,13 @@
         <translation>Fshije</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::AnnotationControlsWidget</name>
+    <message>
+        <source>Controls</source>
+        <translation>Kontrolle</translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::AnnotationGeneralSettings</name>
     <message>
@@ -88,6 +95,14 @@
         <source>Item Settings</source>
         <translation>Rregullime Objekti</translation>
     </message>
+    <message>
+        <source>Scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Opacity</source>
+        <translation>Patejdukshmëri</translation>
+    </message>
 </context>
 <context>
     <name>kImageAnnotator::AnnotationTabContextMenu</name>
@@ -130,6 +145,37 @@
         <translation>E çaktivizuar</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::Controls</name>
+    <message>
+        <source>Undo</source>
+        <translation>Zhbëje</translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <translation>Ribëje</translation>
+    </message>
+    <message>
+        <source>Crop</source>
+        <translation>Qethe</translation>
+    </message>
+    <message>
+        <source>Scale</source>
+        <translation>Ripërmasojeni</translation>
+    </message>
+    <message>
+        <source>Rotate</source>
+        <translation>Rrotulloje</translation>
+    </message>
+    <message>
+        <source>Modify canvas</source>
+        <translation>Ndryshoni kanavacën</translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <translation>Prije</translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::CropWidget</name>
     <message>
@@ -157,6 +203,25 @@
         <translation>Aplikoje</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::CutWidget</name>
+    <message>
+        <source>Vertical</source>
+        <translation>Vertika</translation>
+    </message>
+    <message>
+        <source>Horizontal</source>
+        <translation>Horizontal</translation>
+    </message>
+    <message>
+        <source>Apply</source>
+        <translation>Aplikoje</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation>Anuloje</translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::FillModePicker</name>
     <message>
@@ -459,5 +524,17 @@ Rrotullimi me shumëfisha jo të 90° mund të sjellë humbje të cilësisë.</t
         <source>Reset Zoom (%1)</source>
         <translation>Rikthe Zoom-in te parazgjedhja (%1)</translation>
     </message>
+    <message>
+        <source>Reset Zoom</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Fit Image</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Fit image to view (%1)</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 </TS>
diff --git a/translations/kImageAnnotator_sv.ts b/translations/kImageAnnotator_sv.ts
index 4b6286d..8b393c5 100644
--- a/translations/kImageAnnotator_sv.ts
+++ b/translations/kImageAnnotator_sv.ts
@@ -44,6 +44,13 @@
         <translation>Ta bort</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::AnnotationControlsWidget</name>
+    <message>
+        <source>Controls</source>
+        <translation>Kontroller</translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::AnnotationGeneralSettings</name>
     <message>
@@ -88,6 +95,14 @@
         <source>Item Settings</source>
         <translation>Objektinställningar</translation>
     </message>
+    <message>
+        <source>Scale</source>
+        <translation>Skala</translation>
+    </message>
+    <message>
+        <source>Opacity</source>
+        <translation>Opacitet</translation>
+    </message>
 </context>
 <context>
     <name>kImageAnnotator::AnnotationTabContextMenu</name>
@@ -130,6 +145,37 @@
         <translation>Inaktiverat</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::Controls</name>
+    <message>
+        <source>Undo</source>
+        <translation>Ångra</translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <translation>Upprepa</translation>
+    </message>
+    <message>
+        <source>Crop</source>
+        <translation>Beskär</translation>
+    </message>
+    <message>
+        <source>Scale</source>
+        <translation>Skala</translation>
+    </message>
+    <message>
+        <source>Rotate</source>
+        <translation>Rotera</translation>
+    </message>
+    <message>
+        <source>Modify canvas</source>
+        <translation>Ändra arbetsytan</translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <translation>Klipp ut</translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::CropWidget</name>
     <message>
@@ -157,6 +203,25 @@
         <translation>Tillämpa</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::CutWidget</name>
+    <message>
+        <source>Vertical</source>
+        <translation>Vertikalt</translation>
+    </message>
+    <message>
+        <source>Horizontal</source>
+        <translation>Horisontell</translation>
+    </message>
+    <message>
+        <source>Apply</source>
+        <translation>Tillämpa</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation>Avbryt</translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::FillModePicker</name>
     <message>
@@ -459,5 +524,17 @@ Rotation med annat än 90°-multiplikator kan leda till kvalitetsförlust.</tran
         <source>Reset Zoom (%1)</source>
         <translation>Återställ zoom (%1)</translation>
     </message>
+    <message>
+        <source>Reset Zoom</source>
+        <translation>Återställ zoom</translation>
+    </message>
+    <message>
+        <source>Fit Image</source>
+        <translation>Anpassa bild</translation>
+    </message>
+    <message>
+        <source>Fit image to view (%1)</source>
+        <translation>Anpassa bild till vyn (%1)</translation>
+    </message>
 </context>
 </TS>
diff --git a/translations/kImageAnnotator_tr.ts b/translations/kImageAnnotator_tr.ts
index 4b82845..e156235 100644
--- a/translations/kImageAnnotator_tr.ts
+++ b/translations/kImageAnnotator_tr.ts
@@ -44,6 +44,13 @@
         <translation>Sil</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::AnnotationControlsWidget</name>
+    <message>
+        <source>Controls</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::AnnotationGeneralSettings</name>
     <message>
@@ -88,6 +95,14 @@
         <source>Item Settings</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Opacity</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>kImageAnnotator::AnnotationTabContextMenu</name>
@@ -130,6 +145,37 @@
         <translation type="unfinished"></translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::Controls</name>
+    <message>
+        <source>Undo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Crop</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Rotate</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Modify canvas</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::CropWidget</name>
     <message>
@@ -157,6 +203,25 @@
         <translation type="unfinished"></translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::CutWidget</name>
+    <message>
+        <source>Vertical</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Horizontal</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Apply</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="unfinished">İptal</translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::FillModePicker</name>
     <message>
@@ -457,5 +522,17 @@ Rotating by non 90° multipliers might introduce loss of quality.</source>
         <source>Reset Zoom (%1)</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <source>Reset Zoom</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Fit Image</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Fit image to view (%1)</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 </TS>
diff --git a/translations/kImageAnnotator_uk.ts b/translations/kImageAnnotator_uk.ts
index 7e86b93..e206cad 100644
--- a/translations/kImageAnnotator_uk.ts
+++ b/translations/kImageAnnotator_uk.ts
@@ -44,6 +44,13 @@
         <translation>Вилучити</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::AnnotationControlsWidget</name>
+    <message>
+        <source>Controls</source>
+        <translation>Керування</translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::AnnotationGeneralSettings</name>
     <message>
@@ -88,6 +95,14 @@
         <source>Item Settings</source>
         <translation>Параметри пункту</translation>
     </message>
+    <message>
+        <source>Scale</source>
+        <translation>Масштаб</translation>
+    </message>
+    <message>
+        <source>Opacity</source>
+        <translation>Непрозорість</translation>
+    </message>
 </context>
 <context>
     <name>kImageAnnotator::AnnotationTabContextMenu</name>
@@ -130,6 +145,37 @@
         <translation>Вимкнено</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::Controls</name>
+    <message>
+        <source>Undo</source>
+        <translation>Скасувати</translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <translation>Повторити</translation>
+    </message>
+    <message>
+        <source>Crop</source>
+        <translation>Обрізати</translation>
+    </message>
+    <message>
+        <source>Scale</source>
+        <translation>Масштабувати</translation>
+    </message>
+    <message>
+        <source>Rotate</source>
+        <translation>Обертати</translation>
+    </message>
+    <message>
+        <source>Modify canvas</source>
+        <translation>Змінити полотно</translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <translation>Вирізати</translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::CropWidget</name>
     <message>
@@ -157,6 +203,25 @@
         <translation>Застосувати</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::CutWidget</name>
+    <message>
+        <source>Vertical</source>
+        <translation>Вертикально</translation>
+    </message>
+    <message>
+        <source>Horizontal</source>
+        <translation>Горизонтально</translation>
+    </message>
+    <message>
+        <source>Apply</source>
+        <translation>Застосувати</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation>Скасувати</translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::FillModePicker</name>
     <message>
@@ -459,5 +524,17 @@ Rotating by non 90° multipliers might introduce loss of quality.</source>
         <source>Reset Zoom (%1)</source>
         <translation>Відновити масштаб (%1)</translation>
     </message>
+    <message>
+        <source>Reset Zoom</source>
+        <translation>Відновити масштаб</translation>
+    </message>
+    <message>
+        <source>Fit Image</source>
+        <translation>За зображенням</translation>
+    </message>
+    <message>
+        <source>Fit image to view (%1)</source>
+        <translation>Розмір зображення за областю перегляду (%1)</translation>
+    </message>
 </context>
 </TS>
diff --git a/translations/kImageAnnotator_zh_CN.ts b/translations/kImageAnnotator_zh_CN.ts
index 47261df..bd04459 100644
--- a/translations/kImageAnnotator_zh_CN.ts
+++ b/translations/kImageAnnotator_zh_CN.ts
@@ -44,6 +44,13 @@
         <translation>删除</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::AnnotationControlsWidget</name>
+    <message>
+        <source>Controls</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::AnnotationGeneralSettings</name>
     <message>
@@ -82,12 +89,20 @@
     </message>
     <message>
         <source>Item Shadow</source>
-        <translation type="unfinished">项影</translation>
+        <translation>元素的阴影</translation>
     </message>
     <message>
         <source>Item Settings</source>
         <translation>元素设置</translation>
     </message>
+    <message>
+        <source>Scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Opacity</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>kImageAnnotator::AnnotationTabContextMenu</name>
@@ -130,6 +145,37 @@
         <translation>关闭</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::Controls</name>
+    <message>
+        <source>Undo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Redo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Crop</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Rotate</source>
+        <translation>旋转</translation>
+    </message>
+    <message>
+        <source>Modify canvas</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::CropWidget</name>
     <message>
@@ -157,6 +203,25 @@
         <translation>应用</translation>
     </message>
 </context>
+<context>
+    <name>kImageAnnotator::CutWidget</name>
+    <message>
+        <source>Vertical</source>
+        <translation>垂直</translation>
+    </message>
+    <message>
+        <source>Horizontal</source>
+        <translation>水平</translation>
+    </message>
+    <message>
+        <source>Apply</source>
+        <translation>应用</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation>取消</translation>
+    </message>
+</context>
 <context>
     <name>kImageAnnotator::FillModePicker</name>
     <message>
@@ -226,12 +291,13 @@
     <name>kImageAnnotator::ModifyCanvasWidget</name>
     <message>
         <source>Restricted</source>
-        <translation type="unfinished"></translation>
+        <translation>受限</translation>
     </message>
     <message>
         <source>When enabled enforces the canvas
 to include the background image.</source>
-        <translation type="unfinished"></translation>
+        <translation>启用后强制画布
+ 包括背景图像。</translation>
     </message>
     <message>
         <source>X:</source>
@@ -286,7 +352,7 @@ to include the background image.</source>
     </message>
     <message>
         <source>Arbitrary</source>
-        <translation type="unfinished"></translation>
+        <translation>任意</translation>
     </message>
     <message>
         <source>Positive values rotate clockwise, negative values counter clockwise.
@@ -458,5 +524,17 @@ Rotating by non 90° multipliers might introduce loss of quality.</source>
         <source>Reset Zoom (%1)</source>
         <translation>重置大小(%1)</translation>
     </message>
+    <message>
+        <source>Reset Zoom</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Fit Image</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Fit image to view (%1)</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 </TS>



More information about the Neon-commits mailing list