2 Situare - A location system for Facebook
3 Copyright (C) 2010 Ixonos Plc. Authors:
5 Pekka Nissinen - pekka.nissinen@ixonos.com
7 Situare is free software; you can redistribute it and/or
8 modify it under the terms of the GNU General Public License
9 version 2 as published by the Free Software Foundation.
11 Situare is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
16 You should have received a copy of the GNU General Public License
17 along with Situare; if not, write to the Free Software
18 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
23 #include <QMouseEvent>
27 #include "panelcommon.h"
30 const int TAB_HEIGHT = 66;
31 const int TAB_WIDTH_ACTIVE = PANEL_TAB_BAR_WIDTH;
33 PanelTab::PanelTab(QWidget *parent)
34 : QToolButton(parent),
38 qDebug() << __PRETTY_FUNCTION__;
40 m_tabActiveImage.load(":/res/images/tab_active.png");
41 m_tabInactiveImage.load(":/res/images/tab_inactive.png");
42 m_tabInactiveImage2.load(":/res/images/tab_inactive2.png");
46 setFixedSize(TAB_WIDTH_ACTIVE, TAB_HEIGHT);
49 void PanelTab::mouseMoveEvent(QMouseEvent *event)
51 qDebug() << __PRETTY_FUNCTION__;
54 if (!rect().contains(event->pos()))
61 void PanelTab::mousePressEvent(QMouseEvent *event)
63 qDebug() << __PRETTY_FUNCTION__;
65 if (event->button() == Qt::LeftButton) {
71 void PanelTab::mouseReleaseEvent(QMouseEvent *event)
73 qDebug() << __PRETTY_FUNCTION__;
75 if (event->button() == Qt::LeftButton) {
76 if (rect().contains(event->pos())) {
86 m_tabSelected = false;
90 void PanelTab::paintEvent(QPaintEvent *event)
92 qDebug() << __PRETTY_FUNCTION__;
96 const int TAB_WIDTH = 66;
97 const int TAB_RECT_X = 0;
98 const int TAB_RECT_Y = 0;
100 QPainter painter(this);
103 m_tabRect.setRect(TAB_RECT_X, TAB_RECT_Y, TAB_WIDTH_ACTIVE, TAB_HEIGHT);
104 painter.drawPixmap(m_tabRect, m_tabActiveImage);
106 m_tabRect.setRect(TAB_WIDTH_ACTIVE - TAB_WIDTH, TAB_RECT_Y, TAB_WIDTH, TAB_HEIGHT);
107 painter.drawPixmap(m_tabRect, m_tabInactiveImage);
111 icon().paint(&painter, m_tabRect, Qt::AlignCenter, QIcon::Selected);
112 else if (!isEnabled())
113 icon().paint(&painter, m_tabRect, Qt::AlignCenter, QIcon::Disabled);
115 icon().paint(&painter, m_tabRect, Qt::AlignCenter, QIcon::Normal);