API Docs for: 1.4.4
Show:

File: editor\ugsEditorPlus.autoReformat.js

/**
 *
 * @class autoReformat
 * @namespace ugsEditorPlus
 */
ugsEditorPlus.autoReformat = (function() {
	/**
	 * attach public members to this object
	 * @property _public
	 * @type JsonObject
	 */
	var _public = {};

	/**
	 * associative array/JSON handles to key/frequently accessed DOM Elements (see init()
	 * @property _ele
	 * @type {JSON}
	 */
	var _ele = {};

	var _formatted;
	var _isDisabled = false;

	_public.run = function(elements) {
		if (_isDisabled) {
			return;
		}
		_ele = elements;
		_ele.reformatTextBox = document.getElementById('reformatSource');
		_ele.reformatDlg = document.getElementById('reformatDlg');

		document.getElementById('reformatYesBtn').onclick = function() {
			doOk();
			return false;
		};
		document.getElementById('reformatNoBtn').onclick = function() {
			doClose();
			return false;
		};

		// need to reset on reload
		var chk = document.getElementById('reformatDisable');
		chk.checked = false;
		chk.onclick = function() {
			doDisable(this.checked);
		};

		runNow();
	};

	var doOk = function() {
		_ele.cpmSource.value = _formatted;
		doClose();
		ugsEditorPlus.actions.run(true);
	};

	var doClose = function() {
		ukeGeeks.toolsLite.addClass(_ele.reformatDlg, 'isHidden');
	};

	var doDisable = function(isDisabled) {
		_isDisabled = isDisabled;
	};

	var runNow = function() {
		_formatted = ugsEditorPlus.reformat.run(_ele.cpmSource.value);
		_ele.reformatTextBox.innerHTML = _formatted;

		if (!ugsEditorPlus.reformat.hasChords()) {
			return;
		}

		ukeGeeks.toolsLite.removeClass(_ele.reformatDlg, 'isHidden');
	};

	// ---------------------------------------
	// return public interface "JSON handle"
	// ---------------------------------------
	return _public;

}());