/****************************************************************************
** $Id: qlcdnumber.h,v 2.9.2.2 1998/08/21 19:13:25 hanord Exp $
**
** Definition of QLCDNumber class
**
** Created : 940518
**
** Copyright (C) 1992-1998 Troll Tech AS. All rights reserved.
**
** This file is part of Troll Tech's internal development tree for Qt.
**
** This header text will be replaced by an appropriate text by the
** mkdist script which generates external distributions.
**
** If you are using the Qt Professional Edition or the Qt Free Edition,
** please notify Troll Tech at <info@troll.no> if you see this text.
**
** To Troll Tech developers: This header was generated by the script
** fixcopyright-int. It has the same number of text lines as the free
** and professional editions to avoid line number inconsistency.
**
*****************************************************************************/
#ifndef QLCDNUMBER_H
#define QLCDNUMBER_H
#ifndef QT_H
#include "qframe.h"
#include "qbitarray.h"
#endif // QT_H
class Q_EXPORT QLCDNumber : public QFrame // LCD number widget
{
Q_OBJECT
public:
QLCDNumber( QWidget *parent=0, const char *name=0 );
QLCDNumber( uint numDigits, QWidget *parent=0, const char *name=0 );
~QLCDNumber();
enum Mode { HEX, DEC, OCT, BIN };
enum SegmentStyle { Outline, Filled, Flat };
bool smallDecimalPoint() const;
int numDigits() const;
void setNumDigits( int nDigits );
bool checkOverflow( double num ) const;
bool checkOverflow( int num ) const;
Mode mode() const;
void setMode( Mode );
SegmentStyle segmentStyle() const;
void setSegmentStyle( SegmentStyle );
double value() const;
int intValue() const;
QSize sizeHint() const;
public slots:
void display( int num );
void display( double num );
void display( const char *str );
void setHexMode();
void setDecMode();
void setOctMode();
void setBinMode();
void setSmallDecimalPoint( bool );
signals:
void overflow();
protected:
void resizeEvent( QResizeEvent * );
void drawContents( QPainter * );
private:
void init();
void internalDisplay( const char * );
void drawString( const char *, QPainter &, QBitArray * = 0,
bool = TRUE );
void drawDigit( const QPoint &, QPainter &, int, char, char = ' ' );
void drawSegment( const QPoint &, char, QPainter &, int, bool = FALSE );
int ndigits;
double val;
uint base : 2;
uint smallPoint : 1;
uint fill : 1;
uint shadow : 1;
QString digitStr;
QBitArray points;
private: // Disabled copy constructor and operator=
#if defined(Q_DISABLE_COPY)
QLCDNumber( const QLCDNumber & );
QLCDNumber &operator=( const QLCDNumber & );
#endif
};
inline bool QLCDNumber::smallDecimalPoint() const
{ return (bool)smallPoint; }
inline int QLCDNumber::numDigits() const
{ return ndigits; }
#endif // QLCDNUMBER_H
| Copyright © 1998 Troll Tech | Trademarks | Qt version 1.41
|