PictureObjectMenu.cs 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Text;
  4. using System.Windows.Forms;
  5. using FastReport.Design;
  6. using FastReport.Utils;
  7. namespace FastReport
  8. {
  9. internal class PictureObjectMenu : ReportComponentBaseMenu
  10. {
  11. #region Fields
  12. public ContextMenuItem miSizeMode;
  13. public ContextMenuItem miAutoSize;
  14. public ContextMenuItem miCenterImage;
  15. public ContextMenuItem miNormal;
  16. public ContextMenuItem miStretchImage;
  17. public ContextMenuItem miZoom;
  18. private SelectedPictureObjects pictureObjects;
  19. #endregion
  20. #region Private Methods
  21. private void miAutoSize_Click(object sender, EventArgs e)
  22. {
  23. pictureObjects.SetSizeMode(PictureBoxSizeMode.AutoSize);
  24. Change();
  25. }
  26. private void miCenterImage_Click(object sender, EventArgs e)
  27. {
  28. pictureObjects.SetSizeMode(PictureBoxSizeMode.CenterImage);
  29. Change();
  30. }
  31. private void miNormal_Click(object sender, EventArgs e)
  32. {
  33. pictureObjects.SetSizeMode(PictureBoxSizeMode.Normal);
  34. Change();
  35. }
  36. private void miStretchImage_Click(object sender, EventArgs e)
  37. {
  38. pictureObjects.SetSizeMode(PictureBoxSizeMode.StretchImage);
  39. Change();
  40. }
  41. private void miZoom_Click(object sender, EventArgs e)
  42. {
  43. pictureObjects.SetSizeMode(PictureBoxSizeMode.Zoom);
  44. Change();
  45. }
  46. #endregion
  47. public PictureObjectMenu(Designer designer) : base(designer)
  48. {
  49. pictureObjects = new SelectedPictureObjects(Designer);
  50. pictureObjects.Update();
  51. MyRes res = new MyRes("ComponentMenu,PictureObject");
  52. miSizeMode = CreateMenuItem(res.Get("SizeMode"));
  53. miSizeMode.BeginGroup = true;
  54. miAutoSize = CreateMenuItem(res.Get("AutoSize"), new EventHandler(miAutoSize_Click));
  55. miCenterImage = CreateMenuItem(res.Get("CenterImage"), new EventHandler(miCenterImage_Click));
  56. miNormal = CreateMenuItem(res.Get("Normal"), new EventHandler(miNormal_Click));
  57. miStretchImage = CreateMenuItem(res.Get("StretchImage"), new EventHandler(miStretchImage_Click));
  58. miZoom = CreateMenuItem(res.Get("Zoom"), new EventHandler(miZoom_Click));
  59. int insertPos = Items.IndexOf(miCut);
  60. Items.Insert(insertPos, miSizeMode);
  61. miSizeMode.DropDownItems.AddRange(new ContextMenuItem[] {
  62. miAutoSize, miCenterImage, miNormal, miStretchImage, miZoom });
  63. bool enabled = pictureObjects.Enabled;
  64. miAutoSize.Enabled = enabled;
  65. miCenterImage.Enabled = enabled;
  66. miNormal.Enabled = enabled;
  67. miStretchImage.Enabled = enabled;
  68. miZoom.Enabled = enabled;
  69. if (enabled)
  70. {
  71. PictureBoxSizeMode mode = pictureObjects.First.SizeMode;
  72. miAutoSize.Checked = mode == PictureBoxSizeMode.AutoSize;
  73. miCenterImage.Checked = mode == PictureBoxSizeMode.CenterImage;
  74. miNormal.Checked = mode == PictureBoxSizeMode.Normal;
  75. miStretchImage.Checked = mode == PictureBoxSizeMode.StretchImage;
  76. miZoom.Checked = mode == PictureBoxSizeMode.Zoom;
  77. }
  78. }
  79. }
  80. }