Commit removed for windows
[ttodo.git] / eedit.cc
bloba5fb0f0151dbf1c84d587c9e536d0a9fda7655a8
1 // Copyright (c) 2006 by Mike Sharov <msharov@users.sourceforge.net>
2 //
3 // eedit.cc
4 //
6 #include "eedit.h"
8 /// Default constructor.
9 CEntryEditDialog::CEntryEditDialog (void)
10 : CDialog (),
11 m_Entry ()
13 AddChild (new CEditBox);
14 AddChild (new CLabel);
15 AddChild (new CLabel);
16 assert (Children().size() == ctrl_Last);
19 void CEntryEditDialog::OnUpdate (void)
21 CDialog::OnUpdate();
22 SetEntry (Document()->CurrentEntry());
25 void CEntryEditDialog::OnResize (rcrect_t wr)
27 CDialog::OnResize (wr);
28 EntryText().OnResize (Rect (1, 1, wr.Width() - 2, 1));
29 CreatedDate().OnResize (Rect (wr.Width() - 26, 3, 25, 1));
30 DoneDate().OnResize (Rect (wr.Width() - 26, 4, 25, 1));
33 void CEntryEditDialog::OnKey (wchar_t key)
35 CDialog::OnKey (key);
36 if (EntryText().Flag (f_OffersFocus)) {
37 if (EntryText().Flag (f_Changed)) {
38 m_Entry.SetText (EntryText().Text());
39 SetFlag (f_Changed);
41 SetFlag (f_OffersFocus);
42 if (Flag (f_Changed))
43 Document()->UpdateCurrentEntry (Entry());
44 else if (Document()->CurrentEntry().Text().empty())
45 Document()->RemoveCurrentEntry();
49 void CEntryEditDialog::OnGainFocus (void)
51 CDialog::OnGainFocus();
52 SetFocus (ctrl_Text);
55 void CEntryEditDialog::SetEntry (rcentry_t e)
57 m_Entry = e;
58 EntryText().SetText (e.Text());
59 CreatedDate().SetText (e.CreatedDateText());
60 DoneDate().SetText (e.Complete() ? e.DoneDateText() : "Active");
61 SetFocus (ctrl_Text);
62 ClearFlag (f_Changed);