Beispiel #1
0
        private void Initialize(bool bFullInitialize)
        {
            Clear();

            if (!bFullInitialize)
            {
                return;
            }

            if (m_strHighAnsi == null)
            {
                StringBuilder sbHighAnsi = new StringBuilder();
                // [U+0080, U+009F] are C1 control characters,
                // U+00A0 is non-breaking space
                for (char ch = '\u00A1'; ch <= '\u00AC'; ++ch)
                {
                    sbHighAnsi.Append(ch);
                }
                // U+00AD is soft hyphen (format character)
                for (char ch = '\u00AE'; ch < '\u00FF'; ++ch)
                {
                    sbHighAnsi.Append(ch);
                }
                sbHighAnsi.Append('\u00FF');

                m_strHighAnsi = sbHighAnsi.ToString();
            }

            if (m_strSpecial == null)
            {
                PwCharSet pcs = new PwCharSet(false);
                pcs.AddRange('!', '/');
                pcs.AddRange(':', '@');
                pcs.AddRange('[', '`');
                pcs.Add(@"|~");
                pcs.Remove(@"-_ ");
                pcs.Remove(PwCharSet.Brackets);

                m_strSpecial = pcs.ToString();
            }
        }