summaryrefslogtreecommitdiffstats
path: root/kturtle/src/canvas.cpp
diff options
context:
space:
mode:
authortpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>2010-07-31 19:39:55 +0000
committertpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>2010-07-31 19:39:55 +0000
commit0a6e0958c03e41c87b15557b6f407874f20c2f8d (patch)
tree2cdd58c4013b1be09cfcbb4ddae2b05712b9aeee /kturtle/src/canvas.cpp
parent83f9dfafc157ff7823804b3ff457b43d021a5b4b (diff)
downloadtdeedu-0a6e0958c03e41c87b15557b6f407874f20c2f8d.tar.gz
tdeedu-0a6e0958c03e41c87b15557b6f407874f20c2f8d.zip
Trinity Qt initial conversion
git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdeedu@1157642 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
Diffstat (limited to 'kturtle/src/canvas.cpp')
-rw-r--r--kturtle/src/canvas.cpp130
1 files changed, 65 insertions, 65 deletions
diff --git a/kturtle/src/canvas.cpp b/kturtle/src/canvas.cpp
index 871c1614..38281956 100644
--- a/kturtle/src/canvas.cpp
+++ b/kturtle/src/canvas.cpp
@@ -53,7 +53,7 @@
#include <cmath>
-#include <qpainter.h>
+#include <tqpainter.h>
#include <kdebug.h>
#include <klocale.h>
@@ -75,10 +75,10 @@ const double DEG2RAD = 3.14159265358979323846/180;
// BEGIN public methods
-Canvas::Canvas(QWidget *parent, const char *name) : QCanvasView(0, parent, name)
+Canvas::Canvas(TQWidget *parent, const char *name) : TQCanvasView(0, parent, name)
{
// Create a new canvas for this view
- canvas = new QCanvas(parent);
+ canvas = new TQCanvas(parent);
canvas->setAdvancePeriod(250); // refresh-rate in [ms]
// set initial values
@@ -95,10 +95,10 @@ Canvas::~Canvas()
}
-QPixmap* Canvas::canvas2Pixmap()
+TQPixmap* Canvas::canvas2Pixmap()
{
- pixmap = QPixmap( canvas->width(), canvas->height() );
- QPainter painter(&pixmap);
+ pixmap = TQPixmap( canvas->width(), canvas->height() );
+ TQPainter painter(&pixmap);
canvas->drawArea(canvas->rect(), &painter);
return &pixmap;
}
@@ -111,8 +111,8 @@ QPixmap* Canvas::canvas2Pixmap()
void Canvas::slotClear()
{
- QCanvasItemList list = canvas->allItems();
- QCanvasItemList::Iterator it = list.begin();
+ TQCanvasItemList list = canvas->allItems();
+ TQCanvasItemList::Iterator it = list.begin();
for (; it != list.end(); ++it)
{
// kill everything but the turtle (who lives on a seperate layer)
@@ -122,8 +122,8 @@ void Canvas::slotClear()
void Canvas::slotClearSpriteToo()
{
- QCanvasItemList list = canvas->allItems();
- QCanvasItemList::Iterator it = list.begin();
+ TQCanvasItemList list = canvas->allItems();
+ TQCanvasItemList::Iterator it = list.begin();
for (; it != list.end(); ++it)
{
if (*it) delete *it;
@@ -138,7 +138,7 @@ void Canvas::slotGo(double x, double y)
if ( wrap && !canvas->onCanvas(intX, intY) )
{
- QPoint offsetPoint = offset(intX, intY);
+ TQPoint offsetPoint = offset(intX, intY);
posX = x - ( offsetPoint.x() * canvasWidth );
posY = y - ( offsetPoint.y() * canvasHeight );
}
@@ -156,7 +156,7 @@ void Canvas::slotGoX(double x)
int intPosY = ROUND2INT(posY);
if ( wrap && !canvas->onCanvas(intX, intPosY) )
{
- QPoint offsetPoint = offset(intX, intPosY);
+ TQPoint offsetPoint = offset(intX, intPosY);
posX = x - ( offsetPoint.x() * canvasWidth );
}
else posX = x;
@@ -169,7 +169,7 @@ void Canvas::slotGoY(double y)
int intPosX = ROUND2INT(posX);
if ( wrap && !canvas->onCanvas(intPosX, intY) )
{
- QPoint offsetPoint = offset(intPosX, intY);
+ TQPoint offsetPoint = offset(intPosX, intY);
posY = y - ( offsetPoint.y() * canvasHeight );
}
else posY = y;
@@ -243,7 +243,7 @@ void Canvas::slotSetFgColor(int r, int g, int b)
void Canvas::slotSetBgColor(int r, int g, int b)
{
- canvas->setBackgroundColor( QColor(r, g, b) );
+ canvas->setBackgroundColor( TQColor(r, g, b) );
}
void Canvas::slotResizeCanvas(int x, int y)
@@ -285,16 +285,16 @@ void Canvas::slotSpriteChange(int x)
sprite->move(ROUND2INT(posX - sprite->width()/2), ROUND2INT(posY - sprite->height()/2));
}
-void Canvas::slotPrint(QString text)
+void Canvas::slotPrint(TQString text)
{
- QCanvasText* t = new QCanvasText(text, font, canvas);
+ TQCanvasText* t = new TQCanvasText(text, font, canvas);
// text does not do the wrapping, never... sorry
- t->setColor( QColor(fgR, fgG, fgB) );
+ t->setColor( TQColor(fgR, fgG, fgB) );
t->move(ROUND2INT(posX), ROUND2INT(posY));
t->show();
}
-void Canvas::slotFontType(QString family, QString extra)
+void Canvas::slotFontType(TQString family, TQString extra)
{
font.setFamily(family);
font.setBold( extra.contains("bold") > 0 );
@@ -338,7 +338,7 @@ void Canvas::initValues()
canvasWidth = Settings::canvasWidth();
canvasHeight = Settings::canvasHeight();
// colors
- canvas->setBackgroundColor( QColor(255, 255, 255) ); // background
+ canvas->setBackgroundColor( TQColor(255, 255, 255) ); // background
fgR = 0; // pencolor (forground)
fgG = 0;
fgB = 0;
@@ -347,7 +347,7 @@ void Canvas::initValues()
pen = true;
wrap = true;
direction = 0;
- font = QFont("serif", 18);
+ font = TQFont("serif", 18);
// the position
posX = canvasWidth / 2;
posY = canvasHeight / 2;
@@ -364,26 +364,26 @@ void Canvas::lineShell(double xa, double ya, double xb, double yb)
// line can fallback into this function in case of cutLoop == true
cutLoop = false;
// Reset the loop detection memory
- prevStartPos3 = prevStartPos2 = prevStartPos1 = prevEndPos3 = prevEndPos2 = prevEndPos1 = QPoint(0, 0);
+ prevStartPos3 = prevStartPos2 = prevStartPos1 = prevEndPos3 = prevEndPos2 = prevEndPos1 = TQPoint(0, 0);
// and go!
line(xa, ya, xb, yb);
}
void Canvas::line(double xa, double ya, double xb, double yb)
{
- QCanvasLine* l = new QCanvasLine(canvas);
+ TQCanvasLine* l = new TQCanvasLine(canvas);
int intXa = ROUND2INT(xa);
int intYa = ROUND2INT(ya);
int intXb = ROUND2INT(xb);
int intYb = ROUND2INT(yb);
l->setPoints(intXa, intYa, intXb, intYb);
- l->setPen( QPen(QColor(fgR, fgG, fgB), penWidth, SolidLine) );
+ l->setPen( TQPen(TQColor(fgR, fgG, fgB), penWidth, SolidLine) );
l->setZ(1);
l->show();
// kdDebug(0)<<"Canvas::line(); xa:"<<xa<<", ya:"<<ya<<", xb:"<<xb<<", yb:"<<yb<<endl;
if ( wrap && !canvas->onCanvas( ROUND2INT(xb), ROUND2INT(yb) ) )
{
- if (endlessLoop( QPoint(intXa, intYa), QPoint(intXb, intYb) ) == true) // detect for endless loop
+ if (endlessLoop( TQPoint(intXa, intYa), TQPoint(intXb, intYb) ) == true) // detect for endless loop
{
slotCenter();
kdDebug(0)<<"Canvas::line(): ENDLESS LOOP DETECTED, BROKE THE LOOP"<<endl;
@@ -391,8 +391,8 @@ void Canvas::line(double xa, double ya, double xb, double yb)
return;
}
- QPoint translation = translationFactor(xa, ya, xb, yb);
- if (translation == QPoint(0, 0) )
+ TQPoint translation = translationFactor(xa, ya, xb, yb);
+ if (translation == TQPoint(0, 0) )
{
// this could never happen in theory
kdDebug(0)<<"Canvas::line(): ***********ERRORRR***********"<<endl;
@@ -409,7 +409,7 @@ void Canvas::line(double xa, double ya, double xb, double yb)
}
}
-bool Canvas::endlessLoop(QPoint begin, QPoint end)
+bool Canvas::endlessLoop(TQPoint begin, TQPoint end)
{
// kdDebug(0)<<"prevStartPos3: "<<prevStartPos3<<", prevStartPos2: "<<prevStartPos2<<", prevStartPos1: "<<prevStartPos1<<", prevStartPos0: "<<begin<<", prevEndPos3: "<<prevEndPos3<<", prevEndPos2: "<<prevEndPos2<<", prevEndPos1: "<<prevEndPos1<<", prevEndPos0: "<<end<<endl;
if ( prevStartPos2 == begin && prevStartPos3 == prevStartPos1 &&
@@ -417,7 +417,7 @@ bool Canvas::endlessLoop(QPoint begin, QPoint end)
{
// this is to break the horrible endless loop bug that i cannot fix...
// i need more simple reproductions of this bug to really find it
- // for now i say it is something with QCanvas but i'm likely wrong on thisone
+ // for now i say it is something with TQCanvas but i'm likely wrong on thisone
// kdDebug(0)<<"Canvas::endlessLoop TRUE!!"<<endl;
return true;
}
@@ -442,31 +442,31 @@ bool Canvas::pointInRange(double px, double py, double xa, double ya, double xb,
return false;
}
-QPoint Canvas::offset(int x, int y)
+TQPoint Canvas::offset(int x, int y)
{
// This funktion makes is easy to read since deviding int's is a weird thing:
// int x = 5 / 2, outputs: x = 2, with: 5 % 2 = 1 (the rest value)
if (x < 0) x = x - canvasWidth;
if (y < 0) y = y - canvasHeight;
- QPoint offsetPoint( x / canvasWidth, y / canvasHeight);
+ TQPoint offsetPoint( x / canvasWidth, y / canvasHeight);
return offsetPoint;
}
-QPoint Canvas::translationFactor(double xa, double ya, double xb, double yb)
+TQPoint Canvas::translationFactor(double xa, double ya, double xb, double yb)
{
- // this class returns a QPoint which can be used to properly 'wrap' a line
- QPoint crossPoint[4]; // under wicked circumstances we can need this
+ // this class returns a TQPoint which can be used to properly 'wrap' a line
+ TQPoint crossPoint[4]; // under wicked circumstances we can need this
// namely when crossing both corners, we have 4 bordercrossings
- QPoint translate[4];
+ TQPoint translate[4];
int i = 0;
if ( (xb - xa) > -0.00001 && (xb - xa) < 0.00001 ) // check for an infinite tangent (direction coefficient)
{
i++;
- translate[i] = QPoint( 0, 1 );
- crossPoint[i] = QPoint( ROUND2INT(xa), 0 );
+ translate[i] = TQPoint( 0, 1 );
+ crossPoint[i] = TQPoint( ROUND2INT(xa), 0 );
i++;
- translate[i] = QPoint(0,-1 );
- crossPoint[i] = QPoint( ROUND2INT(xa), canvasHeight );
+ translate[i] = TQPoint(0,-1 );
+ crossPoint[i] = TQPoint( ROUND2INT(xa), canvasHeight );
}
else
{
@@ -487,32 +487,32 @@ QPoint Canvas::translationFactor(double xa, double ya, double xb, double yb)
if ( 0 <= x_sT && x_sT <= canvasWidth && pointInRange(x_sT, 0, xa, ya, xb, yb) )
{
i++;
- translate[i] = QPoint( 0, 1 );
- crossPoint[i] = QPoint( ROUND2INT(x_sT), 0 );
+ translate[i] = TQPoint( 0, 1 );
+ crossPoint[i] = TQPoint( ROUND2INT(x_sT), 0 );
}
if ( 0 <= x_sB && x_sB <= canvasWidth && pointInRange(x_sB, canvasHeight, xa, ya, xb, yb) )
{
i++;
- translate[i] = QPoint( 0,-1 );
- crossPoint[i] = QPoint( ROUND2INT(x_sB), ROUND2INT(canvasHeight) );
+ translate[i] = TQPoint( 0,-1 );
+ crossPoint[i] = TQPoint( ROUND2INT(x_sB), ROUND2INT(canvasHeight) );
}
if ( 0 <= y_sL && y_sL <= canvasHeight && pointInRange(0, y_sL, xa, ya, xb, yb) )
{
i++;
- translate[i] = QPoint( 1, 0 );
- crossPoint[i] = QPoint( 0, ROUND2INT(y_sL) );
+ translate[i] = TQPoint( 1, 0 );
+ crossPoint[i] = TQPoint( 0, ROUND2INT(y_sL) );
}
if ( 0 <= y_sR && y_sR <= canvasHeight && pointInRange(canvasWidth, y_sR, xa, ya, xb, yb) )
{
i++;
- translate[i] = QPoint(-1, 0 );
- crossPoint[i] = QPoint( ROUND2INT(canvasWidth), ROUND2INT(y_sR) );
+ translate[i] = TQPoint(-1, 0 );
+ crossPoint[i] = TQPoint( ROUND2INT(canvasWidth), ROUND2INT(y_sR) );
}
if ( i == 0 )
{
// kdDebug(0)<<"Canvas::translationFactor: FIRST NO BORDER CROSSINGS DETECTED"<<endl;
- QPoint returnValue = QPoint(0, 0); // initiate the returnValue
+ TQPoint returnValue = TQPoint(0, 0); // initiate the returnValue
// Here a fallback if the line has no crossings points with any borders.
// This mostly happens because of unlucky rounding, when this happens the line is nearly
// crossing a corner of the canvas.
@@ -521,22 +521,22 @@ QPoint Canvas::translationFactor(double xa, double ya, double xb, double yb)
// This, luckily, allmost never happens.
if ( -2 <= x_sT && x_sT <= (canvasWidth + 2) && pointInRange(x_sT, 0, xa, ya, xb, yb) )
{
- returnValue = returnValue + QPoint(0, 1);
+ returnValue = returnValue + TQPoint(0, 1);
}
if ( -2 <= x_sB && x_sB <= (canvasWidth + 2) && pointInRange(x_sB, canvasHeight, xa, ya, xb, yb) )
{
- returnValue = returnValue + QPoint(0,-1);
+ returnValue = returnValue + TQPoint(0,-1);
}
if ( -2 <= y_sL && y_sL <= (canvasHeight + 2) && pointInRange(0, y_sL, xa, ya, xb, yb) )
{
- returnValue = returnValue + QPoint(1, 0);
+ returnValue = returnValue + TQPoint(1, 0);
}
if ( -2 <= y_sR && y_sR <= (canvasHeight + 2) && pointInRange(canvasWidth, y_sR, xa, ya, xb, yb) )
{
- returnValue = returnValue + QPoint(-1, 0);
+ returnValue = returnValue + TQPoint(-1, 0);
}
- if ( returnValue == QPoint(0, 0) )
+ if ( returnValue == TQPoint(0, 0) )
{
// kdDebug(0)<<"Canvas::translationFactor: *****This shouldn't happen (1) *****"<<endl;
// and this doesnt happen, that why +3 and -3 are ok values and the code above works.
@@ -545,7 +545,7 @@ QPoint Canvas::translationFactor(double xa, double ya, double xb, double yb)
}
}
- QPoint returnValue = QPoint(0, 0); // a new returnValue QPoint gets inited
+ TQPoint returnValue = TQPoint(0, 0); // a new returnValue TQPoint gets inited
if (i == 1)
{
// only one border crossing, this is normal when the start point
@@ -558,8 +558,8 @@ QPoint Canvas::translationFactor(double xa, double ya, double xb, double yb)
// more than one border crossing starting point if of the canvas
// we now have to find out which crossing occurs 'first' to know how to translate the line
// NOTE2SELF: the line does NOT have to start on the canvas!!
- QPoint endPos( ROUND2INT(xb), ROUND2INT(yb));
- int smallestSize = ( QPoint( ROUND2INT(xa), ROUND2INT(ya) ) - endPos ).manhattanLength();
+ TQPoint endPos( ROUND2INT(xb), ROUND2INT(yb));
+ int smallestSize = ( TQPoint( ROUND2INT(xa), ROUND2INT(ya) ) - endPos ).manhattanLength();
// smallestSize is initiated to the total size of the line
for (int ii = 1; ii <= i; ii++)
{
@@ -574,12 +574,12 @@ QPoint Canvas::translationFactor(double xa, double ya, double xb, double yb)
else if (testSize == smallestSize) // this only happens on corners
{
// kdDebug(0)<<"Canvas::translationFactor: CORNER EXCEPTION"<<endl;
- returnValue = QPoint(0, 0);
- if (xb < 0) returnValue = returnValue + QPoint( 1, 0);
- else if (xb > canvasWidth) returnValue = returnValue + QPoint(-1, 0);
+ returnValue = TQPoint(0, 0);
+ if (xb < 0) returnValue = returnValue + TQPoint( 1, 0);
+ else if (xb > canvasWidth) returnValue = returnValue + TQPoint(-1, 0);
- if (yb < 0) returnValue = returnValue + QPoint( 0, 1);
- else if (yb > canvasHeight) returnValue = returnValue + QPoint( 0,-1);
+ if (yb < 0) returnValue = returnValue + TQPoint( 0, 1);
+ else if (yb > canvasHeight) returnValue = returnValue + TQPoint( 0,-1);
return returnValue;
}
@@ -595,14 +595,14 @@ QPoint Canvas::translationFactor(double xa, double ya, double xb, double yb)
// Sprite related methods:
-void Canvas::loadSpriteFrames(QString name)
+void Canvas::loadSpriteFrames(TQString name)
{
// read the pixmaps name.0001.png, name.0002.png, ..., name.0035.png: the different rotations
// #0000 for 0 or 360, #0001 for 10, #0002 for 20, ..., #0018 for 180, etc.
// WARNING if the dir doesnt exists the app will crash!!!
// This will be fixed in qt3.3 and in the current qt-copy
- QPixmap turtlePix = QPixmap(locate("data","kturtle/pics/turtle.0000.png") );
+ TQPixmap turtlePix = TQPixmap(locate("data","kturtle/pics/turtle.0000.png") );
if ( turtlePix.isNull() )
{
KMessageBox::sorry( this,
@@ -610,10 +610,10 @@ void Canvas::loadSpriteFrames(QString name)
"Please check your installation."), i18n("Error") );
return;
}
- QString spritePath = locate("data","kturtle/pics/"+name+".0000.png");
+ TQString spritePath = locate("data","kturtle/pics/"+name+".0000.png");
spritePath.remove(".0000.png");
- spriteFrames = new QCanvasPixmapArray(spritePath+".%1.png", 36);
- sprite = new QCanvasSprite(spriteFrames, canvas);
+ spriteFrames = new TQCanvasPixmapArray(spritePath+".%1.png", 36);
+ sprite = new TQCanvasSprite(spriteFrames, canvas);
sprite->setZ(250);
}