5 #ifndef _INC_GraphCfg_H_
6 #define _INC_GraphCfg_H_
35 static const INT_PTR k_EMPTY_OBJECT_ID = 0;
40 virtual void Serialize(
CArchive& ar)
override;
63 #define CVT_TIME_TO_BASE(t) (t).get_Val()
64 #define CVT_SPAN_TO_BASE(t) 0
85 m_color = psrc->m_color;
109 m_Font.DeleteObject();
116 if (!m_Font.CreateFontIndirectX(&m_FontCfg))
148 virtual void Serialize(
CArchive& ar);
188 static int sm_iNextUniqueID;
229 m_iUniqueID = ++sm_iNextUniqueID;
243 virtual void Serialize(
CArchive& ar);
258 m_PointType = PointType;
277 DrawDataPoint(dc, x, y, get_PenStyle(), get_PenPointType(), iSize);
280 void DrawPenLabel(CDC& dc,
CRect&
rect,
int iPointWidth,
int iPointSize,
int iOffsetX,
int iOffsetY);
370 void CopyPenCfgs(
const CGraphCfg * pSrc);
387 return m_PenCfg.
Add(PenCfg);
394 void DrawPlotBackground(CDC& dc,
CRect&
rect);
395 virtual void Serialize(
CArchive& ar);
397 bool LoadPlotBackground(
CString & sFilename,
bool fTest);
399 void GetViewRect(
CGraphRect& rectView,
int iActivePen)
const;
400 void SetViewRect(
CGraphRect& rectView,
int iActivePen);
402 bool IsPenColorUsed(
COLORREF Color)
const;
#define GRAYGRAPH_LINK
Definition: GrayGraph.h:19
#define DECLARE_SERIAL(class_name)
Definition: cArchive.h:119
#define ASSERT(exp)
Definition: cDebugAssert.h:87
#define WINHANDLE_NULL
HWND, HPEN, etc are NOT OS Handles. like HWND_DESKTOP. like HANDLEPTR_NULL. This is a WINAPI void* ha...
Definition: cOSHandle.h:23
UINT32 COLORREF
ABGR (high to low bits)
Definition: cVariantData.h:21
Definition: cGraphCfg.h:307
BOOL m_fTimeScaleSync
(NOT WORKING !)Sync all pens to the TimeScale.
Definition: cGraphCfg.h:338
void DelPenCfg(ITERATE_t i)
Definition: cGraphCfg.h:389
BOOL m_fPenUnitVertical
Definition: cGraphCfg.h:343
CGraphPenCfg * GetPenCfg(ITERATE_t i)
Definition: cGraphCfg.h:381
CGraphFont m_TimeScaleFont
Definition: cGraphCfg.h:349
CGraphFont m_PenLabelsFont
Definition: cGraphCfg.h:350
CString m_sPlotBackPic
(NOT WORKING !) Background picture.
Definition: cGraphCfg.h:332
BOOL m_fPenUnitSync
only one scale for all pens.
Definition: cGraphCfg.h:344
BOOL m_fShowLabel
label at the top ?
Definition: cGraphCfg.h:320
const CGraphPenCfg * GetPenCfg(ITERATE_t i) const
Definition: cGraphCfg.h:376
CGraphFont m_PenUnitsFont
Definition: cGraphCfg.h:348
BOOL m_fTimeScaleVertical
Definition: cGraphCfg.h:340
ITERATE_t GetPenCfgQty() const
Definition: cGraphCfg.h:372
int m_eShowPenLabels
list our pens GraphPlotShowPens_Bottom
Definition: cGraphCfg.h:319
CBitmap m_bmpPlotBack
(NOT WORKING !) Loaded on demand.
Definition: cGraphCfg.h:335
BOOL m_bPlotGrid
Background grid.
Definition: cGraphCfg.h:333
ITERATE_t AddPenCfg(CGraphPenCfg &PenCfg)
Definition: cGraphCfg.h:385
COLORREF m_PlotBackColor
Background color.
Definition: cGraphCfg.h:331
COLORREF m_BorderBackColor
Background color.
Definition: cGraphCfg.h:324
GraphPlotBackFormat_Type m_ePlotBackFormat
tiled, centered etc.
Definition: cGraphCfg.h:330
CGraphFont m_LabelFont
Definition: cGraphCfg.h:347
BOOL m_fShowPenUnits
range of the pens value.
Definition: cGraphCfg.h:317
const CGraphCfg & operator=(const CGraphCfg &src)
Definition: cGraphCfg.h:365
BOOL m_fShowTimeScale
time scale.
Definition: cGraphCfg.h:318
int m_iMarginSize
in dialog units.
Definition: cGraphCfg.h:323
CString m_sLabelText
A general label for the whole graph.
Definition: cGraphCfg.h:327
CGraphCfg(const CGraphCfg &src)
Definition: cGraphCfg.h:358
TIMESECD_t m_iTimeScaleGap
(NOT WORKING !) How big may the gap be before we remove it. (seconds)
Definition: cGraphCfg.h:339
Definition: cGraphCfg.h:27
INT_PTR m_objId
User defined value. When we resolve this m_sURL to real data.
Definition: cGraphCfg.h:34
const CGraphDataSource & operator=(const CGraphDataSource &src)
Definition: cGraphCfg.h:41
CString m_sURL
Full URL path for the data object. ("protocol://hostname.com/dataname")
Definition: cGraphCfg.h:32
CGraphDataSource(CGraphDataSource &src)
Definition: cGraphCfg.h:47
Definition: cGraphCfg.h:70
void SetFontChanged()
Definition: cGraphCfg.h:106
const cWinFontCfg & get_FontCfg() const
Definition: cGraphCfg.h:127
COLORREF get_FontColor() const
Definition: cGraphCfg.h:139
int GetHeight() const
Definition: cGraphCfg.h:102
void put_FontColor(COLORREF color)
Definition: cGraphCfg.h:143
cWinFontCfg m_FontCfg
wrapper for _GTN(LOGFONT) used to create m_Font
Definition: cGraphCfg.h:74
CGraphFont(CGraphFont &src)
Definition: cGraphCfg.h:93
CFont * GetFont()
Definition: cGraphCfg.h:111
void put_FontCfg(const cWinFontCfg &fontcfg)
Definition: cGraphCfg.h:131
const CGraphFont & operator=(const CGraphFont &src)
Definition: cGraphCfg.h:121
int GetWidth() const
Definition: cGraphCfg.h:98
Definition: cGraphCfg.h:183
GraphVal_t m_valMinDisp
Definition: cGraphCfg.h:214
void put_PenStyle(GraphPenStyle_Type style)
Definition: cGraphCfg.h:245
BOOL m_bShowExp
show the value with an exponent
Definition: cGraphCfg.h:205
CGraphTime m_TimeStop
Definition: cGraphCfg.h:212
CString m_sUnits
Units we should display if this is the primary pen.
Definition: cGraphCfg.h:202
GraphVal_t m_valMidDisp
a median line ?
Definition: cGraphCfg.h:216
BOOL m_bShowAvg
show the calculated avg line.
Definition: cGraphCfg.h:206
GraphPenStyle_Type get_PenStyle() const
Definition: cGraphCfg.h:250
void SetNewUniqueID()
Definition: cGraphCfg.h:227
GraphPenPoint_Type get_PenPointType() const
Definition: cGraphCfg.h:260
int GetUniqueID() const
Definition: cGraphCfg.h:231
const CGraphPenCfg & operator=(const CGraphPenCfg &src)
Definition: cGraphCfg.h:235
void DrawDataPoint(CDC &dc, int x, int y, int iSize)
Definition: cGraphCfg.h:275
void put_PenColor(COLORREF color)
Definition: cGraphCfg.h:269
CGraphPenCfg(CGraphPenCfg &src)
Definition: cGraphCfg.h:283
int m_iTmpDrawWidth
NOT STORED - last draw width.
Definition: cGraphCfg.h:218
COLORREF get_PenColor() const
Definition: cGraphCfg.h:265
CGraphDataSource m_Src
Definition: cGraphCfg.h:199
BOOL m_bShowUnits
Definition: cGraphCfg.h:201
BOOL m_fMasked
don't display the data at all.
Definition: cGraphCfg.h:204
CString m_sLabel
free descriptive name for the pen.
Definition: cGraphCfg.h:196
CGraphTime m_TimeStart
Definition: cGraphCfg.h:211
void put_PenPointType(GraphPenPoint_Type PointType)
Definition: cGraphCfg.h:255
GraphVal_t m_valMaxDisp
Definition: cGraphCfg.h:215
Definition: WinTypes.h:168
bool IsSameFont(const SUPER_t &rFont) const noexcept
Definition: WinTypes.h:201
int get_FontWidthA() const noexcept
Definition: WinTypes.h:220
int get_FontSizeA() const noexcept
Definition: WinTypes.h:210
TYPE & ElementAt(ITERATE_t nIndex)
Definition: cArray.h:167
ITERATE_t Add(ARG_TYPE newElement)
Definition: cArray.h:199
ITERATE_t GetSize() const noexcept
Definition: cArray.h:137
void RemoveAt(ITERATE_t nIndex)
Definition: cArray.h:367
Definition: cArchive.h:20
Definition: cTimeFile.h:31
Definition: cTimeFile.h:167
Definition: GrayGraph.cpp:29
GraphPenPoint_Type
Definition: cGraphCfg.h:168
@ GraphPenPoint_Square
Definition: cGraphCfg.h:173
@ GraphPenPoint_Triangle
Definition: cGraphCfg.h:174
@ GraphPenPoint_Plus
Definition: cGraphCfg.h:176
@ GraphPenPoint_X
Definition: cGraphCfg.h:175
@ GraphPenPoint_None
Definition: cGraphCfg.h:171
@ GraphPenPoint_Diamond
Definition: cGraphCfg.h:177
@ GraphPenPoint_Dot
Definition: cGraphCfg.h:172
@ GraphPenPoint_QTY
Definition: cGraphCfg.h:179
@ GraphPenPoint_InvertTri
Definition: cGraphCfg.h:178
double GraphVal_t
this is the value type we are plotting. Must also be able to hold GraphTime_t.
Definition: cGraphCfg.h:66
GraphPlotShowPens_Type
Definition: cGraphCfg.h:299
@ GraphPlotShowPens_Bottom
Definition: cGraphCfg.h:302
@ GraphPlotShowPens_Right
Definition: cGraphCfg.h:303
@ GraphPlotShowPens_None
Definition: cGraphCfg.h:301
cRectT< GraphVal_t > CGraphRect
x/y rect or time/value rect.
Definition: cGraphCfg.h:67
cTimeSpanFile CGraphTimeSpan
Definition: cGraphCfg.h:61
cTimeFile CGraphTime
Definition: cGraphCfg.h:60
GraphPenStyle_Type
Definition: cGraphCfg.h:155
@ GraphPenStyle_VLine
Definition: cGraphCfg.h:161
@ GraphPenStyle_Points
Definition: cGraphCfg.h:163
@ GraphPenStyle_Bar
Definition: cGraphCfg.h:160
@ GraphPenStyle_QTY
Definition: cGraphCfg.h:164
@ GraphPenStyle_HLine
Definition: cGraphCfg.h:162
@ GraphPenStyle_LineFill
Definition: cGraphCfg.h:159
@ GraphPenStyle_Line
Definition: cGraphCfg.h:158
FILETIME_t GraphTime_t
Definition: cGraphCfg.h:59
GraphPlotBackFormat_Type
Definition: cGraphCfg.h:291
@ GraphPlotBackFormat_TopLeft
Definition: cGraphCfg.h:293
@ GraphPlotBackFormat_Tile
Definition: cGraphCfg.h:295
@ GraphPlotBackFormat_Center
Definition: cGraphCfg.h:294
interface const RECTQ_t & rect
Definition: cQuadtree.h:44
int ITERATE_t
like size_t but signed
Definition: Index.h:28
int TIMESECD_t
signed delta seconds. like TIMESEC_t. redefined in TimeUnits.h.
Definition: cTimeSys.h:19
UINT64 FILETIME_t
replace FILETIME for 64 bit math. Absolute 64-bit 100-nanosecond since January 1, 1601 GMT
Definition: cTimeFile.h:28
Definition: cDebugAssert.h:29