コード例 #1
0
        public override object ReadJson(JsonReader reader, Type objectType, object existingValue,
                                        JsonSerializer serializer)
        {
            if (reader.TokenType == JsonToken.Null)
            {
                return(null);
            }

            var lines = new Lines();

            var token = JToken.Load(reader);

            if (token.Type == JTokenType.Array)
            {
                var arrayLines = token.Select(x => (string)x).Select(x => x.EndsWith("\n") ? x.TrimEnd() : x).ToList();
                lines.AddRange(arrayLines);
                lines.MultiLine = true;
            }
            else
            {
                var arrayLines = token.Value <string>().Split('\n').ToList();
                lines.AddRange(arrayLines);
                lines.MultiLine = false;
            }

            return(lines);
        }
コード例 #2
0
 public EditWriteoffDoc(WriteoffDoc doc)
     : this()
 {
     DisplayName = "Новое списание";
     InitDoc(doc);
     Lines.AddRange(doc.Lines);
 }
コード例 #3
0
 public EditWriteoffDoc(uint id)
     : this()
 {
     DisplayName = "Редактирование списания";
     InitDoc(Session.Load <WriteoffDoc>(id));
     Lines.AddRange(Doc.Lines);
 }
コード例 #4
0
 public EditReassessmentDoc(uint id)
     : this()
 {
     DisplayName = "Редактирование переоценки";
     InitDoc(Session.Load <ReassessmentDoc>(id));
     Lines.AddRange(Doc.Lines);
 }
コード例 #5
0
ファイル: ForClause.cs プロジェクト: nico-izo/KOIB
 public override Lines ConstructContent(ReportTemplateParser parser)
 {
     var lines = new Lines();
     try
     {
         if (Body != null)
         {
             parser.RunFor(Each, In,
                           delegate
                               {
                                   foreach (BasePlainElement element in Body)
                                   {
                                       lines.AddRange(element.ConstructContent(parser));
                                   }
                               });
         }
     }
     catch (ReportTemplateParserException pex)
     {
         lines.Add(new ReportLine(
             new[] {"-+- FOR: " + pex.Reason + " (" + pex.Type + "." + pex.Name + ") -!-" },
             LineAlign.Left, "0", false, false, false, false, -1));
     }
     return lines;
 }
コード例 #6
0
ファイル: ReportTemplate.cs プロジェクト: xoposhiy/KOIB
        public static Lines ConstructHeader(BasePlainElement[] headerBody)
        {
            var logger = Managers.PrintingManager.Logger;

            logger.LogVerbose(Message.Common_DebugCall);
            var header = new Lines();

            if (headerBody != null)
            {
                foreach (BasePlainElement element in headerBody)
                {
                    header.AddRange(element.ConstructContent(s_parser));
                }
                int rowIndex = 0;
                foreach (IReportElement t in header)
                {
                    rowIndex++;
                    if (t.IsPrintable)
                    {
                        ((ReportLine)t).TransformLine(
                            str => str.Replace(ReportTemplateParser.MACRO_CURRENT_ROW, rowIndex.ToString()));
                    }
                    else
                    {
                        if (t is ServiceLine)
                        {
                            rowIndex = ((ServiceLine)t).CurrentRow;
                        }
                    }
                }
            }
            logger.LogVerbose(Message.Common_DebugReturn);
            return(header);
        }
コード例 #7
0
        /// <summary>
        /// Replaces existing <see cref="Lines"/> with the specified <see cref="ImageMarkerLine"/>s.
        /// </summary>
        /// <param name="lines">The new <see cref="ImageMarkerLine"/>s</param>
        public void UpdateLines(List <ImageMarkerLine> lines)
        {
            if (Lines.Count > 0)
            {
                ImageMarkerLine[] tempLines = new ImageMarkerLine[Lines.Count];
                Lines.CopyTo(tempLines);
                Lines.Clear();

                foreach (ImageMarkerLine imageMarkerLine in tempLines)
                {
                    Rectangle rectangle = GetImageMarkerLineRectangle(imageMarkerLine);
                    rectangle.Inflate(1, 1);
                    Invalidate(rectangle);
                }
            }

            if (lines.Count > 0)
            {
                Lines.AddRange(lines);

                foreach (ImageMarkerLine imageMarkerLine in Lines)
                {
                    Rectangle rectangle = GetImageMarkerLineRectangle(imageMarkerLine);
                    rectangle.Inflate(1, 1);
                    Invalidate(rectangle);
                }
            }
        }
コード例 #8
0
 public EditReassessmentDoc(ReassessmentDoc doc)
     : this()
 {
     DisplayName = "Новая переоценка";
     InitDoc(doc);
     Lines.AddRange(doc.Lines);
 }
コード例 #9
0
        public override Lines ConstructContent(ReportTemplateParser parser)
        {
            var lines = new Lines();

            try
            {
                if (Body != null)
                {
                    parser.RunFor(Each, In,
                                  delegate
                    {
                        foreach (BasePlainElement element in Body)
                        {
                            lines.AddRange(element.ConstructContent(parser));
                        }
                    });
                }
            }
            catch (ReportTemplateParserException pex)
            {
                lines.Add(new ReportLine(
                              new[] { "-+- FOR: " + pex.Reason + " (" + pex.Type + "." + pex.Name + ") -!-" },
                              LineAlign.Left, "0", false, false, false, false, -1));
            }
            return(lines);
        }
コード例 #10
0
        public ClusteringAI(PixelData pixels, int maxRank = 10)
        {
            DateTime start = DateTime.Now;

            Debug.WriteLine("Initialize Start");
            Hierarchies.Add(GridHierarchy.CreateFromPixels(pixels));
            Debug.WriteLine($"Initialize Over,TimeConsuming:{DateTime.Now - start}");
            Debug.WriteLine($"Generation Start");
            for (var i = 0; i <= maxRank - 1; i++)
            {
                start = DateTime.Now;
                Hierarchies.Add(Hierarchies.Last().Generate());
                Debug.WriteLine($"Total:{maxRank},Current:{i + 1},Time Consuming:{DateTime.Now - start},Hierarchy[{Hierarchies.Last()}]");
            }
            Debug.WriteLine(pixels.Colors.Length);

            // Paint lines
            Lines.AddRange(GenerateLines(Hierarchies[9].Clusters.ToList()));

            // Paint pixels
            foreach (var item in Hierarchies[8].Clusters)
            {
                BuildResult2(Lines, item);
            }
        }
コード例 #11
0
 public ParsedComment(Declaration decl)
 {
     if (decl.Comment != null)
     {
         Lines.AddRange(decl.Comment.Text.Split(AnyNewLine, StringSplitOptions.None).Select(l => l.Trim('/')));
     }
 }
コード例 #12
0
ファイル: CreateOrderCommand.cs プロジェクト: zz110/edasample
 /// <summary>
 /// Initializes a new instance of the <see cref="CreateOrderCommand"/> class.
 /// </summary>
 /// <param name="customerId">The customer identifier.</param>
 /// <param name="shoppingCartId">The shopping cart identifier.</param>
 /// <param name="lines">The lines.</param>
 public CreateOrderCommand(Guid customerId, Guid shoppingCartId, IEnumerable <CreateOrderLine> lines)
     : this()
 {
     CustomerId     = customerId;
     ShoppingCartId = shoppingCartId;
     Lines.AddRange(lines);
 }
コード例 #13
0
 public ReturnToSupplierDetails(uint id)
     : this()
 {
     DisplayName = "Редактирование возврата поставщику " + id;
     InitDoc(Session.Load <ReturnDoc>(id));
     Lines.AddRange(Doc.Lines);
 }
コード例 #14
0
        public ClusteringAI(PixelData pixels, int maxRank = 10)
        {
            DateTime start = DateTime.Now;

            Debug.WriteLine("Initialize Start");
            Hierarchies.Add(GridHierarchy.CreateFromPixels(pixels));
            Debug.WriteLine($"Initialize Over,TimeConsuming:{DateTime.Now - start}");
            Debug.WriteLine($"Generation Start");
            for (var i = 0; i <= maxRank - 1; i++)
            {
                start = DateTime.Now;
                Hierarchies.Add(Hierarchies.Last().Generate());
                Debug.WriteLine($"Total:{maxRank},Current:{i + 1},Time Consuming:{DateTime.Now - start},Hierarchy[{Hierarchies.Last()}]");
            }
            Debug.WriteLine(pixels.Colors.Length);

            int mid = 4;

            for (var i = maxRank - 1; i >= mid; i += -2)
            {
                //Lines.AddRange(GenerateOutlines(Hierarchies[i]));
                Lines.AddRange(GenerateLines(Hierarchies[i]));
            }

            //var index = 8;
            //Lines.AddRange(GenerateLines(Hierarchies[index]));
            //Lines.AddRange(DeepGenerateLines(Hierarchies[mid].Clusters, Hierarchies[mid].Rank));
        }
コード例 #15
0
 public ReturnToSupplierDetails(ReturnDoc doc)
     : this()
 {
     DisplayName = "Новый возврат поставщику";
     InitDoc(doc);
     Lines.AddRange(doc.Lines);
 }
コード例 #16
0
        public Prompt(object[] lines) : this()
        {
            if (lines.First() is int)
            {
                PrefixLines = (int)lines.First();
                lines       = lines.Skip(1).ToArray();
            }

            Line[] lns;
            if (LanguagePrimitives.TryConvertTo(lines, out lns))
            {
                Lines.AddRange(lns);
                return;
            }

            Line ln;

            if (LanguagePrimitives.TryConvertTo(lines, out ln))
            {
                Lines.Add(ln);
                return;
            }

            foreach (object line in lines)
            {
                Lines.Add(LanguagePrimitives.ConvertTo <Line>(line));
                continue;
            }
        }
コード例 #17
0
 public EditDisplacementDoc(uint id)
     : this()
 {
     DisplayName = "Редактирование внутреннего перемещения " + Session.Load <DisplacementDoc>(id).Id;
     InitDoc(Session.Load <DisplacementDoc>(id));
     Lines.AddRange(Doc.Lines);
 }
コード例 #18
0
 public TextModel(string text)
 {
     // split by new line
     Lines.AddRange(
         text.Replace("\r\n", "\n")
         .Split('\n')
         .Select(line => new TextLine(line)));
 }
コード例 #19
0
ファイル: DebugInfo.cs プロジェクト: ngoffee/ela
 internal DebugInfo Merge(DebugInfo syms)
 {
     Scopes.AddRange(syms.Scopes);
     Lines.AddRange(syms.Lines);
     Vars.AddRange(syms.Vars);
     Functions.AddRange(syms.Functions);
     return(this);
 }
コード例 #20
0
ファイル: Chatlog.cs プロジェクト: xerodok/Campah
        public void Update()
        {
            if (FFACEInstance.Instance == null)
            {
                return;
            }

            if (ChatLog.Blocks.Count > 1000)
            {
                while (ChatLog.Blocks.Count > 500)
                {
                    ChatLog.Blocks.Remove(ChatLog.Blocks.FirstBlock);
                }
            }

            FFACE.ChatTools.ChatLine chatline;
            var lines = new List <FFACE.ChatTools.ChatLine>();

            while ((chatline = FFACEInstance.Instance.Chat.GetNextLine()) != null)
            {
                if (lines.Count > 0 && chatline.RawString[4] == lines[0].RawString[4])
                {
                    lines[0].Text += chatline.Text;
                }
                else
                {
                    if (chatline.Type == ChatMode.RcvdTell)
                    {
                        var findname = new Regex(@"(.*)>>.*");
                        _lasttells.Remove(findname.Matches(chatline.Text)[0].Groups[1].Value);
                        _lasttells.Insert(0, findname.Matches(chatline.Text)[0].Groups[1].Value);
                        //LastTell = findname.Matches(chatline.Text)[0].Groups[1].Value;
                    }
                    lines.Add(chatline);
                }
            }

            Lines.AddRange(lines);
            if (Lines.Count > 500)
            {
                Lines.RemoveRange(0, 200);
            }

            foreach (FFACE.ChatTools.ChatLine line in lines)
            {
                AddLine(line);
            }
            foreach (ChatAlert alert in _alerts)
            {
                foreach (FFACE.ChatTools.ChatLine line in lines)
                {
                    if (alert.Mode == ChatMode.Generic || alert.Mode == line.Type)
                    {
                        alert.ParseLine(line);
                    }
                }
            }
        }
コード例 #21
0
        public CodeTextElement(List <CodeTextLine> lines)
        {
            Lines.AddRange(lines);

            StartLine = Lines.First().LineNumber;
            EndLine   = Lines.Last().LineNumber;

            Text = ConcatString(Lines);
        }
コード例 #22
0
        /// <summary>
        ///
        /// </summary>
        /// <returns></returns>
        protected virtual IEnumerable <ILine> GetLinesForInsertIntoStoredProcedure()
        {
            var procedureName = Database.GetProcedureName(Table, "Add");

            Lines.AddRange(GetDropProcedureLines(procedureName));

            Lines.Add(new EmptyLine());

            yield return(new CodeLine("create procedure {0}", procedureName));

            for (var i = 0; i < Table.Columns.Count; i++)
            {
                var column = Table.Columns[i];

                yield return(new CodeLine("{0}{1} {2}{3}{4}", Indent(1), Database.GetParameterName(column), GetType(column), Table.Identity != null && Table.Identity.Name == column.Name ? " output" : string.Empty, i < Table.Columns.Count - 1 ? "," : string.Empty));
            }

            yield return(new CodeLine("as"));

            yield return(new CodeLine("{0}insert into {1}", Indent(1), Database.GetObjectName(Table)));

            yield return(new CodeLine("{0}(", Indent(1)));

            var columns = Table.GetColumnsWithNoIdentity().ToList();

            for (var i = 0; i < columns.Count; i++)
            {
                var column = columns[i];

                yield return(new CodeLine("{0}{1}{2}", Indent(2), Database.GetObjectName(column), i < columns.Count - 1 ? "," : string.Empty));
            }

            yield return(new CodeLine("{0})", Indent(1)));

            yield return(new CodeLine("{0}values", Indent(1)));

            yield return(new CodeLine("{0}(", Indent(1)));

            for (var i = 0; i < columns.Count; i++)
            {
                var column = columns[i];

                yield return(new CodeLine("{0}{1}{2}", Indent(2), Database.GetParameterName(column), i < columns.Count - 1 ? "," : string.Empty));
            }

            yield return(new CodeLine("{0})", Indent(1)));

            if (Table.Identity != null)
            {
                yield return(new EmptyLine());

                yield return(new CodeLine("{0}select {1} = scope_identity()", Indent(1), Database.GetParameterName(Table.Identity.Name)));
            }

            yield return(new CodeLine("go"));
        }
コード例 #23
0
        /// <summary>
        ///
        /// </summary>
        /// <returns></returns>
        protected virtual IEnumerable <ILine> GetLinesForGetAllStoredProcedure()
        {
            var procedureName = Database.GetProcedureName(Table, "GetAll");

            Lines.AddRange(GetDropProcedureLines(procedureName).ToList());

            Lines.Add(new EmptyLine());

            yield return(new CodeLine("create procedure {0}", procedureName));

            var constraints = Table.ForeignKeys.Where(constraint => constraint.Key != null && constraint.Key.Count == 1).ToList();

            for (var i = 0; i < constraints.Count; i++)
            {
                var foreignKey = constraints[i];
                var columns    = Table.GetColumnsFromConstraint(foreignKey).ToList();

                if (columns.Count == 1)
                {
                    yield return(new CodeLine("{0}{1} {2} = null{3}", Indent(1), Database.GetParameterName(columns.First()), columns.First().Type, i < constraints.Count - 1 ? "," : string.Empty));
                }
            }

            yield return(new CodeLine("as"));

            yield return(new CodeLine("{0}select", Indent(1)));

            for (var i = 0; i < Table.Columns.Count; i++)
            {
                var column = Table.Columns[i];

                yield return(new CodeLine("{0}{1}{2}", Indent(2), Database.GetObjectName(column), i < Table.Columns.Count - 1 ? "," : string.Empty));
            }

            yield return(new CodeLine("{0}from", Indent(1)));

            yield return(new CodeLine("{0}{1}", Indent(2), Database.GetObjectName(Table)));

            if (constraints.Count > 0)
            {
                yield return(new CodeLine("{0}where", Indent(1)));

                for (var i = 0; i < constraints.Count; i++)
                {
                    var foreignKey = constraints[i];
                    var columns    = Table.GetColumnsFromConstraint(foreignKey).ToList();

                    if (columns.Count == 1)
                    {
                        yield return(new CodeLine("{0}({1} is null or {2} = {1}){3}", Indent(2), Database.GetParameterName(columns.First()), Database.NamingConvention.GetObjectName(columns.First().Name), i < constraints.Count - 1 ? " and" : string.Empty));
                    }
                }
            }

            yield return(new CodeLine("go"));
        }
コード例 #24
0
 private void Parse(bool showException, string str)
 {
     try
     {
         Lines = Tokenizer.Parse(str);
     }
     catch (Exception e)
     {
         Line line = new Line();
         if (e is TokenizationException te)
         {
             try
             {
                 if (te.LineNumber != 0)
                 {
                     List <int> lines   = GetLineNumbers(te.LineNumber.ToString());
                     string     context = GetLines(str, lines);
                     line = new Line()
                     {
                         Tokens = new List <IToken> {
                             new Text()
                         }
                     };
                     foreach (char ch in context)
                     {
                         line.Tokens[0].Append(ch);
                     }
                 }
             }
             catch (Exception) { }
         }
         if (showException)
         {
             try
             {
                 Lines.Clear();
                 if (line.Tokens.Count > 0)
                 {
                     Lines.Add(line);
                 }
                 List <Line> lines = Tokenizer.Parse(e.ToString());
                 Lines.AddRange(lines);
             }
             catch (Exception)
             {
                 Console.Error.WriteLine(e);
             }
         }
         else
         {
             Console.Error.WriteLine(e);
         }
     }
 }
コード例 #25
0
        protected IniSectionData(IniSectionData section)
            : base(IniLineType.SectionHeader, section?.ExistingText)
        {
            if (section is null)
            {
                throw new ArgumentNullException(nameof(section));
            }

            Name     = section.Name;
            IsGlobal = section.IsGlobal;

            Lines.AddRange(section.Lines);
        }
コード例 #26
0
ファイル: Query.cs プロジェクト: sharkAndshark/linq2db
		internal override void Init(IBuildContext parseContext, List<ParameterAccessor> sqlParameters)
		{
			var statement = parseContext.GetResultStatement();

			if (parseContext.Builder.Tag != null)
				(statement.Tag ??= new SqlComment()).Lines.AddRange(parseContext.Builder.Tag.Lines);

			Queries.Add(new QueryInfo
			{
				Statement          = statement,
				ParameterAccessors = sqlParameters,
			});
		}
コード例 #27
0
        /// <summary>
        ///
        /// </summary>
        /// <returns></returns>
        protected virtual IEnumerable <ILine> GetLinesForGetStoredProcedure()
        {
            var procedureName = Database.GetProcedureName(Table, "Get");

            Lines.AddRange(GetDropProcedureLines(procedureName).ToList());

            Lines.Add(new EmptyLine());

            yield return(new CodeLine("create procedure {0}", procedureName));

            if (Table.PrimaryKey != null)
            {
                for (var i = 0; i < Table.PrimaryKey.Key.Count; i++)
                {
                    var key = Table.PrimaryKey.Key[i];

                    var column = Table.GetColumnsFromConstraint(Table.PrimaryKey).First();

                    yield return(new CodeLine("{0}{1} {2}", Indent(1), Database.GetParameterName(key), GetType(column)));
                }
            }

            yield return(new CodeLine("as"));

            yield return(new CodeLine("{0}select", Indent(1)));

            for (var i = 0; i < Table.Columns.Count; i++)
            {
                var column = Table.Columns[i];

                yield return(new CodeLine("{0}{1}{2}", Indent(2), Database.GetObjectName(column), i < Table.Columns.Count - 1 ? "," : string.Empty));
            }

            yield return(new CodeLine("{0}from", Indent(1)));

            yield return(new CodeLine("{0}{1}", Indent(2), Database.GetObjectName(Table)));

            yield return(new CodeLine("{0}where", Indent(1)));

            if (Table.PrimaryKey != null)
            {
                for (var i = 0; i < Table.PrimaryKey.Key.Count; i++)
                {
                    var item = Table.PrimaryKey.Key[i];

                    yield return(new CodeLine("{0}{1} = {2}{3}", Indent(2), Database.GetObjectName(item), Database.GetParameterName(item), i < Table.PrimaryKey.Key.Count - 1 ? "," : string.Empty));
                }
            }

            yield return(new CodeLine("go"));
        }
コード例 #28
0
        public AssDocument(SubtitleDocument doc)
            : this(new MemoryStream(Resources.DefaultStyles), AssStyleOptionsList.LoadFromString(Resources.DefaultStyleOptions))
        {
            float sizeFactor = (float)doc.VideoDimensions.Height / VideoDimensions.Height;

            foreach (AssStyle style in _styles.Values)
            {
                style.LineHeight *= sizeFactor;
            }

            VideoDimensions = doc.VideoDimensions;

            Lines.Clear();
            Lines.AddRange(doc.Lines.Select(l => l as AssLine ?? new AssLine(l)));
        }
コード例 #29
0
ファイル: GraphicMeta.cs プロジェクト: windygu/zcgl
 public void CloneFrom(GraphicMetaBase source)
 {
     if (this == source)
     {
         return;
     }
     base.CloneFrom(source);
     BackLines.Clear();
     BackLines.AddRange(source.BackLines);
     Lines.Clear();
     Lines.AddRange(source.Lines);
     Nodes.Clear();
     Nodes.AddRange(source.Nodes);
     Setting = source.Setting;
 }
コード例 #30
0
 public override void WriteLine(string value)
 {
     if (partialLine != null)
     {
         partialLine.Append(value);
         value       = partialLine.ToString();
         partialLine = null;
     }
     if (value.Contains(Environment.NewLine))
     {
         Lines.AddRange(value.Split(new[] { Environment.NewLine }, StringSplitOptions.None));
     }
     else
     {
         Lines.Add(value);
     }
 }
コード例 #31
0
            /// <summary>
            ///     Transform tree to list
            /// </summary>
            public Lines Expand(int from, int to)
            {
                var result = new Lines();

                for (var i = from; i <= to; i++)
                {
                    if (this[i].State != DiffType.Deleted)
                    {
                        result.Add(this[i]);
                    }
                    if (this[i].SubLines != null)
                    {
                        result.AddRange(this[i].SubLines.Expand());
                    }
                }

                return(result);
            }
コード例 #32
0
ファイル: IfClause.cs プロジェクト: nico-izo/KOIB
 public override Lines ConstructContent(ReportTemplateParser parser)
 {
     var lines = new Lines();
     try
     {
         BasePlainElement[] branch = parser.Check(Condition, Not) ? Then : Else;
         if (branch != null)
         {
             foreach (BasePlainElement element in branch)
             {
                 lines.AddRange(element.ConstructContent(parser));
             }
         }
     }
     catch (ReportTemplateParserException pex)
     {
         lines.Add(new ReportLine(
             new[]{"-+- IF: " + pex.Reason + " (" + pex.Type + "." + pex.Name + ") -!-"},
             LineAlign.Left, "0", false, false, false, false, -1));
     }
     return lines;
 }
コード例 #33
0
ファイル: Table.cs プロジェクト: nico-izo/KOIB
 public override Table[] GetTables(ReportTemplateParser parser)
 {
     Lines = new Lines();
     Lines.AddRange(ReportTemplate.ConstructHeader(Body));
     return new[] {this};
 }
コード例 #34
0
ファイル: ReportTemplate.cs プロジェクト: nico-izo/KOIB
 public static Lines ConstructHeader(BasePlainElement[] headerBody)
 {
     var logger = Managers.PrintingManager.Logger;
     logger.LogVerbose(Message.Common_DebugCall);
     var header = new Lines();
     if(headerBody != null)
     {
         foreach (BasePlainElement element in headerBody)
         {
             header.AddRange(element.ConstructContent(s_parser));
         }
         int rowIndex = 0;
         foreach (IReportElement t in header)
         {
             rowIndex++;
             if (t.IsPrintable)
             {
                 ((ReportLine) t).TransformLine(
                     str => str.Replace(ReportTemplateParser.MACRO_CURRENT_ROW, rowIndex.ToString()));
             }
             else
             {
                 if(t is ServiceLine)
                 {
                     rowIndex = ((ServiceLine) t).CurrentRow;
                 }
             }
         }
     }
     logger.LogVerbose(Message.Common_DebugReturn);
     return header;
 }
コード例 #35
0
ファイル: Layers.cs プロジェクト: pekand/infinite-diagram
        public Lines getAllLines()
        {
            Lines lines = new Lines();

            foreach (Layer l in this.layers)
            {
                lines.AddRange(l.lines);
            }

            return lines;
        }