internal ZTextBufferWindow(ZWindowManager manager) : base(manager) { document = new FlowDocument { FontFamily = FontsAndColorsService.NormalFontFamily, FontSize = FontsAndColorsService.FontSize, PagePadding = new Thickness(8) }; paragraph = new Paragraph(); document.Blocks.Add(paragraph); scrollViewer = new FlowDocumentScrollViewer { FocusVisualStyle = null, Document = document }; Children.Add(scrollViewer); var zero = new FormattedText( textToFormat: "0", culture: CultureInfo.InstalledUICulture, flowDirection: FlowDirection.LeftToRight, typeface: new Typeface(FontsAndColorsService.NormalFontFamily, FontStyles.Normal, FontWeights.Normal, FontStretches.Normal), emSize: FontsAndColorsService.FontSize, foreground: FontsAndColorsService.DefaultForeground); fontCharSize = new Size(zero.Width, zero.Height); }
internal ZBlankWindow(ZWindowManager manager) : base(manager) { var rect = new Rectangle() { Fill = Brushes.Blue }; this.Children.Add(rect); }
internal ZWindow(ZWindowManager manager) { if (manager == null) { throw new ArgumentNullException("manager"); } this.manager = manager; this.UseLayoutRounding = true; this.SnapsToDevicePixels = true; TextOptions.SetTextFormattingMode(this, TextFormattingMode.Display); TextOptions.SetTextRenderingMode(this, TextRenderingMode.Auto); }
internal ZTextGridWindow(ZWindowManager manager) : base(manager) { var zero = new FormattedText( textToFormat: "0", culture: CultureInfo.InstalledUICulture, flowDirection: FlowDirection.LeftToRight, typeface: FontsAndColorsService.FixedTypeface, emSize: FontsAndColorsService.FontSize, foreground: Brushes.Black); fontCharSize = new Size(zero.Width, zero.Height); textGrid = new ZTextGrid(); this.Children.Add(textGrid); }
internal ZPairWindow(ZWindowManager manager, ZWindow child1, ZWindow child2, ZWindowPosition child2Position, GridLength child2Size) : base(manager) { if (child1 == null) { throw new ArgumentNullException("child1"); } if (child2 == null) { throw new ArgumentNullException("child2"); } this.child1 = child1; this.child2 = child2; switch (child2Position) { case ZWindowPosition.Left: { var col1 = new ColumnDefinition(); col1.Width = child2Size; var col2 = new ColumnDefinition(); this.ColumnDefinitions.Add(col1); this.ColumnDefinitions.Add(col2); Grid.SetColumn(child2, 0); Grid.SetColumn(child1, 1); break; } case ZWindowPosition.Right: { var col1 = new ColumnDefinition(); var col2 = new ColumnDefinition(); col2.Width = child2Size; this.ColumnDefinitions.Add(col1); this.ColumnDefinitions.Add(col2); Grid.SetColumn(child1, 0); Grid.SetColumn(child2, 1); break; } case ZWindowPosition.Above: { var row1 = new RowDefinition(); row1.Height = child2Size; var row2 = new RowDefinition(); this.RowDefinitions.Add(row1); this.RowDefinitions.Add(row2); Grid.SetRow(child2, 0); Grid.SetRow(child1, 1); break; } case ZWindowPosition.Below: { var row1 = new RowDefinition(); var row2 = new RowDefinition(); row2.Height = child2Size; this.RowDefinitions.Add(row1); this.RowDefinitions.Add(row2); Grid.SetRow(child1, 0); Grid.SetRow(child2, 1); break; } default: throw new ArgumentException("Invalid ZWindowPosition: " + child2Position, "child2Position"); } child1.SetWindowParent(this); child2.SetWindowParent(this); this.Children.Add(child1); this.Children.Add(child2); }