Eneboo - Documentación para desarrolladores
|
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_ARROW_BUTTON_H 00011 #define QWT_ARROW_BUTTON_H 00012 00013 #include <qpushbutton.h> 00014 #include "qwt_global.h" 00015 00023 class QWT_EXPORT QwtArrowButton : public QPushButton 00024 { 00025 public: 00026 explicit QwtArrowButton (int num, Qt::ArrowType, QWidget *parent = NULL); 00027 virtual ~QwtArrowButton(); 00028 00029 Qt::ArrowType arrowType() const; 00030 int num() const; 00031 00032 virtual QSize sizeHint() const; 00033 virtual QSize minimumSizeHint() const; 00034 00035 protected: 00036 #if QT_VERSION >= 0x040000 00037 virtual void paintEvent(QPaintEvent *event); 00038 #endif 00039 00040 virtual void drawButtonLabel(QPainter *p); 00041 virtual void drawArrow(QPainter *, 00042 const QRect &, Qt::ArrowType) const; 00043 virtual QRect labelRect() const; 00044 virtual QSize arrowSize(Qt::ArrowType, 00045 const QSize &boundingSize) const; 00046 00047 virtual void keyPressEvent(QKeyEvent *); 00048 00049 private: 00050 class PrivateData; 00051 PrivateData *d_data; 00052 }; 00053 00054 #endif