Jypeli  5
The simple game programming library
ILayout.cs
Siirry tämän tiedoston dokumentaatioon.
1 #region MIT License
2 /*
3  * Copyright (c) 2009-2012 University of Jyväskylä, Department of Mathematical
4  * Information Technology.
5  *
6  * Permission is hereby granted, free of charge, to any person obtaining a copy
7  * of this software and associated documentation files (the "Software"), to deal
8  * in the Software without restriction, including without limitation the rights
9  * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10  * copies of the Software, and to permit persons to whom the Software is
11  * furnished to do so, subject to the following conditions:
12  *
13  * The above copyright notice and this permission notice shall be included in
14  * all copies or substantial portions of the Software.
15  *
16  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
22  * THE SOFTWARE.
23  */
24 #endregion
25 
26 /*
27  * Authors: Tomi Karppinen, Tero Jäntti
28  */
29 
30 using System.Collections.Generic;
31 using System.ComponentModel;
32 
33 namespace Jypeli
34 {
38  public enum Sizing
39  {
43  FixedSize,
44 
48  Expanding
49  }
50 
51 
53  {
55  : base(1, 1)
56  {
58  HorizontalSizing = Sizing.Expanding;
59  VerticalSizing = Sizing.FixedSize;
60  }
61  }
62 
63  public class VerticalSpacer : GameObject
64  {
65  public VerticalSpacer()
66  : base(1, 1)
67  {
69  HorizontalSizing = Sizing.FixedSize;
70  VerticalSizing = Sizing.Expanding;
71  }
72  }
73 
74 
82  [EditorBrowsable(EditorBrowsableState.Never)]
83  public interface ILayout
84  {
85  GameObject Parent { get; set; }
86 
89 
91 
95  double TopPadding { get; set; }
96 
100  double BottomPadding { get; set; }
101 
105  double LeftPadding { get; set; }
106 
110  double RightPadding { get; set; }
111 
112  [EditorBrowsable(EditorBrowsableState.Never)]
113  void UpdateSizeHints(IList<GameObject> objects);
114 
115  [EditorBrowsable(EditorBrowsableState.Never)]
116  void Update(IList<GameObject> objects, Vector maximumSize);
117  }
118 }
Rajapinta asettelijalle. Asettelija asettelee widgetin lapsioliot siten, että ne mahtuvat widgetin si...
Definition: ILayout.cs:83
virtual Vector PreferredSize
Koko, jota oliolla tulisi olla asettelijan sisällä. Todellinen koko voi olla pienempi, jos tilaa ei ole tarpeeksi.
Definition: Layout.cs:62
Sizing
Olion koon asettaminen asettelijan sisällä.
Definition: ILayout.cs:38
static readonly Color Transparent
Läpinäkyvä väri.
Definition: Color.cs:869
virtual Sizing VerticalSizing
Koon asettaminen pystysuunnassa, kun olio on asettelijan sisällä.
Definition: Layout.cs:43
virtual Sizing HorizontalSizing
Koon asettaminen vaakasuunnassa, kun olio on asettelijan sisällä.
Definition: Layout.cs:24
IGameObject Parent
Olio, jonka lapsiolio tämä olio on. Jos null, olio ei ole minkään olion lapsiolio.
Olio käyttää kaiken vapaana olevan tilan ja kutistuu, jos tilaa ei ole tarpeeksi. ...
Väri.
Definition: Color.cs:13
virtual void Update(Time time)
Peliolion päivitys. Tätä kutsutaan, kun IsUpdated-ominaisuuden arvoksi on asetettu true ja olio on li...
2D-vektori.
Definition: Vector.cs:56
Pelialueella liikkuva olio. Käytä fysiikkapeleissä PhysicsObject-olioita.
Definition: __GameObject.cs:54
Olio ei kasva suuremmaksi kuin sen PreferredSize.