diff --git a/ico/icon-themes.qrc b/ico/icon-themes.qrc
index 377a7d4b0..cce9d1fda 100644
--- a/ico/icon-themes.qrc
+++ b/ico/icon-themes.qrc
@@ -267,12 +267,19 @@
128x128/project.png
128x128/settings.png
128x128/terminalstrip.png
+ scalable/align-horizontal-center.svg
+ scalable/align-horizontal-left.svg
+ scalable/align-horizontal-right.svg
+ scalable/align-vertical-bottom.svg
+ scalable/align-vertical-center.svg
+ scalable/align-vertical-top.svg
scalable/diagram.svg
scalable/folio-delete.svg
scalable/folio-new.svg
scalable/folio-properties.svg
scalable/label.svg
scalable/pdf-import.svg
+ scalable/snap-to-grid.svg
breeze-icons/scalable/apps/hidef/edit-opacity.svg
breeze-icons/scalable/apps/hidef/image-flip-horizontal-symbolic.svg
breeze-icons/scalable/apps/hidef/image-flip-vertical-symbolic.svg
@@ -457,12 +464,19 @@
themes/qet-dark/48x48/view-pim-journal.png
themes/qet-dark/128x128/plasmagik.png
themes/qet-dark/128x128/settings.png
+ themes/qet-dark/scalable/align-horizontal-center.svg
+ themes/qet-dark/scalable/align-horizontal-left.svg
+ themes/qet-dark/scalable/align-horizontal-right.svg
+ themes/qet-dark/scalable/align-vertical-bottom.svg
+ themes/qet-dark/scalable/align-vertical-center.svg
+ themes/qet-dark/scalable/align-vertical-top.svg
themes/qet-dark/scalable/diagram.svg
themes/qet-dark/scalable/folio-delete.svg
themes/qet-dark/scalable/folio-new.svg
themes/qet-dark/scalable/folio-properties.svg
themes/qet-dark/scalable/label.svg
themes/qet-dark/scalable/pdf-import.svg
+ themes/qet-dark/scalable/snap-to-grid.svg
themes/qet-dark/scalable/edit-opacity.svg
themes/qet-dark/scalable/image-flip-horizontal.svg
themes/qet-dark/scalable/image-flip-vertical.svg
diff --git a/ico/scalable/align-horizontal-center.svg b/ico/scalable/align-horizontal-center.svg
new file mode 100644
index 000000000..f4dc74ef1
--- /dev/null
+++ b/ico/scalable/align-horizontal-center.svg
@@ -0,0 +1,13 @@
+
diff --git a/ico/scalable/align-horizontal-left.svg b/ico/scalable/align-horizontal-left.svg
new file mode 100644
index 000000000..80af690e0
--- /dev/null
+++ b/ico/scalable/align-horizontal-left.svg
@@ -0,0 +1,13 @@
+
diff --git a/ico/scalable/align-horizontal-right.svg b/ico/scalable/align-horizontal-right.svg
new file mode 100644
index 000000000..d2c483ebb
--- /dev/null
+++ b/ico/scalable/align-horizontal-right.svg
@@ -0,0 +1,13 @@
+
diff --git a/ico/scalable/align-vertical-bottom.svg b/ico/scalable/align-vertical-bottom.svg
new file mode 100644
index 000000000..b5c251ffe
--- /dev/null
+++ b/ico/scalable/align-vertical-bottom.svg
@@ -0,0 +1,13 @@
+
diff --git a/ico/scalable/align-vertical-center.svg b/ico/scalable/align-vertical-center.svg
new file mode 100644
index 000000000..adece279e
--- /dev/null
+++ b/ico/scalable/align-vertical-center.svg
@@ -0,0 +1,13 @@
+
diff --git a/ico/scalable/align-vertical-top.svg b/ico/scalable/align-vertical-top.svg
new file mode 100644
index 000000000..dfeb4cd04
--- /dev/null
+++ b/ico/scalable/align-vertical-top.svg
@@ -0,0 +1,13 @@
+
diff --git a/ico/scalable/snap-to-grid.svg b/ico/scalable/snap-to-grid.svg
new file mode 100644
index 000000000..7262c14c2
--- /dev/null
+++ b/ico/scalable/snap-to-grid.svg
@@ -0,0 +1,13 @@
+
diff --git a/ico/themes/qet-dark/scalable/align-horizontal-center.svg b/ico/themes/qet-dark/scalable/align-horizontal-center.svg
new file mode 100644
index 000000000..53131882f
--- /dev/null
+++ b/ico/themes/qet-dark/scalable/align-horizontal-center.svg
@@ -0,0 +1,13 @@
+
diff --git a/ico/themes/qet-dark/scalable/align-horizontal-left.svg b/ico/themes/qet-dark/scalable/align-horizontal-left.svg
new file mode 100644
index 000000000..11cddde30
--- /dev/null
+++ b/ico/themes/qet-dark/scalable/align-horizontal-left.svg
@@ -0,0 +1,13 @@
+
diff --git a/ico/themes/qet-dark/scalable/align-horizontal-right.svg b/ico/themes/qet-dark/scalable/align-horizontal-right.svg
new file mode 100644
index 000000000..752c2716b
--- /dev/null
+++ b/ico/themes/qet-dark/scalable/align-horizontal-right.svg
@@ -0,0 +1,13 @@
+
diff --git a/ico/themes/qet-dark/scalable/align-vertical-bottom.svg b/ico/themes/qet-dark/scalable/align-vertical-bottom.svg
new file mode 100644
index 000000000..57486d607
--- /dev/null
+++ b/ico/themes/qet-dark/scalable/align-vertical-bottom.svg
@@ -0,0 +1,13 @@
+
diff --git a/ico/themes/qet-dark/scalable/align-vertical-center.svg b/ico/themes/qet-dark/scalable/align-vertical-center.svg
new file mode 100644
index 000000000..67f02d699
--- /dev/null
+++ b/ico/themes/qet-dark/scalable/align-vertical-center.svg
@@ -0,0 +1,13 @@
+
diff --git a/ico/themes/qet-dark/scalable/align-vertical-top.svg b/ico/themes/qet-dark/scalable/align-vertical-top.svg
new file mode 100644
index 000000000..39af4483b
--- /dev/null
+++ b/ico/themes/qet-dark/scalable/align-vertical-top.svg
@@ -0,0 +1,13 @@
+
diff --git a/ico/themes/qet-dark/scalable/snap-to-grid.svg b/ico/themes/qet-dark/scalable/snap-to-grid.svg
new file mode 100644
index 000000000..6b05eda1b
--- /dev/null
+++ b/ico/themes/qet-dark/scalable/snap-to-grid.svg
@@ -0,0 +1,13 @@
+
diff --git a/misc/make_icon_themes.py b/misc/make_icon_themes.py
index 455f6a9e6..5e381c555 100644
--- a/misc/make_icon_themes.py
+++ b/misc/make_icon_themes.py
@@ -90,12 +90,19 @@ ALIASES = {
# SVG icons referenced from sources/qeticons.cpp. ico/scalable/ holds the
# ones drawn for QET as vectors; one file serves every size.
SVGS = [
+ "scalable/align-horizontal-center.svg",
+ "scalable/align-horizontal-left.svg",
+ "scalable/align-horizontal-right.svg",
+ "scalable/align-vertical-bottom.svg",
+ "scalable/align-vertical-center.svg",
+ "scalable/align-vertical-top.svg",
"scalable/diagram.svg",
"scalable/folio-delete.svg",
"scalable/folio-new.svg",
"scalable/folio-properties.svg",
"scalable/label.svg",
"scalable/pdf-import.svg",
+ "scalable/snap-to-grid.svg",
"breeze-icons/scalable/apps/hidef/edit-opacity.svg",
"breeze-icons/scalable/apps/hidef/image-flip-horizontal-symbolic.svg",
"breeze-icons/scalable/apps/hidef/image-flip-vertical-symbolic.svg",
diff --git a/sources/qetdiagrameditor.cpp b/sources/qetdiagrameditor.cpp
index c2a37de09..f08d00519 100644
--- a/sources/qetdiagrameditor.cpp
+++ b/sources/qetdiagrameditor.cpp
@@ -938,26 +938,27 @@ void QETDiagramEditor::setUpActions()
//Align actions. No default shortcut: they are reached from the
//Edit menu, the selection's context menu and the command search,
//and a user can bind one if they want.
- QAction *snap_to_grid = m_align_actions_group.addAction(tr("Aligner sur la grille"));
+ QAction *snap_to_grid = m_align_actions_group.addAction(QET::Icons::SnapToGrid, tr("Aligner sur la grille"));
ShortcutManager::instance().registerAction(snap_to_grid, "diagrameditor.snap_selection_to_grid", tr("Éditeur de schémas"), QKeySequence());
snap_to_grid->setStatusTip(tr("Remet les éléments, images et textes sélectionnés sur la grille", "status bar tip"));
snap_to_grid->setData("snap_selection_to_grid");
const struct {
const char *id;
+ const QIcon &icon;
QString text;
QString tip;
} align_actions[] = {
- {"align_left", tr("Aligner à gauche"), tr("Aligne les bords gauches des objets sélectionnés", "status bar tip")},
- {"align_hcenter", tr("Centrer horizontalement"), tr("Aligne les objets sélectionnés sur une même verticale, par leur point d'origine pour les éléments", "status bar tip")},
- {"align_right", tr("Aligner à droite"), tr("Aligne les bords droits des objets sélectionnés", "status bar tip")},
- {"align_top", tr("Aligner en haut"), tr("Aligne les bords supérieurs des objets sélectionnés", "status bar tip")},
- {"align_vcenter", tr("Centrer verticalement"), tr("Aligne les objets sélectionnés sur une même horizontale, par leur point d'origine pour les éléments", "status bar tip")},
- {"align_bottom", tr("Aligner en bas"), tr("Aligne les bords inférieurs des objets sélectionnés", "status bar tip")}
+ {"align_left", QET::Icons::AlignLeft, tr("Aligner à gauche"), tr("Aligne les bords gauches des objets sélectionnés", "status bar tip")},
+ {"align_hcenter", QET::Icons::AlignHCenter, tr("Centrer horizontalement"), tr("Aligne les objets sélectionnés sur une même verticale, par leur point d'origine pour les éléments", "status bar tip")},
+ {"align_right", QET::Icons::AlignRight, tr("Aligner à droite"), tr("Aligne les bords droits des objets sélectionnés", "status bar tip")},
+ {"align_top", QET::Icons::AlignTop, tr("Aligner en haut"), tr("Aligne les bords supérieurs des objets sélectionnés", "status bar tip")},
+ {"align_vcenter", QET::Icons::AlignVCenter, tr("Centrer verticalement"), tr("Aligne les objets sélectionnés sur une même horizontale, par leur point d'origine pour les éléments", "status bar tip")},
+ {"align_bottom", QET::Icons::AlignBottom, tr("Aligner en bas"), tr("Aligne les bords inférieurs des objets sélectionnés", "status bar tip")}
};
for (const auto &a : align_actions)
{
- QAction *action = m_align_actions_group.addAction(a.text);
+ QAction *action = m_align_actions_group.addAction(a.icon, a.text);
ShortcutManager::instance().registerAction(action, QStringLiteral("diagrameditor.") + QLatin1String(a.id), tr("Éditeur de schémas"), QKeySequence());
action->setStatusTip(a.tip);
action->setData(QString::fromLatin1(a.id));
diff --git a/sources/qeticons.cpp b/sources/qeticons.cpp
index a605c74a7..aa8b86c79 100644
--- a/sources/qeticons.cpp
+++ b/sources/qeticons.cpp
@@ -23,6 +23,12 @@ namespace QET {
namespace Icons {
QIcon Add;
QIcon AddFolio;
+ QIcon AlignBottom;
+ QIcon AlignHCenter;
+ QIcon AlignLeft;
+ QIcon AlignRight;
+ QIcon AlignTop;
+ QIcon AlignVCenter;
QIcon Allowed;
QIcon ApplicationExit;
QIcon ArrowLeft;
@@ -169,6 +175,7 @@ namespace QET {
QIcon SendBackward;
QIcon Settings;
QIcon SinglePage;
+ QIcon SnapToGrid;
QIcon South;
QIcon Start;
QIcon TableOfContent;
@@ -395,6 +402,12 @@ void QET::Icons::initIcons()
Add = QIcon::fromTheme("list-add");
AddFolio = QIcon::fromTheme("folio-new");
+ AlignBottom = QIcon::fromTheme("align-vertical-bottom");
+ AlignHCenter = QIcon::fromTheme("align-horizontal-center");
+ AlignLeft = QIcon::fromTheme("align-horizontal-left");
+ AlignRight = QIcon::fromTheme("align-horizontal-right");
+ AlignTop = QIcon::fromTheme("align-vertical-top");
+ AlignVCenter = QIcon::fromTheme("align-vertical-center");
Allowed = QIcon::fromTheme("user-online");
ApplicationExit = QIcon::fromTheme("application-exit");
ArrowLeft = QIcon::fromTheme("arrow-left");
@@ -581,6 +594,7 @@ void QET::Icons::initIcons()
SendBackward = QIcon::fromTheme("send_backward");
Settings = QIcon::fromTheme("settings");
SinglePage = QIcon::fromTheme("single_page");
+ SnapToGrid = QIcon::fromTheme("snap-to-grid");
South = QIcon::fromTheme("south");
Start = QIcon::fromTheme("start");
TableOfContent = QIcon::fromTheme("table-of-content");
diff --git a/sources/qeticons.h b/sources/qeticons.h
index af21e8e54..31a4d0aa8 100644
--- a/sources/qeticons.h
+++ b/sources/qeticons.h
@@ -30,6 +30,12 @@ namespace QET {
// namespace
extern QIcon Add;
extern QIcon AddFolio;
+ extern QIcon AlignBottom;
+ extern QIcon AlignHCenter;
+ extern QIcon AlignLeft;
+ extern QIcon AlignRight;
+ extern QIcon AlignTop;
+ extern QIcon AlignVCenter;
extern QIcon Allowed;
extern QIcon ApplicationExit;
extern QIcon ArrowLeft;
@@ -177,6 +183,7 @@ namespace QET {
extern QIcon SendBackward;
extern QIcon Settings;
extern QIcon SinglePage;
+ extern QIcon SnapToGrid;
extern QIcon South;
extern QIcon Start;
extern QIcon TableOfContent;