From fdf75f4c0ae758bd3874b779bbf1647cb731d027 Mon Sep 17 00:00:00 2001 From: yvesn <yvesn> Date: Wed, 24 May 2017 09:38:21 +0000 Subject: [PATCH] SSDM-5068 : ELN config on GUI - adjusted column widths SVN: 38217 --- .../js/views/SettingsForm/SettingsFormView.js | 48 +++++++++++-------- 1 file changed, 29 insertions(+), 19 deletions(-) diff --git a/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/SettingsForm/SettingsFormView.js b/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/SettingsForm/SettingsFormView.js index 69dc231e03b..1cc93a010c9 100644 --- a/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/SettingsForm/SettingsFormView.js +++ b/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/SettingsForm/SettingsFormView.js @@ -122,7 +122,7 @@ function SettingsFormView(settingsFormController, settingsFormModel) { this._getMainMenuItemsTableModel = function() { var tableModel = this._getTableModel(); // define columns - tableModel.columnNames = ["Main Menu Item", "enabled"]; + tableModel.columns = [{ label : "Main Menu Item"}, { label : "enabled"}]; tableModel.rowBuilders = { "Main Menu Item" : function(rowData) { return $("<span>").text(rowData.menuItemName); @@ -273,7 +273,7 @@ function SettingsFormView(settingsFormController, settingsFormModel) { var tableModel = this._getTableModel(); tableModel.dynamicRows = true; // define columns - tableModel.columnNames = ["Filename extension", "Dataset type"]; + tableModel.columns = [{ label : "Filename extension" }, { label : "Dataset type" }]; tableModel.rowBuilders = { "Filename extension" : function(rowData) { return $("<input>", { type : "text", class : "form-control" }).val(rowData.fileNameExtension); @@ -327,7 +327,13 @@ function SettingsFormView(settingsFormController, settingsFormModel) { var tableModel = this._getTableModel(); tableModel.dynamicRows = true; // define columns - tableModel.columnNames = ["Hints for", "Label", "Type", "Min", "Max"]; + tableModel.columns = [ + { label : "Hints for", width : "140px" }, + { label : "Label" }, + { label : "Type" }, + { label : "Min", width : "80px" }, + { label : "Max", width : "80px" } + ]; tableModel.rowBuilders = { "Hints for" : (function(rowData) { var options = ["Children", "Parents"]; @@ -408,7 +414,7 @@ function SettingsFormView(settingsFormController, settingsFormModel) { var tableModel = this._getTableModel(); tableModel.dynamicRows = true; // define columns - tableModel.columnNames = ["Annotation property type", "Mandatory"]; + tableModel.columns = [{ label : "Annotation property type" }, { label : "Mandatory", width : "160px" }]; tableModel.rowBuilders = { "Annotation property type" : (function(rowData) { var options = this._settingsFormController.getAnnotationPropertyTypeOptions(); @@ -449,7 +455,7 @@ function SettingsFormView(settingsFormController, settingsFormModel) { var tableModel = this._getTableModel(); tableModel.dynamicRows = true; // define columns - tableModel.columnNames = [params.columnName]; + tableModel.columns = [{ label : params.columnName }]; tableModel.rowBuilders[params.columnName] = function(rowData) { return FormUtil.getDropdown(params.options.map(function(option) { return { @@ -474,7 +480,7 @@ function SettingsFormView(settingsFormController, settingsFormModel) { this._getTableModel = function() { var tableModel = {}; - tableModel.columnNames = []; // array of strings + tableModel.columns = []; // array of elements with label and optional width tableModel.rowBuilders = {}; // key (column name); value (function to build widget) tableModel.rows = []; // array of maps with key (column name); value (widget) tableModel.rowExtraBuilder = null; // optional builder for expandable component per row @@ -487,10 +493,10 @@ function SettingsFormView(settingsFormController, settingsFormModel) { for (var i of Object.keys(tableModel.rows)) { var row = tableModel.rows[i]; var rowValues = {}; - for (var columnName of tableModel.columnNames) { - var $widget = row[columnName]; + for (var column of tableModel.columns) { + var $widget = row[column.label]; var value = this._getWidgetValue($widget); - rowValues[columnName] = value; + rowValues[column.label] = value; } if (tableModel.rowExtraModels.length === tableModel.rows.length) { rowValues.extraValues = tableModel.rowExtraModels[i].getValues(); @@ -501,9 +507,9 @@ function SettingsFormView(settingsFormController, settingsFormModel) { }).bind(this); tableModel.addRow = function(rowData) { var rowWidgets = {}; - for (var columnName of tableModel.columnNames) { - var rowBuilder = tableModel.rowBuilders[columnName]; - rowWidgets[columnName] = rowBuilder(rowData); + for (var column of tableModel.columns) { + var rowBuilder = tableModel.rowBuilders[column.label]; + rowWidgets[column.label] = rowBuilder(rowData); } tableModel.rows.push(rowWidgets); if (tableModel.rowExtraBuilder) { @@ -535,8 +541,12 @@ function SettingsFormView(settingsFormController, settingsFormModel) { if (tableModel.rowExtraBuilder) { $trHead.append($("<th>").css("width", "30px")); } - for (var columnName of tableModel.columnNames) { - $trHead.append($("<th>").css("vertical-align", "middle").text(columnName)); + for (var column of tableModel.columns) { + var $th = $("<th>").css("vertical-align", "middle").text(column.label); + if (column.width) { + $th.css("width", column.width); + } + $trHead.append($th); } // add row button if (tableModel.dynamicRows) { @@ -555,7 +565,7 @@ function SettingsFormView(settingsFormController, settingsFormModel) { } }).bind(this)) } - $trHead.append($("<th>").append($addButton)); + $trHead.append($("<th>").css("width", "80px").append($addButton)); } $thead.append($trHead); $table.append($thead); @@ -584,12 +594,12 @@ function SettingsFormView(settingsFormController, settingsFormModel) { // add expand / collapse for extra if ($extra) { // create extra row - var colspan = tableModel.columnNames.length + 1; + var colspan = tableModel.columns.length + 1; if (tableModel.dynamicRows) { colspan++; } $extraRow = $("<tr>") - .append($("<td>").css("padding-left", "50px").attr("colspan", colspan) + .append($("<td>").css({"padding-left" : "50px", "padding-right" : "50px"}).attr("colspan", colspan) .append($extra)); // hiding / showing extra row $extraRow.hide(); @@ -607,10 +617,10 @@ function SettingsFormView(settingsFormController, settingsFormModel) { $td.append($expandCollapse); } - for (var columnName of tableModel.columnNames) { + for (var column of tableModel.columns) { var $td = $("<td>"); $tr.append($td); - var $widget = tableModelRow[columnName]; + var $widget = tableModelRow[column.label]; $td.append($widget); // disbale widget if in view mode if (this._settingsFormModel.mode === FormMode.VIEW) { -- GitLab