<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- /home/espenr/tmp/qt - 3.3.8 - espenr - 2499/qt - x11 - free - 3.3.8/doc/tutorial2.doc:2 -->
< html >
< head >
< meta http-equiv = "Content-Type" content = "text/html; charset=ISO-8859-1" >
< title > chart/element.h Example File< / title >
< style type = "text/css" > < ! - -
fn { margin-left: 1cm; text-indent: -1cm; }
a:link { color: #004faf; text-decoration: none }
a:visited { color: #672967; text-decoration: none }
body { background: #ffffff; color: black; }
-->< / style >
< / head >
< body >
< table border = "0" cellpadding = "0" cellspacing = "0" width = "100%" >
< tr bgcolor = "#E5E5E5" >
< td valign = center >
< a href = "index.html" >
< font color = "#004faf" > Home< / font > < / a >
| < a href = "classes.html" >
< font color = "#004faf" > All Classes< / font > < / a >
| < a href = "mainclasses.html" >
< font color = "#004faf" > Main Classes< / font > < / a >
| < a href = "annotated.html" >
< font color = "#004faf" > Annotated< / font > < / a >
| < a href = "groups.html" >
< font color = "#004faf" > Grouped Classes< / font > < / a >
| < a href = "functions.html" >
< font color = "#004faf" > Functions< / font > < / a >
< / td >
< td align = "right" valign = "center" > < img src = "logo32.png" align = "right" width = "64" height = "32" border = "0" > < / td > < / tr > < / table > < h1 align = center > chart/element.h Example File< / h1 >
< pre > #ifndef ELEMENT_H
#define ELEMENT_H
#include < < a href = "qcolor-h.html" > ntqcolor.h< / a > >
#include < < a href = "qnamespace-h.html" > ntqnamespace.h< / a > >
#include < < a href = "qstring-h.html" > ntqstring.h< / a > >
#include < < a href = "qvaluevector-h.html" > ntqvaluevector.h< / a > >
class Element;
typedef TQValueVector< Element> ElementVector;
/*
Elements are valid if they have a value which is > EPSILON.
*/
const double EPSILON = 0.0000001; // Must be > INVALID.
class Element
{
public:
enum { INVALID = -1 };
enum { NO_PROPORTION = -1 };
enum { MAX_PROPOINTS = 3 }; // One proportional point per chart type
Element( double value = INVALID, TQColor valueColor = TQt::gray,
int valuePattern = TQt::SolidPattern,
const < a href = "ntqstring.html" > TQString< / a > & label = TQString::null,
< a href = "ntqcolor.html" > TQColor< / a > labelColor = TQt::black ) {
init( value, valueColor, valuePattern, label, labelColor );
for ( int i = 0; i < MAX_PROPOINTS * 2; ++i )
m_propoints[i] = NO_PROPORTION;
}
~Element() {}
bool isValid() const { return m_value > EPSILON; }
double value() const { return m_value; }
< a href = "ntqcolor.html" > TQColor< / a > valueColor() const { return m_valueColor; }
int valuePattern() const { return m_valuePattern; }
< a href = "ntqstring.html" > TQString< / a > label() const { return m_label; }
< a href = "ntqcolor.html" > TQColor< / a > labelColor() const { return m_labelColor; }
double proX( int index ) const;
double proY( int index ) const;
void set( double value = INVALID, TQColor valueColor = TQt::gray,
int valuePattern = TQt::SolidPattern,
const < a href = "ntqstring.html" > TQString< / a > & label = TQString::null,
< a href = "ntqcolor.html" > TQColor< / a > labelColor = TQt::black ) {
init( value, valueColor, valuePattern, label, labelColor );
}
void setValue( double value ) { m_value = value; }
void setValueColor( < a href = "ntqcolor.html" > TQColor< / a > valueColor ) { m_valueColor = valueColor; }
void setValuePattern( int valuePattern );
void setLabel( const < a href = "ntqstring.html" > TQString< / a > & label ) { m_label = label; }
void setLabelColor( < a href = "ntqcolor.html" > TQColor< / a > labelColor ) { m_labelColor = labelColor; }
void setProX( int index, double value );
void setProY( int index, double value );
#ifdef Q_FULL_TEMPLATE_INSTANTIATION
// xlC 3.x workaround
Q_DUMMY_COMPARISON_OPERATOR(Element)
bool operator!=( const Element& e) const {
return ( !(e == *this) );
}
#endif
private:
void init( double value, TQColor valueColor, int valuePattern,
const < a href = "ntqstring.html" > TQString< / a > & label, TQColor labelColor );
double m_value;
< a href = "ntqcolor.html" > TQColor< / a > m_valueColor;
int m_valuePattern;
< a href = "ntqstring.html" > TQString< / a > m_label;
< a href = "ntqcolor.html" > TQColor< / a > m_labelColor;
double m_propoints[2 * MAX_PROPOINTS];
};
TQTextStream & operator< < ( < a href = "ntqtextstream.html" > TQTextStream< / a > & , const Element& );
TQTextStream & operator> > ( < a href = "ntqtextstream.html" > TQTextStream< / a > & , Element& );
#endif
< / pre > <!-- eof -->
< p > < address > < hr > < div align = center >
< table width = 100% cellspacing = 0 border = 0 > < tr >
< td > Copyright © 2007
< a href = "troll.html" > Trolltech< / a > < td align = center > < a href = "trademarks.html" > Trademarks< / a >
< td align = right > < div align = right > TQt 3.3.8< / div >
< / table > < / div > < / address > < / body >
< / html >