/// <summary>
        /// Loads all user defined presets in the settings node and its sub nodes.
        /// </summary>
        /// <param name="node">The node to start with to load all user defined presets.</param>
        public static void LoadUserDefinedPresetsInAllNodes(SettingsNode node)
        {
            if (node.EditorControl != null)
                node.EditorControl.LoadUserDefinedPresets();

            foreach (TreeNode subNode in node.Nodes)
            {
                if (subNode is SettingsNode)
                    LoadUserDefinedPresetsInAllNodes(subNode as SettingsNode);
            }
        }
        /// <summary>
        /// Applies all settings defined in the settings node and its sub nodes.
        /// </summary>
        /// <param name="node">The node to start with to apply all settings.</param>
        public static void ApplySettingsInAllNodes(SettingsNode node)
        {
            if (node.EditorControl != null)
                node.EditorControl.ApplySettings();

            foreach (TreeNode subNode in node.Nodes)
            {
                if (subNode is SettingsNode)
                    ApplySettingsInAllNodes(subNode as SettingsNode);
            }
        }
Example #3
0
        /// <summary>
        /// Loads all user defined presets in the settings node and its sub nodes.
        /// </summary>
        /// <param name="node">The node to start with to load all user defined presets.</param>
        public static void LoadUserDefinedPresetsInAllNodes(SettingsNode node)
        {
            if (node.EditorControl != null)
            {
                node.EditorControl.LoadUserDefinedPresets();
            }

            foreach (TreeNode subNode in node.Nodes)
            {
                if (subNode is SettingsNode)
                {
                    LoadUserDefinedPresetsInAllNodes(subNode as SettingsNode);
                }
            }
        }
Example #4
0
        /// <summary>
        /// Applies all settings defined in the settings node and its sub nodes.
        /// </summary>
        /// <param name="node">The node to start with to apply all settings.</param>
        public static void ApplySettingsInAllNodes(SettingsNode node)
        {
            if (node.EditorControl != null)
            {
                node.EditorControl.ApplySettings();
            }

            foreach (TreeNode subNode in node.Nodes)
            {
                if (subNode is SettingsNode)
                {
                    ApplySettingsInAllNodes(subNode as SettingsNode);
                }
            }
        }
        public override void Initialize(InitializationContext context)
        {
            _extensionHost = (LiteExtensionHost)context.Host;

            var generalSettingsEditorControl = new GeneralSettingsEditor(_settings = LiteDevelopSettings.Instance) { Dock = DockStyle.Fill };
            var internationalSettingsEditorControl = new InternationalSettingsEditor(_settings) { Dock = DockStyle.Fill };
            var appearanceEditorControl = new AppearanceEditor() { Dock = DockStyle.Fill };

            var generalSettingsNode = new SettingsNode("General", generalSettingsEditorControl);
            var internationalSettingsNode = new SettingsNode("International", internationalSettingsEditorControl);
            var appearanceNode = new SettingsNode("Appearance", appearanceEditorControl);

            _settingsNode = new SettingsNode("LiteDevelop", generalSettingsEditorControl);
            _settingsNode.Nodes.AddRange(new TreeNode[]
            {
                generalSettingsNode,
                appearanceNode,
                internationalSettingsNode,
            });

            _componentMuiIdentifiers = new Dictionary<object, string>()
            {
                {generalSettingsNode, "LiteDevelopExtension.GeneralSettings"},
                {appearanceNode, "LiteDevelopExtension.Appearance"},
                {internationalSettingsNode, "LiteDevelopExtension.InternationalSettings"},
            };

            _extensionHost.UILanguageChanged += extensionHost_UILanguageChanged;
            extensionHost_UILanguageChanged(null, null);

            _appearanceMapPath = Path.Combine(Constants.AppDataDirectory, "appearance.xml");
            _defaultAppearanceMap  = AppearanceMap.LoadFromFile(Path.Combine(
                    Path.GetDirectoryName(typeof(LiteDevelopExtension).Assembly.Location),
                    "default_appearance.xml"));

            try { _appearanceMap = AppearanceMap.LoadFromFile(_appearanceMapPath); }
            catch { _appearanceMap = _defaultAppearanceMap; }
        }
        private Dictionary<object, string> SetupSettingsControls()
        {
            var generalSettingsControl = new GeneralSettingsControl(ExtensionHost, MuiProcessor, Settings) { Dock = DockStyle.Fill };
            var generalSettingsNode = new SettingsNode("General", generalSettingsControl);
            var autoCompleteSettingsControl = new AutoCompleteSettingsControl(ExtensionHost, MuiProcessor, Settings) { Dock = DockStyle.Fill };
            var autoCompleteSettingsNode = new SettingsNode("Auto completion", autoCompleteSettingsControl);

            RootSettingsNode = new SettingsNode("Code Editor", generalSettingsControl);
            RootSettingsNode.Nodes.AddRange(new TreeNode[] { generalSettingsNode, autoCompleteSettingsNode });

            return new Dictionary<object, string>()
            {
                {generalSettingsNode, "CodeEditorExtension.GeneralSettings"},
                {autoCompleteSettingsNode, "CodeEditorExtension.AutoCompleteSettings"},
            };
        }