コード例 #1
0
ファイル: MapControl.cs プロジェクト: figment/Legends-Viewer
 public override void Dispose()
 {
     if (MapPanel != null)
     {
         MapScale = MapPanel.ZoomCurrent;
         Center = MapPanel.Center;
         CivsToggled = MapPanel.CivsToggled;
         SitesToggled = MapPanel.SitesToggled;
         WarsToggled = MapPanel.WarsToggled;
         BattlesToggled = MapPanel.BattlesToggled;
         CurrentYear = MapPanel.CurrentYear;
         if (MapPanel.Overlay != null) MapPanel.Overlay.Dispose();
         MapPanel.Dispose();
         MapPanel = null;
     }
 }
コード例 #2
0
ファイル: MapControl.cs プロジェクト: figment/Legends-Viewer
 public override Control GetControl()
 {
     if (MapPanel == null || MapPanel.IsDisposed)
     {
         MapPanel = new MapPanel(World.Map, World, TabControl, FocusObject);
         if (MapScale > 0 && Center != null)
         {
             MapPanel.ZoomCurrent = MapScale;
             MapPanel.Center = Center;
             MapPanel.ZoomToBoundsOnFirstPaint = false;
             MapPanel.CurrentYear = CurrentYear;
             if (CivsToggled) MapPanel.ToggleCivs();
             if (SitesToggled) MapPanel.ToggleSites();
             if (WarsToggled) MapPanel.ToggleWars();
             if (BattlesToggled) MapPanel.ToggleBattles();
             Refresh();
         }
         return MapPanel;
     }
     else return MapPanel;
 }
コード例 #3
0
ファイル: MapMenu.cs プロジェクト: Riock/Legends-Viewer
 public MapMenuHorizontal(MapPanel map) : base(map) { }
コード例 #4
0
ファイル: MapControl.cs プロジェクト: figment/Legends-Viewer
        public static List<Bitmap> CreateBitmaps(World world, DwarfObject dwarfObject)
        {
            int maxSize = world.PageMiniMap.Height > world.PageMiniMap.Width ? world.PageMiniMap.Height : world.PageMiniMap.Width;
            MapPanel createBitmaps = new MapPanel(world.Map, world, null, dwarfObject);
            createBitmaps.Height = maxSize;
            createBitmaps.Width = maxSize;
            if (createBitmaps.ZoomToBoundsOnFirstPaint) createBitmaps.ZoomToBounds();

            createBitmaps.MiniMapAreaSideLength = maxSize;
            //createBitmaps.SetupMinimap();
            createBitmaps.Minimap = world.PageMiniMap;

            Bitmap miniMap = new Bitmap(maxSize, maxSize);

            using (Graphics miniMapGraphics = Graphics.FromImage(miniMap))
                createBitmaps.DrawMiniMap(miniMapGraphics);

            Bitmap map = new Bitmap(maxSize, maxSize);

            using (Graphics mapGraphics = Graphics.FromImage(map))
            {
                //mapGraphics.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.NearestNeighbor;
                mapGraphics.PixelOffsetMode = System.Drawing.Drawing2D.PixelOffsetMode.Half;
                createBitmaps.DrawMap(mapGraphics);
                createBitmaps.DrawDisplayObjects(mapGraphics);
                createBitmaps.Dispose();
                return new List<Bitmap>() { map, miniMap };
            }
        }
コード例 #5
0
ファイル: MapMenu.cs プロジェクト: Riock/Legends-Viewer
 public MapMenu(MapPanel map)
 {
     Map = map;
 }