Skip to content

Commit 9289b3a

Browse files
committed
real-time query builder updates for date/objectid
1 parent 1d5a1aa commit 9289b3a

File tree

2 files changed

+22
-5
lines changed

2 files changed

+22
-5
lines changed

src/minicharts/d3fns/date.js

Lines changed: 21 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,8 +53,20 @@ var minicharts_d3fns_date = function() {
5353
.on('brush', brushed)
5454
.on('brushend', brushend);
5555

56+
function brushstart(clickedLine) {
57+
// remove selections and half selections
58+
var lines = d3.selectAll(options.view.queryAll('.selectable'));
59+
lines.classed('selected', function() {
60+
return this === clickedLine;
61+
});
62+
lines.classed('unselected', function() {
63+
return this !== clickedLine;
64+
});
65+
}
66+
5667
function brushed() {
5768
var lines = d3.selectAll(options.view.queryAll('.selectable'));
69+
var numSelected = options.view.queryAll('.selectable.selected').length;
5870
var s = brush.extent();
5971

6072
lines.classed('selected', function(d) {
@@ -64,6 +76,15 @@ var minicharts_d3fns_date = function() {
6476
var pos = barcodeX(d.dt);
6577
return s[0] > pos || pos > s[1];
6678
});
79+
if (!options.view) return;
80+
if (numSelected !== options.view.queryAll('.selectable.selected').length) {
81+
// number of selected items has changed, trigger querybuilder event
82+
var evt = {
83+
type: 'drag',
84+
source: 'date'
85+
};
86+
options.view.trigger('querybuilder', evt);
87+
}
6788
}
6889

6990
function brushend() {
@@ -81,7 +102,6 @@ var minicharts_d3fns_date = function() {
81102
};
82103
options.view.trigger('querybuilder', evt);
83104
}
84-
// --- end chart setup ---
85105
var handleClick = function(d) {
86106
var evt = {
87107
d: d,

src/minicharts/d3fns/many.js

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ var $ = require('jquery');
33
var _ = require('lodash');
44
var tooltipHtml = require('./tooltip.jade');
55
var shared = require('./shared');
6-
var debug = require('debug')('scout:minicharts:many');
6+
// var debug = require('debug')('scout:minicharts:many');
77

88
require('../d3-tip')(d3);
99

@@ -285,9 +285,6 @@ var minicharts_d3fns_many = function() {
285285
.attr('height', height)
286286
.on('mouseover', tip.show)
287287
.on('mouseout', tip.hide);
288-
// @note currently the bgbars are only use for the day/week and hour/day charts.
289-
// they don't support query building anyway.
290-
// .on('mousedown', handleMouseDown)
291288
} else {
292289
// ... or attach tooltips directly to foreground bars if we don't use background bars
293290
barEnter.selectAll('.fg')

0 commit comments

Comments
 (0)