28 using System.Collections.Generic;
40 private bool pressedDown =
false;
41 private Touch touchObject = null;
49 public Widget Knob {
get;
private set; }
54 public Color ActiveColor
56 get {
return _activeColor; }
57 set { _activeColor = value; }
63 public Color InactiveColor
65 get {
return _inactiveColor; }
66 set { _inactiveColor = value; }
72 public Widget Track {
get;
private set; }
79 public Slider(
double width,
double height )
80 : base( width, height )
84 Track =
new Widget( width, height / 3 );
102 : this(width, height)
107 private void InitializeControls()
111 Game.
Controls.Mouse.ListenMovement( 1.0, MouseMove, null ).InContext(
this );
121 base.BindTo( meter );
132 if ( Knob != null && Track != null &&
Meter != null )
133 Knob.X = Track.Left + Track.Width *
Meter.RelativeValue;
136 private void GenMove(
Vector newPos )
141 if ( newVal < Track.Left ) Knob.X = Track.Left;
142 else if ( newVal > Track.Right ) Knob.X = Track.Right;
143 else Knob.X = newVal;
145 Meter.RelativeValue = ( newVal - Track.Left ) / Track.Width;
148 private void MousePress()
150 if ( pressedDown )
return;
157 Knob.Color = pressedDown ||
Game.
Mouse.IsCursorOn(
this ) ? _activeColor : _inactiveColor;
160 GenMove(
Game.
Mouse.PositionOnScreen -
this.Position );
163 private void MouseRelease()
165 if ( !pressedDown )
return;
170 private void TouchPress(
Touch touch )
172 if ( touchObject != null )
return;
175 Knob.Color = _activeColor;
178 private void TouchMove(
Touch touch )
180 if ( touchObject == touch )
184 private void TouchRelease(
Touch touch )
186 if ( touchObject == null )
return;
189 Knob.Color = _inactiveColor;
Vector PositionOnScreen
Kosketuksen paikka ruudulla.
static readonly Color Red
Punainen.
Suuntakulma (rajoitettu -180 ja 180 asteen välille) asteina ja radiaaneina. Tietoja kulmasta: http://...
Kosketuspaneelin kosketus.
static Jypeli.Controls.Controls Controls
Pelin kontrollit.
ButtonState
Napin (minkä tahansa) asento.
double ScalarProjection(Vector unitVector)
static readonly Color Transparent
Läpinäkyvä väri.
Peliluokka reaaliaikaisille peleille.
Parametrit analogisen ohjauksen (hiiren tai ohjaustikun) tapahtumalle.
static readonly Ellipse Circle
Ympyrä tai ellipsi.
static readonly Color DarkGray
Tumma harmaa.
static void AssertInitialized(Action actionMethod)
Suorittaa aliohjelman kun peli on varmasti alustettu.
Mittari, joka mittaa erityyppisiä arvoja. Sidottavissa näyttöihin, kuten ValueDisplay ja BarGauge...