Exemple #1
0
            public static void Save(FileInfo fileInfo)
            {
                string data = "";

                try {
                    lock (saveLocker) {
                        if (!dataDir.Exists)
                        {
                            dataDir.Create();
                        }
                        StringBuilder dataBuilder = new StringBuilder();
                        //버전 기록
                        dataBuilder.Append(VerText20);
                        dataBuilder.Append(Environment.NewLine);
                        //수집 시작
                        dataBuilder.Append(GetStartSep(dataSep));
                        dataBuilder.Append(Environment.NewLine);
                        for (int i = 0; i < LayerManager.Count; i++)
                        {
                            Layer layer = LayerManager.layerList[i];
                            dataBuilder.Append(GetStartSep(scheduleSep));
                            dataBuilder.Append(Environment.NewLine);

                            dataBuilder.AppendString(textVar, layer.mainText.Text);
                            dataBuilder.AppendString(memoVar, layer.memoText.Text);
                            dataBuilder.AppendVar(showMemoVar, layer.showMemo.ToString());
                            dataBuilder.AppendVar(priolityVar, ((double)layer.IndexY).ToString());
                            dataBuilder.AppendVar(targetDateVar, layer.TargetDate.ToOADate().ToString());
                            dataBuilder.AppendVar(colorVar, ((int)(layer.BGColor.GetHue())).ToString());

                            dataBuilder.Append(GetEndSep(scheduleSep));
                            dataBuilder.Append(Environment.NewLine);
                        }
                        dataBuilder.Append(GetEndSep(dataSep));
                        dataBuilder.Append(Environment.NewLine);
                        dataBuilder.Append(EndBlock);
                        //수집 완료

                        data = dataBuilder.ToString();
                        dataBuilder.Clear();
                        MaskBackup();

                        //덮어쓰기
                        using (FileStream fileStream = new FileStream(fileInfo.FullName, FileMode.Create, FileAccess.Write)) {
                            using (StreamWriter streamWriter = new StreamWriter(fileStream, Encoding.UTF8)) {
                                streamWriter.Write(data);
                                streamWriter.Flush();
                            }
                        }

                        MaskBackup();
                    }
                } catch (Exception e) {
                }
            }
Exemple #2
0
            public override void ToDigitString(StringBuilder sb, uint countOfUnits, DigitKindAndQuantity digitKind)
            {
                sb.AppendString(this.decadeName);

                if (countOfUnits == 0)
                {
                    // После "двадцать", "тридцать" и т.д. не пишут "ноль" (единиц)
                }
                else
                {
                    sb.AppendString(UnityToString(countOfUnits, digitKind));
                }
            }
Exemple #3
0
        /// <summary>
        /// Формирует запись класса с названием, например,
        /// "125 тысяч", "15 рублей".
        /// Для 0 записывает только единицу измерения в род.мн.
        /// </summary>
        private void DigitClassToString(uint digitBefore999, IUnit unit, StringBuilder sb)
        {
            uint countOfUnity    = digitBefore999 % 10;
            uint countOfDecades  = (digitBefore999 / 10) % 10;
            uint countOfHundreds = (digitBefore999 / 100) % 10;

            sb.AppendString(Hundreds[countOfHundreds]);

            if ((digitBefore999 % 100) != 0)
            {
                Decades[countOfDecades].ToDigitString(sb, countOfUnity, unit.DigitKindAndQuantity);
            }

            // Добавить название класса в нужной форме.
            sb.AppendString(ConformCurrencyTypeWithDigit(unit, digitBefore999));
        }
Exemple #4
0
        /// <summary>
        /// Получить пропись числа с согласованной единицей измерения.
        /// </summary>
        /// <returns> <paramref name="result"/> </returns>
        public StringBuilder ConvertToString(uint uintDigit, IUnit unit, StringBuilder result)
        {
            if (uintDigit == 0)
            {
                result.AppendString("ноль");
                result.AppendString(unit.GenitivePlural);
            }
            else
            {
                uint div1000 = uintDigit / 1000;
                HightDigitClassesToString(div1000, 0, result);
                DigitClassToString(uintDigit - div1000 * 1000, unit, result);
            }

            return(result);
        }
Exemple #5
0
        static void AppendParameters(this StringBuilder code)
        {
            code.AppendFormatting();
            code.Append('(');
            code.AppendFormatting();
            for (int i = 0, c = Rand(1, 5); i < c; ++i)
            {
                if (i != 0)
                {
                    code.AppendBreak();
                }
                switch (Rand(1, 5))
                {
                case 1: code.Append(Random.Next(427_680)); break;

                case 2: code.Append((float)Random.NextDouble() * 427_680.18f); break;

                case 3: code.AppendString(); break;

                case 4: code.AppendName(); break;

                case 5:
                    code.Append(':');
                    code.AppendFormatting();
                    code.AppendType(); break;
                }
            }
            code.AppendFormatting();
            code.Append(')');
        }
Exemple #6
0
            public static void Save(FileInfo fileInfo)
            {
                lock (saveLocker) {
                    if (!dataDir.Exists)
                    {
                        dataDir.Create();
                    }
                    StringBuilder dataBuilder = new StringBuilder();
                    //수집 시작
                    dataBuilder.Append(GetStartSep(dataSep));
                    dataBuilder.Append(Environment.NewLine);

                    dataBuilder.AppendVar(startProc, BigPicture.Option.System.startProcess.ToString());
                    dataBuilder.AppendVar(topMost, BigPicture.Option.System.topMost.ToString());
                    dataBuilder.AppendVar(alert, BigPicture.Option.System.alert.ToString());
                    dataBuilder.AppendVar(alertSound, BigPicture.Option.System.alertSound.ToString());
                    dataBuilder.AppendVar(alert_com, BigPicture.Option.System.alert_com.ToString());
                    dataBuilder.AppendVar(alert_1h, BigPicture.Option.System.alert_1h.ToString());
                    dataBuilder.AppendVar(alert_1d, BigPicture.Option.System.alert_1d.ToString());

                    dataBuilder.AppendVar(opacity, BigPicture.Option.Display.opacity.ToString());
                    dataBuilder.AppendVar(fontValue, BigPicture.Option.Display.fontValue.ToString());
                    dataBuilder.AppendString(fontName, BigPicture.Option.Display.font.FontFamily.Name);
                    dataBuilder.AppendVar(fontStyle, ((int)BigPicture.Option.Display.font.Style).ToString());
                    dataBuilder.AppendVar(fontSize, BigPicture.Option.Display.fontSize.ToString());
                    dataBuilder.AppendVar(animSpeed, BigPicture.Option.Display.animSpeed.ToString());
                    dataBuilder.AppendVar(widthOffset, BigPicture.Option.Display.widthOffset.ToString());
                    dataBuilder.AppendVar(dateType, BigPicture.Option.Display.dateType.ToString());

                    dataBuilder.Append(GetEndSep(dataSep));
                    //수집 완료
                    using (FileStream fileStream = new FileStream(fileInfo.FullName, FileMode.Create, FileAccess.Write)) {
                        using (StreamWriter streamWriter = new StreamWriter(fileStream, Encoding.UTF8)) {
                            streamWriter.Write(dataBuilder.ToString());
                            streamWriter.Flush();
                        }
                    }
                }
            }
Exemple #7
0
        /// <summary>Prints valid c# literal depending of <paramref name="x"/> type.</summary>
        /// <param name="code">Code to print to.</param> <param name="x">Value to print.</param>
        /// <param name="ifNotRecognized">(optional) Delegate to print unrecognized value.</param>
        /// <returns>Code with appended literal.</returns>
        public static StringBuilder AppendCode(this StringBuilder code, object x, Action <StringBuilder, object> ifNotRecognized = null)
        {
            if (x == null)
            {
                return(code.Append("null"));
            }
            if (x is bool)
            {
                return(code.AppendBool((bool)x));
            }
            if (x is string)
            {
                return(code.AppendString((string)x));
            }
            if (x is Type)
            {
                return(code.AppendType((Type)x));
            }

            var type = x.GetType();

            if (type.IsEnum())
            {
                return(code.AppendEnum(type, x));
            }

            if (ifNotRecognized != null)
            {
                ifNotRecognized(code, x);
            }
            else
            {
                code.Append(x);
            }

            return(code);
        }
            public override void ToDigitString(StringBuilder sb, uint countOfUnits, DigitKindAndQuantity digitKind)
            {
                sb.AppendString(this.decadeName);

                if (countOfUnits == 0)
                {
                    // После "двадцать", "тридцать" и т.д. не пишут "ноль" (единиц)
                }
                else
                {
                    sb.AppendString(UnityToString(countOfUnits, digitKind));
                }
            }
 public override void ToDigitString(StringBuilder sb, uint countOfUnits, DigitKindAndQuantity digitKind)
 {
     sb.AppendString(stringLikeDecade[countOfUnits]);
 }
Exemple #10
0
 public override void ToDigitString(StringBuilder sb, uint countOfUnits, DigitKindAndQuantity digitKind)
 {
     sb.AppendString(UnityToString(countOfUnits, digitKind));
 }
Exemple #11
0
        /// <summary>
        /// Формирует запись класса с названием, например,
        /// "125 тысяч", "15 рублей".
        /// Для 0 записывает только единицу измерения в род.мн.
        /// </summary>
        private  void DigitClassToString(uint digitBefore999, IUnit unit, StringBuilder sb)
        {
            uint countOfUnity = digitBefore999 % 10;
            uint countOfDecades = (digitBefore999 / 10) % 10;
            uint countOfHundreds = (digitBefore999 / 100) % 10;

            sb.AppendString(Hundreds[countOfHundreds]);

            if ((digitBefore999 % 100) != 0)
            {
                Decades[countOfDecades].ToDigitString(sb, countOfUnity, unit.DigitKindAndQuantity);
            }

            // Добавить название класса в нужной форме.
            sb.AppendString(ConformCurrencyTypeWithDigit(unit, digitBefore999));
        }
Exemple #12
0
        /// <summary>
        /// Получить пропись числа с согласованной единицей измерения.
        /// </summary>
        /// <returns> <paramref name="result"/> </returns>
        public StringBuilder ConvertToString(uint uintDigit, IUnit unit, StringBuilder result)
        {

            if (uintDigit == 0)
            {
                result.AppendString("ноль");
                result.AppendString(unit.GenitivePlural);
            }
            else
            {
                uint div1000 = uintDigit / 1000;
                HightDigitClassesToString(div1000, 0, result);
                DigitClassToString(uintDigit - div1000 * 1000, unit, result);
            }

            return result;
        }
Exemple #13
0
 public override void ToDigitString(StringBuilder sb, uint countOfUnits, DigitKindAndQuantity digitKind)
 {
     sb.AppendString(stringLikeDecade[countOfUnits]);
 }
Exemple #14
0
 public override void ToDigitString(StringBuilder sb, uint countOfUnits, DigitKindAndQuantity digitKind)
 {
     sb.AppendString(UnityToString(countOfUnits, digitKind));
 }