Index: css/site/widgets.styl =================================================================== diff --git a/branches/ucs-4.2/ucs-4.2-1/management/univention-web/css/site/widgets.styl b/branches/ucs-4.2/ucs-4.2-1/management/univention-web/css/site/widgets.styl --- a/branches/ucs-4.2/ucs-4.2-1/management/univention-web/css/site/widgets.styl (Revision 81235) +++ b/branches/ucs-4.2/ucs-4.2-1/management/univention-web/css/site/widgets.styl (Arbeitskopie) @@ -100,6 +100,25 @@ .umc .umcMultiSelect border: 1px solid $border-color + .umcMultiSelectDisabledOverlay + display: none + background-color: $disabled-background-color + opacity: 0.2 + position: absolute + top: 0 + right: 0 + bottom: 0 + left: 0 + + &.umcMultiSelectDisabled + color: $text-color-lightest + + .umcMultiSelectDisabledOverlay + display: block + + .dojoxGridRowSelector + opacity: 0.6 + .umc .umcProgressBar, .umc .umcProgressInfo width: 400px Index: js/widgets/MultiSelect.js =================================================================== diff --git a/branches/ucs-4.2/ucs-4.2-1/management/univention-web/js/widgets/MultiSelect.js b/branches/ucs-4.2/ucs-4.2-1/management/univention-web/js/widgets/MultiSelect.js --- a/branches/ucs-4.2/ucs-4.2-1/management/univention-web/js/widgets/MultiSelect.js (Revision 81235) +++ b/branches/ucs-4.2/ucs-4.2-1/management/univention-web/js/widgets/MultiSelect.js (Arbeitskopie) @@ -36,6 +36,7 @@ "dojo/query", "dojo/dom-class", "dojox/grid/EnhancedGrid", + "put-selector/put", "../tools", "./_SelectMixin", "./_FormWidgetMixin", @@ -43,7 +44,7 @@ "./_RegisterOnShowMixin", "dojox/grid/enhanced/plugins/IndirectSelection", "dojox/grid/cells" -], function(declare, lang, array, Deferred, query, domClass, EnhancedGrid, tools, _SelectMixin, _FormWidgetMixin, StandbyMixin, _RegisterOnShowMixin) { +], function(declare, lang, array, Deferred, query, domClass, EnhancedGrid, put, tools, _SelectMixin, _FormWidgetMixin, StandbyMixin, _RegisterOnShowMixin) { return declare("umc.widgets.MultiSelect", [ EnhancedGrid, _FormWidgetMixin, _SelectMixin, StandbyMixin, _RegisterOnShowMixin ], { // summary: // This class represents a MultiSelect widget. Essentially, it adapts a DataGrid @@ -96,6 +97,11 @@ } }, + buildRendering: function() { + this.inherited(arguments); + put(this.domNode, 'div.umcMultiSelectDisabledOverlay'); + }, + postCreate: function() { this.inherited(arguments); @@ -237,6 +243,11 @@ // stop standby animation and re-render this.standby(false); this.render(); + }, + + _setDisabledAttr: function(disabled) { + domClass.toggle(this.domNode, 'umcMultiSelectDisabled', disabled); + this._set('disabled', disabled); } /*adaptHeight: function() {