OSDN Git Service

読み込み時に行分割を行わず、レタリング時に行分割を行うようにした
[fooeditengine/FooEditEngine.git] / Windows / Test / Form1.cs
1 using System;
2 using System.Collections.Generic;
3 using System.ComponentModel;
4 using System.Data;
5 using System.Drawing;
6 using System.Linq;
7 using System.Text;
8 using System.Windows.Forms;
9 using FooEditEngine;
10 using FooEditEngine.Windows;
11 using FooEditEngine.Test;
12
13 namespace Test.Windows
14 {
15     public partial class Form1 : Form
16     {
17         public Form1()
18         {
19             InitializeComponent();
20             this.fooTextBox1.ShowTab = true;
21             this.fooTextBox1.ShowFullSpace = true;
22             this.fooTextBox1.ShowLineBreak = true;
23             this.fooTextBox1.LineBreakMethod = LineBreakMethod.CharUnit;
24             this.fooTextBox1.LineBreakCharCount = 10;
25             var collection = new CompleteCollection<ICompleteItem>();
26             collection.Add(new CompleteWord("int"));
27             collection.Add(new CompleteWord("float"));
28             collection.Add(new CompleteWord("double"));
29             collection.Add(new CompleteWord("byte"));
30             collection.Add(new CompleteWord("char"));
31             this.fooTextBox1.Document.AutoComplete.Items = collection;
32             this.fooTextBox1.Document.AutoComplete.Enabled = true;
33         }
34
35         private void button1_Click(object sender, EventArgs e)
36         {
37             FooPrintText fooPrint;
38             fooPrint = new FooPrintText();
39             fooPrint.Document = this.fooTextBox1.Document;
40             fooPrint.DrawLineNumber = this.fooTextBox1.DrawLineNumber;
41             fooPrint.Font = this.fooTextBox1.Font;
42             fooPrint.LineBreakMethod = this.fooTextBox1.LineBreakMethod == LineBreakMethod.None ? LineBreakMethod.PageBound : this.fooTextBox1.LineBreakMethod;
43             fooPrint.LineBreakCharCount = this.fooTextBox1.LineBreakCharCount;
44             fooPrint.RightToLeft = this.fooTextBox1.RightToLeft == System.Windows.Forms.RightToLeft.Yes;
45             fooPrint.Header = "header";
46             fooPrint.Footer = "footer";
47             fooPrint.Foreground = this.fooTextBox1.Foreground;
48             PrintPreviewDialog dialog = new PrintPreviewDialog();
49             dialog.Document = fooPrint.PrintDocument;
50             dialog.Show();
51         }
52
53         private void button2_Click(object sender, EventArgs e)
54         {
55             if (this.fooTextBox1.RightToLeft == System.Windows.Forms.RightToLeft.No)
56                 this.fooTextBox1.RightToLeft = RightToLeft.Yes;
57             else
58                 this.fooTextBox1.RightToLeft = RightToLeft.No;
59             this.fooTextBox1.Refresh();
60         }
61
62         private void lineNumberToolStripMenuItem_Click(object sender, EventArgs e)
63         {
64             if (this.lineNumberToolStripMenuItem.Checked)
65                 this.fooTextBox1.DrawLineNumber = false;
66             else
67                 this.fooTextBox1.DrawLineNumber = true;
68             this.lineNumberToolStripMenuItem.Checked = this.fooTextBox1.DrawLineNumber;
69             this.fooTextBox1.Refresh();
70         }
71
72         private async void loadToolStripMenuItem_Click(object sender, EventArgs e)
73         {
74             OpenFileDialog ofd = new OpenFileDialog();
75             if (ofd.ShowDialog() == System.Windows.Forms.DialogResult.OK)
76             {
77                 await this.fooTextBox1.LoadFileAsync(ofd.FileName, Encoding.Default,null);
78                 this.fooTextBox1.Refresh();
79             }
80         }
81
82         private void hilightToolStripMenuItem_Click(object sender, EventArgs e)
83         {
84             this.fooTextBox1.Hilighter = new XmlHilighter();
85             this.fooTextBox1.LayoutLines.HilightAll();
86         }
87
88         private void setPaddingToolStripMenuItem_Click(object sender, EventArgs e)
89         {
90             this.fooTextBox1.Padding = new System.Windows.Forms.Padding(20);
91             this.fooTextBox1.Refresh();
92         }
93     }
94 }