2022-12-02 16:46:14 +01:00
|
|
|
import AbstractButtonWidget from "./abstract_button.js";
|
2024-08-01 14:30:11 +08:00
|
|
|
import { t } from "../../services/i18n.js";
|
2022-12-02 16:46:14 +01:00
|
|
|
|
|
|
|
export default class OnClickButtonWidget extends AbstractButtonWidget {
|
|
|
|
doRender() {
|
|
|
|
super.doRender();
|
|
|
|
|
|
|
|
if (this.settings.onClick) {
|
|
|
|
this.$widget.on("click", e => {
|
2024-08-02 09:40:49 +08:00
|
|
|
this.$widget.tooltip("hide");
|
2022-12-02 16:46:14 +01:00
|
|
|
|
|
|
|
this.settings.onClick(this, e);
|
|
|
|
});
|
|
|
|
} else {
|
2024-08-01 14:30:11 +08:00
|
|
|
console.warn(t("onclick_button.no_click_handler", { componentId: this.componentId }), this.settings);
|
2022-12-02 16:46:14 +01:00
|
|
|
}
|
2022-12-09 16:48:00 +01:00
|
|
|
|
|
|
|
if (this.settings.onAuxClick) {
|
|
|
|
this.$widget.on("auxclick", e => {
|
2024-08-02 09:40:49 +08:00
|
|
|
this.$widget.tooltip("hide");
|
2022-12-09 16:48:00 +01:00
|
|
|
|
|
|
|
this.settings.onAuxClick(this, e);
|
|
|
|
});
|
|
|
|
}
|
2022-12-02 16:46:14 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
onClick(handler) {
|
|
|
|
this.settings.onClick = handler;
|
|
|
|
return this;
|
|
|
|
}
|
2022-12-09 16:48:00 +01:00
|
|
|
|
|
|
|
onAuxClick(handler) {
|
|
|
|
this.settings.onAuxClick = handler;
|
|
|
|
return this;
|
|
|
|
}
|
2022-12-02 16:46:14 +01:00
|
|
|
}
|