X-Git-Url: http://git.roojs.org/?a=blobdiff_plain;f=roojs-bootstrap-debug.js;h=0d7efc8c018e50586d9eeaa8c2031e1d94936bc0;hb=12b0ee7b53b7f55de8b2921fdff7136ca559fd37;hp=b945def6cb425f8877896e9b9037d19309b578f1;hpb=242e8cb7d4eb31741bfb8d282303ac36f54dd00e;p=roojs1 diff --git a/roojs-bootstrap-debug.js b/roojs-bootstrap-debug.js index b945def6cb..0d7efc8c01 100644 --- a/roojs-bootstrap-debug.js +++ b/roojs-bootstrap-debug.js @@ -7305,30 +7305,15 @@ Roo.grid.ColumnModel = function(config){ /** * The config passed into the constructor */ - this.config = config; + this.config = []; //config; this.lookup = {}; // if no id, create one // if the column does not have a dataIndex mapping, // map it to the order it is in the config for(var i = 0, len = config.length; i < len; i++){ - var c = config[i]; - if(typeof c.dataIndex == "undefined"){ - c.dataIndex = i; - } - if(typeof c.renderer == "string"){ - c.renderer = Roo.util.Format[c.renderer]; - } - if(typeof c.id == "undefined"){ - c.id = Roo.id(); - } - if(c.editor && c.editor.xtype){ - c.editor = Roo.factory(c.editor, Roo.grid); - } - if(c.editor && c.editor.isFormField){ - c.editor = new Roo.grid.GridEditor(c.editor); - } - this.lookup[c.id] = c; + this.addColumn(config[i]); + } /** @@ -7470,7 +7455,7 @@ Roo.extend(Roo.grid.ColumnModel, Roo.util.Observable, { /** - * Returns the column for a specified dataIndex. + * Returns the column Object for a specified dataIndex. * @param {String} dataIndex The column dataIndex * @return {Object|Boolean} the column or false if not found */ @@ -7796,7 +7781,35 @@ Roo.extend(Roo.grid.ColumnModel, Roo.util.Observable, { */ setEditor : function(col, editor){ this.config[col].editor = editor; + }, + /** + * Add a column (experimental...) - defaults to adding to the end.. + * @param {Object} config + */ + addColumn : function(c) + { + + var i = this.config.length; + this.config[i] = c; + + if(typeof c.dataIndex == "undefined"){ + c.dataIndex = i; + } + if(typeof c.renderer == "string"){ + c.renderer = Roo.util.Format[c.renderer]; + } + if(typeof c.id == "undefined"){ + c.id = Roo.id(); + } + if(c.editor && c.editor.xtype){ + c.editor = Roo.factory(c.editor, Roo.grid); + } + if(c.editor && c.editor.isFormField){ + c.editor = new Roo.grid.GridEditor(c.editor); + } + this.lookup[c.id] = c; } + }); Roo.grid.ColumnModel.defaultRenderer = function(value) @@ -8257,11 +8270,10 @@ Roo.extend(Roo.bootstrap.Table, Roo.bootstrap.Component, { - var _this = this; Roo.each(this.el.select('thead th.sortable', true).elements, function(e){ - e.on('click', _this.sort, _this); - }); + e.on('click', this.sort, this); + }, this); this.mainBody.on("click", this.onClick, this); this.mainBody.on("dblclick", this.onDblClick, this); @@ -8488,7 +8500,7 @@ Roo.extend(Roo.bootstrap.Table, Roo.bootstrap.Component, { var sort = col.attr('sort'); var dir = 'ASC'; - if(col.select('i', true).first().hasClass('glyphicon-arrow-up')){ + if(col.select('i', true).first().hasClass('fa-arrow-up')){ dir = 'DESC'; } @@ -8521,14 +8533,21 @@ Roo.extend(Roo.bootstrap.Table, Roo.bootstrap.Component, { tag: 'th', cls : 'x-hcol-' + i, style : '', + html: cm.getColumnHeader(i) }; + var tooltip = cm.getColumnTooltip(i); + if (tooltip) { + c.tooltip = tooltip; + } + + var hh = ''; if(typeof(config.sortable) != 'undefined' && config.sortable){ c.cls = 'sortable'; - c.html = '' + c.html; + c.html = '' + c.html; } // could use BS4 hidden-..-down @@ -8663,15 +8682,15 @@ Roo.extend(Roo.bootstrap.Table, Roo.bootstrap.Component, { var ds = this.store; Roo.each(this.el.select('thead th.sortable', true).elements, function(e){ - e.select('i', true).removeClass(['glyphicon-arrow-up', 'glyphicon-arrow-down']); + e.select('i', true).removeClass(['fa-arrow-up', 'fa-arrow-down']); if (_this.store.sortInfo) { if(e.hasClass('sortable') && e.attr('sort') == _this.store.sortInfo.field && _this.store.sortInfo.direction.toUpperCase() == 'ASC'){ - e.select('i', true).addClass(['glyphicon-arrow-up']); + e.select('i', true).addClass(['fa-arrow-up']); } if(e.hasClass('sortable') && e.attr('sort') == _this.store.sortInfo.field && _this.store.sortInfo.direction.toUpperCase() == 'DESC'){ - e.select('i', true).addClass(['glyphicon-arrow-down']); + e.select('i', true).addClass(['fa-arrow-down']); } } }); @@ -8869,6 +8888,9 @@ Roo.extend(Roo.bootstrap.Table, Roo.bootstrap.Component, { var td = { tag: 'td', + // this might end up displaying HTML? + // this is too messy... - better to only do it on columsn you know are going to be too long + //tooltip : (typeof(value) === 'object') ? '' : value, cls : rowcfg.rowClass + ' x-col-' + i, style: '', html: (typeof(value) === 'object') ? '' : value @@ -9095,6 +9117,12 @@ Roo.extend(Roo.bootstrap.Table, Roo.bootstrap.Component, { this.mainHead.remove(); this.mainHead = table.createChild(header, this.mainBody, false); + + Roo.each(this.el.select('thead th.sortable', true).elements, function(e){ + e.on('click', this.sort, this); + }, this); + + }, onHiddenChange : function(colModel, colIndex, hidden) @@ -17581,16 +17609,21 @@ Roo.extend(Roo.bootstrap.ComboBox, Roo.bootstrap.TriggerField, { combobox.cls += ' roo-select2-container-multi'; } + var required = this.allowBlank ? { + tag : 'i', + style: 'display: none' + } : { + tag : 'i', + cls : 'roo-required-indicator left-indicator text-danger fa fa-lg fa-star', + tooltip : 'This field is required' + }; + var align = this.labelAlign || this.parentLabelAlign(); if (align ==='left' && this.fieldLabel.length) { cfg.cn = [ - { - tag : 'i', - cls : 'roo-required-indicator left-indicator text-danger fa fa-lg fa-star', - tooltip : 'This field is required' - }, + required, { tag: 'label', cls : 'control-label col-form-label', @@ -17620,11 +17653,7 @@ Roo.extend(Roo.bootstrap.ComboBox, Roo.bootstrap.TriggerField, { tag : 'span', html : this.fieldLabel }, - { - tag : 'i', - cls : 'roo-required-indicator right-indicator text-danger fa fa-lg fa-star', - tooltip : 'This field is required' - } + required ] }, { @@ -17673,11 +17702,7 @@ Roo.extend(Roo.bootstrap.ComboBox, Roo.bootstrap.TriggerField, { } else if ( this.fieldLabel.length) { cfg.cn = [ - { - tag : 'i', - cls : 'roo-required-indicator left-indicator text-danger fa fa-lg fa-star', - tooltip : 'This field is required' - }, + required, { tag: 'label', cls : 'control-label', @@ -17699,11 +17724,7 @@ Roo.extend(Roo.bootstrap.ComboBox, Roo.bootstrap.TriggerField, { cls : 'control-label', html : this.fieldLabel, cn : [ - { - tag : 'i', - cls : 'roo-required-indicator right-indicator text-danger fa fa-lg fa-star', - tooltip : 'This field is required' - } + required ] }, { @@ -20406,15 +20427,18 @@ Roo.apply(Roo.bootstrap.Popover, { clickHander : false, + onMouseDown : function(e) { - if (!e.getTarget(".roo-popover")) { + if (this.popups.length && !e.getTarget(".roo-popover")) { + /// what is nothing is showing.. this.hideAll(); } }, + popups : [], register : function(popup) @@ -20423,15 +20447,23 @@ Roo.apply(Roo.bootstrap.Popover, { Roo.bootstrap.Popover.clickHandler = Roo.get(document).on("mousedown", Roo.bootstrap.Popover.onMouseDown, Roo.bootstrap.Popover); } // hide other popups. - this.hideAll(); - this.popups.push(popup); + popup.on('show', Roo.bootstrap.Popover.onShow, popup); + popup.on('hide', Roo.bootstrap.Popover.onHide, popup); + this.hideAll(); //<< why? + //this.popups.push(popup); }, hideAll : function() { this.popups.forEach(function(p) { p.hide(); }); - } + }, + onShow : function() { + Roo.bootstrap.Popover.popups.push(this); + }, + onHide : function() { + Roo.bootstrap.Popover.popups.remove(this); + } });/* * - LGPL @@ -21922,7 +21954,10 @@ Roo.extend(Roo.bootstrap.DateField, Roo.bootstrap.Input, { break; case 'span': if (className.indexOf('disabled') < 0) { - this.viewDate.setUTCDate(1); + if (!this.viewDate) { + this.viewDate = new Date(); + } + this.viewDate.setUTCDate(1); if (className.indexOf('month') > -1) { this.viewDate.setUTCMonth(Roo.bootstrap.DateField.dates[this.language].monthsShort.indexOf(html)); } else { @@ -29857,7 +29892,7 @@ Roo.apply(Roo.bootstrap.LocationPicker, { * @licence LGPL * @cfg {String} title The title of alert * @cfg {String} html The content of alert - * @cfg {String} weight ( success | info | warning | danger ) + * @cfg {String} weight (success|info|warning|danger) Weight of the message * @cfg {String} fa font-awesomeicon * @cfg {Number} seconds default:-1 Number of seconds until it disapears (-1 means never.) * @cfg {Boolean} close true to show a x closer @@ -29935,20 +29970,32 @@ Roo.extend(Roo.bootstrap.Alert, Roo.bootstrap.Component, { this.el.setVisibilityMode(Roo.Element.DISPLAY); this.titleEl = this.el.select('.roo-alert-title',true).first(); this.iconEl = this.el.select('.roo-alert-icon',true).first(); + this.htmlEl = this.el.select('.roo-alert-text',true).first(); if (this.seconds > 0) { this.hide.defer(this.seconds, this); } }, - + /** + * Set the Title Message HTML + * @param {String} html + */ setTitle : function(str) { this.titleEl.dom.innerHTML = str; }, - - setText : function(str) + + /** + * Set the Body Message HTML + * @param {String} html + */ + setHtml : function(str) { - this.titleEl.dom.innerHTML = str; + this.htmlEl.dom.innerHTML = str; }, + /** + * Set the Weight of the alert + * @param {String} (success|info|warning|danger) weight + */ setWeight : function(weight) { @@ -29960,7 +30007,10 @@ Roo.extend(Roo.bootstrap.Alert, Roo.bootstrap.Component, { this.el.addClass('alert-' + this.weight); }, - + /** + * Set the Icon of the alert + * @param {String} see fontawsome names (name without the 'fa-' bit) + */ setIcon : function(icon) { if(this.faicon){ @@ -29971,12 +30021,16 @@ Roo.extend(Roo.bootstrap.Alert, Roo.bootstrap.Component, { this.alertEl.addClass(['fa', 'fa-' + this.faicon]); }, - + /** + * Hide the Alert + */ hide: function() { this.el.hide(); }, - + /** + * Show the Alert + */ show: function() { this.el.show();