PageRenderTime 53ms CodeModel.GetById 25ms RepoModel.GetById 1ms app.codeStats 0ms

/Epi Info 7.1.4.0 Release - Web Enter Integration/Epi.Windows.Mapping/MapMainForm.cs

#
C# | 187 lines | 156 code | 31 blank | 0 comment | 8 complexity | ad314f888f86b0b80a20130834451905 MD5 | raw file
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Text;
  7. using System.Windows.Forms;
  8. using System.Windows.Forms.Integration;
  9. using System.IO;
  10. using Epi;
  11. using Epi.Data;
  12. namespace Epi.Windows.Mapping
  13. {
  14. public partial class MapMainForm : Form
  15. {
  16. private ElementHost host;
  17. private EpiDashboard.Mapping.StandaloneMapControl mapControl;
  18. public MapMainForm()
  19. {
  20. System.Threading.Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo(Configuration.GetNewInstance().Settings.Language);
  21. InitializeComponent();
  22. host = new ElementHost();
  23. host.Dock = DockStyle.Fill;
  24. this.toolStripContainer1.ContentPanel.Controls.Add(host);
  25. mapControl = new EpiDashboard.Mapping.StandaloneMapControl();
  26. mapControl.DataSourceRequested += new EpiDashboard.Mapping.DataSourceRequestedHandler(mapControl_DataSourceRequested);
  27. mapControl.MouseCoordinatesChanged += new EpiDashboard.Mapping.MouseCoordinatesChangedHandler(mapControl_MouseCoordinatesChanged);
  28. mapControl.MapLoaded +=new EpiDashboard.Mapping.MapLoadedHandler(mapControl_MapLoaded);
  29. host.Child = mapControl;
  30. this.Width++;
  31. this.Width--;
  32. }
  33. void mapControl_MapLoaded(EpiDashboard.Mapping.StandaloneMapControl control, bool isTimeLapsePossible)
  34. {
  35. btnAddLayer.Enabled = true;
  36. btnOpen.Enabled = true;
  37. btnSave.Enabled = true;
  38. btnSaveImage.Enabled = true;
  39. btnTimeLapse.Enabled = isTimeLapsePossible;
  40. btnReference.Enabled = true;
  41. }
  42. void mapControl_MouseCoordinatesChanged(double latitude, double longitude)
  43. {
  44. this.Text = "Map - (" + latitude + ", " + longitude + ")";
  45. }
  46. List<object> mapControl_DataSourceRequested()
  47. {
  48. Epi.Windows.Dialogs.BaseReadDialog dlg = new Dialogs.BaseReadDialog();
  49. if (dlg.ShowDialog() == System.Windows.Forms.DialogResult.OK)
  50. {
  51. List<object> resultsArray = new List<object>();
  52. resultsArray.Add(dlg.SelectedDataSource);
  53. resultsArray.Add(dlg.SelectedDataMember);
  54. return resultsArray;
  55. }
  56. else
  57. return null;
  58. }
  59. private void btnOpen_Click(object sender, EventArgs e)
  60. {
  61. mapControl.OpenMap();
  62. }
  63. public void OpenMap(string filePath)
  64. {
  65. if (mapControl != null)
  66. {
  67. this.mapControl.OpenMap(filePath);
  68. }
  69. }
  70. public void SetWhiteBackground()
  71. {
  72. if (mapControl != null)
  73. {
  74. this.mapControl.MapBackground = System.Windows.Media.Brushes.White;
  75. }
  76. }
  77. public void SetMap(string filePath)
  78. {
  79. if (mapControl != null)
  80. {
  81. this.mapControl.SetMap(filePath);
  82. }
  83. }
  84. private void btnSave_Click(object sender, EventArgs e)
  85. {
  86. mapControl.SaveMap();
  87. }
  88. private void btnSaveImage_Click(object sender, EventArgs e)
  89. {
  90. mapControl.SaveAsImage();
  91. }
  92. private void caseClusterToolStripMenuItem_Click(object sender, EventArgs e)
  93. {
  94. mapControl.GenerateCaseCluster();
  95. }
  96. private void choroplethToolStripMenuItem_Click(object sender, EventArgs e)
  97. {
  98. mapControl.GenerateShapeFileChoropleth();
  99. }
  100. private void btnTimeLapse_Click(object sender, EventArgs e)
  101. {
  102. mapControl.CreateTimeLapse();
  103. }
  104. private void fromMapServerToolStripMenuItem_Click(object sender, EventArgs e)
  105. {
  106. mapControl.AddMapServerLayer();
  107. }
  108. private void fromShapeFileToolStripMenuItem_Click(object sender, EventArgs e)
  109. {
  110. mapControl.AddShapeFileLayer();
  111. }
  112. private void choroplethMapServerToolStripMenuItem_Click(object sender, EventArgs e)
  113. {
  114. mapControl.GenerateMapServerChoropleth();
  115. }
  116. private void fromKMLToolStripMenuItem_Click(object sender, EventArgs e)
  117. {
  118. mapControl.AddKmlLayer();
  119. }
  120. private void choroplethKMLToolStripMenuItem_Click(object sender, EventArgs e)
  121. {
  122. mapControl.GenerateKmlChoropleth();
  123. }
  124. private void withShapeFileBoundariesToolStripMenuItem1_Click(object sender, EventArgs e)
  125. {
  126. mapControl.GenerateShapeFileChoropleth();
  127. }
  128. private void withMapServerBoundariesToolStripMenuItem1_Click(object sender, EventArgs e)
  129. {
  130. mapControl.GenerateMapServerChoropleth();
  131. }
  132. private void withKMLBoundariesToolStripMenuItem1_Click(object sender, EventArgs e)
  133. {
  134. mapControl.GenerateKmlChoropleth();
  135. }
  136. private void withKMLBoundariesToolStripMenuItem_Click(object sender, EventArgs e)
  137. {
  138. mapControl.GenerateKmlDotDensity();
  139. }
  140. private void withShapeFileBoundariesToolStripMenuItem_Click(object sender, EventArgs e)
  141. {
  142. mapControl.GenerateShapeFileDotDensity();
  143. }
  144. private void withMapServerBoundariesToolStripMenuItem_Click(object sender, EventArgs e)
  145. {
  146. mapControl.GenerateMapServerDotDensity();
  147. }
  148. private void toolStripMenuItem2_Click(object sender, EventArgs e)
  149. {
  150. mapControl.GeneratePointMap();
  151. }
  152. private void toolStripContainer1_ContentPanel_Load(object sender, EventArgs e)
  153. {
  154. }
  155. }
  156. }