From 3a1bf865b6c1b6b7c096eaf6dab91a465319488a Mon Sep 17 00:00:00 2001 From: Ian C Date: Mon, 4 Apr 2005 00:52:23 +0000 Subject: Added DataX --- src/control.cpp | 38 +++++++++++++++++++++++++++++++++++++- 1 file changed, 37 insertions(+), 1 deletion(-) (limited to 'src/control.cpp') diff --git a/src/control.cpp b/src/control.cpp index a8a221f..fa8e2e7 100644 --- a/src/control.cpp +++ b/src/control.cpp @@ -21,6 +21,7 @@ #include "w32dlib/window.h" #include "w32dlib/control.h" #include "w32dlib/dialog.h" +#include "w32dlib/datax.h" namespace W32DLib { @@ -28,10 +29,11 @@ namespace W32DLib // ------------------------------------------------------------ // -Control::Control(Dialog *parent, int resource_id) : +Control::Control(Dialog *parent, int resource_id, DataX *datax) : Window(), m_parent(parent), m_resid(resource_id), + m_data(datax), m_cblist() { m_parent->AddControl(this); @@ -86,6 +88,40 @@ BOOL Control::ProcessMessage(UINT msg, WPARAM wp, LPARAM lp) } +// ------------------------------------------------------------ +// +void Control::DoDataExchange(bool set) +{ + if (m_data) + { + if (set) + { + switch(m_data->Type()) + { + case DataX::eString: + SetText(m_data->Str()); + break; + + default: + break; + } + } + else + { + switch(m_data->Type()) + { + case DataX::eString: + m_data->Set(GetText()); + break; + + default: + break; + } + } + } +} + + // ------------------------------------------------------------ // void Control::AddCallback(UINT msg, -- cgit v1.2.3