---------------------------------------------------------------------------------- --# GtkRevealer ---------------------------------------------------------------------------------- include GtkEngine.e requires("3.10","GtkRevealer") constant txt = `GtkRevealer The GtkRevealer widget is a container which animates the transition of its child from invisible to visible. The style of transition can be controlled with gtk_revealer_set_transition_type(). These animations respect the "gtk-enable-animations" setting. Click the Euphoria toggle button. ` constant win = create(GtkWindow,{ {"border width",10}, {"default size",500,-1}, {"position",GTK_WIN_POS_CENTER}, {"connect","destroy","Quit"}}) constant panel = create(GtkBox,VERTICAL,10) add(win,panel) constant revealer = create(GtkRevealer,{ {"transition type",GTK_REVEALER_TRANSITION_TYPE_CROSSFADE}, {"transition duration",2000}}) constant img = create(GtkImage,"thumbnails/euphoria.gif") add(revealer,img) add(panel,revealer) constant lbl = create(GtkLabel,{ {"markup",txt}, {"padding",10,0}, {"line wrap",TRUE}}) add(panel,lbl) constant btn1 = create(GtkButton,"gtk-quit","Quit"), btn2 = create(GtkToggleButton,"thumbnails/euphoria-linux.svg# _Euphoria",_("ToggleEu")), box2 = create(GtkButtonBox) pack(box2,{btn1,btn2}) pack(panel,-box2) show_all(win) main() ---------------------------------- function ToggleEu(atom ctl) ---------------------------------- set(revealer,"reveal child",get(ctl,"active")) return 1 end function