Ejemplo n.º 1
0
 /// <summary>
 /// Triggers the Serializing event.
 /// </summary>
 public virtual void OnSerializing(SerializingEventArgs ea)
 {
     if (Serializing != null)
     {
         Serializing(this, ea);
     }
 }
Ejemplo n.º 2
0
        private void SerializationManagerDeserializing(object sender, SerializingEventArgs e)
        {
            // context menu items are added to layers when opening a project
            // this call is necessary because the LayerAdded event doesn't fire when a project is opened.
            foreach (ILayer layer in App.Map.MapFrame.GetAllLayers())
            {
                IFeatureLayer fl = layer as IFeatureLayer;
                if (fl != null)
                {
                    if (!fl.ContextMenuItems.Exists(item => item.Name == Resources.AttributeTableEditor))
                    {
                        // add context menu item.
                        var menuItem = new SymbologyMenuItem(Resources.AttributeTableEditor, (o, args) => ShowAttributes(fl))
                        {
                            Image = Resources.table_16x16
                        };
                        fl.ContextMenuItems.Insert(2, menuItem);
                    }
                }
            }

            // attach layer added events to existing groups
            foreach (IMapGroup grp in App.Map.MapFrame.GetAllGroups())
            {
                grp.LayerAdded += MapLayerAdded;
            }
        }
Ejemplo n.º 3
0
 private void SerializationManager_Deserializing(object sender, SerializingEventArgs e)
 {
     foreach (var layer in App.Map.MapFrame.Layers)
     {
         AttachLayerToPlugin(layer, true);
     }
 }
Ejemplo n.º 4
0
        /// <summary>
        /// Serializes the WebMap settings.
        /// </summary>
        /// <param name="sender">Sender that raised the event.</param>
        /// <param name="e">The event args.</param>
        private void SerializationManagerSerializing(object sender, SerializingEventArgs e)
        {
            var p = CurrentProvider;

            App.SerializationManager.SetCustomSetting(PluginName + "_BasemapName", p != null ? p.Name : Resources.None);
            App.SerializationManager.SetCustomSetting(PluginName + "_Opacity", _opacity.ToString(CultureInfo.InvariantCulture));
        }
Ejemplo n.º 5
0
        private void SerializationManagerDeserializing(object sender, SerializingEventArgs e)
        {
            var opacity     = App.SerializationManager.GetCustomSetting(PluginName + "_Opacity", "100");
            var basemapName = App.SerializationManager.GetCustomSetting(PluginName + "_BasemapName", resources.None);

            //Set opacity
            _opacityDropDown.SelectedItem = opacity;
            _opacity = Convert.ToInt16(opacity);

            _baseMapLayer = (MapImageLayer)App.Map.MapFrame.GetAllLayers().FirstOrDefault(layer => layer.LegendText == resources.Legend_Title);

            if (basemapName == "None")
            {
                if (_baseMapLayer != null)
                {
                    DisableBasemapLayer();
                    _provider = _emptyProvider;
                    _serviceDropDown.SelectedItem = _provider;
                }
            }
            else
            {
                //hack: need to set provider to original object, not a new one.
                _provider = ServiceProvider.GetDefaultServiceProviders().FirstOrDefault(p => p.Name == basemapName);
                _serviceDropDown.SelectedItem = _provider;
                EnableBasemapFetching(_provider.Name, _provider.Url);
            }
        }
Ejemplo n.º 6
0
 private void SerializationManagerDeserializing(object sender, SerializingEventArgs e)
 {
     foreach (var layer in App.Map.Layers)
     {
         AddContextMenuItems(layer);
     }
 }
Ejemplo n.º 7
0
 /// <summary>
 /// Triggers the NewProjectCreated event.
 /// </summary>
 public virtual void OnNewProject(SerializingEventArgs ea)
 {
     if (NewProjectCreated != null)
     {
         NewProjectCreated(this, ea);
     }
 }
Ejemplo n.º 8
0
        private void HandleSerializing(object sender, SerializingEventArgs e)
        {
            var manager = sender as SerializationManager;
            if (manager == null)
                throw new InvalidOperationException("No serialization manager");

            Settings.Serialize(manager);
        }
Ejemplo n.º 9
0
 /// <summary>
 /// Deactivates the WebMap when a new project is created.
 /// </summary>
 /// <param name="sender">Sender that raised the event.</param>
 /// <param name="e">The event args.</param>
 private void SerializationManagerNewProject(object sender, SerializingEventArgs e)
 {
     if (_baseMapLayer == null)
     {
         return;
     }
     DisableBasemapLayer();
     _serviceDropDown.SelectedItem = _emptyProvider;
 }
Ejemplo n.º 10
0
 private void SerializationManagerNewProject(object sender, SerializingEventArgs e)
 {
     //deactivate the web map
     if (_baseMapLayer != null)
     {
         DisableBasemapLayer();
         _provider = _emptyProvider;
         _serviceDropDown.SelectedItem = _provider;
     }
 }
Ejemplo n.º 11
0
        void SerializationManager_Serializing(object sender, SerializingEventArgs e)
        {
            // Note: quick fix of http://hydrodesktop.codeplex.com/workitem/8360
            // DS do not serialize DotSpatial.Data.FeatureSet.

            // Remove the "Area rectangle" layer
            if (_rectangleDrawing != null)
            {
                _rectangleDrawing.Deactivate();
            }
        }
        private void HandleSerializing(object sender, SerializingEventArgs e)
        {
            var manager = sender as SerializationManager;

            if (manager == null)
            {
                throw new InvalidOperationException("No serialization manager");
            }

            Settings.Serialize(manager);
        }
Ejemplo n.º 13
0
        void SerializationManager_NewProjectCreated(object sender, SerializingEventArgs e)
        {
            SetupDatabases();
            Shell.Text = HYDRODESKTOP_NAME;

            //setup projection information / same as in previous project
            if (App.Map.Projection != null)
            {
                latLongDisplay.MapProjectionString = App.Map.Projection.ToEsriString();
            }
        }
Ejemplo n.º 14
0
 void SerializationManager_NewProjectCreated(object sender, SerializingEventArgs e)
 {
     SetupDatabases();
     Shell.Text = HYDRODESKTOP_NAME;
     //setup new db information
     //SeriesControl.SetupDatabase();
     if (App.Map.Projection != null)
     {
         latLongDisplay.MapProjectionString = App.Map.Projection.ToEsriString();
     }
 }
Ejemplo n.º 15
0
        /// <summary>
        /// Deserializes the WebMap settings and loads the corresponding basemap.
        /// </summary>
        /// <param name="sender">Sender that raised the event.</param>
        /// <param name="e">The event args.</param>
        private void SerializationManagerDeserializing(object sender, SerializingEventArgs e)
        {
            try
            {
                if (_baseMapLayer != null)
                {
                    // disable BaseMap because we might be loading a project that doesn't have a basemap
                    DisableBasemapLayer();
                    _serviceDropDown.SelectedItem = _emptyProvider;
                }

                // Set opacity
                var opacity = App.SerializationManager.GetCustomSetting(PluginName + "_Opacity", "100");
                _opacityDropDown.SelectedItem = opacity;
                _opacity = Convert.ToInt16(opacity);

                var basemapName = App.SerializationManager.GetCustomSetting(PluginName + "_BasemapName", Resources.None);
                if (basemapName.Equals(Resources.None))
                {
                    // make sure there is no basemap layer that shouldn't be there
                    var tmpLayer = (MapImageLayer)App.Map.MapFrame.GetAllLayers().FirstOrDefault(layer => layer.LegendText == Resources.Legend_Title);
                    if (tmpLayer != null)
                    {
                        RemoveBasemapLayer(tmpLayer);
                    }
                }
                else
                {
                    _baseMapLayer = (MapImageLayer)App.Map.MapFrame.GetAllLayers().FirstOrDefault(layer => layer.LegendText == Resources.Legend_Title);
                    if (_baseMapLayer != null)
                    {
                        _baseMapLayer.Projection = _webMercProj;                        // changed by jany_(2015-07-09) set the projection because if it is not set we produce a cross thread exception when DotSpatial tries to show the projection dialog
                    }
                    // hack: need to set provider to original object, not a new one.
                    _serviceDropDown.SelectedItem = _serviceDropDown.Items.OfType <ServiceProvider>().FirstOrDefault(p => p.Name.Equals(basemapName, StringComparison.InvariantCultureIgnoreCase));
                    var pp = CurrentProvider;
                    if (pp != null)
                    {
                        EnableBasemapFetching(pp);
                    }
                }
            }
            catch (Exception ex)
            {
                Debug.Print(ex.StackTrace);
            }
        }
Ejemplo n.º 16
0
        /// <summary>
        /// Deserializes the WebMap settings and loads the corresponding basemap.
        /// </summary>
        /// <param name="sender">Sender that raised the event.</param>
        /// <param name="e">The event args.</param>
        private void SerializationManagerDeserializing(object sender, SerializingEventArgs e)
        {
            try
            {
                if (_baseLayer != null)
                {
                    // disable BaseMap because we might be loading a project that doesn't have a basemap
                    DisableBasemapLayer();
                    _serviceDropDown.SelectedItem = _emptyProvider;
                }

                _baseLayer = (WebMapImageLayer)App.Map.MapFrame.GetAllLayers().FirstOrDefault(layer => layer.LegendText == Resources.Legend_Title);
                if (_baseLayer != null)
                {
                    //_baseLayer.Projection = _webMercProj; // changed by jany_(2015-07-09) set the projection because if it is not set we produce a cross thread exception when DotSpatial tries to show the projection dialog
                    var item = _serviceDropDown.Items.OfType <ServiceProvider>().FirstOrDefault(p => p.Name.Equals(_baseLayer.WebMapName, StringComparison.InvariantCultureIgnoreCase));
                    if (item == null)
                    {
                        if (_baseLayer.WebMapUrl?.ToLower().Contains("wmts") == true)
                        {
                            item = _serviceDropDown.Items.OfType <ServiceProvider>().FirstOrDefault(p => p.Name.Equals("Wmts", StringComparison.InvariantCultureIgnoreCase));
                            if (item is WmtsServiceProvider wmtsServiceProvider)
                            {
                                wmtsServiceProvider.Name            = _baseLayer.WebMapName;
                                wmtsServiceProvider.CapabilitiesUrl = _baseLayer.WebMapUrl;
                            }
                        }
                    }
                    // hack: need to set provider to original object, not a new one.
                    if (item != null)
                    {
                        _ignoreServiceChanged         = true;
                        _serviceDropDown.SelectedItem = item;
                        _ignoreServiceChanged         = false;
                        if (CurrentProvider != null)
                        {
                            EnableBasemapFetching(CurrentProvider);
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                Debug.Print(ex.StackTrace);
            }
        }
Ejemplo n.º 17
0
        void SerializationManager_Deserializing(object sender, SerializingEventArgs e)
        {
            //try reset projection!
            if (App.Map.MapFrame.Projection != DotSpatial.Projections.KnownCoordinateSystems.Projected.World.WebMercator)
            {
                //App.Map.MapFrame.Reproject(DotSpatial.Projections.KnownCoordinateSystems.Projected.World.WebMercator);
                MapFrameProjectionHelper.ReprojectMapFrame(App.Map.MapFrame, DotSpatial.Projections.KnownCoordinateSystems.Projected.World.WebMercator.ToEsriString());
            }

            myProjectManager.OpeningProject();
            Shell.Text = string.Format("{0} - {1}", HYDRODESKTOP_NAME, GetProjectShortName());
            //setup new db information
            SeriesControl.SetupDatabase();
            if (App.Map.Projection != null)
            {
                latLongDisplay.MapProjectionString = App.Map.Projection.ToEsriString();
            }
        }
Ejemplo n.º 18
0
 private void SerializationManager_Deserializing(object sender, SerializingEventArgs e)
 {
     // context menu items are added to layers when opening a project
     // this call is necessary because the LayerAdded event doesn't fire when a project is opened.
     foreach (ILayer layer in App.Map.MapFrame.GetAllLayers())
     {
         IFeatureLayer fl = layer as IFeatureLayer;
         if (fl != null)
         {
             if (!fl.ContextMenuItems.Exists(item => item.Name == contextMenuItemName))
             {
                 // add context menu item.
                 var menuItem = new SymbologyMenuItem(contextMenuItemName, delegate { ShowAttributes(fl); });
                 menuItem.Image = Resources.table_16x16;
                 fl.ContextMenuItems.Insert(2, menuItem);
             }
         }
     }
     //attach layer added events to existing groups
     foreach (IGroup grp in App.Map.MapFrame.GetAllGroups())
     {
         grp.LayerAdded += Map_LayerAdded;
     }
 }
Ejemplo n.º 19
0
 private void SerializationManager_Deserializing(object sender, SerializingEventArgs e)
 {
     // context menu items are added to layers when opening a project
     // this call is necessary because the LayerAdded event doesn't fire when a project is opened.
     foreach (ILayer layer in App.Map.MapFrame.GetAllLayers())
     {
         IFeatureLayer fl = layer as IFeatureLayer;
         if (fl != null)
         {
             if (!fl.ContextMenuItems.Exists(item => item.Name == contextMenuItemName))
             {
                 // add context menu item.
                 var menuItem = new SymbologyMenuItem(contextMenuItemName, delegate { ShowAttributes(fl); });
                 menuItem.Image = Resources.CatalogShowTree16;
                 fl.ContextMenuItems.Insert(2, menuItem);
             }
         }
     }
     //attach layer added events to existing groups
     foreach (IGroup grp in App.Map.MapFrame.GetAllGroups())
     {
         grp.LayerAdded += Map_LayerAdded;
     }
 }
Ejemplo n.º 20
0
        private void UpdateUI(Object sender, SerializingEventArgs evt)
        {
            var projname = appManager.SerializationManager.CurrentProjectFile;

            if (!String.IsNullOrEmpty(projname))
            {
                if (projname.EndsWith("mwprj"))
                {
                    MessageBox.Show("The Hydrologic Toolbox can open MapWindow 4.x projects,\n" +
                                    "but CANNOT save into the .mwprj file format.\n" +
                                    "Please choose 'Save As' to save into a DotSpatial project (.dspx) instead.",
                                    "MapWindow 4.x Project End of Support Notice", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                }
                var projid = System.IO.Path.GetFileNameWithoutExtension(projname);
                this.Text = Utilities.g_AppNameLong + " - " + projid + Utilities.dirtyLabel;
            }
            else
            {
                this.Text = Utilities.g_AppNameLong + Utilities.dirtyLabel;
            }

            //bool handled = true;
            //Utilities.BASINSPlugin.ItemClicked("mnuNew", ref handled);
        }
Ejemplo n.º 21
0
        private void SerializationManagerDeserializing(object sender, SerializingEventArgs e)
        {
            try
            {
                var opacity     = App.SerializationManager.GetCustomSetting(PluginName + "_Opacity", "100");
                var basemapName = App.SerializationManager.GetCustomSetting(PluginName + "_BasemapName", Properties.Resources.None);
                //Set opacity
                _opacityDropDown.SelectedItem = opacity;
                _opacity = Convert.ToInt16(opacity);

                _baseMapLayer = (MapImageLayer)App.Map.MapFrame.GetAllLayers().FirstOrDefault(layer => layer.LegendText == Properties.Resources.Legend_Title);
                if (basemapName.Equals(Properties.Resources.None))
                {
                    if (_baseMapLayer != null)
                    {
                        DisableBasemapLayer();
                        _serviceDropDown.SelectedItem = _emptyProvider;
                    }
                }
                else
                {
                    //hack: need to set provider to original object, not a new one.
                    _serviceDropDown.SelectedItem = _serviceDropDown.Items.OfType <ServiceProvider>()
                                                    .FirstOrDefault(p => p.Name.Equals(basemapName, StringComparison.InvariantCultureIgnoreCase));
                    var pp = CurrentProvider;
                    if (pp != null)
                    {
                        EnableBasemapFetching(pp);
                    }
                }
            }
            catch (Exception ex)
            {
                Debug.Print(ex.StackTrace);
            }
        }
Ejemplo n.º 22
0
 /// <summary>
 /// Add EventHandlers to Map when a new project gets created or an old project gets opened.
 /// </summary>
 private void SerializationManager_Deserializing(object sender, SerializingEventArgs e)
 {
     AddHandler();
     ComputeMapScale();
 }
Ejemplo n.º 23
0
 private void SerializationManagerSerializing(object sender, SerializingEventArgs e)
 {
     App.SerializationManager.SetCustomSetting(PluginName + "_BasemapName", _provider.Name);
     App.SerializationManager.SetCustomSetting(PluginName + "_Opacity", _opacity.ToString());
 }
Ejemplo n.º 24
0
 private void SerializationManagerSerializing(object sender, SerializingEventArgs e)
 {
     App.SerializationManager.SetCustomSetting(PluginName + "_BasemapName", _provider.Name);
     App.SerializationManager.SetCustomSetting(PluginName + "_Opacity", _opacity.ToString());
 }
Ejemplo n.º 25
0
        /// <summary>
        /// Deserializes the WebMap settings and loads the corresponding basemap.
        /// </summary>
        private void SerializationManagerDeserializing(object sender, SerializingEventArgs e)
        {
            try
            {
                if (_baseMapLayer != null) //disable BaseMap because we might be loading a project that doesn't have a basemap
                {
                    DisableBasemapLayer();
                    _serviceDropDown.SelectedItem = _emptyProvider;
                }

                //Set opacity
                var opacity = App.SerializationManager.GetCustomSetting(PluginName + "_Opacity", "100");
                _opacityDropDown.SelectedItem = opacity;
                _opacity = Convert.ToInt16(opacity);

                var basemapName = App.SerializationManager.GetCustomSetting(PluginName + "_BasemapName", Properties.Resources.None);
                if (basemapName.Equals(Properties.Resources.None)) // make sure there is no basemap layer that shouldn't be there
                {
                    var tmpLayer = (MapImageLayer)App.Map.MapFrame.GetAllLayers().FirstOrDefault(layer => layer.LegendText == Properties.Resources.Legend_Title);
                    if (tmpLayer != null)
                        RemoveBasemapLayer(tmpLayer);
                }
                else
                {
                    _baseMapLayer = (MapImageLayer)App.Map.MapFrame.GetAllLayers().FirstOrDefault(layer => layer.LegendText == Properties.Resources.Legend_Title);
                    if (_baseMapLayer != null) _baseMapLayer.Projection = WebMercProj; // changed by jany_(2015-07-09) set the projection because if it is not set we produce a cross thread exception when DotSpatial tries to show the projection dialog

                    //hack: need to set provider to original object, not a new one.
                    _serviceDropDown.SelectedItem = _serviceDropDown.Items.OfType<ServiceProvider>()
                        .FirstOrDefault(p => p.Name.Equals(basemapName, StringComparison.InvariantCultureIgnoreCase));
                    var pp = CurrentProvider;
                    if (pp != null)
                    {
                        EnableBasemapFetching(pp);
                    }
                }
            }
            catch (Exception ex)
            {
                Debug.Print(ex.StackTrace);
            }
        }
Ejemplo n.º 26
0
        private void manager_Deserializing(object sender, SerializingEventArgs e)
        {
            var manager = sender as SerializationManager;

            _storedValue = manager.GetCustomSetting(UniqueKeyPluginStoredValueDate, DateTime.Now);
        }
Ejemplo n.º 27
0
 void SerializationManager_Serializing(object sender, SerializingEventArgs e)
 {
     //_frmDatasheet.ProjectSavedListener();
     //throw new NotImplementedException();
 }
Ejemplo n.º 28
0
 /// <summary>
 /// Deactivates the WebMap when a new project is created.
 /// </summary>
 private void SerializationManagerNewProject(object sender, SerializingEventArgs e)
 {
     if (_baseMapLayer == null) return;
     DisableBasemapLayer();
     _serviceDropDown.SelectedItem = _emptyProvider;
 }
Ejemplo n.º 29
0
 static void Serializing(object sender, SerializingEventArgs e)
 {
     var instance = (CustomSerializerSurrogateSelector)sender;
     Assert.AreEqual(instance.IgnoreISerializable, e.IgnoreISerializable);
     e.IgnoreISerializable = true;
 }
Ejemplo n.º 30
0
 private void SerializationManagerNewProject(object sender, SerializingEventArgs e)
 {
     //deactivate the web map
     if (_baseMapLayer != null)
     {
         DisableBasemapLayer();
         _provider = _emptyProvider;
         _serviceDropDown.SelectedItem = _provider;
     }
 }
Ejemplo n.º 31
0
 private void SerializationManager_NewProjectCreated(object sender, SerializingEventArgs e)
 {
     _dgvSelection.Clear();
 }
Ejemplo n.º 32
0
 /// <summary>
 /// Adds the layers to DGV_Selection after a project gets loaded.
 /// </summary>
 private void SerializationManager_Deserializing(object sender, SerializingEventArgs e)
 {
     DetachLayerAddedEvents();
     AttachLayerAddedEvents();
 }
Ejemplo n.º 33
0
 void SerializationManager_Deserializing(object sender, SerializingEventArgs e)
 {
     //string customSettingValue = App.SerializationManager.GetCustomSetting<string>(_pluginName + "_Setting1", "enter custom setting:");
     //throw new NotImplementedException();
 }
Ejemplo n.º 34
0
        private void manager_Serializing(object sender, SerializingEventArgs e)
        {
            var manager = sender as SerializationManager;

            manager.SetCustomSetting(UniqueKeyPluginStoredValueDate, _storedValue);
        }
Ejemplo n.º 35
0
 /// <summary>
 /// Serializes the WebMap settings.
 /// </summary>
 private void SerializationManagerSerializing(object sender, SerializingEventArgs e)
 {
     var p = CurrentProvider;
     App.SerializationManager.SetCustomSetting(PluginName + "_BasemapName", p != null ? p.Name : Properties.Resources.None);
     App.SerializationManager.SetCustomSetting(PluginName + "_Opacity", _opacity.ToString(CultureInfo.InvariantCulture));
 }
Ejemplo n.º 36
0
 /// <summary>
 /// Adds the layers to DGV_Selection after a project gets loaded.
 /// </summary>
 private void SerializationManager_Deserializing(object sender, SerializingEventArgs e)
 {
     DetachLayerAddedEvents();
     AttachLayerAddedEvents();
 }
Ejemplo n.º 37
0
 void SerializationManager_Deserializing(object sender, SerializingEventArgs e)
 {
     App.Map.MapFrame.LayerSelected -= MapFrame_LayerSelected;
     App.Map.MapFrame.LayerSelected += MapFrame_LayerSelected;
     UpdateStatusPanel();
 }
Ejemplo n.º 38
0
 /// <summary>
 /// Adds the layers to DGV_Selection after a project gets loaded.
 /// </summary>
 private void SerializationManager_Deserializing(object sender, SerializingEventArgs e)
 {
     //This call is necessary because the LayerAdded event doesn't fire when a project is opened.
     foreach (ILayer layer in App.Map.Layers)
     {
         AddLayer(layer);
     }
 }
Ejemplo n.º 39
0
        private void ManagerDeserializing(object sender, SerializingEventArgs e)
        {
            var manager = (SerializationManager)sender;

            _storedValue = manager.GetCustomSetting(UniqueKeyPluginStoredValueDate, DateTime.Now);
        }
Ejemplo n.º 40
0
        private void SerializationManagerDeserializing(object sender, SerializingEventArgs e)
        {
            var opacity = App.SerializationManager.GetCustomSetting(PluginName + "_Opacity", "100");
            var basemapName = App.SerializationManager.GetCustomSetting(PluginName + "_BasemapName", resources.None);
            //Set opacity
            _opacityDropDown.SelectedItem = opacity;
            _opacity = Convert.ToInt16(opacity);

            _baseMapLayer = (MapImageLayer)App.Map.MapFrame.GetAllLayers().FirstOrDefault(layer => layer.LegendText == resources.Legend_Title);

            if (basemapName == "None")
            {
                if (_baseMapLayer != null)
                {
                    DisableBasemapLayer();
                    _provider = _emptyProvider;
                    _serviceDropDown.SelectedItem = _provider;
                }
            }
            else
            {
                //hack: need to set provider to original object, not a new one.
                _provider = ServiceProvider.GetDefaultServiceProviders().FirstOrDefault(p => p.Name == basemapName);
                _serviceDropDown.SelectedItem = _provider;
                EnableBasemapFetching(_provider.Name, _provider.Url);
            }
        }
Ejemplo n.º 41
0
        private void ManagerSerializing(object sender, SerializingEventArgs e)
        {
            var manager = (SerializationManager)sender;

            manager.SetCustomSetting(UniqueKeyPluginStoredValueDate, _storedValue);
        }
Ejemplo n.º 42
0
 void SerializationManager_NewProjectCreated(object sender, SerializingEventArgs e)
 {
     App.Map.MapFrame.LayerSelected -= MapFrame_LayerSelected;
     App.Map.MapFrame.LayerSelected += MapFrame_LayerSelected;
 }
Ejemplo n.º 43
0
        private void SerializationManagerDeserializing(object sender, SerializingEventArgs e)
        {
            try
            {
                var opacity = App.SerializationManager.GetCustomSetting(PluginName + "_Opacity", "100");
                var basemapName = App.SerializationManager.GetCustomSetting(PluginName + "_BasemapName", Properties.Resources.None);
                //Set opacity
                _opacityDropDown.SelectedItem = opacity;
                _opacity = Convert.ToInt16(opacity);

                _baseMapLayer = (MapImageLayer)App.Map.MapFrame.GetAllLayers().FirstOrDefault(layer => layer.LegendText == Properties.Resources.Legend_Title);

                if (basemapName.Equals("None"))
                {
                    if (_baseMapLayer != null)
                    {
                        DisableBasemapLayer();
                        _provider = _emptyProvider;
                        _serviceDropDown.SelectedItem = _provider;
                    }
                }
                else
                {
                    //hack: need to set provider to original object, not a new one.
                    _provider = ServiceProvider.GetDefaultServiceProviders().FirstOrDefault(p => p.Name.Equals(basemapName, StringComparison.InvariantCultureIgnoreCase));
                    _serviceDropDown.SelectedItem = _provider;
                    EnableBasemapFetching(_provider.Name, _provider.Url);
                }
            }
            catch (Exception ex)
            {
                Debug.Print(ex.StackTrace);
            }
        }