ginebra2/ProgressBarItem.h
branchGCC_SURGE
changeset 8 2e16851ffecd
parent 5 0f2326c2a325
equal deleted inserted replaced
2:bf4420e9fa4d 8:2e16851ffecd
       
     1 /*
       
     2 * Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
       
     3 * All rights reserved.
       
     4 *
       
     5 * This program is free software: you can redistribute it and/or modify
       
     6 * it under the terms of the GNU Lesser General Public License as published by
       
     7 * the Free Software Foundation, version 2.1 of the License.
       
     8 *
       
     9 * This program is distributed in the hope that it will be useful,
       
    10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
       
    11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
       
    12 * GNU Lesser General Public License for more details.
       
    13 *
       
    14 * You should have received a copy of the GNU Lesser General Public License
       
    15 * along with this program.  If not,
       
    16 * see "http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html/".
       
    17 *
       
    18 * Description:
       
    19 *
       
    20 */
       
    21 
       
    22 #ifndef __GINEBRA_PROGRESSBARITEM_H__
       
    23 #define __GINEBRA_PROGRESSBARITEM_H__
       
    24 
       
    25 #include <QtGui>
       
    26 #include "NativeChromeItem.h"
       
    27 
       
    28 namespace GVA {
       
    29 
       
    30   /*!
       
    31    * Draws a simple progress bar that is driven by loadProgress signals from
       
    32    * the page controller.
       
    33    */
       
    34   class ProgressBarItem : public NativeChromeItem
       
    35   {
       
    36     Q_OBJECT
       
    37   public:
       
    38     ProgressBarItem(ChromeSnippet * snippet, QGraphicsItem* parent = 0);
       
    39     virtual ~ProgressBarItem();
       
    40     qreal getProgress() const { return m_progress; }
       
    41     void setProgress(qreal value);
       
    42   public slots:
       
    43     void onProgress(int progress);
       
    44     void onStart();
       
    45     void onFinished(bool ok);
       
    46   protected:
       
    47     void paint(QPainter* painter, const QStyleOptionGraphicsItem* opt, QWidget* widget);
       
    48     void connectAll();
       
    49   private:
       
    50     qreal m_progress;
       
    51     QColor m_color;
       
    52   };
       
    53 
       
    54 } // end of namespace GVA
       
    55 
       
    56 #endif // __GINEBRA_PROGRESSBARITEM_H__