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

* 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)
// Create a box container
Efl.Ui.Box box = new Efl.Ui.Box(win);
// Create a regular button (without size hints)
var button = new Efl.Ui.Button(win);
button.Text = "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);
// 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);
#if WIN32
public static void Main()
var example = new Example();