Esempio n. 1
0
            public MetaData(ColorMessage.MetaData cmMeta)
            {
                m_index   = cmMeta.m_index;
                m_fgColor = cmMeta.m_style.Fg.ToSystemColor();
                if (m_fgColor.IsEmpty)
                {
                    m_fgColor = System.Drawing.Color.FromArgb(160, 160, 160);
                }
                m_bgColor = cmMeta.m_style.Bg.ToSystemColor();
                if (m_bgColor.IsEmpty)
                {
                    m_bgColor = System.Drawing.Color.Black;
                }

                if ((cmMeta.m_style.Flags & TextStyleFlags.HighIntensity) != 0)
                {
                    bool bold;
                    int  c;

                    c = Ansi.ColorToAnsiColor8(Chiroptera.Base.Color.FromSystemColor(m_fgColor), out bold);
                    if (bold == false)
                    {
                        m_fgColor = Ansi.AnsiColor8ToColor(c, true).ToSystemColor();
                    }

                    if (!cmMeta.m_style.Bg.IsEmpty)
                    {
                        c = Ansi.ColorToAnsiColor8(Chiroptera.Base.Color.FromSystemColor(m_bgColor), out bold);
                        if (bold == false)
                        {
                            m_bgColor = Ansi.AnsiColor8ToColor(c, true).ToSystemColor();
                        }
                    }
                }

                if ((cmMeta.m_style.Flags & TextStyleFlags.Inverse) != 0)
                {
                    System.Drawing.Color tmp = m_fgColor;
                    m_fgColor = m_bgColor;
                    m_bgColor = tmp;
                }
            }