Abstract base class definining all common functionality of an editable map
Ejemplo n.º 1
0
		//public event HeightChangedDelegate HeightChanged;

		public View()
		{
			map=null;
			currentImage=0;
			clickPoint = startDrag=endDrag=clickPointx=new Point(-1,-1);
			topLeft=new Point(0,0);

			this.SetStyle(ControlStyles.DoubleBuffer|ControlStyles.UserPaint|ControlStyles.AllPaintingInWmPaint,true);
			newLeft=true;

			gridColor = Color.FromArgb(175,69,100,129);
			transBrush = new SolidBrush(gridColor);

			//dashPen = new Pen(new HatchBrush(HatchStyle.DarkHorizontal,Color.Black,transGray),1);
			dashPen = new Pen(Brushes.Black,1);
		}
Ejemplo n.º 2
0
		private void tileChange(IMap_Base mapFile,SelectedTileChangedEventArgs e)// MapLocation newCoords)
		{
			MapLocation newCoords = e.MapLocation;
			clickPointx = new Point(newCoords.Col,newCoords.Row);

			flipLock=true;
			if(!drawAll && !flipLock2)
				map[newCoords.Row, newCoords.Col, map.CurrentHeight].DrawAbove = !map[newCoords.Row, newCoords.Col, map.CurrentHeight].DrawAbove;

			//if(ViewClicked!=null)
			//{
			//    Args a = new Args(ArgType.MapClicked);
			//    a.Location = new MapLocation(newCoords.Col, newCoords.Row, map.CurrentHeight);
			//    ViewClicked(this,a);
			//}
			flipLock=false;
		}
Ejemplo n.º 3
0
		private void mapHeight(IMap_Base mapFile, HeightChangedEventArgs e)
		{
			Refresh();
			//if(HeightChanged!=null)
			//	HeightChanged(mapFile,e);
		}
Ejemplo n.º 4
0
		public override void SelectedTileChanged(IMap_Base sender, SelectedTileChangedEventArgs e)
		{
			mapTile = (XCMapTile)e.SelectedTile;
			lastLoc = e.MapLocation;
			Refresh();
		}
Ejemplo n.º 5
0
		public SetMapEventArgs(IMap_Base map)
        {
            this.map = map;
        }
Ejemplo n.º 6
0
		public virtual void SelectedTileChanged(IMap_Base sender, SelectedTileChangedEventArgs e) { Refresh(); }
Ejemplo n.º 7
0
		public override void HeightChanged(IMap_Base sender, HeightChangedEventArgs e)
		{
			lastLoc.Height = e.NewHeight;
			mapTile = (XCMapTile)map[lastLoc.Row, lastLoc.Col];
			Refresh();
		}
Ejemplo n.º 8
0
		public override void SelectedTileChanged(IMap_Base sender, SelectedTileChangedEventArgs e)
		{
			//bottom.Tile = (XCMapTile)e.SelectedTile;

			MapLocation pt = e.MapLocation;

			Text = "r: " + pt.Row + " c: " + pt.Col;

			int xc = (pt.Col - pt.Row) * hWidth;
			int yc = (pt.Col + pt.Row) * hHeight;

			selected.Reset();
			selected.AddLine(xc, yc, xc + hWidth, yc + hHeight);
			selected.AddLine(xc + hWidth, yc + hHeight, xc, yc + 2 * hHeight);
			selected.AddLine(xc, yc + 2 * hHeight, xc - hWidth, yc + hHeight);
			selected.CloseFigure();

			viewDrag(null, null);
			Refresh();
		}
Ejemplo n.º 9
0
		public virtual void HeightChanged(IMap_Base sender, HeightChangedEventArgs e) { Refresh(); }
Ejemplo n.º 10
0
		public void SetMap(IMap_Base newMap, IMap_Observer observer)
		{
			if (observer.Map != null)
			{
				observer.Map.HeightChanged -= new HeightChangedDelegate(observer.HeightChanged);
				observer.Map.SelectedTileChanged -= new SelectedTileChangedDelegate(observer.SelectedTileChanged);
			}

			observer.Map = newMap;
			if (newMap != null)
			{
				newMap.HeightChanged += new HeightChangedDelegate(observer.HeightChanged);
				newMap.SelectedTileChanged += new SelectedTileChangedDelegate(observer.SelectedTileChanged);
			}

			foreach (string key in observer.MoreObservers.Keys)
				SetMap(newMap, observer.MoreObservers[key]);
		}
Ejemplo n.º 11
0
		//public void SetMap(XCMapDesc map)
		//{
		//    view.Map = map.GetMapFile();
		//    view.Focus();
		//    OnResize(null);
		//}

		public void SetMap(IMap_Base map)
		{
			view.Map = map;
			view.Focus();
			OnResize(null);
		}
Ejemplo n.º 12
0
 public SetMapEventArgs(IMap_Base map)
 {
     this.map = map;
 }
Ejemplo n.º 13
0
 public override void HeightChanged(IMap_Base sender, HeightChangedEventArgs e)
 {
     currEntry = ((XCMapTile) map[clickRow, clickCol]).Rmp;
     fillGUI();
     Refresh();
 }
Ejemplo n.º 14
0
        /*public IMapFile Map
		{
			set
			{
				if (map != null)
				{
					map.HeightChanged -= new HeightChangedDelegate(heightChanged);
					map.SelectedTileChanged -= new SelectedTileChangedDelegate(tileChanged);
				}

				if (value is XCMapFile)
					map = (XCMapFile)value;
				else
					return;

				rmpPanel.Map = map;
				if (rmpPanel.Map != null)
				{
					currEntry = ((XCMapTile)map[clickRow, clickCol]).Rmp;
					fillGUI();
					cbRank1.Items.Clear();

					if (map.Tiles[0][0].Palette == Palette.UFOBattle)
						cbRank1.Items.AddRange(RmpFile.UnitRankUFO);
					else
						cbRank1.Items.AddRange(RmpFile.UnitRankTFTD);

					Text = string.Format("RmpView: r:{0} c:{1} h:{2}", rmpPanel.Map.MapSize.Rows, rmpPanel.Map.MapSize.Cols, rmpPanel.Map.MapSize.Height);
					rmpPanel.Map.HeightChanged += new HeightChangedDelegate(heightChanged);
					rmpPanel.Map.SelectedTileChanged += new SelectedTileChangedDelegate(tileChanged);
				}
				OnResize(null);
			}
		}*/

        public override void SelectedTileChanged(IMap_Base sender, SelectedTileChangedEventArgs e)
        {
            this.Text = string.Format("RmpView: r:{0} c:{1} ", e.MapLocation.Row, e.MapLocation.Col);
        }