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;