git-svn-id: svn://svn.ijw.co.nz/svn/OpenRa@1227 993157c7-ee19-0410-b2c4-bb4e9862e678

This commit is contained in:
chrisf
2007-07-14 07:10:35 +00:00
parent fb5200b5ee
commit 6cffb2ebb5

View File

@@ -10,31 +10,20 @@ namespace OpenRa.Game
{ {
readonly Size clientSize; readonly Size clientSize;
readonly float2 mapSize; readonly float2 mapSize;
PointF scrollPosition; float2 scrollPosition;
public PointF ScrollPosition public PointF ScrollPosition { get { return scrollPosition.ToPointF(); } }
{ public Size ClientSize { get { return clientSize; } }
get { return scrollPosition; }
}
public void Scroll(float2 delta) public void Scroll(float2 delta)
{ {
float2 scrollPos = new float2(ScrollPosition) + delta; scrollPosition = (scrollPosition + delta).Constrain(new Range<float2>(float2.Zero, mapSize));
scrollPos = scrollPos.Constrain(new Range<float2>(float2.Zero, mapSize));
scrollPosition = scrollPos.ToPointF();
}
public Size ClientSize
{
get { return clientSize; }
} }
public Viewport(Size clientSize, float2 mapSize) public Viewport(Size clientSize, float2 mapSize)
{ {
this.clientSize = clientSize; this.clientSize = clientSize;
this.mapSize = 24 * mapSize - Size + new float2(128, 0); this.mapSize = 24 * mapSize - new float2(clientSize) + new float2(128, 0);
} }
public float2 Size { get { return new float2(clientSize); } }
} }
} }