dojox
Version:
Dojo eXtensions, a rollup of many useful sub-projects and varying states of maturity – from very stable and robust, to alpha and experimental. See individual projects contain README files for details.
43 lines (38 loc) • 1.48 kB
JavaScript
define([
"dojo/_base/declare",
"./common"
], function(declare, common){
// module:
// dojox/mobile/bidi/IconItem
return declare(null, {
// summary:
// Support for control over text direction for mobile IconItem widget, using Unicode Control Characters to control text direction.
// description:
// Implementation for text direction for Label.
// This class should not be used directly.
// Mobile IconItem widget loads this module when user sets "has: {'dojo-bidi': true }" in data-dojo-config.
_applyAttributes: function(){
if(!this.textDir && this.getParent() && this.getParent().get("textDir")){
this.textDir = this.getParent().get("textDir");
}
this.inherited(arguments);
},
_setLabelAttr: function(text){
if(this.textDir){
text = common.enforceTextDirWithUcc(text, this.textDir);
}
this.inherited(arguments);
},
_setTextDirAttr: function(textDir){
if(textDir && this.textDir !== textDir){
this.textDir = textDir;
this.labelNode.innerHTML = common.removeUCCFromText(this.labelNode.innerHTML);
this.labelNode.innerHTML = common.enforceTextDirWithUcc(this.labelNode.innerHTML, this.textDir);
if(this.paneWidget){
this.paneWidget.labelNode.innerHTML = common.removeUCCFromText(this.paneWidget.labelNode.innerHTML);
this.paneWidget.labelNode.innerHTML = common.enforceTextDirWithUcc(this.paneWidget.labelNode.innerHTML, this.textDir);
}
}
}
});
});