Beispiel #1
0
        //Function: Print map
        //Date: 2019/4/3
        private void miPrint_Click(object sender, EventArgs e)
        {
            IPrinter printer = axPageLayoutControl1.Printer;

            if (printer == null)
            {
                MessageBox.Show("Failed to connect to the default printer!");
            }

            String sMsg = "Do you want to use the default printer:" + printer.Name + "?";

            if (MessageBox.Show(sMsg, "", MessageBoxButtons.OKCancel) == DialogResult.Cancel)
            {
                return;
            }

            IPaper paper = printer.Paper;

            paper.Orientation = 1;

            IPage page = axPageLayoutControl1.Page;

            page.PageToPrinterMapping = esriPageToPrinterMapping.esriPageMappingScale;

            axPageLayoutControl1.PrintPageLayout(1, 1, 0);
        }
Beispiel #2
0
        private void output_Click(object sender, EventArgs e)
        {
            //通过IPrinter接口获取默认打印机
            //如果获取失败,消息框提示"Can not get the default printer!"
            IPrinter printer = axPageLayoutControl1.Printer;

            if (printer == null)
            {
                MessageBox.Show("Can not get the default printer!");
            }
            //消息框提示是否使用默认打印机
            //若点击Cancel,则退出打印
            string mess = "Use the default printer" + printer.Name + "?";

            if (MessageBox.Show(mess, "", MessageBoxButtons.OKCancel) == DialogResult.Cancel)
            {
                return;
            }
            //通过IPaper接口访问打印机的纸张,用paper.Orientation设置方向为纵向
            IPaper paper = printer.Paper;

            paper.Orientation = 1;

            //打印的对象尺寸可以用PutCustomSize来调节
            //通过IPage接口设置打印分页为缩小到一页
            IPage page = axPageLayoutControl1.Page;

            //page.PutCustomSize(29.7, 21.0);
            page.PageToPrinterMapping = esriPageToPrinterMapping.esriPageMappingScale;

            axPageLayoutControl1.PrintPageLayout(1, 1, 0);
        }
Beispiel #3
0
        /// <summary>
        /// Detectando o registro excedente.
        /// Se existir, então, temos mais registros no lado do servidor.
        /// </summary>
        public static void PostCache(IPaper paper, PaperContext ctx)
        {
            var hasMoreData = false;

            var page = ctx.Cache.Get <Page>(CacheKeys.Page);

            if (page == null)
            {
                return;
            }

            var overSize = page.Limit;

            // Voltando o tamanho da página para o original.
            page.SetLimitOrSize(page.Limit - 1);

            var rows = ctx.Cache.Get <DataWrapperEnumerable>(CacheKeys.Rows);

            if (rows != null)
            {
                hasMoreData = (rows.Count == overSize);
                if (hasMoreData)
                {
                    // Reduzindo a quantidade de registros que deve ser lidos
                    // para provocar o descarte do excedente.
                    rows.Count--;
                }
            }

            ctx.Cache.Set(CacheKeys.HasMoreData, hasMoreData);
        }
Beispiel #4
0
        internal static void SetArgs(IPaper paper, PaperContext ctx)
        {
            if (!paper._Has("Filter"))
            {
                return;
            }

            var filter = paper._Get <IFilter>("Filter");

            if (filter == null)
            {
                if (!paper._CanWrite("Filter"))
                {
                    return;
                }

                filter = filter._SetNew <IFilter>("Filter");
            }

            foreach (var arg in ctx.PathArgs)
            {
                if (filter._Has(arg.Key))
                {
                    filter._Set(arg.Key, arg.Value);
                }
            }
        }
Beispiel #5
0
        /// <summary>
        /// Renderiza as característica do Paper.
        /// </summary>
        /// <param name="paper">O Paper com as características de renderização.</param>
        /// <param name="entity">A entidade que está sendo renderizada com base no Paper.</param>
        /// <param name="ctx">O contexto de renderização.</param>
        public static void Render(IPaper paper, Entity entity, PaperContext ctx)
        {
            entity.AddClass(Class.Blueprint);

            AddBlueprint(paper, entity, ctx);
            AddLinks(paper, entity, ctx);
        }
        public void Erase(IPaper paper, string matchText)
        {
            if (CurrentEraserDurability < 1 || !paper.Text.Contains(matchText))
            {
                return;
            }

            string adjustedMatchText = matchText;

            if (matchText.Length > CurrentEraserDurability)
            {
                adjustedMatchText = GetAdjustedEraseMatchText(matchText, CurrentEraserDurability);
            }

            CurrentEraserDurability -= GetNonWhitespaceCount(adjustedMatchText);

            int matchOffset       = matchText.Length - adjustedMatchText.Length;
            int matchLocation     = paper.Text.LastIndexOf(matchText) + matchOffset;
            var replacementString = new string(_FillerCharacter, adjustedMatchText.Length);
            var paperText         = new StringBuilder(paper.Text);

            paperText.Replace(adjustedMatchText, replacementString, matchLocation, adjustedMatchText.Length);

            paper.Text = paperText.ToString();
        }
Beispiel #7
0
 public void AddPaper(IPaper dataPaper)
 {
     try
     {
         using (BytepadDBEntities db = new BytepadDBEntities())
         {
             tblPaper dataTblPaper = new tblPaper
             {
                 AdminId      = 1,
                 SessionId    = dataPaper.SessionId,
                 SubjectId    = dataPaper.SubjectId,
                 ExamTypeId   = dataPaper.ExamTypeId,
                 SemesterType = dataPaper.SemesterType.ToString(),
                 PaperType    = dataPaper.PaperType,
                 FileUrl      = dataPaper.FileUrl
             };
             db.tblPapers.Add(dataTblPaper);
             db.SaveChanges();
         }
     }
     catch (Exception ex)
     {
         string error = ex.ToString();
     }
 }
Beispiel #8
0
        private void RenderPaper(Entity entity, IPaper paper, PaperContext ctx)
        {
            //
            // Fase 2: Repassando parametros
            //
            RenderOfBlueprint.SetArgs(paper, ctx.PathArgs);
            RenderOfBasics.SetArgs(paper, ctx.PathArgs);
            RenderOfPage.SetArgs(paper, ctx);
            RenderOfSort.SetArgs(paper, ctx);
            RenderOfFilter.SetArgs(paper, ctx);

            //
            // Fase 3: Consultando dados
            //
            RenderOfPage.PreCache(paper, ctx);
            RenderOfData.CacheData(paper, ctx.Cache);
            RenderOfRows.CacheData(paper, ctx.Cache);
            RenderOfCards.CacheData(paper, ctx.Cache);
            RenderOfPage.PostCache(paper, ctx);

            //
            // Fase 4: Renderizando entidade
            //
            RenderOfBlueprint.Render(paper, entity, ctx);
            RenderOfBasics.Render(paper, entity, ctx);
            RenderOfData.Render(paper, entity, ctx);
            RenderOfRows.Render(paper, entity, ctx);
            RenderOfPage.Render(paper, entity, ctx);
            RenderOfSort.Render(paper, entity, ctx);
            RenderOfFilter.Render(paper, entity, ctx);
            RenderOfCards.Render(paper, entity, ctx);
        }
Beispiel #9
0
        public string SomeOperation()
        {
            IPaper paper  = GetMethod();
            string result = "Printer "
                            + paper.Operation();

            return(result);
        }
Beispiel #10
0
 public FillPaper(ISubject subject, IPaper paper, IExamType examType, ISession session, ISemester semester)
 {
     _subject  = subject;
     _paper    = paper;
     _examType = examType;
     _session  = session;
     _semester = semester;
 }
Beispiel #11
0
 public PaperViewModel(IExamType Examtype, ISession session, IPaper paper, ISemester semester, ISubject subject)
 {
     _examType = Examtype;
     _session  = session;
     _paper    = paper;
     _semester = semester;
     _subject  = subject;
 }
 public Pencil(IPaper paper, int durability, int length, int eraserDurability)
 {
     this.paper         = paper;
     startingDurability = durability;
     Durability         = durability;
     Length             = length;
     EraserDurability   = eraserDurability;
 }
Beispiel #13
0
                public void ShouldReplaceMatchingTextWithCorrectAmountOfSpaces(string testWord, string expected)
                {
                    IPencil pencil = GetPencil();
                    IPaper  paper  = GetPaper(testWord);

                    pencil.Erase(paper, testWord);

                    Assert.Equal(expected, paper.Text);
                }
Beispiel #14
0
        private void pageAndPrintSetupToolStripMenuItem_Click(object sender, EventArgs e)
        {
            try
            {
                //Show the page setup dialog storing the result.
                DialogResult result = pageSetupDialog1.ShowDialog();

                //set the printer settings of the preview document to the selected printer settings
                pPrintDoc.PrinterSettings = pageSetupDialog1.PrinterSettings;

                //set the page settings of the preview document to the selected page settings
                pPrintDoc.DefaultPageSettings = pageSetupDialog1.PageSettings;

                //due to a bug in PageSetupDialog the PaperSize has to be set explicitly by iterating through the
                //available PaperSizes in the PageSetupDialog finding the selected PaperSize
                int         i;
                IEnumerator paperSizes = pageSetupDialog1.PrinterSettings.PaperSizes.GetEnumerator();
                paperSizes.Reset();

                for (i = 0; i < pageSetupDialog1.PrinterSettings.PaperSizes.Count; ++i)
                {
                    paperSizes.MoveNext();
                    if (((PaperSize)paperSizes.Current).Kind == pPrintDoc.DefaultPageSettings.PaperSize.Kind)
                    {
                        pPrintDoc.DefaultPageSettings.PaperSize = ((PaperSize)paperSizes.Current);
                    }
                }

                /////////////////////////////////////////////////////////////
                ///initialize the current printer from the printer settings selected
                ///in the page setup dialog
                /////////////////////////////////////////////////////////////
                IPaper paper;
                paper = new PaperClass(); //create a paper object

                IPrinter printer;
                printer = new EmfPrinterClass(); //create a printer object
                //in this case an EMF printer, alternatively a PS printer could be used

                //initialize the paper with the DEVMODE and DEVNAMES structures from the windows GDI
                //these structures specify information about the initialization and environment of a printer as well as
                //driver, device, and output port names for a printer
                paper.Attach(pageSetupDialog1.PrinterSettings.GetHdevmode(pageSetupDialog1.PageSettings).ToInt32(), pageSetupDialog1.PrinterSettings.GetHdevnames().ToInt32());

                //pass the paper to the emf printer
                printer.Paper = paper;

                //set the page layout control's printer to the currently selected printer
                axPageLayoutControl1.Printer = printer;
            }
            catch (Exception ex)
            {
                frmErrorLog pfrmErrorLog = new frmErrorLog(); pfrmErrorLog.ex = ex; pfrmErrorLog.ShowDialog();
                return;
            }
        }
Beispiel #15
0
        private static void Write(IPaper paper)
        {
            paper.Write();

            /* Write method is loosely coupled to A3Paper and A4Paper now.
             * It's closed to change but open to development.
             * When new paper type such as A5Paper is included in project, we dont have to write if statement.
             * This is what exactly we want.
             */
        }
Beispiel #16
0
    public string Print()
    {
        // Вызываем фабричный метод, чтобы получить объект-продукт.
        IPaper bullet = GetPaper();
        // Далее, работаем с этим продуктом.
        string result = "works with "
                        + bullet.GetName();

        return(result);
    }
        // Также заметьте, что, несмотря на название, основная обязанность
        // Создателя не заключается в создании продуктов. Обычно он содержит
        // некоторую базовую бизнес-логику, которая основана  на объектах
        // Продуктов, возвращаемых фабричным методом.  Подклассы могут косвенно
        // изменять эту бизнес-логику, переопределяя фабричный метод и возвращая
        // из него другой тип продукта.
        public string MethodPrint()
        {
            // Вызываем фабричный метод, чтобы получить объект-продукт.
            IPaper product = GetPaper();
            // Далее, работаем с этим продуктом.
            string result = "Созданный принтер использует для печати бумагу "
                            + product.ParerType();

            return(result);
        }
Beispiel #18
0
                public void ShouldNeverBecomeNegative(string sentence, int startEraserDurability)
                {
                    const int expectedEraserDurability = 0;
                    IPencil   pencil = GetPencil(eraserDurability: startEraserDurability);
                    IPaper    paper  = GetPaper(sentence);

                    pencil.Erase(paper, sentence);

                    Assert.Equal(expectedEraserDurability, pencil.CurrentEraserDurability);
                }
Beispiel #19
0
                public void ShouldAddTextToPaper()
                {
                    const string testSentence = "This is a sentence";
                    IPencil      pencil       = GetPencil();
                    IPaper       paper        = GetPaper();

                    pencil.Write(paper, testSentence);

                    Assert.Equal(testSentence, paper.Text);
                }
Beispiel #20
0
                public void ShouldRemoveMatchingText()
                {
                    const string testWord = "word";
                    IPencil      pencil   = GetPencil();
                    IPaper       paper    = GetPaper(testWord);

                    pencil.Erase(paper, testWord);

                    Assert.DoesNotContain(testWord, paper.Text);
                }
Beispiel #21
0
                public void ShouldDoNothingWithNoDurability()
                {
                    const string testSentence     = "  \v0?>9\n<8:6 (*4&\t^2# 1$%  ";
                    const int    eraserDurability = 0;
                    IPencil      pencil           = GetPencil(eraserDurability: eraserDurability);
                    IPaper       paper            = GetPaper(testSentence);

                    pencil.Erase(paper, testSentence);

                    Assert.Equal(testSentence, paper.Text);
                }
Beispiel #22
0
                public void ShouldDegradeCorrectlyForMixedCharactersAndWhitespace(string mixedString, int degradeAmount)
                {
                    const int startEraserDurability    = 50;
                    int       expectedEraserDurability = startEraserDurability - degradeAmount;
                    IPencil   pencil = GetPencil(eraserDurability: startEraserDurability);
                    IPaper    paper  = GetPaper(mixedString);

                    pencil.Erase(paper, mixedString);

                    Assert.Equal(expectedEraserDurability, pencil.CurrentEraserDurability);
                }
Beispiel #23
0
                public void ShouldDegradeCorrectlyForManyCharacters(string eraseMatch)
                {
                    const int startEraserDurability    = 50;
                    int       expectedEraserDurability = startEraserDurability - eraseMatch.Length;
                    IPencil   pencil = GetPencil(eraserDurability: startEraserDurability);
                    IPaper    paper  = GetPaper(eraseMatch);

                    pencil.Erase(paper, eraseMatch);

                    Assert.Equal(expectedEraserDurability, pencil.CurrentEraserDurability);
                }
Beispiel #24
0
                public void ShouldReplaceWhitespaceWithSpaces()
                {
                    const string testWhitespace = "  \t\r\n\f\v  ";
                    const string expected       = "         ";
                    IPencil      pencil         = GetPencil();
                    IPaper       paper          = GetPaper(testWhitespace);

                    pencil.Erase(paper, testWhitespace);

                    Assert.Equal(expected, paper.Text);
                }
Beispiel #25
0
                public void ShouldDoNothingIfNoMatchIsFound()
                {
                    const string testSentence = "Not this or this";
                    const string eraseWord    = "test";
                    IPencil      pencil       = GetPencil();
                    IPaper       paper        = GetPaper(testSentence);

                    pencil.Erase(paper, eraseWord);

                    Assert.Equal(testSentence, paper.Text);
                }
Beispiel #26
0
 private static IPaper Prepare(IPaper paper)
 {
     for (var separatorIndex = paper.Text.IndexOf(';'); separatorIndex != -1; separatorIndex = paper.Text.IndexOf(';', separatorIndex + 1))
     {
         if ((separatorIndex + 1) != paper.Text.Length && paper.Text.IndexOf(Environment.NewLine, separatorIndex) != separatorIndex + 1)
         {
             paper = new Merged(paper, Environment.NewLine, separatorIndex + 1);
         }
     }
     return(paper);
 }
Beispiel #27
0
        /// <summary>
        /// Renderizando dados e cabeçalhos básicos
        /// </summary>
        private static void AddData(IPaper paper, Entity entity, PaperContext ctx, DataWrapper data)
        {
            foreach (var key in data.EnumerateKeys())
            {
                var value = data.GetValue(key);
                entity.AddProperty(key, value);

                var header = data.GetHeader(key);
                entity.AddDataHeader(header);
            }
        }
Beispiel #28
0
                public void ShouldWriteWhitespaceCharacters()
                {
                    const string testWhitespace  = "  \t\r\n\f\v  ";
                    const int    pointDurability = 0;
                    IPencil      pencil          = GetPencil(pointDurability: pointDurability);
                    IPaper       paper           = GetPaper();

                    pencil.Write(paper, testWhitespace);

                    Assert.Equal(testWhitespace, paper.Text);
                }
Beispiel #29
0
 public PaperDescriptor(IPaper paper)
 {
     this.Paper           = paper;
     this.PaperType       = paper.GetType();
     this.IndexMethod     = this.PaperType._GetMethodInfo("Index");
     this.PaperParameters = MakePaperParameters();
     this.PathTemplate    = MakePath();
     this.Formatters      = MakeFormatters().ToArray();
     this.Actions         = MakeActions().ToArray();
     this.Factories       = MakeFactories().ToArray();
 }
Beispiel #30
0
 private static IPaper Prepare(IPaper paper)
 {
     for (var separatorIndex = paper.Text.IndexOf(Environment.NewLine); separatorIndex != -1; separatorIndex = paper.Text.IndexOf(Environment.NewLine, separatorIndex + Environment.NewLine.Length))
     {
         if (separatorIndex == 0 || paper.Text[separatorIndex - 1] != ';')
         {
             paper = new Reduced(paper, separatorIndex, Environment.NewLine.Length);
         }
     }
     return(paper);
 }
 public PinEventArgs(IPaper p)
 {
     Paper = p;
 }
        private async void OpenPaper(IPaper paper)
        {
            var attribute = new Dictionary<string, string>();
            attribute.Add("name", paper.Title);
            App.Current.Manager.TrackingService.TagEvent(Localytics.LocalyticsEvent.OpenPaper, attribute);

            var vm = ViewModelLocator.Get<List_Categories_ViewModel>();
            vm.CurrentPaper = paper;


            await Windows.ApplicationModel.Core.CoreApplication.MainView.CoreWindow.Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, () =>
            {
                if (App.Current.Manager.DeviceService.GetAppState() == AppState.Mobile)
                    App.Current.NavigationService.NavigateTo(Pages.List_Categories_Page);
                else
                {
                    //App.Current.NavigationService.GoBack(FrameKey.PaneSplitFrame, true);
                    App.Current.NavigationService.NavigateTo(Pages.List_Categories_Page, null, FrameKey.PaneSplitFrame);
                }
            });
        }