|
/*
*
* ChartBarSerie.h
*
* Written by C�dric Moonen (cedric_moonen@hotmail.com)
*
*
*
* This code may be used for any non-commercial and commercial purposes in a compiled form.
* The code may be redistributed as long as it remains unmodified and providing that the
* author name and this disclaimer remain intact. The sources can be modified WITH the author
* consent only.
*
* This code is provided without any garanties. I cannot be held responsible for the damage or
* the loss of time it causes. Use it at your own risks
*
* An e-mail to notify me that you are using this code is appreciated also.
*
*
*/
#pragma once
#include "ChartSerie.h"
#include "ChartGradient.h"
#include <list>
class CChartBarSerie : public CChartSerie
{
public:
CChartBarSerie(CChartCtrl* pParent);
~CChartBarSerie();
void SetHorizontal(bool bHorizontal);
bool GetHorizontal() const { return m_bHorizontal; }
void SetBorderColor(COLORREF BorderColor);
COLORREF GetBorderColor() const { return m_BorderColor; }
void SetBorderWidth(int Width);
int GetBorderWidth() const { return m_iBorderWidth; }
void SetBarWidth(int Width);
int GetBarWidth() const { return m_iBarWidth; }
void SetGroupId(unsigned GroupId);
unsigned GetGroupId() const { return m_uGroupId; }
void ShowGradient(bool bShow);
void SetGradient(COLORREF GradientColor, EGradientType GradientType);
static void SetInterSpace(int Space) { m_iInterSpace = Space; }
static int GetInterSpace() { return m_iInterSpace; }
private:
void DrawLegend(CDC* pDC, const CRect& rectBitmap) const;
void Draw(CDC* pDC);
void DrawAll(CDC *pDC);
void DrawBar(CDC* pDC, CBrush* pFillBrush, CBrush* pBorderBrush,
int XPos, int YPos);
int GetSerieStartPos();
typedef std::list<CChartBarSerie*> TBarSeriesList;
static int m_iInterSpace; // Space between two series of the same group.
static TBarSeriesList m_lstBarSeries;
bool m_bHorizontal;
// Specifies to which group this series belongs to. Series in the same group are
// 'stacked' next to each other.
unsigned m_uGroupId;
int m_iBarWidth;
int m_iBorderWidth;
COLORREF m_BorderColor;
bool m_bGradient;
COLORREF m_GradientColor;
EGradientType m_GradientType;
};
|
By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.
If a file you wish to view isn't highlighted, and is a text file (not binary), please
let us know and we'll add colourisation support for it.
I am a 29 years old guy and I live with my girlfriend in Hoegaarden, little city from Belgium well known for its white beer
.
I studied as an industrial engineer in electronics but I oriented myself more towards software development when I started to work.
Currently I am working in a research centre in mechatronica. I mainly develop in C++ but I also do a bit of Java.
When I have so spare time, I like to read (mainly fantasy) and play electric guitar.