25 #include <wx/translation.h>
29 if (timeSpan.IsNull())
33 if (timeSpan.GetHours() >= 1)
36 return timeSpan.Format(_(
"%H:%M h"));
41 if (timeSpan.GetSeconds() > 60)
44 return timeSpan.Format(_(
"%M:%S min"));
48 if (timeSpan.GetSeconds() < 1)
56 return timeSpan.Format(_(
"%S s"));
63 #include <wx/config.h>
68 wxConfigBase* config = wxConfigBase::Get();
72 wxDisplaySize(&dx, &dy);
78 const int w = config->Read(wxT(
"/") + basename + wxT(
"/width"), -1l);
79 const int h = config->Read(wxT(
"/") + basename + wxT(
"/height"), -1l);
82 frame->SetClientSize(w, h);
89 const int x = config->Read(wxT(
"/") + basename + wxT(
"/positionX"), -1l);
90 const int y = config->Read(wxT(
"/") + basename + wxT(
"/positionY"), -1l);
91 if (y >= 0 && x >= 0 && x < dx && y < dy)
100 const bool maximized = config->Read(wxT(
"/") + basename + wxT(
"/maximized"), 0l) != 0;
108 const int w = config->Read(wxT(
"/") + basename + wxT(
"/width"), -1l);
109 const int h = config->Read(wxT(
"/") + basename + wxT(
"/height"), -1l);
110 if (w > 0 && w <= dx)
112 frame->SetClientSize(w, h);
119 const int x = config->Read(wxT(
"/") + basename + wxT(
"/positionX"), -1l);
120 const int y = config->Read(wxT(
"/") + basename + wxT(
"/positionY"), -1l);
121 if (y >= 0 && x >= 0 && x < dx && y < dy)
136 wxConfigBase* config = wxConfigBase::Get();
141 wxSize sz = frame->GetClientSize();
142 config->Write(wxT(
"/") + basename + wxT(
"/width"), sz.GetWidth());
143 config->Write(wxT(
"/") + basename + wxT(
"/height"), sz.GetHeight());
144 wxPoint ps = frame->GetPosition();
145 config->Write(wxT(
"/") + basename + wxT(
"/positionX"), ps.x);
146 config->Write(wxT(
"/") + basename + wxT(
"/positionY"), ps.y);
147 config->Write(wxT(
"/") + basename + wxT(
"/maximized"), 0);
149 if ((!frame->IsMaximized()) && (!frame->IsIconized()))
151 const wxSize sz = frame->GetClientSize();
152 config->Write(wxT(
"/") + basename + wxT(
"/width"), sz.GetWidth());
153 config->Write(wxT(
"/") + basename + wxT(
"/height"), sz.GetHeight());
154 wxPoint ps = frame->GetPosition();
155 config->Write(wxT(
"/") + basename + wxT(
"/positionX"), ps.x);
156 config->Write(wxT(
"/") + basename + wxT(
"/positionY"), ps.y);
157 config->Write(wxT(
"/") + basename + wxT(
"/maximized"), 0);
161 if (frame->IsMaximized())
163 config->Write(wxT(
"/") + basename + wxT(
"/maximized"), 1l);
WXIMPEX wxString GetFormattedTimeSpan(const wxTimeSpan &timeSpan)
void StoreFramePosition(wxTopLevelWindow *frame, const wxString &basename)
Store window size and position in configfile/registry.
void RestoreFramePosition(wxTopLevelWindow *frame, const wxString &basename)
Restore window size and position from configfile/registry.