Exemplo n.º 1
0
        public override void OnDraw()
        {
            Graphic.Clear();
            Graphic.FitSizesToWindow();

            var temp1 = GetSafePixelsList(paintPixels);

            for (int i = 0; i < temp1.Count; i++)
            {
                Graphic.Add(temp1[i].Char.ToString(), temp1[i].Position, temp1[i].Color);
            }

            var temp2 = GetSafePixelsList(tempPixels);

            for (int i = 0; i < temp2.Count; i++)
            {
                Graphic.Add(temp2[i].Char.ToString(), temp2[i].Position, temp2[i].Color);
            }
            temp2.Clear();

            if (justSaved || justLoaded)
            {
                if (justSaved)
                {
                    Graphic.AddRectangle(" ", new Colors(Colors.Color.Default, Colors.Color.Green), new Coords(3, 2), new Coords(Graphic.Width - 4, Graphic.Height - 3));
                    justSaved = false;
                }

                if (justLoaded)
                {
                    Graphic.AddRectangle(" ", new Colors(Colors.Color.Default, Colors.Color.Gray), new Coords(3, 2), new Coords(Graphic.Width - 4, Graphic.Height - 3));
                    justLoaded = false;
                }
            }

            drawInterface();
            drawHelp();
            drawDebug();

            if (MousePosition.IsInRectangle(new Coords(3, 2), new Coords(Graphic.Width - 4, Graphic.Height - 3)))
            {
                Graphic.Add(" ", MousePosition, brush.BrushColor);
            }

            Graphic.Draw();
        }
Exemplo n.º 2
0
        void drawInterface()
        {
            Graphic.AddRectangleBorder(" ", " ", " ", " ", " ", " ", " ", " ", Colors.Default, Coords.Zero, new Coords(Graphic.Width - 1, Graphic.Height - 1));
            Graphic.AddRectangleBorder(" ", " ", " ", " ", " ", " ", " ", " ", Colors.Default, new Coords(1, 0), new Coords(Graphic.Width - 2, Graphic.Height - 1));

            Graphic.AddRectangleBorder("═", "║", "═", "║", "╔", "╗", "╝", "╚", Colors.Default, new Coords(2, 1), new Coords(Graphic.Width - 3, Graphic.Height - 2));

            Graphic.Add(" Debug: Q ", new Coords(1, 0), new Colors(Colors.Color.DarkGray, Colors.Color.Default));

            if (MousePosition.IsInRectangle(new Coords(3, 2), new Coords(Graphic.Width - 4, Graphic.Height - 3)))
            {
                Graphic.SetOrigin(new Origin(Origin.HorizontalOrigin.Center, Origin.VerticalOrigin.Top));
                Graphic.Add($"{MousePosition.X - 2}", new Coords(-2, 0));
                Graphic.Add($"{MousePosition.Y - 1}", new Coords(2, 0));
            }

            Graphic.SetOrigin(new Origin(Origin.HorizontalOrigin.Right, Origin.VerticalOrigin.Top));
            Graphic.Add(" Save: ENT, Load: SPC ", new Coords(-1, 0));

            Graphic.SetOrigin(new Origin(Origin.HorizontalOrigin.Left, Origin.VerticalOrigin.Bottom));
            Graphic.Add(" Colors:", new Coords(1, 0));
            Graphic.Add("    (1),    (2),    (3),    (4),    (5),    (6),    (7),    (8).", new Coords(9, 0), new Colors(Colors.Color.DarkGray, Colors.Color.Default));
            Graphic.Add(highlight.Text, highlight.Coords, highlight.Color);
            Graphic.Add(" ", new Coords(10, 0), new Colors(Colors.Color.Default, Colors.Color.Red));
            Graphic.Add(" ", new Coords(11, 0), new Colors(Colors.Color.Default, Colors.Color.DarkRed));
            Graphic.Add(" ", new Coords(18, 0), new Colors(Colors.Color.Default, Colors.Color.Yellow));
            Graphic.Add(" ", new Coords(19, 0), new Colors(Colors.Color.Default, Colors.Color.DarkYellow));
            Graphic.Add(" ", new Coords(26, 0), new Colors(Colors.Color.Default, Colors.Color.Green));
            Graphic.Add(" ", new Coords(27, 0), new Colors(Colors.Color.Default, Colors.Color.DarkGreen));
            Graphic.Add(" ", new Coords(34, 0), new Colors(Colors.Color.Default, Colors.Color.Cyan));
            Graphic.Add(" ", new Coords(35, 0), new Colors(Colors.Color.Default, Colors.Color.DarkCyan));
            Graphic.Add(" ", new Coords(42, 0), new Colors(Colors.Color.Default, Colors.Color.Blue));
            Graphic.Add(" ", new Coords(43, 0), new Colors(Colors.Color.Default, Colors.Color.DarkBlue));
            Graphic.Add(" ", new Coords(50, 0), new Colors(Colors.Color.Default, Colors.Color.Magenta));
            Graphic.Add(" ", new Coords(51, 0), new Colors(Colors.Color.Default, Colors.Color.DarkMagenta));
            Graphic.Add(" ", new Coords(58, 0), new Colors(Colors.Color.Default, Colors.Color.Gray));
            Graphic.Add(" ", new Coords(59, 0), new Colors(Colors.Color.Default, Colors.Color.DarkGray));
            Graphic.Add(" ", new Coords(66, 0), new Colors(Colors.Color.Default, Colors.Color.White));
            Graphic.Add(" ", new Coords(67, 0), new Colors(Colors.Color.Default, Colors.Color.Black));

            Graphic.SetOrigin(new Origin(Origin.HorizontalOrigin.Right, Origin.VerticalOrigin.Bottom));
            Graphic.Add(" First: LMB, Second: RMB, Clear: MMB ", new Coords(-1, 0));

            Graphic.SetOrigin(Origin.Default);
        }
Exemplo n.º 3
0
        void drawDebug()
        {
            if (!showDebug)
            {
                return;
            }

            Graphic.AddRectangle(" ", Colors.Default, new Coords(2, 1), new Coords(27, 7));
            Graphic.AddRectangleBorder("═", "│", "─", "║", "╔", "╤", "┘", "╟", Colors.Default, new Coords(2, 1), new Coords(27, 7));

            Graphic.Add($"Tick rate: .....: {CurrentTickRate}/{TickRate}", new Coords(3, 2));
            Graphic.Add($"Frame rate: ....: {CurrentFrameRate}/{FrameRate}", new Coords(3, 3));
            Graphic.Add($"Draw calls: ....: {Graphic.LastDrawCallsCount}", new Coords(3, 4));
            Graphic.Add($"Pixels painted .: {paintPixels.Count}", new Coords(3, 5));
            Graphic.Add($"Pixels in temp .: {tempPixels.Count}", new Coords(3, 6));

            Graphic.SetOrigin(Origin.Default);
        }
Exemplo n.º 4
0
        void drawHelp()
        {
            if (!showHelp)
            {
                return;
            }

            Graphic.SetOrigin(new Origin(Origin.HorizontalOrigin.Center, Origin.VerticalOrigin.Middle));

            Graphic.AddRectangle(" ", Colors.Default, new Coords(0, -5), new Coords(30, 4));
            Graphic.AddRectangleBorder("═", "║", "═", "║", "╔", "╗", "╝", "╚", Colors.Default, new Coords(-15, -5), new Coords(15, 4));

            Graphic.Add("Terminal Paint v1.0 100", new Coords(0, -3));
            Graphic.Add("by KostarSf", new Coords(0, -2));

            Graphic.Add("powered by", new Coords(0, 1));
            Graphic.Add("StripedEngine", new Coords(0, 2));

            Graphic.SetOrigin(Origin.Default);
        }
Exemplo n.º 5
0
        public void AddGraphic(string code, string name, string comment, string units, DataType dataType, double?min, double?max)
        {
            var graphicSeries = new Graphic(code, name, "", units, DataType.Real, min, max);

            if (_fg)
            {
                _time0 = DateTime.Now;
            }

            var dot = new MomentReal(_time0, 0.6 * (max ?? 0 + min ?? 0), 0, 1, 0);

            graphicSeries.IsUpdated = true;
            graphicSeries.Add(dot);
            graphicSeries.IsUpdated = false;

            ucGraphic.DictionaryOfGraphics.Add(code, graphicSeries);

            graphicSeries.Series.Color = Colors.GetColor();

            int i;

            for (i = 0; i < Numbers.Count; i++)
            {
                if (Numbers[i] == false)
                {
                    Numbers[i] = true;
                }
            }
            if (i == Numbers.Count)
            {
                Numbers.Add(true);
            }
            graphicSeries.Number = ++i;

            if (_fg)
            {
                ucGraphic.Draw();
                _fg = false;
            }
        }
Exemplo n.º 6
0
        //public void AddGraphic(string moduleAddress, string channel)
        //{
        //    var addr = Convert.ToString(int.Parse(moduleAddress), 16).ToUpper();
        //    if (addr.Length == 1) addr = "0" + addr;

        //    //-int ch = int.Parse(channel);
        //    byte ch = byte.Parse(channel);

        //    var code = Program.Net.Modules[addr].Channels[ch].Code ?? addr + "." + channel;
        //    //var code = addr + "." + channel;

        //    //-var chn = channel != "CJC" ? Program.Net.Modules[addr].Channels[ch] : Program.Net.Modules[addr]).Cjc;
        //    var chn = (channel != "CJC") ? Program.Net.Modules[addr].Channels[ch] : ((NewModuleAdam4019Plus)Program.Net.Modules[addr]).Cjc;

        //    //-EChannelStatus status;
        //    NewEnumSignalStatus status;

        //    /*
        //    double? min = (chn.Min == null) || (chn.Conversion == null)
        //                ? chn.Min : ClassAbstractAdamChannel.SignalConversion((double) chn.Min, chn.Conversion, out err);

        //    double? max = (chn.Max == null) || (chn.Conversion == null)
        //                ? chn.Max : ClassAbstractAdamChannel.SignalConversion((double) chn.Max, chn.Conversion, out err);
        //    */

        //    double? min = (chn.Min == null) || (chn.Conversion == null)
        //                ? chn.Min : chn.SignalConversion((double)chn.Min, out status);

        //    double? max = (chn.Max == null) || (chn.Conversion == null)
        //                ? chn.Max : chn.SignalConversion((double)chn.Max, out status);

        //    //-var graphicSeries = new Graphic(code, chn.Name, "", chn.DataFormat, DataType.Real, min, max);

        //    string dataFormat = null;

        //    switch(chn.Module.ModuleType)
        //    {
        //        case "Adam4019+":
        //            dataFormat = ((NewModuleAdam4019Plus) chn.Module).DataFormat;
        //            break;
        //    }

        //    //-var graphicSeries = new Graphic(code, chn.Name, "", ((NewModuleAdam4019Plus)chn.Module).DataFormat, DataType.Real, min, max);
        //    var graphicSeries = new Graphic(code, chn.Name, "", dataFormat, DataType.Real, min, max);

        //    //if ((chn.Time != null) && (chn.Status != null))
        //    //{
        //    //    double value = chn.Value ?? 0;

        //    //    var dot = new MomentReal((DateTime) chn.Time, value, 0, (int) chn.Status, 0);
        //    //    graphicSeries.IsUpdated = true;
        //    //    graphicSeries.Add(dot);
        //    //    graphicSeries.IsUpdated = false;
        //    //}

        //    DateTime time = chn.Time ?? DateTime.Now;
        //    double value = chn.Value ?? 0;
        //    int stat = chn.Status != null ? (int) chn.Status : 1;

        //    var dot = new MomentReal(time, value, 0, stat, 0);
        //    graphicSeries.IsUpdated = true;
        //    graphicSeries.Add(dot);
        //    graphicSeries.IsUpdated = false;

        //    ucGraphic.DictionaryOfGraphics.Add(code, graphicSeries);

        //    graphicSeries.Series.Color = Colors.GetColor();
        //    graphicSeries.Number = 1;

        //    ucGraphic.Draw();
        //}

        public void AddGraphic(string code)
        {
            var chn = Program.Net.Modules.Channel(code);

            NewEnumSignalStatus status;
            double?min = (chn.Min == null) || (chn.Conversion == null) ? chn.Min : chn.SignalConversion((double)chn.Min, out status);
            double?max = (chn.Max == null) || (chn.Conversion == null) ? chn.Max : chn.SignalConversion((double)chn.Max, out status);

            string dataFormat = null;

            switch (chn.Module.ModuleType)
            {
            case "Adam4019+":
                dataFormat = ((NewModuleAdam4019Plus)chn.Module).DataFormat;
                break;
            }

            var graphicSeries = new Graphic(code, chn.Name, "", dataFormat, DataType.Real, min, max);

            DateTime time  = chn.Time ?? DateTime.Now;
            double   value = chn.Value ?? 0;
            int      stat  = chn.Status != null ? (int)chn.Status : 1;

            var dot = new MomentReal(time, value, 0, stat, 0);

            graphicSeries.IsUpdated = true;
            graphicSeries.Add(dot);
            graphicSeries.IsUpdated = false;

            ucGraphic.DictionaryOfGraphics.Add(code, graphicSeries);

            graphicSeries.Series.Color = Colors.GetColor();
            graphicSeries.Number       = 1;

            ucGraphic.Draw();
        }
Exemplo n.º 7
0
 internal void AddGraphicInfo(StringGridRow row)
 {
     Graphic.Add(row);
 }
Exemplo n.º 8
0
 internal void AddGraphicInfo(StringGridRow row)
 {
     Graphic.Add(AdvGraphicInfo.TypeTexture, row, this);
 }