From bc7c8fad43f3cf63f3827029db43b64853c86016 Mon Sep 17 00:00:00 2001 From: jb Date: Sat, 21 Mar 2009 11:25:52 +0000 Subject: [PATCH] update --- board_test.xml | 106 ++++++++++++++++++++++++++++++++++++++++++++++ src/boardArea.cpp | 35 +++++++++++++-- src/boardArea.h | 9 +++- src/main.cpp | 2 +- 4 files changed, 146 insertions(+), 6 deletions(-) create mode 100644 board_test.xml diff --git a/board_test.xml b/board_test.xml new file mode 100644 index 0000000..16c2d7f --- /dev/null +++ b/board_test.xml @@ -0,0 +1,106 @@ + + + + + + 6 + + + + 8 + 2 + + + + + 1 + + 4 + 3 + + 5 + + + + + + + 5 + + 6 + + + + + 1 + + + + 8 + + + + + 6 + 7 + + + + + 4 + + 7 + + + + 9 + + 1 + + + + + 6 + 3 + + + + + 4 + + + + 5 + + + + + 7 + + 4 + + + + + + + 2 + + 6 + 5 + + 8 + + + + + 2 + 9 + + + + 7 + + + + \ No newline at end of file diff --git a/src/boardArea.cpp b/src/boardArea.cpp index 791f036..829be6c 100644 --- a/src/boardArea.cpp +++ b/src/boardArea.cpp @@ -14,11 +14,17 @@ BoardArea::BoardArea (QWidget *parent) : QWidget(parent) { setBackgroundRole(QPalette::Base); + + penBorder.setColor (QColor (95,13,15)); + penBorder.setWidth (4); + + penLine.setColor (QColor (95,13,15)); + penLine.setWidth (1); } QSize BoardArea::minimumSizeHint() const { - return QSize(270, 270); + return QSize(270, 300); } QSize BoardArea::sizeHint() const @@ -28,10 +34,31 @@ QSize BoardArea::sizeHint() const void BoardArea::paintEvent(QPaintEvent *) { - QRect rect(10, 20, 80, 60); + int i; + QPoint start (10,10); QPainter painter(this); - painter.drawLine(QPoint (10,10), QPoint (200, 200)); - painter.restore(); + + painter.setFont (QFont ("Courier", 14)); + + /* Draw the border of the of areas.*/ + painter.setPen (penBorder); + for (i = 4; i < 360; i+= 90) { + /* Verticales*/ + painter.drawLine(start+QPoint (i,4), start+QPoint (i, 274)); + /* Horiz. */ + painter.drawLine(start + QPoint (4,i), start + QPoint (274, i)); + } + /* Draw the interior lines. */ + painter.setPen (penLine); + for (i = 34; i < 360; i+= 30) { + /* Verticales*/ + painter.drawLine(start+QPoint (i,4), start+QPoint (i, 274)); + /* Horiz. */ + painter.drawLine(start+QPoint (4, i), start+QPoint (274, i)); + } + for (i = 24; i < 270; i+= 30) { + painter.drawText (i, 35, "6"); + } } /* This function draw the complet board. */ diff --git a/src/boardArea.h b/src/boardArea.h index 1d796f8..1af0ca3 100644 --- a/src/boardArea.h +++ b/src/boardArea.h @@ -6,7 +6,10 @@ #ifndef BOARDAREA_H #define BOARDAREA_H -#include + +#include +#include + class BoardArea : public QWidget { @@ -22,6 +25,10 @@ protected: private: void drawBoard (); + +private: + QPen penBorder; + QPen penLine; }; diff --git a/src/main.cpp b/src/main.cpp index ee04bf1..e454bb6 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -14,7 +14,7 @@ int main (int argc, char **argv) QApplication a (argc, argv); /* Create a new Sudoku object. */ Sudoku * mw = new Sudoku (); - mw->resize (300,300); + mw->resize (300,340); mw->show(); return a.exec(); }