Started to make things work: show the board.
[tagua.git] / tests / test_canvas.cpp
blobcf9f5fc75e5e94459b699427d82fd154f64d67d1
1 #include <QApplication>
2 #include <QMouseEvent>
3 #include <QPainter>
4 #include "canvas.h"
7 class Puppas : public Canvas
9 CanvasItem *ppp;
10 QPoint delta;
11 public:
12 Puppas(QWidget *p = NULL) : Canvas(p), ppp(NULL) {}
13 virtual ~Puppas(){}
14 virtual void keyPressEvent ( QKeyEvent * event )
16 if(event->key() == Qt::Key_Tab)
17 (*items())[0]->raise();
19 virtual void mousePressEvent ( QMouseEvent * event )
21 ppp = itemAt(event->pos());
22 if(ppp)
24 delta = ppp->pos() - event->pos();
25 if(event->button() == Qt::LeftButton)
26 ppp->raise();
29 virtual void mouseMoveEvent ( QMouseEvent * event )
31 if(ppp)
32 ppp->moveTo(event->pos() + delta );
36 QPicture make_pic()
38 QPicture pic;
39 QPainter p(&pic);
40 p.setPen(Qt::yellow);
41 p.setBrush(Qt::darkGreen);
42 p.drawEllipse(0,0,200,100);
44 return pic;
47 /*QPixmap tp(QPixmap px)
49 QPixmap retv(px.size);
50 QPainter p(retv);
52 return retv;
53 }*/
55 int main(int argc, char *argv[])
57 QApplication app(argc, argv);
59 // QPixmap("/home/monge/pezzi_fighi/fantasy/wr.png").save("teto1.png");
60 // QImage("/home/monge/pezzi_fighi/fantasy/wr.png").save("teto2.png");
62 Canvas *c = new Puppas();
63 c->resize(500,500);
65 CanvasGroup *cg = new CanvasGroup( c );
66 cg->moveTo(0,0);
67 cg->show();
69 CanvasPixmap *p = new CanvasPixmap( QPixmap(
70 "/home/monge/chess_pieces/out/img_fantasy/kboard_theme/white_rook.png"), cg );
71 p->moveTo(0,0);
72 p->show();
74 CanvasPixmap *p2 = new CanvasPixmap( QPixmap(
75 "/home/monge/chess_pieces/out/img_skulls/kboard_theme/black_bishop.png"), cg );
76 p2->moveTo(200,50);
77 p2->show();
79 CanvasPixmap *p3 = new CanvasPixmap( QPixmap(
80 "/home/monge/chess_pieces/out/img_freak/kboard_theme/white_knight.png"), c );
81 p3->moveTo(100,250);
82 p3->show();
84 CanvasPixmap *p4 = new CanvasPixmap( QPixmap(
85 "/home/monge/chess_pieces/out/img_spatial/kboard_theme/black_king.png"), c );
86 p4->moveTo(20,150);
87 p4->show();
89 CanvasPixmap *p5 = new CanvasPixmap( QPixmap(
90 "/home/monge/chess_pieces/out/img_prmi/kboard_theme/white_queen.png"), c );
91 p5->moveTo(300,200);
92 p5->show();
94 CanvasTiledPixmap *p6 = new CanvasTiledPixmap( QPixmap(
95 "/home/monge/chess_pieces/out/icons/20/r.png"),
96 QSize(200,150), QPoint(0,0), false, c );
97 p6->moveTo(200,100);
98 p6->show();
100 CanvasRectangle *p7 = new CanvasRectangle( QColor(255,0,0,192), QSize(200,150), c );
101 p7->moveTo(50,350);
102 p7->show();
104 CanvasRectangle *p8a = new CanvasRectangle( QColor(128,128,0,255), QSize(1,200), c );
105 p8a->moveTo(200,0);
106 p8a->show();
108 CanvasRectangle *p8b = new CanvasRectangle( QColor(0,128,0,255), QSize(300,1), c );
109 p8b->moveTo(100,80);
110 p8b->show();
112 CanvasText *p8 = new CanvasText( "Fuck", QColor(0,0,255,192),
113 QFont("Sans", 70, QFont::Bold),
114 CanvasText::HCenter, CanvasText::VCenter, c );
115 p8->moveTo(200,80);
116 p8->show();
118 CanvasPicture *p9 = new CanvasPicture( make_pic(), c );
119 p9->moveTo(200,100);
120 p9->show();
122 c->show();
124 return app.exec();