hi, i'm new to QT (ofcourse): i have a problem and don't know if it is the right aproach.

In short: I just want the circle to rotate and stay fixed - instead of dancing
I have a Qmainwindow, in the middle there is a graphicview, on the scene there is a circle divided in 4 pieces (2 lines) and a button "rotate". So i need the circle to rotate when you push the button.

Because i don't know yet how to deal with time (e.g. rotating the circle for N seconds) i rotate it for 30 degrees. The problem is that i need the circle to be fixed and the starting point to be in the middle of the circle, so that when i push the button it rotates around his own axis. I hope you understand what i mean.
Now it's rotating around the default starging point (0,0) i upper left corner of my BoundingRect so the circle isn't fixed but rather it rotates all over the view around the default (0,0) instead of staying fixed and rotating on place.

Here is a picture what i mean:



I think i need to transform the default starting point (0,0) of my QRectF to the middle of my circle -> so that what it will stay fixed and rotate around his own axis. I'm not sure if i've got it right.

Code:

Qt Code:
  1. //constructor of main class (RuletV1.cpp)
  2. RuletV1::RuletV1(QWidget *parent, Qt::WFlags flags)
  3. : QMainWindow(parent, flags)
  4. {
  5. ui.setupUi(this);
  6. ui.graphicsView->setScene(scena);
  7. m_elipsa = new CircleItem(); //note: QGraphicsItem *m_elipsa;
  8. scena->addItem(m_elipsa);
  9. }
To copy to clipboard, switch view to plain text mode 

Qt Code:
  1. //push method
  2. void RuletV1::on_pushButton_clicked()
  3. {
  4. dynamic_cast<CircleItem*>(m_elipsa)->rotate(30); // is there better way rotating?
  5. }
To copy to clipboard, switch view to plain text mode 

Qt Code:
  1. //circeitem.cpp
  2. #include "circleitem.h"
  3.  
  4. //constructor
  5. CircleItem::CircleItem(QGraphicsItem *parent)
  6. : QGraphicsItem(parent)
  7. {}
  8. //destructor
  9. CircleItem::~CircleItem()
  10. {}
  11. //return QRectF
  12. QRectF CircleItem::boundingRect() const
  13. {
  14. return QRectF(0,0,100,100);
  15. }
  16. //Paint
  17. void CircleItem::paint(QPainter *painter, const QStyleOptionGraphicsItem *option,
  18. QWidget *widget)
  19. {
  20. painter->setRenderHint(QPainter::Antialiasing);
  21. painter->drawLine(0,50, 100, 50); //line one
  22. painter->drawLine(50, 0, 50, 100); //line two
  23. painter->drawEllipse(0, 0, 100, 100); //circle
  24. }
To copy to clipboard, switch view to plain text mode 

p.s: i'v excluded some .h files as they are not so crucial right now

Qt Code:
  1. //main.cpp
  2. int main(int argc, char *argv[])
  3. {
  4. QApplication a(argc, argv);
  5. RuletV1 w;
  6. w.show();
  7. return a.exec();
  8. }
To copy to clipboard, switch view to plain text mode 

I hope this is enough info - thx in advanced