\HeaderA{browseEnv}{Browse Objects in Environment}{browseEnv}
\aliasA{wsbrowser}{browseEnv}{wsbrowser}
\keyword{interface}{browseEnv}
\begin{Description}\relax
The \code{browseEnv} function opens a browser with list of objects
currently in \code{sys.frame()} environment.
\end{Description}
\begin{Usage}
\begin{verbatim}
browseEnv(envir = .GlobalEnv, pattern,
          excludepatt = "^last\\.warning",
          html = .Platform$OS.type != "mac",
          expanded = TRUE, properties = NULL,
          main = NULL, debugMe = FALSE)
\end{verbatim}
\end{Usage}
\begin{Arguments}
\begin{ldescription}
\item[\code{envir}] an \code{\LinkA{environment}{environment}} the objects of which are to
be browsed.
\item[\code{pattern}] a \LinkA{regular expression}{regular expression} for object subselection
is passed to the internal \code{\LinkA{ls}{ls}()} call.
\item[\code{excludepatt}] a regular expression for \emph{dropping} objects
with matching names.
\item[\code{html}] is used on non Macintosh machines to display the workspace
on a HTML page in your favorite browser.
\item[\code{expanded}] whether to show one level of recursion.  It can be useful
to switch it to \code{FALSE} if your workspace is large.  This
option is ignored if \code{html} is set to \code{FALSE}.
\item[\code{properties}] a named list of global properties (of the objects chosen)
to be showed in the browser;  when \code{NULL} (as per default),
user, date, and machine information is used.
\item[\code{main}] a title string to be used in the browser; when \code{NULL}
(as per default) a title is constructed.
\item[\code{debugMe}] logical switch; if true, some diagnostic output is produced.
\end{ldescription}
\end{Arguments}
\begin{Details}\relax
Very experimental code.  Only allows one level of recursion into
object structures. The HTML version is not dynamic.

It can be generalized.  See sources
(\file{..../library/base/R/databrowser.R}) for details.

\code{wsbrowser()} is currently just an internally used function;
its argument list will certainly change.

Most probably, this should rather work through using the \file{tkWidget}
package (from \url{www.Bioconductor.org}).
\end{Details}
\begin{SeeAlso}\relax
\code{\LinkA{str}{str}}, \code{\LinkA{ls}{ls}}.
\end{SeeAlso}
\begin{Examples}
\begin{ExampleCode}
if(interactive()) {
   ## create some interesting objects :
   ofa <- ordered(4:1)
   ex1 <- expression(1+ 0:9)
   ex3 <- expression(u,v, 1+ 0:9)
   example(factor, echo = FALSE)
   example(table, echo = FALSE)
   example(ftable, echo = FALSE)
   example(lm, echo = FALSE)
   example(str, echo = FALSE)

   ## and browse them:
   browseEnv()

   ## a (simple) function's environment:
   af12 <- approxfun(1:2, 1:2, method = "const")
   browseEnv(envir = environment(af12))
 }
\end{ExampleCode}
\end{Examples}

