diff options
author | Aleks Kissinger <aleks0@gmail.com> | 2018-04-05 14:21:24 +0200 |
---|---|---|
committer | Aleks Kissinger <aleks0@gmail.com> | 2018-04-05 14:21:24 +0200 |
commit | e57923c7d767f5a532bc35571d74a5470eb76314 (patch) | |
tree | 8126896daf0ac998267da993fd2592c20bcd0789 /src/gui | |
parent | 1a71fd8efa0350d1e121f6792e8fad67e82b25c1 (diff) |
built-in style palette
Diffstat (limited to 'src/gui')
-rw-r--r-- | src/gui/mainwindow.cpp | 13 | ||||
-rw-r--r-- | src/gui/mainwindow.h | 7 | ||||
-rw-r--r-- | src/gui/tikzscene.cpp | 10 | ||||
-rw-r--r-- | src/gui/tikzscene.h | 4 |
4 files changed, 26 insertions, 8 deletions
diff --git a/src/gui/mainwindow.cpp b/src/gui/mainwindow.cpp index 26e19b6..9ce340a 100644 --- a/src/gui/mainwindow.cpp +++ b/src/gui/mainwindow.cpp @@ -28,7 +28,11 @@ MainWindow::MainWindow(QWidget *parent) : _toolPalette = new ToolPalette(this); addToolBar(_toolPalette); - _tikzScene = new TikzScene(_tikzDocument, _toolPalette, this); + _stylePalette = new StylePalette(this); + addDockWidget(Qt::RightDockWidgetArea, _stylePalette); + + + _tikzScene = new TikzScene(_tikzDocument, _toolPalette, _stylePalette, this); ui->tikzView->setScene(_tikzScene); _pristine = true; @@ -79,11 +83,16 @@ void MainWindow::changeEvent(QEvent *event) { if (event->type() == QEvent::ActivationChange && isActiveWindow()) { tikzit->setActiveWindow(this); - tikzit->stylePalette()->raise(); + //tikzit->stylePalette()->raise(); } QMainWindow::changeEvent(event); } +StylePalette *MainWindow::stylePalette() const +{ + return _stylePalette; +} + void MainWindow::updateFileName() { setWindowTitle("TiKZiT - " + _tikzDocument->shortName()); diff --git a/src/gui/mainwindow.h b/src/gui/mainwindow.h index 613bfcb..facce2b 100644 --- a/src/gui/mainwindow.h +++ b/src/gui/mainwindow.h @@ -11,6 +11,7 @@ #include "tikzdocument.h" #include "mainmenu.h" #include "toolpalette.h" +#include "stylepalette.h" #include <QMainWindow> #include <QGraphicsView> @@ -33,9 +34,12 @@ public: TikzView *tikzView() const; TikzScene *tikzScene() const; TikzDocument *tikzDocument() const; - ToolPalette *toolPalette() const; + ToolPalette *toolPalette() const; + StylePalette *stylePalette() const; + void updateFileName(); void refreshTikz(); + protected: void closeEvent(QCloseEvent *event); void changeEvent(QEvent *event); @@ -45,6 +49,7 @@ private: TikzDocument *_tikzDocument; MainMenu *_menu; ToolPalette *_toolPalette; + StylePalette *_stylePalette; Ui::MainWindow *ui; bool _pristine; int _windowId; diff --git a/src/gui/tikzscene.cpp b/src/gui/tikzscene.cpp index 24f4ad1..8378f5e 100644 --- a/src/gui/tikzscene.cpp +++ b/src/gui/tikzscene.cpp @@ -11,8 +11,9 @@ #include <cmath> -TikzScene::TikzScene(TikzDocument *tikzDocument, ToolPalette *tools, QObject *parent) : - QGraphicsScene(parent), _tikzDocument(tikzDocument), _tools(tools) +TikzScene::TikzScene(TikzDocument *tikzDocument, ToolPalette *tools, + StylePalette *styles, QObject *parent) : + QGraphicsScene(parent), _tikzDocument(tikzDocument), _tools(tools), _styles(styles) { _modifyEdgeItem = 0; _edgeStartNodeItem = 0; @@ -382,7 +383,7 @@ void TikzScene::mouseReleaseEvent(QGraphicsSceneMouseEvent *event) Node *n = new Node(_tikzDocument); n->setName(graph()->freshNodeName()); n->setPoint(fromScreen(gridPos)); - n->setStyleName(tikzit->stylePalette()->activeNodeStyleName()); + n->setStyleName(_styles->activeNodeStyleName()); QRectF grow(gridPos.x() - GLOBAL_SCALEF, gridPos.y() - GLOBAL_SCALEF, 2 * GLOBAL_SCALEF, 2 * GLOBAL_SCALEF); QRectF newBounds = sceneRect().united(grow); @@ -447,7 +448,7 @@ void TikzScene::mouseDoubleClickEvent(QGraphicsSceneMouseEvent *event) } void TikzScene::applyActiveStyleToNodes() { - ApplyStyleToNodesCommand *cmd = new ApplyStyleToNodesCommand(this, tikzit->stylePalette()->activeNodeStyleName()); + ApplyStyleToNodesCommand *cmd = new ApplyStyleToNodesCommand(this, _styles->activeNodeStyleName()); _tikzDocument->undoStack()->push(cmd); } @@ -562,6 +563,7 @@ void TikzScene::setTikzDocument(TikzDocument *tikzDocument) void TikzScene::reloadStyles() { + _styles->reloadStyles(); foreach (NodeItem *ni, _nodeItems) { ni->node()->attachStyle(); ni->readPos(); // trigger a repaint diff --git a/src/gui/tikzscene.h b/src/gui/tikzscene.h index f7735ee..7061143 100644 --- a/src/gui/tikzscene.h +++ b/src/gui/tikzscene.h @@ -11,6 +11,7 @@ #include "edgeitem.h" #include "tikzdocument.h" #include "toolpalette.h" +#include "stylepalette.h" #include <QWidget> #include <QGraphicsScene> @@ -24,7 +25,7 @@ class TikzScene : public QGraphicsScene { Q_OBJECT public: - TikzScene(TikzDocument *tikzDocument, ToolPalette *tools, QObject *parent); + TikzScene(TikzDocument *tikzDocument, ToolPalette *tools, StylePalette *styles, QObject *parent); ~TikzScene(); Graph *graph(); QMap<Node*,NodeItem*> &nodeItems(); @@ -55,6 +56,7 @@ protected: private: TikzDocument *_tikzDocument; ToolPalette *_tools; + StylePalette *_styles; QMap<Node*,NodeItem*> _nodeItems; QMap<Edge*,EdgeItem*> _edgeItems; QGraphicsLineItem *_drawEdgeItem; |