From f83ee82a6170845e6207aad19d6bd096db89f4c7 Mon Sep 17 00:00:00 2001 From: Aleks Kissinger Date: Sun, 22 Apr 2018 10:53:39 +0200 Subject: edge styles done --- src/gui/stylepalette.cpp | 4 +++- src/gui/tikzscene.cpp | 5 +++++ src/gui/tikzscene.h | 1 + src/gui/undocommands.cpp | 6 +++++- 4 files changed, 14 insertions(+), 2 deletions(-) (limited to 'src/gui') diff --git a/src/gui/stylepalette.cpp b/src/gui/stylepalette.cpp index 6d6599b..04d0ba6 100644 --- a/src/gui/stylepalette.cpp +++ b/src/gui/stylepalette.cpp @@ -56,6 +56,7 @@ StylePalette::StylePalette(QWidget *parent) : reloadStyles(); connect(ui->styleListView, SIGNAL(doubleClicked(const QModelIndex &)), this, SLOT( nodeStyleDoubleClicked(const QModelIndex&)) ); + connect(ui->edgeStyleListView, SIGNAL(doubleClicked(const QModelIndex &)), this, SLOT(edgeStyleDoubleClicked(const QModelIndex&))); } StylePalette::~StylePalette() @@ -150,7 +151,8 @@ void StylePalette::nodeStyleDoubleClicked(const QModelIndex &index) void StylePalette::edgeStyleDoubleClicked(const QModelIndex &index) { - // TODO + qDebug() << "got double click"; + tikzit->activeWindow()->tikzScene()->applyActiveStyleToEdges(); } void StylePalette::on_buttonOpenTikzstyles_clicked() diff --git a/src/gui/tikzscene.cpp b/src/gui/tikzscene.cpp index 772c67b..f25ebe1 100644 --- a/src/gui/tikzscene.cpp +++ b/src/gui/tikzscene.cpp @@ -584,6 +584,11 @@ void TikzScene::applyActiveStyleToNodes() { _tikzDocument->undoStack()->push(cmd); } +void TikzScene::applyActiveStyleToEdges() { + ApplyStyleToEdgesCommand *cmd = new ApplyStyleToEdgesCommand(this, _styles->activeEdgeStyleName()); + _tikzDocument->undoStack()->push(cmd); +} + void TikzScene::deleteSelectedItems() { QSet selNodes; diff --git a/src/gui/tikzscene.h b/src/gui/tikzscene.h index 4ac56c7..b6b2560 100644 --- a/src/gui/tikzscene.h +++ b/src/gui/tikzscene.h @@ -56,6 +56,7 @@ public: void reloadStyles(); //void refreshSceneBounds(); void applyActiveStyleToNodes(); + void applyActiveStyleToEdges(); void deleteSelectedItems(); void copyToClipboard(); void cutToClipboard(); diff --git a/src/gui/undocommands.cpp b/src/gui/undocommands.cpp index 5525cb7..c8221fe 100644 --- a/src/gui/undocommands.cpp +++ b/src/gui/undocommands.cpp @@ -284,6 +284,7 @@ void ApplyStyleToNodesCommand::undo() n->setStyleName(_oldStyles[n]); n->attachStyle(); } + _scene->refreshAdjacentEdges(_oldStyles.keys()); GraphUpdateCommand::undo(); } @@ -294,10 +295,13 @@ void ApplyStyleToNodesCommand::redo() n->setStyleName(_style); n->attachStyle(); } + _scene->refreshAdjacentEdges(_oldStyles.keys()); + GraphUpdateCommand::redo(); } -ApplyStyleToEdgesCommand::ApplyStyleToEdgesCommand(TikzScene *scene, QString style, QUndoCommand *parent) : + +ApplyStyleToEdgesCommand::ApplyStyleToEdgesCommand(TikzScene * scene, QString style, QUndoCommand * parent) : GraphUpdateCommand(scene, parent), _style(style), _oldStyles() { foreach(QGraphicsItem *it, scene->selectedItems()) { -- cgit v1.2.3