YATISH
Yet Another TIme SHeet
/home/nicolas/sources/yatish/yatishSettings.cpp
Go to the documentation of this file.
1 #include "wx_pch.h"
2 #include "yatishSettings.h"
3 
5  wxConfigBase * config = wxConfigBase::Get (false);
6  config->SetPath ("/yatish");
7  config->Read ("log2text", &log2text, false);
8  config->Read ("limitRow", &limitRow, false);
9  long tmp;
10  config->Read ("rowLimit", &tmp, 100l);
11  rowLimit = (int) tmp;
12  config->Read ("lib", &tmp, 0l);
13  lib = (ChartLib) tmp;
14 }
15 
17  wxConfigBase * config = wxConfigBase::Get (false);
18  config->SetPath ("/yatish");
19  config->Write ("log2text", log2text);
20  config->Write ("limitRow", limitRow);
21  config->Write ("rowLimit", (long) rowLimit);
22  config->Write ("lib", (long) lib);
23 }
24 
25 #ifndef WX_PRECOMP
26  //(*InternalHeadersPCH(yatishSettings)
27  #include <wx/string.h>
28  #include <wx/intl.h>
29  //*)
30 #endif
31 //(*InternalHeaders(yatishSettings)
32 //*)
33 
34 //(*IdInit(yatishSettings)
35 const long yatishSettings::idCheckBoxLog = wxNewId();
36 const long yatishSettings::idCheckBoxLimit = wxNewId();
37 const long yatishSettings::idSpinCtrlLimit = wxNewId();
38 const long yatishSettings::idChoiceLib = wxNewId();
39 //*)
40 
41 BEGIN_EVENT_TABLE (yatishSettings, wxDialog)
42  //(*EventTable(yatishSettings)
43  //*)
44 END_EVENT_TABLE()
45 
47  //(*Initialize(yatishSettings)
48  wxFlexGridSizer* FlexGridSizer1;
49  wxButton* buttonOK;
50  wxStaticText* StaticText1;
51  wxStaticText* StaticText3;
52  wxStaticText* StaticText4;
53  wxButton* buttonCancel;
54  wxStaticText* StaticText2;
55 
56  Create(0, wxID_ANY, _("Yatish settings"), wxDefaultPosition, wxDefaultSize, wxDEFAULT_DIALOG_STYLE, _T("wxID_ANY"));
57  FlexGridSizer1 = new wxFlexGridSizer(5, 2, 0, 0);
58  StaticText1 = new wxStaticText(this, wxID_ANY, _("Logging:"), wxDefaultPosition, wxDefaultSize, 0, _T("wxID_ANY"));
59  FlexGridSizer1->Add(StaticText1, 1, wxALL|wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL, 5);
60  checkBoxLog = new wxCheckBox(this, idCheckBoxLog, _("main frame"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("idCheckBoxLog"));
61  checkBoxLog->SetValue(false);
62  FlexGridSizer1->Add(checkBoxLog, 1, wxALL|wxALIGN_LEFT|wxALIGN_CENTER_VERTICAL, 5);
63  StaticText2 = new wxStaticText(this, wxID_ANY, _("Timeslot:"), wxDefaultPosition, wxDefaultSize, 0, _T("wxID_ANY"));
64  FlexGridSizer1->Add(StaticText2, 1, wxALL|wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL, 5);
65  checkBoxLimit = new wxCheckBox(this, idCheckBoxLimit, _("limit list"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("idCheckBoxLimit"));
66  checkBoxLimit->SetValue(false);
67  FlexGridSizer1->Add(checkBoxLimit, 1, wxALL|wxALIGN_LEFT|wxALIGN_CENTER_VERTICAL, 5);
68  StaticText3 = new wxStaticText(this, wxID_ANY, _("Row limit:"), wxDefaultPosition, wxDefaultSize, 0, _T("wxID_ANY"));
69  FlexGridSizer1->Add(StaticText3, 1, wxALL|wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL, 5);
70  spinCtrlLimit = new wxSpinCtrl(this, idSpinCtrlLimit, _T("100"), wxDefaultPosition, wxDefaultSize, 0, 10, 1000, 100, _T("idSpinCtrlLimit"));
71  spinCtrlLimit->SetValue(_T("100"));
72  FlexGridSizer1->Add(spinCtrlLimit, 1, wxALL|wxALIGN_LEFT|wxALIGN_CENTER_VERTICAL, 5);
73  StaticText4 = new wxStaticText(this, wxID_ANY, _("Charts:"), wxDefaultPosition, wxDefaultSize, 0, _T("wxID_ANY"));
74  FlexGridSizer1->Add(StaticText4, 1, wxALL|wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL, 5);
75  choiceLib = new wxChoice(this, idChoiceLib, wxDefaultPosition, wxDefaultSize, 0, 0, 0, wxDefaultValidator, _T("idChoiceLib"));
76  choiceLib->Append(_("wxFreeChart"));
77  choiceLib->Append(_("wxCharts"));
78  choiceLib->Disable();
79  FlexGridSizer1->Add(choiceLib, 1, wxALL|wxALIGN_LEFT|wxALIGN_CENTER_VERTICAL, 5);
80  buttonCancel = new wxButton(this, wxID_CANCEL, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("wxID_CANCEL"));
81  FlexGridSizer1->Add(buttonCancel, 1, wxALL|wxALIGN_LEFT|wxALIGN_CENTER_VERTICAL, 5);
82  buttonOK = new wxButton(this, wxID_OK, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("wxID_OK"));
83  FlexGridSizer1->Add(buttonOK, 1, wxALL|wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL, 5);
84  SetSizer(FlexGridSizer1);
85  FlexGridSizer1->Fit(this);
86  FlexGridSizer1->SetSizeHints(this);
87 
88  Connect(idCheckBoxLimit,wxEVT_COMMAND_CHECKBOX_CLICKED,(wxObjectEventFunction)&yatishSettings::OnCheckBoxLimitClick);
89  //*)
90  checkBoxLog->SetValidator ( wxGenericValidator (&log2text) );
91  checkBoxLimit->SetValidator ( wxGenericValidator (&limitRow) );
92  spinCtrlLimit->SetValidator ( wxGenericValidator (&rowLimit) );
93  choiceLib->SetValidator ( wxGenericValidator (&lib) );
94  Fit(); SetMaxSize ( GetSize() );
95 }
96 
98  //(*Destroy(yatishSettings)
99  //*)
100 }
101 
103  log2text = s.log2text;
104  limitRow = s.limitRow;
105  rowLimit = s.rowLimit;
106  lib = (int) s.lib;
107  spinCtrlLimit->Enable (limitRow);
108 }
109 
111  s.log2text = log2text;
112  s.limitRow = limitRow;
113  s.rowLimit = rowLimit;
114  s.lib = (ChartLib) lib;
115 }
116 
117 void yatishSettings::OnCheckBoxLimitClick(wxCommandEvent& event) {
118  spinCtrlLimit->Enable ( checkBoxLimit->IsChecked() );
119 }
static const long idCheckBoxLimit
ChartLib
static const long idCheckBoxLog
void Get(Settings &)
ChartLib lib
static const long idSpinCtrlLimit
static const long idChoiceLib
bool log2text
bool limitRow
void Set(Settings &)
void OnCheckBoxLimitClick(wxCommandEvent &event)