1 /* 2 * Copyright (C) 2009, 2010 Nicolas Bonnefon and other contributors 3 * 4 * This file is part of glogg. 5 * 6 * glogg is free software: you can redistribute it and/or modify 7 * it under the terms of the GNU General Public License as published by 8 * the Free Software Foundation, either version 3 of the License, or 9 * (at your option) any later version. 10 * 11 * glogg 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. 15 * 16 * You should have received a copy of the GNU General Public License 17 * along with glogg. If not, see <http://www.gnu.org/licenses/>. 18 */ 19 20 #ifndef INFOLINE_H 21 #define INFOLINE_H 22 23 #include <QLabel> 24 #include <QPalette> 25 26 // Information line with integrated completion gauge 27 // used for the file name and the search results. 28 class InfoLine : public QLabel 29 { 30 public: 31 // Default constructor 32 InfoLine(); 33 34 // Display the gauge in the background with the passed value (0-100) 35 // This function doesn't change the text of the widget. 36 void displayGauge( int completion ); 37 // Hide the gauge and make the widget like a normal QLabel 38 void hideGauge(); 39 40 protected: 41 void paintEvent(QPaintEvent* paintEvent); 42 43 private: 44 // The original palette of the QLabel 45 QPalette origPalette_; 46 // Color of the background 47 const QColor backgroundColor_; 48 // Color of the darkened background (left part of the gauge) 49 const QColor darkBackgroundColor_; 50 }; 51 52 #endif 53