// Copyright 2005 by Omar Al Zabir. All rights are reserved.
//
// If you like this code then feel free to go ahead and use it.
// The only thing I ask is that you don't remove or alter my copyright notice.
//
// Your use of this software is entirely at your own risk. I make no claims or
// warrantees about the reliability or fitness of this code for any particular purpose.
// If you make changes or additions to this code please mark your code as being yours.
//
// website http://www.oazabir.com, email OmarAlZabir@gmail.com, msn oazabir@hotmail.com
using System;
using System.IO;
using System.Drawing;
using System.Drawing.Design;
using System.ComponentModel;
using System.Windows.Forms;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using System.Reflection;
using System.Diagnostics;
namespace RSSCommon.PropertyEditor{
using Helper;
/// <summary>
/// Summary description for UIOutlookFolderPickerEditor.
/// </summary>
public class UIOutlookFolderPickerEditor : UITypeEditor
{
public UIOutlookFolderPickerEditor()
{
//
// TODO: Add constructor logic here
//
}
[RefreshProperties(RefreshProperties.All)]
public override object EditValue(ITypeDescriptorContext context, IServiceProvider provider, object propertyValue)
{
if (((context == null) || (provider == null)) || (context.Instance == null))
{
return base.EditValue(provider, RuntimeHelpers.GetObjectValue(propertyValue));
}
string newValue = OutlookHelper.SelectFolderPath();
if( null != newValue )
propertyValue = newValue;
return propertyValue;
}
public override UITypeEditorEditStyle GetEditStyle(ITypeDescriptorContext context)
{
if ((context != null) && (context.Instance != null))
{
return UITypeEditorEditStyle.Modal;
}
return UITypeEditorEditStyle.None;
}
}
}
|