118 lines
3.5 KiB
C++
118 lines
3.5 KiB
C++
/****************************************************************************
|
|
** Copyright (C) 2001-2011 Klaralvdalens Datakonsult AB. All rights reserved.
|
|
**
|
|
** This file is part of the KD Chart library.
|
|
**
|
|
** Licensees holding valid commercial KD Chart licenses may use this file in
|
|
** accordance with the KD Chart Commercial License Agreement provided with
|
|
** the Software.
|
|
**
|
|
**
|
|
** This file may be distributed and/or modified under the terms of the
|
|
** GNU General Public License version 2 and version 3 as published by the
|
|
** Free Software Foundation and appearing in the file LICENSE.GPL.txt included.
|
|
**
|
|
** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
|
|
** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
|
|
**
|
|
** Contact info@kdab.com if any conditions of this licensing are not
|
|
** clear to you.
|
|
**
|
|
**********************************************************************/
|
|
|
|
#ifndef KDCHARTGRIDATTRIBUTES_H
|
|
#define KDCHARTGRIDATTRIBUTES_H
|
|
|
|
#include <QMetaType>
|
|
#include "KDChartGlobal.h"
|
|
#include "KDChartEnums.h"
|
|
|
|
class QPen;
|
|
|
|
namespace KDChart {
|
|
|
|
/**
|
|
* @brief A set of attributes controlling the appearance of grids
|
|
*/
|
|
class KDCHART_EXPORT GridAttributes
|
|
{
|
|
public:
|
|
GridAttributes();
|
|
GridAttributes( const GridAttributes& );
|
|
GridAttributes &operator= ( const GridAttributes& );
|
|
|
|
~GridAttributes();
|
|
|
|
void setGridVisible( bool visible );
|
|
bool isGridVisible() const;
|
|
|
|
|
|
void setGridStepWidth( qreal stepWidth=0.0 );
|
|
qreal gridStepWidth() const;
|
|
|
|
void setGridSubStepWidth( qreal subStepWidth=0.0 );
|
|
qreal gridSubStepWidth() const;
|
|
|
|
/**
|
|
* Specify which granularity sequence is to be used to find a matching
|
|
* grid granularity.
|
|
*
|
|
* See details explained at KDChartEnums::GranularitySequence.
|
|
*
|
|
* You might also want to use setAdjustBoundsToGrid for fine-tuning the
|
|
* start/end value.
|
|
*
|
|
* \sa setAdjustBoundsToGrid, GranularitySequence
|
|
*/
|
|
void setGridGranularitySequence( KDChartEnums::GranularitySequence sequence );
|
|
KDChartEnums::GranularitySequence gridGranularitySequence() const;
|
|
|
|
/**
|
|
* By default visible bounds of the data area are adjusted to match
|
|
* a main grid line.
|
|
* If you set the respective adjust flag to false the bound will
|
|
* not start at a grid line's value but it will be the exact value
|
|
* of the data range set.
|
|
*
|
|
* \sa CartesianCoordinatePlane::setHorizontalRange
|
|
* \sa CartesianCoordinatePlane::setVerticalRange
|
|
*/
|
|
void setAdjustBoundsToGrid( bool adjustLower, bool adjustUpper );
|
|
bool adjustLowerBoundToGrid() const;
|
|
bool adjustUpperBoundToGrid() const;
|
|
|
|
|
|
void setGridPen( const QPen & pen );
|
|
QPen gridPen() const;
|
|
|
|
|
|
void setSubGridVisible( bool visible );
|
|
bool isSubGridVisible() const;
|
|
|
|
void setSubGridPen( const QPen & pen );
|
|
QPen subGridPen() const;
|
|
|
|
|
|
void setZeroLinePen( const QPen & pen );
|
|
QPen zeroLinePen() const;
|
|
|
|
bool operator==( const GridAttributes& ) const;
|
|
inline bool operator!=( const GridAttributes& other ) const { return !operator==(other); }
|
|
|
|
private:
|
|
KDCHART_DECLARE_PRIVATE_BASE_VALUE( GridAttributes )
|
|
}; // End of class GridAttributes
|
|
|
|
}
|
|
|
|
#if !defined(QT_NO_DEBUG_STREAM)
|
|
KDCHART_EXPORT QDebug operator<<(QDebug, const KDChart::GridAttributes& );
|
|
#endif /* QT_NO_DEBUG_STREAM */
|
|
|
|
KDCHART_DECLARE_SWAP_SPECIALISATION( KDChart::GridAttributes )
|
|
Q_DECLARE_METATYPE( KDChart::GridAttributes )
|
|
Q_DECLARE_TYPEINFO( KDChart::GridAttributes, Q_MOVABLE_TYPE );
|
|
|
|
|
|
#endif // KDCHARTGRIDATTRIBUTES_H
|