A workspace browser widget. The workspace browser displays values in the global environment. Displayed objects are shown in categories.
Return selected objects a string (when drop=TRUE
) with
recursive values separated by $
, or the objects themselves (when drop=FALSE
).
gvarbrowser(
handler = NULL,
action = "summary",
container = NULL,
...,
toolkit = guiToolkit()
).gvarbrowser(
toolkit,
handler = NULL,
action = "summary",
container = NULL,
...
)
# S3 method for GVarBrowser
svalue(obj, index = FALSE, drop = TRUE, ...)
A handler assigned to the default change
signal. Handlers are called when some event triggers a widget to
emit a signal. For each widget some default signal is assumed, and
handlers may be assigned to that through addHandlerChanged
or at construction time. Handlers are functions whose first
argument, h
in the documentation, is a list with atleast
two components obj
, referring to the object emitting the
signal and action
, which passes in user-specified data to
parameterize the function call.
Handlers may also be added via addHandlerXXX
methods for
the widgets, where XXX
indicates the signal, with a default
signal mapped to addHandlerChanged
(cf. addHandler
for a listing). These methods pass
back a handler ID that can be used with blockHandler
and
unblockHandler
to suppress temporarily the calling of the
handler.
User supplied data passed to the handler when it is called
A parent container. When a widget is created it can be incorporated into the widget heirarchy by passing in a parent container at construction time. (For some toolkits this is not optional, e.g. gWidgets2tcltk or gWidgets2WWW2.)
These values are passed to the add
method of the
parent container. Examples of values are expand
,
fill
, and anchor
, although they're not always
supported by a given widget. For more details see add.
Occasionally the variable arguments feature has been used to sneak
in hidden arguments to toolkit implementations. For example, when
using a widget as a menubar object one can specify a parent
argument to pass in parent information, similar to how the
argument is used with gaction and the dialogs.
Each widget constructor is passed in the toolkit it
will use. This is typically done using the default, which will
lookup the toolkit through guiToolkit
.
object of method call
NULL or logical. If TRUE
and widget supports it an index, instead of a value will be returned.
NULL or logical. If widget supports it, drop will work as it does in a data frame or perhaps someother means.
For defining the categories, the reference method set_filter_classes
takes a named list, the names defining the categories, the values
being the classes belonging to that category. Non categorized
values appear separately. The default is defined in
gWidgets2:::gvarbrowser_default_classes
.
The variable browser uses an instance of WSWatcherModel
to
monitor the global workspace. This instance may be useful for
other purposes. (For example, one may add an observer that is
called to listen for changes to the set of available data
frames.). The instance is available through the ws_model
property.
The svalue
method returns the selected variable names. If
drop=FALSE
is given, the objects are returned.
The widget should support dragging from without needing to specify
a drag_source
, though this may be overridden.
Use addHandlerChanged
to listen to activation of a variable
(double clicking). Use addHandlerSelectionChanged
to
monitor change of selection.