-------------------------------------------------------------------------- --# Auto-Scrolling text -------------------------------------------------------------------------- include GtkEngine.e object txt = "This library is free software; you can redistribute it " & "and/or modify it under the terms of the GNU Lesser General " & "Public License as published by the Free Software Foundation; " & "either version 2 of the License, or (at your option) any later " & "version. \n\n" & "This library is distributed in the hope that it will be useful, " & "but WITHOUT ANY WARRANTY; without even the implied warranty of " & "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. " & "See the GNU Lesser General Public License for more details. \n\n" & "You should have received a copy of the GNU Lesser General Public " & "License along with this library; if not, write to the Free Software " & "Foundation, Inc., 59 Temple Pl, Suite 330, Boston, MA 02111-1307 USA \n\n" txt = "EuGTK is licensed under the LGPL\n\n" & txt & txt & txt & "That's All, Folks!\n" constant win = create(GtkWindow,"size=600x280,border=10,position=1,$destroy=Quit") constant panel = create(GtkBox,"orientation=HORIZONTAL") add(win,panel) constant ebox = create(GtkEventBox,"background=cornsilk") add(panel,ebox) atom eupix = create(GdkPixbuf,"thumbnails/euphoria-linux.gif") eupix = get(eupix,"scale simple",200,200,1) constant euimg = create(GtkImage,eupix) add(ebox,euimg) constant hadj = create(GtkAdjustment,0,0,1000,.01,.01,.01), vadj = create(GtkAdjustment,0,0,1000,.01,.01,.01) atom pos = 1 constant scrolwin = create(GtkScrolledWindow,hadj,vadj) set(scrolwin,"border width",10) pack(panel,scrolwin,TRUE,TRUE) constant scroller = create(GtkViewport) add(scrolwin,scroller) constant lbl1 = create(GtkLabel,{ {"markup",txt}, {"line wrap",TRUE}}) add(scroller,lbl1) constant timer = create(GTimeout,6,call_back(routine_id("Scroll"))) show_all(win) main() -------------------------- global function Scroll() --------------------------- pos += .1 if pos > 50 then set(vadj,"value",pos-50) end if return 1 end function