Running Manager  1.7
API for Running Manager (https://github.com/HWiman-ICONIC/running-manager)
D:/dev/running-manager/RunningManager.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "Plan.h"
4 #include "Zone.h"
5 #include "Mainframe.h"
6 #include "SettingsPanel.h"
7 #include "TrainingProgramGrid.h"
8 #include "TodayControl.h"
9 #include "ZoneGrid.h"
10 #include "User.h"
11 #include <WeekDay.h>
12 #include <wx/app.h>
13 #include <wx/config.h>
14 #include <wx/wxhtml.h>
15 #include <wx/html/helpwnd.h>
16 #include <map>
17 #include <vector>
18 
22 class MyApp : public wxApp {
23 public:
27  MyApp();
28 
32  virtual ~MyApp();
33 
38  virtual bool OnInit();
39 
44  virtual int OnExit();
45 
51 
58  void UpdateCurrentDate(wxDateTime const& date, wxWindow* sender, int index);
59 
63  void UpdatePulse();
64 
71  std::map<wxString, wxString>& GetPerspectives();
72 private:
73  boost::shared_ptr<wxAuiManager> GetAuiManager() const;
74  bool ReadPerspective(int const& n);
75  void SavePerspectives();
76  void ReadPaces(wxString const& user);
77  void SavePaces(wxString const& user);
78 
79  std::map<wxString, wxString>::iterator FindPerspective(wxString const& s);
80 
81  void OnCreateTrainingProgram(wxCommandEvent& event);
82  void OnSaveCalendar(wxCommandEvent& event);
83  void OnUpdateSaveCalendar(wxUpdateUIEvent& e);
84  void OnUnitKm(wxCommandEvent& event);
85  void OnZone(wxCommandEvent& event);
86  void OnUnitMiles(wxCommandEvent& event);
87  void OnUpdateUnit(wxUpdateUIEvent& e);
88  void OnLoadPerspective(wxCommandEvent& e);
89  void OnDeletePerspective(wxCommandEvent& WXUNUSED(ev));
90  void OnUpdateLoadPerspective(wxUpdateUIEvent& e);
91  void OnSavePerspective(wxCommandEvent& e);
92  void OnSetPace(wxCommandEvent& WXUNUSED(e));
93  void OnCreateUser( wxCommandEvent &WXUNUSED(e) );
94  void OnSelectUser( wxCommandEvent &WXUNUSED(e) );
95  void OnDeleteUser( wxCommandEvent &WXUNUSED(e) );
96 
97  void OnDateSelected(wxCommandEvent& e);
98 
99  Plan* plan;
100  wxString lastDir;
101  MyFrame* frame;
102  int cMajorVersion;
103  int cMinorVersion;
104 
105  ZoneGrid* zoneGrid;
106  wxGrid* trainingTypeGrid;
107  CreateTrainingProgramDialog* trainingDialog;
108 // boost::shared_ptr<wxAuiManager> auiManager;
109  TrainingProgramGrid* trainingProgram;
110  TodayControl* today;
111  WeekDay *weekDayControl;
112  wxHtmlHelpWindow* cpHelpWindow;
113  wxHtmlHelpController* cpHelpController;
114  std::map<wxString, wxString> vPerspectives;
115  wxString lastPerspective;
116  // std::vector<Zone> vZoneMap;
117 
118  wxDECLARE_EVENT_TABLE();
119 };
TodayControl * GetTodayControl() const
Get the panel for todays training.
GUI for zones.
Definition: ZoneGrid.h:13
GUI grid showing training a specific day.
Definition: TodayControl.h:11
The RunningManager application.
Definition: RunningManager.h:22
The main frame for the application.
Definition: Mainframe.h:18
GUI grid for the entire training program.
Definition: TrainingProgramGrid.h:9
std::map< wxString, wxString > & GetPerspectives()
Get a map with all perspectives.
void UpdateCurrentDate(wxDateTime const &date, wxWindow *sender, int index)
Update current date.
MyApp()
Constructor.
virtual bool OnInit()
Initialize application.
void UpdatePulse()
Update lactate threshold heart rate.
A training plan.
Definition: Plan.h:11
GUI for weekdays.
Definition: WeekDay.h:60
virtual ~MyApp()
Destructor.
GUI for creating a training program.
Definition: SettingsPanel.h:14
virtual int OnExit()
Close application.