コード例 #1
0
        private void SetStyle(string name)
        {
            var defStyle = configSvc
                           .GetDefaultPreferences()
                           .Where(s => s.Name == name)
                           .Single();

            var snames = this.SettingNames[name];

            float padTop, padLeft, padRight, padBottom;

            float.TryParse(defStyle.PaddingTop, out padTop);
            float.TryParse(defStyle.PaddingLeft, out padLeft);
            float.TryParse(defStyle.PaddingBottom, out padBottom);
            float.TryParse(defStyle.PaddingRight, out padRight);
            var uiStyle = new UiStyle
            {
                Name          = snames.Name,
                Foreground    = GetBrush((string)settingsSvc.Get(snames.ForeColor, defStyle.ForeColor)),
                Background    = GetBrush((string)settingsSvc.Get(snames.BackColor, defStyle.BackColor)),
                Font          = GetFont((string)settingsSvc.Get(snames.FontName, defStyle.FontName)),
                Width         = string.IsNullOrEmpty(defStyle.Width) ? default(int?) : Convert.ToInt32(defStyle.Width),
                PaddingLeft   = padLeft,
                PaddingTop    = padTop,
                PaddingRight  = padRight,
                PaddingBottom = padBottom,
            };

            AddStyle(uiStyle);
        }
コード例 #2
0
 private void AddStyle(UiStyle s)
 {
     Styles[s.Name] = s;
 }
コード例 #3
0
        public void Load()
        {
            var fontCvt  = TypeDescriptor.GetConverter(typeof(Font));
            var sizeCvt  = TypeDescriptor.GetConverter(typeof(Size));
            var fwsCvt   = TypeDescriptor.GetConverter(typeof(FormWindowState));
            var colorCvt = TypeDescriptor.GetConverter(typeof(Color));

            foreach (var dStyle in configSvc.GetDefaultPreferences())
            {
                int?width = null;
                int w;
                if (Int32.TryParse(dStyle.Width, out w))
                {
                    width = w;
                }
                AddStyle(new UiStyle
                {
                    Name       = dStyle.Name,
                    Foreground = GetBrush(dStyle.ForeColor),
                    Background = GetBrush(dStyle.BackColor),
                    Font       = GetFont(dStyle.FontName),
                    Width      = width,
                    Cursor     = GetCursor(dStyle.Cursor),
                });
            }
            var q = configSvc.GetDefaultPreferences();

            var defMemStyle     = q.Where(s => s.Name == UiStyles.MemoryWindow).Single();
            var defMemCodeStyle = q.Where(s => s.Name == UiStyles.MemoryCode).Single();
            var defMemHeurStyle = q.Where(s => s.Name == UiStyles.MemoryHeuristic).Single();
            var defMemDataStyle = q.Where(s => s.Name == UiStyles.MemoryData).Single();

            AddStyle(new UiStyle
            {
                Name       = UiStyles.MemoryWindow,
                Foreground = GetBrush((string)settingsSvc.Get(UiStyles.MemoryForeColor, defMemStyle.ForeColor)),
                Background = GetBrush((string)settingsSvc.Get(UiStyles.MemoryBackColor, defMemStyle.BackColor)),
                Font       = GetFont((string)settingsSvc.Get(UiStyles.MemoryFont, defMemStyle.FontName)),
            });
            AddStyle(new UiStyle
            {
                Name       = UiStyles.MemoryCode,
                Foreground = GetBrush((string)settingsSvc.Get(UiStyles.MemoryCodeForeColor, defMemCodeStyle.ForeColor)),
                Background = GetBrush((string)settingsSvc.Get(UiStyles.MemoryCodeBackColor, defMemCodeStyle.BackColor)),
            });
            AddStyle(new UiStyle
            {
                Name       = UiStyles.MemoryHeuristic,
                Foreground = GetBrush((string)settingsSvc.Get(UiStyles.MemoryHeuristicForeColor, defMemHeurStyle.ForeColor)),
                Background = GetBrush((string)settingsSvc.Get(UiStyles.MemoryHeuristicBackColor, defMemHeurStyle.BackColor)),
            });
            AddStyle(new UiStyle
            {
                Name       = UiStyles.MemoryData,
                Foreground = GetBrush((string)settingsSvc.Get(UiStyles.MemoryDataForeColor, defMemDataStyle.ForeColor)),
                Background = GetBrush((string)settingsSvc.Get(UiStyles.MemoryDataBackColor, defMemDataStyle.BackColor)),
            });

            var defDisStyle = q.Where(s => s.Name == UiStyles.Disassembler).Single();
            var disStyle    = new UiStyle
            {
                Name       = UiStyles.Disassembler,
                Foreground = GetBrush((string)settingsSvc.Get(UiStyles.DisassemblerForeColor, defDisStyle.ForeColor)),
                Background = GetBrush((string)settingsSvc.Get(UiStyles.DisassemblerBackColor, defDisStyle.BackColor)),
                Font       = GetFont((string)settingsSvc.Get(UiStyles.DisassemblerFont, defDisStyle.FontName)),
            };

            AddStyle(disStyle);
            var defDisOpStyle = q.Where(s => s.Name == UiStyles.DisassemblerOpcode).Single();
            var disOpStyle    = new UiStyle
            {
                Name       = UiStyles.DisassemblerOpcode,
                Foreground = GetBrush((string)settingsSvc.Get(UiStyles.DisassemblerOpcodeColor, defDisOpStyle.ForeColor)),
                Width      = string.IsNullOrEmpty(defDisOpStyle.Width) ? default(int?) : Convert.ToInt32(defDisOpStyle.Width),
            };

            AddStyle(disOpStyle);


            var defCodeStyle = q.Where(s => s.Name == UiStyles.CodeWindow).Single();
            var codeStyle    = new UiStyle
            {
                Name       = UiStyles.CodeWindow,
                Foreground = GetBrush((string)settingsSvc.Get(UiStyles.CodeForeColor, defCodeStyle.ForeColor)),
                Background = GetBrush((string)settingsSvc.Get(UiStyles.CodeBackColor, defCodeStyle.BackColor)),
                Font       = GetFont((string)settingsSvc.Get(UiStyles.CodeFont, defDisStyle.FontName)),
            };

            AddStyle(codeStyle);

            var defCodeKwStyle = q.Where(s => s.Name == UiStyles.CodeKeyword).Single();
            var codeKwStyle    = new UiStyle
            {
                Name       = UiStyles.CodeKeyword,
                Foreground = GetBrush((string)settingsSvc.Get(UiStyles.CodeKeywordColor, defCodeKwStyle.ForeColor)),
                Font       = GetFont((string)settingsSvc.Get(UiStyles.CodeKeywordFont, defCodeStyle.FontName))
            };

            AddStyle(codeKwStyle);

            var defCodeCommentStyle = q.Where(s => s.Name == UiStyles.CodeComment).Single();
            var codeCommentStyle    = new UiStyle
            {
                Name       = UiStyles.CodeComment,
                Foreground = GetBrush((string)settingsSvc.Get(UiStyles.CodeCommentColor, defCodeCommentStyle.ForeColor)),
                Font       = GetFont((string)settingsSvc.Get(UiStyles.CodeCommentFont, defCodeStyle.FontName))
            };

            AddStyle(codeCommentStyle);

            this.WindowSize  = ConvertFrom <Size>(sizeCvt, settingsSvc.Get("WindowSize", null));
            this.WindowState = ConvertFrom <FormWindowState>(fwsCvt, settingsSvc.Get("WindowState", "Normal"));
        }