R/speciesTK.R

Defines functions speciesTK

speciesTK <-
function(x,des=2,dataCol=3 ){
tt2 <- tktoplevel()
tt <- tkframe(tt2)

scr <- tkscrollbar(tt, repeatinterval=5,
				   command=function(...)tkyview(ttbox,...))

ttbox <- tkframe(tt)
listtboxK 			<- list()
buttboxonTK		<- list()
temp <- as.matrix(x)[, dataCol]
.GlobalEnv$mqqcSpeciesSet <- temp
hui <- function(x){
	testI <- x
	tk2button(ttbox,text = "Browse",width = 6,command= function(){
	temp <- tclvalue(tkgetOpenFile()	)
  if(temp !=""){
    tkconfigure(listtboxK[[testI]],text = temp)
    .GlobalEnv$mqqcSpeciesSet[testI] <- temp
  }

	}

	)
}

x <<- x
for(i in 1:dim(x)[1]){
	listtboxK[[i]] <- tklabel(ttbox,text = as.character(x[i, dataCol]))
	tkgrid(tklabel(ttbox,text = as.character(x[i,des])),listtboxK[[i]],hui(i))
}


FunChange <- function(Species){
		AllChange <- tk_choose.dir()
		Files <- as.character(x[, dataCol])
		Files <- basename(Files)
		Files <- paste(AllChange,basename(Files),sep = "/")

	apply(cbind(1:length(Files), Files),1,function(y){
					tkconfigure(listtboxK[[as.numeric(y[1])]],text =  y[2])
					.GlobalEnv$mqqcSpeciesSet[as.numeric(y[1])] <- y[2]
	})	

}
CDes <- tk2button(tt2,text = "ChangeAll",command = FunChange)
BDes <- tk2button(tt2,text = "Done",command = function(){tkdestroy(tt2)})
tkgrid(CDes,BDes)
tkgrid(ttbox,scr)
tkgrid(tt,columnspan = 5)

tkgrid.configure(scr,sticky="ns")
tkwait.window(tt2)
}

Try the mqqc package in your browser

Any scripts or data that you put into this service are public.

mqqc documentation built on July 30, 2020, 3 p.m.