示例#1
0
        public void LoadSettings(SettingsGraph settings, string prefix, bool readOnly)
        {
            if (settings.TabReader == null || settings.TabReader.Tabs.Count == 0)
            {
                return;
            }

            foreach (Tab tab in settings.TabReader.Tabs)
            {
                TabPage tabPage = m_TabbedControl.AddPage();
                var     lrc     = (LogReaderControl)tabPage.Controls[0];
                lrc.IsTheme = readOnly;

                lrc.CheckedItems.RaiseListChangedEvents = false;
                foreach (string id in tab.IDs)
                {
                    lrc.CheckedItems.Add(id);
                }

                lrc.CheckedItems.RaiseListChangedEvents = true;
                lrc.CheckedItems.ResetBindings();
            }
            m_TabbedControl.SelectedIndex = 0;
            m_TabbedControl.OnTabSelected(null, null);
        }
示例#2
0
        private void SettingsSaveAs()
        {
            m_DlgSaveSettings.InitialDirectory = GetSaveFolder();

            if (m_DlgSaveSettings.ShowDialog() == DialogResult.OK)
            {
                var graph = new SettingsGraph();

                foreach (IModule module in m_ModuleManager.Modules)
                {
                    module.SaveSettings(graph);
                }

                try
                {
                    graph.ToFile(m_DlgSaveSettings.FileName);
                    Properties.Settings.Default.SettingsFile = m_DlgSaveSettings.FileName;
                    Properties.Settings.Default.Save();
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message, @"Failed to save user settings file!");
                }
            }
        }
示例#3
0
        private void SettingsSave()
        {
            bool fileIsOk = false;

            if (File.Exists(Properties.Settings.Default.SettingsFile))
            {
                fileIsOk = (File.GetAttributes(Properties.Settings.Default.SettingsFile) & FileAttributes.ReadOnly) != FileAttributes.ReadOnly;
            }

            if (fileIsOk)
            {
                var graph = new SettingsGraph();

                foreach (IModule module in m_ModuleManager.Modules)
                {
                    module.SaveSettings(graph);
                }

                try
                {
                    graph.ToFile(Properties.Settings.Default.SettingsFile);
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message, @"Failed to save user settings file!");
                }
            }
            else
            {
                SettingsSaveAs();
            }
        }
示例#4
0
 public void SaveSettings(SettingsGraph settings)
 {
     settings.TabReader = new TabReaderSettings {
         Tabs = new List <Tab>()
     };
     settings.TabReader.Tabs.AddRange(from TabPage tabPage in m_TabbedControl.TabPages let logReader = tabPage.Controls[0] as LogReaderControl where !logReader.IsTheme select new Tab {
         IDs = logReader.CheckedItems.ToList(), Name = tabPage.Text
     });
 }
示例#5
0
        public void SaveSettings(SettingsGraph settings)
        {
            foreach (LogGraphPage page in m_TabControl.TabPages)
            {
                PageSettings pageSettings = new PageSettings();
                pageSettings.Name = page.Text;

                page.SaveSettings(pageSettings);
                settings.Pages.Add(pageSettings);
            }
            m_HasChanged = false;
        }
示例#6
0
        public void LoadSettings(SettingsGraph settings, string prefix, bool readOnly)
        {
            if (settings.Pages.Count > 0)
            {
                m_TabControl.TabPages.Clear();
            }
            foreach (PageSettings page in settings.Pages)
            {
                AddPage(prefix + page.Name, true, readOnly, false).LoadSettings(page);
            }

            if (m_TabControl.TabCount > 0)
            {
                m_TabControl.SelectedIndex = 0;
            }

            if (m_TabControl.SelectedTab != null)
            {
                ((LogGraphPage)m_TabControl.SelectedTab).SelectFirstPane();
            }

            m_HasChanged = false;
        }
示例#7
0
        private void OnSettingsOpenMenu(object sender, EventArgs e)
        {
            bool hasSettingsChanged = false;

            foreach (IModule module in m_ModuleManager.Modules)
            {
                hasSettingsChanged |= module.HasSettingsChanged;
            }

            if (hasSettingsChanged)
            {
                if (MessageBox.Show(Properties.Resources.RES_LooseChanges, "", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) == DialogResult.No)
                {
                    return;
                }
            }

            m_DlgOpenSettings.InitialDirectory = GetSaveFolder();

            if (m_DlgOpenSettings.ShowDialog() == DialogResult.OK)
            {
                Properties.Settings.Default.SettingsFile = string.Empty;
                Properties.Settings.Default.Save();

                SettingsGraph userSettings = SettingsGraph.FromFile(m_DlgOpenSettings.FileName);

                foreach (IModule module in m_ModuleManager.Modules)
                {
                    module.Clear();
                    module.LoadSettings(m_Settings, Properties.Resources.RES_PagePrefix, true);
                    module.LoadSettings(userSettings, string.Empty, false);
                }

                Properties.Settings.Default.SettingsFile = m_DlgOpenSettings.FileName;
                Properties.Settings.Default.Save();
            }
        }
 /// <summary>
 /// Convenience method to configure routing and action discovery setup for JasperHttp
 /// routes
 /// </summary>
 /// <param name="settings"></param>
 /// <param name="configure"></param>
 public static void Http(this SettingsGraph settings, Action <JasperHttpOptions> configure)
 {
     settings.Alter <JasperHttpOptions>(configure);
 }
示例#9
0
        private void OnFormLoad(object sender, EventArgs e)
        {
            //Recent file history
            m_MruMenu = new MruStripMenuInline(fileToolStripMenuItem, m_RecentFileHistory, OnMruOpenFile, m_MruRegisterKey + "\\MRU", 8);

            m_AdminMode = Environment.CommandLine.ToLower().Contains("-admin");

            m_ModuleManager = new ModuleManager(LogManager.GetLogger("ApplicationLog"), m_AdminMode, m_FileMenuStrip);
            m_ModuleManager.PropertyChanged         += OnModuleManagerPropertyChanged;
            m_ModuleManager.OnModulePropertyChanged += OnModulePropertyChanged;
            m_ModuleManager.LoadPlugins();

            foreach (IModule module in m_ModuleManager.Modules)
            {
                if (module.ModuleControl == null)
                {
                    continue;
                }

                var page = new TabPage(module.DisplayName);
                module.ModuleControl.Dock = DockStyle.Fill;
                page.Controls.Add(module.ModuleControl);
                page.Name = module.DisplayName;
                page.Tag  = module;
                m_ModuleTabControl.TabPages.Add(page);
            }

            OnTabSelected(this, new TabControlEventArgs(null, -1, TabControlAction.Selected));
            m_Task.Text = string.Empty;

            if (File.Exists(Path.ChangeExtension(Application.ExecutablePath, ".ftr")))
            {
                m_AllowedItemSettings = FilterSettings.FromFile(Path.ChangeExtension(Application.ExecutablePath, ".ftr"));
            }

            try
            {
                if (File.Exists(Path.ChangeExtension(Application.ExecutablePath, ".data")))
                {
                    m_Settings = SettingsGraph.FromFile(Path.ChangeExtension(Application.ExecutablePath, ".data"));
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, @"Failed to load settings file!");
            }

            var userSettings = new SettingsGraph();

            try
            {
                if (File.Exists(Properties.Settings.Default.SettingsFile))
                {
                    userSettings = SettingsGraph.FromFile(Properties.Settings.Default.SettingsFile);
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, @"Failed to load User settings file!");
            }

            string[] args = Environment.GetCommandLineArgs();

            for (int i = 1; i < args.Length; i++)
            {
                string arg = args[i];
                switch (arg)
                {
                default:
                    if (File.Exists(arg) && m_Database == null)
                    {
                        OpenLogFile(arg);
                    }
                    break;
                }
            }

            foreach (IModule module in m_ModuleManager.Modules)
            {
                if (Properties.Settings.Default.LoadSettings)
                {
                    module.LoadSettings(m_Settings, Properties.Resources.RES_PagePrefix, true);
                }

                module.LoadSettings(userSettings, string.Empty, false);

                module.ModuleLoaded();
            }


            m_Admin.Visible = m_AdminMode;

            UpdateTitle();
        }