Git Product home page Git Product logo

gwidgetswww2's People

Contributors

jranke avatar jverzani avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

Forkers

kecoli tokareff

gwidgetswww2's Issues

load_app() fails on R 3.2.0

saying:

Error in cur_port > 0 : 
  comparison (6) is possible only for atomic and list types

I could track the problem to this code fragment

env <- environment(tools::startDynamicHelp)
cur_port <- get("httpdPort", env)

in

https://github.com/jverzani/gWidgetsWWW2/blob/master/R/load.R#L32-33

This returns in R 3.1.2

> cur_port
[1] 0

and in R 3.2.0

> cur_port
function (new) 
{
    if (!missing(new)) 
        port <<- new
    else port
}
<bytecode: 0x...>
<environment: 0x...>

gWidgetsWWW2 is very large

It would be great to have a stripped down version of ExtJS in the package. Maybe the themes in

inst/base/javascript/ext-4-2.1/resources
inst/base/javascript/ext-4-2.1/resources/themes/images

and the different builds in

inst/base/javascript/ext-4-2.1/builds

could be reduced?

R CMD check gives Warnings and Notes

Reincluding ext.js gives a NOTE due to path lengths exceeding 100 bytes... As it is a NOTE this may not prevent publication on CRAN.

The WARNINGS are about code documentation mismatches and usage sections, I wonder if they are produced during the Roxygen runs?

Here is the check log (took out most of the path length warnings)

  • using log directory ‘/home/ranke/git/gWidgetsWWW2.Rcheck’
  • using R version 3.0.2 (2013-09-25)
  • using platform: x86_64-pc-linux-gnu (64-bit)
  • using session charset: UTF-8
  • checking for file ‘gWidgetsWWW2/DESCRIPTION’ ... OK
  • this is package ‘gWidgetsWWW2’ version ‘0.4-0’
  • checking package namespace information ... OK
  • checking package dependencies ... OK
  • checking if this is a source package ... OK
  • checking if there is a namespace ... OK
  • checking for executable files ... OK
  • checking for hidden files and directories ... NOTE
    Found the following hidden files and directories:
    inst/base/javascript/ext-4-2.1/packages/ext-locale/.sencha
    inst/base/javascript/ext-4-2.1/packages/ext-theme-access/.sencha
    inst/base/javascript/ext-4-2.1/packages/ext-theme-base/.sencha
    inst/base/javascript/ext-4-2.1/packages/ext-theme-classic-sandbox/.sencha
    inst/base/javascript/ext-4-2.1/packages/ext-theme-classic/.sencha
    inst/base/javascript/ext-4-2.1/packages/ext-theme-gray/.sencha
    inst/base/javascript/ext-4-2.1/packages/ext-theme-neptune/.sencha
    inst/base/javascript/ext-4-2.1/packages/ext-theme-neutral/.sencha
    These were most likely included in error. See section ‘Package
    structure’ in the ‘Writing R Extensions’ manual.
  • checking for portable file names ... NOTE
    Found the following non-portable file paths:
    gWidgetsWWW2/inst/base/javascript/ext-4-2.1/packages/ext-theme-access/.sencha/package/build.properties
    gWidgetsWWW2/inst/base/javascript/ext-4-2.1/packages/ext-theme-access/.sencha/package/testing.properties
    gWidgetsWWW2/inst/base/javascript/ext-4-2.1/packages/ext-theme-access/build/ext-theme-access-all-debug.scss
    gWidgetsWWW2/inst/base/javascript/ext-4-2.1/packages/ext-theme-access/build/ext-theme-access-all-rtl-debug.scss

...
removed about 5000 lines
...

gWidgetsWWW2/inst/base/javascript/ext-4-2.1/packages/ext-theme-neptune/build/resources/images/loadmask
gWidgetsWWW2/inst/base/javascript/ext-4-2.1/packages/ext-theme-neptune/build/resources/images/panel-header
gWidgetsWWW2/inst/base/javascript/ext-4-2.1/packages/ext-theme-neptune/build/resources/images/tab-bar
gWidgetsWWW2/inst/base/javascript/ext-4-2.1/packages/ext-theme-neptune/build/resources/images/toolbar
gWidgetsWWW2/inst/base/javascript/ext-4-2.1/packages/ext-theme-neptune/build/resources/images/util/splitter
gWidgetsWWW2/inst/base/javascript/ext-4-2.1/packages/ext-theme-neptune/build/resources/images/window-header
gWidgetsWWW2/inst/base/javascript/ext-4-2.1/packages/ext-theme-neptune/resources/images/util/splitter
gWidgetsWWW2/inst/base/javascript/ext-4-2.1/resources/ext-theme-access/images/grid-row-editor-buttons
gWidgetsWWW2/inst/base/javascript/ext-4-2.1/resources/ext-theme-classic-sandbox/images/grid-row-editor-buttons
gWidgetsWWW2/inst/base/javascript/ext-4-2.1/resources/ext-theme-classic/images/grid-row-editor-buttons
gWidgetsWWW2/inst/base/javascript/ext-4-2.1/resources/ext-theme-neptune/images/grid-row-editor-buttons

Tarballs are only required to store paths of up to 100 bytes and cannot
store those of more than 256 bytes, with restrictions including to 100
bytes for the final component.
See section ‘Package structure’ in the ‘Writing R Extensions’ manual.

  • checking for sufficient/correct file permissions ... OK
  • checking whether package ‘gWidgetsWWW2’ can be installed ... OK
  • checking installed package size ... NOTE
    installed size is 94.6Mb
    sub-directories of 1Mb or more:
    R 1.2Mb
    base 92.5Mb
  • checking package directory ... OK
  • checking DESCRIPTION meta-information ... OK
  • checking top-level files ... OK
  • checking for left-over files ... OK
  • checking index information ... OK
  • checking package subdirectories ... OK
  • checking R files for non-ASCII characters ... OK
  • checking R files for syntax errors ... OK
  • checking whether the package can be loaded ... OK
  • checking whether the package can be loaded with stated dependencies ... OK
  • checking whether the package can be unloaded cleanly ... OK
  • checking whether the namespace can be loaded with stated dependencies ... OK
  • checking whether the namespace can be unloaded cleanly ... OK
  • checking loading without being on the library search path ... OK
  • checking dependencies in R code ... NOTE
    Packages in Depends field not imported from:
    ‘RJSONIO’ ‘digest’ ‘memoise’ ‘whisker’
    These packages needs to imported from for the case when
    this namespace is loaded but not attached.
    ‘:::’ call which should be ‘::’: ‘Rook:::Utils’
    See the note in ?::: about the use of this operator.
    See the information on DESCRIPTION files in the chapter ‘Creating R
    packages’ of the ‘Writing R Extensions’ manual.
  • checking S3 generic/method consistency ... OK
  • checking replacement functions ... OK
  • checking foreign function calls ... OK
  • checking R code for possible problems ... OK
  • checking Rd files ... OK
  • checking Rd metadata ... OK
  • checking Rd cross-references ... OK
  • checking for missing documentation entries ... OK
  • checking for code/documentation mismatches ... WARNING
    Codoc mismatches from documentation object '[<-.GComponent':
    [<-.GComponent
    Code: function(x, i, j, ..., value)
    Docs: function(x, i, j, ..., value, value)

Codoc mismatches from documentation object 'editable<-':
editable<-
Code: function(x, ..., value)
Docs: function(x, ..., value, value)
editable<-.GComponent
Code: function(x, ..., value)
Docs: function(x, ..., value, value)

Codoc mismatches from documentation object 'enabled<-':
enabled<-
Code: function(x, value)
Docs: function(x, value, value)
enabled<-.GComponent
Code: function(x, value)
Docs: function(x, value, value)

Codoc mismatches from documentation object 'focus<-':
focus<-
Code: function(x, value)
Docs: function(x, value, value)
focus<-.default
Code: function(x, value)
Docs: function(x, value, value)

Codoc mismatches from documentation object 'font<-':
font<-
Code: function(x, value)
Docs: function(x, value, value)
font<-.GComponent
Code: function(x, value)
Docs: function(x, value, value)

Codoc mismatches from documentation object 'names<-.GComponent':
names<-.GComponent
Code: function(x, value)
Docs: function(x, value, value)

Codoc mismatches from documentation object 'size<-':
size<-
Code: function(x, ..., value)
Docs: function(x, ..., value, value)
size<-.GComponent
Code: function(x, ..., value)
Docs: function(x, ..., value, value)

Codoc mismatches from documentation object 'svalue<-':
svalue.GComponent
Code: function(x, index = NULL, drop = NULL, ...)
Docs: function(x, index = NULL, ..., value)
Argument names in code not in docs:
drop
Argument names in docs not in code:
value
Mismatches in argument names:
Position: 3 Code: drop Docs: ...
Position: 4 Code: ... Docs: value
svalue<-
Code: function(x, index = NULL, ..., value)
Docs: function(x, index = NULL, ..., value, value)

Codoc mismatches from documentation object 'tag<-':
tag<-
Code: function(x, key, value)
Docs: function(x, key, value, value)
tag<-.GComponent
Code: function(x, key, value)
Docs: function(x, key, value, value)

Codoc mismatches from documentation object 'tooltip<-':
tooltip<-
Code: function(x, value)
Docs: function(x, value, value)
tooltip<-.default
Code: function(x, value)
Docs: function(x, value, value)

Codoc mismatches from documentation object 'visible<-':
visible<-
Code: function(x, value)
Docs: function(x, value, value)
visible<-.GComponent
Code: function(x, value)
Docs: function(x, value, value)

  • checking Rd \usage sections ... WARNING
    Undocumented arguments in documentation object 'Array-class'
    ‘...’
    Objects in \usage without \alias in documentation object 'Array-class':
    ‘Array’

Undocumented arguments in documentation object 'Authenticator-class'
‘...’
Objects in \usage without \alias in documentation object 'Authenticator-class':
‘Authenticator’

Undocumented arguments in documentation object 'ExtArgs-class'
‘...’
Objects in \usage without \alias in documentation object 'ExtArgs-class':
‘ExtArgs’

Undocumented arguments in documentation object 'GContainer'
‘...’

Undocumented arguments in documentation object 'GDialog'
‘...’

Undocumented arguments in documentation object 'GGoogleMapsObject'
‘...’

Undocumented arguments in documentation object 'GGoogleMapsPolygon'
‘...’

Undocumented arguments in documentation object 'GWidgetArrayProxy'
‘...’

Undocumented arguments in documentation object 'GWidgetArrayStore'
‘...’

Undocumented arguments in documentation object 'GWidgetHTMLProxy'
‘...’

Undocumented arguments in documentation object 'GWidgetProxy'
‘...’

Undocumented arguments in documentation object 'GWidgetStore'
‘...’

Undocumented arguments in documentation object 'GWidgetText'
‘...’

Undocumented arguments in documentation object 'GWidgetsTopLevel-class'
‘...’
Objects in \usage without \alias in documentation object 'GWidgetsTopLevel-class':
‘GWidgetsTopLevel’

Undocumented arguments in documentation object 'JsonRPCObject-class'
‘...’
Objects in \usage without \alias in documentation object 'JsonRPCObject-class':
‘JsonRPCObject’

Undocumented arguments in documentation object 'JsonRPCServer-class'
‘...’
Objects in \usage without \alias in documentation object 'JsonRPCServer-class':
‘JsonRPCServer’

Undocumented arguments in documentation object 'gWidgetsWWW2-package'
‘...’

Undocumented arguments in documentation object 'GAction'
‘...’

Undocumented arguments in documentation object 'GGroup'
‘...’

Undocumented arguments in documentation object 'gmenu-class'
‘...’
Objects in \usage without \alias in documentation object 'gmenu-class':
‘GMenu’

Undocumented arguments in documentation object 'gstatusbar-class'
‘...’
Objects in \usage without \alias in documentation object 'gstatusbar-class':
‘GStatusbar’

Undocumented arguments in documentation object 'gsvg-class'
‘...’
Objects in \usage without \alias in documentation object 'gsvg-class':
‘GSvg’

Objects in \usage without \alias in documentation object 'svalue<-':
‘svalue.GComponent’

Bad \usage lines found in documentation object 'svalue<-':
<- value

Functions with \usage entries need to have the appropriate \alias
entries, and all their arguments documented.
The \usage entries must correspond to syntactically valid R code.
See the chapter ‘Writing R documentation files’ in the ‘Writing R
Extensions’ manual.

  • checking Rd contents ... OK
  • checking for unstated dependencies in examples ... OK
  • checking sizes of PDF files under ‘inst/doc’ ... OK
  • checking installed files from ‘inst/doc’ ... OK
  • checking files in ‘vignettes’ ... OK
  • checking examples ... OK
  • checking for unstated dependencies in vignettes ... OK
  • checking package vignettes in ‘inst/doc’ ... OK
  • checking running R code from vignettes ... OK
  • checking re-building of vignette outputs ... OK
  • checking PDF version of manual ... OK
    WARNING: There were 2 warnings.
    NOTE: There were 4 notes.

Use of utils:::URLdecode() in gedit causes error when a "%" sign is entered

As soon as a percent sign followed by more than two characters are entered into gedit, following a percent sign, I get the following error (R console output):

Transport process
Transport processt
Transport processte
Transport processtes
Transport processtest
Transport processtest
Transport processtest %
Transport processtest %l
Transport processtest %ll
Transport processtest %lll
Error in rawToChar(out) : Zeichenkette 'test \0l' enthält nul Zeichen
Zusätzlich: Warnmeldungen:
1: In utils:::URLdecode(value) :
Werte außerhalb des Bereichs als 0 behandelt in Umwandlung nach raw
2: In utils:::URLdecode(value) :
Werte außerhalb des Bereichs als 0 behandelt in Umwandlung nach raw
3: In utils:::URLdecode(value) :
Werte außerhalb des Bereichs als 0 behandelt in Umwandlung nach raw
4: In utils:::URLdecode(value) :
Werte außerhalb des Bereichs als 0 behandelt in Umwandlung nach raw

It seems that %xx is interpreted as an URL encoded character.

Text fields rendered black in firefox on windows, correct in Chrome

On Windows, editable text fields are rendered black when using Firefox 31.0. I do not understand what changed - I just updated gWidgetsWWW2, devtools and RCurl. Possibly Firefox updated itself, it is pretty quite about this nowadays.

Here is what I get e.g. in a demo using comboboxes

gw_1

Here is the result with Chrome 36.0.1985.143 m

gw_2

Firefox 31.0 on Linux is not affected.

Maybe Ext.js needs an update?

Is it possible to update single GUI elements in a handler call before it returns?

I would like to update the status bar or a GLabel within a handler function - is there a way to do this?

w <- gwindow()
gg <- ggroup(cont = w, horizontal = FALSE)
changing_label <- glabel("Not running", cont = gg)
gbutton("Run", handler = function(h, ...) {
            svalue(changing_label) <- "Running"
            cat("\nRunning")
            Sys.sleep(3)  
            cat("\nNot running")
            svalue(changing_label) <- "Not running"
}, cont = gg)

I also tried to implement a GProgressBar which would be even nicer...

roxygenise?

I tried to see if the roxygen2 4.0.1 would produce documentation that gives fewer problems in R CMD check. However, it fails:

roxygen2::roxygenise()
Loading required package: Rook
Loading required package: tools
Loading required package: brew
Loading required package: RJSONIO
Loading required package: memoise
Loading required package: whisker
Loading required package: digest
Error in .walkClassGraph(classDef, "subclasses", where) :
the 'subClass' list for class “envRefClass”, includes an undefined class “JsonRPCObject”
...
...

Maybe I have done something stupid, as I am not used to working with roxygen?

Internet connection is needed for using gWidgetsWWW2

I think it would be nice to be able to use gWidgetsWWW2 without internet connection, which is currently required to load ext.js from the content delivery network (CDN). Another point is that reincluding ext.js in the package would decrease the risk of including hacked code (remember what recently happened to the PHP web server).

Handler for gdf not working

Hi John,

I like gWidgetsWWW2 and I think it serves my purpose better than shiny. Not the least feature of gWidgetsWWW2 is the data frame widget. I think it is very powerful.

However, the handler that I pass to the gdf() function, or add later using addChangeHandler() is not doing anything, so I have to use an extra button to update the internal data structures of my GUI app after a change to the data frame.

Is this intended behaviour? I would like to have the handler triggered after changing a row...

Cheers,

Johannes

P.S.: Here is a test case

w <- gwindow("gdf test")
testdata <- data.frame(i = 1:3, row = paste("Row", 1:3))
gdf(testdata, width = 500, height = 250, name = "Test data frame with handler",
handler = function(h, ...) galert("test", parent = w),
cont = w)

gedit does not increase width of input area when width is increased

Test script:

w <- gwindow()
g <- ggroup(cont = w, horizontal = FALSE)

line_1 <- ggroup(cont = g, horizontal = TRUE)
glabel("Test label", cont = line_1)
e <- gedit("Test gedit, default width of 25", cont = line_1)
glabel("Second test label", cont = line_1)

line_2 <- ggroup(cont = g, horizontal = TRUE)
glabel("Test label", cont = line_2)
e <- gedit("Test gedit, increased width of 50", width = 50, cont = line_2)
glabel("Second test label", cont = line_2)

Result:

gedit_test

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.