From 52f1e2ba53b8ad1158fdfbe25aabf8e4b98e795f Mon Sep 17 00:00:00 2001 From: David Huynh Date: Mon, 21 Jun 2010 21:59:53 +0000 Subject: [PATCH] Updated butterfly jar. Extracted several dialogs' html fragments from their .js files out to .html files. git-svn-id: http://google-refine.googlecode.com/svn/trunk@1016 7d457c2a-affb-35e4-300a-418c747d4874 --- main/.classpath | 2 +- ...es.jar => butterfly-trunk-r26-sources.jar} | Bin 34063 -> 34244 bytes ...-trunk-r25.jar => butterfly-trunk-r26.jar} | Bin 62418 -> 62670 bytes .../webapp/modules/core/MOD-INF/controller.js | 33 ++++--- .../scripts/dialogs/clustering-dialog.html | 57 ++++++++++++ .../core/scripts/dialogs/clustering-dialog.js | 79 +++-------------- .../dialogs/expression-preview-dialog.html | 35 ++++++++ .../dialogs/expression-preview-dialog.js | 40 +-------- .../dialogs/extend-data-preview-dialog.html | 26 ++++++ .../dialogs/extend-data-preview-dialog.js | 42 ++------- .../dialogs/freebase-loading-dialog.html | 24 +++++ .../dialogs/freebase-loading-dialog.js | 64 ++++---------- .../core/scripts/dialogs/recon-dialog.html | 71 +++++++++++++++ .../core/scripts/dialogs/recon-dialog.js | 83 ++---------------- .../scripts/dialogs/scatterplot-dialog.html | 41 +++++++++ .../scripts/dialogs/scatterplot-dialog.js | 56 ++---------- .../dialogs/templating-exporter-dialog.html | 26 ++++++ .../dialogs/templating-exporter-dialog.js | 38 ++------ main/webapp/modules/core/scripts/util/dom.js | 19 +++- 19 files changed, 381 insertions(+), 355 deletions(-) rename main/webapp/WEB-INF/lib-src/{butterfly-trunk-r25-sources.jar => butterfly-trunk-r26-sources.jar} (66%) rename main/webapp/WEB-INF/lib/{butterfly-trunk-r25.jar => butterfly-trunk-r26.jar} (61%) create mode 100644 main/webapp/modules/core/scripts/dialogs/clustering-dialog.html create mode 100644 main/webapp/modules/core/scripts/dialogs/expression-preview-dialog.html create mode 100644 main/webapp/modules/core/scripts/dialogs/extend-data-preview-dialog.html create mode 100644 main/webapp/modules/core/scripts/dialogs/freebase-loading-dialog.html create mode 100644 main/webapp/modules/core/scripts/dialogs/recon-dialog.html create mode 100644 main/webapp/modules/core/scripts/dialogs/scatterplot-dialog.html create mode 100644 main/webapp/modules/core/scripts/dialogs/templating-exporter-dialog.html diff --git a/main/.classpath b/main/.classpath index 259b0c5eb..ae1ef41af 100644 --- a/main/.classpath +++ b/main/.classpath @@ -38,6 +38,6 @@ - + diff --git a/main/webapp/WEB-INF/lib-src/butterfly-trunk-r25-sources.jar b/main/webapp/WEB-INF/lib-src/butterfly-trunk-r26-sources.jar similarity index 66% rename from main/webapp/WEB-INF/lib-src/butterfly-trunk-r25-sources.jar rename to main/webapp/WEB-INF/lib-src/butterfly-trunk-r26-sources.jar index 03c8386deb97a528dc5154b1f1b1b7220d30ed21..e0e3540923db66f073dbd124e62a2bda44f872ec 100644 GIT binary patch delta 9721 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 delta 9379 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 z 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

?u4b)&(Y|QGvS?A8`iG$WFIK1xh-tocMl}LO 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 SUpWlJ1GipaBTeuBlm0)^YLw{! delta 22918 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 b_!~Y!>j2VM|AvEWl+ZRbDbDQ9e~$P+QI`Ib diff --git a/main/webapp/modules/core/MOD-INF/controller.js b/main/webapp/modules/core/MOD-INF/controller.js index b6f876bfa..f2ab6558f 100644 --- a/main/webapp/modules/core/MOD-INF/controller.js +++ b/main/webapp/modules/core/MOD-INF/controller.js @@ -18,6 +18,8 @@ function init() { "project/scripts", module, [ + "wirings.js", + "externals/jquery-1.4.2.min.js", "externals/jquery.cookie.js", "externals/suggest/suggest-1.2.min.js", @@ -111,18 +113,29 @@ function init() { * This is the function that is invoked by Butterfly */ function process(path, request, response) { - if (path.endsWith("/")) { - path = path.substring(0, path.length - 1); - } + if (path == "wirings.js") { + var wirings = butterfly.getWirings(request); + butterfly.sendString( + request, + response, + "var ModuleWirings = " + butterfly.toJSONString(wirings) + ";", + encoding, + "text/javascript" + ); + } else { + if (path.endsWith("/")) { + path = path.substring(0, path.length - 1); + } - var slash = path.lastIndexOf("/"); - var lastSegment = slash >= 0 ? path.substring(slash + 1) : path; - if (lastSegment in templatedFiles) { - var context = {}; - context.scripts = ClientSideResourceManager.getPaths(lastSegment + "/scripts"); - context.styles = ClientSideResourceManager.getPaths(lastSegment + "/styles"); + var slash = path.lastIndexOf("/"); + var lastSegment = slash >= 0 ? path.substring(slash + 1) : path; + if (lastSegment in templatedFiles) { + var context = {}; + context.scripts = ClientSideResourceManager.getPaths(lastSegment + "/scripts"); + context.styles = ClientSideResourceManager.getPaths(lastSegment + "/styles"); - send(request, response, path + ".vt", context); + send(request, response, path + ".vt", context); + } } } diff --git a/main/webapp/modules/core/scripts/dialogs/clustering-dialog.html b/main/webapp/modules/core/scripts/dialogs/clustering-dialog.html new file mode 100644 index 000000000..533d3d242 --- /dev/null +++ b/main/webapp/modules/core/scripts/dialogs/clustering-dialog.html @@ -0,0 +1,57 @@ +

+
+
+
+ + + + + + + + + + +
+ Method: + + +
Keying Function:
+ +
+ + + +
+
+
+
+ +
\ No newline at end of file diff --git a/main/webapp/modules/core/scripts/dialogs/clustering-dialog.js b/main/webapp/modules/core/scripts/dialogs/clustering-dialog.js index d43e492b3..1742fc611 100644 --- a/main/webapp/modules/core/scripts/dialogs/clustering-dialog.js +++ b/main/webapp/modules/core/scripts/dialogs/clustering-dialog.js @@ -13,62 +13,10 @@ function ClusteringDialog(columnName, expression) { ClusteringDialog.prototype._createDialog = function() { var self = this; - var frame = DialogSystem.createDialog(); - frame.width("900px"); - - var header = $('
').addClass("dialog-header").text('Cluster & Edit column "' + this._columnName + '"').appendTo(frame); - var body = $('
').addClass("dialog-body").appendTo(frame); - var footer = $( - '' - ).appendTo(frame); - - var html = $( - '
' + - '' + - '' + - '' + - '' + - '' + - '' + - '' + - '' + - '' + - '' + - '
' + - 'Method: ' + - '' + - '
Keying Function:
' + - '' + - '
' + - '' + - '' + - '' + - '
' + - '
' + - '
' - ).appendTo(body); - - this._elmts = DOM.bind(html); + var dialog = $(DOM.loadHTML("core", "scripts/dialogs/clustering-dialog.html")); + + this._elmts = DOM.bind(dialog); + this._elmts.dialogHeader.text('Cluster & Edit column "' + this._columnName + '"'); this._elmts.methodSelector.change(function() { var selection = $(this).find("option:selected").text(); @@ -116,19 +64,13 @@ ClusteringDialog.prototype._createDialog = function() { this._elmts.radius.change(params_changer); this._elmts.ngramBlock.change(params_changer); - var left_footer = footer.find(".left"); - $('').text("Select All").click(function() { self._selectAll(); }).appendTo(left_footer); - $('').text("Deselect All").click(function() { self._deselectAll(); }).appendTo(left_footer); + this._elmts.selectAllButton.click(function() { self._selectAll(); }); + this._elmts.deselectAllButton.click(function() { self._deselectAll(); }); + this._elmts.applyReClusterButton.click(function() { self._onApplyReCluster(); }); + this._elmts.applyCloseButton.click(function() { self._onApplyClose(); }); + this._elmts.closeButton.click(function() { self._dismiss(); }); - var right_footer = footer.find(".right"); - $('').text("Apply & Re-Cluster").click(function() { self._onApplyReCluster(); }).appendTo(right_footer); - $('').text("Apply & Close").click(function() { self._onApplyClose(); }).appendTo(right_footer); - $('').text("Close").click(function() { self._dismiss(); }).appendTo(right_footer); - - this._level = DialogSystem.showDialog(frame); - - $("#recon-dialog-tabs").tabs(); - $("#recon-dialog-tabs-strict").css("display", ""); + this._level = DialogSystem.showDialog(dialog); }; ClusteringDialog.prototype._renderTable = function(clusters) { @@ -248,7 +190,6 @@ ClusteringDialog.prototype._renderTable = function(clusters) { '
No clusters were found with the selected method
Try selecting another method above or changing its parameters
' ); } - }; ClusteringDialog.prototype._cluster = function() { diff --git a/main/webapp/modules/core/scripts/dialogs/expression-preview-dialog.html b/main/webapp/modules/core/scripts/dialogs/expression-preview-dialog.html new file mode 100644 index 000000000..ecbb39ed9 --- /dev/null +++ b/main/webapp/modules/core/scripts/dialogs/expression-preview-dialog.html @@ -0,0 +1,35 @@ +
+ + + + + + + + + + + + +
ExpressionLanguage
Row Template
Row Separator
Suffix
+ +
+ + + ' + + + \ No newline at end of file diff --git a/main/webapp/modules/core/scripts/dialogs/templating-exporter-dialog.js b/main/webapp/modules/core/scripts/dialogs/templating-exporter-dialog.js index 6e26a9401..2c3187efc 100644 --- a/main/webapp/modules/core/scripts/dialogs/templating-exporter-dialog.js +++ b/main/webapp/modules/core/scripts/dialogs/templating-exporter-dialog.js @@ -6,34 +6,8 @@ function TemplatingExporterDialog() { TemplatingExporterDialog.prototype._createDialog = function() { var self = this; - var frame = DialogSystem.createDialog(); - frame.width("900px"); - - var header = $('
').addClass("dialog-header").text('Templating Export').appendTo(frame); - var body = $('
').addClass("dialog-body").appendTo(frame); - var footer = $('
').addClass("dialog-footer").appendTo(frame); - - body.html( - '
' + - '' + - '' + - '' + - '' + - '
' + - '' + - '' + - '' + - '' + - '' + - '' + - '' + - '' + - '
Prefix
Row Template
Row Separator
Suffix
' + - '
' + - '
' - ); - - this._elmts = DOM.bind(body); + var dialog = $(DOM.loadHTML("core", "scripts/dialogs/templating-exporter-dialog.html")); + this._elmts = DOM.bind(dialog); this._elmts.controls.find("textarea").keyup(function() { self._scheduleUpdate(); }); this._elmts.prefixTextarea[0].value = '{\n "rows" : [\n'; @@ -44,10 +18,10 @@ TemplatingExporterDialog.prototype._createDialog = function() { return '\n "' + column.name + '" : {{jsonize(cells["' + column.name + '"].value)}}'; }).join(',') + '\n }'; - $('').text("Export").click(function() { self._export(); self._dismiss(); }).appendTo(footer); - $('').text("Close").click(function() { self._dismiss(); }).appendTo(footer); - - this._level = DialogSystem.showDialog(frame); + this._elmts.exportButton.click(function() { self._export(); self._dismiss(); }); + this._elmts.cancelButton.click(function() { self._dismiss(); }); + + this._level = DialogSystem.showDialog(dialog); }; TemplatingExporterDialog.prototype._scheduleUpdate = function() { diff --git a/main/webapp/modules/core/scripts/util/dom.js b/main/webapp/modules/core/scripts/util/dom.js index a3fc6c224..99a5c3371 100644 --- a/main/webapp/modules/core/scripts/util/dom.js +++ b/main/webapp/modules/core/scripts/util/dom.js @@ -14,7 +14,6 @@ DOM._bindDOMElement = function(elmt, map) { var bind = elmt.getAttribute("bind"); if (bind !== null && bind.length > 0) { map[bind] = $(elmt); - elmt.removeAttribute("bind"); } if (elmt.hasChildNodes()) { @@ -31,4 +30,20 @@ DOM._bindDOMChildren = function(elmt, map) { } node = node2; } -}; \ No newline at end of file +}; + +DOM._loadedHTML = {}; +DOM.loadHTML = function(module, path) { + var fullPath = ModuleWirings[module] + path; + if (!(fullPath in DOM._loadedHTML)) { + $.ajax({ + async: false, + url: fullPath, + dataType: "html", + success: function(html) { + DOM._loadedHTML[fullPath] = html; + } + }) + } + return DOM._loadedHTML[fullPath]; +};