KD Chart 2 [rev.2.4]
|
00001 /**************************************************************************** 00002 ** Copyright (C) 2001-2012 Klaralvdalens Datakonsult AB. All rights reserved. 00003 ** 00004 ** This file is part of the KD Chart library. 00005 ** 00006 ** Licensees holding valid commercial KD Chart licenses may use this file in 00007 ** accordance with the KD Chart Commercial License Agreement provided with 00008 ** the Software. 00009 ** 00010 ** 00011 ** This file may be distributed and/or modified under the terms of the 00012 ** GNU General Public License version 2 and version 3 as published by the 00013 ** Free Software Foundation and appearing in the file LICENSE.GPL.txt included. 00014 ** 00015 ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE 00016 ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 00017 ** 00018 ** Contact info@kdab.com if any conditions of this licensing are not 00019 ** clear to you. 00020 ** 00021 **********************************************************************/ 00022 00023 #ifndef KDCHARTMARKERATTRIBUTES_H 00024 #define KDCHARTMARKERATTRIBUTES_H 00025 00026 #include <QMetaType> 00027 #include "KDChartGlobal.h" 00028 00029 class QColor; 00030 class QSizeF; 00031 class QPen; 00032 class QDebug; 00033 template <typename T, typename K> class QMap; 00034 00035 namespace KDChart { 00036 00040 class KDCHART_EXPORT MarkerAttributes 00041 { 00042 public: 00043 MarkerAttributes(); 00044 MarkerAttributes( const MarkerAttributes& ); 00045 MarkerAttributes &operator= ( const MarkerAttributes& ); 00046 00047 ~MarkerAttributes(); 00048 00049 enum MarkerStyle { MarkerCircle = 0, 00050 MarkerSquare = 1, 00051 MarkerDiamond = 2, 00052 Marker1Pixel = 3, 00053 Marker4Pixels = 4, 00054 MarkerRing = 5, 00055 MarkerCross = 6, 00056 MarkerFastCross = 7, 00057 NoMarker = 8 }; 00058 00059 void setVisible( bool visible ); 00060 bool isVisible() const; 00061 00062 typedef QMap<uint, MarkerStyle> MarkerStylesMap; 00063 void setMarkerStylesMap( const MarkerStylesMap & map ); 00064 MarkerStylesMap markerStylesMap() const; 00065 00066 void setMarkerStyle( MarkerStyle style ); 00067 MarkerStyle markerStyle() const; 00068 00076 void setMarkerSize( const QSizeF& size ); 00077 QSizeF markerSize() const; 00078 00079 void setMarkerColor( const QColor& color ); 00080 QColor markerColor() const; 00081 00082 void setPen( const QPen& pen ); 00083 QPen pen() const; 00084 00085 bool operator==( const MarkerAttributes& ) const; 00086 bool operator!=( const MarkerAttributes& ) const; 00087 00088 private: 00089 KDCHART_DECLARE_PRIVATE_BASE_VALUE( MarkerAttributes ) 00090 }; // End of class MarkerAttributes 00091 00092 inline bool MarkerAttributes::operator!=( const MarkerAttributes & other ) const { return !operator==( other ); } 00093 } 00094 00095 KDCHART_DECLARE_SWAP_SPECIALISATION( KDChart::MarkerAttributes ) 00096 Q_DECLARE_TYPEINFO( KDChart::MarkerAttributes, Q_MOVABLE_TYPE ); 00097 Q_DECLARE_METATYPE( KDChart::MarkerAttributes ) 00098 00099 #ifndef QT_NO_DEBUG_STREAM 00100 KDCHART_EXPORT QDebug operator<<( QDebug, const KDChart::MarkerAttributes & ); 00101 #endif 00102 00103 #endif // KDCHARTMARKERATTRIBUTES_H