| | |
| | | for (var n=0; n<this.selection.length; n++) |
| | | { |
| | | id = this.selection[n]; |
| | | if (this.rows[id].obj) |
| | | if (this.rows[id] && this.rows[id].obj) |
| | | { |
| | | this.set_classname(this.rows[id].obj, 'selected', true); |
| | | this.set_classname(this.rows[id].obj, 'unfocused', false); |
| | |
| | | */ |
| | | shift_select: function(id, control) |
| | | { |
| | | if (!this.rows[this.shift_start] || !this.selection.length) |
| | | this.shift_start = id; |
| | | |
| | | var from_rowIndex = this.rows[this.shift_start].obj.rowIndex; |
| | | var to_rowIndex = this.rows[id].obj.rowIndex; |
| | | |
| | |
| | | { |
| | | if (this.rows[id] && !multiple) |
| | | { |
| | | this.clear_selection(); |
| | | this.selection[0] = id; |
| | | this.set_classname(this.rows[id].obj, 'selected', true); |
| | | if (this.selection.length > 1 || !this.in_selection(id)) |
| | | { |
| | | this.clear_selection(); |
| | | this.selection[0] = id; |
| | | this.set_classname(this.rows[id].obj, 'selected', true); |
| | | } |
| | | } |
| | | else if (this.rows[id]) |
| | | { |
| | |
| | | rcube_event.remove_listener({element:document, event:'mousemove', object:this, method:'drag_mouse_move'}); |
| | | rcube_event.remove_listener({element:document, event:'mouseup', object:this, method:'drag_mouse_up'}); |
| | | |
| | | this.focus(); |
| | | |
| | | return rcube_event.cancel(e); |
| | | }, |
| | | |