[rkward-cvs] SF.net SVN: rkward-code:[4539] trunk/rkward/packages/rkwarddev

m-eik at users.sf.net m-eik at users.sf.net
Mon Feb 18 15:41:32 UTC 2013


Revision: 4539
          http://sourceforge.net/p/rkward/code/4539
Author:   m-eik
Date:     2013-02-18 15:41:31 +0000 (Mon, 18 Feb 2013)
Log Message:
-----------
rkwarddev: added support for getter functions other than "getValue()" in automatically generated JavaScript.

Modified Paths:
--------------
    trunk/rkward/packages/rkwarddev/ChangeLog
    trunk/rkward/packages/rkwarddev/DESCRIPTION
    trunk/rkward/packages/rkwarddev/NAMESPACE
    trunk/rkward/packages/rkwarddev/R/id.R
    trunk/rkward/packages/rkwarddev/R/rk-internal.R
    trunk/rkward/packages/rkwarddev/R/rk.JS.scan.R
    trunk/rkward/packages/rkwarddev/R/rk.JS.var-class.R
    trunk/rkward/packages/rkwarddev/R/rk.JS.vars.R
    trunk/rkward/packages/rkwarddev/R/rk.paste.JS.R
    trunk/rkward/packages/rkwarddev/R/rkwarddev-package.R
    trunk/rkward/packages/rkwarddev/man/rk.JS.scan.Rd
    trunk/rkward/packages/rkwarddev/man/rk.JS.vars.Rd
    trunk/rkward/packages/rkwarddev/man/rk.paste.JS.Rd
    trunk/rkward/packages/rkwarddev/man/rkwarddev-package.Rd

Modified: trunk/rkward/packages/rkwarddev/ChangeLog
===================================================================
--- trunk/rkward/packages/rkwarddev/ChangeLog	2013-02-17 18:23:39 UTC (rev 4538)
+++ trunk/rkward/packages/rkwarddev/ChangeLog	2013-02-18 15:41:31 UTC (rev 4539)
@@ -1,6 +1,6 @@
 ChangeLog for package rkwarddev
 
-changes in version 0.06-2 (2013-02-15)
+changes in version 0.06-2 (2013-02-18)
 changed:
   - the structure of <about> nodes will change in RKWard 0.6.1, <dependencies> will become
     a direct child of <document> or <component>, which explains several changes in this release.
@@ -9,6 +9,11 @@
   - for consistency, from now on <component> is never an empty node
   - rk.XML.pluginmap() will now move <dependencies> from <about> to a top level child node
     of plugin maps, with a warning
+  - the object class rk.JS.var gained a new slot "getter" to set a default JS function
+    to query variable values. it defaults to "getValue" to ensure compatibility with earlier
+    releases. consequently, rk.JS.vars() and rk.paste.JS() have a new "getter" argument to set
+    or overwrite this value. another new argument, "guess.getter", can be used to turn on
+    automatic guessing which getter function might be most appropriate.
 added:
   - new function rk.XML.switch()
   - new function rk.XML.optiondisplay()

Modified: trunk/rkward/packages/rkwarddev/DESCRIPTION
===================================================================
--- trunk/rkward/packages/rkwarddev/DESCRIPTION	2013-02-17 18:23:39 UTC (rev 4538)
+++ trunk/rkward/packages/rkwarddev/DESCRIPTION	2013-02-18 15:41:31 UTC (rev 4539)
@@ -4,7 +4,7 @@
 Author: m.eik michalke <meik.michalke at hhu.de>
 Maintainer: m.eik michalke <meik.michalke at hhu.de>
 Depends:
-    R (>= 2.9.0),methods,XiMpLe (>= 0.03-17),rkward (>= 0.5.6)
+    R (>= 2.9.0),methods,XiMpLe (>= 0.03-18),rkward (>= 0.5.6)
 Enhances: rkward
 Description: Provides functions to create plugin skeletons and XML structures
     for RKWard.
@@ -15,7 +15,7 @@
 Authors at R: c(person(given="Meik", family="Michalke",
     email="meik.michalke at hhu.de", role=c("aut", "cre")))
 Version: 0.06-2
-Date: 2013-02-17
+Date: 2013-02-18
 Collate:
     'echo.R'
     'id.R'

Modified: trunk/rkward/packages/rkwarddev/NAMESPACE
===================================================================
--- trunk/rkward/packages/rkwarddev/NAMESPACE	2013-02-17 18:23:39 UTC (rev 4538)
+++ trunk/rkward/packages/rkwarddev/NAMESPACE	2013-02-18 15:41:31 UTC (rev 4539)
@@ -1,13 +1,40 @@
+exportClasses(rk.JS.arr)
+exportClasses(rk.JS.ite)
+exportClasses(rk.JS.opt)
+exportClasses(rk.JS.var)
+exportClasses(rk.plot.opts)
+exportClasses(rk.plug.comp)
 export(echo)
 export(id)
 export(ite)
+exportMethods(show)
 export(qp)
+export(rk.build.plugin)
+export(rk.comment)
 export(rk.JS.array)
 export(rk.JS.doc)
 export(rk.JS.options)
 export(rk.JS.saveobj)
 export(rk.JS.scan)
 export(rk.JS.vars)
+export(rk.paste.JS)
+export(rk.paste.JS.graph)
+export(rk.plotOptions)
+export(rk.plugin.component)
+export(rk.plugin.skeleton)
+export(rk.rkh.caption)
+export(rk.rkh.doc)
+export(rk.rkh.link)
+export(rk.rkh.related)
+export(rk.rkh.scan)
+export(rk.rkh.section)
+export(rk.rkh.setting)
+export(rk.rkh.settings)
+export(rk.rkh.summary)
+export(rk.rkh.technical)
+export(rk.rkh.title)
+export(rk.rkh.usage)
+export(rk.testsuite.doc)
 export(rk.XML.about)
 export(rk.XML.attribute)
 export(rk.XML.browser)
@@ -61,32 +88,5 @@
 export(rk.XML.varselector)
 export(rk.XML.varslot)
 export(rk.XML.wizard)
-export(rk.build.plugin)
-export(rk.comment)
-export(rk.paste.JS)
-export(rk.paste.JS.graph)
-export(rk.plotOptions)
-export(rk.plugin.component)
-export(rk.plugin.skeleton)
-export(rk.rkh.caption)
-export(rk.rkh.doc)
-export(rk.rkh.link)
-export(rk.rkh.related)
-export(rk.rkh.scan)
-export(rk.rkh.section)
-export(rk.rkh.setting)
-export(rk.rkh.settings)
-export(rk.rkh.summary)
-export(rk.rkh.technical)
-export(rk.rkh.title)
-export(rk.rkh.usage)
-export(rk.testsuite.doc)
 export(tf)
-exportClasses(rk.JS.arr)
-exportClasses(rk.JS.ite)
-exportClasses(rk.JS.opt)
-exportClasses(rk.JS.var)
-exportClasses(rk.plot.opts)
-exportClasses(rk.plug.comp)
-exportMethods(show)
 import(methods)

Modified: trunk/rkward/packages/rkwarddev/R/id.R
===================================================================
--- trunk/rkward/packages/rkwarddev/R/id.R	2013-02-17 18:23:39 UTC (rev 4538)
+++ trunk/rkward/packages/rkwarddev/R/id.R	2013-02-18 15:41:31 UTC (rev 4539)
@@ -33,8 +33,8 @@
 			# and discard the rest
 			this.part <- stripCont(this.part, get="printout")
 
-			if(inherits(this.part, "XiMpLe.node")){
-				node.id <- this.part at attributes$id
+			if(is.XiMpLe.node(this.part)){
+				node.id <- XMLAttrs(this.part)$id
 					if(isTRUE(js)){
 						node.id <- camelCode(node.id)
 					} else {}

Modified: trunk/rkward/packages/rkwarddev/R/rk-internal.R
===================================================================
--- trunk/rkward/packages/rkwarddev/R/rk-internal.R	2013-02-17 18:23:39 UTC (rev 4538)
+++ trunk/rkward/packages/rkwarddev/R/rk-internal.R	2013-02-18 15:41:31 UTC (rev 4539)
@@ -208,11 +208,29 @@
 } ## end function camelCode()
 
 
+## default getters for JavaScript variables
+# try to set useful default getter functions to query the values from XML nodes
+# will only be used if "guess.getter" is true -- and after it's properly implemented
+# into rk.JS.scan()
+JS.getters.default <- list(
+	"radio"="getString",
+	"varslot"="getString",
+	"browser"="getString",
+	"dropdown"="getString",
+	"checkbox"="getBool",
+	"saveobject"="getString",
+	"input"="getString",
+	"spinbox"="getString",
+	"optioncolumn"="getList",
+	"matrix"="getList"
+)
+
 ## function get.JS.vars()
 #   <tag id="my.id" ...>
 # in XML will become
 #   var my.id = getValue("my.id");
-get.JS.vars <- function(JS.var, XML.var=NULL, JS.prefix="", names.only=FALSE, modifiers=NULL, default=FALSE, join="", check.modifiers=TRUE){
+get.JS.vars <- function(JS.var, XML.var=NULL, JS.prefix="", names.only=FALSE, modifiers=NULL, default=FALSE, join="",
+	getter="getValue", guess.getter=FALSE, check.modifiers=TRUE){
 	# check for XiMpLe nodes
 	JS.var <- check.ID(JS.var)
 	if(!is.null(XML.var)){
@@ -240,6 +258,13 @@
 				} else {}
 			}
 		} else {}
+		# check for getter guessing
+		if(isTRUE(guess.getter) && is.XiMpLe.node(XML.var)){
+			tag.name <- XMLName(XML.var)
+			if(tag.name %in% names(JS.getters.default)){
+				getter <- JS.getters.default[[tag.name]]
+			} else {}
+		} else {}
 		XML.var <- check.ID(XML.var)
 	} else {
 		XML.var <- check.ID(JS.var)
@@ -269,7 +294,8 @@
 			prefix=JS.prefix,
 			modifiers=as.list(modifiers),
 			default=default,
-			join=join)
+			join=join,
+			getter=getter)
 	}
 
 	return(results)
@@ -835,7 +861,8 @@
 
 
 ## function paste.JS.var()
-paste.JS.var <- function(object, level=2, indent.by="\t", JS.prefix=NULL, modifiers=NULL, default=NULL, join=NULL, names.only=FALSE, check.modifiers=FALSE){
+paste.JS.var <- function(object, level=2, indent.by="\t", JS.prefix=NULL, modifiers=NULL, default=NULL, join=NULL,
+	getter=NULL, names.only=FALSE, check.modifiers=FALSE){
 	# paste several objects
 	results <- unlist(sapply(slot(object, "vars"), function(this.obj){
 			paste.JS.var(this.obj,
@@ -845,6 +872,7 @@
 					modifiers=modifiers,
 					default=default,
 					join=join,
+					getter=getter,
 					names.only=names.only)}))
 	if(!isTRUE(names.only) & !is.null(results)){
 		results <- paste(results, collapse="\n")
@@ -871,6 +899,9 @@
 	if(is.null(join)){
 		join        <- slot(object, "join")
 	} else {}
+	if(is.null(getter)){
+		getter      <- slot(object, "getter")
+	} else {}
 
 	if(!identical(join, "")){
 		join.code <- paste(".split(\"\\n\").join(\"", join, "\")", sep="")
@@ -884,7 +915,7 @@
 			if(isTRUE(names.only)){
 				results <- c(results, camelCode(c(JS.prefix, JS.var)))
 			} else {
-				results <- paste(main.indent, "var ", camelCode(c(JS.prefix, JS.var)), " = getValue(\"", XML.var, "\")", join.code, ";", sep="")
+				results <- paste(main.indent, "var ", camelCode(c(JS.prefix, JS.var)), " = ", getter, "(\"", XML.var, "\")", join.code, ";", sep="")
 			}
 		} else {}
 		if(length(modifiers) > 0){
@@ -897,7 +928,7 @@
 						return(camelCode(c(JS.prefix, JS.var, this.modif)))
 					} else {
 						return(paste(main.indent, "var ", camelCode(c(JS.prefix, JS.var, this.modif)),
-							" = getValue(\"", XML.var, ".", this.modif, "\")", join.code, ";", sep=""))
+							" = ", getter, "(\"", XML.var, ".", this.modif, "\")", join.code, ";", sep=""))
 					}
 				})
 			if(identical(results, "")){

Modified: trunk/rkward/packages/rkwarddev/R/rk.JS.scan.R
===================================================================
--- trunk/rkward/packages/rkwarddev/R/rk.JS.scan.R	2013-02-17 18:23:39 UTC (rev 4538)
+++ trunk/rkward/packages/rkwarddev/R/rk.JS.scan.R	2013-02-18 15:41:31 UTC (rev 4539)
@@ -6,12 +6,14 @@
 #' @param add.abbrev Logical, if \code{TRUE} the JavaScript variables will all have a prefix with an
 #'		three letter abbreviation of the XML tag type to improve the readability of the code. But it's
 #'		probably better to add this in the XML code in the first place.
+#' @param guess.getter Logical, if \code{TRUE} try to get a good default getter function for JavaScript
+#'		variable values.
 #' @param indent.by Character string used to indent each entry if \code{js=TRUE}.
 #' @return A character vector.
 #' @seealso \href{help:rkwardplugins}{Introduction to Writing Plugins for RKWard}
 #' @export
 
-rk.JS.scan <- function(pXML, js=TRUE, add.abbrev=FALSE, indent.by="\t"){
+rk.JS.scan <- function(pXML, js=TRUE, add.abbrev=FALSE, guess.getter=FALSE, indent.by="\t"){
 
 	JS.relevant.tags <- c("radio", "varslot", "browser", "dropdown",
 		"checkbox", "saveobject", "input", "spinbox")
@@ -29,7 +31,8 @@
 			JS.lines <- paste(unlist(sapply(1:nrow(JS.id), function(this.id){
 					return(rk.paste.JS(get.JS.vars(
 						JS.var=JS.id[this.id,"abbrev"],
-						XML.var=JS.id[this.id,"id"]),
+						XML.var=JS.id[this.id,"id"],
+						guess.getter=guess.getter),
 						level=2, indent.by=indent.by))
 				})), collapse="\n")
 		} else {
@@ -40,7 +43,7 @@
 		JS.lines <- NULL
 	}
 
-	# special tags: must be chackable and get "checked" property
+	# special tags: must be checkable and get "checked" property
 	JS.special.tags <- c("frame")
 	JS.special.id <- get.IDs(single.tags=single.tags, relevant.tags=JS.special.tags, add.abbrev=add.abbrev, only.checkable=TRUE)
 	if("id" %in% colnames(JS.special.id)){
@@ -49,7 +52,8 @@
 					return(rk.paste.JS(get.JS.vars(
 						JS.var=JS.special.id[this.id,"abbrev"],
 						XML.var=JS.special.id[this.id,"id"],
-						modifiers="checked"),
+						modifiers="checked",
+						guess.getter=guess.getter),
 						level=2, indent.by=indent.by))
 				})), collapse="\n"), sep="")
 		} else {

Modified: trunk/rkward/packages/rkwarddev/R/rk.JS.var-class.R
===================================================================
--- trunk/rkward/packages/rkwarddev/R/rk.JS.var-class.R	2013-02-17 18:23:39 UTC (rev 4538)
+++ trunk/rkward/packages/rkwarddev/R/rk.JS.var-class.R	2013-02-18 15:41:31 UTC (rev 4539)
@@ -11,7 +11,8 @@
 		modifiers="list",
 		default="logical",
 		join="character",
-		vars="list"
+		vars="list",
+		getter="character"
 	),
 	prototype(
 		JS.var=character(),
@@ -20,7 +21,8 @@
 		modifiers=list(),
 		default=FALSE,
 		join="",
-		vars=list()
+		vars=list(),
+		getter="getValue" # for compatibility with earlier releases
 	)
 )
 

Modified: trunk/rkward/packages/rkwarddev/R/rk.JS.vars.R
===================================================================
--- trunk/rkward/packages/rkwarddev/R/rk.JS.vars.R	2013-02-17 18:23:39 UTC (rev 4538)
+++ trunk/rkward/packages/rkwarddev/R/rk.JS.vars.R	2013-02-18 15:41:31 UTC (rev 4539)
@@ -13,6 +13,11 @@
 #'		joined by this string.
 #' @param check.modifiers Logical, if \code{TRUE} the given modifiers will be checked for validity. Should only be
 #'		turned off if you know what you're doing.
+#' @param getter A character string, naming the JavaScript function which should be used to get the values in the
+#'		actual plugin. Depending on the XML element, \code{"getString"}, \code{"getBool"} or \code{"getList"} can be
+#'		useful alternatives. For backwards compatibility, the default is set to \code{"getValue"}.
+#' @param guess.getter Logical, if \code{TRUE} try to get a good default getter function for JavaScript
+#'		variable values.
 #' @return An object of class \code{rk.JS.var}.
 #' @export
 #' @seealso \code{\link[rkwarddev:rk.JS.array]{rk.JS.array}},
@@ -27,7 +32,8 @@
 #' # define them by their ID in JavaScript
 #' cat(rk.paste.JS(rk.JS.vars(list(checkA, checkB, checkC))))
 
-rk.JS.vars <- function(..., var.prefix=NULL, modifiers=NULL, default=FALSE, join="", check.modifiers=TRUE){
+rk.JS.vars <- function(..., var.prefix=NULL, modifiers=NULL, default=FALSE, join="", check.modifiers=TRUE,
+	getter="getValue", guess.getter=FALSE){
 	variables <- list(...)
 
 	JS.vars <- new("rk.JS.var",
@@ -38,8 +44,11 @@
 						modifiers=modifiers,
 						default=default,
 						join=join,
-						check.modifiers=check.modifiers)
-				}))
+						check.modifiers=check.modifiers,
+						getter=getter,
+						guess.getter=guess.getter)
+				})
+			)
 
 	return(JS.vars)
 }

Modified: trunk/rkward/packages/rkwarddev/R/rk.paste.JS.R
===================================================================
--- trunk/rkward/packages/rkwarddev/R/rk.paste.JS.R	2013-02-17 18:23:39 UTC (rev 4538)
+++ trunk/rkward/packages/rkwarddev/R/rk.paste.JS.R	2013-02-18 15:41:31 UTC (rev 4539)
@@ -19,6 +19,9 @@
 #' @param join For \code{rk.JS.var} objects only: A character string, useful for GUI elements which accept multiple objects
 #'		(i.e., multi-varslots). If \code{join} is something other than \code{""}, these objects will be collapsed into one string
 #'		when pasted, joined by this string.
+#' @param getter For \code{rk.JS.var} objects only: A character string, naming the JavaScript function which should be used to get the
+#'		values in the actual plugin. Depending on the XML element, \code{"getString"}, \code{"getBool"} or \code{"getList"} can be
+#'		useful alternatives. For backwards compatibility, the default is set to \code{"getValue"}.
 #' @param empty.e For \code{rk.JS.ite} objects only: Logical, if \code{TRUE} will force to add empty \code{else \{\}} brackets when
 #'		there is no \code{else} statement defined, which is considered to enhance code readability by some.
 #' @return A character string.
@@ -35,7 +38,7 @@
 #' @export
 
 rk.paste.JS <- function(..., level=2, indent.by="\t", funct=NULL, array=NULL,
-	var.prefix=NULL, modifiers=NULL, default=NULL, join=NULL, empty.e=FALSE){
+	var.prefix=NULL, modifiers=NULL, default=NULL, join=NULL, getter=NULL, empty.e=FALSE){
 	stopifnot(level > 0)
 	all.objects <- list(...)
 
@@ -54,12 +57,12 @@
 			result <- paste.JS.options(this.object, level=level, indent.by=indent.by, array=array, funct=funct)
 		} else if(inherits(this.object, "rk.JS.var")){
 			result <- paste.JS.var(this.object, level=level, indent.by=indent.by, JS.prefix=var.prefix,
-				modifiers=modifiers, default=default, join=join)
-		} else if(inherits(this.object, "XiMpLe.node")){
-			if(identical(slot(this.object, "name"), "!--")){
+				modifiers=modifiers, default=default, join=join, getter=getter)
+		} else if(is.XiMpLe.node(this.object)){
+			if(identical(XMLName(this.object), "!--")){
 				result <- paste(indent(level, by=indent.by),
 					"// ",
-					gsub("\n", paste("\n", indent(level, by=indent.by), "//", sep=""), slot(slot(this.object, "children")[[1]], "value")), sep="")
+					gsub("\n", paste("\n", indent(level, by=indent.by), "//", sep=""), XMLValue(XMLChildren(this.object)[[1]])), sep="")
 			} else {
 				stop(simpleError("XiMpLe.node objects are only valid if they are comments!"))
 			}

Modified: trunk/rkward/packages/rkwarddev/R/rkwarddev-package.R
===================================================================
--- trunk/rkward/packages/rkwarddev/R/rkwarddev-package.R	2013-02-17 18:23:39 UTC (rev 4538)
+++ trunk/rkward/packages/rkwarddev/R/rkwarddev-package.R	2013-02-18 15:41:31 UTC (rev 4539)
@@ -4,8 +4,8 @@
 #' Package: \tab rkwarddev\cr
 #' Type: \tab Package\cr
 #' Version: \tab 0.06-2\cr
-#' Date: \tab 2013-02-17\cr
-#' Depends: \tab R (>= 2.9.0),methods,XiMpLe (>= 0.03-17),rkward (>= 0.5.6)\cr
+#' Date: \tab 2013-02-18\cr
+#' Depends: \tab R (>= 2.9.0),methods,XiMpLe (>= 0.03-18),rkward (>= 0.5.6)\cr
 #' Enhances: \tab rkward\cr
 #' Encoding: \tab UTF-8\cr
 #' License: \tab GPL (>= 3)\cr

Modified: trunk/rkward/packages/rkwarddev/man/rk.JS.scan.Rd
===================================================================
--- trunk/rkward/packages/rkwarddev/man/rk.JS.scan.Rd	2013-02-17 18:23:39 UTC (rev 4538)
+++ trunk/rkward/packages/rkwarddev/man/rk.JS.scan.Rd	2013-02-18 15:41:31 UTC (rev 4539)
@@ -3,7 +3,7 @@
 \title{Create JavaScript variables from plugin XML}
 \usage{
   rk.JS.scan(pXML, js = TRUE, add.abbrev = FALSE,
-    indent.by = "\t")
+    guess.getter = FALSE, indent.by = "\t")
 }
 \arguments{
   \item{pXML}{Either an object of class \code{XiMpLe.doc}
@@ -19,6 +19,10 @@
   readability of the code. But it's probably better to add
   this in the XML code in the first place.}
 
+  \item{guess.getter}{Logical, if \code{TRUE} try to get a
+  good default getter function for JavaScript variable
+  values.}
+
   \item{indent.by}{Character string used to indent each
   entry if \code{js=TRUE}.}
 }

Modified: trunk/rkward/packages/rkwarddev/man/rk.JS.vars.Rd
===================================================================
--- trunk/rkward/packages/rkwarddev/man/rk.JS.vars.Rd	2013-02-17 18:23:39 UTC (rev 4538)
+++ trunk/rkward/packages/rkwarddev/man/rk.JS.vars.Rd	2013-02-18 15:41:31 UTC (rev 4539)
@@ -3,7 +3,8 @@
 \title{Define variables in JavaScript code}
 \usage{
   rk.JS.vars(..., var.prefix = NULL, modifiers = NULL,
-    default = FALSE, join = "", check.modifiers = TRUE)
+    default = FALSE, join = "", check.modifiers = TRUE,
+    getter = "getValue", guess.getter = FALSE)
 }
 \arguments{
   \item{...}{Either one or more character strings (the
@@ -30,6 +31,17 @@
   \item{check.modifiers}{Logical, if \code{TRUE} the given
   modifiers will be checked for validity. Should only be
   turned off if you know what you're doing.}
+
+  \item{getter}{A character string, naming the JavaScript
+  function which should be used to get the values in the
+  actual plugin. Depending on the XML element,
+  \code{"getString"}, \code{"getBool"} or \code{"getList"}
+  can be useful alternatives. For backwards compatibility,
+  the default is set to \code{"getValue"}.}
+
+  \item{guess.getter}{Logical, if \code{TRUE} try to get a
+  good default getter function for JavaScript variable
+  values.}
 }
 \value{
   An object of class \code{rk.JS.var}.

Modified: trunk/rkward/packages/rkwarddev/man/rk.paste.JS.Rd
===================================================================
--- trunk/rkward/packages/rkwarddev/man/rk.paste.JS.Rd	2013-02-17 18:23:39 UTC (rev 4538)
+++ trunk/rkward/packages/rkwarddev/man/rk.paste.JS.Rd	2013-02-18 15:41:31 UTC (rev 4539)
@@ -5,7 +5,7 @@
   rk.paste.JS(..., level = 2, indent.by = "\t",
     funct = NULL, array = NULL, var.prefix = NULL,
     modifiers = NULL, default = NULL, join = NULL,
-    empty.e = FALSE)
+    getter = NULL, empty.e = FALSE)
 }
 \arguments{
   \item{...}{Objects of class \code{rk.JS.ite},
@@ -49,6 +49,14 @@
   collapsed into one string when pasted, joined by this
   string.}
 
+  \item{getter}{For \code{rk.JS.var} objects only: A
+  character string, naming the JavaScript function which
+  should be used to get the values in the actual plugin.
+  Depending on the XML element, \code{"getString"},
+  \code{"getBool"} or \code{"getList"} can be useful
+  alternatives. For backwards compatibility, the default is
+  set to \code{"getValue"}.}
+
   \item{empty.e}{For \code{rk.JS.ite} objects only:
   Logical, if \code{TRUE} will force to add empty
   \code{else \{\}} brackets when there is no \code{else}

Modified: trunk/rkward/packages/rkwarddev/man/rkwarddev-package.Rd
===================================================================
--- trunk/rkward/packages/rkwarddev/man/rkwarddev-package.Rd	2013-02-17 18:23:39 UTC (rev 4538)
+++ trunk/rkward/packages/rkwarddev/man/rkwarddev-package.Rd	2013-02-18 15:41:31 UTC (rev 4539)
@@ -9,8 +9,8 @@
 \details{
   \tabular{ll}{ Package: \tab rkwarddev\cr Type: \tab
   Package\cr Version: \tab 0.06-2\cr Date: \tab
-  2013-02-17\cr Depends: \tab R (>= 2.9.0),methods,XiMpLe
-  (>= 0.03-17),rkward (>= 0.5.6)\cr Enhances: \tab
+  2013-02-18\cr Depends: \tab R (>= 2.9.0),methods,XiMpLe
+  (>= 0.03-18),rkward (>= 0.5.6)\cr Enhances: \tab
   rkward\cr Encoding: \tab UTF-8\cr License: \tab GPL (>=
   3)\cr LazyLoad: \tab yes\cr URL: \tab
   http://rkward.sourceforge.net\cr }





More information about the rkward-tracker mailing list