unmount() {
        let edata = this.trigger('unmount', { target: this.name })
        if (edata.isCancelled) {
            return
        }
        let remove = []
        // find classes that start with "w2ui-*"
        if (this.box instanceof HTMLElement) {
            this.box.classList.forEach(cl => {
                if (cl.startsWith('w2ui-')) remove.push(cl)
            })
        }
        query(this.box)
            .off() // removes all events attached to this box previously
            .removeClass(remove)
            .removeAttr('name')
            .html('')
        this.box = null
        // event after
        edata.finish()
    }
Removes all classes that start with w2ui-* and sets box to null. It is needed so that control will
release the box to be used for other widgets