summaryrefslogtreecommitdiffstats
path: root/plugin/simplestyle.h
blob: 0b067b26cb19e5f6ac33dda64aa8d40c51dd5a92 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
/****************************************************************************
**
** Copyright (C) 2012 Timothy Pearson.  All rights reserved.
**
** This file is part of the TDE Qt4 style interface
**
** This file may be used under the terms of the GNU General
** Public License versions 2.0 or 3.0 as published by the Free
** Software Foundation and appearing in the files LICENSE.GPL2
** and LICENSE.GPL3 included in the packaging of this file.
**
** This file is provided "AS IS" with NO WARRANTY OF ANY KIND,
** INCLUDING THE WARRANTIES OF DESIGN, MERCHANTABILITY AND FITNESS FOR
** A PARTICULAR PURPOSE. Trolltech reserves all rights not granted
** herein.
**
**********************************************************************/

#ifndef SIMPLESTYLE_H
#define SIMPLESTYLE_H

#include <QtGui/QWindowsStyle>

QT_BEGIN_NAMESPACE
class QPalette;
QT_END_NAMESPACE

class TQWidget;
class TQTabBar;
class TQRadioButton;
class TQProgressBar;
class TQPopupMenu;
class TQComboBox;

enum TQt3WidgetType {
	TQT3WT_NONE,
	TQT3WT_TQProgressBar,
	TQT3WT_TQTabBar,
	TQT3WT_TQRadioButton,
	TQT3WT_TQPopupMenu,
	TQT3WT_TQComboBox
};

class SimpleStyle : public QWindowsStyle
{
    Q_OBJECT

public:
    SimpleStyle();
    ~SimpleStyle();

    void polish(QPalette &palette);
    void polish(QWidget *widget);
    void unpolish(QWidget *widget);
    bool eventFilter(QObject *obj, QEvent *ev);

    void drawPrimitive(PrimitiveElement pe, const QStyleOption *opt, QPainter *p, const QWidget *w = 0) const;
    void drawControl(ControlElement element, const QStyleOption * option, QPainter * painter, const QWidget * widget = 0) const;
    void drawComplexControl(ComplexControl control, const QStyleOptionComplex * option, QPainter * painter, const QWidget * widget = 0) const;
    QRect subElementRect(SubElement element, const QStyleOption * option, const QWidget * widget = 0) const;

    int pixelMetric(PixelMetric metric, const QStyleOption * option = 0, const QWidget * widget = 0) const;

private:
    TQWidget* initializeInterfaceWidget(TQt3WidgetType wt, const QWidget * widget) const;

    TQWidget* m_tqt3parent_widget;
    TQTabBar* m_tqt3tabbar_widget;
    TQRadioButton* m_tqt3radiobutton_widget;
    TQProgressBar* m_tqt3progressbar_widget;
    TQPopupMenu* m_tqt3popupmenu_widget;
    TQComboBox* m_tqt3combobox_widget;
};

#endif