public override void Dispose()
        {
            if (_gazetteerContrib != null)
            {
                (_gazetteerContrib.Content as Gazetteer).Dispose();
            }

            if (_gazetteer != null)
            {
                _gazetteer.Dispose();
            }

            if (_gazWindow != null)
            {
                _gazWindow.Dispose();
            }
        }
        public void ShowRegionExplorer(Action <SelectionResult> selectionFunc = null)
        {
            if (_regionExplorer == null)
            {
                var explorer = new DistributionRegionExplorer(this, User);
                _regionExplorer = PluginManager.Instance.AddNonDockableContent(this, explorer, "Distribution Region Explorer", SizeToContent.Manual);

                _regionExplorer.Closed += (sender, e) => {
                    _regionExplorer.Dispose();
                    _regionExplorer = null;
                };
            }

            if (_regionExplorer != null)
            {
                if (selectionFunc != null)
                {
                    _regionExplorer.BindSelectCallback(selectionFunc);
                }
                _regionExplorer.Show();
            }
        }