adding simple toasts
This commit is contained in:
parent
01e083addb
commit
c0bb89c752
Binary file not shown.
@ -10,6 +10,13 @@ div.font_size = 4
|
|||||||
|
|
||||||
btn = bHTML.ButtonPrimary("Click me", parent=app.sidebar)
|
btn = bHTML.ButtonPrimary("Click me", parent=app.sidebar)
|
||||||
btn.w = 100
|
btn.w = 100
|
||||||
btn.onclick = lambda _: bHTML.AlertSuccess(
|
|
||||||
"You clicked me!", parent=app.main_area)
|
def onclick(_):
|
||||||
|
alert = bHTML.AlertSuccess("You clicked me!", parent=app.main_area)
|
||||||
|
toast = bHTML.Toast("You clicked me!", parent=app.main_area)
|
||||||
|
toast.position_bottom = 0
|
||||||
|
toast.position_end = 0
|
||||||
|
toast.show()
|
||||||
|
|
||||||
|
btn.onclick = onclick
|
||||||
|
|
Binary file not shown.
Binary file not shown.
@ -1316,6 +1316,52 @@ class TabsDark(Tabs):
|
|||||||
|
|
||||||
_default_navbar_tabs_class = NavbarTabsDark
|
_default_navbar_tabs_class = NavbarTabsDark
|
||||||
|
|
||||||
|
class ToastHeader(BootstrapContainer):
|
||||||
|
|
||||||
|
_default_class_name = "toast-header"
|
||||||
|
|
||||||
|
def __init__(self, title:str,
|
||||||
|
inner_html: str = None,
|
||||||
|
id: str = None,
|
||||||
|
class_name: str = None,
|
||||||
|
parent: "Element" = None) -> None:
|
||||||
|
super().__init__(inner_html=inner_html, id=id, class_name=class_name, parent=parent)
|
||||||
|
|
||||||
|
HTML.Strong(title, class_name="me-auto", parent=self)
|
||||||
|
close_button = HTML.Button(class_name="btn-close", parent=self)
|
||||||
|
close_button.set_attribute("data-bs-dismiss", "toast")
|
||||||
|
close_button.set_attribute("aria-label", "Close")
|
||||||
|
|
||||||
|
class ToastBody(BootstrapContainer):
|
||||||
|
_default_class_name: str = "toast-body"
|
||||||
|
|
||||||
|
class Toast(BootstrapContainer):
|
||||||
|
|
||||||
|
_default_class_name: str = "toast"
|
||||||
|
|
||||||
|
def __init__(self, inner_html: str = None,
|
||||||
|
title: str = "Toast",
|
||||||
|
id: str = None,
|
||||||
|
class_name: str = None,
|
||||||
|
parent: "Element" = None) -> None:
|
||||||
|
|
||||||
|
super().__init__(id=id, class_name=class_name, parent=parent)
|
||||||
|
|
||||||
|
self.set_attribute("role", "alert")
|
||||||
|
self.set_attribute("aria-live", "assertlive")
|
||||||
|
self.set_attribute("aria-atomic", True)
|
||||||
|
self.set_attribute("style", "position: absolute")
|
||||||
|
|
||||||
|
ToastHeader(title, parent=self)
|
||||||
|
ToastBody(inner_html, parent=self)
|
||||||
|
|
||||||
|
self._js_toast = bootstrap.Toast.new(self.element)
|
||||||
|
|
||||||
|
def show(self):
|
||||||
|
self._js_toast.show()
|
||||||
|
|
||||||
|
def hide(self):
|
||||||
|
self._js_toast.hide()
|
||||||
|
|
||||||
class OffcanvasTitle(HTML.H5, BootstrapContainer):
|
class OffcanvasTitle(HTML.H5, BootstrapContainer):
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user