summaryrefslogtreecommitdiff
path: root/src/libpcp_qwt/src/qwt_legend.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/libpcp_qwt/src/qwt_legend.h')
-rw-r--r--src/libpcp_qwt/src/qwt_legend.h95
1 files changed, 95 insertions, 0 deletions
diff --git a/src/libpcp_qwt/src/qwt_legend.h b/src/libpcp_qwt/src/qwt_legend.h
new file mode 100644
index 0000000..e241783
--- /dev/null
+++ b/src/libpcp_qwt/src/qwt_legend.h
@@ -0,0 +1,95 @@
+/* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
+ * Qwt Widget Library
+ * Copyright (C) 1997 Josef Wilgen
+ * Copyright (C) 2002 Uwe Rathmann
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the Qwt License, Version 1.0
+ *****************************************************************************/
+
+#ifndef QWT_LEGEND_H
+#define QWT_LEGEND_H
+
+#include "qwt_global.h"
+#include <qframe.h>
+#include <qlist.h>
+
+class QScrollBar;
+class QwtLegendItemManager;
+
+/*!
+ \brief The legend widget
+
+ The QwtLegend widget is a tabular arrangement of legend items. Legend
+ items might be any type of widget, but in general they will be
+ a QwtLegendItem.
+
+ \sa QwtLegendItem, QwtLegendItemManager QwtPlot
+*/
+
+class QWT_EXPORT QwtLegend : public QFrame
+{
+ Q_OBJECT
+
+public:
+ /*!
+ \brief Interaction mode for the legend items
+
+ The default is QwtLegend::ReadOnlyItem.
+
+ \sa setItemMode(), itemMode(), QwtLegendItem::IdentifierMode
+ QwtLegendItem::clicked(), QwtLegendItem::checked(),
+ QwtPlot::legendClicked(), QwtPlot::legendChecked()
+ */
+
+ enum LegendItemMode
+ {
+ //! The legend item is not interactive, like a label
+ ReadOnlyItem,
+
+ //! The legend item is clickable, like a push button
+ ClickableItem,
+
+ //! The legend item is checkable, like a checkable button
+ CheckableItem
+ };
+
+ explicit QwtLegend( QWidget *parent = NULL );
+ virtual ~QwtLegend();
+
+ void setItemMode( LegendItemMode );
+ LegendItemMode itemMode() const;
+
+ QWidget *contentsWidget();
+ const QWidget *contentsWidget() const;
+
+ void insert( const QwtLegendItemManager *, QWidget * );
+ void remove( const QwtLegendItemManager * );
+
+ QWidget *find( const QwtLegendItemManager * ) const;
+ QwtLegendItemManager *find( const QWidget * ) const;
+
+ virtual QList<QWidget *> legendItems() const;
+
+ void clear();
+
+ bool isEmpty() const;
+ uint itemCount() const;
+
+ virtual bool eventFilter( QObject *, QEvent * );
+
+ virtual QSize sizeHint() const;
+ virtual int heightForWidth( int w ) const;
+
+ QScrollBar *horizontalScrollBar() const;
+ QScrollBar *verticalScrollBar() const;
+
+protected:
+ virtual void layoutContents();
+
+private:
+ class PrivateData;
+ PrivateData *d_data;
+};
+
+#endif