summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/data/nodestyle.cpp32
-rw-r--r--src/gui/mainwindow.cpp13
-rw-r--r--src/gui/mainwindow.h7
-rw-r--r--src/gui/tikzscene.cpp10
-rw-r--r--src/gui/tikzscene.h4
-rw-r--r--src/tikzit.cpp16
-rw-r--r--src/tikzit.h4
7 files changed, 64 insertions, 22 deletions
diff --git a/src/data/nodestyle.cpp b/src/data/nodestyle.cpp
index 302ab84..b3d72fb 100644
--- a/src/data/nodestyle.cpp
+++ b/src/data/nodestyle.cpp
@@ -26,6 +26,8 @@ QString NodeStyle::name() const
NodeStyle::Shape NodeStyle::shape() const
{
+ if (_data == 0) return NodeStyle::Circle;
+
QString sh = _data->property("shape");
if (sh.isNull()) return NodeStyle::Circle;
else if (sh == "circle") return NodeStyle::Circle;
@@ -35,6 +37,8 @@ NodeStyle::Shape NodeStyle::shape() const
QColor NodeStyle::fillColor() const
{
+ if (_data == 0) return Qt::white;
+
QString col = _data->property("fill");
if (col.isNull()) {
@@ -52,6 +56,8 @@ QColor NodeStyle::fillColor() const
QColor NodeStyle::strokeColor() const
{
+ if (_data == 0) return Qt::black;
+
QString col = _data->property("draw");
if (col.isNull()) {
@@ -103,11 +109,29 @@ QIcon NodeStyle::icon() const
px.fill(Qt::transparent);
QPainter painter(&px);
QPainterPath pth = path();
- painter.setPen(pen());
- painter.setBrush(brush());
-
pth.translate(50.0f, 50.0f);
- painter.drawPath(pth);
+
+ if (_data == 0) {
+ QColor c(180,180,200);
+ painter.setPen(QPen(c));
+ painter.setBrush(QBrush(c));
+ painter.drawEllipse(QPointF(50.0f,50.0f), 3,3);
+
+ QPen pen(QColor(180,180,220));
+ pen.setWidth(3);
+ QVector<qreal> p;
+ p << 2.0 << 2.0;
+ pen.setDashPattern(p);
+ painter.setPen(pen);
+ painter.setBrush(Qt::NoBrush);
+ painter.drawPath(pth);
+ } else {
+ painter.setPen(pen());
+ painter.setBrush(brush());
+ painter.drawPath(pth);
+ }
+
+
return QIcon(px);
}
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;
diff --git a/src/tikzit.cpp b/src/tikzit.cpp
index 78cb7a1..e91976c 100644
--- a/src/tikzit.cpp
+++ b/src/tikzit.cpp
@@ -26,10 +26,10 @@ void Tikzit::init(QApplication *app)
_toolPalette = new ToolPalette(dummy);
_propertyPalette = new PropertyPalette(dummy);
- _stylePalette = new StylePalette(dummy);
+ //_stylePalette = new StylePalette(dummy);
_styles = new TikzStyles(this);
- _stylePalette->show();
+ //_stylePalette->show();
_windows << new MainWindow();
_windows[0]->show();
@@ -137,7 +137,7 @@ void Tikzit::loadStyles(QString fileName)
} else {
qDebug() << "parse failed";
}
- _stylePalette->reloadStyles();
+ //_stylePalette->reloadStyles();
foreach (MainWindow *w, _windows) {
w->tikzScene()->reloadStyles();
@@ -164,10 +164,10 @@ void Tikzit::focusChanged(QWidget *old, QWidget *nw)
// }
}
-StylePalette *Tikzit::stylePalette() const
-{
- return _stylePalette;
-}
+//StylePalette *Tikzit::stylePalette() const
+//{
+// return _stylePalette;
+//}
TikzStyles *Tikzit::styles() const
@@ -177,7 +177,7 @@ TikzStyles *Tikzit::styles() const
void Tikzit::quit()
{
- _stylePalette->close();
+ //_stylePalette->close();
QApplication::quit();
}
diff --git a/src/tikzit.h b/src/tikzit.h
index 39aa9e4..6a191b5 100644
--- a/src/tikzit.h
+++ b/src/tikzit.h
@@ -98,7 +98,7 @@ public:
void loadStyles(QString fileName);
TikzStyles *styles() const;
QString styleFile() const;
- StylePalette *stylePalette() const;
+ //StylePalette *stylePalette() const;
public slots:
void focusChanged(QWidget *old, QWidget *nw);
@@ -108,7 +108,7 @@ private:
MainMenu *_mainMenu;
ToolPalette *_toolPalette;
PropertyPalette *_propertyPalette;
- StylePalette *_stylePalette;
+ //StylePalette *_stylePalette;
QVector<MainWindow*> _windows;
MainWindow *_activeWindow;
TikzStyles *_styles;