Example #1
0
        internal ConfigurationService()
        {
            var appData = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData);
            _configPath = Path.Combine(appData, AppFolderName);
            _configFileName = Path.Combine(_configPath, ConfigFileName);

            if(!Directory.Exists(_configPath))
            {
                try
                {
                    Directory.CreateDirectory(_configPath);
                }
                catch(Exception exc)
                {
                    if(exc.IsCritical())
                    {
                        throw;
                    }
                    LoggingService.Global.Error(exc);
                }
            }

            _configuration            = LoadConfig(ConfigFileName, "Configuration");
            _rootSection              = _configuration.RootSection;
            _guiSection               = _rootSection.GetCreateSection("Gui");
            _globalSection            = _rootSection.GetCreateSection("Global");
            _viewsSection             = _rootSection.GetCreateSection("Tools");
            _providersSection         = _rootSection.GetCreateSection("Providers");
            _repositoryManagerSection = _rootSection.GetCreateSection("RepositoryManager");
        }
Example #2
0
        internal ConfigurationService()
        {
            var appData = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData);

            _configPath     = Path.Combine(appData, AppFolderName);
            _configFileName = Path.Combine(_configPath, ConfigFileName);

            if (!Directory.Exists(_configPath))
            {
                try
                {
                    Directory.CreateDirectory(_configPath);
                }
                catch (Exception exc)
                {
                    if (exc.IsCritical())
                    {
                        throw;
                    }
                    LoggingService.Global.Error(exc);
                }
            }

            _configuration            = LoadConfig(ConfigFileName, "Configuration");
            _rootSection              = _configuration.RootSection;
            _guiSection               = _rootSection.GetCreateSection("Gui");
            _globalSection            = _rootSection.GetCreateSection("Global");
            _viewsSection             = _rootSection.GetCreateSection("Tools");
            _providersSection         = _rootSection.GetCreateSection("Providers");
            _repositoryManagerSection = _rootSection.GetCreateSection("RepositoryManager");
        }
Example #3
0
        protected override void SaveMoreViewTo(Section section)
        {
            base.SaveMoreViewTo(section);
            var layoutNode = section.GetCreateSection("Layout");

            layoutNode.SetValue("ShowDetails", ShowDetails);
            var listNode = section.GetCreateSection("RevisionList");

            RevisionListBox.SaveViewTo(listNode);
        }
Example #4
0
        protected override void SaveMoreViewTo(Section section)
        {
            base.SaveMoreViewTo(section);

            section.SetValue <bool>("TreeMode", _treeMode);
            var stagedListSection = section.GetCreateSection("StagedList");

            _lstStaged.SaveViewTo(stagedListSection);
            var unstagedListSection = section.GetCreateSection("UnstagedList");

            _lstUnstaged.SaveViewTo(unstagedListSection);
        }
Example #5
0
        private void OnViewClosing(object sender, EventArgs e)
        {
            var view = (ViewBase)sender;

            view.Closing -= OnViewClosing;
            var section = _section.GetCreateSection(GetViewConfigId(view));

            view.SaveViewTo(section);
            if (_activeView == view)
            {
                _activeView = null;
            }
        }
Example #6
0
        protected override void SaveMoreViewTo(Section section)
        {
            base.SaveMoreViewTo(section);
            var listNode = section.GetCreateSection("UsersList");

            _lstUsers.SaveViewTo(listNode);
        }
Example #7
0
        protected override void SaveRepositoryConfig(Section section)
        {
            base.SaveRepositoryConfig(section);
            var logOptionsNode = section.GetCreateSection("LogOptions");

            LogOptions.SaveTo(logOptionsNode);
        }
Example #8
0
        /*
         * private bool Search(int start, SearchOptions search, int direction)
         * {
         *      if(search.Text.Length == 0) return true;
         *      int count = _lstReferences.Items.Count;
         *      if(count == 0) return false;
         *      int end;
         *      if(direction == 1)
         *      {
         *              start = (start + 1) % count;
         *              end = start - 1;
         *              if(end < 0) end += count;
         *      }
         *      else
         *      {
         *              start = (start - 1);
         *              if(start < 0) start += count;
         *              end = (start + 1) % count;
         *      }
         *      while(start != end)
         *      {
         *              var item = _lstReferences.Items[start];
         *              var revItem = item as IRevisionPointerListItem;
         *              if(revItem != null)
         *              {
         *                      if(TestItem(revItem, search))
         *                      {
         *                              item.FocusAndSelect();
         *                              return true;
         *                      }
         *              }
         *              if(direction == 1)
         *              {
         *                      start = (start + 1) % count;
         *              }
         *              else
         *              {
         *                      --start;
         *                      if(start < 0) start = count - 1;
         *              }
         *      }
         *      return false;
         * }
         *
         * public bool SearchFirst(SearchOptions search)
         * {
         *      Verify.Argument.IsNotNull(search, "search");
         *
         *      return Search(-1, search, 1);
         * }
         *
         * public bool SearchNext(SearchOptions search)
         * {
         *      Verify.Argument.IsNotNull(search, "search");
         *
         *      if(search.Text.Length == 0) return true;
         *      if(_lstReferences.SelectedItems.Count == 0)
         *      {
         *              return Search(-1, search, 1);
         *      }
         *      var start = _lstReferences.Items.IndexOf(_lstReferences.SelectedItems[0]);
         *      return Search(start, search, 1);
         * }
         *
         * public bool SearchPrevious(SearchOptions search)
         * {
         *      Verify.Argument.IsNotNull(search, "search");
         *
         *      if(search.Text.Length == 0) return true;
         *      if(_lstReferences.SelectedItems.Count == 0) return Search(-1, search, 1);
         *      var start = _lstReferences.Items.IndexOf(_lstReferences.SelectedItems[0]);
         *      return Search(start, search, -1);
         * }
         *
         * public bool SearchToolBarVisible
         * {
         *      get { return _searchToolbar != null && _searchToolbar.Visible; }
         *      set
         *      {
         *              if(value)
         *              {
         *                      ShowSearchToolBar();
         *              }
         *              else
         *              {
         *                      HideSearchToolBar();
         *              }
         *      }
         * }
         *
         * private void ShowSearchToolBar()
         * {
         *      if(_searchToolbar == null)
         *      {
         *              AddBottomToolStrip(_searchToolbar = new ReferencesSearchToolBar(this));
         *      }
         *      _searchToolbar.FocusSearchTextBox();
         * }
         *
         * private void HideSearchToolBar()
         * {
         *      if(_searchToolbar != null)
         *      {
         *              RemoveToolStrip(_searchToolbar);
         *              _searchToolbar.Dispose();
         *              _searchToolbar = null;
         *      }
         * }
         */

        protected override void SaveMoreViewTo(Section section)
        {
            base.SaveMoreViewTo(section);
            var listNode = section.GetCreateSection("ReferenceList");

            _lstReferences.SaveViewTo(listNode);
        }
Example #9
0
        protected override void SaveMoreViewTo(Section section)
        {
            base.SaveMoreViewTo(section);
            var listNode = section.GetCreateSection("TreeList");

            _treeContent.SaveViewTo(listNode);
        }
Example #10
0
        protected override void SaveMoreViewTo(Section section)
        {
            base.SaveMoreViewTo(section);
            var listSection = section.GetCreateSection("ConfigParameterList");

            _lstConfig.SaveViewTo(listSection);
        }
Example #11
0
 internal void Save()
 {
     foreach (var font in _fonts.Values)
     {
         var section = _section.GetCreateSection(font.Id);
         font.SaveTo(section);
     }
 }
Example #12
0
 protected override void SaveRepositoryConfig(Section section)
 {
     if (Guid == Guids.ContextualDiffViewGuid)
     {
         var node = section.GetCreateSection("ContextualDiffOptions");
         node.SetValue <int>("Context", _options.Context);
         node.SetValue <bool>("IgnoreWhitespace", _options.IgnoreWhitespace);
         node.SetValue <bool>("UsePatienceAlgorithm", _options.UsePatienceAlgorithm);
         node.SetValue <string>("ViewMode", ViewMode.ToString());
     }
     base.SaveRepositoryConfig(section);
 }
Example #13
0
        public static void SaveTo(Section section)
        {
            Verify.Argument.IsNotNull(section, "section");

            var appearanceNode = section.GetCreateSection("Appearance");

            if (GitterApplication.TextRenderer == GitterApplication.GdiTextRenderer)
            {
                appearanceNode.SetValue("TextRenderer", "GDI");
            }
            else if (GitterApplication.TextRenderer == GitterApplication.GdiPlusTextRenderer)
            {
                appearanceNode.SetValue("TextRenderer", "GDI+");
            }
            var servicesNode = section.GetCreateSection("Services");
            var spellingNode = servicesNode.GetCreateSection("Spelling");

            SpellingService.SaveTo(spellingNode);
            var featuresSection = section.GetCreateSection("IntegrationFeatures");

            GitterApplication.IntegrationFeatures.SaveTo(featuresSection);
        }
Example #14
0
        public void SaveTo(Section section)
        {
            Verify.Argument.IsNotNull(section, "section");

            foreach (var feature in _features.Values)
            {
                if (feature.HasConfiguration)
                {
                    var featureNode = section.GetCreateSection(feature.Name);
                    feature.SaveTo(featureNode);
                }
            }
        }
Example #15
0
        /// <summary>Save configuration to <paramref name="section"/>.</summary>
        /// <param name="section"><see cref="Section"/> for storing configuration.</param>
        public void SaveTo(Section section)
        {
            Verify.Argument.IsNotNull(section, nameof(section));

            if (ActiveGitAccessorProvider != null)
            {
                section.SetValue <string>("AccessorProvider", ActiveGitAccessorProvider.Name);
                if (GitAccessor != null)
                {
                    var gitAccessorSection = section.GetCreateSection(ActiveGitAccessorProvider.Name);
                    GitAccessor.SaveTo(gitAccessorSection);
                }
            }
            _configSection = section;
        }
Example #16
0
        protected override void SaveMoreViewTo(Section section)
        {
            base.SaveMoreViewTo(section);
            var listNode = section.GetCreateSection("RepositoryList");

            _lstLocalRepositories.SaveViewTo(listNode);
            var itemsNode = listNode.GetCreateEmptySection("Items");
            int id        = 0;

            foreach (var item in _repositories)
            {
                var link = item.DataContext;
                link.SaveTo(itemsNode.GetCreateSection("Repository" + id.ToString(CultureInfo.InvariantCulture)));
                ++id;
            }
        }
Example #17
0
        /*
        private bool Search(int start, SearchOptions search, int direction)
        {
            if(search.Text.Length == 0) return true;
            int count = _lstReferences.Items.Count;
            if(count == 0) return false;
            int end;
            if(direction == 1)
            {
                start = (start + 1) % count;
                end = start - 1;
                if(end < 0) end += count;
            }
            else
            {
                start = (start - 1);
                if(start < 0) start += count;
                end = (start + 1) % count;
            }
            while(start != end)
            {
                var item = _lstReferences.Items[start];
                var revItem = item as IRevisionPointerListItem;
                if(revItem != null)
                {
                    if(TestItem(revItem, search))
                    {
                        item.FocusAndSelect();
                        return true;
                    }
                }
                if(direction == 1)
                {
                    start = (start + 1) % count;
                }
                else
                {
                    --start;
                    if(start < 0) start = count - 1;
                }
            }
            return false;
        }

        public bool SearchFirst(SearchOptions search)
        {
            Verify.Argument.IsNotNull(search, "search");

            return Search(-1, search, 1);
        }

        public bool SearchNext(SearchOptions search)
        {
            Verify.Argument.IsNotNull(search, "search");

            if(search.Text.Length == 0) return true;
            if(_lstReferences.SelectedItems.Count == 0)
            {
                return Search(-1, search, 1);
            }
            var start = _lstReferences.Items.IndexOf(_lstReferences.SelectedItems[0]);
            return Search(start, search, 1);
        }

        public bool SearchPrevious(SearchOptions search)
        {
            Verify.Argument.IsNotNull(search, "search");

            if(search.Text.Length == 0) return true;
            if(_lstReferences.SelectedItems.Count == 0) return Search(-1, search, 1);
            var start = _lstReferences.Items.IndexOf(_lstReferences.SelectedItems[0]);
            return Search(start, search, -1);
        }

        public bool SearchToolBarVisible
        {
            get { return _searchToolbar != null && _searchToolbar.Visible; }
            set
            {
                if(value)
                {
                    ShowSearchToolBar();
                }
                else
                {
                    HideSearchToolBar();
                }
            }
        }

        private void ShowSearchToolBar()
        {
            if(_searchToolbar == null)
            {
                AddBottomToolStrip(_searchToolbar = new ReferencesSearchToolBar(this));
            }
            _searchToolbar.FocusSearchTextBox();
        }

        private void HideSearchToolBar()
        {
            if(_searchToolbar != null)
            {
                RemoveToolStrip(_searchToolbar);
                _searchToolbar.Dispose();
                _searchToolbar = null;
            }
        }
        */
        protected override void SaveMoreViewTo(Section section)
        {
            base.SaveMoreViewTo(section);
            var listNode = section.GetCreateSection("ReferenceList");
            _lstReferences.SaveViewTo(listNode);
        }
Example #18
0
        public void SaveViewTo(Section section)
        {
            Verify.Argument.IsNotNull(section, "section");

            var columnsSection = section.GetCreateSection("Columns");
            columnsSection.Clear();
            foreach(var column in Columns)
            {
                var columnSection = columnsSection.CreateSection(column.IdentificationString);
                column.SaveTo(columnSection);
            }
            SaveMoreViewTo(section);
        }
Example #19
0
        protected override void SaveMoreViewTo(Section section)
        {
            var listNode = section.GetCreateSection("NewsList");

            _lstNews.SaveViewTo(listNode);
        }
Example #20
0
 protected override void SaveRepositoryConfig(Section section)
 {
     base.SaveRepositoryConfig(section);
     var logOptionsNode = section.GetCreateSection("LogOptions");
     LogOptions.SaveTo(logOptionsNode);
 }
Example #21
0
        /// <summary>Save configuration to <paramref name="section"/>.</summary>
        /// <param name="section"><see cref="Section"/> for storing configuration.</param>
        public void SaveTo(Section section)
        {
            Verify.Argument.IsNotNull(section, "section");

            if(ActiveGitAccessorProvider != null)
            {
                section.SetValue<string>("AccessorProvider", ActiveGitAccessorProvider.Name);
                if(GitAccessor != null)
                {
                    var gitAccessorSection = section.GetCreateSection(ActiveGitAccessorProvider.Name);
                    GitAccessor.SaveTo(gitAccessorSection);
                }
            }
            _configSection = section;
        }
Example #22
0
 protected override void SaveRepositoryConfig(Section section)
 {
     if(Guid == Guids.ContextualDiffViewGuid)
     {
         var node = section.GetCreateSection("ContextualDiffOptions");
         node.SetValue<int>("Context", _options.Context);
         node.SetValue<bool>("IgnoreWhitespace", _options.IgnoreWhitespace);
         node.SetValue<bool>("UsePatienceAlgorithm", _options.UsePatienceAlgorithm);
         node.SetValue<string>("ViewMode", ViewMode.ToString());
     }
     base.SaveRepositoryConfig(section);
 }
Example #23
0
        public static void SaveTo(Section section)
        {
            Verify.Argument.IsNotNull(section, "section");

            var appearanceNode = section.GetCreateSection("Appearance");
            if(GitterApplication.TextRenderer == GitterApplication.GdiTextRenderer)
            {
                appearanceNode.SetValue("TextRenderer", "GDI");
            }
            else if(GitterApplication.TextRenderer == GitterApplication.GdiPlusTextRenderer)
            {
                appearanceNode.SetValue("TextRenderer", "GDI+");
            }
            var servicesNode = section.GetCreateSection("Services");
            var spellingNode = servicesNode.GetCreateSection("Spelling");
            SpellingService.SaveTo(spellingNode);
            var featuresSection = section.GetCreateSection("IntegrationFeatures");
            GitterApplication.IntegrationFeatures.SaveTo(featuresSection);
        }
Example #24
0
        public Section GetSectionForProvider(IRepositoryProvider provider)
        {
            Verify.Argument.IsNotNull(provider, nameof(provider));

            return(_providersSection.GetCreateSection(provider.Name));
        }
Example #25
0
 protected override void SaveMoreViewTo(Section section)
 {
     base.SaveMoreViewTo(section);
     var listNode = section.GetCreateSection("SubmodulesList");
     _lstSubmodules.SaveViewTo(listNode);
 }
Example #26
0
 protected override void SaveMoreViewTo(Section section)
 {
     base.SaveMoreViewTo(section);
     var layoutNode = section.GetCreateSection("Layout");
     layoutNode.SetValue("ShowDetails", ShowDetails);
     var listNode = section.GetCreateSection("RevisionList");
     RevisionListBox.SaveViewTo(listNode);
 }
Example #27
0
        protected override void SaveMoreViewTo(Section section)
        {
            base.SaveMoreViewTo(section);

            section.SetValue<bool>("TreeMode", _treeMode);
            var stagedListSection = section.GetCreateSection("StagedList");
            _lstStaged.SaveViewTo(stagedListSection);
            var unstagedListSection = section.GetCreateSection("UnstagedList");
            _lstUnstaged.SaveViewTo(unstagedListSection);
        }
Example #28
0
 protected override void SaveMoreViewTo(Section section)
 {
     base.SaveMoreViewTo(section);
     var listSection = section.GetCreateSection("ConfigParameterList");
     _lstConfig.SaveViewTo(listSection);
 }
Example #29
0
 protected override void SaveMoreViewTo(Section section)
 {
     base.SaveMoreViewTo(section);
     var listNode = section.GetCreateSection("RepositoryList");
     _lstLocalRepositories.SaveViewTo(listNode);
     var itemsNode = listNode.GetCreateEmptySection("Items");
     int id = 0;
     foreach(var item in _lstLocalRepositories.Items)
     {
         var repoItem = item as RepositoryListItem;
         if(repoItem != null)
         {
             var link = repoItem.DataContext;
             link.SaveTo(itemsNode.GetCreateSection("Repository" + id.ToString(CultureInfo.InvariantCulture)));
             ++id;
         }
     }
 }