123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129 |
- using PaintDotNet.CustomControl;
- using System;
- using System.Collections.Generic;
- using System.ComponentModel;
- using System.Data;
- using System.Drawing;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- using System.Windows.Forms;
- namespace PaintDotNet
- {
- internal class ImagePreviewDialog : PdnBaseForm
- {
- private AppWorkspace appWorkspace;
- /// <summary>
- /// 图像面板
- /// </summary>
- private DocumentWorkspaceWindow documentWorkspace;
- /// <summary>
- /// 公共按钮
- /// </summary>
- private CommonControlButtons commonControlButtons;
- /// <summary>
- /// 底部图标栏
- /// </summary>
- private Panel panel;
- public ImagePreviewDialog(Image image, AppWorkspace appWorkspace)
- {
- this.appWorkspace = appWorkspace;
- InitializeComponent();
- this.documentWorkspace = new DocumentWorkspaceWindow(this.appWorkspace);
- //
- //DocumentWorkspaceWindow
- //
- this.documentWorkspace.Location = new System.Drawing.Point(0, 0);
- this.documentWorkspace.Dock = DockStyle.Fill;
- this.documentWorkspace.HookMouseEvents();
- this.documentWorkspace.AuxiliaryLineEnabled = false;
- this.documentWorkspace.RulersEnabled = false;
- this.Controls.Add(this.documentWorkspace);
- this.Text = PdnResources.GetString("Menu.Previewpicture.Text");
- this.documentWorkspace.Document = Document.FromImage(image);
- this.commonControlButtons.Location = new Point((this.Width - this.commonControlButtons.Width) / 2, 0);
- this.Resize += new EventHandler(this.Resize_Event);
- InitCommonButtonEvent();
- }
- private void InitCommonButtonEvent()
- {
- this.commonControlButtons.zoomInButton.Click += new EventHandler(zoomInButton_Click);
- this.commonControlButtons.zoomOutButton.Click += new EventHandler(zoomOutButton_Click);
- this.commonControlButtons.zoomToWindowButton.Click += new EventHandler(zoomToWindowButton_Click);
- this.commonControlButtons.actualSizeButton.Click += new EventHandler(actualSizeButton_Click);
- this.commonControlButtons.pointerButton.Click += new EventHandler(pointerButton_Click);
- this.commonControlButtons.mobileModeButton.Click += new EventHandler(mobileModeButton_Click);
- }
- private void zoomInButton_Click(object sender, EventArgs e)
- {
- this.documentWorkspace.ZoomIn();
- }
- private void zoomOutButton_Click(object sender, EventArgs e)
- {
- this.documentWorkspace.ZoomOut();
- }
- private void zoomToWindowButton_Click(object sender, EventArgs e)
- {
- this.documentWorkspace.ZoomBasis = ZoomBasis.FitToWindow;
- }
- private void actualSizeButton_Click(object sender, EventArgs e)
- {
- this.documentWorkspace.ZoomBasis = ZoomBasis.ScaleFactor;
- this.documentWorkspace.ScaleFactor = ScaleFactor.OneToOne;
- }
- private void pointerButton_Click(object sender, EventArgs e)
- {
- this.documentWorkspace.ActiveTool = Annotation.Enum.DrawToolType.Pointer;
- }
- private void mobileModeButton_Click(object sender, EventArgs e)
- {
- this.documentWorkspace.ActiveTool = Annotation.Enum.DrawToolType.MoveMode;
- }
- private void Resize_Event(object sender, EventArgs e)
- {
- this.commonControlButtons.Location = new Point((this.panel.Width - this.commonControlButtons.Width) / 2, 0);
- //this.commonControlButtons.Left = (this.panel.Width - this.commonControlButtons.Width) / 2;
- }
- private void InitializeComponent()
- {
-
- this.SuspendLayout();
-
- //
- //底部panel
- //
- this.panel = new Panel();
- this.panel.Height = 30;
- this.panel.Dock = DockStyle.Bottom;
- //
- //初始化操作按钮
- //
- this.commonControlButtons = new CommonControlButtons();
- this.commonControlButtons.Height = 30;
- this.commonControlButtons.Width = 100;
- this.commonControlButtons.HideZoomToWindowAndActualSize();
-
- this.panel.Controls.Add(commonControlButtons);
- this.Controls.Add(this.panel);
- this.ClientSize = new System.Drawing.Size(907, 546);
- this.Name = "ImagePreviewDialog";
- this.ResumeLayout(false);
- }
- }
- }
|