~valavanisalex/ubuntu/maverick/qtiplot/qtiplot-fix-605025

« back to all changes in this revision

Viewing changes to qtiplot/src/lib/include/SymbolBox.h

  • Committer: Alex Valavanis
  • Date: 2010-07-21 23:21:12 UTC
  • mfrom: (1.1.7 upstream)
  • Revision ID: valavanisalex@googlemail.com-20100721232112-p4o2jezjgutlj5x9
Merging shared upstream rev into target branch.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/***************************************************************************
 
2
    File                 : SymbolBox.h
 
3
    Project              : QtiPlot
 
4
    --------------------------------------------------------------------
 
5
    Copyright            : (C) 2006 by Ion Vasilief
 
6
    Email (use @ for *)  : ion_vasilief*yahoo.fr
 
7
    Description          : Plot symbol combo box
 
8
                           
 
9
 ***************************************************************************/
 
10
 
 
11
/***************************************************************************
 
12
 *                                                                         *
 
13
 *  This program is free software; you can redistribute it and/or modify   *
 
14
 *  it under the terms of the GNU General Public License as published by   *
 
15
 *  the Free Software Foundation; either version 2 of the License, or      *
 
16
 *  (at your option) any later version.                                    *
 
17
 *                                                                         *
 
18
 *  This program is distributed in the hope that it will be useful,        *
 
19
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of         *
 
20
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the          *
 
21
 *  GNU General Public License for more details.                           *
 
22
 *                                                                         *
 
23
 *   You should have received a copy of the GNU General Public License     *
 
24
 *   along with this program; if not, write to the Free Software           *
 
25
 *   Foundation, Inc., 51 Franklin Street, Fifth Floor,                    *
 
26
 *   Boston, MA  02110-1301  USA                                           *
 
27
 *                                                                         *
 
28
 ***************************************************************************/
 
29
#ifndef SYMBOLBOX_H
 
30
#define SYMBOLBOX_H
 
31
 
 
32
#include <QComboBox>
 
33
#include <qwt_symbol.h>
 
34
 
 
35
//! A modified QComboBox allowing to choose a QwtSmbol style.
 
36
/**
 
37
 * This is a simple hack on top of the QComboBox class.
 
38
 \image html images/symbol_box.png
 
39
 */
 
40
class SymbolBox : public QComboBox
 
41
{
 
42
  Q_OBJECT
 
43
public:
 
44
                //! Constructor.
 
45
                /**
 
46
                 * \param parent parent widget (only affects placement of the widget)
 
47
                 */
 
48
                SymbolBox(bool showNoSymbol = true, QWidget *parent = 0);
 
49
 
 
50
                void setStyle(const QwtSymbol::Style& c);
 
51
                QwtSymbol::Style selectedSymbol() const;
 
52
 
 
53
                static QwtSymbol::Style style(int index);
 
54
                static int symbolIndex(const QwtSymbol::Style& style);
 
55
                static QList<int> defaultSymbols();
 
56
 
 
57
signals:
 
58
                //! Signal emitted when the box gains focus
 
59
                void activated(SymbolBox *);
 
60
 
 
61
protected:
 
62
                void init(bool showNoSymbol);
 
63
                void focusInEvent(QFocusEvent *);
 
64
 
 
65
private:
 
66
                static const QwtSymbol::Style symbols[];
 
67
};
 
68
 
 
69
#endif