Qwt User's Guide
svn
|
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** 00002 * Qwt Widget Library 00003 * Copyright (C) 1997 Josef Wilgen 00004 * Copyright (C) 2002 Uwe Rathmann 00005 * 00006 * This library is free software; you can redistribute it and/or 00007 * modify it under the terms of the Qwt License, Version 1.0 00008 *****************************************************************************/ 00009 00010 #ifndef QWT_ROUND_SCALE_DRAW_H 00011 #define QWT_ROUND_SCALE_DRAW_H 00012 00013 #include "qwt_global.h" 00014 #include "qwt_abstract_scale_draw.h" 00015 #include <qpoint.h> 00016 00017 class QPen; 00018 00032 class QWT_EXPORT QwtRoundScaleDraw: public QwtAbstractScaleDraw 00033 { 00034 public: 00035 QwtRoundScaleDraw(); 00036 virtual ~QwtRoundScaleDraw(); 00037 00038 void setRadius( int radius ); 00039 int radius() const; 00040 00041 void moveCenter( double x, double y ); 00042 void moveCenter( const QPointF & ); 00043 QPointF center() const; 00044 00045 void setAngleRange( double angle1, double angle2 ); 00046 00047 virtual double extent( const QFont & ) const; 00048 00049 protected: 00050 virtual void drawTick( QPainter *p, double val, double len ) const; 00051 virtual void drawBackbone( QPainter *p ) const; 00052 virtual void drawLabel( QPainter *p, double val ) const; 00053 00054 private: 00055 QwtRoundScaleDraw( const QwtRoundScaleDraw & ); 00056 QwtRoundScaleDraw &operator=( const QwtRoundScaleDraw &other ); 00057 00058 class PrivateData; 00059 PrivateData *d_data; 00060 }; 00061 00063 inline void QwtRoundScaleDraw::moveCenter( double x, double y ) 00064 { 00065 moveCenter( QPointF( x, y ) ); 00066 } 00067 00068 #endif