/// <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;
        }
예제 #3
0
        /// <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);
        }