Skip to content

Commit

Permalink
Merge pull request #4061 from plotly/showEditInChartStudio
Browse files Browse the repository at this point in the history
Add showEditInChartStudio config option
  • Loading branch information
etpinard authored Jul 19, 2019
2 parents 72f885a + d374ecc commit 56dd829
Show file tree
Hide file tree
Showing 21 changed files with 65 additions and 1,717 deletions.
1 change: 0 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@ node_modules

build/*
!build/plotcss.js
!build/ploticon.js
!build/README.md

npm-debug.log*
Expand Down
1 change: 0 additions & 1 deletion .npmignore
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
build/*
!build/plotcss.js
!build/ploticon.js
!build/README.md

devtools
Expand Down
16 changes: 0 additions & 16 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

3 changes: 1 addition & 2 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -159,7 +159,6 @@
"run-series": "^1.1.8",
"through2": "^3.0.1",
"true-case-path": "^1.0.3",
"watchify": "^3.11.1",
"xml2js": "^0.4.19"
"watchify": "^3.11.1"
}
}
11 changes: 10 additions & 1 deletion src/components/modebar/buttons.js
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ var Registry = require('../../registry');
var Plots = require('../../plots/plots');
var axisIds = require('../../plots/cartesian/axis_ids');
var Lib = require('../../lib');
var Icons = require('../../../build/ploticon');
var Icons = require('../../fonts/ploticon');

var _ = Lib._;

Expand Down Expand Up @@ -89,6 +89,15 @@ modeBarButtons.sendDataToCloud = {
}
};

modeBarButtons.editInChartStudio = {
name: 'editInChartStudio',
title: function(gd) { return _(gd, 'Edit in Chart Studio'); },
icon: Icons.pencil,
click: function(gd) {
Plots.sendDataToCloud(gd);
}
};

modeBarButtons.zoom2d = {
name: 'zoom2d',
title: function(gd) { return _(gd, 'Zoom'); },
Expand Down
15 changes: 7 additions & 8 deletions src/components/modebar/manage.js
Original file line number Diff line number Diff line change
Expand Up @@ -59,22 +59,20 @@ module.exports = function manageModeBar(gd) {
} else if(!context.displayModeBar && context.watermark) {
buttonGroups = [];
} else {
buttonGroups = getButtonGroups(
gd,
context.modeBarButtonsToRemove,
context.modeBarButtonsToAdd,
context.showSendToCloud
);
buttonGroups = getButtonGroups(gd);
}

if(modeBar) modeBar.update(gd, buttonGroups);
else fullLayout._modeBar = createModeBar(gd, buttonGroups);
};

// logic behind which buttons are displayed by default
function getButtonGroups(gd, buttonsToRemove, buttonsToAdd, showSendToCloud) {
function getButtonGroups(gd) {
var fullLayout = gd._fullLayout;
var fullData = gd._fullData;
var context = gd._context;
var buttonsToRemove = context.modeBarButtonsToRemove;
var buttonsToAdd = context.modeBarButtonsToAdd;

var hasCartesian = fullLayout._has('cartesian');
var hasGL3D = fullLayout._has('gl3d');
Expand Down Expand Up @@ -106,7 +104,8 @@ function getButtonGroups(gd, buttonsToRemove, buttonsToAdd, showSendToCloud) {

// buttons common to all plot types
var commonGroup = ['toImage'];
if(showSendToCloud) commonGroup.push('sendDataToCloud');
if(context.showEditInChartStudio) commonGroup.push('editInChartStudio');
else if(context.showSendToCloud) commonGroup.push('sendDataToCloud');
addGroup(commonGroup);

var zoomGroup = [];
Expand Down
2 changes: 1 addition & 1 deletion src/components/modebar/modebar.js
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ var d3 = require('d3');
var isNumeric = require('fast-isnumeric');

var Lib = require('../../lib');
var Icons = require('../../../build/ploticon');
var Icons = require('../../fonts/ploticon');
var Parser = new DOMParser();

/**
Expand Down
2 changes: 1 addition & 1 deletion src/core.js
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ register([
]);

// plot icons
exports.Icons = require('../build/ploticon');
exports.Icons = require('./fonts/ploticon');

// unofficial 'beta' plot methods, use at your own risk
exports.Plots = require('./plots/plots');
Expand Down
14 changes: 14 additions & 0 deletions build/ploticon.js → src/fonts/ploticon.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,11 @@
/**
* Copyright 2012-2019, Plotly, Inc.
* All rights reserved.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/

'use strict';

module.exports = {
Expand Down Expand Up @@ -121,6 +129,12 @@ module.exports = {
'path': 'M512 409c0-57-46-104-103-104-57 0-104 47-104 104 0 57 47 103 104 103 57 0 103-46 103-103z m-327-39l92 0 0 92-92 0z m-185 0l92 0 0 92-92 0z m370-186l92 0 0 93-92 0z m0-184l92 0 0 92-92 0z',
'transform': 'matrix(1.5 0 0 -1.5 0 850)'
},
'pencil': {
'width': 1792,
'height': 1792,
'path': 'M491 1536l91-91-235-235-91 91v107h128v128h107zm523-928q0-22-22-22-10 0-17 7l-542 542q-7 7-7 17 0 22 22 22 10 0 17-7l542-542q7-7 7-17zm-54-192l416 416-832 832h-416v-416zm683 96q0 53-37 90l-166 166-416-416 166-165q36-38 90-38 53 0 91 38l235 234q37 39 37 91z',
'transform': 'matrix(1 0 0 1 0 1)'
},
'newplotlylogo': {
'name': 'newplotlylogo',
'svg': '<svg xmlns=\'http://www.w3.org/2000/svg\' viewBox=\'0 0 132 132\'><defs><style>.cls-1 {fill: #119dff;} .cls-2 {fill: #25fefd;} .cls-3 {fill: #fff;}</style></defs><title>plotly-logomark</title><g id=\'symbol\'><rect class=\'cls-1\' width=\'132\' height=\'132\' rx=\'6\' ry=\'6\'/><circle class=\'cls-2\' cx=\'78\' cy=\'54\' r=\'6\'/><circle class=\'cls-2\' cx=\'102\' cy=\'30\' r=\'6\'/><circle class=\'cls-2\' cx=\'78\' cy=\'30\' r=\'6\'/><circle class=\'cls-2\' cx=\'54\' cy=\'30\' r=\'6\'/><circle class=\'cls-2\' cx=\'30\' cy=\'30\' r=\'6\'/><circle class=\'cls-2\' cx=\'30\' cy=\'54\' r=\'6\'/><path class=\'cls-3\' d=\'M30,72a6,6,0,0,0-6,6v24a6,6,0,0,0,12,0V78A6,6,0,0,0,30,72Z\'/><path class=\'cls-3\' d=\'M78,72a6,6,0,0,0-6,6v24a6,6,0,0,0,12,0V78A6,6,0,0,0,78,72Z\'/><path class=\'cls-3\' d=\'M54,48a6,6,0,0,0-6,6v48a6,6,0,0,0,12,0V54A6,6,0,0,0,54,48Z\'/><path class=\'cls-3\' d=\'M102,48a6,6,0,0,0-6,6v48a6,6,0,0,0,12,0V54A6,6,0,0,0,102,48Z\'/></g></svg>'
Expand Down
45 changes: 0 additions & 45 deletions src/fonts/ploticon/_ploticon.scss

This file was deleted.

Loading

0 comments on commit 56dd829

Please sign in to comment.