Skip to content

Commit

Permalink
unname after unlist if row.names passed
Browse files Browse the repository at this point in the history
  • Loading branch information
JohnCoene committed Aug 8, 2018
1 parent 84d0336 commit bb2f3b8
Show file tree
Hide file tree
Showing 3 changed files with 77 additions and 80 deletions.
9 changes: 3 additions & 6 deletions R/utils.R
@@ -1,17 +1,14 @@
globalVariables(c("from", "to", "."))

.build_data <- function(data, ...){
# dots <- eval(substitute(alist(...))) # capture dots
# base <- lapply(dots, eval, data) # eval
# names(base) <- sapply(dots, deparse) # deparse for name
# base <- as.data.frame(base) # to data.frame
# return(base)

data %>%
dplyr::select(...)
}

.as_list <- function(data){
apply(data, 1, as.list) # json formatted list
apply(data, 1, as.list) %>% # json formatted list
unname() # in case of row.names
}

.check_ids <- function(data){
Expand Down
4 changes: 2 additions & 2 deletions R/zzz.R
@@ -1,11 +1,11 @@
.onAttach <- function(libname, pkgname) {
shiny::registerInputHandler("sigmajsParse", function(data, ...) {
shiny::registerInputHandler("sigmajsParseJS", function(data, ...) {
jsonlite::fromJSON(jsonlite::toJSON(data, auto_unbox = TRUE))
}, force = TRUE)
}

.onLoad <- function(libname, pkgname) {
shiny::registerInputHandler("sigmajsParse", function(data, ...) {
shiny::registerInputHandler("sigmajsParseJS", function(data, ...) {
jsonlite::fromJSON(jsonlite::toJSON(data, auto_unbox = TRUE))
}, force = TRUE)
}
144 changes: 72 additions & 72 deletions inst/htmlwidgets/sigmajs.js
Expand Up @@ -373,172 +373,172 @@ HTMLWidgets.widget({
}
}

// stop force
if(x.hasOwnProperty('forceStopDelay')){
if(x.button.event === 'force_stop'){
button.addEventListener("click", function(event) {
setTimeout(function () {
s.stopForceAtlas2();
}, x.forceStopDelay);
});
} else {
setTimeout(function () {
s.stopForceAtlas2();
}, x.forceStopDelay);
}
}

if(x.hasOwnProperty('forceRestartDelay')){

var is_it_running = s.isForceAtlas2Running();

if(is_it_running === false){
s.startForceAtlas2();
}

x.forceRestartDelay.forEach((force) => {
setTimeout(function () {
s.killForceAtlas2();
s.startForceAtlas2();
}, force.sigmajsdelay);
});

}

if(x.hasOwnProperty('exportSVG')){
button.addEventListener("click", function(event) {
var output = s.toSVG(x.exportSVG);
});
}

if(x.hasOwnProperty('exportIMG')){
button.addEventListener("click", function(event) {
var output = renderer.snapshot(x.exportIMG);
});
}

sel_handle.setGroup(x.crosstalk.crosstalk_group);
//filter_handle.setGroup(x.crosstalk.crosstalk_group);
s.refresh(); // refresh

// events
if (HTMLWidgets.shinyMode) {

// click node
s.bind('clickNode', function (e) {
Shiny.onInputChange(el.id + '_click_node' + ":sigmajsParse", e.data.node);
Shiny.setInputValue(el.id + '_click_node' + ":sigmajsParseJS", e.data.node);
});

// click nodeS
s.bind('clickNodes', function (e) {
Shiny.onInputChange(el.id + '_click_nodes' + ":sigmajsParse", e.data.nodes);
Shiny.setInputValue(el.id + '_click_nodes' + ":sigmajsParseJS", e.data.nodes);
});

// click edge
s.bind('clickEdge', function (e) {
Shiny.onInputChange(el.id + '_click_edge' + ":sigmajsParse", e.data.edge);
Shiny.setInputValue(el.id + '_click_edge' + ":sigmajsParseJS", e.data.edge);
});

// click edgeS
s.bind('clickEdges', function (e) {
Shiny.onInputChange(el.id + '_click_edges' + ":sigmajsParse", e.data.edges);
Shiny.setInputValue(el.id + '_click_edges' + ":sigmajsParseJS", e.data.edges);
});

// click stage
s.bind('clickStage', function (e) {
Shiny.onInputChange(el.id + '_click_stage' + ":sigmajsParse", true);
Shiny.setInputValue(el.id + '_click_stage' + ":sigmajsParseJS", true);
});

// double click stage
s.bind('doubleClickStage', function (e) {
Shiny.onInputChange(el.id + '_double_click_stage' + ":sigmajsParse", true);
Shiny.setInputValue(el.id + '_double_click_stage' + ":sigmajsParseJS", true);
});

// right click stage
s.bind('rightClickStage', function (e) {
Shiny.onInputChange(el.id + '_right_click_stage' + ":sigmajsParse", true);
Shiny.setInputValue(el.id + '_right_click_stage' + ":sigmajsParseJS", true);
});

// double click node
s.bind('doubleClickNode', function (e) {
Shiny.onInputChange(el.id + '_double_click_node' + ":sigmajsParse", e.data.node);
Shiny.setInputValue(el.id + '_double_click_node' + ":sigmajsParseJS", e.data.node);
});

// double click nodeS
s.bind('doubleClickNodes', function (e) {
Shiny.onInputChange(el.id + '_double_click_nodes' + ":sigmajsParse", e.data.nodes);
Shiny.setInputValue(el.id + '_double_click_nodes' + ":sigmajsParseJS", e.data.nodes);
});

// double click edge
s.bind('doubleClickEdge', function (e) {
Shiny.onInputChange(el.id + '_double_click_edge' + ":sigmajsParse", e.data.edge);
Shiny.setInputValue(el.id + '_double_click_edge' + ":sigmajsParseJS", e.data.edge);
});

// double click edgeS
s.bind('doubleClickEdges', function (e) {
Shiny.onInputChange(el.id + '_double_click_edges' + ":sigmajsParse", e.data.edges);
Shiny.setInputValue(el.id + '_double_click_edges' + ":sigmajsParseJS", e.data.edges);
});

// right click node
s.bind('rightClickNode', function (e) {
Shiny.onInputChange(el.id + '_right_click_node' + ":sigmajsParse", e.data.node);
Shiny.setInputValue(el.id + '_right_click_node' + ":sigmajsParseJS", e.data.node);
});

// right click nodeS
s.bind('rightClickNodes', function (e) {
Shiny.onInputChange(el.id + '_right_click_nodes' + ":sigmajsParse", e.data.nodes);
Shiny.setInputValue(el.id + '_right_click_nodes' + ":sigmajsParseJS", e.data.nodes);
});

// right click edge
s.bind('rightClickEdge', function (e) {
Shiny.onInputChange(el.id + '_right_click_edge' + ":sigmajsParse", e.data.edge);
Shiny.setInputValue(el.id + '_right_click_edge' + ":sigmajsParseJS", e.data.edge);
});

// right click edgeS
s.bind('rightClickEdges', function (e) {
Shiny.onInputChange(el.id + '_right_click_edges' + ":sigmajsParse", e.data.edges);
Shiny.setInputValue(el.id + '_right_click_edges' + ":sigmajsParseJS", e.data.edges);
});

// over node
s.bind('overNode', function (e) {
Shiny.onInputChange(el.id + '_over_node' + ":sigmajsParse", e.data.node);
Shiny.setInputValue(el.id + '_over_node' + ":sigmajsParseJS", e.data.node);
});

// over nodeS
s.bind('overNodes', function (e) {
Shiny.onInputChange(el.id + '_over_nodes' + ":sigmajsParse", e.data.nodes);
Shiny.setInputValue(el.id + '_over_nodes' + ":sigmajsParseJS", e.data.nodes);
});

// over edge
s.bind('overEdge', function (e) {
Shiny.onInputChange(el.id + '_over_edge' + ":sigmajsParse", e.data.edge);
Shiny.setInputValue(el.id + '_over_edge' + ":sigmajsParse", e.data.edge);
});

// over edgeS
s.bind('overEdges', function (e) {
Shiny.onInputChange(el.id + '_over_edges' + ":sigmajsParse", e.data.edges);
Shiny.setInputValue(el.id + '_over_edges' + ":sigmajsParse", e.data.edges);
});

// out node
s.bind('outNode', function (e) {
Shiny.onInputChange(el.id + '_out_node' + ":sigmajsParse", e.data.node);
Shiny.setInputValue(el.id + '_out_node' + ":sigmajsParse", e.data.node);
});

// out nodeS
s.bind('outNodes', function (e) {
Shiny.onInputChange(el.id + '_out_nodes' + ":sigmajsParse", e.data.nodes);
Shiny.setInputValue(el.id + '_out_nodes' + ":sigmajsParse", e.data.nodes);
});

// out edge
s.bind('outEdge', function (e) {
Shiny.onInputChange(el.id + '_out_edge' + ":sigmajsParse", e.data.edge);
Shiny.setInputValue(el.id + '_out_edge' + ":sigmajsParse", e.data.edge);
});

// out edgeS
s.bind('outEdges', function (e) {
Shiny.onInputChange(el.id + '_out_edges' + ":sigmajsParse", e.data.edges);
Shiny.setInputValue(el.id + '_out_edges' + ":sigmajsParse", e.data.edges);
});
}

s.refresh(); // refresh

// stop force
if(x.hasOwnProperty('forceStopDelay')){
if(x.button.event === 'force_stop'){
button.addEventListener("click", function(event) {
setTimeout(function () {
s.stopForceAtlas2();
}, x.forceStopDelay);
});
} else {
setTimeout(function () {
s.stopForceAtlas2();
}, x.forceStopDelay);
}
}

if(x.hasOwnProperty('forceRestartDelay')){

var is_it_running = s.isForceAtlas2Running();

if(is_it_running === false){
s.startForceAtlas2();
}

x.forceRestartDelay.forEach((force) => {
setTimeout(function () {
s.killForceAtlas2();
s.startForceAtlas2();
}, force.sigmajsdelay);
});

}

if(x.hasOwnProperty('exportSVG')){
button.addEventListener("click", function(event) {
var output = s.toSVG(x.exportSVG);
});
}

if(x.hasOwnProperty('exportIMG')){
button.addEventListener("click", function(event) {
var output = renderer.snapshot(x.exportIMG);
});
}

sel_handle.setGroup(x.crosstalk.crosstalk_group);
//filter_handle.setGroup(x.crosstalk.crosstalk_group);

},

Expand Down

0 comments on commit bb2f3b8

Please sign in to comment.