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

Pie chart for panel #3 using wxCharts. More...

#include <yatishPlot.h>

Collaboration diagram for yatishChartPie:
Collaboration graph
[legend]

Public Member Functions

 yatishChartPie (wxWindow *, yatishDBsqlite *)
 
void PlotData (ClusterType, AggregateType)
 Plotting interface for yatishFrame: More...
 
wxString TotalFormatted ()
 
- 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)
 

Private Member Functions

void ResetChart ()
 

Private Attributes

wxBoxSizer * panelSizer
 
wxPieChartData::ptr chartData
 
wxVector< wxChartSliceData > slices
 
wxPieChartCtrl * pieChartCtrl
 
wxChartsLegendCtrl * legendCtrl
 
bool pieChartON
 
bool legendON
 

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...
 
virtual void SetRangeX ()
 
virtual void ClearCurves ()
 
- 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

Pie chart for panel #3 using wxCharts.

Definition at line 160 of file yatishPlot.h.

Constructor & Destructor Documentation

◆ yatishChartPie()

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

Definition at line 618 of file yatishPlot.cpp.

Member Function Documentation

◆ PlotData()

void yatishChartPie::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 626 of file yatishPlot.cpp.

◆ ResetChart()

void yatishChartPie::ResetChart ( )
private

Definition at line 646 of file yatishPlot.cpp.

◆ TotalFormatted()

wxString yatishChartPie::TotalFormatted ( )
inlinevirtual

Reimplemented from yatishPlot.

Definition at line 164 of file yatishPlot.h.

Member Data Documentation

◆ chartData

wxPieChartData::ptr yatishChartPie::chartData
private

Definition at line 167 of file yatishPlot.h.

◆ legendCtrl

wxChartsLegendCtrl* yatishChartPie::legendCtrl
private

Definition at line 170 of file yatishPlot.h.

◆ legendON

bool yatishChartPie::legendON
private

Definition at line 171 of file yatishPlot.h.

◆ panelSizer

wxBoxSizer* yatishChartPie::panelSizer
private

Definition at line 166 of file yatishPlot.h.

◆ pieChartCtrl

wxPieChartCtrl* yatishChartPie::pieChartCtrl
private

Definition at line 169 of file yatishPlot.h.

◆ pieChartON

bool yatishChartPie::pieChartON
private

Definition at line 171 of file yatishPlot.h.

◆ slices

wxVector<wxChartSliceData> yatishChartPie::slices
private

Definition at line 168 of file yatishPlot.h.


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