Quote Originally Posted by axeljaeger View Post
If you show me your code, I will have a look at it.
Hi,
I started writing some code.
The class interface:
Qt Code:
  1. #ifndef __WAVEFORMDISPLAY_H__
  2. #define __WAVEFORMDISPLAY_H__
  3.  
  4. #include <QWidget>
  5.  
  6. class WaveFormDisplay : public QWidget
  7. {
  8. Q_OBJECT
  9.  
  10. public:
  11. WaveFormDisplay( QWidget* parent = 0 );
  12.  
  13. protected:
  14. void paintEvent( QPaintEvent* event );
  15. void mousePressEvent(QMouseEvent *event);
  16. void mouseMoveEvent(QMouseEvent *event);
  17. void mouseReleaseEvent(QMouseEvent *event);
  18.  
  19. private:
  20. };
  21.  
  22. #endif //__WAVEFORMDISPLAY_H__
To copy to clipboard, switch view to plain text mode 

And the methods:
Qt Code:
  1. #include "waveformdisplay.h"
  2.  
  3. WaveFormDisplay::WaveFormDisplay( QWidget* parent /* = 0 */ )
  4. {
  5. setPalette( QPalette( QColor( 250, 250, 200 ) ) );
  6. setAutoFillBackground(true);
  7. setWindowTitle( tr("Waveform display") );
  8. resize(500, 200);
  9. }
  10. // Paint event
  11. void WaveFormDisplay::paintEvent( QPaintEvent* event )
  12. {
  13. QLine line( 0, height() / 2.0, width(), height() / 2.0 );
  14. QPen pen( Qt::blue, 1 ); // red solid line, 1 pixels wide
  15.  
  16. QPainter painter( this );
  17. painter.setPen( pen );
  18. painter.setRenderHint( QPainter::Antialiasing );
  19.  
  20. painter.drawLine(line);
  21. }
  22.  
  23. // Mouse press event
  24. void mousePressEvent( QMouseEvent *event )
  25. {
  26. event->accept();
  27. }
  28.  
  29. // Mouse move event
  30. void mouseMoveEvent( QMouseEvent *event )
  31. {
  32. event->accept();
  33. }
  34.  
  35. // Mouse release event
  36. void mouseReleaseEvent( QMouseEvent *event )
  37. {
  38. event->accept();
  39. }
To copy to clipboard, switch view to plain text mode 

Do you already have some suggestions? Code is just to start and I already got linker error about mouse event