private static RenderedLayerDisplayInfo BuildLayerSelector(ViewerControl viewer, CachePackage cachePackage, string basePath, CrunchedFile crunchedFile) { RenderedLayerDisplayInfo renderedLayerDisplayInfo = new RenderedLayerDisplayInfo(); renderedLayerDisplayInfo.tsmiList = new List <ToolStripMenuItem>(); foreach (CrunchedLayer current in crunchedFile.crunchedLayers) { RenderedLayerSelector renderedLayerSelector = new RenderedLayerSelector(current); renderedLayerSelector.viewer = viewer; renderedLayerSelector.menuItem = new ToolStripMenuItem(current.displayName); renderedLayerSelector.tileSource = new RenderedTileSource(cachePackage, new VENamingScheme(Path.Combine(basePath, current.namingScheme.GetFilePrefix()), current.namingScheme.GetFileSuffix())); renderedLayerSelector.menuItem.Tag = renderedLayerSelector; renderedLayerSelector.menuItem.Click += MenuItem_Click; renderedLayerDisplayInfo.tsmiList.Add(renderedLayerSelector.menuItem); } for (int i = 0; i < renderedLayerDisplayInfo.tsmiList.Count; i++) { ((RenderedLayerSelector)renderedLayerDisplayInfo .tsmiList[renderedLayerDisplayInfo.tsmiList.Count - 1 - i].Tag).ToggleLayer(); } renderedLayerDisplayInfo.defaultView = crunchedFile.crunchedLayers[0].defaultView; return(renderedLayerDisplayInfo); }
public static RenderedLayerDisplayInfo GetLayerSelector(ViewerControl viewer, CachePackage cachePackage) { OpenFileDialog openFileDialog = new OpenFileDialog(); openFileDialog.Filter = string.Format("MapCruncher Rendered Layers (*{0})|*{1}{2}", CrunchedFile.CrunchedFilenameExtension, CrunchedFile.CrunchedFilenameExtension, BuildConfig.theConfig.allFilesOption); openFileDialog.FilterIndex = 1; openFileDialog.RestoreDirectory = true; if (openFileDialog.ShowDialog() != DialogResult.OK) { return(null); } Uri uri = new Uri(openFileDialog.FileName); return(RenderedLayerSelector.GetLayerSelector(viewer, cachePackage, uri)); }
public static RenderedLayerDisplayInfo GetLayerSelector(ViewerControl viewer, CachePackage cachePackage, Uri uri) { RenderedLayerDisplayInfo result; try { CrunchedFile renderedMashupsFromFile = RenderedLayerSelector.GetRenderedMashupsFromFile(uri); D.Assert(uri.IsFile); string localPath = uri.LocalPath; result = RenderedLayerSelector.BuildLayerSelector(viewer, cachePackage, Path.GetDirectoryName(localPath), renderedMashupsFromFile); } catch (Exception ex) { MessageBox.Show(ex.Message, "Error opening crunched file ", MessageBoxButtons.OK, MessageBoxIcon.Hand); result = null; } return(result); }
private static RenderedLayerDisplayInfo BuildLayerSelector(ViewerControl viewer, CachePackage cachePackage, string basePath, CrunchedFile crunchedFile) { RenderedLayerDisplayInfo renderedLayerDisplayInfo = new RenderedLayerDisplayInfo(); renderedLayerDisplayInfo.tsmiList = new List<ToolStripMenuItem>(); foreach (CrunchedLayer current in crunchedFile.crunchedLayers) { RenderedLayerSelector renderedLayerSelector = new RenderedLayerSelector(current); renderedLayerSelector.viewer = viewer; renderedLayerSelector.menuItem = new ToolStripMenuItem(current.displayName); renderedLayerSelector.tileSource = new RenderedTileSource(cachePackage, new VENamingScheme(Path.Combine(basePath, current.namingScheme.GetFilePrefix()), current.namingScheme.GetFileSuffix())); renderedLayerSelector.menuItem.Tag = renderedLayerSelector; renderedLayerSelector.menuItem.Click += new EventHandler(RenderedLayerSelector.MenuItem_Click); renderedLayerDisplayInfo.tsmiList.Add(renderedLayerSelector.menuItem); } for (int i = 0; i < renderedLayerDisplayInfo.tsmiList.Count; i++) { ((RenderedLayerSelector)renderedLayerDisplayInfo.tsmiList[renderedLayerDisplayInfo.tsmiList.Count - 1 - i].Tag).ToggleLayer(); } renderedLayerDisplayInfo.defaultView = crunchedFile.crunchedLayers[0].defaultView; return renderedLayerDisplayInfo; }
private static void MenuItem_Click(object sender, EventArgs e) { RenderedLayerSelector renderedLayerSelector = (RenderedLayerSelector)((ToolStripMenuItem)sender).Tag; renderedLayerSelector.ToggleLayer(); }
internal void AddLayersFromUri(Uri uri) { this.addLayers(RenderedLayerSelector.GetLayerSelector(this.viewer, this.cachePackage, uri)); }
private void addLayerToolStripMenuItem_Click(object sender, EventArgs e) { this.addLayers(RenderedLayerSelector.GetLayerSelector(this.viewer, this.cachePackage)); }
internal void AddLayersFromUri(Uri uri) { addLayers(RenderedLayerSelector.GetLayerSelector(viewer, cachePackage, uri)); }