whole_func_string: function(ed, cm, n) {
  			var dom = ed.dom, dir;
  
  			n = dom.getParent(n, dom.isBlock);
  			if (!n) {
  				cm.setDisabled('ltr', 1);
  				cm.setDisabled('rtl', 1);
  				return;
  			}
  
  			dir = dom.getAttrib(n, 'dir');
  			cm.setActive('ltr', dir == "ltr");
  			cm.setDisabled('ltr', 0);
  			cm.setActive('rtl', dir == "rtl");
  			cm.setDisabled('rtl', 0);
  		}
func_code_string: function(ed, cm, n) {
  			var dom = ed.dom, dir;
  
  			n = dom.getParent(n, dom.isBlock);
  			if (!n) {
  				cm.setDisabled('ltr', 1);
  				cm.setDisabled('rtl', 1);
  				return;
  			}
  
  			dir = dom.getAttrib(n, 'dir');
  			cm.setActive('ltr', dir == "ltr");
  			cm.setDisabled('ltr', 0);
  			cm.setActive('rtl', dir == "rtl");
  			cm.setDisabled('rtl', 0);
  		}
func_documentation_string: Private methods