Пример #1
0
        private void btAddPlugin_Click(object sender, RoutedEventArgs e)
        {
            var dialog = new System.Windows.Forms.OpenFileDialog();

            dialog.Filter      = string.Format("Lazurite plugin file (*{0})|*{0}", PluginsManager.PluginFileExtension);
            dialog.Multiselect = false;
            if (dialog.ShowDialog() == System.Windows.Forms.DialogResult.OK)
            {
                var canAddPluginResult = _manager.CanAddPlugin(dialog.FileName);
                if (!canAddPluginResult.CanAdd)
                {
                    _warningHandler.WarnFormat("Невозможно добавить плагин \r\n[{0}];\r\nПричина: {1}", dialog.FileName, canAddPluginResult.Message);
                }
                else
                {
                    try
                    {
                        _manager.AddPlugin(dialog.FileName);
                        MessageView.ShowMessage("Плагин добавлен!", "Добавление плагина", Icons.Icon.Check, Window.GetWindow(this).Content as Panel);
                        Refresh();
                    }
                    catch (Exception exception)
                    {
                        _warningHandler.ErrorFormat(exception, "Невозможно добавить плагин \r\n[{0}]", dialog.FileName);
                    }
                }
            }
        }