public void LoadWidgets() { try { string[] Widgets = File.ReadLines(ConfigFile).ToArray(); foreach (string Conifg in Widgets) { string[] ConfigSplit = Conifg.Split('|'); GridWidget Widget = new GridWidget { Row = int.Parse(ConfigSplit[0]), Column = int.Parse(ConfigSplit[1]) }; if (Widget.Load(ConfigSplit[2])) { MasterDock.Add(Widget); } } } catch (Exception ex) { Console.WriteLine("Widget Load Error : " + ex.ToString()); } }
public MapView() { InitializeComponent(); //MouseWheel += MapControlMouseWheel; MapControl.MouseLeftButtonDown += MapControlOnMouseLeftButtonDown; MapControl.MouseRightButtonDown += MapControlOnMouseRightButtonDown; MapControl.MouseRightButtonUp += MapControlOnMouseRightButtonUp; MapControl.MouseMove += MapControlOnMouseMove; //MapControl.Map = new MyMap(); MapControl.MouseWheel += MapControlMouseWheel; MapControl.MouseWheelAnimation.Duration = 0; MapControl.Renderer = new Common.Maps.MapRenderer(); EventSystem.CenterMap += (position) => MapControl.Navigator.NavigateTo(position, 1, 500); //MapControl.Map.Resolutions; GameState.Instance.gameInfo.PropertyChanged += (a, b) => { if (b.PropertyName == nameof(ModuleGameInfo.worldName)) { Helper.ParseLayers().ContinueWith(x => Networking.Instance.MainThreadInvoke(() => GenerateLayers(x.Result))); } }; MapControl.Renderer.StyleRenderers[typeof(SvgStyle)] = new SvgStyleRenderer(); MapControl.Renderer.StyleRenderers[typeof(SvgStyleLazy)] = new SvgStyleRenderer(); MapControl.Renderer.StyleRenderers[typeof(TiledBitmapStyle)] = new TiledBitmapRenderer(); MapControl.Renderer.StyleRenderers[typeof(VelocityIndicatorStyle)] = new VelocityIndicatorRenderer(); MapControl.Renderer.StyleRenderers[typeof(PolylineMarkerStyle)] = new PolylineMarkerRenderer(); MapControl.Renderer.StyleRenderers[typeof(MarkerIconStyle)] = new MarkerIconRenderer(); MapControl.Renderer.WidgetRenders[typeof(GridWidget)] = new GridWidgetRenderer(); var gridWidget = new GridWidget(); MapControl.Map.Widgets.Add(gridWidget); MapControl.Map.Limiter = new ViewportLimiter(); MapControl.Map.Limiter.ZoomLimits = new MinMax(0.01, 40); MapMarkersLayer.IsMapInfoLayer = true; MapMarkersLayer.DataSource = new MapMarkerProvider(MapMarkersLayer, currentBounds, MarkerVisibilityManager); MapMarkersLayer.Style = null; // remove white circle https://github.com/Mapsui/Mapsui/issues/760 MapControl.Map.Layers.Add(MapMarkersLayer); MapMarkersLayer.DataChanged += (a, b) => MapControl.RefreshData(); // ^ without this create/delete only updates when screen is moved GPSTrackerLayer.IsMapInfoLayer = true; GPSTrackerLayer.DataSource = new GPSTrackerProvider(GPSTrackerLayer, currentBounds); GPSTrackerLayer.Style = null; // remove white circle https://github.com/Mapsui/Mapsui/issues/760 MapControl.Map.Layers.Add(GPSTrackerLayer); GPSTrackerLayer.DataChanged += (a, b) => MapControl.RefreshData(); // ^ without this create/delete only updates when screen is moved LayerList.AddWidget("Grid", gridWidget); MarkerVisibilityList.Initialize(MarkerVisibilityManager); //MapControl.ZoomToBox(new Point(0, 0), new Point(8192, 8192)); //MapControl.Navigator.ZoomTo(1, new Point(512,512), 5); MapControl.Navigator.ZoomTo(6); var markerProvider = MapMarkersLayer.DataSource as MapMarkerProvider; MarkerCreate.OnChannelChanged += (oldID) => { markerProvider?.RemoveMarker(oldID); markerProvider?.AddMarker(MarkerCreate.MarkerRef); }; MarkerCreatePopup.Closed += (x, y) => { if (MarkerCreate.MarkerRef != null) { markerProvider?.RemoveMarker(MarkerCreate.MarkerRef.id); } MarkerCreate.MarkerRef = null; }; if (GameState.Instance.gameInfo.worldName != null) { Helper.ParseLayers().ContinueWith(x => Networking.Instance.MainThreadInvoke(() => GenerateLayers(x.Result))); } }
public MapView() { InitializeComponent(); //MouseWheel += MapControlMouseWheel; MapControl.MouseLeftButtonDown += MapControlOnMouseLeftButtonDown; MapControl.MouseLeftButtonUp += MapControlOnMouseLeftButtonUp; MapControl.MouseMove += MapControlOnMouseMove; MapControl.MouseEnter += MapControlOnMouseEnter; MapControl.MouseLeave += MapControlOnMouseLeave; //MapControl.Map = new MyMap(); MapControl.MouseWheel += MapControlMouseWheel; MapControl.MouseWheelAnimation.Duration = 0; MapControl.Renderer = new Common.Maps.MapRenderer(); Helper.WaitingForTerrain += OnWaitingForTerrainData; EventSystem.CenterMap += (position) => MapControl.Navigator.NavigateTo(position, 1, 500); //MapControl.Map.Resolutions; GameState.Instance.gameInfo.PropertyChanged += (a, b) => { if (b.PropertyName == nameof(ModuleGameInfo.worldName)) { OnNewTerrainLoaded(GameState.Instance.gameInfo.worldName); } }; var gridWidget = new GridWidget(); MapControl.Map.Widgets.Add(gridWidget); MapControl.Map.Limiter = new ViewportLimiter(); MapControl.Map.Limiter.ZoomLimits = new MinMax(0.01, 40); MapMarkersLayer.IsMapInfoLayer = true; MapMarkersLayer.DataSource = new MapMarkerProvider(MapMarkersLayer, currentBounds, MarkerVisibilityManager); MapMarkersLayer.Style = null; // remove white circle https://github.com/Mapsui/Mapsui/issues/760 MapControl.Map.Layers.Add(MapMarkersLayer); //MapMarkersLayer.DataChanged += (a, b) => MapControl.RefreshData(); // ^ without this create/delete only updates when screen is moved GPSTrackerLayer.IsMapInfoLayer = true; GPSTrackerLayer.DataSource = new GPSTrackerProvider(GPSTrackerLayer, currentBounds); GPSTrackerLayer.Style = null; // remove white circle https://github.com/Mapsui/Mapsui/issues/760 MapControl.Map.Layers.Add(GPSTrackerLayer); //GPSTrackerLayer.DataChanged += (a, b) => MapControl.RefreshData(); // ^ without this create/delete only updates when screen is moved LayerList.AddWidget("Grid", gridWidget); MarkerVisibilityList.Initialize(MarkerVisibilityManager); var markerProvider = MapMarkersLayer.DataSource as MapMarkerProvider; MarkerVisibilityList.OnCurrentChannelSelected += (x) => { DefaultMarkerChannel = x; markerProvider.SetForegroundChannel(DefaultMarkerChannel); }; markerProvider.SetForegroundChannel(DefaultMarkerChannel); MarkerCreate.OnChannelChanged += (oldID) => { markerProvider?.RemoveMarker(oldID); markerProvider?.AddMarker(MarkerCreate.MarkerRef); }; MarkerCreatePopup.Closed += (x, y) => { if (MarkerCreate.MarkerRef != null && !MarkerCreate.IsEdit) { markerProvider?.RemoveMarker(MarkerCreate.MarkerRef.id); } MarkerCreate.MarkerRef = null; }; if (GameState.Instance.gameInfo.worldName != null) { OnNewTerrainLoaded(GameState.Instance.gameInfo.worldName); } }