import { StateGroup } from '@uino/base-thing';
const __ = {
private: Symbol('private'),
}
/**
* @class Picker
* The picker.
* @memberof THING
* @public
*/
class Picker {
/**
* The picker to pick object(s).
*/
constructor() {
this[__.private] = {};
let _private = this[__.private];
_private.stateGroup = new StateGroup();
// Enable pick as default
this.enable = true;
}
dispose() {
let _private = this[__.private];
_private.stateGroup = null;
}
/**
* Get the state group.
* @type {Object}
* @private
*/
get stateGroup() {
return this[__.private].stateGroup;
}
/**
* Enable/Disable picker.
* @type {Boolean}
* @example
* THING.App.current.picker.enable = false;
* let ret = THING.App.current.picker.enable == false;
* // @expect(ret == true);
* @public
*/
get enable() {
return this[__.private].stateGroup.isEnable();
}
set enable(value) {
this[__.private].stateGroup.enable(value, 'default', 1000);
}
}
export { Picker }