Qwt User's Guide 6.0.2

- Main Page
- Related Pages
- Classes

qwt_arrow_button.h
1 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
2 * Qwt Widget Library
3 * Copyright (C) 1997 Josef Wilgen
4 * Copyright (C) 2002 Uwe Rathmann
5 *
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the Qwt License, Version 1.0
8 *****************************************************************************/
9
10 #ifndef QWT_ARROW_BUTTON_H
11 #define QWT_ARROW_BUTTON_H
12
13 #include "qwt_global.h"
14 #include <qpushbutton.h>
15
23 class QWT_EXPORT QwtArrowButton : public QPushButton
24 {
25 public:
26 explicit QwtArrowButton ( int num, Qt::ArrowType, QWidget *parent = NULL );
27 virtual ~QwtArrowButton();
28
29 Qt::ArrowType arrowType() const;
30 int num() const;
31
32 virtual QSize sizeHint() const;
33 virtual QSize minimumSizeHint() const;
34
35 protected:
36 virtual void paintEvent( QPaintEvent *event );
37
38 virtual void drawButtonLabel( QPainter *p );
39 virtual void drawArrow( QPainter *,
40 const QRect &, Qt::ArrowType ) const;
41 virtual QRect labelRect() const;
42 virtual QSize arrowSize( Qt::ArrowType,
43 const QSize &boundingSize ) const;
44
45 virtual void keyPressEvent( QKeyEvent * );
46
47 private:
48 class PrivateData;
49 PrivateData *d_data;
50 };
51
52 #endif