- wxLayoutConstraints *c;
-
- wxStaticText *label = new wxStaticText(this, -1, _("unknown"));
- c = new wxLayoutConstraints;
-
- // VZ: I like the labels be centered - if the others don't mind, you may
- // remove "#ifdef __WXMSW__" and use it for all ports
-#if defined(__WXMSW__) || defined(__WXPM__) || defined(__WXMAC__)
- c->left.SameAs(this, wxCentreX, LAYOUT_X_MARGIN);
-#else // !MSW
- c->right.SameAs(this, wxRight, 2*LAYOUT_X_MARGIN);
-#endif // MSW/!MSW
- c->top.Below(*lastWindow, LAYOUT_Y_MARGIN);
- c->width.AsIs();
- c->height.AsIs();
- label->SetConstraints(c);
-
- wxStaticText *dummy = new wxStaticText(this, -1, text);
- c = new wxLayoutConstraints;
- c->right.LeftOf(label);
- c->top.SameAs(label, wxTop, 0);
- c->width.AsIs();
- c->height.AsIs();
- dummy->SetConstraints(c);
-
- *lastWindow = label;
+ wxBoxSizer *locsizer = new wxBoxSizer(wxLARGESMALL(wxHORIZONTAL,wxVERTICAL));
+
+ wxStaticText *dummy = new wxStaticText(this, wxID_ANY, text);
+ wxStaticText *label = new wxStaticText(this, wxID_ANY, _("unknown"));
+
+ // select placement most native or nice on target GUI
+#if defined(__SMARTPHONE__)
+ // label and time to the left in two rows
+ locsizer->Add(dummy, 1, wxALIGN_LEFT);
+ locsizer->Add(label, 1, wxALIGN_LEFT);
+ sizer->Add(locsizer, 0, wxALIGN_LEFT | wxTOP | wxLEFT, LAYOUT_MARGIN);
+#elif defined(__WXMSW__) || defined(__WXPM__) || defined(__WXMAC__) || defined(__WXGTK20__)
+ // label and time centered in one row
+ locsizer->Add(dummy, 1, wxLARGESMALL(wxALIGN_RIGHT,wxALIGN_LEFT));
+ locsizer->Add(label, 1, wxALIGN_LEFT | wxLEFT, LAYOUT_MARGIN);
+ sizer->Add(locsizer, 0, wxALIGN_CENTER_HORIZONTAL | wxTOP, LAYOUT_MARGIN);
+#else
+ // label and time to the right in one row
+ sizer->Add(locsizer, 0, wxALIGN_RIGHT | wxRIGHT | wxTOP, LAYOUT_MARGIN);
+ locsizer->Add(dummy);
+ locsizer->Add(label, 0, wxLEFT, LAYOUT_MARGIN);
+#endif