YATiSh
Yet Another TIme SHeet
Public Member Functions | Private Member Functions | Private Attributes | List of all members
yatishFreeSerie Class Reference

Time series for panel #3 using wxFreeChart. More...

#include <yatishPlot.h>

Collaboration diagram for yatishFreeSerie:
Collaboration graph
[legend]

Public Member Functions

 yatishFreeSerie (wxWindow *, yatishDBsqlite *)
 
void PlotData (ClusterType, AggregateType)
 Plotting interface for yatishFrame: More...
 
- Public Member Functions inherited from yatishPlot
 yatishPlot (yatishDBsqlite *)
 The constructor of yatishPlot: More...
 
virtual ~yatishPlot ()
 
void SetFirstDay (const wxDateTime &dt)
 
void SetLastDay (const wxDateTime &dt)
 
virtual wxString TotalFormatted ()
 

Private Member Functions

void SetRangeX ()
 
void ClearCurves ()
 

Private Attributes

XYSimpleDataset * dataset
 
XYSerie * series [3]
 
XYLineRenderer * renderer
 
XYPlot * plot
 
NumberAxis * leftAxis
 
NumberAxis * bottomAxis
 
Legend * legend
 
Chart * chart
 

Additional Inherited Members

- Protected Member Functions inherited from yatishPlot
void GetWeekRange (unsigned int &, unsigned int &)
 Computes the week numbers corresponding to members firstDay and lastDay. More...
 
void ComputePie (ClusterType)
 Fills member pieData with data for a pie chart with 4 sectors. More...
 
wxString TotalFormattedFromPie ()
 Creates a wxString with the total hours in the current pie chart. More...
 
bool SelectData (ClusterType, AggregateType)
 Updates vector_Y[3] if need be (for the plotting libraries). More...
 
- Protected Attributes inherited from yatishPlot
Map4pie pieData
 total durations (between firstDay and lastDay), in minutes More...
 
wxDateTime firstDay
 
wxDateTime lastDay
 
AggregateType formerAggregate
 
- Static Protected Attributes inherited from yatishPlot
static ProcessedData data
 weekly times series: various aggregates and clustered sums More...
 
static string legends [3]
 names of the 3 weekly clustered sums, for the current clustering scheme More...
 
static vector< double > vector_X
 epoch time More...
 
static vector< double > vector_X2
 week number, counted from the first year in the time series More...
 
static vector< double > vector_Y [3]
 user selected data More...
 

Detailed Description

Time series for panel #3 using wxFreeChart.

Note
Could not use TimeSeriesDataset because it lacks a AddSerie() (and Legend management), hence a XYSimpleDataset with a home-baked week number (increasing from year to year).

Definition at line 97 of file yatishPlot.h.

Constructor & Destructor Documentation

◆ yatishFreeSerie()

yatishFreeSerie::yatishFreeSerie ( wxWindow *  p,
yatishDBsqlite pdb 
)

Definition at line 412 of file yatishPlot.cpp.

Member Function Documentation

◆ ClearCurves()

void yatishFreeSerie::ClearCurves ( )
privatevirtual

Reimplemented from yatishPlot.

Definition at line 481 of file yatishPlot.cpp.

◆ PlotData()

void yatishFreeSerie::PlotData ( ClusterType  ,
AggregateType   
)
virtual

Plotting interface for yatishFrame:

  • computes data that depends on the time window;
  • updates the plot selected by the user (in controls of panel #3).
Parameters
[in]clustersthe clusters to compute and show; default: none
[in]aggregateif clusters are not used, the aggregate to show; default: hoursTotal
Note
PlotData() is supposed to be called when something has changed (at least the time window).
Todo:

runtime instability when clusters == tools or when switching back from pie chart (debug mode), although no problem was debugger detected in ComputePie() nor ClusteredSeries()

default plot (timeSeries/hoursTotal/none) sometimes empty when changing library in settings (need to play with aggregate choice to recover it)

Implements yatishPlot.

Definition at line 450 of file yatishPlot.cpp.

◆ SetRangeX()

void yatishFreeSerie::SetRangeX ( )
privatevirtual

Reimplemented from yatishPlot.

Definition at line 474 of file yatishPlot.cpp.

Member Data Documentation

◆ bottomAxis

NumberAxis * yatishFreeSerie::bottomAxis
private

Definition at line 106 of file yatishPlot.h.

◆ chart

Chart* yatishFreeSerie::chart
private

Definition at line 108 of file yatishPlot.h.

◆ dataset

XYSimpleDataset* yatishFreeSerie::dataset
private

Definition at line 102 of file yatishPlot.h.

◆ leftAxis

NumberAxis* yatishFreeSerie::leftAxis
private

Definition at line 106 of file yatishPlot.h.

◆ legend

Legend* yatishFreeSerie::legend
private

Definition at line 107 of file yatishPlot.h.

◆ plot

XYPlot* yatishFreeSerie::plot
private

Definition at line 105 of file yatishPlot.h.

◆ renderer

XYLineRenderer* yatishFreeSerie::renderer
private

Definition at line 104 of file yatishPlot.h.

◆ series

XYSerie* yatishFreeSerie::series[3]
private

Definition at line 103 of file yatishPlot.h.


The documentation for this class was generated from the following files: