|
|
|
|
using ESRI.ArcGIS.Carto;
|
|
|
|
|
using ESRI.ArcGIS.Controls;
|
|
|
|
|
using KGIS.Framework.AE.ExtensionMethod;
|
|
|
|
|
using KGIS.Framework.Commands;
|
|
|
|
|
using KGIS.Framework.Core.Attributes;
|
|
|
|
|
using KGIS.Framework.Maps;
|
|
|
|
|
using KGIS.Framework.Platform;
|
|
|
|
|
using KGIS.Framework.Utils;
|
|
|
|
|
using KGIS.Framework.Utils.Helper;
|
|
|
|
|
using KGIS.Plugin.LayerProperty.Interface;
|
|
|
|
|
using KGIS.Plugin.LayerProperty.View;
|
|
|
|
|
using System;
|
|
|
|
|
|
|
|
|
|
namespace KGIS.Plugin.LayerProperty.Commands
|
|
|
|
|
{
|
|
|
|
|
//[PathAttribute("KGIS.Plugin.LayerProperty.Commands.CmdLayerProperty")]
|
|
|
|
|
public class CmdLayerProperty : BaseMapMenuCommand
|
|
|
|
|
{
|
|
|
|
|
private IDataCatalogService _DataCatalogService;
|
|
|
|
|
private ILayerPropertiesSet frm;
|
|
|
|
|
public override void OnClick()
|
|
|
|
|
{
|
|
|
|
|
try
|
|
|
|
|
{
|
|
|
|
|
//KGIS.Framework.Common.Utils.LicenseManager.License();
|
|
|
|
|
object layer = m_hookHelper.GetCustomProperty();
|
|
|
|
|
if (layer is ILayer)
|
|
|
|
|
{
|
|
|
|
|
frm.ApplyLayerPropertiesSet += delegate
|
|
|
|
|
{
|
|
|
|
|
if (_DataCatalogService == null)
|
|
|
|
|
_DataCatalogService = UIShell.OSGi.BundleRuntime.Instance.GetFirstOrDefaultService<IDataCatalogService>();
|
|
|
|
|
if (_DataCatalogService != null)
|
|
|
|
|
{
|
|
|
|
|
_DataCatalogService.UpdateLayer(layer);
|
|
|
|
|
}
|
|
|
|
|
if (m_hookHelper.ActiveView != null)
|
|
|
|
|
{
|
|
|
|
|
//调用此函数使TOC能够被update
|
|
|
|
|
m_hookHelper.ActiveView.ContentsChanged();
|
|
|
|
|
m_hookHelper.ActiveView.PartialRefresh(esriViewDrawPhase.esriViewBackground | esriViewDrawPhase.esriViewForeground |
|
|
|
|
|
esriViewDrawPhase.esriViewGeography | esriViewDrawPhase.esriViewGeoSelection |
|
|
|
|
|
esriViewDrawPhase.esriViewGraphics | esriViewDrawPhase.esriViewGraphicSelection, null, m_hookHelper.ActiveView.Extent);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
if (frm.InitForm(layer as ILayer))
|
|
|
|
|
frm.ShowDialog(ExtensionShowWindow.MainWinForm);
|
|
|
|
|
//Platform.Instance.SendMsg(new KGIS.Framework.Utils.Interface.NotifyMsgPackage() { MsgType = "SaveProject" });
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
catch (Exception ex)
|
|
|
|
|
{
|
|
|
|
|
LogAPI.Debug("加载图层属性时发生异常,异常信息如下:");
|
|
|
|
|
LogAPI.Debug(ex);
|
|
|
|
|
LogAPI.Debug("异常信息结束。");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public override void OnCreate(object Hook)
|
|
|
|
|
{
|
|
|
|
|
if (m_hookHelper == null)
|
|
|
|
|
{
|
|
|
|
|
m_hookHelper = new HookHelper();
|
|
|
|
|
m_hookHelper.Hook = Hook;
|
|
|
|
|
}
|
|
|
|
|
if (frm == null)
|
|
|
|
|
{
|
|
|
|
|
frm = new FrmLayerProperty();
|
|
|
|
|
}
|
|
|
|
|
frm.InitiateForm();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|