From kde-commits Sun Nov 30 22:08:15 2014 From: m.eik michalke Date: Sun, 30 Nov 2014 22:08:15 +0000 To: kde-commits Subject: [rkward] packages/rkwarddev: fixing some issues with child nodes of and Message-Id: X-MARC-Message: https://marc.info/?l=kde-commits&m=141738531312109 Git commit c26181ddf3ed33c9212004442bb12b78f49fced0 by m.eik michalke. Committed on 30/11/2014 at 22:07. Pushed by meikm into branch 'master'. fixing some issues with child nodes of and M +3 -1 packages/rkwarddev/ChangeLog M +1 -1 packages/rkwarddev/DESCRIPTION M +1 -0 packages/rkwarddev/R/rk-internal.R M +5 -9 packages/rkwarddev/R/rk.XML.snippets.R M +17 -12 packages/rkwarddev/R/rk.XML.tabbook.R M +1 -1 packages/rkwarddev/R/rkwarddev-package.R M +3 -1 packages/rkwarddev/inst/NEWS.Rd M +- -- packages/rkwarddev/inst/doc/rkwarddev_vignette.pdf M +4 -2 packages/rkwarddev/man/rk.XML.snippets.Rd M +4 -0 packages/rkwarddev/man/rk.XML.tabbook.Rd M +1 -1 packages/rkwarddev/man/rkwarddev-package.Rd http://commits.kde.org/rkward/c26181ddf3ed33c9212004442bb12b78f49fced0 diff --git a/packages/rkwarddev/ChangeLog b/packages/rkwarddev/ChangeLog index be5acdf..1f8e19b 100644 --- a/packages/rkwarddev/ChangeLog +++ b/packages/rkwarddev/ChangeLog @@ -1,6 +1,6 @@ ChangeLog for package rkwarddev = -changes in version 0.06-6 (2014-11-28) +changes in version 0.06-6 (2014-11-30) fixed: - rk.XML.optionset() does now allow to re-use objects defined in the same function call (i.e., refer to optioncolumns in the logic section) @@ -9,6 +9,8 @@ fixed: - rk.build.plugin() was still only using the "--no-vignettes" option fro= m R < 3 - rk.XML.pluginmap() malformed label argument names if they referred to = standrad maneu entries - rk.plugin.skeleton() still allowed invalid IDs, fixed the regexp + - rk.XML.snippets() now also accepts as child node + - rk.XML.tabbook() returns nodes as-is, not nested in added: - all "help" values can now be a list of character strings or XiMpLe nod= es, to have more control over the markup diff --git a/packages/rkwarddev/DESCRIPTION b/packages/rkwarddev/DESCRIPTION index db80f3f..0923ab4 100644 --- a/packages/rkwarddev/DESCRIPTION +++ b/packages/rkwarddev/DESCRIPTION @@ -15,7 +15,7 @@ URL: http://rkward.sourceforge.net Authors@R: c(person(given=3D"Meik", family=3D"Michalke", email=3D"meik.michalke@hhu.de", role=3Dc("aut", "cre"))) Version: 0.06-6 -Date: 2014-11-28 +Date: 2014-11-30 Collate: '00_class_01_rk.JS.arr.R' '00_class_02_rk.JS.var.R' diff --git a/packages/rkwarddev/R/rk-internal.R b/packages/rkwarddev/R/rk-i= nternal.R index fd1c5c7..5afbcff 100644 --- a/packages/rkwarddev/R/rk-internal.R +++ b/packages/rkwarddev/R/rk-internal.R @@ -759,6 +759,7 @@ all.valid.children <- list( radio=3Dc("option", "!--"), select=3Dc("option", "!--"), settings=3Dc("setting", "caption", "!--"), + snippets=3Dc("include", "snippet", "!--"), valueselector=3Dc("option", "!--"), wizard=3Dc("browser", "checkbox", "column", "copy", "dropdown", "embed", "formula", "frame", "include", "input", "insert",= "matrix", diff --git a/packages/rkwarddev/R/rk.XML.snippets.R b/packages/rkwarddev/R/= rk.XML.snippets.R index 712e40a..d275c30 100644 --- a/packages/rkwarddev/R/rk.XML.snippets.R +++ b/packages/rkwarddev/R/rk.XML.snippets.R @@ -18,14 +18,16 @@ = #' Create XML "snippets" node for RKWard plugins #' -#' This function will create a snippets node for the document section, wit= h optional child nodes "snippet". +#' This function will create a snippets node for the document section, wit= h optional child nodes +#' \code{} and \code{}. #' -#' @param ... Objects of class \code{XiMpLe.node}. They must all have the = name "snippet". +#' @param ... Objects of class \code{XiMpLe.node}. Accepts only \code{} and \code{}. #' @return An object of class \code{XiMpLe.node}. #' @export #' @seealso #' \code{\link[rkwarddev:rk.XML.plugin]{rk.XML.plugin}} #' \code{\link[rkwarddev:rk.XML.snippet]{rk.XML.snippet}}, +#' \code{\link[rkwarddev:rk.XML.include]{rk.XML.include}}, #' and the \href{help:rkwardplugins}{Introduction to Writing Plugins fo= r RKWard} #' @examples #' # define a formula section with varselector and varslots @@ -39,13 +41,7 @@ rk.XML.snippets <- function(...){ nodes <- list(...) = # check the node names and allow only valid ones - sapply(child.list(nodes), function(this.node){ - stopifnot(is.XiMpLe.node(this.node)) - node.name <- slot(this.node, "name") - if(!node.name %in% c("snippet", "!--")){ - stop(simpleError(paste0("Invalid XML nodes for snippets section: "= , node.name))) - } else {} - }) + valid.child("snippets", children=3Dnodes) = node <- XMLNode("snippets", .children=3Dchild.list(nodes, empty=3DFALSE)) = diff --git a/packages/rkwarddev/R/rk.XML.tabbook.R b/packages/rkwarddev/R/r= k.XML.tabbook.R index 34f33dc..22ae8f5 100644 --- a/packages/rkwarddev/R/rk.XML.tabbook.R +++ b/packages/rkwarddev/R/rk.XML.tabbook.R @@ -28,6 +28,7 @@ #' to give some \code{i18n_context} #' information for this node. If set to \code{FALSE}, the attribute \co= de{label} will be renamed into = #' \code{noi18n_label}. +#' @note If a node in \code{tabs} is \code{}, it is returned as-is= , without being nested in \code{}. #' @return An object of class \code{XiMpLe.node}. #' @export #' @seealso @@ -57,22 +58,26 @@ rk.XML.tabbook <- function(label=3DNULL, tabs=3Dlist(),= id.name=3D"auto", i18n=3DNULL){ tab.ids <- auto.ids(tab.labels, prefix=3DID.prefix("tab", length=3D3)) } else {} tabs <- sapply(1:num.tabs, function(this.num){ - this.tab <- tab.labels[[this.num]] - attr.list <- list(label=3Dthis.tab) - if(identical(id.name, "auto")){ - attr.list[["id"]] <- tab.ids[[this.num]] - } else if(!is.null(id.name)){ - attr.list[["id"]] <- id.name[[this.num + 1]] - } else {} - if(!is.null(tabs[[this.num]])){ - child <- tabs[[this.num]] + if(is.XiMpLe.node(tabs[[this.num]]) && XMLName(tabs[[this.num]]) %in= % c("insert", "tab")){ + return(tabs[[this.num]]) } else { - child <- list() - } - return(XMLNode("tab", + this.tab <- tab.labels[[this.num]] + attr.list <- list(label=3Dthis.tab) + if(identical(id.name, "auto")){ + attr.list[["id"]] <- tab.ids[[this.num]] + } else if(!is.null(id.name)){ + attr.list[["id"]] <- id.name[[this.num + 1]] + } else {} + if(!is.null(tabs[[this.num]])){ + child <- tabs[[this.num]] + } else { + child <- list() + } + return(XMLNode("tab", attrs=3Dattr.list, .children=3Dchild.list(child, empty=3DFALSE)) ) + } }) = = diff --git a/packages/rkwarddev/R/rkwarddev-package.R b/packages/rkwarddev/= R/rkwarddev-package.R index 471fdca..48a6d7b 100644 --- a/packages/rkwarddev/R/rkwarddev-package.R +++ b/packages/rkwarddev/R/rkwarddev-package.R @@ -4,7 +4,7 @@ #' Package: \tab rkwarddev\cr #' Type: \tab Package\cr #' Version: \tab 0.06-6\cr -#' Date: \tab 2014-11-28\cr +#' Date: \tab 2014-11-30\cr #' Depends: \tab R (>=3D 2.9.0),methods,XiMpLe (>=3D 0.03-21),rkward (>=3D= 0.5.7)\cr #' Enhances: \tab rkward\cr #' Encoding: \tab UTF-8\cr diff --git a/packages/rkwarddev/inst/NEWS.Rd b/packages/rkwarddev/inst/NEWS= .Rd index abe87cf..ac6502b 100644 --- a/packages/rkwarddev/inst/NEWS.Rd +++ b/packages/rkwarddev/inst/NEWS.Rd @@ -1,7 +1,7 @@ \name{NEWS} \title{News for Package 'rkwarddev'} \encoding{UTF-8} -\section{Changes in rkwarddev version 0.06-6 (2014-11-28)}{ +\section{Changes in rkwarddev version 0.06-6 (2014-11-30)}{ \subsection{fixed}{ \itemize{ \item \code{rk.XML.optionset()} does now allow to re-use objects def= ined in the same @@ -11,6 +11,8 @@ \item \code{rk.build.plugin()} was still only using the "--no-vignet= tes" option from R < 3 \item \code{rk.XML.pluginmap()} malformed label argument names if th= ey referred to standrad maneu entries \item \code{rk.plugin.skeleton()} still allowed invalid IDs, fixed t= he regexp + \item \code{rk.XML.snippets()} now also accepts as child n= ode + \item \code{rk.XML.tabbook()} returns nodes as-is, not nest= ed in } } \subsection{added}{ diff --git a/packages/rkwarddev/inst/doc/rkwarddev_vignette.pdf b/packages/= rkwarddev/inst/doc/rkwarddev_vignette.pdf index 3adc32f..e1dcc32 100644 Binary files a/packages/rkwarddev/inst/doc/rkwarddev_vignette.pdf and b/pac= kages/rkwarddev/inst/doc/rkwarddev_vignette.pdf differ diff --git a/packages/rkwarddev/man/rk.XML.snippets.Rd b/packages/rkwarddev= /man/rk.XML.snippets.Rd index 1b86a07..5d8ad23 100644 --- a/packages/rkwarddev/man/rk.XML.snippets.Rd +++ b/packages/rkwarddev/man/rk.XML.snippets.Rd @@ -6,14 +6,15 @@ rk.XML.snippets(...) } \arguments{ -\item{...}{Objects of class \code{XiMpLe.node}. They must all have the nam= e "snippet".} +\item{...}{Objects of class \code{XiMpLe.node}. Accepts only \code{} and \code{}.} } \value{ An object of class \code{XiMpLe.node}. } \description{ This function will create a snippets node for the document section, - with optional child nodes "snippet". + with optional child nodes +\code{} and \code{}. } \examples{ # define a formula section with varselector and varslots @@ -26,6 +27,7 @@ cat(pasteXML(test.snippets)) \seealso{ \code{\link[rkwarddev:rk.XML.plugin]{rk.XML.plugin}} \code{\link[rkwarddev:rk.XML.snippet]{rk.XML.snippet}}, + \code{\link[rkwarddev:rk.XML.include]{rk.XML.include}}, and the \href{help:rkwardplugins}{Introduction to Writing Plugins for R= KWard} } = diff --git a/packages/rkwarddev/man/rk.XML.tabbook.Rd b/packages/rkwarddev/= man/rk.XML.tabbook.Rd index 759d2bf..a0c75b4 100644 --- a/packages/rkwarddev/man/rk.XML.tabbook.Rd +++ b/packages/rkwarddev/man/rk.XML.tabbook.Rd @@ -28,6 +28,10 @@ An object of class \code{XiMpLe.node}. \description{ Create XML node "tabbook" for RKWard plugins } +\note{ +If a node in \code{tabs} is \code{}, it is returned as-is, + without being nested in \code{}. +} \examples{ test.checkboxes <- rk.XML.row(rk.XML.col( rk.XML.cbox(label=3D"foo", val=3D"foo1", chk=3DTRUE), diff --git a/packages/rkwarddev/man/rkwarddev-package.Rd b/packages/rkwardd= ev/man/rkwarddev-package.Rd index f45c4fa..edc862d 100644 --- a/packages/rkwarddev/man/rkwarddev-package.Rd +++ b/packages/rkwarddev/man/rkwarddev-package.Rd @@ -11,7 +11,7 @@ A collection of tools for RKWard plugin development. Package: \tab rkwarddev\cr Type: \tab Package\cr Version: \tab 0.06-6\cr -Date: \tab 2014-11-28\cr +Date: \tab 2014-11-30\cr Depends: \tab R (>=3D 2.9.0),methods,XiMpLe (>=3D 0.03-21),rkward (>=3D 0.= 5.7)\cr Enhances: \tab rkward\cr Encoding: \tab UTF-8\cr