Esempio n. 1
0
        public void SkipShould()
        {
            var block = new FormBlock <SampleClass>()
            {
                Expression = (aSampleClass) => aSampleClass.MyProperty
            };

            block.Label.ShouldBe(nameof(SampleClass.MyProperty));
        }
Esempio n. 2
0
        private static FormBlock AddBlock(FormPage page, decimal x, decimal y, decimal width, string text, TextAlign textAlign = TextAlign.left)
        {
            const decimal XScale = 0.1m;
            const decimal YScale = 0.1685m;
            var           block  = new FormBlock
            {
                TextAlign = textAlign,
                Left      = -0.21m + XScale * x,
                Top       = 0.1m + YScale * y,
                Width     = XScale * width,
                Height    = YScale * 1.1m,
                Text      = text
            };

            page.Blocks.Add(block);
            return(block);
        }
Esempio n. 3
0
        private FormBlock AddBlock(FormPage page, decimal x, decimal y, decimal width, string text, TextAlignEnum textAlign)
        {
            decimal xScale = 0.1m;
            decimal yScale = 0.1685m;
            var     block  = new FormBlock
            {
                TextAlign = textAlign,
                Left      = -0.21m + xScale * x,
                Top       = 0.1m + yScale * y,
                Width     = xScale * width,
                Height    = yScale * 1.1m,
                Text      = text
            };

            page.Blocks.Add(block);
            return(block);
        }
Esempio n. 4
0
        private static FormBlock AddBlock(FormPage page, decimal x, decimal y, decimal width, string text, TextAlign textAlign = TextAlign.left)
        {
            decimal xScale = 0.100m;   // 0.0839m;
            decimal yScale = 0.16667m; // 0.1656m;
            var     block  = new FormBlock
            {
                LetterSpacing = "1.2px",
                TextAlign     = textAlign,
                Left          = 0.14m + xScale * x,
                Top           = 0.06m + yScale * y,
                Width         = xScale * width,
                Height        = yScale * 1.1m,
                Text          = text
            };

            page.Blocks.Add(block);
            return(block);
        }
        public void AddFormControl(FormBlock fblock)
        {
            int fwidth = 900;
            int row_top = 20;

            if (_formBlocks == null)
                _formBlocks = new FormControls();

            _formBlocks.Add(fblock);

            if (_controls_row_cnt == 0)
            {
                if (_formBlocks.Count > 0)
                {
                    int width = 0;
                    for (int i = (_formBlocks.Count - 1) - _controls_per_row_cnt; i < _formBlocks.Count; i++)
                    {
                        width += _formBlocks[i].BlockControl.Width;
                    }

                    if (width > fwidth)
                    {
                        fblock.BlockLabel.Top = (_controls_row_cnt + 1) + 60;
                        fblock.BlockControl.Top = (_controls_row_cnt + 1) + 80;
                        fblock.BlockLabel.Left = 10;
                        fblock.BlockControl.Left = 10;
                        _controls_row_cnt++;
                        _controls_per_row_cnt = 0;
                    }
                    else
                    {
                        if (_controls_per_row_cnt == 0)
                            fblock.BlockControl.Left = 10;
                        if (_controls_per_row_cnt == 1)
                            fblock.BlockControl.Left = (width - fblock.BlockControl.Width) + 20;
                        if (_controls_per_row_cnt > 1)
                            fblock.BlockControl.Left += 10;
                        fblock.BlockLabel.Left = fblock.BlockControl.Left;
                        fblock.BlockControl.Top = 30;
                        fblock.BlockLabel.Top = fblock.BlockControl.Top - 20;
                        if (fblock.BlockCB != null)
                        {
                            fblock.BlockCB.Top = fblock.BlockLabel.Top;
                            fblock.BlockCB.Left = fblock.BlockLabel.Left + fblock.BlockLabel.Width + 10;
                        }
                    }
                }
            }
            else//--Если больше 1й строки
            {
                int width = 0;
                if (_controls_per_row_cnt > 0)
                {
                    for (int i = (_formBlocks.Count - 1) - _controls_per_row_cnt; i < _formBlocks.Count; i++)
                    {
                        width += _formBlocks[i].BlockControl.Width;
                        row_top = _formBlocks[i-1].BlockControl.Top;
                    }
                }
                else
                {
                    width = _formBlocks[_formBlocks.Count - 1].BlockControl.Width;
                    int idx = _formBlocks.Count - 2;
                    if (_formBlocks.Count >= 2)
                        if (_formBlocks[idx].BlockControl.Height + _formBlocks[idx].BlockControl.Top > row_top)
                            row_top = _formBlocks[idx].BlockControl.Height + _formBlocks[idx].BlockControl.Top + 20;
                }

                if (width > 900)
                {
                    _controls_per_row_cnt = 0;
                    _controls_row_cnt++;
                    row_top = _formBlocks[_formBlocks.Count - 2].BlockControl.Top + _formBlocks[_formBlocks.Count - 2].BlockControl.Height + 20;
                }
                if (width > 800 && width < 900)
                {
                    if (_controls_per_row_cnt >= 1 && width < 900)
                    {
                        fblock.BlockControl.Left = (width - fblock.BlockControl.Width) + 20;
                        fblock.BlockControl.Left += 10;
                    }
                    fblock.BlockLabel.Left = fblock.BlockControl.Left;
                    int blockheight = 0;
                    if (_formBlocks.Count >= 2 && _controls_row_cnt > 1)
                        blockheight = _formBlocks[_formBlocks.Count - (_controls_per_row_cnt + 2)].BlockControl.Height + _formBlocks[_formBlocks.Count - (_controls_per_row_cnt + 2)].BlockControl.Top;
                    else
                        blockheight = 60;
                    fblock.BlockControl.Top = blockheight + 20;
                    fblock.BlockLabel.Top = fblock.BlockControl.Top - 20;
                    if (fblock.BlockCB != null)
                    {
                        fblock.BlockCB.Top = fblock.BlockLabel.Top;
                        fblock.BlockCB.Left = fblock.BlockLabel.Left + fblock.BlockLabel.Width + 10;
                    }
                    _controls_row_cnt++;
                    _controls_per_row_cnt = -1;
                    row_top = 0;
                }
                else
                {
                    int offset = _controls_per_row_cnt * 10;
                    if (_controls_per_row_cnt == 0)
                        fblock.BlockControl.Left = 10;
                    if (_controls_per_row_cnt == 1)
                        fblock.BlockControl.Left = (width - fblock.BlockControl.Width) + 20;
                    if (_controls_per_row_cnt > 1)
                        fblock.BlockControl.Left = (width - fblock.BlockControl.Width) + offset;
                    fblock.BlockLabel.Left = fblock.BlockControl.Left;
                    fblock.BlockControl.Top = row_top;
                    fblock.BlockLabel.Top = fblock.BlockControl.Top - 20;
                    if (fblock.BlockCB != null)
                    {
                        fblock.BlockCB.Top = fblock.BlockLabel.Top;
                        fblock.BlockCB.Left = fblock.BlockLabel.Left + fblock.BlockLabel.Width + 10;
                    }
                }
            }

            fblock.Visible = true;
            /*fblock.BlockLabel.BringToFront();
            fblock.BlockControl.BringToFront();*/
            _controls_per_row_cnt++;
        }
Esempio n. 6
0
        public override void read(BinaryReader reader)
        {
            reader.BaseStream.Seek(0, SeekOrigin.Begin);

            header = new Header();
            header.read(reader);

            screenshot = new Screenshot(header.screenshotWidth, header.screenshotHeight);
            screenshot.read(reader);

            applicationInfo = new ApplicationInfo();
            applicationInfo.read(reader);

            index = new Index();
            index.read(reader);

            idBlocks = new Dictionary<uint, IdBlock>();

            reader.BaseStream.Seek(index.offset3, SeekOrigin.Begin);

            for(var i = 0; i < index.blockCount1; i++) {
                var idBlock = new IdBlock();
                idBlock.read(reader);
                idBlocks.Add(idBlock.id, idBlock);
            }

            reader.BaseStream.Seek(index.offset4, SeekOrigin.Begin);

            for (var i = 0; i < index.blockCount2; i++) {
                var idBlock = new IdBlock();
                idBlock.read(reader);
                idBlocks.Add(idBlock.id, idBlock);
            }

            reader.BaseStream.Seek(index.offset6, SeekOrigin.Begin);

            for (var i = 0; i < index.blockCount3; i++) {
                var idBlock = new IdBlock();
                idBlock.read(reader);
                idBlocks.Add(idBlock.id, idBlock);
            }

            formBlocks = new Dictionary<uint, FormBlock>();

            reader.BaseStream.Seek(index.offset5, SeekOrigin.Begin);

            for(var i = 0; i < index.blockCount4; i++) {
                var formBlock = new FormBlock();
                formBlock.read(reader);
                formBlocks.Add(formBlock.id, formBlock);
            }
        }