From e496f7076db2bb20431a07ed8f1ecab1ff880364 Mon Sep 17 00:00:00 2001 From: starfighter83 Date: Wed, 27 Oct 2010 14:21:02 +0000 Subject: [PATCH] WIP data editor settings [TFS Changeset #79009] --- .../datatype/AbstractDataEditor.cs | 23 ++++++++++++++++--- 1 file changed, 20 insertions(+), 3 deletions(-) diff --git a/umbraco/cms/businesslogic/datatype/AbstractDataEditor.cs b/umbraco/cms/businesslogic/datatype/AbstractDataEditor.cs index d388985cb3..0930f0c435 100644 --- a/umbraco/cms/businesslogic/datatype/AbstractDataEditor.cs +++ b/umbraco/cms/businesslogic/datatype/AbstractDataEditor.cs @@ -14,8 +14,12 @@ namespace umbraco.cms.businesslogic.datatype { private interfaces.IData _baseData; private interfaces.IDataPrevalue _prevalueeditor; - private AbstractDataEditorControl m_editor = new AbstractDataEditorControl(); + private AbstractDataEditorControl m_editor; + public AbstractDataEditor() + { + m_editor = new AbstractDataEditorControl(this); + } /// /// The data editor control is the 'real' IDataEditor control. Hook into the /// OnSave event in your inherited class' constructor and update the @@ -76,13 +80,15 @@ namespace umbraco.cms.businesslogic.datatype get { throw new NotImplementedException(); } } - } public class AbstractDataEditorControl : System.Web.UI.WebControls.WebControl, interfaces.IDataEditor { - public AbstractDataEditorControl() + private cms.businesslogic.datatype.BaseDataType _datatype; + + public AbstractDataEditorControl(cms.businesslogic.datatype.BaseDataType DataType) { + _datatype = DataType; } public System.Web.UI.Control Control @@ -115,6 +121,17 @@ namespace umbraco.cms.businesslogic.datatype protected override void OnInit(EventArgs e) { base.OnInit(e); + + if (_datatype.HasSettings()) + { + DataEditorSettingsStorage ss = new DataEditorSettingsStorage(); + + List> s = ss.GetSettings(_datatype.DataTypeDefinitionId); + ss.Dispose(); + + _datatype.LoadSettings(s); + } + this.Controls.Add(Control); }