• Skip to content
  • Skip to link menu
  • KDE API Reference
  • kdelibs-4.14.38 API Reference
  • KDE Home
  • Contact Us
 

KDEUI

  • kdeui
  • widgets
kcapacitybar.h
Go to the documentation of this file.
1/*
2 * This file is part of the KDE project
3 * Copyright (C) 2008 Rafael Fernández López <ereslibre@kde.org>
4 *
5 * This library is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU Library General Public
7 * License as published by the Free Software Foundation; either
8 * version 2 of the License, or (at your option) any later version.
9 *
10 * This library is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 * Library General Public License for more details.
14 *
15 * You should have received a copy of the GNU Library General Public License
16 * along with this library; see the file COPYING.LIB. If not, write to
17 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
18 * Boston, MA 02110-1301, USA.
19 */
20
21#ifndef KCAPACITYBAR_H
22#define KCAPACITYBAR_H
23
24#include <QtGui/QWidget>
25
26#include <kdeui_export.h>
27
28class QPaintEvent;
29
44class KDEUI_EXPORT KCapacityBar
45 : public QWidget
46{
47 Q_OBJECT
48
49 Q_PROPERTY(int value READ value WRITE setValue)
50 Q_PROPERTY(QString text READ text WRITE setText)
51 Q_PROPERTY(DrawTextMode drawTextMode READ drawTextMode WRITE setDrawTextMode)
52 Q_PROPERTY(bool fillFullBlocks READ fillFullBlocks WRITE setFillFullBlocks)
53 Q_PROPERTY(bool continuous READ continuous WRITE setContinuous)
54 Q_PROPERTY(int barHeight READ barHeight WRITE setBarHeight)
55 Q_PROPERTY(Qt::Alignment horizontalTextAlignment READ horizontalTextAlignment
56 WRITE setHorizontalTextAlignment)
57 Q_ENUMS(DrawTextMode)
58
59public:
60 enum DrawTextMode {
61 DrawTextInline = 0,
62 DrawTextOutline
63 };
64
72 explicit KCapacityBar(DrawTextMode drawTextMode = DrawTextOutline, QWidget *parent = 0);
73 ~KCapacityBar();
74
82 void setValue(int value);
83
87 int value() const;
88
96 void setText(const QString &text);
97
101 QString text() const;
102
118 void setFillFullBlocks(bool fillFullBlocks);
119
123 bool fillFullBlocks() const;
124
135 void setContinuous(bool continuous);
136
141 bool continuous() const;
142
160 void setBarHeight(int barHeight);
161
165 int barHeight() const;
166
183 void setHorizontalTextAlignment(Qt::Alignment textAlignment);
184
188 Qt::Alignment horizontalTextAlignment() const;
189
196 void setDrawTextMode(DrawTextMode mode);
197
201 DrawTextMode drawTextMode() const;
202
208 void drawCapacityBar(QPainter *p, const QRect &rect) const;
209
210 // Reimplemented from QWidget
211 virtual QSize minimumSizeHint() const;
212
213protected:
214 // Reimplemented from QWidget
215 virtual void paintEvent(QPaintEvent *event);
216 virtual void changeEvent(QEvent *event);
217
218private:
222 class Private;
223 Private *const d;
224};
225
226#endif
KCapacityBar
This widget shows a bar which is filled to show the level of usage of a certain device.
Definition kcapacitybar.h:46
KCapacityBar::value
int value
Definition kcapacitybar.h:49
KCapacityBar::setFillFullBlocks
void setFillFullBlocks(bool fillFullBlocks)
When the capacity bar is non-continuous, sets whether the last block shown should be drawn full or ca...
Definition kcapacitybar.cpp:106
KCapacityBar::horizontalTextAlignment
Qt::Alignment horizontalTextAlignment
Definition kcapacitybar.h:56
KCapacityBar::KCapacityBar
KCapacityBar(DrawTextMode drawTextMode=DrawTextOutline, QWidget *parent=0)
Capacity bar constructor.
Definition kcapacitybar.cpp:65
KCapacityBar::setValue
void setValue(int value)
Capacity bar fill value.
Definition kcapacitybar.cpp:77
KCapacityBar::setContinuous
void setContinuous(bool continuous)
Sets whether the fill of the capacity bar should be continuous or in block mode.
Definition kcapacitybar.cpp:117
KCapacityBar::setHorizontalTextAlignment
void setHorizontalTextAlignment(Qt::Alignment textAlignment)
If the capacity bar is in outline text mode, draw the text with textAlignment alignment.
Definition kcapacitybar.cpp:141
KCapacityBar::drawTextMode
DrawTextMode drawTextMode
Definition kcapacitybar.h:51
KCapacityBar::setBarHeight
void setBarHeight(int barHeight)
Sets the height (in pixels) of the bar.
Definition kcapacitybar.cpp:128
KCapacityBar::barHeight
int barHeight
Definition kcapacitybar.h:54
KCapacityBar::fillFullBlocks
bool fillFullBlocks
Definition kcapacitybar.h:52
KCapacityBar::text
QString text
Definition kcapacitybar.h:50
KCapacityBar::continuous
bool continuous
Definition kcapacitybar.h:53
KCapacityBar::setDrawTextMode
void setDrawTextMode(DrawTextMode mode)
Set the way text is drawn if any is set.
Definition kcapacitybar.cpp:159
KCapacityBar::setText
void setText(const QString &text)
Sets the text for the capacity bar.
Definition kcapacitybar.cpp:88
KCapacityBar::DrawTextMode
DrawTextMode
Definition kcapacitybar.h:60
KCapacityBar::DrawTextOutline
@ DrawTextOutline
If any text set, draw it out of the capacity bar.
Definition kcapacitybar.h:62
KCapacityBar::DrawTextInline
@ DrawTextInline
If any text set, draw it into the capacity bar.
Definition kcapacitybar.h:61
QWidget
kdeui_export.h
This file is part of the KDE documentation.
Documentation copyright © 1996-2025 The KDE developers.
Generated on Fri Jan 17 2025 00:00:00 by doxygen 1.13.2 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

KDEUI

Skip menu "KDEUI"
  • Main Page
  • Namespace List
  • Namespace Members
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members
  • Related Pages

kdelibs-4.14.38 API Reference

Skip menu "kdelibs-4.14.38 API Reference"
  • DNSSD
  • Interfaces
  •   KHexEdit
  •   KMediaPlayer
  •   KSpeech
  •   KTextEditor
  • kconf_update
  • KDE3Support
  •   KUnitTest
  • KDECore
  • KDED
  • KDEsu
  • KDEUI
  • KDEWebKit
  • KDocTools
  • KFile
  • KHTML
  • KImgIO
  • KInit
  • kio
  • KIOSlave
  • KJS
  •   KJS-API
  •   WTF
  • kjsembed
  • KNewStuff
  • KParts
  • KPty
  • Kross
  • KUnitConversion
  • KUtils
  • Nepomuk
  • Plasma
  • Solid
  • Sonnet
  • ThreadWeaver
Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal