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.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
|
||||
|
||||
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):
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user