You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
56 lines
1.6 KiB
56 lines
1.6 KiB
/* |
|
* Efl.UI sizing examples. |
|
* |
|
* Demonstrate how to use the sizing api from Efl.Gfx. |
|
* We load a box with 3 buttons, one with default sizing, one that has a max size |
|
* and the last one has a min size. Try resizing the window to see how this changes. |
|
*/ |
|
|
|
using System; |
|
|
|
public class Example : Efl.Csharp.Application |
|
{ |
|
protected override void OnInitialize(string[] args) |
|
{ |
|
// Create a window and initialize it |
|
Efl.Ui.Win win = new Efl.Ui.Win(null, winType: Efl.Ui.WinType.Basic); |
|
win.Text = "Size Control"; |
|
win.Autohide = true; |
|
win.VisibilityChangedEvent += (object sender, Efl.Gfx.EntityVisibilityChangedEventArgs e) => { |
|
// Exit the EFL main loop |
|
if (e.Arg == false) |
|
Efl.Ui.Config.Exit(); |
|
}; |
|
|
|
// Create a box container |
|
Efl.Ui.Box box = new Efl.Ui.Box(win); |
|
win.SetContent(box); |
|
|
|
// Create a regular button (without size hints) |
|
var button = new Efl.Ui.Button(win); |
|
button.Text = "Button"; |
|
box.Pack(button); |
|
|
|
// Create a small button (max size is limited) |
|
button = new Efl.Ui.Button(win); |
|
button.Text = "Small"; |
|
button.HintSizeMax = new Eina.Size2D(50,50); |
|
box.Pack(button); |
|
|
|
// Create a big button (min size is limited) |
|
button = new Efl.Ui.Button(win); |
|
button.Text = "Big button"; |
|
button.HintSizeMin = new Eina.Size2D(100,100); |
|
box.Pack(button); |
|
} |
|
|
|
#if WIN32 |
|
[STAThreadAttribute()] |
|
#endif |
|
public static void Main() |
|
{ |
|
var example = new Example(); |
|
example.Launch(); |
|
} |
|
} |
|
|
|
|