123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180 |
- using System;
- using System.Windows.Forms;
- using FastReport.Controls;
- using FastReport.Utils;
- namespace FastReport.Design.Toolbars
- {
- internal class StandardToolbar : DesignerToolbarBase
- {
- #region Fields
- public ToolbarButton btnNew;
- public ToolbarOpenButton btnOpen;
- public ToolbarButton btnSave;
- public ToolbarButton btnSaveAll;
- public ToolbarButton btnPreview;
- public ToolbarButton btnPreviewCloud;
- public ToolbarButton btnNewPage;
- public ToolbarButton btnNewDialog;
- public ToolbarButton btnDeletePage;
- public ToolbarButton btnPageSetup;
- public ToolbarButton btnCut;
- public ToolbarButton btnCopy;
- public ToolbarButton btnPaste;
- public ToolbarButton btnFormatPainter;
- public ToolbarUndoButton btnUndo;
- public ToolbarRedoButton btnRedo;
- public ToolbarButton btnGroup;
- public ToolbarButton btnUngroup;
- private Timer clipboardTimer;
- private Timer previewTimer;
- #endregion
- #region Private Methods
- private void UpdateControls()
- {
- btnNew.Enabled = Designer.cmdNew.Enabled;
- btnOpen.Enabled = Designer.cmdOpen.Enabled;
- btnSave.Enabled = Designer.cmdSave.Enabled;
- btnSaveAll.Enabled = Designer.cmdSaveAll.Enabled;
- btnPreview.Enabled = Designer.cmdPreview.Enabled;
- btnPreviewCloud.Enabled = Designer.cmdPreviewCloud.Enabled;
- btnNewPage.Enabled = Designer.cmdNewPage.Enabled;
- #if COMMUNITY
- btnNewDialog.Enabled = false;
- #else
- btnNewDialog.Enabled = Designer.cmdNewDialog.Enabled;
- #endif
- btnDeletePage.Enabled = Designer.cmdDeletePage.Enabled;
- btnPageSetup.Enabled = Designer.cmdPageSetup.Enabled;
- btnCut.Enabled = Designer.cmdCut.Enabled;
- btnCopy.Enabled = Designer.cmdCopy.Enabled;
- btnFormatPainter.Enabled = Designer.cmdFormatPainter.Enabled;
- btnFormatPainter.Checked = Designer.FormatPainter;
- btnUndo.Enabled = Designer.cmdUndo.Enabled;
- btnRedo.Enabled = Designer.cmdRedo.Enabled;
- btnGroup.Enabled = Designer.cmdGroup.Enabled;
- btnUngroup.Enabled = Designer.cmdUngroup.Enabled;
- }
- private void FClipboardTimer_Tick(object sender, EventArgs e)
- {
- btnPaste.Enabled = Designer.cmdPaste.Enabled;
- }
- private void FPreviewTimer_Tick(object sender, EventArgs e)
- {
- previewTimer.Stop();
- Designer.cmdPreview.Invoke(sender, e);
- }
- private void btnPreview_Click(object sender, EventArgs e)
- {
- previewTimer.Start();
- }
- #endregion
- #region Protected Methods
- protected override void Dispose(bool disposing)
- {
- if (disposing)
- {
- clipboardTimer.Dispose();
- previewTimer.Dispose();
- }
- base.Dispose(disposing);
- }
- #endregion
- #region Public Methods
- public override void SelectionChanged()
- {
- base.SelectionChanged();
- Throttle.Execute(UpdateControls);
- }
- public override void UpdateContent()
- {
- base.UpdateContent();
- Throttle.Execute(UpdateControls);
- }
- public override void Localize()
- {
- base.Localize();
- MyRes res = new MyRes("Designer,Toolbar,Standard");
- Text = res.Get("");
- SetItemText(btnNew, res.Get("New"));
- SetItemText(btnOpen, res.Get("Open"));
- SetItemText(btnSave, res.Get("Save"));
- SetItemText(btnSaveAll, res.Get("SaveAll"));
- SetItemText(btnPreview, res.Get("Preview"));
- SetItemText(btnPreviewCloud, res.Get("PreviewCloud"));
- SetItemText(btnNewPage, res.Get("NewPage"));
- SetItemText(btnNewDialog, res.Get("NewDialog"));
- SetItemText(btnDeletePage, res.Get("DeletePage"));
- SetItemText(btnPageSetup, res.Get("PageSetup"));
- SetItemText(btnCut, res.Get("Cut"));
- SetItemText(btnCopy, res.Get("Copy"));
- SetItemText(btnPaste, res.Get("Paste"));
- SetItemText(btnFormatPainter, res.Get("FormatPainter"));
- SetItemText(btnUndo, res.Get("Undo"));
- SetItemText(btnRedo, res.Get("Redo"));
- SetItemText(btnGroup, res.Get("Group"));
- SetItemText(btnUngroup, res.Get("Ungroup"));
- }
- #endregion
- public StandardToolbar(Designer designer)
- : base(designer)
- {
- Name = "StandardToolbar";
- btnNew = new ToolbarButton("btnStdNew", 4, Designer.cmdNew.Invoke);
- btnOpen = new ToolbarOpenButton(designer, "btnStdOpen", 1);
- btnSave = new ToolbarButton("btnStdSave", 2, Designer.cmdSave.Invoke);
- btnSaveAll = new ToolbarButton("btnStdSaveAll", 178, Designer.cmdSaveAll.Invoke);
- btnPreview = new ToolbarButton("btnStdPreview", 3, btnPreview_Click);
- btnPreviewCloud = new ToolbarButton("btnStdPreviewCloud", 263, Designer.cmdPreviewCloud.Invoke);
- btnNewPage = new ToolbarButton("btnStdNewPage", 10, Designer.cmdNewPage.Invoke);
- btnNewPage.BeginGroup = true;
- btnNewDialog = new ToolbarButton("btnStdNewDialog", 11, Designer.cmdNewDialog.Invoke);
- btnDeletePage = new ToolbarButton("btnStdDeletePage", 12, Designer.cmdDeletePage.Invoke);
- btnPageSetup = new ToolbarButton("btnStdPageSetup", 13, Designer.cmdPageSetup.Invoke);
- btnCut = new ToolbarButton("btnStdCut", 5, Designer.cmdCut.Invoke);
- btnCut.BeginGroup = true;
- btnCopy = new ToolbarButton("btnStdCopy", 6, Designer.cmdCopy.Invoke);
- btnPaste = new ToolbarButton("btnStdPaste", 7, Designer.cmdPaste.Invoke);
- btnFormatPainter = new ToolbarButton("btnStdFormatPainter", 18, Designer.cmdFormatPainter.Invoke);
- btnFormatPainter.CheckOnClick = true;
- btnUndo = new ToolbarUndoButton(designer, "btnStdUndo", 8);
- btnUndo.BeginGroup = true;
- btnRedo = new ToolbarRedoButton(designer, "btnStdRedo", 9);
- btnGroup = new ToolbarButton("btnStdGroup", 17, Designer.cmdGroup.Invoke);
- btnGroup.BeginGroup = true;
- btnUngroup = new ToolbarButton("btnStdUngroup", 16, Designer.cmdUngroup.Invoke);
- AddItems(
- btnNew, btnOpen, btnSave, btnSaveAll, btnPreview, btnPreviewCloud,
- btnNewPage, btnNewDialog, btnDeletePage, btnPageSetup,
- btnCut, btnCopy, btnPaste, btnFormatPainter,
- btnUndo, btnRedo,
- btnGroup, btnUngroup);
- Localize();
- UpdateDpiDependencies();
- clipboardTimer = new Timer();
- clipboardTimer.Interval = 500;
- clipboardTimer.Tick += FClipboardTimer_Tick;
- clipboardTimer.Start();
- previewTimer = new Timer();
- previewTimer.Interval = 20;
- previewTimer.Tick += FPreviewTimer_Tick;
- }
- }
- }
|