summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/m_gui.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/include/m_gui.h b/include/m_gui.h
index 04803efad4..c8b5383b73 100644
--- a/include/m_gui.h
+++ b/include/m_gui.h
@@ -331,6 +331,25 @@ public:
__forceinline void SaveText(TCHAR*) {}
};
+template<>
+class CMOptionLink<TCHAR*> : public CDataLink
+{
+private:
+ typedef TCHAR *T;
+ CMOption<T> *m_option;
+
+public:
+ __forceinline CMOptionLink(CMOption<T> &option) :
+ CDataLink(DBVT_TCHAR), m_option(&option)
+ {}
+
+ __forceinline DWORD LoadInt() { return 0; }
+ __forceinline void SaveInt(DWORD) { }
+
+ __forceinline TCHAR* LoadText() { return *m_option; }
+ __forceinline void SaveText(TCHAR *value) { *m_option = value; }
+};
+
/////////////////////////////////////////////////////////////////////////////////////////
// CDlgBase - base dialog class