Skip to content
Prev 164604 / 398506 Next

How to mimic select.list using RGtk2/gWidgetsRGtk2?

I want to write a function mimic the function of select.list(), here
is my preliminary version.

select <- function(x,multiple=TRUE,...){
ans<-new.env()
g <- gwindow(title=title,wid=200,heigh=500)
x1<-ggroup(FALSE,con=g)
x2<-gtable(x,multiple=multiple,con=x1,expand=TRUE)
gbutton("OK",con=x1,handler=function(h,...){
value <- svalue(x2)
if (length(value)==0) value=""
assign("selected",value,env=h$action$env)
dispose(x1)
},action=list(env=ans))
ans
}

However, it doesn't behave as what I want.  What I want is that: for
{select(c("a","b")); foo()}, foo() only runs after I have clicked the
OK button of select(). Any hints?

Thanks.