summaryrefslogtreecommitdiffstats
path: root/ksysguard/gui/SensorDisplayLib/BarGraph.cc
diff options
context:
space:
mode:
authorMichele Calgaro <michele.calgaro@yahoo.it>2020-12-07 22:58:44 +0900
committerMichele Calgaro <michele.calgaro@yahoo.it>2020-12-07 22:58:44 +0900
commit145abc15d57fb29701a12e8a14dcb9c1fd72e9be (patch)
treefbb4f2f737ec6f4e8a85bea5f2ca2257d20d7e22 /ksysguard/gui/SensorDisplayLib/BarGraph.cc
parentd95494d97233919fa0b2eebf60759537b793e05b (diff)
downloadtdebase-145abc15d57fb29701a12e8a14dcb9c1fd72e9be.tar.gz
tdebase-145abc15d57fb29701a12e8a14dcb9c1fd72e9be.zip
Renaming of files in preparation for code style tools.
Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
Diffstat (limited to 'ksysguard/gui/SensorDisplayLib/BarGraph.cc')
-rw-r--r--ksysguard/gui/SensorDisplayLib/BarGraph.cc177
1 files changed, 0 insertions, 177 deletions
diff --git a/ksysguard/gui/SensorDisplayLib/BarGraph.cc b/ksysguard/gui/SensorDisplayLib/BarGraph.cc
deleted file mode 100644
index 8d2b5e302..000000000
--- a/ksysguard/gui/SensorDisplayLib/BarGraph.cc
+++ /dev/null
@@ -1,177 +0,0 @@
-/*
- KSysGuard, the KDE System Guard
-
- Copyright (c) 1999, 2000 Chris Schlaeger <cs@kde.org>
-
- This program is free software; you can redistribute it and/or
- modify it under the terms of version 2 of the GNU General Public
- License as published by the Free Software Foundation
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-
- KSysGuard is currently maintained by Chris Schlaeger <cs@kde.org>.
- Please do not commit any changes without consulting me first. Thanks!
-
-*/
-
-#include <assert.h>
-#include <string.h>
-
-#include <tqpainter.h>
-
-#include <kdebug.h>
-#include <kiconloader.h>
-
-#include <ksgrd/StyleEngine.h>
-
-#include "BarGraph.h"
-
-BarGraph::BarGraph( TQWidget *parent, const char *name )
- : TQWidget( parent, name )
-{
- // paintEvent covers whole widget so we use no background to avoid flicker
- setBackgroundMode( NoBackground );
-
- bars = 0;
- minValue = 0.0;
- maxValue = 100.0;
- lowerLimit = upperLimit = 0.0;
- lowerLimitActive = upperLimitActive = false;
-
- normalColor = KSGRD::Style->firstForegroundColor();
- alarmColor = KSGRD::Style->alarmColor();
- backgroundColor = KSGRD::Style->backgroundColor();
- fontSize = KSGRD::Style->fontSize();
-
- // Anything smaller than this does not make sense.
- setMinimumSize( 16, 16 );
- setSizePolicy( TQSizePolicy( TQSizePolicy::Expanding,
- TQSizePolicy::Expanding, false ) );
-}
-
-BarGraph::~BarGraph()
-{
-}
-
-bool BarGraph::addBar( const TQString &footer )
-{
- samples.resize( bars + 1 );
- samples[ bars++ ] = 0.0;
- footers.append( footer );
-
- return true;
-}
-
-bool BarGraph::removeBar( uint idx )
-{
- if ( idx >= bars ) {
- kdDebug(1215) << "BarGraph::removeBar: idx " << idx << " out of range "
- << bars << endl;
- return false;
- }
-
- samples.resize( --bars );
- footers.remove( footers.at( idx ) );
- update();
-
- return true;
-}
-
-void BarGraph::updateSamples( const TQMemArray<double> &newSamples )
-{
- samples = newSamples;
- update();
-}
-
-void BarGraph::changeRange( double min, double max )
-{
- minValue = min;
- maxValue = max;
-}
-
-void BarGraph::paintEvent( TQPaintEvent* )
-{
- int w = width();
- int h = height();
-
- TQPixmap pm( w, h );
- TQPainter p;
- p.begin( &pm, this );
- p.setFont( TQFont( p.font().family(), fontSize ) );
- TQFontMetrics fm( p.font() );
-
- pm.fill( backgroundColor );
-
- /* Draw white line along the bottom and the right side of the
- * widget to create a 3D like look. */
- p.setPen( TQColor( colorGroup().light() ) );
- p.drawLine( 0, h - 1, w - 1, h - 1 );
- p.drawLine( w - 1, 0, w - 1, h - 1 );
-
- p.setClipRect( 1, 1, w - 2, h - 2 );
-
- if ( bars > 0 ) {
- int barWidth = ( w - 2 ) / bars;
- uint b;
- /* Labels are only printed underneath the bars if the labels
- * for all bars are smaller than the bar width. If a single
- * label does not fit no label is shown. */
- bool showLabels = true;
- for ( b = 0; b < bars; b++ )
- if ( fm.width( footers[ b ] ) > barWidth )
- showLabels = false;
-
- int barHeight;
- if ( showLabels )
- barHeight = h - 2 - ( 2 * fm.lineSpacing() ) - 2;
- else
- barHeight = h - 2;
-
- for ( uint b = 0; b < bars; b++ ) {
- int topVal = (int) ( (float)barHeight / maxValue *
- ( samples[ b ] - minValue ) );
- /* TODO: This widget does not handle negative values properly. */
- if ( topVal < 0 )
- topVal = 0;
-
- for ( int i = 0; i < barHeight && i < topVal; i += 2 ) {
- if ( ( upperLimitActive && samples[ b ] > upperLimit ) ||
- ( lowerLimitActive && samples[ b ] < lowerLimit ) )
- p.setPen( alarmColor.light( static_cast<int>( 30 + ( 70.0 /
- ( barHeight + 1 ) * i ) ) ) );
- else
- p.setPen( normalColor.light( static_cast<int>( 30 + ( 70.0 /
- ( barHeight + 1 ) * i ) ) ) );
- p.drawLine( b * barWidth + 3, barHeight - i, ( b + 1 ) * barWidth - 3,
- barHeight - i );
- }
-
- if ( ( upperLimitActive && samples[ b ] > upperLimit ) ||
- ( lowerLimitActive && samples[ b ] < lowerLimit ) )
- p.setPen( alarmColor );
- else
- p.setPen( normalColor );
-
- if ( showLabels ) {
- p.drawText( b * barWidth + 3, h - ( 2 * fm.lineSpacing() ) - 2,
- barWidth - 2 * 3, fm.lineSpacing(), Qt::AlignCenter,
- footers[ b ] );
- p.drawText( b * barWidth + 3, h - fm.lineSpacing() - 2,
- barWidth - 2 * 3, fm.lineSpacing(), Qt::AlignCenter,
- TQString( "%1" ).arg( samples[ b ] ) );
- }
- }
- }
-
- p.end();
- bitBlt( this, 0, 0, &pm );
-}
-
-#include "BarGraph.moc"