public ProLOSBaseViewModel() { ObserverOffset = 2.0; TargetOffset = 0.0; OffsetUnitType = DistanceTypes.Meters; AngularUnitType = AngularTypes.DEGREES; ObserverAddInPoints = new ObservableCollection <AddInPoint>(); ToolMode = MapPointToolMode.Unknown; SurfaceLayerNames = new ObservableCollection <string>(); SelectedSurfaceName = string.Empty; Mediator.Register(VisibilityLibrary.Constants.DISPLAY_COORDINATE_TYPE_CHANGED, OnDisplayCoordinateTypeChanged); DeletePointCommand = new RelayCommand(OnDeletePointCommand); DeleteAllPointsCommand = new RelayCommand(OnDeleteAllPointsCommand); EditPropertiesDialogCommand = new RelayCommand(OnEditPropertiesDialogCommand); // subscribe to some mapping events ActiveMapViewChangedEvent.Subscribe(OnActiveMapViewChanged); LayersAddedEvent.Subscribe(OnLayersAdded); LayersRemovedEvent.Subscribe(OnLayersAdded); MapPropertyChangedEvent.Subscribe(OnMapPropertyChanged); MapMemberPropertiesChangedEvent.Subscribe(OnMapMemberPropertyChanged); }
protected override Task OnToolActivateAsync(bool hasMapViewChanged) { _msg.VerboseDebug("OnToolActivateAsync"); MapPropertyChangedEvent.Subscribe(OnPropertyChanged); MapSelectionChangedEvent.Subscribe(OnMapSelectionChanged); EditCompletedEvent.Subscribe(OnEditCompleted); PressedKeys.Clear(); try { return(QueuedTask.Run( () => { OnToolActivatingCore(); if (RequiresSelection) { ProcessSelection(ActiveMapView); } return OnToolActivatedCore(hasMapViewChanged); })); } catch (Exception e) { HandleError($"Error in tool activation ({Caption}): {e.Message}", e); } return(Task.CompletedTask); }
/// <summary> /// Combo Box constructor /// </summary> public ComboBoxFeatureLayer() { mappa = ProAddInSR.funzioniVariabiliGlobali.FunzioniGlobali.RicavaMappaAttiva(); UpdateCombo(); MapViewInitializedEvent.Subscribe(OnMapViewCaricata); // Occurs when the map view has initialized --> Cioè aperta nuova Mappa, e caricata da zero!! LayersAddedEvent.Subscribe(EventoLayerInTOC); LayersMovedEvent.Subscribe(EventoLayerInTOC); LayersRemovedEvent.Subscribe(EventoLayerInTOC); MapClosedEvent.Subscribe(AllaChiusuraMappa); MapPropertyChangedEvent.Subscribe(AllaVariazioneProprietaMappa); // Occurs when any property of a map is changed. MapMemberPropertiesChangedEvent.Subscribe(EventoLayerInTOC); // Occurs when any property of layer or standalone table changed. }
private void OnMapViewCaricata(MapViewEventArgs args) { funzioniVariabiliGlobali.VariabiliGlobali.blnMappaAttivaCaricata = true; this.Clear(); this.UpdateCombo(); LayersAddedEvent.Subscribe(EventoLayerInTOC); LayersMovedEvent.Subscribe(EventoLayerInTOC); LayersRemovedEvent.Subscribe(EventoLayerInTOC); MapClosedEvent.Subscribe(AllaChiusuraMappa); MapPropertyChangedEvent.Subscribe(AllaVariazioneProprietaMappa); // Occurs when any property of a map is changed. MapMemberPropertiesChangedEvent.Subscribe(EventoLayerInTOC); // Occurs when any property of layer or standalone table changed. }
protected override Task OnToolDeactivateAsync(bool hasMapViewChanged) { _msg.VerboseDebug("OnToolDeactivateAsync"); MapPropertyChangedEvent.Unsubscribe(OnPropertyChanged); MapSelectionChangedEvent.Unsubscribe(OnMapSelectionChanged); EditCompletedEvent.Unsubscribe(OnEditCompleted); try { HideOptionsPane(); return(QueuedTask.Run(() => OnToolDeactivateCore(hasMapViewChanged))); } catch (Exception e) { HandleError($"Error in tool deactivation ({Caption}): {e.Message}", e, true); } return(Task.CompletedTask); }