Qwt User's Guide  6.1.1
 All Classes Functions Variables Typedefs Enumerations Enumerator Pages
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
Arrow Button.
Definition: qwt_arrow_button.h:23