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_LEGEND_H 00011 #define QWT_LEGEND_H 00012 00013 #include "qwt_global.h" 00014 #include <qframe.h> 00015 #include <qlist.h> 00016 00017 class QScrollBar; 00018 class QwtLegendItemManager; 00019 00030 class QWT_EXPORT QwtLegend : public QFrame 00031 { 00032 Q_OBJECT 00033 00034 public: 00045 enum LegendItemMode 00046 { 00048 ReadOnlyItem, 00049 00051 ClickableItem, 00052 00054 CheckableItem 00055 }; 00056 00057 explicit QwtLegend( QWidget *parent = NULL ); 00058 virtual ~QwtLegend(); 00059 00060 void setItemMode( LegendItemMode ); 00061 LegendItemMode itemMode() const; 00062 00063 QWidget *contentsWidget(); 00064 const QWidget *contentsWidget() const; 00065 00066 void insert( const QwtLegendItemManager *, QWidget * ); 00067 void remove( const QwtLegendItemManager * ); 00068 00069 QWidget *find( const QwtLegendItemManager * ) const; 00070 QwtLegendItemManager *find( const QWidget * ) const; 00071 00072 virtual QList<QWidget *> legendItems() const; 00073 00074 void clear(); 00075 00076 bool isEmpty() const; 00077 uint itemCount() const; 00078 00079 virtual bool eventFilter( QObject *, QEvent * ); 00080 00081 virtual QSize sizeHint() const; 00082 virtual int heightForWidth( int w ) const; 00083 00084 QScrollBar *horizontalScrollBar() const; 00085 QScrollBar *verticalScrollBar() const; 00086 00087 protected: 00088 virtual void layoutContents(); 00089 00090 private: 00091 class PrivateData; 00092 PrivateData *d_data; 00093 }; 00094 00095 #endif