protected override IPluginViewSettings AddView(IPlugin plugin, out Panel hostControl) { DebugHelper.AssertUIThread(); hostControl = null; IPluginEditableViewSettings value = null; IWpfVisualPlugin visualPlugin = plugin as IWpfVisualPlugin; if (visualPlugin != null) { hostControl = new StackPanel(); value = visualPlugin.AddWpfView(hostControl); } return(value); }
public override DataTemplate SelectTemplate(object item, DependencyObject container) { DebugHelper.AssertUIThread(); DataTemplate result = null; IPluginEditableViewSettings pluginViewSettings = item as IPluginEditableViewSettings; if (pluginViewSettings != null) { result = pluginViewSettings.SettingsEditDataTemplate; } if (result == null) { result = PluginViewSettingsTemplateSelector.emptyDataTemplate; } return(result); }
public PluginViewState(PluginViewState pluginViewState) { Debug.Assert(pluginViewState != null); this.plugin = pluginViewState.plugin; this.enabled = pluginViewState.enabled; this.order = pluginViewState.order; this.hostControl = pluginViewState.hostControl; if (pluginViewState.pluginViewSettings == null) { this.pluginViewSettings = null; } else { IPluginEditableViewSettings editableViewSettings = pluginViewState.pluginViewSettings as IPluginEditableViewSettings; if (editableViewSettings != null) { this.pluginViewSettings = editableViewSettings.CloneForEdit(); } } }