/// <summary> /// Loads the bookmarks in the project /// </summary> /// <returns></returns> public async Task LoadBookmarks() { if (!_initialized) { //register for project events ArcGISProjectOpenedEvents.Unsubscribe(OnProjectOpened); ArcGISProjectCreatedEvents.Unsubscribe(OnProjectOpened); ArcGISProjectClosedEvents.Unsubscribe(OnProjectClosed); _initialized = true; } IList <Bookmark> bmks = await ProjectModule.CurrentProject.LoadBookmarksAsync(); if (bmks.Count() == 0) { bmks = await LoadBookmarksFromMapxAsync(); } lock (_lockObject) { _listBookmark = new ObservableCollection <BookmarkItem>(); foreach (var bmk in bmks) { _listBookmark.Add(new BookmarkItem(bmk)); } } this.NotifyPropertyChanged(new PropertyChangedEventArgs("Cities")); this.NotifyPropertyChanged(new PropertyChangedEventArgs("HasBookmarksLoaded")); }
///<summary> /// Performs initialization when dock pane is opened. ///</summary> protected async Task Initialize() { await base.InitializeAsync(); ArcGISProjectOpenedEvents.Subscribe(OnProjectOpened); ArcGISProjectCreatedEvents.Subscribe(OnProjectOpened); ArcGISProjectClosedEvents.Subscribe(OnProjectClosed); OnProjectOpened(null); _initialized = true; }
/// <summary> /// Default constructor for the edit module. /// Set inital flag for comment generation and subscribe to project events /// </summary> public EditToolSolutionModule() { GenerateComment = false; // subscribe to project based events // on open read the settings ArcGISProjectOpenedEvents.Subscribe(OnProjectOpen); // when the project is saved, store the updated settings if needed ArcGISProjectSavingEvents.Subscribe(OnProjectSaving); }